/* Page-specific layout: home, topic pages, article, product, login, forms */
.band{background:var(--ink);color:#fff;padding:46px 0 130px}.band h1{font-size:clamp(26px,4vw,62px);max-width: none; white-space: nowrap;;margin:12px 0 22px}.actions{display:flex;gap:12px;flex-wrap:wrap}.band .btn-line{color:#fff}
.lead-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px;margin-top:-96px;position:relative}
/* Shared page shell: every page = .band hero + cards pulled up over it */
.band .hero-lede{max-width:640px;color:#d8e1ec;font-size:18px;margin:-6px 0 24px}
.band.compact{padding:26px 0 96px}.band.compact h1{font-size:clamp(26px,3.4vw,38px);max-width:900px;margin:8px 0 10px}
.band.compact .eyebrow{font-size:11px}.band.compact .hero-lede{font-size:16px;margin:0 0 16px}.band.compact .btn{padding:10px 20px;font-size:13px}
.band.compact+.lead-grid,.band.compact+.read-grid,.band.compact+.pull{margin-top:-64px}
.band.article-hero{--hero-copy-width:calc((100% - 22px) * 8 / 13)}
.band.product-hero{--hero-copy-width:calc((100% - 22px) * 27 / 47)}
.band:is(.article-hero,.product-hero) :is(h1,.hero-lede){max-width:var(--hero-copy-width);white-space:normal;overflow-wrap:anywhere}
@media(max-width:860px){.band:is(.article-hero,.product-hero){--hero-copy-width:100%}}
.pull{position:relative;margin-top:-96px}
.read-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:start;margin-top:-96px;position:relative}
.read-grid .article{max-width:none;margin:0;min-width:0}.read-grid .latest{position:sticky;top:20px}
.lead-grid .latest{align-self:stretch}.buybox{border-top:1px solid var(--line);margin-top:22px;padding-top:22px;display:grid;gap:12px;justify-items:start}.faq{max-width:800px}
main>section.wrap:last-child{margin-bottom:60px}
.lead{border-radius:36px;min-height:470px;padding:40px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;box-shadow:var(--shadow);align-items:flex-start}
.lead>*{position:relative}.lead h2{font-size:clamp(28px,3.6vw,46px);max-width:560px}.lead p{max-width:520px;color:#ffffffdd}
.latest{padding:26px 28px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.panel-head h2{font-size:22px}.panel-head a{font-size:13px;font-weight:700;color:var(--accent)}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}.duo>div{border-radius:var(--radius);padding:36px;display:flex;flex-direction:column;gap:18px;align-items:flex-start;min-height:240px;justify-content:space-between}
.duo h3{font-size:30px;margin-bottom:10px}.duo p{max-width:420px;opacity:.85}.duo .free{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.duo .paid{background:var(--ink);color:#fff}
.cta{background:var(--ink);color:#fff;border-radius:40px;padding:52px;display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:center}.cta h2{font-size:clamp(28px,4vw,46px);margin-bottom:22px}
.signup{display:flex;gap:8px;background:#fff;border-radius:99px;padding:6px;max-width:500px}.signup input{flex:1;border:0;background:none;padding:12px 18px;font:inherit;color:#000;min-width:0}.signup button{border:0;border-radius:99px;background:var(--accent);color:#fff;font-weight:700;padding:0 24px;cursor:pointer}
.perks{list-style:none;margin:0;padding:0;counter-reset:p}.perks li{counter-increment:p;padding:14px 0 14px 40px;border-bottom:1px solid #ffffff22;position:relative;font-size:14px;color:#d6dfeb}.perks li:before{content:"0" counter(p);position:absolute;left:0;top:14px;color:var(--gold);font-weight:800;font-size:12px}.perks b{color:#fff}
.article{max-width:800px;margin:0 auto;padding:46px 50px}.article h1{font-size:clamp(30px,4.5vw,46px);margin:16px 0 12px}.dek{font-size:19px;color:#33465c;margin:14px 0}
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px;margin:16px 0 24px}.share a{border:1px solid var(--line);border-radius:99px;padding:7px 14px;font-weight:700;background:#fff}.share a:hover{background:var(--ink);color:#fff}
.body{font-size:18px;line-height:1.85}.body h2{font-size:26px;margin:1.6em 0 .5em}.body p{margin:0 0 1em}.body a{color:#1f4e79;text-decoration:underline}.body ul{padding-left:22px}.body a.btn{text-decoration:none;color:#fff}.body a.btn-light{color:var(--ink)}
.takeaways{background:#f1f3f6;border-radius:22px;border-left:5px solid var(--gold);padding:8px 26px 18px;margin:32px 0}.takeaways h2{font-size:20px;margin:16px 0 8px}.takeaways li{margin:6px 0;font-size:15px}.tags{margin-top:8px}
.gate{background:#f1f3f6;border-radius:22px;padding:28px;text-align:center;margin:24px 0}.gate h3{margin:12px 0 6px}.gate p{color:var(--muted);font-size:14px;margin-bottom:16px}
.pd{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.cover.big{height:380px;border-radius:var(--radius) var(--radius) 90px var(--radius)}.cover.big strong{font-size:32px}
.pdi{display:grid;gap:16px}.pdi h1{font-size:clamp(28px,4vw,44px)}.lede{font-size:17px;color:#33465c}.buyrow{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.price.big{font-size:26px}
.duo2{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:36px}.pad{padding:30px}.pad h2{font-size:24px;margin-bottom:12px}details{border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}summary{font-weight:700;cursor:pointer}
.form{display:grid;gap:14px;max-width:460px}.form label{font-size:13px;font-weight:700;display:grid;gap:6px}.form input,.form textarea{font:15px var(--font);padding:13px 14px;border:1px solid #9aa6b4;background:#fff;border-radius:14px}
.msg{font-size:13px;min-height:20px}.msg.err{color:#a93b32}.msg.ok{color:#256b4a}.linkbtn{background:none;border:0;color:var(--accent);font-weight:700;cursor:pointer;padding:0;font-size:13px;text-align:left}
.authbox{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px;max-width:500px;margin:0 auto}.tabs{display:flex;margin-bottom:22px;border-bottom:1px solid var(--line)}
.tabs button{flex:1;background:none;border:0;border-bottom:3px solid transparent;padding:12px;font:700 14px var(--font);cursor:pointer;color:var(--muted)}.tabs button[aria-selected=true]{border-color:var(--accent);color:var(--ink)}
.demo{background:#fff6e5;border:1px solid #f0d9a6;border-radius:14px;padding:10px 14px;font-size:12px;margin-bottom:18px;line-height:1.6}
@media(max-width:860px){.lead-grid,.read-grid,.duo,.cta,.pd,.duo2{grid-template-columns:1fr}.read-grid .latest{position:static}.cta{padding:32px 24px}.article{padding:30px 22px}.lead{min-height:360px;padding:28px}.signup{flex-direction:column;border-radius:24px}.signup button{padding:14px}}
.lead .pill:not(.free):not(.mem){background:rgba(255,255,255,.22)}

/* THANK-YOU PAGE (/thank-you/) : light, minimal, gold accents */
.ty{background:#f7f8fa;padding:72px 0 88px}.ty-wrap{max-width:720px;display:grid;gap:24px}
.ty-card,.ty-help{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:44px 36px;text-align:center}
.ty h1{font-size:clamp(28px,5vw,40px);letter-spacing:-.03em;color:var(--ink);margin:18px 0 10px}.ty h2{font-size:20px;color:var(--ink);margin-bottom:8px}
.ty-lead{font-size:17px;color:var(--text)}.ty-sub{color:var(--muted);margin-top:6px}
.ty-check{width:84px;height:84px}.ty-c{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-dasharray:151;stroke-dashoffset:151;animation:ty-d .8s ease forwards}
.ty-p{fill:none;stroke:var(--ink);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:ty-d .5s .6s ease forwards}
@keyframes ty-d{to{stroke-dashoffset:0}}
.ty-mail{margin-top:28px;padding:24px;border-radius:calc(var(--radius) - 8px);background:#fbf7ec;border:1px solid var(--gold)}.ty-mail p{color:var(--text)}.ty-mail .meta{margin-top:8px}
.ty-help p{color:var(--muted);margin-bottom:16px}.ty-actions{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;align-items:center}.ty-link{font-weight:700;color:var(--ink)}.ty-link:hover{text-decoration:underline}
@media (prefers-reduced-motion:reduce){.ty-c,.ty-p{animation:none;stroke-dashoffset:0}}
@media (max-width: 860px) { .band h1 {white-space: normal; }}[hidden]{display:none!important}
.nav-r{gap:12px;white-space:nowrap}
#account-menu{position:relative}
#account-menu summary{cursor:pointer}
.account-menu{position:absolute;z-index:10;right:0;top:calc(100% + 12px);display:grid;gap:12px;background:white;color:#101a2b;padding:16px;border-radius:10px;box-shadow:0 8px 32px #0004;min-width:200px;max-width:min(320px,85vw);white-space:normal;overflow-wrap:anywhere}
.account-menu button{justify-self:start;cursor:pointer}
.article-featured{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin:16px 0}
.feature-page{max-width:760px;padding-block:48px}
.feature-page h1,.feature-page p,.welcome h2,.welcome p{margin-bottom:14px}
.feature-page form{margin-block:24px}
.amounts{display:flex;flex-wrap:wrap;gap:12px;padding:12px;border:1px solid #a2adba}
.amounts label{display:flex;align-items:center;gap:5px;cursor:pointer}
.amounts input{width:auto;margin:0}
#search-results{display:grid;gap:12px;padding:0;list-style:none}
#search-results li,.welcome{border:1px solid #a2adba;border-radius:12px;padding:18px}
#search-results a{text-decoration:underline}
.welcome{margin-bottom:24px}
.welcome .btn{margin-bottom:12px}
@media(max-width:1050px){
  .nav-l{display:none}
  .nav-r{display:flex;grid-column:2}
  .menu{display:block}
  .bar{grid-template-columns:1fr auto auto}
}
@media(max-width:540px){
  .bar{grid-template-columns:1fr auto;row-gap:10px}
  .menu{grid-column:2;grid-row:1}
  .nav-r{grid-column:1/-1;grid-row:2;justify-content:flex-end;flex-wrap:wrap}
}
@media(max-width:540px){.bar{height:auto;min-height:76px;padding-block:10px}}
.search-link{display:inline-flex;align-items:center;gap:7px}
.search-icon{display:inline-block;width:11px;height:11px;border:2px solid currentColor;border-radius:50%;position:relative;margin-right:3px}
.search-icon::after{content:"";position:absolute;width:6px;height:2px;left:7px;top:7px;background:currentColor;transform:rotate(45deg)}
#search-results small{display:block;color:var(--muted);font-weight:700;margin-bottom:4px}
#search-results a{font-weight:700}
#search-results p{margin:6px 0 0}
#stripe-checkout{margin-block:16px}
.account-menu a:hover{color:var(--ink);text-decoration:underline}
.lead h2,.lead p{text-shadow:0 2px 12px #070f28e0}
.lead p{color:#fff}
.chevron{display:inline-block;width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg)}
details[open]>summary .chevron{transform:translateY(2px) rotate(225deg)}
#account-menu summary,#topic-more summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer}
#account-menu summary::-webkit-details-marker,#topic-more summary::-webkit-details-marker{display:none}
#account-menu summary{padding:8px 12px;border:1px solid #ffffff45;border-radius:24px}
#account-menu[open] summary{background:#ffffff16}
.account-menu{width:min(300px,85vw);gap:3px;padding:8px;border:1px solid #dbe1e8;border-radius:16px;box-shadow:0 16px 42px #07101d40}
.account-profile{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:11px 8px 13px;margin-bottom:5px;border-bottom:1px solid #e4e8ed}
.account-profile small{display:block;color:var(--muted);font-weight:600}
.account-profile strong{display:block;font-size:13px}
.account-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f5e8c4;color:#513900;font-weight:800}
.account-menu a,.account-menu button{display:block;width:100%;border:0;border-radius:8px;padding:9px 10px;background:transparent;text-align:left;font:inherit}
.account-menu a:hover,.account-menu a:focus-visible,.account-menu button:hover,.account-menu button:focus-visible{background:#f2f4f7;text-decoration:none}
.account-menu button{color:#9c1537}
#menu-status:empty{display:none}
.topics-bar .wrap{gap:clamp(8px,2vw,24px);overflow:visible}
#topic-links{display:flex;flex:0 1 auto;min-width:0;gap:clamp(12px,2vw,24px);overflow:hidden}
#topic-links a{flex:none}
#topic-more{position:relative;color:#fff;flex:none}
#topic-more summary{padding:5px 8px;border-radius:7px;background:#ffffff14;font-weight:700}
#topic-overflow{position:absolute;z-index:20;right:0;top:calc(100% + 6px);min-width:170px;padding:7px;border:1px solid #dbe1e8;border-radius:12px;background:#fff;box-shadow:0 12px 28px #07101d33}
#topic-overflow a{display:block;padding:8px 10px;border-radius:6px;color:var(--ink)}
#topic-overflow a:hover,#topic-overflow a:focus-visible{background:#eef2f6;color:var(--ink)}

.pcard .cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.product-detail{overflow:hidden;min-width:0}
.product-detail>img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#f7f6f2}
.product-detail-copy .chips{margin-bottom:14px}
