/* Site design templates (Settings → Appearance → Design). Loaded only when a template other than the default is chosen; each one is scoped to
   html[data-design="…"] and adjusts layout, spacing and surfaces while the colours and fonts still come from the theme. */

/* ───────── Magazine: a cover story over its picture, a featured row, rounded cards that lift on hover ───────── */
html[data-design=magazine] .masthead{border-bottom:0;background:linear-gradient(var(--panel),transparent);box-shadow:0 1px 0 var(--line)}
html[data-design=magazine] .logo{font-size:clamp(36px,6.5vw,66px);padding:14px 0 18px}
html[data-design=magazine] nav[aria-label=Primary]{font-weight:600}
html[data-design=magazine] .home-lead{position:relative;display:flex;grid-template-columns:none;min-height:clamp(340px,44vw,540px);border:0;padding:0;margin:8px 0 34px;border-radius:20px;overflow:hidden;background:var(--panel);isolation:isolate}
html[data-design=magazine] .home-lead-img{position:absolute;inset:0;z-index:-2}
html[data-design=magazine] .home-lead-img img{width:100%;height:100%;aspect-ratio:auto;border-radius:0;object-fit:cover}
html[data-design=magazine] .home-lead::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(5,8,12,.88) 0,rgba(5,8,12,.55) 38%,rgba(5,8,12,.05) 72%)}
html[data-design=magazine] .home-lead-text{align-self:flex-end;max-width:820px;padding:clamp(20px,4vw,48px);text-align:left;color:#fff}
html[data-design=magazine] .home-lead-text h2{font-size:clamp(30px,4.6vw,56px);line-height:1.08;margin:10px 0 12px;text-shadow:0 2px 18px rgba(0,0,0,.35)}
html[data-design=magazine] .home-lead-text h2 a,html[data-design=magazine] .home-lead-text .kicker{color:#fff}
html[data-design=magazine] .home-lead-text .dek{color:rgba(255,255,255,.9)}
html[data-design=magazine] .home-lead-text .meta,html[data-design=magazine] .home-lead-text .meta a{color:rgba(255,255,255,.78)}
html[data-design=magazine] .home-lead-text .badge{border-color:rgba(255,255,255,.55);color:#fff}
html[data-design=magazine] .home-lead:not(:has(.home-lead-img)){min-height:0}
html[data-design=magazine] .home-lead:not(:has(.home-lead-img))::after{display:none}
html[data-design=magazine] .home-lead:not(:has(.home-lead-img)) .home-lead-text{color:var(--text)}
html[data-design=magazine] .home-lead:not(:has(.home-lead-img)) .home-lead-text h2 a{color:var(--text)}
html[data-design=magazine] .home-lead:not(:has(.home-lead-img)) .home-lead-text .dek{color:var(--text2)}
html[data-design=magazine] .rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
html[data-design=magazine] .row{grid-template-columns:1fr;gap:0;padding:0;border:1px solid var(--line);border-top:3px solid var(--amber);border-radius:14px;background:var(--panel);overflow:hidden;transition:transform .18s,box-shadow .18s}
html[data-design=magazine] .row:hover{transform:translateY(-3px);box-shadow:0 16px 30px -22px #000}
html[data-design=magazine] .row:has(.k-science){border-top-color:var(--teal)}
html[data-design=magazine] .row:has(.k-cases){border-top-color:var(--cases)}
html[data-design=magazine] .row:has(.k-history){border-top-color:var(--history)}
html[data-design=magazine] .row:has(.k-analysis){border-top-color:var(--analysis)}
html[data-design=magazine] .row:first-child{padding-top:0}
html[data-design=magazine] .row-img img{border-radius:0;aspect-ratio:16/9}
html[data-design=magazine] .row>div{padding:14px 18px 18px}
html[data-design=magazine] .row h3{font-size:22px}
html[data-design=magazine] .row p{display:block}
html[data-design=magazine] .rows>.row:first-child:has(.row-img){grid-column:1/-1;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
html[data-design=magazine] .rows>.row:first-child .row-img img{height:100%;aspect-ratio:auto;min-height:260px}
html[data-design=magazine] .rows>.row:first-child>div{align-self:center;padding:24px 30px}
html[data-design=magazine] .rows>.row:first-child h3{font-size:clamp(24px,2.8vw,34px);line-height:1.15}
html[data-design=magazine] .cards{gap:24px}
html[data-design=magazine] .card{border:1px solid var(--line);border-top:3px solid var(--amber);border-radius:14px;background:var(--panel);padding:14px;overflow:hidden;transition:transform .18s}
html[data-design=magazine] .card:hover{transform:translateY(-3px)}
html[data-design=magazine] .thumb,html[data-design=magazine] .hero-img{border-radius:10px}
html[data-design=magazine] .side{border-radius:14px;box-shadow:0 10px 24px -20px #000}
html[data-design=magazine] .sec-head{border-bottom:0;padding-bottom:0;margin:6px 0 16px}
html[data-design=magazine] .sec-head h2{padding:6px 14px;border-radius:99px;background:rgba(var(--amber-rgb),.14);color:var(--amber);display:inline-block}
@media(max-width:760px){html[data-design=magazine] .home-lead{display:block;min-height:0;border-radius:14px;background:var(--panel)}html[data-design=magazine] .home-lead-img{position:static}html[data-design=magazine] .home-lead-img img{height:auto;aspect-ratio:16/10}html[data-design=magazine] .home-lead::after{display:none}html[data-design=magazine] .home-lead-text{color:var(--text);padding:16px}html[data-design=magazine] .home-lead-text h2,html[data-design=magazine] .home-lead-text h2 a,html[data-design=magazine] .home-lead-text .kicker{color:var(--text);text-shadow:none}html[data-design=magazine] .home-lead-text .dek{color:var(--text2)}html[data-design=magazine] .home-lead-text .meta,html[data-design=magazine] .home-lead-text .meta a{color:var(--dim)}html[data-design=magazine] .home-lead-text .badge{border-color:var(--line);color:var(--dim)}html[data-design=magazine] .rows{grid-template-columns:1fr}html[data-design=magazine] .rows>.row:first-child:has(.row-img){grid-template-columns:1fr}html[data-design=magazine] .rows>.row:first-child .row-img img{height:auto;aspect-ratio:16/9;min-height:0}html[data-design=magazine] .row p{display:none}html[data-design=magazine] .row>div{padding:12px 14px 14px}}

/* ───────── Newsroom: a wire-service front page: sans headlines, two columns of compact stories, flat rails ───────── */
html[data-design=newsroom] body{font-size:16px;line-height:1.5}
html[data-design=newsroom] h1,html[data-design=newsroom] h2,html[data-design=newsroom] h3{font-family:var(--sans);letter-spacing:-.012em}
html[data-design=newsroom] .body{font-size:17.5px;line-height:1.65}
html[data-design=newsroom] .logo{text-align:left;font-size:clamp(26px,3.4vw,38px);padding:4px 0 6px;letter-spacing:-.3px}
html[data-design=newsroom] .top{padding:6px 0}
html[data-design=newsroom] nav[aria-label=Primary]{justify-content:flex-start;padding:4px 0 10px;font-size:12.5px;font-weight:700;letter-spacing:.07em}
html[data-design=newsroom] .masthead{border-bottom:3px solid var(--amber)}
html[data-design=newsroom] .home-lead{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:24px;padding:4px 0 18px;margin-bottom:4px}
html[data-design=newsroom] .home-lead-img img{aspect-ratio:3/2;border-radius:3px}
html[data-design=newsroom] .home-lead-text .kicker{display:inline-block;padding:2px 8px;background:var(--amber);color:var(--on-amber);border-radius:2px}
html[data-design=newsroom] .home-lead-text h2{font-size:clamp(26px,3vw,38px);line-height:1.1;font-weight:800;margin:8px 0 8px}
html[data-design=newsroom] .home-lead-text .dek{font:17px/1.45 var(--sans);color:var(--text2)}
html[data-design=newsroom] .home-grid{grid-template-columns:minmax(0,1fr) 290px;gap:30px}
html[data-design=newsroom] .sec-head{margin:18px 0 10px;border-bottom:1px solid var(--line)}
html[data-design=newsroom] .sec-head h2{border-left:4px solid var(--amber);padding-left:9px;font-size:12px}
html[data-design=newsroom] .rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
html[data-design=newsroom] .row{grid-template-columns:minmax(0,1fr) 112px;gap:12px;padding:12px 0;align-items:start}
html[data-design=newsroom] .row:first-child{padding-top:12px}
html[data-design=newsroom] .row .row-img{order:2}
html[data-design=newsroom] .row-img img{border-radius:3px;aspect-ratio:4/3}
html[data-design=newsroom] .row h3{font-size:17px;font-weight:700;line-height:1.25;margin:3px 0 4px}
html[data-design=newsroom] .row p{font-size:14px;line-height:1.4;margin:0 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
html[data-design=newsroom] .row .kicker{font-size:11px}
html[data-design=newsroom] .row .meta{font-size:12px}
html[data-design=newsroom] .cards{gap:16px;margin:18px 0}
html[data-design=newsroom] .card h3{font-size:17px;font-weight:700}
html[data-design=newsroom] .thumb,html[data-design=newsroom] .hero-img{border-radius:3px}
html[data-design=newsroom] .side{border:0;border-top:2px solid var(--amber);border-radius:0;padding:10px 0 0;background:transparent}
html[data-design=newsroom] .home-side{gap:20px}
html[data-design=newsroom] .badge{border-radius:2px}
@media(min-width:761px){html[data-design=newsroom] .masthead .wrap{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:28px;align-items:end}html[data-design=newsroom] .masthead .top{grid-column:1/-1}html[data-design=newsroom] .masthead .desktop-nav{padding-bottom:12px}}
@media(max-width:980px){html[data-design=newsroom] .rows{grid-template-columns:1fr}html[data-design=newsroom] .home-grid{grid-template-columns:1fr}}
@media(max-width:760px){html[data-design=newsroom] .home-lead{grid-template-columns:1fr;gap:12px}html[data-design=newsroom] .row{grid-template-columns:minmax(0,1fr) 92px}}

/* ───────── Minimal: one calm reading column ───────── */
html[data-design=minimal] .wrap{max-width:min(var(--page-max,1120px),880px)}
html[data-design=minimal] body{line-height:1.7}
html[data-design=minimal] .logo{font-size:clamp(26px,4vw,40px);padding:6px 0 8px;font-weight:600}
html[data-design=minimal] .masthead{border-bottom:1px solid var(--line)}
html[data-design=minimal] nav[aria-label=Primary]{font-size:12.5px;letter-spacing:.14em;gap:4px 22px}
html[data-design=minimal] .home-lead{grid-template-columns:1fr;gap:16px;border-bottom:1px solid var(--line);padding-bottom:28px}
html[data-design=minimal] .home-lead-img img{aspect-ratio:16/9;border-radius:6px}
html[data-design=minimal] .home-lead-text h2{font-size:clamp(28px,4vw,40px)}
html[data-design=minimal] .home-grid{grid-template-columns:1fr;gap:10px}
html[data-design=minimal] .home-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:34px}
html[data-design=minimal] .home-side .side{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:14px 0 0}
html[data-design=minimal] .row{grid-template-columns:96px minmax(0,1fr);gap:16px;padding:22px 0}
html[data-design=minimal] .row-img img{border-radius:4px;aspect-ratio:1/1}
html[data-design=minimal] .row h3{font-size:22px}
html[data-design=minimal] .cards{grid-template-columns:1fr;gap:0}
html[data-design=minimal] .card{padding:20px 0;border-top:1px solid var(--line)}
html[data-design=minimal] .thumb{display:none}
html[data-design=minimal] .sec-head{border-bottom:1px solid var(--line)}
html[data-design=minimal] article.full{max-width:700px}
html[data-design=minimal] .body{font-size:20px;line-height:1.8}
html[data-design=minimal] .foot{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
html[data-design=minimal] .foot>div:first-child{grid-column:1/-1}
@media(max-width:760px){html[data-design=minimal] .home-side{grid-template-columns:1fr}html[data-design=minimal] .row{grid-template-columns:84px minmax(0,1fr)}}

/* ───────── Rows without a picture (The Wire, search results, text-only lists): never reserve a thumbnail column ───────── */
html[data-design] .row:not(:has(.row-img)){grid-template-columns:1fr}
html[data-design=magazine] .rows:has(.wire-row){display:flex;flex-direction:column;gap:0}
html[data-design=magazine] .wire-row.row{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:16px 0;overflow:visible;grid-template-columns:150px minmax(0,1fr);gap:16px}
html[data-design=magazine] .wire-row.row:not(:has(.row-img)){grid-template-columns:1fr}
html[data-design=magazine] .wire-row .row-img img{border-radius:10px;aspect-ratio:3/2}
html[data-design=magazine] .wire-row.row>div{padding:0}
html[data-design=newsroom] .rows:has(.wire-row){grid-template-columns:1fr}
html[data-design=newsroom] .wire-row{padding:9px 0}
html[data-design=newsroom] .wire-row h3{font-size:17px}
html[data-design=newsroom] .wire-row.row:has(.row-img){grid-template-columns:minmax(0,1fr) 110px}
html[data-design=minimal] .wire-row{padding:16px 0}
html[data-design=minimal] .wire-row h3{font-size:19px}
html[data-design=minimal] .wire-row.row:has(.row-img){grid-template-columns:84px minmax(0,1fr)}
html[data-design=minimal] .wire-row.row:has(.row-img) .row-img img{aspect-ratio:1/1}
@media(max-width:760px){html[data-design] .wire-row.row:has(.row-img){grid-template-columns:84px minmax(0,1fr)}html[data-design=magazine] .wire-row.row:has(.row-img){grid-template-columns:84px minmax(0,1fr)}}
