
:root{--background:#f4f3ed;--foreground:#23372c;--primary:#284332;--border:#d2d6ca;--accent:#e1e5d7;--font-sans:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-size:16px}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:2px solid #748658;outline-offset:7px}a:hover{opacity:.75}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:25px}.brand{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:26px;letter-spacing:.18em}.brand small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.26em;margin-top:8px}nav{display:flex;gap:35px;font-size:14px}nav a{padding:10px 0}.hero{position:relative;min-height:640px;height:76vh;max-height:870px;color:#fff;overflow:hidden}.hero img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 54%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,28,14,.4),rgba(13,28,14,.12) 60%,rgba(13,28,14,.3))}.hero-content{position:relative;z-index:1;height:100%;min-height:640px;display:flex;flex-direction:column;align-items:center;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:400}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(36px,4.6vw,68px);font-weight:400;letter-spacing:.19em;line-height:1.8;text-align:center;margin:30px 0}.hero-bottom{position:absolute;z-index:2;bottom:35px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:end;font-size:13px;line-height:2;letter-spacing:.1em}.hero-bottom a{border-bottom:1px solid #ffffff80;padding-bottom:8px}.side-note{position:absolute;right:35px;top:42%;writing-mode:vertical-rl;z-index:2;font-size:11px;letter-spacing:.22em}.intro{padding:110px 8%;display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.section-label{font-size:13px;letter-spacing:.17em}.intro h2,.about h2{font-family:'Yu Mincho',serif;font-size:32px;font-weight:400;line-height:1.8;letter-spacing:.1em;margin-top:22px}.intro p,.about p{font-size:16px;line-height:2.4;margin:0}.journal{padding:70px 6% 110px;background:#e7eade}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;border-bottom:1px solid #bfc8b6;padding-bottom:25px}.section-heading h2{font-size:40px;font-weight:400;letter-spacing:.04em;margin:0}.section-heading p{font-size:14px;margin:12px 0 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.card-art{height:275px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.card-art img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.card:hover img{transform:scale(1.03)}.type-art{background:#314c38;color:#e5e9d9;flex-direction:column}.type-art span{font-family:'Yu Mincho',serif;font-size:66px;letter-spacing:.15em}.type-art small{font-size:12px;letter-spacing:.2em;margin-top:18px}.type-art.light{background:#d0d5bd;color:#344731}.meta{font-size:12px;letter-spacing:.06em;display:flex;justify-content:space-between;margin-top:23px;color:#536447}.card h3{font-family:'Yu Mincho',serif;font-size:23px;font-weight:400;line-height:1.7;margin:14px 0}.read{display:block;font-size:13px;margin-top:22px;letter-spacing:.1em}.about{max-width:900px;margin:auto;padding:110px 6%;text-align:center}.about p{max-width:650px;margin:25px auto}.about .section-label{color:#647254}footer{padding:45px 6%;background:#233c2c;color:#eff0e7;display:flex;justify-content:space-between;align-items:center}footer p{font-size:12px;letter-spacing:.1em}.article{max-width:800px;margin:60px auto 110px;padding:0 25px}.article h1{font-family:'Yu Mincho',serif;font-size:38px;font-weight:400;line-height:1.7;margin:25px 0 45px}.article h2{font-family:'Yu Mincho',serif;font-size:25px;font-weight:400;margin:48px 0 15px}.article p{line-height:2.3}.article img{width:100%;max-height:460px;object-fit:cover}.back{display:inline-block;font-size:14px;border-bottom:1px solid;padding:12px 0;margin-top:40px} .note{font-size:14px;color:#64705d;border-top:1px solid var(--border);padding-top:20px;margin-top:40px}@media(max-width:700px){header{height:auto;min-height:105px;padding:23px 6%;align-items:start;gap:15px}.brand{font-size:22px;white-space:nowrap}.brand small{font-size:9px}nav{gap:12px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;max-width:180px}.hero{height:70vh;min-height:560px}.hero-content{min-height:560px}.hero h1{font-size:36px;letter-spacing:.09em}.hero img{object-position:43% center}.hero-bottom{font-size:11px;gap:20px}.side-note{right:15px}.intro{padding:70px 7%;grid-template-columns:1fr;gap:22px}.intro h2{font-size:28px}.journal{padding:55px 7% 65px}.section-heading h2{font-size:32px}.cards{grid-template-columns:1fr;gap:45px}.card-art{height:300px}.about{padding:70px 7%}.about h2{font-size:27px}footer{align-items:start;gap:20px;flex-direction:column}.article{margin-top:40px}.article h1{font-size:29px}.eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Editorial refinement: readable imagery, clear reading choices. */
.skip-link{position:fixed;top:10px;left:10px;transform:translateY(-180%);background:#fff;padding:16px;z-index:100}.skip-link:focus{transform:none}header{border-bottom:1px solid var(--border)}nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.editorial-hero{display:grid;grid-template-columns:44% 56%;max-width:1800px;margin:auto}.hero-copy{padding:65px 12% 45px 13%;display:flex;flex-direction:column;align-items:start;justify-content:center}.hero-copy h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(32px,3.25vw,54px);line-height:1.8;letter-spacing:.08em;font-weight:400;margin:28px 0}.hero-lead{line-height:2.15;font-size:16px;margin:0 0 28px}.primary-link{background:#294431;color:#fff;padding:17px 22px;min-height:54px;display:flex;gap:30px;align-items:center;font-size:15px;letter-spacing:.03em}.primary-link span{margin-left:auto}.secondary-link{display:inline-block;font-size:14px;padding:15px 0;min-height:44px;border-bottom:1px solid #adb6a4}.hero-edition{font-size:11px;letter-spacing:.17em;margin-top:44px;color:#596751}.hero-photo{margin:0;position:relative;min-height:580px}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:45% center}.hero-photo figcaption{position:absolute;bottom:20px;right:22px;background:#f4f3edef;color:#23372c;padding:10px 15px;font-size:12px;letter-spacing:.08em}.journal{padding-top:74px;background:#f4f3ed}.section-heading{align-items:center}.section-heading h2{font-family:'Yu Mincho',serif;font-size:32px;line-height:1.7;margin-top:10px}.journal-count{font-size:14px;color:#56634e}.card{display:flex;flex-direction:column}.card-art{height:240px}.card-summary{font-size:15px;line-height:1.95;color:#536047;margin:0 0 18px}.read{margin-top:auto;border-bottom:1px solid #b9c1b0;display:flex;justify-content:space-between;min-height:48px;padding:13px 0;font-size:14px}.card h3{font-size:23px;min-height:3.4em}.editorial-about{max-width:none;background:#e6e9dd;display:grid;grid-template-columns:1fr 1.2fr;text-align:left;padding:80px 9%;gap:10%}.editorial-about p{margin:0 0 24px}.article-lead{font-size:18px;color:#536047}.article h1{margin-bottom:20px}.article-date{font-size:13px;color:#5e6956;margin:20px 0 32px}.article img{height:auto}.breadcrumb{font-size:14px;text-decoration:underline}.takeaway{background:#e6e9dd;padding:28px 32px;margin-top:38px}.takeaway h2{margin:12px 0 16px}.takeaway ul{padding-left:22px;line-height:2.2;list-style:disc}.takeaway .source{font-size:13px;line-height:1.9;margin-bottom:0}.source a{text-decoration:underline}.toc{display:block;border-bottom:1px solid #cbd0c2;padding:26px 0}.toc>span{font-size:14px;letter-spacing:.1em}.toc ol{padding-left:24px;list-style:decimal;margin-top:14px}.toc a{line-height:1.8;padding:5px 0}.related{margin-top:55px;border-top:1px solid var(--border)}.related a{padding:20px 0;border-bottom:1px solid var(--border);display:block}.related small{display:block;font-size:13px;color:#5e6956;margin-bottom:9px}.related span{font-size:17px;line-height:1.8}footer a:last-child{font-size:14px;min-height:44px;display:flex;align-items:center}@media(max-width:850px){.editorial-hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 36px}.hero-copy h1{font-size:36px;margin:20px 0}.hero-photo{min-height:0;aspect-ratio:1.45}.hero-edition{margin-top:25px}.hero-photo img{object-position:center}.hero-copy .section-label{font-size:12px}.hero-lead{font-size:16px}.journal{padding-top:45px}.section-heading h2{font-size:26px}.journal-count{display:none}.editorial-about{grid-template-columns:1fr;gap:20px;padding:55px 7%}.card-art{height:240px}.card h3{min-height:0}header{align-items:center;padding:18px 6%;flex-wrap:wrap}header nav{max-width:none;justify-content:start;gap:18px;width:100%}header nav a{font-size:14px;padding:0}.takeaway{padding:23px}.toc{display:block}.article .section-label{font-size:12px}}

/* Editorial network: give the web magazine, CHADO guide and note distinct roles. */
.network{display:grid;grid-template-columns:.72fr 1.28fr;gap:8%;padding:90px 8%;background:#f4f3ed;border-top:1px solid var(--border)}
.network h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(29px,3vw,42px);font-weight:400;line-height:1.65;letter-spacing:.08em;margin:18px 0 0}
.network-links{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);background:#fff}
.network-links a{display:flex;min-height:260px;padding:30px;flex-direction:column;align-items:flex-start;transition:background-color .2s,color .2s}
.network-links a:nth-child(even){border-left:1px solid var(--border)}
.network-links a:nth-child(n+3){border-top:1px solid var(--border)}
.network-links a:hover,.network-links a:focus-visible{background:var(--primary);color:#fff;opacity:1}
.network-links small{font-size:10px;letter-spacing:.16em;color:#7b6840}
.network-links strong{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:28px;font-weight:400;letter-spacing:.06em;margin:25px 0}
.network-links span{margin-top:auto;font-size:14px;line-height:1.9;border-bottom:1px solid currentColor;padding-bottom:8px}
.footer-links{display:flex;gap:24px;align-items:center}.footer-links a{font-size:13px;min-height:44px;display:flex;align-items:center}
.topics{display:grid;grid-template-columns:.72fr 1.28fr;gap:8%;padding:90px 8%;background:#e7eade;border-top:1px solid var(--border)}.topics h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(29px,3vw,42px);font-weight:400;line-height:1.65;letter-spacing:.08em;margin:18px 0 0}.topic-links{border-top:1px solid #bfc8b6}.topic-links a{display:grid;grid-template-columns:42px 1fr auto;gap:8px 18px;align-items:center;padding:22px 0;border-bottom:1px solid #bfc8b6}.topic-links a:hover,.topic-links a:focus-visible{color:var(--primary);opacity:.72}.topic-number{grid-row:1/4;color:#7b6840;font-family:Georgia,serif;font-style:italic;font-size:21px}.topic-links strong{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:22px;font-weight:400}.topic-links a>span:not(.topic-number){grid-column:2;color:#536047;font-size:14px;line-height:1.75}.topic-links small{grid-column:3;grid-row:1/3;white-space:nowrap;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:6px}
@media(max-width:800px){.network{grid-template-columns:1fr;gap:28px;padding:65px 7%}.network-links{grid-template-columns:1fr}.network-links a{min-height:220px;padding:26px}.network-links a+a,.network-links a:nth-child(even),.network-links a:nth-child(n+3){border-left:0;border-top:1px solid var(--border)}}
@media(max-width:800px){.topics{grid-template-columns:1fr;gap:28px;padding:65px 7%}.topic-links a{grid-template-columns:34px 1fr}.topic-links small{grid-column:2;grid-row:auto;justify-self:start;margin-top:4px}}

.article-meta{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:#5e6956;margin:20px 0 32px}.article-meta span+span{padding-left:22px;border-left:1px solid #cbd0c2}.sources{border-top:1px solid var(--border);margin-top:42px;padding-top:26px}.sources h2{font-size:20px;margin:10px 0 12px}.sources ul{margin:0;padding-left:20px}.sources li{line-height:1.9}.sources a{text-decoration:underline}@media(max-width:850px){.article-meta{gap:6px 14px}.article-meta span+span{padding-left:14px}}
@media(max-width:700px){.footer-links{flex-wrap:wrap;gap:10px 22px}}
.topic-filter{display:flex;flex-wrap:wrap;gap:10px;margin:-12px 0 30px}.topic-filter button{appearance:none;border:1px solid #b9c1b0;background:transparent;color:var(--foreground);border-radius:999px;padding:10px 16px;font:inherit;font-size:13px;cursor:pointer;min-height:42px}.topic-filter button:hover,.topic-filter button:focus-visible{border-color:var(--primary);opacity:.75}.topic-filter button.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.filter-status{font-size:12px;color:#64705d;margin:22px 0 0}@media(max-width:700px){.topic-filter{margin:-4px 0 24px;gap:8px}.topic-filter button{font-size:12px;padding:9px 12px}}
.share-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:18px 0;margin-top:34px;font-size:13px}.share-actions>span{color:#64705d;margin-right:auto}.share-actions button,.share-actions a{border:1px solid #b9c1b0;background:transparent;color:inherit;padding:9px 13px;min-height:40px;font:inherit;cursor:pointer}.share-actions button:hover,.share-actions button:focus-visible,.share-actions a:hover,.share-actions a:focus-visible{border-color:var(--primary);opacity:.75}@media(max-width:550px){.share-actions>span{width:100%;margin-right:0}.share-actions button,.share-actions a{flex:1;text-align:center}}
.not-found{max-width:900px;margin:0 auto;padding:150px 8% 180px}.not-found h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(32px,4vw,54px);font-weight:400;line-height:1.7;letter-spacing:.08em;margin:28px 0}.not-found p{color:#536047;line-height:2;margin-bottom:34px}.not-found .primary-link{display:inline-flex;width:max-content}@media(max-width:700px){.not-found{padding:100px 7% 120px}.not-found h1{font-size:31px}}
/* Expanded journal: article photography, clearer scanning and stronger onward reading. */
.card-art {
  background: #d9ddcf;
}

/* Language navigation shared by all statically exported editions. */
.language-switcher {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.35rem 0.75rem;
  margin-left: auto;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
}

.language-switcher a {
  color: inherit;
  text-decoration: none;
  opacity: 0.76;
}

.language-switcher a:hover,
.language-switcher a:focus-visible,
.language-switcher a[aria-current='page'] {
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 0.28em;
}

@media (max-width: 850px) {
  header .language-switcher {
    width: 100%;
    justify-content: flex-start;
    padding-top: 0.35rem;
  }
}

/* Multilingual typography, navigation and article structure. */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.external-mark { margin-left: .2em; }

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .35em .55em;
  line-height: 1.75;
  text-decoration: none;
}
.breadcrumb a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .28em;
}
.breadcrumb [aria-current='page'] {
  color: #5e6956;
  text-decoration: none;
}

.toc ol {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin-right: 0;
}
.toc li,
.toc a {
  width: 100%;
  max-width: none;
  min-width: 0;
}
.toc a { overflow-wrap: break-word; }

html:lang(en),
html:lang(es),
html:lang(de) {
  --font-latin-serif: Georgia, 'Times New Roman', Times, serif;
}
html:lang(en) body,
html:lang(es) body,
html:lang(de) body {
  letter-spacing: 0;
}
html:lang(en) .brand,
html:lang(en) .hero-copy h1,
html:lang(en) .section-heading h2,
html:lang(en) .topics h2,
html:lang(en) .topic-links strong,
html:lang(en) .editorial-about h2,
html:lang(en) .network h2,
html:lang(en) .network-links strong,
html:lang(en) .article h1,
html:lang(en) .article h2,
html:lang(en) .card h3,
html:lang(en) .topic-page h1,
html:lang(en) .topic-page-grid h2,
html:lang(en) .about-page h1,
html:lang(en) .about-page h2,
html:lang(es) .brand,
html:lang(es) .hero-copy h1,
html:lang(es) .section-heading h2,
html:lang(es) .topics h2,
html:lang(es) .topic-links strong,
html:lang(es) .editorial-about h2,
html:lang(es) .network h2,
html:lang(es) .network-links strong,
html:lang(es) .article h1,
html:lang(es) .article h2,
html:lang(es) .card h3,
html:lang(es) .topic-page h1,
html:lang(es) .topic-page-grid h2,
html:lang(es) .about-page h1,
html:lang(es) .about-page h2,
html:lang(de) .brand,
html:lang(de) .hero-copy h1,
html:lang(de) .section-heading h2,
html:lang(de) .topics h2,
html:lang(de) .topic-links strong,
html:lang(de) .editorial-about h2,
html:lang(de) .network h2,
html:lang(de) .network-links strong,
html:lang(de) .article h1,
html:lang(de) .article h2,
html:lang(de) .card h3,
html:lang(de) .topic-page h1,
html:lang(de) .topic-page-grid h2,
html:lang(de) .about-page h1,
html:lang(de) .about-page h2 {
  font-family: var(--font-latin-serif);
  letter-spacing: .01em;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}
html:lang(en) .eyebrow,
html:lang(en) .section-label,
html:lang(en) .hero-edition,
html:lang(en) .card-topic,
html:lang(en) .read,
html:lang(es) .eyebrow,
html:lang(es) .section-label,
html:lang(es) .hero-edition,
html:lang(es) .card-topic,
html:lang(es) .read,
html:lang(de) .eyebrow,
html:lang(de) .section-label,
html:lang(de) .hero-edition,
html:lang(de) .card-topic,
html:lang(de) .read {
  letter-spacing: .02em;
}
html:not(:lang(ja)) .topic-links small { white-space: normal; }
.topic-number { color: #715e35; }
.editorial-about .section-label { color: #596949; }
.footer-links {
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (max-width: 850px) {
  footer {
    align-items: flex-start;
    flex-direction: column;
  }
  footer .footer-links {
    width: 100%;
    justify-content: flex-start;
  }
  header .language-switcher {
    width: 100%;
    margin: 0;
    padding: 2px 0 10px;
    flex-wrap: wrap;
    gap: 2px 14px;
    overflow: visible;
  }
  header .language-switcher a {
    min-height: 36px;
    font-size: 11px;
    padding: 6px 0;
  }
}
.card-art img {
  transition:
    transform 0.65s ease,
    filter 0.3s ease;
}
.card:hover .card-art img,
.card:focus-visible .card-art img {
  transform: scale(1.035);
  filter: saturate(1.04);
}
.card-topic {
  position: absolute;
  left: 14px;
  bottom: 14px;
  background: rgba(244, 243, 237, 0.94);
  padding: 8px 11px;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: var(--foreground);
}
.article-cover {
  margin: 34px 0 45px;
}
.article-cover img {
  display: block;
  aspect-ratio: 3/2;
  object-fit: cover;
}
.article-cover figcaption {
  font-size: 12px;
  color: #64705d;
  line-height: 1.7;
  margin-top: 10px;
}
.related {
  padding-top: 30px;
}
.related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 22px;
}
.related-grid a {
  padding: 0 0 18px;
}
.related-grid img {
  display: block;
  width: 100%;
  aspect-ratio: 3/2;
  object-fit: cover;
  margin-bottom: 14px;
}
.related-grid small {
  margin: 0 0 8px;
}
.related-grid span {
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', serif;
  font-size: 16px;
  line-height: 1.65;
}
@media (max-width: 1050px) and (min-width: 701px) {
  .cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 700px) {
  .cards {
    grid-template-columns: 1fr;
  }
  .card-art {
    height: auto;
    aspect-ratio: 3/2;
  }
  .article-cover {
    margin: 28px -25px 38px;
  }
  .article-cover figcaption {
    padding: 0 25px;
  }
  .related-grid {
    grid-template-columns: 1fr;
  }
  .related-grid a {
    display: grid;
    grid-template-columns: 112px 1fr;
    gap: 4px 16px;
    align-items: start;
  }
  .related-grid picture {
    grid-row: 1 / 3;
  }
  .related-grid img {
    margin: 0;
    aspect-ratio: 1;
  }
  .related-grid small {
    margin: 0;
  }
  .related-grid span {
    font-size: 15px;
  }
  .hero-photo figcaption {
    left: 20px;
    right: auto;
    max-width: calc(100% - 40px);
    line-height: 1.6;
  }
}

/* Responsive UX pass: calmer reading rhythm, clearer navigation and larger tap targets. */
body {
  line-height: 1.7;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(244, 243, 237, 0.94);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
main section[id],
.article section[id] {
  scroll-margin-top: 120px;
}
.editorial-hero,
.journal > *,
.topics,
.editorial-about,
.network,
footer > * {
  min-width: 0;
}
.hero-copy h1,
.section-heading h2,
.topics h2,
.editorial-about h2,
.network h2,
.article h1,
.article h2,
.card h3 {
  text-wrap: balance;
  word-break: auto-phrase;
}
.hero-lead,
.card-summary,
.article p,
.topic-links a > span:not(.topic-number),
.network-links span {
  text-wrap: pretty;
}
.card,
.topic-links a,
.network-links a,
.related-grid a {
  -webkit-tap-highlight-color: transparent;
}
@media (hover: hover) {
  .card:hover,
  .topic-links a:hover,
  .network-links a:hover,
  .related-grid a:hover {
    opacity: 1;
  }
  .card:hover .read,
  .related-grid a:hover span {
    color: #7b6840;
  }
}

@media (min-width: 1441px) {
  header,
  footer {
    padding-left: max(6%, calc((100vw - 1640px) / 2));
    padding-right: max(6%, calc((100vw - 1640px) / 2));
  }
  .journal,
  .topics,
  .editorial-about,
  .network {
    padding-left: max(8%, calc((100vw - 1640px) / 2));
    padding-right: max(8%, calc((100vw - 1640px) / 2));
  }
}

@media (max-width: 850px) {
  header {
    align-items: flex-start;
    gap: 14px;
    padding-top: 15px;
    padding-bottom: 0;
  }
  header .brand {
    padding-bottom: 14px;
  }
  header nav {
    width: calc(100% + 12vw);
    max-width: none;
    margin: 0 -6%;
    padding: 0 6% 10px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 24px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }
  header nav::-webkit-scrollbar {
    display: none;
  }
  header nav a {
    flex: 0 0 auto;
    min-height: 44px;
    scroll-snap-align: start;
  }
  .hero-copy {
    padding-top: 34px;
    padding-bottom: 30px;
  }
  .hero-copy h1 {
    font-size: clamp(32px, 9.6vw, 39px);
    line-height: 1.72;
    letter-spacing: 0.055em;
  }
  .hero-photo {
    aspect-ratio: 4 / 3;
  }
  .journal,
  .topics,
  .editorial-about,
  .network {
    padding-left: 6%;
    padding-right: 6%;
  }
  .section-heading {
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
  .network-links a {
    min-height: 164px;
    padding: 23px;
  }
  .network-links strong {
    font-size: 24px;
    margin: 15px 0;
  }
  footer {
    padding: 38px 6% calc(38px + env(safe-area-inset-bottom));
  }
}

@media (max-width: 700px) {
  .brand {
    font-size: 21px;
  }
  .hero-lead {
    line-height: 2;
  }
  .primary-link {
    width: auto;
    align-self: stretch;
    justify-content: space-between;
    min-height: 56px;
  }
  .primary-link span {
    display: none;
  }
  .primary-link::after {
    content: '↗';
    flex: 0 0 auto;
    margin-left: 20px;
  }
  .hero-edition {
    margin-top: 20px;
  }
  .journal {
    padding-top: 50px;
  }
  .topic-filter {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }
  .topic-filter button {
    width: 100%;
    min-height: 44px;
    padding: 9px 8px;
    white-space: normal;
    line-height: 1.45;
  }
  .topic-filter button:first-child {
    grid-column: 1 / -1;
  }
  header {
    min-height: 0;
    padding-top: 16px;
    padding-bottom: 14px;
    gap: 10px;
  }
  header nav {
    gap: 8px 18px;
  }
  .cards {
    gap: 42px;
  }
  .card h3 {
    font-size: 21px;
    line-height: 1.65;
    margin: 10px 0;
  }
  .card-summary {
    font-size: 14px;
    line-height: 1.85;
  }
  .read {
    min-height: 50px;
    align-items: center;
  }
  .topics,
  .network {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .topic-links a {
    padding: 20px 0;
  }
  .editorial-about {
    padding-top: 56px;
    padding-bottom: 56px;
  }
  .editorial-about p,
  .article p {
    line-height: 2.05;
  }
  .article {
    margin-top: 32px;
    margin-bottom: 80px;
    padding-left: 22px;
    padding-right: 22px;
  }
  .article h1 {
    font-size: clamp(27px, 8vw, 32px);
    line-height: 1.58;
    margin-top: 20px;
  }
  .article-lead {
    font-size: 16px;
    line-height: 1.95 !important;
  }
  .article-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px 12px;
    padding: 15px 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
  }
  .article-meta span + span {
    padding-left: 0;
    border-left: 0;
  }
  .article-meta span:last-child {
    grid-column: 1 / -1;
  }
  .article-cover {
    margin-left: -22px;
    margin-right: -22px;
  }
  .article-cover figcaption {
    padding-left: 22px;
    padding-right: 22px;
  }
  .takeaway {
    margin-left: -6px;
    margin-right: -6px;
    padding: 24px 22px;
  }
  .toc a {
    display: block;
    min-height: 44px;
    padding: 9px 0;
  }
  .article h2 {
    font-size: 23px;
    line-height: 1.65;
    margin-top: 44px;
  }
  .sources a,
  .back {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  .related-grid a {
    min-height: 112px;
  }
  footer .footer-links {
    width: 100%;
    padding-top: 10px;
    border-top: 1px solid rgba(255,255,255,.2);
  }
  header nav {
    gap: 18px;
  }
  header nav a {
    font-size: 13px;
  }
}

@media (max-width: 380px) {
  header nav {
    gap: 16px;
  }
  .hero-copy h1 {
    font-size: 29px;
    letter-spacing: .035em;
  }
  .hero-lead br {
    display: none;
  }
  .hero-photo figcaption {
    font-size: 11px;
  }
}

/* Responsive image sources keep the existing editorial dimensions intact. */
picture { display: block; }
.card-art > picture { width: 100%; height: 100%; }
.article-cover > picture,
.related-grid picture { display: block; }

.topic-page,
.about-page {
  max-width: 1120px;
  margin: 0 auto;
  padding: 72px 7% 110px;
}
.topic-page h1,
.about-page h1 {
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 400;
  letter-spacing: .08em;
  margin: 28px 0 18px;
}
.topic-page-lead,
.about-page-lead {
  max-width: 700px;
  color: #536047;
  font-size: 17px;
  line-height: 2.1;
  margin: 0 0 48px;
}
.topic-page-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 36px;
}
.topic-page-grid h2 {
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.7;
  margin: 14px 0;
}
.about-page { max-width: 850px; }
.about-page > section {
  border-top: 1px solid var(--border);
  margin-top: 42px;
  padding-top: 28px;
}
.about-page h2 {
  font-family: 'Yu Mincho', 'Hiragino Mincho ProN', serif;
  font-size: 26px;
  font-weight: 400;
  margin: 0 0 14px;
}
.about-page section p { line-height: 2.2; }
.operator-list { margin: 0 0 26px; }
.operator-list div {
  display: grid;
  grid-template-columns: 120px 1fr;
  border-bottom: 1px solid var(--border);
  padding: 14px 0;
}
.operator-list dt { color: #536047; }
.operator-list dd { margin: 0; }
.operator-list a { border-bottom: 1px solid currentColor; }
@media (max-width: 850px) {
  .topic-page,
  .about-page { padding: 48px 7% 70px; }
  .topic-page-grid { grid-template-columns: 1fr; gap: 42px; }
  .topic-page-grid .card-art { height: auto; aspect-ratio: 3 / 2; }
}
