/* The Sales Traveler — Editorial System v4 (premium editorial rebuild)
   Chrome (topbar/masthead/nav/ticker/footer) + restyled legacy content classes.
   Content markup is unchanged; this sheet re-skins it. */

:root{
  --paper:#F6F5F0; --paper-2:#EFEEE6; --ink:#0B0B0C; --muted:#63625A;
  --line:#D9D7CC; --line-dark:rgba(255,255,255,.16);
  --acid:#D2FB72; --acid-deep:#4A5A0E; --black:#0A0A0B; --panel:#101012;
  --serif:'Newsreader',Georgia,serif; --cond:'Saira Condensed',Impact,sans-serif;
  --mono:'Space Mono',ui-monospace,monospace; --w:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:19px;line-height:1.58;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--w);margin:0 auto;padding:0 28px}
.small{font-size:14px;color:var(--muted)}

/* ============ CHROME ============ */
.skip-link{position:absolute;left:-999px;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:16px;width:auto;height:auto;z-index:1000;background:var(--acid);color:var(--black);padding:10px 12px;font-family:var(--cond);font-weight:800;text-transform:uppercase}

.tst-topbar{background:var(--black);color:#9c9c94;border-bottom:1px solid var(--line-dark)}
.tst-topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 28px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.tst-topbar b{color:var(--acid);font-weight:700}
.tst-topbar .doctrine{display:none}
@media(min-width:820px){.tst-topbar .doctrine{display:block}}

.tst-mast{background:var(--black);color:#F4F4EF}
.tst-mast .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-top:24px;padding-bottom:16px;flex-wrap:wrap}
.tst-brand{display:flex;align-items:flex-end;gap:18px}
.tst-logo{font-family:var(--cond);font-weight:900;font-size:56px;line-height:.78;letter-spacing:-2px;color:#fff}
.tst-logo em{font-style:normal;color:var(--acid)}
.tst-brandline{border-left:1px solid var(--line-dark);padding-left:16px;padding-bottom:2px}
.tst-brandline strong{font-family:var(--cond);font-weight:800;font-size:18px;letter-spacing:.14em;text-transform:uppercase;display:block;color:#fff}
.tst-brandline span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8f8f88}
.tst-sub-btn{display:inline-block;font-family:var(--cond);font-weight:800;font-size:16px;letter-spacing:.08em;text-transform:uppercase;background:var(--acid);color:var(--black)!important;padding:12px 20px;border:0;cursor:pointer}
.tst-sub-btn:hover{background:#e3ff9a}

.tst-nav{background:var(--black);border-top:1px solid var(--line-dark);position:sticky;top:0;z-index:40}
.tst-nav .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:0 28px}
.tst-nav .wrap::-webkit-scrollbar{display:none}
.tst-nav a{font-family:var(--cond);font-weight:800;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:#cfcfc8;padding:13px 15px;border-bottom:3px solid transparent;white-space:nowrap}
.tst-nav a:hover{color:var(--acid)}
.tst-nav a.active{color:var(--acid);border-bottom-color:var(--acid)}

.tst-ticker{background:var(--black);border-top:1px solid var(--line-dark);border-bottom:4px solid var(--acid);overflow:hidden}
.tst-ticker-inner{display:flex;align-items:stretch}
.tst-ticker-label{flex:0 0 auto;background:var(--acid);color:var(--black);font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;padding:10px 16px;z-index:2}
.tst-ticker-track{display:flex;animation:tsttick 55s linear infinite;padding:10px 0;will-change:transform}
.tst-ticker:hover .tst-ticker-track{animation-play-state:paused}
.tst-tick{flex:0 0 auto;display:flex;align-items:baseline;gap:10px;padding:0 26px;border-right:1px solid var(--line-dark);font-family:var(--mono);font-size:12px;color:#b9b9b1;white-space:nowrap}
.tst-tick b{color:var(--acid);font-size:15px}
.tst-tick .dir{color:#7d7d76;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
@keyframes tsttick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tst-ticker-track{animation:none;flex-wrap:wrap}}

.tst-footer{background:var(--black);color:#9c9c94;padding:52px 0 40px;border-top:5px solid var(--acid);margin-top:64px}
.tst-footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.tst-footer .flogo{font-family:var(--cond);font-weight:900;font-size:40px;color:#fff;letter-spacing:-1px;line-height:.85}
.tst-footer .flogo em{font-style:normal;color:var(--acid)}
.tst-footer p{font-size:14px;line-height:1.6;max-width:340px}
.tst-footer h4{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--acid);margin:0 0 14px}
.tst-footer a{display:block;padding:5px 0;font-size:14.5px;color:#c9c9c2}
.tst-footer a:hover{color:var(--acid)}
.tst-footer .legal{grid-column:1/-1;border-top:1px solid var(--line-dark);margin-top:28px;padding-top:20px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#7d7d76}
@media(max-width:900px){.tst-footer .wrap{grid-template-columns:1fr}}

a:focus-visible,button:focus-visible,input:focus-visible{outline:2.5px solid var(--acid-deep);outline-offset:2px}
.tst-nav a:focus-visible,.tst-footer a:focus-visible{outline-color:var(--acid)}

/* ============ LEGACY CONTENT CLASSES, RESTYLED ============ */
.eyebrow{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--acid-deep);margin-bottom:12px}
.h1,h1{font-family:var(--serif);font-weight:500;letter-spacing:-.02em}
.lead,.dek{font-family:var(--serif);font-weight:300;color:#3a3a35}
.meta{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.small{font-size:14px}

.hero{padding:64px 0;border-bottom:1px solid var(--line)}
.hero .h1,.hero h1{font-size:clamp(38px,4.8vw,60px);line-height:1.05;margin:0 0 18px;text-transform:none;letter-spacing:-.022em}
.hero .lead{font-size:21px;line-height:1.45;max-width:820px}

.section{padding:56px 0;border-bottom:1px solid var(--line)}
.section h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.4vw,40px);line-height:1.1;letter-spacing:-.015em;margin:0 0 20px;text-transform:none}
.section h3{font-family:var(--cond);font-weight:800;font-size:22px;text-transform:uppercase;letter-spacing:.02em;margin:0 0 10px}

.grid{display:grid;gap:22px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:0;padding:26px}
.card h3{font-family:var(--cond);font-weight:800;font-size:22px;text-transform:uppercase;margin:0 0 10px}
.card p{color:#4a4a44;font-size:15.5px;line-height:1.55;margin:0 0 12px}
.link-card{display:block;transition:background .12s,border-color .12s}
.link-card:hover,.link-card:focus-visible{border-color:var(--ink);background:var(--paper-2)}
.link-card:hover h3{background:var(--acid)}
.card-action{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--acid-deep)}

.cta{display:inline-block;font-family:var(--cond);font-weight:800;font-size:16px;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--acid)!important;padding:12px 20px;border:1.5px solid var(--ink)}
.cta:hover{background:transparent;color:var(--ink)!important}
.cta.ghost,.cta.secondary{background:transparent;color:var(--ink)!important;border:1.5px solid var(--ink)}
.cta.ghost:hover,.cta.secondary:hover{background:var(--ink);color:var(--acid)!important}

.notice{border:1px solid var(--line);border-left:5px solid var(--acid);background:var(--paper-2);padding:18px 22px;color:#3a3a35;font-size:16px}
.note,.editorial-note{border-left:4px solid var(--acid);background:var(--paper-2);padding:14px 18px;color:#3a3a35;font-size:15.5px}
.callout{border:1.5px solid var(--ink);border-left:8px solid var(--acid);background:#fff;padding:20px 24px;margin:24px 0}
.callout strong{background:var(--acid);padding:0 .1em}

/* Articles */
.article{max-width:760px;margin:0 auto;padding:56px 24px}
.article h1{font-size:clamp(36px,4.6vw,54px);line-height:1.06;margin:0 0 16px;text-transform:none}
.article .dek{font-size:21px;line-height:1.45;margin:0 0 18px}
.article h2{font-family:var(--serif);font-weight:600;font-size:29px;letter-spacing:-.01em;margin:44px 0 14px;padding-top:26px;border-top:1px solid var(--line);text-transform:none}
.article h3{font-family:var(--cond);font-weight:800;font-size:21px;text-transform:uppercase;margin:28px 0 10px}
.article p{font-size:19px;line-height:1.65;color:var(--ink)}
.article a:not(.cta){border-bottom:1.5px solid var(--acid-deep);padding-bottom:1px}
.article a:not(.cta):hover{background:var(--acid)}
.answer{border:1.5px solid var(--ink);border-left:8px solid var(--acid);background:#fff;padding:20px 26px;margin:28px 0;font-size:19px;line-height:1.55}
.answer strong{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--acid-deep);display:block;margin-bottom:8px}
.toc{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);background:transparent;padding:16px 0;margin:30px 0}
.toc strong{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:8px}
.toc a{display:inline-block;font-size:15px;color:var(--muted);padding:3px 14px 3px 0;border-bottom:none!important}
.toc a:hover{color:var(--ink);background:var(--acid)}
.takeaways,.checklist{border:1px solid var(--line);background:var(--paper-2);padding:20px 24px 20px 40px;margin:24px 0}
.takeaways li,.checklist li{margin:8px 0;font-size:16.5px;line-height:1.55}
.checklist strong{background:var(--acid);padding:0 .1em;color:var(--ink)}
.stat{border:1px solid var(--line);background:var(--paper-2);padding:22px 26px;margin:24px 0}
.stat strong{font-family:var(--cond);font-weight:900;font-size:52px;line-height:.9;background:var(--acid);padding:2px 8px;color:var(--ink)}
.table-wrap{overflow-x:auto;margin:24px 0}
.article table,.table-wrap table{width:100%;border-collapse:collapse;font-family:var(--serif);font-size:15.5px}
.article th,.table-wrap th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-align:left;border-bottom:2px solid var(--ink);padding:10px 12px;background:transparent;color:var(--ink)}
.article td,.table-wrap td{border-bottom:1px solid var(--line);padding:12px;vertical-align:top;color:var(--ink)}
.article tr:hover td{background:#fff}
.source-note{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:32px;font-family:var(--serif)}
.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}
.tag-row span{border:1px solid var(--line);padding:6px 10px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.article-positioning{max-width:920px;margin:0 auto 48px;padding:0 24px}

/* Archive rows & lists */
.article-list{display:grid;gap:0}
.article-row{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:20px 0;border-top:1px solid var(--line)}
.article-row h3{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.22;margin:0 0 6px;text-transform:none;transition:background .12s}
.article-row:hover h3,.article-row h3 a:hover{background:var(--acid)}
.article-row p{margin:0;color:var(--muted);font-size:15px}
.article-path,.path-list{display:grid;gap:10px;margin:18px 0}
.article-path a,.path-list a{border-left:4px solid var(--acid);background:var(--paper-2);padding:13px 16px;color:var(--ink);font-size:16px}
.article-path a:hover,.path-list a:hover{background:var(--acid)}

/* Frameworks / misc structures */
.split-note{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
.principle-list{display:grid;gap:12px;margin-top:18px}
.principle-list div{border-left:4px solid var(--acid);background:var(--paper-2);padding:14px 16px;color:var(--ink)}
.rule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rule-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.rule-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.rule-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--acid);padding:22px}
.rule-card .num{font-family:var(--mono);color:var(--acid-deep);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.canvas-card{background:#fff;border:1px solid var(--line);padding:24px}
.canvas-card .broken{font-family:var(--mono);color:var(--acid-deep);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.product{border:1px solid var(--line);background:#fff;padding:20px;margin:16px 0}
.product .score{font-family:var(--cond);font-weight:900;font-size:34px;background:var(--acid);padding:0 8px}
.sharp{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4vw,50px);line-height:1.05;letter-spacing:-.02em;text-transform:none}
.strike{color:var(--muted);text-decoration:line-through}
.faq{border-top:1px solid var(--line);padding:14px 0}
.editorial-filter{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--acid-deep)}
.engage{border:2px solid var(--ink);background:var(--acid);padding:24px;margin:32px 0}
.engage h3{margin-top:0}

/* Forms */
.form{display:grid;gap:14px;max-width:720px}
.form input,.form textarea,.form select{width:100%;background:#fff;border:1.5px solid var(--ink);color:var(--ink);font:16px var(--mono);padding:13px}
.form button{border:0;cursor:pointer;background:var(--ink);color:var(--acid);font-family:var(--cond);font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:.06em;padding:15px}
.form button:hover{color:#fff}

/* Related-in-canon module (added by rebuild) */
.tst-related{max-width:760px;margin:0 auto;padding:0 24px 56px}
.tst-related-inner{border-top:2px solid var(--ink);padding-top:18px}
.tst-related .rt{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.tst-related a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-weight:500;font-size:18px}
.tst-related a span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-top:3px;font-weight:400}
.tst-related a:hover{background:var(--acid)}

/* Newsletter gate re-skin (component markup unchanged) */
.tst-newsletter-gate{border:2px solid var(--ink)!important;border-radius:0!important;background:var(--acid)!important;box-shadow:none!important}
.tst-newsletter-gate__kicker{color:#3c4d10!important}
.tst-newsletter-gate h2{font-family:var(--cond)!important;font-weight:900!important;text-transform:uppercase;letter-spacing:0!important;color:var(--ink)!important}
.tst-newsletter-gate__lede,.tst-newsletter-gate__trust{color:#1d240a!important}
.tst-newsletter-gate__trust li::before{color:var(--ink)!important}
.tst-newsletter-form input[type='email']{border-radius:0!important;border:2px solid var(--ink)!important;font-family:var(--mono)!important;font-size:14px!important}
.tst-newsletter-form input[type='email']:focus{outline:2px solid var(--ink)!important;border-color:var(--ink)!important}
.tst-newsletter-form button{border-radius:0!important;background:var(--ink)!important;color:var(--acid)!important;font-family:var(--cond)!important;font-weight:800!important;text-transform:uppercase;box-shadow:none!important}
.tst-newsletter-form button:hover{transform:none!important;color:#fff!important}
.tst-newsletter-form__fineprint,.tst-newsletter-status{color:#3c4d10!important}

/* Responsive */
@media(max-width:1000px){
  .grid-2,.grid-3,.split-note,.rule-grid,.rule-grid.three,.rule-grid.two{grid-template-columns:1fr}
  .article-row{grid-template-columns:1fr;gap:6px}
  .tst-logo{font-size:46px}
}
@media(max-width:640px){
  body{font-size:17px}
  .hero{padding:44px 0}
  .section{padding:40px 0}
}

/* Tier-1 additions */
.pull{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:24px 0;margin:34px 0;font-family:var(--serif);font-style:italic;font-weight:500;font-size:26px;line-height:1.32}
.tst-data{background:rgba(210,251,114,.5);border:1px dashed var(--acid-deep);padding:1px 6px;font-family:var(--mono);font-size:.8em;white-space:nowrap}
.byline-card{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}

.registry-tag{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--acid-deep);border:1px solid var(--line);border-left:4px solid var(--acid);background:var(--paper-2);padding:10px 14px;margin:6px 0 26px}
.registry-tag strong{color:var(--ink)}

/* Calculators */
.calc{border:2px solid var(--ink);background:#fff;padding:26px;margin:30px 0}
.calc h2{font-family:var(--cond)!important;font-weight:900;font-size:26px!important;text-transform:uppercase;margin:0 0 6px!important;border:0!important;padding:0!important}
.calc .calc-sub{font-size:15px;color:var(--muted);margin:0 0 20px}
.calc label.fld{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:16px 0 6px}
.calc input[type=text],.calc input[type=number],.calc input[type=email]{width:100%;border:1.5px solid var(--ink);background:var(--paper);padding:11px 12px;font:15px var(--mono);color:var(--ink)}
.calc .q{border-top:1px solid var(--line);padding:16px 0 4px;margin-top:8px}
.calc .q .qt{font-family:var(--serif);font-weight:600;font-size:17px;margin:0 0 4px}
.calc .q .qh{font-size:13.5px;color:var(--muted);margin:0 0 10px}
.seg{display:flex;gap:6px;flex-wrap:wrap}
.seg button{border:1.5px solid var(--ink);background:var(--paper);font-family:var(--mono);font-size:13px;padding:8px 14px;cursor:pointer;color:var(--ink)}
.seg button:hover{background:var(--paper-2)}
.seg button.on{background:var(--ink);color:var(--acid)}
.seg.yn button.on.yes{background:var(--ink);color:var(--acid)}
.scorebar{height:14px;border:1.5px solid var(--ink);background:var(--paper);margin:18px 0 6px;position:relative}
.scorebar>div{height:100%;background:var(--acid);width:0;transition:width .25s}
.scoreline{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.verdict{border:1.5px solid var(--ink);border-left:10px solid var(--line);padding:16px 18px;margin:18px 0;font-family:var(--serif)}
.verdict b{font-family:var(--cond);font-weight:900;font-size:22px;text-transform:uppercase;display:block;margin-bottom:4px}
.verdict.good{border-left-color:var(--acid);background:rgba(210,251,114,.15)}
.verdict.warn{border-left-color:#e0b100;background:rgba(224,177,0,.07)}
.verdict.bad{border-left-color:#c0392b;background:rgba(192,57,43,.06)}
.calc .fails{font-size:14.5px;color:#7a2318;margin:6px 0 0}
.calc textarea.memo{width:100%;min-height:180px;border:1.5px solid var(--ink);background:var(--paper);font:13px/1.5 var(--mono);padding:12px;color:var(--ink)}
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.calc-actions button{border:1.5px solid var(--ink);background:var(--ink);color:var(--acid);font-family:var(--cond);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;padding:12px 18px;cursor:pointer}
.calc-actions button.ghost{background:transparent;color:var(--ink)}
.calc-actions button:hover{opacity:.85}
.calc .status{font-family:var(--mono);font-size:12px;color:var(--acid-deep);min-height:18px;margin-top:10px}
.calc .privacy{font-size:12.5px;color:var(--muted);margin-top:8px}
.dimrow{display:grid;grid-template-columns:160px 1fr 42px;gap:10px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin:6px 0}
.dimrow .bar{height:10px;border:1px solid var(--ink);background:var(--paper)}
.dimrow .bar>div{height:100%;background:var(--acid)}
@media(max-width:640px){.dimrow{grid-template-columns:110px 1fr 36px}}

/* Funnel components */
.partner-band{background:var(--ink);color:var(--paper);padding:64px 0}
.partner-band .eyebrow{color:var(--acid)}
.partner-band h2{font-family:var(--cond);font-weight:900;font-size:clamp(30px,4.5vw,46px);text-transform:uppercase;line-height:1.02;margin:0 0 14px;color:var(--paper)}
.partner-band p{font-size:18px;line-height:1.55;max-width:640px;color:rgba(246,245,240,.85)}
.partner-band .pb-stat-row{display:flex;gap:34px;flex-wrap:wrap;margin:22px 0 26px}
.partner-band .pb-stat{background:none;border:0;padding:0;margin:0}
.partner-band .pb-stat b{display:block;font-family:var(--cond);font-weight:900;font-size:34px;color:var(--acid)}
.partner-band .pb-stat span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(246,245,240,.65)}
.partner-band .cta{background:var(--acid);color:var(--ink)!important;border-color:var(--acid)}
.partner-band .cta.ghost{background:transparent;color:var(--paper)!important;border-color:rgba(246,245,240,.45)}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}
@media(max-width:760px){.tiers{grid-template-columns:1fr}}
.tier{border:1.5px solid var(--ink);background:#fff;padding:24px;display:flex;flex-direction:column}
.tier.hot{border-width:2.5px;border-top:6px solid var(--acid);position:relative}
.tier .t-name{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.tier .t-price{font-family:var(--cond);font-weight:900;font-size:40px;margin:6px 0 2px}
.tier .t-per{font-family:var(--mono);font-size:11px;color:var(--muted);margin-bottom:12px}
.tier ul{list-style:none;padding:0;margin:0 0 18px;font-size:14.5px;line-height:1.5}
.tier ul li{padding:5px 0 5px 20px;position:relative;border-top:1px solid var(--line)}
.tier ul li:before{content:"→";position:absolute;left:0;color:var(--acid-deep);font-family:var(--mono)}
.tier .cta{margin-top:auto;text-align:center}
.tier .t-flag{position:absolute;top:-13px;left:20px;background:var(--acid);color:var(--ink);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px;font-weight:700}
.rate-note{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:4px}

/* Footer newsletter band */
.nl-footer{background:var(--ink);color:var(--paper);padding:38px 0;border-top:6px solid var(--acid)}
.nl-footer .wrap{display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.nl-footer .nlf-copy{max-width:520px}
.nl-footer .eyebrow{color:var(--acid);margin-bottom:4px}
.nl-footer p{margin:0;font-size:15.5px;line-height:1.5;color:rgba(246,245,240,.85)}
.nl-footer form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.nl-footer input[type=email]{border:1.5px solid rgba(246,245,240,.4);background:transparent;color:var(--paper);padding:12px 14px;font:14px var(--mono);min-width:260px}
.nl-footer input[type=email]::placeholder{color:rgba(246,245,240,.45)}
.nl-footer button{background:var(--acid);color:var(--ink);border:1.5px solid var(--acid);font-family:var(--cond);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;padding:12px 20px;cursor:pointer}
.nl-footer button:hover{opacity:.85}
.nl-footer .nlf-status{flex-basis:100%;font-family:var(--mono);font-size:12px;color:var(--acid);min-height:16px;margin:4px 0 0}
@media(max-width:640px){.nl-footer input[type=email]{min-width:0;flex:1}}

.partner-band .cta:hover{opacity:.88}
.partner-band .cta.ghost:hover{background:var(--paper);color:var(--ink)!important}

/* Article-end newsletter banner */
.nl-banner{background:var(--acid);color:var(--ink);padding:64px 0;border-top:8px solid var(--ink)}
.nl-banner .eyebrow{color:var(--ink);opacity:.75}
.nl-banner h2{font-family:var(--cond);font-weight:900;font-size:clamp(34px,5.5vw,58px);line-height:.98;text-transform:uppercase;margin:6px 0 14px;color:var(--ink)}
.nl-banner p{font-size:17.5px;line-height:1.55;max-width:620px;margin:0 0 24px;color:var(--ink)}
.nl-banner form{display:flex;gap:10px;flex-wrap:wrap;max-width:620px}
.nl-banner input[type=email]{flex:1;min-width:240px;border:2px solid var(--ink);background:rgba(255,255,255,.55);color:var(--ink);padding:16px 16px;font:15px var(--mono)}
.nl-banner input[type=email]::placeholder{color:rgba(10,10,11,.55)}
.nl-banner button{background:var(--ink);color:var(--acid);border:2px solid var(--ink);font-family:var(--cond);font-weight:900;font-size:18px;letter-spacing:.06em;text-transform:uppercase;padding:16px 28px;cursor:pointer}
.nl-banner button:hover{opacity:.88}
.nl-banner .nlb-status{flex-basis:100%;font-family:var(--mono);font-size:12.5px;color:var(--ink);min-height:18px;margin:6px 0 0;font-weight:700}
.nl-banner .nlb-proof{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:rgba(10,10,11,.6);margin-top:18px}
