/* 每日大赛 · 竞技视觉编辑版式 */
:root {
  --indigo: #3446a6;
  --mint: #c8f2e5;
  --dark: #171c32;
  --paper: #fafaf6;
  --panel: #edf0f7;
  --ink: #24283a;
  --subtle: #636b7c;
  --amber: #b47418;
  --line: rgba(36,40,58,.15);
  --line-light: rgba(250,250,246,.24);
  --content: 1240px;
  --edge: clamp(20px, 3.5vw, 56px);
  --radius: 7px;
  --display: "Arial Narrow", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --body: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--body); font-size:15px; line-height:1.75; -webkit-font-smoothing:antialiased; }
img { display:block; max-width:100%; height:auto; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--indigo); }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline:3px solid var(--amber); outline-offset:4px; }
h1,h2,h3,p,figure { margin-top:0; }
h1,h2,h3 { font-family:var(--display); line-height:1.24; letter-spacing:-.04em; }
small { font-size:.76em; }
.wrap { width:min(calc(100% - var(--edge)*2),var(--content)); margin-inline:auto; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.skip-link { z-index:99; position:fixed; top:-100px; left:12px; background:var(--dark); color:white; padding:9px 18px; border-radius:4px; }
.skip-link:focus { top:12px; }
.topline { color:#d7deff; background:var(--dark); font:700 10px/1.5 var(--display); letter-spacing:.16em; text-transform:uppercase; }
.topline-inner { display:flex; align-items:center; justify-content:space-between; padding-block:8px; gap:24px; }
.topline-inner span:last-child { font-family:var(--body); font-size:11px; letter-spacing:.07em; font-weight:500; }
.site-header { background:rgba(250,250,246,.97); border-bottom:1px solid var(--line); position:relative; z-index:10; }
.masthead { display:flex; align-items:center; min-height:94px; justify-content:space-between; gap:22px; }
.identity { display:inline-flex; align-items:center; gap:12px; flex-shrink:0; }
.brand-logo { width:46px; height:46px; object-fit:contain; border-radius:5px; background:var(--panel); color:var(--ink); }
.brand-stack { display:flex; flex-direction:column; line-height:1.15; gap:8px; }
.brand-stack strong { font-size:23px; letter-spacing:.05em; font-weight:850; }
.brand-stack small { color:var(--indigo); letter-spacing:.18em; font:800 9px/1 var(--display); }
.main-nav { display:flex; justify-content:center; align-items:stretch; gap:clamp(14px,3vw,42px); align-self:stretch; }
.main-nav a { display:flex; align-items:center; position:relative; color:#4d5469; white-space:nowrap; font-size:14px; font-weight:650; transition:color .18s ease; }
.main-nav a:hover,.main-nav a[aria-current] { color:var(--indigo); }
.main-nav a[aria-current]::after { content:""; position:absolute; bottom:0; height:3px; left:0; right:0; background:var(--indigo); }
.header-mark { flex-shrink:0; font-size:20px; font-weight:900; color:#b4bacc; letter-spacing:-.04em; }
.header-mark span { color:var(--amber); }
.home-stage { display:grid; grid-template-columns: minmax(0,1fr) minmax(0,.84fr); gap:clamp(20px,3vw,48px); padding-top:46px; padding-bottom:56px; align-items:stretch; min-height:620px; }
.stage-copy { display:flex; flex-direction:column; justify-content:center; min-width:0; }
.eyebrow { display:flex; align-items:center; gap:12px; letter-spacing:.08em; font-size:13px; font-weight:750; color:var(--indigo); }
.eyebrow i { display:block; width:26px; height:4px; transform:skewX(-30deg); background:var(--indigo); }
.edition { margin:25px 0 12px; font:800 11px/1.5 var(--display); color:#868fa8; letter-spacing:.2em; }
.home-stage h1 { font-size:clamp(44px,5.5vw,78px); line-height:1.09; margin:0 0 28px; font-weight:900; color:var(--dark); }
.headline-split { display:block; margin-top:13px; max-width:10em; font-size:.63em; line-height:1.23; letter-spacing:-.055em; }
.headline-split span { color:var(--indigo); }
.stage-lead { font-size:16px; color:#4d5568; line-height:2; max-width:480px; margin:0 0 33px; }
.stage-index { border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; gap:7px; flex-wrap:wrap; padding:18px 0; }
.stage-index span { display:flex; align-items:baseline; font-size:12px; font-weight:650; color:var(--subtle); white-space:nowrap; margin-right:clamp(12px,2.4vw,27px); }
.stage-index b { color:var(--amber); font:800 16px/1 var(--display); margin-right:8px; }
.stage-footnote { color:#798091; font-size:12px; margin:19px 0 0; }
.stage-art { position:relative; min-height:420px; overflow:hidden; border-radius:var(--radius); background:linear-gradient(135deg,var(--dark),var(--indigo)); isolation:isolate; }
.stage-art::after { content:""; position:absolute; inset:auto 0 0; height:46%; background:linear-gradient(transparent,rgba(0,0,0,.52)); pointer-events:none; }
.stage-art>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center 34%; }
.photo-stamp { position:absolute; bottom:18px; left:23px; right:23px; z-index:1; display:flex; justify-content:space-between; color:white; align-items:center; gap:10px; font:800 11px/1.4 var(--display); letter-spacing:.11em; }
.photo-stamp strong { font-size:17px; letter-spacing:.03em; }
.section-space { padding-block:64px 72px; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:36px; margin-bottom:28px; }
.section-head>div { min-width:0; }
.section-kicker { display:block; font:800 11px/1.4 var(--display); letter-spacing:.15em; color:var(--indigo); text-transform:uppercase; margin-bottom:12px; }
.section-head h2 { color:var(--dark); margin:0; font-size:clamp(27px,3vw,39px); font-weight:850; }
.section-head>p { max-width:340px; margin:0 0 3px; color:var(--subtle); font-size:13px; line-height:1.9; }
.theme-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.theme-card { min-width:0; background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; }
.theme-card.theme-large { grid-row:span 2; }
.theme-photo { position:relative; overflow:hidden; background:#d8dce9; aspect-ratio: 1.52 / 1; }
.theme-large .theme-photo { aspect-ratio: auto; flex:1; min-height:350px; }
.theme-photo img { width:100%; height:100%; object-fit:cover; transition: transform .5s ease; }
.theme-card:hover .theme-photo img { transform:scale(1.025); }
.photo-counter { position:absolute; bottom:13px; left:15px; background:rgba(23,28,50,.86); padding:7px 11px; border-radius:2px; color:white; letter-spacing:.12em; font:700 10px/1 var(--display); }
.theme-detail { padding:23px 22px 25px; }
.theme-large .theme-detail { padding:27px 25px 30px; }
.chip { display:inline-flex; align-items:center; padding:4px 9px; background:var(--mint); color:#1c6058; font-size:10px; font-weight:750; border-radius:2px; letter-spacing:.06em; }
.theme-detail h3 { color:var(--dark); font-size:clamp(20px,2vw,25px); margin:15px 0 9px; }
.theme-detail>p { color:#51596a; font-size:13px; line-height:1.85; margin:0 0 14px; }
.theme-note { display:block; padding-top:13px; border-top:1px solid var(--line); color:#697286; line-height:1.8; font-size:11px; }
.ranking-band { background:var(--dark); color:white; overflow:hidden; }
.ranking-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(30px,6vw,90px); padding-block:64px 70px; align-items:center; }
.ranking-intro { position:relative; }
.ranking-intro::after { content:"RESULTS"; position:absolute; left:0; bottom:-33px; font:900 clamp(40px,6vw,86px)/1 var(--display); letter-spacing:-.07em; color:rgba(255,255,255,.035); pointer-events:none; }
.ranking-intro .section-kicker { color:#98d9d0; }
.ranking-intro h2 { font-size:clamp(30px,3.2vw,43px); margin:0 0 22px; }
.ranking-intro p { font-size:14px; color:#c4cad9; max-width:470px; line-height:1.95; margin:0; }
.ranking-notes { border-top:1px solid var(--line-light); }
.ranking-notes article { display:grid; grid-template-columns:61px 1fr; padding:20px 0; gap:18px; align-items:start; border-bottom:1px solid var(--line-light); }
.ranking-notes b { font:900 41px/1 var(--display); letter-spacing:-.08em; color:#cf9d50; }
.ranking-notes h3 { margin:0 0 6px; font-size:19px; letter-spacing:-.02em; color:white; }
.ranking-notes p { margin:0; color:#bec5d6; font-size:12px; }
.text-link { flex-shrink:0; align-items:center; display:inline-flex; gap:10px; border-bottom:1px solid var(--indigo); color:var(--indigo); font-weight:800; font-size:13px; padding-bottom:6px; }
.text-link:hover { color:var(--amber); border-color:var(--amber); }
.text-link span { font-size:18px; }
.portrait-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.portrait-card { min-width:0; overflow:hidden; background:var(--panel); border-radius:var(--radius); }
.portrait-card>img { width:100%; aspect-ratio:1.2/1; object-fit:cover; background:#dde0ec; }
.portrait-card>div { padding:20px 22px 24px; }
.portrait-card span { font-size:11px; color:var(--indigo); font-weight:800; }
.portrait-card h3 { font-size:20px; margin:7px 0 10px; }
.portrait-card p { font-size:12px; color:var(--subtle); margin:0; line-height:1.8; }
.journal-section { padding-bottom:70px; }
.journal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; }
.journal-item { display:grid; grid-template-columns:43% 1fr; background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; min-height:210px; }
.journal-item>img { height:100%; width:100%; object-fit:cover; }
.journal-item>div { padding:23px; align-self:center; }
.journal-item h3 { font-size:21px; margin:12px 0 11px; }
.journal-item p { font-size:12px; color:var(--subtle); line-height:1.8; margin:0; }
.focus-quote { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:35px 32px; background:var(--mint); border-left:5px solid var(--indigo); margin-bottom:72px; }
.focus-quote>span { font:900 12px/1.5 var(--display); color:#246a65; letter-spacing:.1em; }
.focus-quote p { margin:0; line-height:1.6; font-size:clamp(18px,2vw,25px); color:var(--dark); font-weight:850; letter-spacing:-.03em; }
.focus-quote a { color:var(--indigo); font-size:13px; font-weight:800; white-space:nowrap; }
.site-footer { background:#202741; color:#f6f7ff; padding-top:57px; }
.footer-inner { display:grid; grid-template-columns:1fr 1fr; gap:30px; padding-bottom:46px; }
.footer-brand { font-size:25px; font-weight:900; letter-spacing:.04em; }
.footer-inner p { margin:14px 0 0; color:#bbc4d8; font-size:12px; }
.footer-inner p.footer-domain { font-size:11px; color:#96a8c0; }
.footer-inner nav { display:flex; justify-content:flex-end; align-items:start; gap:20px; flex-wrap:wrap; padding-top:10px; }
.footer-inner nav a { color:#f2f4fa; font-size:12px; font-weight:650; }
.footer-inner nav a:hover { color:var(--mint); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.12); padding-block:19px 24px; display:flex; justify-content:space-between; gap:20px; color:#93a0b9; font-size:11px; }
/* gallery: wide editorial intro and masonry-like image rhythm */
.inner-hero { margin-top:50px; display:grid; grid-template-columns:1fr .9fr; align-items:stretch; gap:34px; min-height:340px; background:var(--panel); }
.inner-hero>div:first-child { padding:clamp(26px,4vw,55px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.inner-hero h1 { font-size:clamp(41px,4.7vw,66px); color:var(--dark); margin:0 0 24px; }
.inner-hero p { font-size:15px; color:#535c6d; line-height:1.95; max-width:500px; margin:0 0 27px; }
.inner-hero-media { overflow:hidden; background:#ccd5e4; min-height:320px; }
.inner-hero-media img { object-fit:cover; width:100%; height:100%; }
.breadcrumb { color:#737c8f; font-size:12px; display:flex; gap:12px; align-items:center; }
.breadcrumb a { color:var(--indigo); font-weight:700; }
.breadcrumb a:hover { text-decoration:underline; }
.gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:22px; row-gap:37px; }
.gallery-card { min-width:0; }
.gallery-image { background:#e2e6ec; position:relative; overflow:hidden; border-radius:var(--radius); }
.gallery-image img { width:100%; aspect-ratio:1/1.1; object-fit:cover; transition:transform .4s ease,filter .4s ease; }
.gallery-card:nth-child(2) .gallery-image img,.gallery-card:nth-child(5) .gallery-image img { aspect-ratio:1/1.25; }
.gallery-card:nth-child(3) .gallery-image img,.gallery-card:nth-child(6) .gallery-image img { aspect-ratio:1/1; }
.gallery-card:hover .gallery-image img { transform:scale(1.035); filter:contrast(1.025); }
.gallery-image span { position:absolute; top:13px; left:14px; min-width:39px; min-height:39px; background:var(--indigo); display:grid; place-items:center; color:white; font:800 14px/1 var(--display); }
.gallery-copy { padding:17px 2px 0; }
.gallery-copy small { color:var(--indigo); font-weight:750; font-size:11px; letter-spacing:.05em; }
.gallery-copy h3 { margin:7px 0 10px; font-size:22px; }
.gallery-copy p { margin:0; font-size:13px; color:var(--subtle); line-height:1.85; }
.detail-feature { border-top:2px solid var(--dark); padding-top:55px; padding-bottom:70px; }
.detail-feature-header { display:grid; grid-template-columns:1fr 1fr; column-gap:40px; align-items:end; margin-bottom:37px; }
.detail-feature-header .section-kicker { grid-column:1/-1; }
.detail-feature-header h2 { font-size:clamp(29px,3.4vw,44px); margin:0; max-width:580px; }
.detail-feature-header p { max-width:430px; color:var(--subtle); line-height:1.9; margin:0; justify-self:end; }
.detail-feature-entries { display:grid; gap:0; border-top:1px solid var(--line); }
.detail-feature-entries article { display:grid; grid-template-columns:250px 1fr; gap:35px; padding-block:23px; border-bottom:1px solid var(--line); align-items:center; }
.detail-feature-media { width:100%; aspect-ratio:1.4/1; overflow:hidden; border-radius:var(--radius); background:var(--panel); }
.detail-feature-media img { width:100%; height:100%; object-fit:cover; }
.mini-number { display:block; color:var(--indigo); font:800 11px/1.4 var(--display); letter-spacing:.13em; margin-bottom:9px; }
.detail-feature-entries h3 { font-size:clamp(21px,2.3vw,27px); margin:0 0 10px; }
.detail-feature-entries p { font-size:13px; line-height:1.9; color:#50596b; margin:0 0 8px; max-width:760px; }
.detail-feature-entries .detail-caption { color:var(--amber); font-weight:750; margin:0; font-size:11px; }
.next-panel { background:var(--indigo); color:white; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:35px 45px; margin-bottom:65px; }
.next-panel span { font:800 11px/1.3 var(--display); letter-spacing:.14em; color:var(--mint); }
.next-panel h2 { font-size:29px; margin:10px 0; }
.next-panel p { font-size:12px; margin:0; color:#d3dcfb; }
.next-panel a { flex-shrink:0; background:var(--mint); color:var(--dark); padding:12px 17px; font-size:12px; font-weight:800; }
.next-panel a:hover { background:white; }
/* Editorial page: readable long-form, generous photographic rhythm */
.stories-intro { border-bottom:1px solid var(--line); padding-top:68px; padding-bottom:43px; }
.stories-intro h1 { font-size:clamp(45px,6.4vw,80px); margin:0 0 28px; line-height:1.13; color:var(--dark); }
.stories-intro h1 em { font-style:normal; color:var(--indigo); }
.stories-intro>p { max-width:725px; color:#535d70; font-size:16px; line-height:1.95; margin-bottom:24px; }
.editorial-layout { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:clamp(28px,4vw,65px); align-items:start; padding-block:53px 86px; }
.editorial-article { display:grid; grid-template-columns:minmax(185px,.8fr) minmax(0,1.35fr); gap:25px; align-items:start; padding:0 0 39px; margin:0 0 42px; border-bottom:1px solid var(--line); }
.editorial-article:last-child { margin-bottom:0; }
.editorial-picture { overflow:hidden; background:var(--panel); border-radius:var(--radius); position:relative; }
.editorial-picture img { width:100%; aspect-ratio:3/4; object-fit:cover; }
.editorial-body { min-width:0; }
.editorial-body h3 { font-size:clamp(23px,2.5vw,32px); line-height:1.35; margin:0 0 14px; }
.editorial-body p { font-size:13px; color:#596174; line-height:2; margin:0 0 11px; }
.editorial-body p.article-lead { font-size:14px; font-weight:720; color:#394258; line-height:1.9; margin-bottom:20px; }
.aside-panel { position:sticky; top:20px; border-top:4px solid var(--indigo); background:var(--panel); padding:25px 22px 29px; }
.aside-heading { color:var(--dark); display:block; font-size:20px; font-weight:850; margin-bottom:14px; }
.aside-panel p { color:#5b6475; font-size:13px; line-height:1.85; margin-bottom:13px; }
.aside-panel ol { padding-left:19px; color:#505970; font-size:12px; line-height:2; margin:0 0 22px; }
.aside-panel li { padding-left:4px; margin-bottom:8px; }
.aside-panel a { color:var(--indigo); font-size:12px; font-weight:800; border-bottom:1px solid currentColor; padding-bottom:5px; }
.error-page { min-height:55vh; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding-block:90px; }
.error-page>span { font:800 12px/1.5 var(--display); color:var(--indigo); letter-spacing:.16em; }
.error-page h1 { margin:20px 0 15px; font-size:clamp(37px,5vw,66px); }
.error-page p { max-width:650px; color:var(--subtle); font-size:15px; }
.error-page a { display:inline-block; color:white; background:var(--indigo); padding:12px 22px; font-size:13px; font-weight:800; margin-top:13px; }
/* viewport refinements */
@media(min-width:1440px) {
  .home-stage { padding-top:55px; padding-bottom:63px; }
  .theme-large .theme-photo { min-height:390px; }
  .section-space { padding-top:75px; padding-bottom:78px; }
  .stories-intro { padding-top:80px; }
}
@media(max-width:1100px) {
  .masthead { min-height:83px; }
  .header-mark { display:none; }
  .home-stage { min-height:540px; }
  .stage-lead { font-size:14px; }
  .theme-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .theme-large { grid-row:auto!important; }
  .theme-large .theme-photo { min-height:0; aspect-ratio:1.52/1; flex:unset; }
  .journal-item { grid-template-columns:1fr; }
  .journal-item>img { height:180px; }
  .journal-item>div { padding:19px; }
  .editorial-layout { grid-template-columns:1fr 235px; gap:25px; }
  .editorial-article { grid-template-columns: minmax(155px,.75fr) 1.25fr; gap:20px; }
}
@media(max-width:880px) {
  .masthead { min-height:80px; }
  .brand-stack strong { font-size:19px; }
  .main-nav { gap:19px; }
  .main-nav a { font-size:12px; }
  .home-stage { grid-template-columns:1fr 1fr; gap:22px; min-height:510px; padding-top:30px; }
  .home-stage h1 { font-size:clamp(39px,5vw,55px); }
  .stage-lead { line-height:1.85; margin-bottom:23px; }
  .stage-index { padding:13px 0; }
  .stage-index span { margin-right:8px; font-size:11px; }
  .stage-index b { font-size:13px; }
  .section-head { gap:24px; }
  .section-head>p { max-width:280px; }
  .ranking-layout { grid-template-columns:1fr 1fr; gap:32px; }
  .portrait-card>div { padding:15px; }
  .portrait-card h3 { font-size:18px; }
  .focus-quote { flex-wrap:wrap; }
  .inner-hero { grid-template-columns:1.1fr .9fr; gap:0; }
  .gallery-grid { gap:28px 14px; }
  .detail-feature-entries article { grid-template-columns:190px 1fr; gap:22px; }
  .editorial-layout { display:flex; flex-direction:column; }
  .aside-panel { width:100%; position:static; }
  .aside-panel ol { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .editorial-article { grid-template-columns:minmax(190px,.7fr) 1.3fr; }
}
@media(max-width:700px) {
  :root { --edge:19px; }
  .topline-inner { padding:7px 0; }
  .topline-inner span:last-child { display:none; }
  .masthead { display:block; padding-block:13px 0; }
  .identity { margin-bottom:11px; }
  .brand-logo { width:36px; height:36px; }
  .brand-stack { gap:5px; }
  .brand-stack strong { font-size:19px; }
  .brand-stack small { font-size:8px; }
  .main-nav { width:100%; min-height:46px; gap:0; justify-content:space-between; }
  .main-nav a { flex:1; justify-content:center; font-size:12px; padding-inline:4px; }
  .home-stage { grid-template-columns:1fr; min-height:0; padding-block:37px 38px; gap:23px; }
  .stage-copy { justify-content:start; }
  .home-stage h1 { font-size:clamp(43px,9vw,63px); margin-bottom:18px; }
  .headline-split { margin-top:7px; }
  .edition { margin-top:17px; margin-bottom:9px; }
  .stage-lead { max-width:570px; font-size:14px; margin-bottom:18px; }
  .stage-index { gap:4px; }
  .stage-index span { margin-right:12px; }
  .stage-footnote { margin-top:12px; }
  .stage-art { width:100%; min-height:0; height:320px; }
  .stage-art>img { object-position:center 28%; }
  .section-space { padding-block:43px 50px; }
  .section-head { display:block; margin-bottom:20px; }
  .section-head h2 { font-size:clamp(25px,6vw,33px); }
  .section-head>p { max-width:610px; margin-top:12px; }
  .section-head .text-link { margin-top:15px; }
  .theme-grid { gap:12px; }
  .theme-detail,.theme-large .theme-detail { padding:17px 15px 20px; }
  .theme-detail h3 { font-size:18px; margin:12px 0 8px; }
  .theme-detail>p { font-size:12px; }
  .theme-note { font-size:10px; }
  .photo-counter { bottom:9px; left:9px; font-size:9px; }
  .ranking-layout { grid-template-columns:1fr; padding-block:44px; gap:27px; }
  .ranking-intro h2 { font-size:32px; margin-bottom:13px; }
  .ranking-intro p { max-width:650px; }
  .ranking-notes article { padding-block:15px; }
  .portrait-row { grid-template-columns:repeat(2,1fr); gap:13px; }
  .portrait-card:nth-child(3) { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; }
  .portrait-card:nth-child(3)>img { height:100%; aspect-ratio:auto; }
  .portrait-card:nth-child(3)>div { align-self:center; }
  .journal-section { padding-bottom:45px; }
  .journal-grid { grid-template-columns:1fr; gap:14px; }
  .journal-item { grid-template-columns:38% 1fr; min-height:165px; }
  .journal-item>img { height:100%; }
  .journal-item h3 { font-size:19px; }
  .focus-quote { margin-bottom:48px; padding:22px 21px; align-items:start; gap:12px; flex-direction:column; }
  .focus-quote p { font-size:20px; }
  .footer-inner { grid-template-columns:1fr; gap:20px; padding-bottom:25px; }
  .footer-inner nav { padding:0; justify-content:flex-start; gap:17px; }
  .site-footer { padding-top:38px; }
  .inner-hero { display:flex; flex-direction:column; margin-top:20px; }
  .inner-hero>div:first-child { padding:29px 25px 25px; }
  .inner-hero h1 { font-size:42px; margin-bottom:13px; }
  .inner-hero p { font-size:13px; margin-bottom:17px; }
  .inner-hero-media { min-height:0; height:245px; }
  .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:26px; }
  .gallery-image img { aspect-ratio:1/1.12; }
  .gallery-copy h3 { font-size:19px; }
  .gallery-copy p { font-size:12px; }
  .detail-feature { padding-top:35px; padding-bottom:40px; }
  .detail-feature-header { display:block; }
  .detail-feature-header h2 { margin-bottom:11px; font-size:29px; }
  .detail-feature-header p { font-size:13px; }
  .detail-feature-entries article { grid-template-columns:155px 1fr; gap:14px; align-items:start; }
  .detail-feature-media { aspect-ratio:1/1.1; }
  .detail-feature-entries h3 { font-size:19px; }
  .detail-feature-entries p { font-size:12px; line-height:1.8; }
  .next-panel { padding:25px 22px; margin-bottom:50px; align-items:flex-start; flex-direction:column; }
  .next-panel h2 { font-size:23px; }
  .stories-intro { padding-top:42px; padding-bottom:30px; }
  .stories-intro h1 { font-size:clamp(40px,8vw,59px); }
  .stories-intro>p { font-size:14px; }
  .editorial-layout { padding-top:36px; padding-bottom:50px; }
  .editorial-article { grid-template-columns:1fr; gap:20px; margin-bottom:27px; padding-bottom:30px; }
  .editorial-picture img { aspect-ratio:1.65/1; }
  .editorial-body h3 { font-size:26px; }
  .aside-panel ol { grid-template-columns:1fr; gap:0; }
}
@media(max-width:420px) {
  .brand-stack strong { font-size:18px; }
  .home-stage h1 { font-size:40px; }
  .stage-art { height:265px; }
  .stage-index span { font-size:10px; margin-right:4px; }
  .stage-index b { margin-right:4px; }
  .theme-grid { grid-template-columns:1fr; }
  .theme-photo,.theme-large .theme-photo { aspect-ratio:1.8/1; }
  .theme-detail h3 { font-size:21px; }
  .portrait-row { grid-template-columns:1fr; }
  .portrait-card:nth-child(3) { display:block; grid-column:auto; }
  .portrait-card:nth-child(3)>img { height:auto; aspect-ratio:1.2/1; }
  .journal-item { grid-template-columns:1fr; }
  .journal-item>img { height:auto; aspect-ratio:1.8/1; }
  .gallery-grid { gap:20px 12px; }
  .gallery-copy h3 { font-size:16px; }
  .gallery-copy p { font-size:11px; }
  .detail-feature-entries article { grid-template-columns:1fr; }
  .detail-feature-media { aspect-ratio:1.8/1; }
  .footer-inner nav { flex-direction:column; }
  .footer-bottom { flex-direction:column; gap:3px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
@media print {
  body { background:white; color:black; }
  .topline,.site-header,.site-footer,.text-link,.next-panel a { display:none!important; }
  .wrap { width:100%; max-width:100%; }
  .home-stage,.inner-hero,.ranking-layout,.editorial-layout { display:block; }
  .theme-grid,.gallery-grid,.portrait-row { grid-template-columns:repeat(2,1fr); }
  .theme-card,.gallery-card,.editorial-article { break-inside:avoid; }
  .ranking-band { background:white; color:black; }
  .ranking-intro h2,.ranking-notes h3 { color:black; }
  a[href]::after { content:' [' attr(href) ']'; font-size:9px; }
  .stage-art { height:300px; }
}
