/* ChorusWire — premium editorial theme. Fonts: Newsreader (display), Inter (UI). */
:root{
  --ink:#111111; --ink-2:#2B2B2B; --paper:#FFFFFF; --surface:#FFFFFF; --rule:#E5E5E5; --mute:#6B6B6B; --soft:#F5F5F5;
  --signal:#E4002B; --music:#E4002B; --sports:#0B7A4B; --tech:#1F4FFF; --link:#1F4FFF;
  --accent:var(--music);
  --head:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; --serif:"Newsreader",Georgia,"Times New Roman",serif; --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --shadow:0 1px 2px rgba(0,0,0,.05),0 6px 18px rgba(0,0,0,.05);
  --r:4px;
}
.sec-music{--accent:var(--music)}.sec-sports{--accent:var(--sports)}.sec-tech{--accent:var(--tech)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto;display:block}
ul,ol{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:200}.skip:focus{left:8px}
.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
:focus-visible{outline:2px solid var(--link);outline-offset:2px}
.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;pointer-events:none}.progress i{display:block;height:100%;width:0;background:var(--accent)}
body:not(.is-article) .progress{display:none}

/* top bar */
.topbar{background:#fff;color:var(--mute);font-size:12px;border-bottom:1px solid var(--rule)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:34px;gap:16px}
.topbar .date{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}
.topbar .links{display:flex;gap:18px}.topbar a:hover{color:var(--ink)}
@media (max-width:640px){.topbar .links a:not(:last-child){display:none}}

/* header */
.site-header{border-top:4px solid var(--signal);position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--rule)}
.masthead{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:10px;gap:16px}
.logo{display:inline-flex;align-items:center;gap:11px;color:var(--ink)}.logo:hover{text-decoration:none}
.logo .word{font-family:var(--serif);font-weight:700;font-size:34px;line-height:1;letter-spacing:-.025em}
.logo .word b{color:var(--signal);font-weight:700}
.logo .bars{display:inline-flex;gap:3px;align-items:flex-end;height:28px}
.logo .bars i{display:block;width:5px;background:var(--signal);border-radius:2px;animation:eq 1.8s ease-in-out infinite}
.logo .bars i:nth-child(1){height:12px;animation-delay:-.4s}.logo .bars i:nth-child(2){height:28px;animation-delay:-.9s}.logo .bars i:nth-child(3){height:19px;animation-delay:-.2s}.logo .bars i:nth-child(4){height:9px;animation-delay:-1.2s}
@keyframes eq{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.55)}}
@media (prefers-reduced-motion:reduce){.logo .bars i{animation:none}}
.logo.light{color:#F4F3EF}.logo.light .bars i{background:var(--signal)}
.hdr-actions{display:flex;gap:8px;align-items:center}
.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--ink)}.icon-btn:hover{background:var(--soft);text-decoration:none}
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;font-weight:600;font-size:14px;border:1px solid var(--ink);color:var(--ink);background:transparent;font-family:var(--sans);cursor:pointer;line-height:1;transition:transform .15s,background .15s}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn.primary{background:var(--ink);color:var(--paper)}
.btn.signal{background:var(--signal);border-color:var(--signal);color:#fff}
nav.main{border-top:1px solid var(--rule)}
.navrow{display:flex;gap:26px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.navrow::-webkit-scrollbar{display:none}
.navrow li{list-style:none}
.navrow a{display:block;padding:12px 0;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;position:relative;color:var(--ink-2)}
.navrow a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.navrow a:hover{text-decoration:none;color:var(--ink)}.navrow a:hover::after,.navrow .current-menu-item a::after,.navrow .current-menu-ancestor a::after{transform:scaleX(1)}
.navrow .soon a{color:var(--mute);font-weight:500}
.breaking{background:var(--signal);color:#fff;font-size:14px;font-weight:600}
.breaking .wrap{display:flex;gap:12px;align-items:center;min-height:40px}
.breaking .tag{background:#fff;color:var(--signal);padding:3px 8px;border-radius:3px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.breaking a{color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* typography */
h1,h2,h3,h4{font-family:var(--head);font-weight:800;line-height:1.12;letter-spacing:-.03em;margin:.3em 0;color:var(--ink)}
.kicker{font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:12px 0 2px}
.kicker a{color:var(--accent)}.kicker .artist{color:var(--mute);font-weight:600}
.dek{font-size:18px;color:var(--mute);line-height:1.45;margin:.5em 0 .9em}
.meta{font-size:13px;color:var(--mute)}.meta a{color:var(--ink);font-weight:600}

/* media */
.card-img,.lead-img{display:block;overflow:hidden;border-radius:var(--r);background:var(--ink)}
.img,.featured img{aspect-ratio:16/9;object-fit:cover;width:100%;background:linear-gradient(135deg,#1c1c2e,#4b2a6a)}
.card-img img,.lead-img img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.card:hover .card-img img,.lead:hover .lead-img img{transform:scale(1.04)}
figure.featured{margin:0}
figcaption{font-size:12.5px;color:var(--mute);margin-top:8px}

/* hero */
.hero{display:grid;grid-template-columns:1fr;gap:32px;padding:28px 0 34px}
@media (min-width:980px){.hero{grid-template-columns:minmax(0,1fr) 360px;gap:44px;padding-top:34px}}
.lead-body{padding-top:4px}
.lead h2{font-size:clamp(32px,5.2vw,56px);line-height:1.03;letter-spacing:-.03em;margin:.18em 0 .22em}
.lead h2 a:hover{text-decoration:none;background:linear-gradient(var(--accent),var(--accent)) 0 100%/100% 3px no-repeat}
.lead .dek{font-size:clamp(17px,1.8vw,21px)}
.rail{border-top:3px solid var(--ink);padding-top:14px;align-self:start}
.rail-h{font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px}
.rail-list{padding:0;list-style:none}
.rail-list li{display:grid;grid-template-columns:30px 1fr;gap:6px;padding:14px 0;border-top:1px solid var(--rule)}
.rail-list li:first-child{border-top:0}
.rail-list .n{font-family:var(--serif);font-size:26px;font-weight:700;color:var(--rule);line-height:1}
.rail-list .rk{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.rail-list a{display:block;font-family:var(--serif);font-weight:700;font-size:19px;line-height:1.2;letter-spacing:-.01em;margin:3px 0 4px}
.rail-list time{font-size:12px;color:var(--mute)}

/* strip + cards */
.strip{display:grid;grid-template-columns:1fr;gap:24px;padding:26px 0 36px;border-top:1px solid var(--rule)}
@media (min-width:760px){.strip{grid-template-columns:repeat(3,1fr);gap:28px}}
.card h3{font-size:22px;line-height:1.15;margin:.25em 0 .35em}
.card h3 a:hover{text-decoration:underline}
.card .card-img{margin-bottom:2px}
.card.small h3{font-size:19px}
.card.wide{display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:760px){.card.wide{grid-template-columns:1.25fr 1fr;gap:26px;align-items:center}}
.card.wide h3{font-size:clamp(26px,3vw,36px);letter-spacing:-.025em}
.card.wide .dek{font-size:17px}

/* newsletter band */
.band{background:var(--ink);color:#F4F3EF;margin:6px 0 0}
.band-in{display:grid;grid-template-columns:1fr;gap:22px;padding-top:44px;padding-bottom:44px;align-items:center}
@media (min-width:860px){.band-in{grid-template-columns:1.3fr 1fr;gap:56px}}
.band .eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#FF6B84}
.band h2{color:#fff;font-size:clamp(26px,3.4vw,40px);margin:.25em 0 .3em}
.band p{margin:0;color:#B9B7B0;font-size:16px;max-width:52ch}
.band form{display:flex;gap:10px;flex-wrap:wrap}
.band input{flex:1;min-width:200px;padding:14px 16px;border-radius:999px;border:1px solid #3A3A40;background:#121215;color:#fff;font:inherit;font-size:15px}
.band input::placeholder{color:#8A8882}

/* section blocks */
.sec-block{padding:44px 0 6px}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--rule);padding-bottom:12px;margin-bottom:24px;position:relative}
.sec-head::after{content:"";position:absolute;left:0;bottom:-1px;width:72px;height:3px;background:var(--accent)}
.sec-head h2{font-size:clamp(26px,3vw,34px);margin:0}
.sec-head a{font-size:13px;font-weight:600;color:var(--accent);letter-spacing:.02em}
.sec-grid{display:grid;gap:28px;grid-template-columns:1fr}
@media (min-width:760px){
  .sec-grid.n2,.sec-grid.n3,.sec-grid.n4{grid-template-columns:repeat(3,1fr)}
  .sec-grid .card.wide{grid-column:1/-1}
}
@media (min-width:760px){.sec-grid.n2 .card.small{grid-column:span 1}}

/* ads */
.ad{background:var(--soft);border:1px dashed var(--rule);color:var(--mute);font-size:11px;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;border-radius:var(--r)}
.ad.rail-ad,.ad.rail{position:sticky;top:130px}
.ad.inline{margin:34px 0}.ad.inart{margin:28px 0}
@media (max-width:999px){.ad.rail{display:none}}
.pref{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--signal);border-radius:var(--r);padding:18px 20px;margin:36px 0;flex-wrap:wrap;box-shadow:var(--shadow)}
.pref p{margin:0;font-size:15px;flex:1;min-width:220px}

/* article */
.layout{display:grid;grid-template-columns:1fr;gap:36px;padding:28px 20px 40px;max-width:1240px;margin:0 auto}
@media (min-width:1000px){.layout{grid-template-columns:minmax(0,740px) 320px;justify-content:center;gap:64px}}
.crumbs{font-size:13px;color:var(--mute)}.crumbs a{color:var(--mute)}.crumbs a:hover{color:var(--ink)}
.is-article h1,.page-article h1,.archive-head h1{font-size:clamp(34px,5.4vw,56px);line-height:1.04;letter-spacing:-.03em;margin:.22em 0 .3em}
.is-article .dek{font-size:clamp(19px,2vw,23px);line-height:1.4}
.byline{display:flex;gap:14px;align-items:center;padding:16px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:14px;margin-top:6px}
.byline .avatar{width:46px;height:46px;border-radius:50%;flex:none}
.byline strong a{color:var(--ink)}.byline .t{color:var(--mute)}
.ai{font-size:13px;color:var(--mute);margin:10px 0 0}.ai a{color:var(--link)}
.is-article figure.featured{margin:26px 0}.is-article figure.featured img{border-radius:var(--r)}
.body{font-size:19px;line-height:1.7;color:var(--ink-2)}
.body>p:first-of-type::first-letter{font-family:var(--serif);font-weight:700;font-size:3.6em;line-height:.85;float:left;padding:6px 10px 0 0;color:var(--accent)}
.body p{margin:0 0 1.25em}.body a{color:var(--link);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--link) 40%,transparent);text-underline-offset:3px}
.body a:hover{text-decoration-color:var(--link)}
.body h2{font-size:30px;margin:1.6em 0 .5em;letter-spacing:-.025em}.body h3{font-size:23px;margin:1.3em 0 .4em}
.body ul,.body ol{padding-left:24px;margin-bottom:1.3em}.body li{margin:.4em 0}
.body img{border-radius:var(--r)}
.body blockquote{margin:1.8em 0;padding:4px 0 4px 22px;border-left:4px solid var(--accent);font-family:var(--serif);font-size:25px;line-height:1.35;color:var(--ink);letter-spacing:-.01em}
.body blockquote p{margin:0 0 .5em}.body blockquote p+p{font-family:var(--sans);font-size:13px;color:var(--mute);letter-spacing:0}
.body table{border-collapse:separate;border-spacing:0;width:100%;font-size:15px;margin:1.6em 0;border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;display:block;overflow-x:auto}
.body th,.body td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap}
.body td:first-child{white-space:normal}
.body th{background:var(--soft);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.body tr:last-child td{border-bottom:0}
.facts{background:var(--surface);border:1px solid var(--rule);border-top:3px solid var(--accent);border-radius:var(--r);padding:18px 22px;margin:8px 0 30px;box-shadow:var(--shadow)}
.facts h3{margin:0 0 10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-family:var(--sans);color:var(--accent)}
.facts ul{margin:0;padding-left:20px;font-size:16px;line-height:1.55;color:var(--ink-2)}.facts li{margin:7px 0}.facts li.unconfirmed{color:var(--mute);font-style:italic}
.sources{border-top:1px solid var(--rule);padding-top:20px;margin-top:34px;font-size:14.5px}
.sources h3{font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-family:var(--sans)}
.sources ol{padding-left:22px}.sources li{margin:6px 0;color:var(--ink-2)}.sources a{color:var(--link)}.sources .acc{color:var(--mute)}
.corr{font-size:13.5px;color:var(--mute);border-top:1px solid var(--rule);margin-top:22px;padding-top:14px}.corr a{color:var(--link)}
.author-box{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--rule);border-radius:var(--r);padding:18px;margin-top:30px;font-size:15px;background:var(--surface)}
.author-box img{width:58px;height:58px;border-radius:50%;flex:none}.author-box a{color:var(--link)}
.related{margin-top:34px}.related h3{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-family:var(--sans)}
.related a{display:block;font-family:var(--serif);font-size:21px;font-weight:700;padding:13px 0;border-top:1px solid var(--rule);letter-spacing:-.01em;line-height:1.2}
.anchor-slot{position:fixed;left:0;right:0;bottom:0;z-index:50}.anchor-slot .ad{border-radius:0;border-left:0;border-right:0;border-bottom:0}.anchor-slot.placeholder{display:none}
@media (min-width:1000px){.anchor-slot{display:none}}
aside .box{border:1px solid var(--rule);border-radius:var(--r);padding:20px;background:var(--surface);margin-bottom:24px;box-shadow:var(--shadow)}
aside h4{margin:0 0 12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-family:var(--sans)}
.news-letter p{margin:0 0 14px;font-size:15px;color:var(--mute)}
.news-letter form{display:flex;gap:8px;flex-wrap:wrap}
.news-letter input{flex:1;padding:12px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px;min-width:0}

/* archive / search / pages */
.archive-head{padding:34px 0 12px;max-width:1240px;margin:0 auto}
.archive-head .dek{max-width:60ch}
.archive-head h1{border-bottom:3px solid var(--accent);display:inline-block;padding-bottom:6px}
.archive-grid{display:grid;grid-template-columns:1fr;gap:30px;padding:24px 0 10px}
@media (min-width:700px){.archive-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.archive-grid{grid-template-columns:repeat(3,1fr)}}
.searchform{display:flex;gap:8px;max-width:520px;margin:14px 0}
.searchform input{flex:1;padding:12px 16px;border:1px solid var(--rule);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit}
.pagination{margin:28px 0;font-size:14px}.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.pagination a,.pagination span{padding:8px 14px;border:1px solid var(--rule);border-radius:999px}.pagination .current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.page-article{max-width:760px}

/* footer */
.site-footer{background:#0A0A0C;color:#BDBBB4;margin-top:60px;padding:56px 0 30px;font-size:14px}
.foot-top{display:flex;gap:28px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid #26262B}
.foot-tag{margin:0;max-width:46ch;color:#9A988F}
.site-footer .cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:30px 0}
@media (min-width:760px){.site-footer .cols{grid-template-columns:repeat(4,1fr)}}
.site-footer h5{margin:0 0 12px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#fff;font-family:var(--sans)}
.site-footer li{list-style:none}.site-footer a{display:block;padding:4px 0;color:#BDBBB4}.site-footer a:hover{color:#fff}
.foot-bottom{padding-top:22px;border-top:1px solid #26262B;color:#85837B;font-size:13px}
.wp-block-embed{margin:1.4em 0}.wp-block-embed iframe{max-width:100%}
@media print{.topbar,.site-header,.site-footer,.ad,.pref,aside,.anchor-slot,.progress{display:none}}

@media (max-width:520px){
  .logo .word{font-size:27px}.logo .bars{height:23px}.logo .bars i{width:4px}
  .masthead{padding-top:10px;padding-bottom:8px}
  .hdr-actions .btn.primary{padding:9px 13px;font-size:13px}
  .hdr-actions .btn.primary{font-size:0}.hdr-actions .btn.primary::after{content:"Newsletter";font-size:13px}
  .wrap{padding:0 16px}
  .lead h2{font-size:32px}
  .rail-list a{font-size:18px}
  .strip{gap:22px}
  .band-in{padding-top:34px;padding-bottom:34px}
  .band form .btn{width:100%}
  .site-footer .cols{grid-template-columns:1fr 1fr}
}

/* ======== News-portal layer (white, CNN / Al Jazeera style) ======== */
body{background:#fff}
.hero3{display:grid;grid-template-columns:1fr;gap:30px;padding:22px 0 34px}
@media (min-width:1020px){
  .hero3{grid-template-columns:270px minmax(0,1fr) 300px;gap:0;padding-top:26px}
  .col-l{order:1;padding-right:26px;border-right:1px solid var(--rule)}
  .col-c{order:2;padding:0 28px}
  .col-r{order:3;padding-left:26px;border-left:1px solid var(--rule)}
}
.col-h{margin:0 0 2px;padding-bottom:9px;border-bottom:3px solid var(--ink);font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.col-h+.card.row{border-top:0}
.lead .lead-img{border-radius:var(--r)}
.lead .kicker{margin-top:14px}
.lead h2{font-size:clamp(28px,3vw,40px);line-height:1.07;letter-spacing:-.035em;margin:.15em 0 .3em}
.lead .dek{font-size:17px;color:var(--ink-2);margin:.2em 0 .7em}
.lead h2 a:hover{background:none;text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--accent)}
.card.row{display:grid;grid-template-columns:1fr 112px;gap:14px;padding:15px 0;border-top:1px solid var(--rule);align-items:start}
.card.row .kicker{margin:0}
.card.row h3{font-size:17px;line-height:1.22;letter-spacing:-.02em;margin:3px 0 6px}
.card.row .card-img{border-radius:3px;order:2}
.card.row .card-img img{aspect-ratio:4/3;object-fit:cover}
.card.row .row-text{order:1}
.col-l .card.row{grid-template-columns:1fr 92px}
.rail-list li{grid-template-columns:26px 1fr}
.rail-list .n{font-family:var(--head);font-weight:800;font-size:22px;color:#D9D9D9}
.rail-list a{font-family:var(--head);font-weight:700;font-size:16px;line-height:1.25;letter-spacing:-.02em}
/* sections */
.sec-block{padding:40px 0 4px}
.sec-head{border-bottom:3px solid var(--ink);padding-bottom:10px;margin-bottom:22px}
.sec-head::after{display:none}
.sec-head h2{font-size:22px;text-transform:uppercase;letter-spacing:.02em;display:flex;align-items:center;gap:10px}
.sec-head h2::before{content:"";display:block;width:8px;height:22px;background:var(--accent)}
.sec-head a{font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.sec-head a:hover{color:var(--accent)}
.sec-grid{display:grid;grid-template-columns:1fr;gap:26px}
.sec-grid .card.wide{display:block;grid-column:auto}
.sec-grid .card.wide h3{font-size:26px;line-height:1.1;margin:.2em 0 .35em}
.sec-grid .card.wide .dek{font-size:16px;color:var(--ink-2)}
@media (min-width:900px){
  .sec-grid:not(.single){grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:44px}
  .sec-grid:not(.single) .card.wide h3{font-size:30px}
}
@media (min-width:760px){.sec-grid.single .card.wide{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center}}
.sec-rows .card.row:first-child{border-top:0;padding-top:0}
.sec-rows .card.row{grid-template-columns:1fr 128px}
/* kicker + meta tweaks */
.kicker{font-size:11px;letter-spacing:.12em}
.meta{font-size:12.5px}
/* article, news-portal typography */
.is-article h1,.page-article h1,.archive-head h1{font-size:clamp(30px,4.4vw,46px);line-height:1.08;letter-spacing:-.035em}
.is-article .dek{font-size:clamp(18px,1.9vw,21px);color:var(--ink-2);line-height:1.45}
.body{font-family:var(--serif);font-size:20px;line-height:1.7;color:#1c1c1c}
.body>p:first-of-type::first-letter{font:inherit;float:none;padding:0;color:inherit;line-height:inherit}
.body h2{font-family:var(--head);font-size:25px;letter-spacing:-.03em}
.body h3{font-family:var(--head);font-size:20px}
.body table,.body ul li,.facts,.sources{font-family:var(--sans)}
.body blockquote{font-size:24px}
.related a{font-family:var(--head);font-weight:700;font-size:18px;letter-spacing:-.02em}
.card h3{font-size:20px}
.card.small h3{font-size:18px}
.pref{box-shadow:none;background:var(--soft)}
.facts{box-shadow:none}
aside .box{box-shadow:none}
.card.row .card-img img{aspect-ratio:1/1}
.col-l .card.row{grid-template-columns:1fr 84px}
.sec-rows .card.row{grid-template-columns:1fr 104px}

/* ======== Premium layer: gutters, rhythm, polish for every device ======== */
:root{--gutter:clamp(18px,4.2vw,44px);--max:1280px;--r:10px;--ease:cubic-bezier(.2,.7,.2,1);--shadow-lg:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(0,0,0,.09)}
@media (min-width:1600px){:root{--max:1360px}}
::selection{background:var(--ink);color:#fff}
html{scroll-padding-top:130px}
body{font-kerning:normal;-webkit-tap-highlight-color:transparent;overflow-x:hidden}
/* one consistent side gutter, incl. archive, search, 404, pages and notched phones */
.wrap,.archive-head,.archive-grid,.pagination,.layout{width:100%;max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right))}
.archive-head p.dek,.archive-head .byline{max-width:62ch}
h1,h2,h3{text-wrap:balance}.body p,.dek,.card .dek,.lead .dek{text-wrap:pretty}
/* header */
.site-header{background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px)}
.navrow a{padding:14px 0}
@media (max-width:760px){nav.main .navrow{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);padding-right:36px}}
@media (pointer:coarse){.icon-btn{width:44px;height:44px}.navrow a{padding:16px 0}.btn{min-height:44px}.pagination a,.pagination span{padding:12px 16px}}
/* archive header + cards */
.archive-head{padding-top:clamp(28px,5vw,60px);padding-bottom:clamp(8px,2vw,20px)}
.archive-head h1{font-size:clamp(34px,5.2vw,58px);letter-spacing:-.04em;line-height:1.02;border-bottom:0;padding:0 0 .04em;display:inline;box-shadow:inset 0 -.3em 0 color-mix(in srgb,var(--accent) 24%,transparent)}
.archive-grid{gap:clamp(30px,3.4vw,48px) clamp(22px,2.6vw,36px);padding-top:clamp(20px,3vw,36px);padding-bottom:12px}
.card-img,.lead-img{border-radius:var(--r)}
.card-img img,.lead-img img{aspect-ratio:16/9;object-fit:cover}
.archive-grid .card{display:flex;flex-direction:column}
.archive-grid .card .card-img{margin-bottom:8px}
.archive-grid .card h3{font-size:clamp(19px,1.7vw,23px);line-height:1.18;margin:.2em 0 .4em}
.card .meta{margin-top:auto}
@media (hover:hover){.card .card-img{transition:box-shadow .3s var(--ease),transform .3s var(--ease)}.card:hover .card-img{box-shadow:var(--shadow-lg)}.card h3 a:hover{text-decoration-color:var(--accent);text-decoration-thickness:2px}}
.pagination{margin-top:clamp(28px,4vw,48px);margin-bottom:0}
.pagination a,.pagination span{display:inline-flex;align-items:center;min-height:40px;transition:background .15s,color .15s}
.pagination a:hover{background:var(--ink);color:var(--paper);text-decoration:none}
/* article + pages */
.layout{padding-top:clamp(22px,4vw,44px);padding-bottom:clamp(36px,6vw,72px)}
.body figure,.body .wp-block-image{margin:2em 0}.body figure img{width:100%;height:auto;border-radius:var(--r)}
.body figcaption{font-family:var(--sans);font-size:13px;color:var(--mute);margin-top:10px;line-height:1.45}
.body h2{margin-top:1.8em}
.is-article figure.featured img{border-radius:calc(var(--r) + 2px)}
.body table{border-radius:var(--r)}
.facts,.pref,aside .box,.author-box{border-radius:var(--r)}
/* sections + footer */
.sec-block{padding-top:clamp(36px,5vw,56px)}
.site-footer{margin-top:clamp(48px,8vw,100px)}
.band-in{padding-top:clamp(36px,5vw,60px);padding-bottom:clamp(36px,5vw,60px)}
/* tablet */
@media (min-width:700px) and (max-width:999px){.hero3,.strip{gap:34px}.layout{gap:40px}}
/* phones */
@media (max-width:520px){.archive-head h1{font-size:36px}.archive-grid{gap:34px}.band form .btn{width:100%}.lead h2{font-size:30px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
figure.featured figcaption .credit{display:block;margin-top:2px;opacity:.85}figure.featured figcaption a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.featured picture{display:block}
@media (max-width:640px){.featured.has-mobile img{aspect-ratio:auto;height:auto;object-fit:contain}}
.layout>*,.layout article,figure.featured{min-width:0;max-width:100%}
.featured picture,.featured picture img{display:block;max-width:100%;width:100%}

/* ======== Standards layer: share, contents, consent, dark mode ======== */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 6px;font-family:var(--sans)}
.share-l{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-right:4px}
.chip{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--paper);color:var(--ink);font:600 13px var(--sans);cursor:pointer;line-height:1;transition:background .15s,border-color .15s}
.chip:hover{background:var(--soft);border-color:var(--ink);text-decoration:none}
.chip[hidden]{display:none}
@media (pointer:coarse){.chip{min-height:44px}}
.toc{border:1px solid var(--rule);border-left:4px solid var(--accent);border-radius:var(--r);padding:14px 18px;margin:0 0 28px;background:var(--soft);font-family:var(--sans)}
.toc-h{margin:0 0 8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--mute)}
.toc ol{margin:0;padding-left:20px;font-size:15px;line-height:1.5}.toc li{margin:4px 0}.toc a{color:var(--ink);text-decoration:none}.toc a:hover{text-decoration:underline}
.body h2[id]{scroll-margin-top:130px}
.theme-toggle .i-sun{display:none}html[data-theme=dark] .theme-toggle .i-sun{display:block}html[data-theme=dark] .theme-toggle .i-moon{display:none}
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:300;max-width:620px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:12px;padding:18px 20px;box-shadow:0 10px 40px rgba(0,0,0,.25);font-family:var(--sans)}
.consent[hidden]{display:none}
.consent p{margin:0 0 14px;font-size:14.5px;line-height:1.5}.consent a{text-decoration:underline}
.consent-btns{display:flex;gap:10px;flex-wrap:wrap}.consent-btns .btn{flex:1;min-width:150px}
@media (min-width:700px){.consent{left:24px;right:auto;bottom:24px}}
.foot-bottom{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between}
.foot-legal{display:flex;gap:18px;flex-wrap:wrap}
.foot-legal a,.linklike{display:inline;padding:0;color:#BDBBB4;background:none;border:0;font:inherit;cursor:pointer;text-decoration:none}
.foot-legal a:hover,.linklike:hover{color:#fff;text-decoration:underline}
.ad{display:none}.cw-ads-ok .ad{display:flex}
/* dark theme */
html[data-theme=dark]{color-scheme:dark;--ink:#F1F1F2;--ink-2:#D3D3D6;--paper:#0E0E10;--surface:#17171B;--rule:#2B2B31;--mute:#A4A4AC;--soft:#1B1B20;--link:#8FB0FF;--shadow:0 1px 2px rgba(0,0,0,.4)}
html[data-theme=dark] body{background:var(--paper);color:var(--ink)}
html[data-theme=dark] .topbar{background:var(--paper)}
html[data-theme=dark] .site-header{background:rgba(14,14,16,.88)}
html[data-theme=dark] .body{color:#E4E4E7}
html[data-theme=dark] .rail-list .n{color:#3A3A41}
html[data-theme=dark] .card-img,html[data-theme=dark] .lead-img{background:#000}
html[data-theme=dark] .facts,html[data-theme=dark] .pref,html[data-theme=dark] aside .box,html[data-theme=dark] .author-box{background:var(--surface)}
html[data-theme=dark] .body img,html[data-theme=dark] .featured img{filter:brightness(.92)}
html[data-theme=dark] .band,html[data-theme=dark] .site-footer{background:#050506}
html[data-theme=dark] .consent{box-shadow:0 10px 40px rgba(0,0,0,.6)}
html[data-theme=dark] .chip:hover{background:var(--surface)}
html[data-theme=dark] .navrow a{color:var(--ink-2)}
/* small phones: keep logo, search, theme toggle and newsletter button on one row */
@media (max-width:440px){
  .masthead{gap:8px}
  .logo .word{font-size:24px}.logo .bars{height:20px}.logo{gap:8px}
  .hdr-actions{gap:2px}
  .hdr-actions .icon-btn{width:40px;height:40px}
  .hdr-actions .btn.primary{padding:9px 12px}
  .hdr-actions .btn.primary::after{content:"Hook"}
  .consent{padding:14px 16px}.consent p{font-size:14px;margin-bottom:10px}.consent-btns .btn{min-width:130px;min-height:42px}
}

/* AEO FAQ block */
.faq{margin:2.2rem 0 1rem;padding-top:1rem;border-top:2px solid var(--cw-red,#E4002B)}
.faq h3{font-size:1.08rem;margin:1.2rem 0 .3rem}
.faq p{margin:0 0 .6rem}

/* newsletter form */
.nl-form{display:flex;gap:8px;flex-wrap:wrap}
.nl-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.nl-fine{flex-basis:100%;font-size:12.5px;opacity:.75}.nl-fine a{text-decoration:underline}
.band .nl-form{gap:10px}.nl-note{padding:12px 14px;border-left:4px solid var(--signal);background:var(--soft)}
/* newsletter input design */
.nl-form input[type=email]{flex:1;min-width:0;height:52px;padding:0 22px;border-radius:999px;border:1.5px solid #D4D4D8;background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;font-weight:500;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:border-color .15s,box-shadow .15s}
.nl-form input[type=email]::placeholder{color:#8B8B93;font-weight:400}
.nl-form input[type=email]:focus{outline:0;border-color:var(--signal);box-shadow:0 0 0 4px rgba(228,0,43,.14)}
.nl-form .btn{height:52px;padding:0 26px;font-size:15px}
.band .nl-form input[type=email]{background:#121215;border-color:#3A3A40;color:#fff;box-shadow:none}
.band .nl-form input[type=email]:focus{border-color:#FF6B84;box-shadow:0 0 0 4px rgba(255,107,132,.22)}
.news-letter .nl-form input[type=email]{height:46px;font-size:15px;padding:0 18px}.news-letter .nl-form .btn{height:46px;padding:0 20px}
.body .nl-form{margin:22px 0 4px;max-width:560px}
@media (max-width:520px){.nl-form .btn{width:100%}}
.layout.solo{grid-template-columns:1fr;max-width:820px}

/* ===== YouTube video gallery (inc/videos.php) ===== */
.ytp{position:relative;aspect-ratio:16/9;background:#000;border-radius:var(--r);overflow:hidden}
.ytp-btn{all:unset;cursor:pointer;display:block;width:100%;height:100%;position:relative}
.ytp-btn img{width:100%;height:100%;object-fit:cover;transition:transform .3s,filter .3s}
.ytp-btn:hover img{transform:scale(1.03);filter:brightness(.9)}
.ytp-play{position:absolute;inset:0;display:grid;place-items:center}
.ytp-play svg{filter:drop-shadow(0 4px 14px rgba(0,0,0,.45));transition:transform .2s}
.ytp-btn:hover .ytp-play svg,.ytp-btn:focus-visible .ytp-play svg{transform:scale(1.08)}
.ytp-btn:focus-visible{outline:3px solid var(--link);outline-offset:2px}
.ytp iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--signal);margin-right:8px;vertical-align:middle;box-shadow:0 0 0 4px rgba(228,0,43,.15)}
.ytc{min-width:0}
.ytc-meta h3{font-family:var(--head);font-size:16px;line-height:1.3;margin:10px 0 6px;font-weight:700}
.ytc.big .ytc-meta h3{font-size:clamp(20px,2.2vw,26px)}
.ytc-meta p{margin:0 0 8px;color:var(--ink-2);font-size:15.5px}
.ytc-row{display:flex;gap:14px;align-items:center;color:var(--mute);font-size:13px}
.ytc-share{font-weight:600;color:var(--link)}
.btn.yt-sub{background:var(--signal);border-color:var(--signal);color:#fff;gap:8px}
.yt-strip{margin:34px 0 10px;padding-top:22px;border-top:3px solid var(--ink)}
.yt-strip .sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px}.yt-strip .sec-head a{white-space:nowrap}
.yt-strip .sec-head h2{margin:0;font-size:clamp(20px,2.4vw,26px)}
.yt-strip-in{display:grid;grid-template-columns:1fr;gap:22px}
.yt-side{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}
.yt-cta{grid-column:1/-1;background:var(--soft);border-radius:var(--r);padding:16px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.yt-cta p{margin:0;font-weight:600;font-size:15px}
@media (min-width:900px){.yt-strip-in{grid-template-columns:1.6fr 1fr}.yt-side{grid-template-columns:1fr}}
.yt-page{padding-top:26px;padding-bottom:40px}
.yt-page-h{max-width:760px;margin-bottom:24px}
.yt-page-h .eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--signal)}
.yt-page-h h1{font-size:clamp(32px,4.5vw,50px);margin:.2em 0 .25em}
.yt-page-h p{color:var(--ink-2);font-size:18px;margin:0 0 16px}
.yt-page-btns{display:flex;gap:10px;flex-wrap:wrap}
.yt-gallery{display:grid;gap:30px}
.yt-gallery>.ytc.big{display:grid;gap:18px}
@media (min-width:900px){.yt-gallery>.ytc.big{grid-template-columns:1.5fr 1fr;align-items:center}}
.yt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}
.yt-inpost{margin:0 0 28px;padding:14px;background:var(--soft);border-radius:var(--r)}
.yt-inpost-h{font-family:var(--head);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.yt-inpost-f{margin-top:10px}
.yt-empty{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
html[data-theme="dark"] .yt-cta,html[data-theme="dark"] .yt-inpost{background:#1b1b1b}
.foot-follow{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:10px 0 0;font-size:14px}.foot-follow span{opacity:.7}.foot-follow a{font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* ===== 0.1.2: tables wrap, richer sticky sidebar, contact form ===== */
.body th,.body td{white-space:normal;vertical-align:top}
.body td{min-width:120px}.body td:last-child{min-width:220px}
@media (max-width:640px){.body table{font-size:14px}.body td,.body th{padding:9px 10px}}
.side-stack{display:flex;flex-direction:column;gap:0;height:100%}
.side-sticky{position:sticky;top:24px}
.side-video .ytp{margin:0 -4px}
.side-video-t{margin:10px 0 12px;font-family:var(--head);font-weight:700;font-size:15px;line-height:1.3}
.side-video-b{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.side-video-b .btn{padding:8px 14px;font-size:13px}
.side-more{font-size:13px;font-weight:600;color:var(--link)}
.side-list ol{list-style:none;padding:0;margin:0;counter-reset:s}
.side-list li{counter-increment:s;position:relative;padding:12px 0 12px 34px;border-top:1px solid var(--rule);font-family:var(--head);font-weight:700;font-size:15px;line-height:1.3}
.side-list li:first-child{border-top:0;padding-top:4px}
.side-list li::before{content:counter(s);position:absolute;left:0;top:10px;font-size:20px;font-weight:800;color:var(--accent)}
.side-list li:first-child::before{top:2px}
.side-list .rk{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-weight:700;margin-bottom:3px}
@media (max-width:999px){.side-sticky{position:static}}
.cw-contact{display:grid;gap:14px;margin:1.4em 0;font-family:var(--sans);font-size:15px;max-width:640px}
.cw-contact label{display:grid;gap:6px;font-weight:600}
.cw-contact input[type=text],.cw-contact input[type=email],.cw-contact select,.cw-contact textarea{font:inherit;font-weight:400;padding:11px 12px;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface);color:var(--ink);width:100%}
.cw-contact .row2{display:grid;gap:14px}@media (min-width:640px){.cw-contact .row2{grid-template-columns:1fr 1fr}}
.cw-contact .cw-agree{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14px;color:var(--ink-2)}
.cw-contact .cw-agree input{margin-top:3px}
.cw-contact button{justify-self:start}
.cw-form-note{padding:14px 16px;border-radius:var(--r);margin:1.2em 0;font-family:var(--sans);font-size:15px}.cw-form-note.ok{background:#e8f6ee;color:#0b5c36}.cw-form-note.err{background:#fdecee;color:#9b1027}
html[data-theme=dark] .cw-form-note.ok{background:#0f2a1d;color:#8be0b3}html[data-theme=dark] .cw-form-note.err{background:#2a0f14;color:#ff9fae}
.yt-shorts-h{margin:34px 0 14px;font-size:clamp(20px,2.4vw,26px)}
.yt-shorts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.yt-short{display:block;border-radius:var(--r);overflow:hidden;position:relative;aspect-ratio:9/16;background:#000}
.yt-short img{width:100%;height:100%;object-fit:cover}
.yt-short span{position:absolute;left:0;right:0;bottom:0;padding:24px 10px 10px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff;font-weight:700;font-size:13.5px;line-height:1.25}
