/* tbd.css, copied from design_mockups/src/tbd.css (design fix pass, Oct 26). Mockup-only rules removed: @font-face (fonts.css loads them), .anno, [data-mockup-only], .slot-note, .dnote, .fill-mark. Do not edit here; re-copy with build/theme/tools/copy_css.py. */
/* The Billionaire Daily: design tokens and components. Source of truth for Dev. */
:root{
 --ink-0:#0B0B0A;--ink-1:#131311;--ink-2:#1C1B18;--line:#2C2A26;--line-strong:#77705F;
 --text-1:#F2EEE6;--text-2:#BFB8AA;--text-3:#A0998A;
 --accent:#C9A66B;--accent-hover:#DDBD86;--on-accent:#0B0B0A;--error:#F2836F;
 --paper:#F5F1EA;--paper-2:#EAE4D9;--paper-ink:#16140F;--paper-text-2:#4D473D;--paper-text-3:#6A6356;--accent-on-light:#7A5A22;--paper-line:#8C8576;
 --display:"Archivo","Helvetica Neue",Arial,sans-serif;
 --display-wdth:106%;
 --sans:"Instrument Sans","Helvetica Neue",Arial,system-ui,sans-serif;
 --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:128px;
 --gutter:24px;--side:80px;--max:1280px;--radius:2px;
 --section:128px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--ink-0);color:var(--text-1);font-family:var(--sans);font-size:17px;line-height:28px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.wrap{max-width:calc(var(--max) + 2*var(--side));margin:0 auto;padding:0 var(--side)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* type */
.disp{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:650;font-size:68px;line-height:74px;letter-spacing:-0.018em;color:var(--text-1)}
.h1{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:650;font-size:56px;line-height:62px;letter-spacing:-0.016em;color:var(--text-1)}
.h2{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:600;font-size:40px;line-height:48px;letter-spacing:-0.012em;color:var(--text-1)}
.h3{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:600;font-size:28px;line-height:36px;letter-spacing:-0.008em;color:var(--text-1)}
.h4{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:600;font-size:22px;line-height:29px;letter-spacing:-0.004em;color:var(--text-1)}
.lead{font-size:20px;line-height:32px;color:var(--text-2)}
.body{font-size:17px;line-height:28px;color:var(--text-2)}
.small{font-size:14px;line-height:22px;color:var(--text-3)}
.meta{font-size:13px;line-height:20px;color:var(--text-3);letter-spacing:.02em}
.eyebrow{font-family:var(--sans);font-weight:600;font-size:12px;line-height:16px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2);display:inline-flex;align-items:center;gap:12px}
.eyebrow.rule:before{content:"";width:24px;height:1px;background:var(--accent)}
.it{font-style:italic}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 28px;border-radius:var(--radius);font-family:var(--sans);font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border:1px solid transparent;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.btn-p{background:var(--accent);color:var(--on-accent)}
.btn-p:hover,.btn-p.is-hover{background:var(--accent-hover)}
.btn-s{background:transparent;color:var(--text-1);border-color:var(--line-strong)}
.btn-s:hover,.btn-s.is-hover{border-color:var(--text-1)}
.btn-g{background:rgba(11,11,10,.35);color:var(--text-1);border-color:rgba(242,238,230,.7)}
.btn-sm{height:44px;padding:0 20px}
.btn:focus-visible,.btn.is-focus,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.btn[disabled],.btn.is-disabled{background:var(--ink-2);color:var(--text-3);border-color:var(--line)}
.tlink{color:var(--text-1);font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--accent);padding-bottom:4px;white-space:nowrap}
.tlink:hover{color:var(--accent)}
.alink{color:var(--text-1);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px}
.affwrap{display:inline-flex;flex-direction:column;gap:8px;align-items:flex-start}
.aff{font-size:12px;line-height:16px;color:var(--text-3);letter-spacing:.04em;display:inline-flex;gap:6px;align-items:center}
.aff svg{width:12px;height:12px}
.aff-paid{min-height:48px;padding:0 2px;color:var(--text-2);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}.aff-paid:hover{color:var(--text-1)}.reading-light .aff-paid{color:var(--paper-text-2)}
/* tags */
.tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--text-1);border-radius:var(--radius);white-space:nowrap}
.tag-solid{background:var(--text-1);color:var(--ink-0);border-color:var(--text-1)}
.cat{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}
.tagrow{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
/* header */
.strip{background:var(--ink-1);border-bottom:1px solid var(--line);font-size:13px;line-height:20px;color:var(--text-3);text-align:center;padding:8px var(--side)}
.strip a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
.hdr{border-bottom:1px solid var(--line);background:var(--ink-0)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:92px;gap:24px}
/* masthead: Logo F as outlined SVG. Archivo Expanded is never loaded as a webfont */
.wm{display:inline-flex;align-items:center;line-height:0;flex:0 0 auto}
.wm img{display:block;height:52px;width:auto}
.wm-ftr img{height:76px}
.pop .pop-mark{display:block;align-self:flex-start;height:18px;width:auto;margin-bottom:8px}
.nav{display:flex;gap:30px}
.nav a{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);padding:8px 0;border-bottom:1px solid transparent;white-space:nowrap}
.nav a.on{color:var(--text-1);border-bottom-color:var(--accent)}
.hdr-r{display:flex;align-items:center;gap:20px}
.icon-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-1);border:1px solid transparent;background:none}
.icon-btn svg{width:20px;height:20px}
.menu-btn{display:none}
/* sections */
.sec{padding:var(--section) 0}
.sec-1{background:var(--ink-1)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;border-top:1px solid var(--line);padding-top:24px}
.sec-head .h2{max-width:760px}
/* hero */
.hero{position:relative;min-height:820px;display:flex;align-items:flex-end;overflow:hidden;background:#000}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 79%}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,10,.72) 0%,rgba(11,11,10,.5) 45%,rgba(11,11,10,0) 80%),linear-gradient(180deg,rgba(11,11,10,.1) 0%,rgba(11,11,10,.3) 35%,rgba(11,11,10,.82) 62%,rgba(11,11,10,.95) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-bottom:72px}
.hero .disp{max-width:880px;margin:20px 0 24px}
.hero .lead{max-width:600px;color:var(--text-1);opacity:.86}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.cover-cap{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:64px;padding-top:20px;border-top:1px solid rgba(242,238,230,.25);font-size:14px;color:var(--text-2)}
.cover-cap b{color:var(--text-1);font-weight:600}
/* cards */
.card{display:flex;flex-direction:column;gap:16px}
.card .ph{position:relative;overflow:hidden;background:var(--ink-2)}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.card:hover .ph img{transform:scale(1.03)}
.card .ph .tag{position:absolute;left:16px;top:16px;background:rgba(11,11,10,.72);backdrop-filter:blur(4px)}
.r45{aspect-ratio:4/5}.r32{aspect-ratio:3/2}.r11{aspect-ratio:1/1}.r169{aspect-ratio:16/9}.r34{aspect-ratio:3/4}
.card .t{color:var(--text-1)}
.card .d{font-size:16px;line-height:26px;color:var(--text-2)}
.grid{display:grid;gap:48px var(--gutter)}
.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.lead-grid{display:grid;grid-template-columns:1.62fr 1fr;gap:var(--s7)}
.list-item{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}
.list-item:first-child{border-top:0;padding-top:0}
.list-item .ph{aspect-ratio:1/1}
/* partner */
.partner{display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter)}
.pcard{position:relative;min-height:560px;display:flex;align-items:flex-end;overflow:hidden;background:#000}
.pcard>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pcard:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,10,0) 20%,rgba(11,11,10,.55) 50%,rgba(11,11,10,.95) 100%)}
.pcard .in{position:relative;z-index:2;padding:40px;display:flex;flex-direction:column;gap:16px;max-width:520px}
.gate{font-size:12px;line-height:18px;color:var(--text-3);border:1px dashed var(--line-strong);padding:8px 12px;display:inline-block}
/* newsletter */
.nl{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);align-items:center}
.nl-form{display:flex;flex-direction:column;gap:12px}
.nl-row{display:flex;gap:12px}
.nl-row .field{flex:1}
.nl-states{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gutter);margin-top:56px}
.state-lbl{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-bottom:12px}
/* forms */
.field{display:flex;flex-direction:column;gap:8px}
.field label,.lbl{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--text-1)}
.field .opt{color:var(--text-3);font-weight:400}
.input,.select,.textarea{width:100%;height:52px;background:var(--ink-0);border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--text-1);font-family:var(--sans);font-size:16px;padding:0 16px}
.sec-1 .input,.sec-1 .select,.sec-1 .textarea{background:var(--ink-0)}
.textarea{height:148px;padding:14px 16px;resize:vertical;line-height:24px}
.input::placeholder,.textarea::placeholder{color:var(--text-3)}
.input.is-focus{border-color:var(--text-1);outline:3px solid var(--accent);outline-offset:2px}
.input.is-error,.select.is-error{border-color:var(--error)}
.err{font-size:13px;line-height:20px;color:var(--error);display:flex;gap:6px;align-items:center}
.help{font-size:13px;line-height:20px;color:var(--text-3)}
.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23F2EEE6' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:22px;color:var(--text-2)}
.box{flex:0 0 20px;width:20px;height:20px;border:1px solid var(--line-strong);border-radius:2px;margin-top:1px;display:flex;align-items:center;justify-content:center}
.box.on{background:var(--accent);border-color:var(--accent)}
.radio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ropt{display:flex;gap:12px;align-items:center;min-height:56px;padding:12px 16px;border:1px solid var(--line-strong);border-radius:var(--radius);font-size:15px;color:var(--text-1)}
.ropt .dot{width:18px;height:18px;border-radius:50%;border:1px solid var(--line-strong);flex:0 0 18px}
.ropt.on{border-color:var(--accent)}
.ropt.on .dot{border:5px solid var(--accent)}
.success{border:1px solid var(--line);background:var(--ink-1);padding:24px;display:flex;gap:16px;align-items:flex-start}
.success .ck{flex:0 0 32px;width:32px;height:32px;border:1px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent)}
.alert{border:1px solid var(--error);padding:14px 16px;font-size:14px;line-height:22px;color:var(--text-1);display:flex;gap:10px}
/* instagram */
.ig{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.ig a{position:relative;aspect-ratio:1/1;overflow:hidden;display:block;background:var(--ink-2)}
.ig img{width:100%;height:100%;object-fit:cover}
/* work band */
.band{position:relative;overflow:hidden;background:#000}
.band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6}
.band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,10,.92) 0%,rgba(11,11,10,.6) 50%,rgba(11,11,10,.1) 100%)}
.band .wrap{z-index:2}
.band .wrap{position:relative;padding-top:120px;padding-bottom:120px}
/* footer */
.ftr{background:var(--ink-0);border-top:1px solid var(--line);padding:96px 0 40px}
.ftr-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:var(--s7)}
.ftr h4,.ftr .flabel{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-bottom:20px}
.ftr ul{list-style:none;display:flex;flex-direction:column;gap:12px;font-size:15px;color:var(--text-2)}
.ftr .disc{margin-top:64px;padding-top:24px;border-top:1px solid var(--line);font-size:13px;line-height:21px;color:var(--text-3);display:flex;justify-content:space-between;gap:24px}
.soc{display:flex;gap:8px;margin-top:24px}
.soc a{width:44px;height:44px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--text-1)}
.soc svg{width:18px;height:18px}
/* article */
.art-head{padding:72px 0 48px;text-align:center}
.art-head .h1{max-width:960px;margin:24px auto 24px}
.art-head .lead{max-width:720px;margin:0 auto}
.byline{display:flex;gap:16px;justify-content:center;align-items:center;margin-top:32px;font-size:14px;color:var(--text-3)}
.byline b{color:var(--text-1);font-weight:600}
.crumbs{font-size:13px;color:var(--text-3);letter-spacing:.04em}
.crumbs a{color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:48px;vertical-align:middle}
.crumbs a:first-child{margin-left:-5px}
.crumbs{margin-top:-14px;margin-bottom:-14px;line-height:48px} /* QA fix 5: crumb links get a 48px tap height; negative margins keep the visual spacing */
.art-hero{max-width:1280px;margin:0 auto}
.art-hero img{width:100%;aspect-ratio:16/9;object-fit:cover}
.cap{font-size:13px;line-height:20px;color:var(--text-3);margin-top:12px}
.prose{max-width:680px;margin:0 auto;font-size:19px;line-height:32px;color:var(--text-1)}
.prose p{margin:0 0 28px;color:#E4DFD5}
.prose h2{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:600;font-size:30px;line-height:38px;margin:56px 0 20px;letter-spacing:-0.01em;color:var(--text-1)}
.prose .first:first-letter{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:650;float:left;font-size:76px;line-height:68px;padding:6px 12px 0 0;color:var(--text-1)}
.prose blockquote{border-left:1px solid var(--accent);padding:4px 0 4px 28px;margin:48px 0;font-family:var(--display);font-stretch:var(--display-wdth);font-style:normal;font-weight:500;font-size:26px;line-height:36px;letter-spacing:-0.008em;color:var(--text-1)}
.prose figure{margin:48px 0}
.disc-box{border:1px solid var(--line);background:var(--ink-1);padding:16px 20px;font-size:14px;line-height:22px;color:var(--text-2);margin:0 auto 48px;max-width:680px;display:flex;gap:12px}
.pick{display:grid;grid-template-columns:200px 1fr;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:48px 0}
.pick .ph{aspect-ratio:1/1;overflow:hidden}.pick .ph img{width:100%;height:100%;object-fit:cover}
.reading-light{background:var(--paper);color:var(--paper-ink)}
.reading-light .prose,.reading-light .prose p,.reading-light .prose h2,.reading-light .prose blockquote,.reading-light .prose .first:first-letter{color:var(--paper-ink)}
.reading-light .prose p{color:#2A2620}
.reading-light .prose blockquote{border-left-color:var(--accent-on-light)}
.reading-light .alink{color:var(--paper-ink);text-decoration-color:var(--accent-on-light)}
.reading-light .cap,.reading-light .meta,.reading-light .aff{color:var(--paper-text-3)}
.reading-light .pick{border-color:#CFC7B8}
.reading-light .btn-s{color:var(--paper-ink);border-color:var(--paper-line)}
.reading-light .cat{color:var(--paper-text-2)}
.reading-light .disp,.reading-light .h1,.reading-light .h2,.reading-light .h3,.reading-light .h4{color:var(--paper-ink)}
.reading-light .toggle{border-color:var(--paper-line)}.reading-light .toggle span{color:var(--paper-text-2)}.reading-light .toggle span.on{background:var(--paper-ink);color:var(--paper)}
.reading-light .disc-box{background:var(--paper-2);border-color:#D6CEBF;color:var(--paper-text-2)}
.toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--radius)}
.toggle span{height:36px;padding:0 14px;display:inline-flex;align-items:center;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2)}
.toggle span.on{background:var(--text-1);color:var(--ink-0)}
/* category */
.cat-head{padding:80px 0 48px;border-bottom:1px solid var(--line)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:32px}
.chip{height:40px;padding:0 18px;display:inline-flex;align-items:center;border:1px solid var(--line);font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--text-2);border-radius:var(--radius);white-space:nowrap}
.chip.on{border-color:var(--text-1);color:var(--text-1)}
.feat{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s7);align-items:center}
/* work with us */
.tiers{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gutter);max-width:960px}
.tier{border:1px solid var(--line);background:var(--ink-1);padding:40px 32px;display:flex;flex-direction:column;gap:20px}
.tier.feat-t{border-color:var(--accent)}
.price{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:650;letter-spacing:-0.015em;font-size:40px;line-height:44px}
.price small{font-family:var(--sans);font-size:13px;color:var(--text-3);letter-spacing:.04em;display:block;margin-top:8px;line-height:18px}
.ticks{list-style:none;display:flex;flex-direction:column;gap:12px;font-size:15px;line-height:24px;color:var(--text-2)}
.ticks li{display:flex;gap:12px}
.ticks li:before{content:"";flex:0 0 14px;height:8px;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(-45deg);margin-top:6px}
.tier .btn{margin-top:auto;width:100%}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
.step{border-top:1px solid var(--line-strong);padding-top:24px}
.step .n{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:650;font-size:40px;line-height:44px;color:var(--text-1)}
.form-wrap{display:grid;grid-template-columns:5fr 7fr;gap:var(--s8)}
.form{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.form .full{grid-column:1/-1}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:24px 0}
.faq summary{list-style:none;display:flex;justify-content:space-between;font-size:18px;font-weight:600;cursor:pointer;gap:16px}
.faq summary:after{content:"+";font-weight:400;color:var(--text-2)}
.faq details[open] summary:after{content:"\2212"}
.faq p{margin-top:12px;color:var(--text-2);max-width:760px}
/* about */
.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);align-items:center}
.portrait{position:relative}
.portrait img{width:100%;aspect-ratio:4/5;object-fit:cover}
.flag{position:absolute;left:16px;bottom:16px;right:16px;background:rgba(11,11,10,.82);border:1px dashed var(--line-strong);font-size:12px;line-height:18px;color:var(--text-1);padding:10px 12px}
.facts{list-style:none;border-top:1px solid var(--line)}
.facts li{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line);font-size:16px;color:var(--text-2)}
.facts li b{color:var(--text-1);font-weight:600}

/* mobile menu */
.mmenu{display:none}
/* 404 */
.nf{padding:120px 0;text-align:center}
.nf .big{font-family:var(--display);font-stretch:125%;font-style:normal;font-size:200px;line-height:180px;color:var(--text-1);font-weight:800;letter-spacing:-0.03em}
/* responsive */
@media (max-width:1199px){
 :root{--side:40px;--section:96px}
 .nav{display:none}.menu-btn{display:inline-flex}
 .disp{font-size:52px;line-height:58px}.h1{font-size:44px;line-height:50px}.h2{font-size:32px;line-height:40px}.h3{font-size:24px;line-height:32px}
 .g4{grid-template-columns:repeat(2,1fr)}
 .ftr-top{grid-template-columns:1fr 1fr}
 .steps{grid-template-columns:repeat(2,1fr)}
 .form-wrap{grid-template-columns:minmax(0,1fr)}
 .hero{min-height:720px}
}
@media (max-width:900px){
 .lead-grid,.feat,.nl,.about-hero{grid-template-columns:1fr}
 .g3{grid-template-columns:repeat(2,1fr)}
 .tiers{grid-template-columns:1fr}
 .partner{grid-template-columns:1fr}
 .ig{grid-template-columns:repeat(3,1fr)}
 .nl-states{grid-template-columns:1fr}
 .hero{min-height:680px}
 .pcard{min-height:480px}
}
@media (max-width:767px){
 :root{--side:24px;--section:72px;--gutter:16px}
 body{font-size:16px;line-height:26px}
 .disp{font-size:36px;line-height:42px;letter-spacing:-0.014em}.h1{font-size:32px;line-height:38px;letter-spacing:-0.012em}.h2{font-size:26px;line-height:32px}.h3{font-size:22px;line-height:29px}.h4{font-size:20px;line-height:27px}
 .lead{font-size:17px;line-height:28px}
 .strip{padding:8px 24px;font-size:12px;line-height:18px;text-align:left}
 .hdr .wrap{height:72px}
 .wm img{height:40px}.wm-ftr img{height:60px}
 .hdr-r{gap:4px}
 .hero{min-height:0;display:block;background:var(--ink-0)}.hero>img{height:440px;bottom:auto;object-position:center 64%}.hero:after{bottom:auto;height:441px;background:linear-gradient(180deg,rgba(11,11,10,.1) 0%,rgba(11,11,10,.2) 55%,rgba(11,11,10,1) 100%)}.hero .wrap{padding-top:340px;padding-bottom:40px}
 .cover-cap{flex-direction:column;align-items:flex-start;gap:8px;margin-top:40px}
 .btns{flex-direction:column;align-items:stretch}.btns .btn{width:100%}
 .btn{padding:0 16px}
 .g3,.g2,.g4{grid-template-columns:1fr}
 .grid{gap:40px}
 .list-item{grid-template-columns:96px 1fr;gap:16px}
 .sec-head{flex-direction:column;align-items:flex-start;margin-bottom:32px}
 .pcard{min-height:520px}.pcard .in{padding:24px}
 .nl-row{flex-direction:column}.nl-row .btn{width:100%}
 .ig{gap:4px}
 .ftr{padding:72px 0 32px}.ftr-top{grid-template-columns:1fr 1fr;gap:40px 24px}.ftr-top>div:first-child{grid-column:1/-1}
 .ftr .disc{flex-direction:column}
 .art-head{padding:40px 0 32px;text-align:left}.byline{justify-content:flex-start;flex-wrap:wrap;gap:8px 16px}
 .art-head .lead,.art-head .h1{margin-left:0}
 .prose{font-size:18px;line-height:30px}.prose h2{font-size:26px;line-height:32px}.prose blockquote{font-size:22px;line-height:30px;padding-left:20px}
 .pick{grid-template-columns:96px 1fr;gap:16px}
 .cat-head{padding:48px 0 32px}
 .chips{gap:8px}
 .tier{padding:32px 24px}
 .steps{grid-template-columns:1fr}
 .form{grid-template-columns:1fr}
 .radio-grid{grid-template-columns:1fr}
 .facts li{grid-template-columns:1fr;gap:4px}
 .nf .big{font-size:120px;line-height:120px}

}
@media (max-width:374px){:root{--side:20px}.btn{font-size:12px;letter-spacing:.1em}}
@media (min-width:768px) and (max-width:1199px){.hero:after{background:linear-gradient(90deg,rgba(11,11,10,.8) 0%,rgba(11,11,10,.6) 55%,rgba(11,11,10,.15) 90%),linear-gradient(180deg,rgba(11,11,10,.15) 0%,rgba(11,11,10,.45) 35%,rgba(11,11,10,.88) 60%,rgba(11,11,10,.96) 100%)}}
/* ===== newsletter component (one component, variants: bar, section, footer, inline, end, landing, popup) ===== */
.nlc{color:var(--text-1)}
.nlc .nlc-f{display:flex;flex-direction:column;gap:12px}
.nlc .nlc-row{display:flex;gap:12px;align-items:flex-start}
.nlc .nlc-row .field{flex:1;min-width:0}
.nlc .nlc-row .field.fn{flex:0 0 34%}
.nlc .field label{font-size:13px}
@media (min-width:768px){.nlc .nlc-row{display:grid;grid-auto-flow:column;grid-template-rows:auto auto auto;grid-template-columns:34% minmax(0,1fr);column-gap:12px;row-gap:8px;align-items:start}.nlc .nlc-row:has(.row-btn){grid-template-columns:34% minmax(0,1fr) auto}.nlc .nlc-row:not(:has(.fn)){grid-template-columns:minmax(0,1fr) auto}.nlc .nlc-row .field{grid-row:1 / span 3;display:grid;grid-template-rows:subgrid}.nlc .nlc-row .row-btn{grid-row:2;margin-top:0}}
.nlc .consent{font-size:13px;line-height:20px;color:var(--text-3)}
.nlc .consent a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
.nlc .row-btn{margin-top:28px}
.spin{width:14px;height:14px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block}
.btn.is-busy{background:var(--ink-2);color:var(--text-2);border-color:var(--line-strong)}
.nlc .success{background:transparent}
/* bar under hero */
.nl-bar{background:var(--ink-1);border-bottom:1px solid var(--line)}
.nl-bar .wrap{display:grid;grid-template-columns:4fr 8fr;gap:var(--s7);align-items:center;padding-top:32px;padding-bottom:32px}
.nl-bar .nlc-copy p{margin-top:8px}
/* footer */
.ftr-nl{display:grid;grid-template-columns:5fr 7fr;gap:var(--s7);align-items:start;padding-bottom:64px;margin-bottom:64px;border-bottom:1px solid var(--line)}
/* inline, in article */
.nl-inline{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:32px 0;margin:48px 0;font-size:16px;line-height:26px}
.nl-inline .h4{margin:12px 0 6px}
.nl-inline .nlc-f{margin-top:20px}
.reading-light .nl-inline{background:var(--ink-0);padding:32px;border:0}
/* end of article */
.nl-end{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:center;border:1px solid var(--line);background:var(--ink-1);padding:40px;max-width:880px;margin:0 auto}
.nl-end .cover-sm{box-shadow:0 18px 40px rgba(0,0,0,.5)}
.cover-sm{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--ink-2)}
/* landing */
.ig-hero{padding:72px 0 96px}
.ig-hero .grid2{display:grid;grid-template-columns:7fr 5fr;gap:var(--s8);align-items:center}
.cover-lg{position:relative;max-width:420px;margin-left:auto}
.cover-lg img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px var(--line)}
.cover-lg .flag{position:static;display:inline-block;margin-top:12px}
.flag{font-size:12px;line-height:16px;background:rgba(11,11,10,.85);color:var(--text-2);border:1px dashed var(--line-strong);padding:6px 10px}
.inside{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
.inside .ph{aspect-ratio:4/5;overflow:hidden;background:var(--ink-2)}
.inside .ph img{width:100%;height:100%;object-fit:cover}
.inside h3{margin:16px 0 8px}
.tbd{display:inline-flex;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);border:1px dashed var(--line-strong);padding:3px 8px;margin-top:12px}
.slot{border:1px dashed var(--line-strong);padding:20px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
/* popup */
.pop-backdrop{position:fixed;inset:0;background:rgba(11,11,10,.78);z-index:50}
.pop{position:fixed;z-index:51;left:50%;top:50%;transform:translate(-50%,-50%);width:880px;max-width:calc(100vw - 48px);display:grid;grid-template-columns:320px 1fr;background:var(--ink-1);border:1px solid var(--line);box-shadow:0 40px 100px rgba(0,0,0,.6)}
.pop .pop-img{background:var(--ink-2);position:relative}
.pop .pop-img img{width:100%;height:100%;object-fit:cover;display:block}
.pop .pop-in{padding:48px 48px 40px;display:flex;flex-direction:column;gap:12px}
.pop .x{position:absolute;top:8px;right:8px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:0;color:var(--text-1);cursor:pointer}
.pop .x svg{width:20px;height:20px}
.pop .nothanks{align-self:flex-start;background:none;border:0;color:var(--text-2);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:0;cursor:pointer}
.states-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--gutter)}
.state-card{border:1px solid var(--line);padding:20px;background:var(--ink-0)}
.state-card .state-lbl{display:block}
@media (max-width:1199px){.nl-bar .wrap,.ftr-nl{grid-template-columns:1fr;gap:20px}.states-grid{grid-template-columns:repeat(2,1fr)}.inside{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.ig-hero .grid2{grid-template-columns:1fr}.cover-lg{margin:0 auto;max-width:360px}}
@media (max-width:767px){
 .nlc .nlc-row{flex-direction:column;align-items:stretch}.nlc .nlc-row .field.fn{flex:1 1 auto}.nlc .nlc-row .btn{width:100%}.nlc .row-btn{margin-top:0}
 .nl-bar .wrap{padding-top:28px;padding-bottom:28px}
 .nl-end{grid-template-columns:1fr;padding:24px;gap:24px}.nl-end .cover-sm{max-width:160px}
 .reading-light .nl-inline{padding:24px}
 .ig-hero{padding:40px 0 64px}
 .inside{grid-template-columns:1fr 1fr;gap:24px 16px}
 .states-grid{grid-template-columns:1fr}
 .pop-backdrop{display:none}
 .pop{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;max-width:100%;grid-template-columns:1fr;border-left:0;border-right:0;border-bottom:0;max-height:60vh;overflow:auto}
 .pop .pop-img{display:none}
 .pop .pop-in{padding:24px 24px 20px;gap:10px}
 .pop .pop-in .lead{display:none}
}
.guide-sec{display:grid;grid-template-columns:280px 1fr;gap:64px;align-items:center}
.guide-sec .cover-sm{box-shadow:0 24px 60px rgba(0,0,0,.55)}
@media (max-width:900px){.guide-sec{grid-template-columns:200px 1fr;gap:40px}}
@media (max-width:767px){.guide-sec{grid-template-columns:1fr;gap:28px}.guide-sec .cover-sm{max-width:200px}}
.state-list{display:flex;flex-direction:column;gap:20px}
.state-row{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start;border:1px solid var(--line);padding:24px;background:var(--ink-0)}
.state-row .ftr-nl{border:0;margin:0;padding:0}
.state-row .nl-inline{margin:0}
.state-row .nl-end{max-width:none}
@media (max-width:767px){.state-row{grid-template-columns:1fr;gap:12px;padding:16px}}
.steps.steps3{grid-template-columns:repeat(3,1fr)}
.pop .pop-lead{font-size:17px;line-height:27px}
@media (max-width:767px){.steps.steps3{grid-template-columns:1fr}}
/* inline signup keeps dark card styling inside light reading mode */
.reading-light .prose .nl-inline,.reading-light .prose .nl-inline .h4,.reading-light .prose .nl-inline p{color:var(--text-1)}
.reading-light .prose .nl-inline p.small{color:var(--text-2)}
.reading-light .prose .nl-inline p.consent{color:var(--text-3)}
.reading-light .prose .nl-inline .alink{color:var(--text-1);text-decoration-color:var(--accent)}
.reading-light .prose .nl-inline .err{color:var(--error)}
@media (max-width:767px){
 .pop{max-height:55vh;box-shadow:0 -20px 50px rgba(0,0,0,.55)}
 .pop .field.fn{display:none}
 .pop .pop-in .h3{font-size:24px;line-height:32px;padding-right:40px}
 .pop .nothanks{min-height:44px}
}
.pop .pop-img{padding:24px;display:flex;align-items:center;background:var(--ink-0)}
.pop .pop-img img{height:auto;aspect-ratio:3/4;box-shadow:0 18px 40px rgba(0,0,0,.5)}
@media (max-width:767px){.pop .pop-img{display:none}}
@media (min-width:768px){.pop.pop-solo{grid-template-columns:1fr;width:600px}}
.nfa{margin:0 0 40px;max-width:720px}
.nfa b{color:var(--text-1);font-weight:600}
/* Header, 8 links (News first). Full nav from 1360 up; 1360 to 1439 tightened; below 1360 compact menu button. */
@media (min-width:1360px) and (max-width:1439px){.nav{gap:24px}.nav a{font-size:12px;letter-spacing:.08em}.hdr .wrap{gap:24px}.hdr-r{gap:16px}}
@media (max-width:1359px){.nav{display:none}.menu-btn{display:inline-flex}}
/* Editorial homepage rows (Oct 25 restraint pass) */
.sec.row{padding:72px 0}
.row-head{margin-bottom:32px;align-items:baseline}
.row-head .h3{margin:0}
.row-note{font-size:13px;line-height:20px;color:var(--text-3);margin:-16px 0 28px}
.hero-by{font-size:14px;line-height:22px;color:var(--text-2);margin-top:20px}
.card .gate{margin-top:4px;align-self:flex-start}
@media (max-width:767px){
 .sec.row{padding:48px 0}
 .row .grid{gap:24px}
 .row .grid>.card:not(:first-child){display:grid;grid-template-columns:112px 1fr;column-gap:16px;row-gap:6px;align-content:start}
 .row .grid>.card:not(:first-child)>.ph{grid-row:1/span 4;aspect-ratio:1/1;height:auto}
 .row .grid>.card:not(:first-child)>.ph .tag{display:none}
 .row .grid>.card:not(:first-child) .d{display:none}
 .row .grid>.card:not(:first-child) .h4{font-size:18px;line-height:25px}
 .row .grid>.card:not(:first-child)>*:not(.ph){grid-column:2}
}
/* ---------- Tap targets (launch pass 2026-10-26): every touch target is at least 48x48 below 1024px */
.icon-btn{width:48px;height:48px}
.soc a{width:48px;height:48px}
.btn-sm{height:48px}
.pop .x{width:48px;height:48px}
.pop .nothanks,.nothanks{min-height:48px}
@media (max-width:1023px){
 .wm{min-height:48px}
 .chip{height:48px}
 .toggle span{height:48px}
 .btn-sm{height:48px}
 .tlink{display:inline-block;padding-top:17px;margin-top:-17px}
 main h2 a,main h3 a,main h4 a,.card .t a{display:block;padding:13px 0;margin:-13px 0}
 .faq summary{padding:11px 0}
 .ftr ul{gap:0}
 .ftr ul a{display:inline-flex;align-items:center;min-height:48px;min-width:48px}
}
/* ---------- Launch pass components (2026-10-26) */
.chip:hover,.chip.is-hover{border-color:var(--line-strong);color:var(--text-1)}
.chip:focus-visible,.chip.is-focus,.pg a.is-focus,.sw.is-focus .sw-t,.sbox.is-focus{outline:3px solid var(--accent);outline-offset:3px}
.btn-g:hover,.btn-g.is-hover{border-color:var(--text-1);background:rgba(11,11,10,.6)}
.chip .n{color:var(--text-3);margin-left:8px;font-weight:500}
/* search box */
.sform{display:flex;gap:12px;margin-top:28px;max-width:760px}
.sbox{flex:1;display:flex;align-items:center;gap:12px;height:56px;padding:0 16px;border:1px solid var(--line-strong);background:var(--ink-1);border-radius:var(--radius)}
.sbox svg{width:20px;height:20px;flex:0 0 20px;color:var(--text-3)}
.sbox input{flex:1;min-width:0;height:100%;background:none;border:0;color:var(--text-1);font:inherit;font-size:17px}
.sbox input:focus-visible{outline:none}
.sbox:focus-within{outline:3px solid var(--accent);outline-offset:3px}
.sbox.is-error{border-color:var(--error)}
.sform .btn{height:56px}
.sclear{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-2);background:none;border:0;margin-right:-12px}
.sclear svg{width:16px;height:16px}
.rcount{margin-top:20px}
mark{background:none;color:var(--text-1);box-shadow:inset 0 -2px 0 var(--accent)}
.results{margin-top:8px}
.results .list-item .d{font-size:15px;line-height:24px;color:var(--text-2)}
.empty{border:1px solid var(--line);padding:40px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;max-width:760px}
.empty ul{padding-left:20px;color:var(--text-2);font-size:16px;line-height:28px}
/* skeleton (loading) */
.skel{background:var(--ink-2);display:block}
.skel-row{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}
.skel-row .ph{aspect-ratio:4/3}
.skel-row .l{height:14px;margin-bottom:12px}
/* pagination */
.pg{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:64px;flex-wrap:wrap}
.pg a,.pg span{min-width:48px;height:48px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--text-2);font-size:14px;font-weight:600;letter-spacing:.06em;border-radius:var(--radius)}
.pg a:hover,.pg a.is-hover{border-color:var(--line-strong);color:var(--text-1)}
.pg [aria-current]{border-color:var(--text-1);color:var(--text-1)}
.pg .gap{border:0;min-width:24px;padding:0}
.pg .dis{color:var(--text-3);border-color:var(--line);opacity:1}
.pg-note{text-align:center;margin-top:16px}
/* author */
.author-hero{display:flex;gap:32px;align-items:center;margin-top:24px}
.author-mark{width:120px;height:120px;flex:0 0 120px;background:var(--ink-1);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}
.author-mark img{width:72px;height:auto}
/* legal */
.legal{display:grid;grid-template-columns:260px 1fr;gap:64px;padding:56px 0 96px}
.toc{position:sticky;top:24px;align-self:start;border-top:1px solid var(--line);padding-top:20px}
.toc ol{list-style:none;display:flex;flex-direction:column}
.toc a{display:flex;align-items:center;min-height:40px;font-size:14px;color:var(--text-2)}
.toc a:hover{color:var(--text-1)}
.legal-sec{border-top:1px solid var(--line);padding:32px 0;max-width:720px}
.legal-sec p,.legal-sec li{font-size:17px;line-height:28px;color:var(--text-2)}
.legal-sec ul{padding-left:20px;margin-top:12px}
.lawyer{border:1px dashed var(--accent);padding:16px 20px;font-size:14px;line-height:22px;color:var(--text-1);display:flex;gap:12px;max-width:720px;margin-top:28px}
.lawyer b{letter-spacing:.12em;font-size:12px;white-space:nowrap}
.ph-note{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--text-3);margin-bottom:8px;display:block}
/* switch */
.sw{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;border-top:1px solid var(--line);cursor:pointer}
.sw-txt b{display:block;color:var(--text-1);font-size:17px;font-weight:600;margin-bottom:4px}
.sw-txt span{font-size:15px;line-height:24px;color:var(--text-2)}
.sw-t{position:relative;width:56px;height:32px;flex:0 0 56px;border:1px solid var(--line-strong);border-radius:16px;background:var(--ink-1)}
.sw-t:after{content:"";position:absolute;left:4px;top:3px;width:24px;height:24px;border-radius:50%;background:var(--text-3)}
.sw.on .sw-t{background:var(--accent);border-color:var(--accent)}
.sw.on .sw-t:after{left:26px;background:var(--ink-0)}
.sw.lock .sw-t{background:var(--ink-2);border-color:var(--line)}
.sw.lock .sw-t:after{left:26px;background:var(--text-3)}
.sw .st{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin-right:12px;white-space:nowrap}
.sw-r{display:flex;align-items:center;min-height:48px}
.cset{border:1px solid var(--line);padding:32px;max-width:760px;margin-top:8px;background:var(--ink-0)}
/* cookie banner */
.cookie{position:fixed;left:24px;right:24px;bottom:24px;z-index:60;background:var(--ink-1);border:1px solid var(--line-strong);padding:24px 28px;display:flex;gap:32px;align-items:center;max-width:1180px;margin:0 auto;box-shadow:0 12px 40px rgba(0,0,0,.5)}
.cookie.static{position:relative;left:auto;right:auto;bottom:auto;box-shadow:none}
.cookie p{font-size:15px;line-height:24px;color:var(--text-2);flex:1}
.cookie p b{color:var(--text-1)}
.cookie .btns{margin:0;flex-wrap:nowrap;gap:12px}
/* contact */
.routes{display:flex;flex-direction:column}
.route{border-top:1px solid var(--line);padding:20px 0}
.route h3{margin-bottom:6px}
/* confirm pages */
.conf{padding:96px 0 120px}
.conf .ck-big{width:64px;height:64px;border:1px solid var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:28px}
.conf .ck-big svg{width:28px;height:28px}
.load-end{text-align:center;margin-top:48px}
@media (max-width:1023px){
 .legal{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:32px}
 .toc{position:static}
 .toc a{min-height:48px}
 .cookie{flex-direction:column;align-items:stretch;gap:20px}
 .cookie .btns{flex-wrap:wrap}
}
@media (max-width:767px){
 .sform{flex-direction:column}
 .sform .btn{width:100%}
 .skel-row{grid-template-columns:96px 1fr;gap:16px}
 .author-hero{flex-direction:column;align-items:flex-start;gap:20px}
 .author-mark{width:88px;height:88px;flex-basis:88px}
 .author-mark img{width:52px}
 .empty{padding:24px}
 .cset{padding:20px}
 .cookie{left:12px;right:12px;bottom:12px;padding:20px}
 .cookie .btns{flex-direction:column}
 .cookie .btns .btn{width:100%}
 .conf{padding:56px 0 72px}
 .pg a.hide-m,.pg span.hide-m{display:none}
}
.sbox input{height:54px}
.state-row>div{min-width:0}
@media (max-width:1023px){.chk{min-height:48px}}
@media (max-width:767px){.sform .sbox{flex:0 0 auto;width:100%}}
/* ---------- NEWS (breaking news scope) */
.nlabel{display:inline-flex;align-items:center;height:26px;padding:0 10px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--radius);white-space:nowrap;line-height:1}
.nlabel.sm{height:22px;padding:0 8px;font-size:10px}
.nl-breaking{background:var(--accent);color:var(--ink-0)}
.nl-breaking::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink-0);margin-right:8px}
.nl-news,.nl-developing{border:1px solid var(--line-strong);color:var(--text-1)}
.nl-updated{color:var(--accent);padding:0}
.brk{background:var(--ink-1);border-bottom:1px solid var(--accent)}
.brk .wrap{display:flex;align-items:center;gap:16px;min-height:48px}
.brk-time{font-size:13px;color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums}
.brk-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px;font-weight:600;color:var(--text-1);line-height:48px}
.brk-t:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--accent)}
.brk-t:focus-visible,.brk-x:focus-visible,.brk-nav:focus-visible,.brk-x.is-focus{outline:3px solid var(--accent);outline-offset:-3px}
.brk-ctr{display:flex;align-items:center}
.brk-n{font-size:13px;color:var(--text-2);white-space:nowrap;padding:0 4px;font-variant-numeric:tabular-nums}
.brk-nav,.brk-x{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;color:var(--text-1);flex:none;cursor:pointer}
.brk-nav:hover,.brk-x:hover{color:var(--accent)}
.brk-x svg{width:18px;height:18px}
.brk.static .wrap{padding-left:16px;padding-right:0}
.nlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.nrow{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.nrow.has-img{grid-template-columns:112px minmax(0,1fr) 160px}
.ntime{font-size:13px;line-height:22px;color:var(--text-2);font-variant-numeric:tabular-nums;padding-top:2px;white-space:nowrap}
.nbody{display:flex;flex-direction:column;gap:8px;min-width:0}
.nbody .tagrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.nbody .d{font-size:15px;line-height:24px;color:var(--text-2)}
.nbody h3 a:hover,.nlead h2 a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}
.nthumb{display:block;aspect-ratio:3/2;overflow:hidden;border-radius:var(--radius)}
.nthumb img{width:100%;height:100%;object-fit:cover}
.nblock{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px}
.nblock-h .row-head{margin-bottom:12px}
.nblock-h .meta{max-width:260px}
.nwrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}
.naside{position:sticky;top:24px;display:flex;flex-direction:column;gap:24px}
.nprose{margin-left:0}
.nlead{padding:32px;border:1px solid var(--line-strong);border-left:3px solid var(--accent);display:flex;flex-direction:column;gap:14px;margin-bottom:48px}
.nlead .tagrow{display:flex;gap:12px;align-items:center}
.nday{font-family:var(--display);font-stretch:var(--display-wdth);font-weight:600;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-1);margin:40px 0 16px;display:flex;gap:16px;align-items:baseline;flex-wrap:wrap}
.nday span{font-family:var(--sans);font-size:13px;letter-spacing:.02em;text-transform:none;color:var(--text-3);font-weight:400}
.nhead .wrap{text-align:left}
.nhead .nlabels{display:flex;gap:12px;align-items:center;margin:28px 0 20px}
.nhead .h1{text-align:left}
.nhead .lead{text-align:left;margin-left:0}
.nbyline{justify-content:flex-start;flex-wrap:wrap;gap:8px 20px}
.nlatest{margin-top:28px;padding:18px 20px;background:var(--ink-1);border-left:3px solid var(--accent);display:flex;flex-direction:column;gap:6px}
.nlatest p{color:var(--text-1);font-size:16px;line-height:26px}
.ulog-t{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.nstack{display:flex;flex-direction:column;gap:24px;margin-top:48px}
.ulog,.nbox{border:1px solid var(--line-strong);padding:28px;display:flex;flex-direction:column;gap:16px}
.ulog-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ulog-l li{position:relative;padding:0 0 18px 24px;border-left:1px solid var(--line-strong);margin-left:4px}
.ulog-l li::before{content:"";position:absolute;left:-5px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--accent)}
.ulog-l li:last-child{padding-bottom:0}
.ulog-l p,.corr p,.src-l li{font-size:15px;line-height:24px;color:var(--text-2);margin-top:4px}
.src-l{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px}
.src-l b{color:var(--text-1);font-weight:600}
.src-l .alink{overflow-wrap:anywhere}
.corr{padding-left:16px;border-left:3px solid var(--accent)}
@media (max-width:1023px){
 .nblock{grid-template-columns:1fr;gap:16px}.nblock-h .meta{max-width:none}
 .nrow,.nrow.has-img{grid-template-columns:minmax(0,1fr) 96px;gap:8px 16px}
 .nrow:not(.has-img){grid-template-columns:1fr}
 .nrow .ntime{grid-column:1/-1;padding:0}
 .nrow.has-img .nthumb{grid-row:2;grid-column:2}
 .nlead{padding:24px}
 .nwrap{grid-template-columns:1fr;gap:40px}.naside{position:static}
 .ulog,.nbox{padding:20px}
 .brk .wrap{gap:10px}
 .brk-time{font-size:12px}
 .brk-t{font-size:14px}
 .brk-prev{display:none}
 .brk-n{padding:0}
}
.brk-more{display:none}
@media (max-width:599px){.brk .tz{display:none}.state-row .brk.static{margin:0 -16px}.brk-ctr{display:none}.brk-more{display:inline;font-size:12px;color:var(--text-2);white-space:nowrap;margin-left:-4px}.brk .wrap{gap:8px}.brk .nlabel{padding:0 8px;font-size:10px}.brk .nl-breaking::before{display:none}.brk-n{display:none}.brk .wrap{padding-right:0}}
/* 10/26 QA: tap targets and 320 fit */
.tap{display:inline-flex;align-items:center;min-height:48px}
.mlinks a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:48px}
.nothanks{min-width:48px;padding-left:8px;padding-right:8px}
.success>div{min-width:0}
.form-wrap>*,.legal>*{min-width:0}
h1,h2,h3,h4{overflow-wrap:break-word}
@media (max-width:359px){.brk .brk-time{display:none}}
@media (max-width:399px){.success{flex-direction:column;padding:20px}}
/* Legal copy layout slot (mockup only, QA fix 3, Oct 26) */

/* WD2 second look fixes 2026-10-26 */
/* P1-1: focus ring on the visible custom control */
.ropt:has(input:focus-visible),.chk:has(input:focus-visible) .box,.sw:has(input:focus-visible) .sw-t{outline:3px solid var(--accent);outline-offset:3px}
/* P1-3 / P2-2: buttons and summary rows get the spec ring */
button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--radius)}
/* P2-3: darker ring on the paper reading mode (#7A5A22, 5.63:1) */
.reading-light :focus-visible,.reading-light .btn.is-focus{outline-color:var(--accent-on-light)}
.reading-light .prose .nl-inline :focus-visible{outline-color:var(--accent)}
/* P2-4: hide the native search cancel x */
.sbox input::-webkit-search-cancel-button,.sbox input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
/* P2-5: switch follows the 2px radius rule */
.sw-t{border-radius:var(--radius)}
.sw-t:after{border-radius:1px}
/* P2-6: standalone text links get a 48px hit area at mobile widths without moving layout */
@media (max-width:1023px){
 .disc-box a,.alert .alink{display:inline-block;padding:15px 0;margin:-15px 0}
}
/* P3-1: footer column labels are not headings */
.ftr .flabel{margin-top:0}
/* P3-3: short phones, keep the Subscribe button in view when the sheet opens */
@media (max-width:767px) and (max-height:700px){
 .pop .pop-mark,.pop .pop-in .eyebrow{display:none}
 .pop .pop-in{padding:16px 20px 12px;gap:8px}
 .pop .pop-in .h3{font-size:21px;line-height:27px}
 .pop .consent{font-size:12px;line-height:17px}
 .pop .pop-in .field label,.pop .pop-in .input{margin:0}
}
/* P1-2: let the lifted cover read at desktop; the headline keeps the left ink scrim */
@media (min-width:1200px){.hero:after{background:linear-gradient(90deg,rgba(11,11,10,.8) 0%,rgba(11,11,10,.55) 40%,rgba(11,11,10,0) 72%),linear-gradient(180deg,rgba(11,11,10,0) 0%,rgba(11,11,10,.1) 40%,rgba(11,11,10,.55) 75%,rgba(11,11,10,.9) 100%)}}

/* Stand-in photo captions (WD2 recheck, Oct 26) */
.card>.ph-cap{margin-top:-8px}
.list-item .ph-cap{margin-top:0}
.hero-cap{font-size:13px;line-height:20px;color:var(--text-2);margin-top:20px}
/* QA recheck FIX 6: crumbs as a centered flex row so a plain text last crumb lines up with the 48px links */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;white-space:pre-wrap}
/* QA recheck 6: bracketed placeholders from Legal's text (fill or remove before launch) */

/* QA recheck 6: design notes that are not site copy (mockup only, Dev does not build) */


/* Rev 11 legal sync (Oct 26): tables, quotes and sub heads inside legal pages. Below 768px each table row stacks as a card with the column name as a label. */
.legal-sec .lsub{margin:28px 0 8px;color:var(--text-1)}
.legal-sec p+p,.legal-sec ul+p,.legal-sec p+ul{margin-top:12px}
.legal-sec li+li{margin-top:6px}
.lquote{margin:16px 0 0;border-left:2px solid var(--line-strong,var(--line));padding-left:16px}
.ltable-wrap{margin-top:16px}
.ltable{width:100%;border-collapse:collapse;font-size:15px;line-height:22px}
.ltable th{text-align:left;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-1);padding:10px 12px 10px 0;border-bottom:1px solid var(--line-strong,var(--line));vertical-align:bottom}
.ltable td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);color:var(--text-2);vertical-align:top;overflow-wrap:break-word}
/* QA recheck 8: break-word (not anywhere) so table auto layout keeps every normal word whole; columns get a floor so short labels like "Strictly necessary" never split */
@media (min-width:768px){.ltable th,.ltable td{min-width:7.5em}.ltable td:first-child{min-width:10em}}
/* QA recheck 8: a placeholder filling a cell sits as its own box so its padding and outline stay inside the cell; in running text the line keeps 7px of room for the marker's padding and outline */


@media (max-width:767px){
 .ltable td{overflow-wrap:anywhere}
 .ltable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .ltable,.ltable tbody,.ltable tr,.ltable td{display:block;width:100%}
 .ltable tr{border-top:1px solid var(--line);padding:12px 0}
 .ltable td{border:0;padding:4px 0}
 .ltable td::before{content:attr(data-label);display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-1);margin-bottom:2px}
}
@media (max-width:767px){.row .feat{gap:16px}}

/* bd-fix8: the popup heading takes focus by script when the mobile sheet opens (ui.js, tabindex -1). It is not a
   control and not in the Tab order, so no ring on it. Chrome still matches :focus-visible after a script focus, so
   both states are covered. Buttons, links and inputs in the popup keep their focus ring. */
.pop #pop-t:focus,.pop #pop-t:focus-visible{outline:none}
/* bd-fix8, bd-fix9 (600px to 700px, WD P3 item 2, so 390x667 is covered too): short phones: give the sheet more height so No thanks shows without scrolling
   (attribute selector so it beats the 55vh rule in theme.css, which loads after this file) */
@media (max-width:767px) and (max-height:700px){.pop[data-popup]{max-height:72vh}}
/* bd-fix9 (WD P3 item 1): the privacy link in consent lines has a 48px tap box (.hit), so the 3px outline drew a tall box that
   covered the word before it. Inline focus style instead: a thick gold underline and brighter text, no box. */
.consent a.hit:focus-visible{outline:none;color:var(--text-1);text-decoration-color:var(--accent);text-decoration-thickness:3px}
/* bd-fix9 (WD P3 item 3): the 48px tap link on the thanks page made its line box taller, so the third tick sat about 9px above
   its text. Negative margins keep the 48px tap area but give the link a normal line height, so the tick lines up. */
.ticks .tap{margin-top:-12px;margin-bottom:-12px}
/* bd-fix10 (QA): the privacy link in consent lines has a 48px tap box (.hit, theme.css), so its line box grew and the
   second consent line sat about 32px under the first in the short phone popup (17px line height). Same fix as the
   fix 9 thanks ticks: negative top and bottom margins keep the 48px tap box but let the link take no more height than
   the text line, so the lines keep their normal spacing. The tap box overlaps the text above and below, which has no
   other link in it, so the effective target stays 48px tall. */
.consent a.hit{margin-top:-16px;margin-bottom:-16px}
/* bd-fix10 (QA): in the popup the No thanks button sits 8px under the consent line, so when the privacy link wraps to
   the last line its 48px tap box reached 8px into the No thanks tap box. 8px more space under the consent line keeps
   the two targets apart. */
.pop .consent{padding-bottom:8px}
/* bd-fix10 (WD P3): legal pages only, a shorter text column (about 640px) for easier reading. Tables and cards keep
   the full column width. */
.legal .legal-sec>p,.legal .legal-sec>ul,.legal .legal-sec>ol,.legal .legal-sec>h2,.legal .legal-sec>h3,.legal .legal-sec>.lquote{max-width:640px}
/* bd-fix10 (WD P3): Cookie settings, the Strictly necessary switch is always on, so its track is gold like any
   switch that is on (it stays disabled). */
.sw.lock .sw-t{background:var(--accent);border-color:var(--accent)}
.sw.lock .sw-t:after{background:var(--ink-0)}
