/* Generated by build.py from src/index.html. Do not edit — edit the homepage. */

:root{
  --ink:#0d2b46;--ink-soft:#34516a;--teal:#0a8f8e;--teal-dark:#087577;
  --coral:#ff6d55;--coral-dark:#e95d48;--ivory:#fbfaf5;--white:#fff;
  --line:#dce6e7;--shadow:0 18px 55px rgba(32,72,96,.13);
  --shadow-soft:0 10px 28px rgba(32,72,96,.08);--max:1440px;
  --focus:#0a8f8e
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:
radial-gradient(circle at 15% 0%,rgba(255,220,185,.38),transparent 32%),
linear-gradient(180deg,#fffdf8 0%,#fbfaf5 45%,#f9fbf8 100%);
font-family:"DM Sans",system-ui,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.section{padding:34px 0}
.eyebrow{font-size:.73rem;letter-spacing:.27em;text-transform:uppercase;font-weight:700}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 16px}
.section-title h2{margin:0;font-size:clamp(1.35rem,1.8vw,2rem);letter-spacing:-.03em;line-height:1.15}
/* Touch targets (D3): padding, not larger type. The link keeps its size and
   gains tap area, which is what a thumb actually needs. */
.section-link{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  color:var(--teal-dark);display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(13,43,70,.08)}
.nav{min-height:80px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content;min-height:44px}
.mark{width:31px;height:32px;position:relative;flex:0 0 auto}
.mark span{position:absolute;left:50%;transform:translateX(-50%);height:5px;border-radius:99px;background:var(--teal)}
.mark span:nth-child(1){width:12px;top:1px}.mark span:nth-child(2){width:20px;top:9px}.mark span:nth-child(3){width:28px;top:17px}.mark span:nth-child(4){width:22px;top:25px}
.brand-name{font-weight:700;font-size:1.18rem;line-height:1;display:block}
.brand-tag{font-size:.51rem;letter-spacing:.21em;text-transform:uppercase;margin-top:6px;color:#4f788e;display:block}
.main-nav{display:flex;justify-content:center;gap:26px;font-size:.86rem;font-weight:600}
.main-nav a{padding:6px 2px;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}
.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--teal-dark);border-bottom-color:var(--teal)}
.nav-actions{display:flex;align-items:center;gap:12px}

/* ---------- mobile navigation (D2) ----------
   The smallest accessible pattern: one disclosure button toggling a panel that
   reuses the SAME six links and the SAME search form. No second information
   architecture, because two navigations drift and then disagree. */
.nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;
  border:1px solid #cfdad8;background:#fff;border-radius:12px;color:var(--ink);cursor:pointer;
  flex:0 0 auto;transition:background .2s ease}
.nav-toggle:hover{background:var(--ivory)}
.nav-toggle .bar{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;
  margin:2.5px 0;transition:transform .2s ease,opacity .2s ease}
.nav-toggle[aria-expanded="true"] .bar:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .bar:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}
.mobile-nav{display:none;border-top:1px solid rgba(13,43,70,.08);background:rgba(255,253,248,.98);
  backdrop-filter:blur(18px)}
.mobile-nav .container{padding:14px 0 18px}
.mobile-nav .search{display:flex;min-width:0;width:100%;margin-bottom:12px}
.mobile-nav nav{display:flex;flex-direction:column}
.mobile-nav nav a{display:flex;align-items:center;min-height:48px;padding:0 4px;font-weight:600;
  font-size:.95rem;border-bottom:1px solid rgba(13,43,70,.07)}
.mobile-nav nav a:last-child{border-bottom:0}
.mobile-nav nav a:hover{color:var(--teal-dark)}
.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d3dedd;border-radius:999px;padding:0 8px 0 16px;min-width:260px;transition:border-color .2s ease,box-shadow .2s ease}
.search:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(10,143,142,.16)}
.search svg{flex:0 0 auto;color:#6d8794}
.search input{border:0;background:transparent;font:inherit;font-size:.85rem;padding:12px 0;flex:1;min-width:0;color:var(--ink)}
.search input::placeholder{color:#79909e}
.search input:focus-visible{outline:none}
.search button{border:0;background:var(--teal);color:#fff;border-radius:999px;width:34px;height:34px;display:grid;place-items:center;cursor:pointer;flex:0 0 auto;transition:background .2s ease}
.search button:hover{background:var(--teal-dark)}
.btn{border-radius:999px;padding:13px 22px;font-weight:700;display:inline-flex;align-items:center;gap:10px;transition:background .2s ease,transform .2s ease;border:1px solid transparent;cursor:pointer;font-size:.88rem;min-height:44px}
.primary,.newsletter-btn{background:var(--teal);color:#fff;box-shadow:0 10px 22px rgba(10,143,142,.22)}
.primary:hover,.newsletter-btn:hover{background:var(--teal-dark);transform:translateY(-1px)}
.secondary{border-color:#7ba7b1;background:rgba(255,255,255,.72);color:var(--ink)}
.secondary:hover{background:#fff}
.coral{background:var(--coral);color:#fff}.coral:hover{background:var(--coral-dark)}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;padding:44px 0 18px}
.hero:before{content:"";position:absolute;inset:-40% auto auto 44%;width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(255,210,134,.35),rgba(255,255,255,0) 68%)}
.hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:40px;align-items:center;min-height:515px}
.hero-copy{padding-left:18px;position:relative;z-index:2}
.hero h1{font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(3.2rem,6.7vw,7.4rem);line-height:.88;letter-spacing:-.055em;margin:14px 0 22px;max-width:620px}
.hero h1 em{font-style:normal;color:var(--coral)}
.hero p{font-size:1.08rem;max-width:560px;margin:0 0 24px;color:var(--ink-soft)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}
.trust-row{display:flex;gap:26px;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:9px;font-size:.82rem;max-width:158px}
.trust-icon{width:32px;height:32px;border:2px solid var(--teal);border-radius:9px;display:grid;place-items:center;color:var(--teal);flex:0 0 auto}

/* HERO ART — swappable image slot.
   Drop a real asset into .hero-art img and the CSS scene below is not rendered.
   The scene is the fallback so the slot is never an empty box. */
.hero-art{min-height:500px;position:relative;border-radius:42px;overflow:hidden;background:
linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,247,220,.22)),
radial-gradient(circle at 73% 30%,rgba(255,225,160,.86),transparent 28%),
linear-gradient(135deg,#f0e8d8 0%,#f9f0dc 33%,#d5ead7 100%);
box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),var(--shadow-soft)}
.hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:3}
.hero-art:has(img) .scene{display:none}
.sun-arch{position:absolute;right:-3%;top:-4%;width:34%;height:80%;border-radius:140px 140px 0 0;background:linear-gradient(#fff8df,#9fd7e1 55%,#3b98b8 56%,#79c8db 70%,#e5bb72 71%,#e6ad55);box-shadow:inset 0 0 0 12px rgba(255,255,255,.72)}
.sun-arch:after{content:"";position:absolute;left:18%;top:12%;width:105px;height:105px;border-radius:50%;background:radial-gradient(circle,#fff7ce 0 14%,#ffd574 15% 30%,rgba(255,194,92,.28) 31% 60%,transparent 61%)}
.leaf{position:absolute;border-radius:70% 0 70% 0;background:linear-gradient(135deg,#4a9b5c,#1f6f49)}
.l1{width:180px;height:85px;left:35%;top:0;transform:rotate(-25deg)}.l2{width:150px;height:70px;left:44%;top:90px;transform:rotate(28deg)}.l3{width:170px;height:75px;left:24%;top:110px;transform:rotate(-55deg)}
.stone{position:absolute;left:47%;bottom:56px;width:17%;height:210px;border-radius:18px;background:linear-gradient(145deg,#ccb79d,#8f7f70)}
.platform{position:absolute;left:5%;right:5%;bottom:0;height:92px;border-radius:30px 30px 0 0;background:linear-gradient(165deg,#d8c2a5,#b49b7b)}
/* Unbranded device forms — no manufacturer marks, no invented product identities. */
.red-panel{position:absolute;left:52%;bottom:72px;width:130px;height:315px;border-radius:16px;background:linear-gradient(90deg,#27171a,#5a2026 50%,#23171b);box-shadow:0 24px 44px rgba(126,20,30,.34)}
.red-panel .leds{position:absolute;inset:20px 17px 28px;border-radius:8px;background:radial-gradient(circle,#ffd3cf 0 2px,#ff4237 3px 6px,transparent 7px) 0 0/22px 22px,#651b22;box-shadow:0 0 38px #ff4d40,inset 0 0 25px rgba(255,67,54,.8)}
.mask{position:absolute;left:18%;bottom:74px;width:235px;height:112px;border-radius:55% 48% 38% 42%;background:linear-gradient(165deg,#22242b,#05070c);box-shadow:0 20px 24px rgba(0,0,0,.22);transform:rotate(-3deg)}
.mask:after{content:"";position:absolute;right:-50px;top:23px;width:105px;height:18px;border-radius:50%;border:8px solid #17191d;transform:rotate(-10deg)}
.ring{position:absolute;left:43%;bottom:68px;width:78px;height:78px;border-radius:50%;border:19px solid #30363e;box-shadow:inset 0 0 0 5px #95a1aa,0 15px 25px rgba(0,0,0,.18);transform:rotate(-14deg)}
.books{position:absolute;right:13%;bottom:62px;width:180px}
.book{height:34px;background:#f6efe0;border:1px solid #d4c8b5;border-radius:6px;margin:4px 0;display:grid;place-items:center;font-size:.64rem;letter-spacing:.15em;font-weight:700}
.hero-script{position:absolute;left:15%;top:70px;font-family:"Libre Caslon Display",Georgia,serif;font-style:italic;color:#1f536f;font-size:2.5rem;line-height:1.04;transform:rotate(-7deg);text-align:center}
.hero-script small{display:block;color:var(--coral);font-size:1rem}
.wall-words{position:absolute;right:14%;top:95px;text-align:center;letter-spacing:.25em;font-size:.72rem;line-height:2.3;color:var(--ink-soft)}

/* ---------- affiliate disclosure (spec N2) ---------- */
.affiliate-disclosure{display:flex;gap:12px;align-items:flex-start;background:#fff6f2;border:1px solid #ffd3c7;border-left:4px solid var(--coral);border-radius:12px;padding:14px 18px;margin:0 0 22px;font-size:.82rem;color:#7a4032;line-height:1.55}
.affiliate-disclosure svg{flex:0 0 auto;margin-top:2px;color:var(--coral-dark)}
.affiliate-disclosure a{text-decoration:underline;font-weight:600}

/* ---------- featured comparison ---------- */
.feature-card{background:rgba(255,255,255,.94);border:1px solid #e6e6df;border-radius:25px;box-shadow:var(--shadow);display:grid;grid-template-columns:1.05fr 1.3fr .9fr;gap:22px;padding:24px 28px;align-items:center}
.feature-copy h2{font-size:2rem;margin:7px 0 8px;line-height:1.08}
.feature-copy p{color:var(--ink-soft);margin:0 0 16px;font-size:.92rem}
.eval-note{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#6d8794;margin:0 0 10px}
.products-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mini-product{text-align:center;font-size:.72rem;font-weight:700;color:var(--ink-soft)}
.mini-panel{margin:0 auto 7px;width:48px;height:92px;border-radius:6px;background:#222;position:relative;box-shadow:0 8px 13px rgba(0,0,0,.15)}
.mini-panel:before{content:"";position:absolute;inset:8px;background:radial-gradient(circle,#ffd3cf 0 1px,#ff3d35 2px 3px,transparent 4px) 0 0/10px 10px,#6b171b}
.mini-product:nth-child(2) .mini-panel{transform:rotate(-6deg)}
.mini-product:nth-child(3) .mini-panel{background:#f2f2f2}
.mini-product:nth-child(4) .mini-panel{height:65px;margin-top:27px}
.criteria{display:grid;gap:8px;font-size:.8rem;color:var(--ink-soft)}
.criteria span{display:flex;align-items:flex-start;gap:8px}
.criteria span:before{content:"";flex:0 0 auto;margin-top:3px;width:16px;height:16px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/10px no-repeat}
.script-note{font-family:"Libre Caslon Display",Georgia,serif;font-style:italic;font-size:1.5rem;color:#245b75;margin-top:12px}

/* ---------- claim audit signature module ---------- */
.claim-audit{background:linear-gradient(135deg,#0d2b46 0%,#14405f 55%,#0a5a63 100%);color:#fff;border-radius:28px;padding:40px 44px;position:relative;overflow:hidden}
.claim-audit:before{content:"";position:absolute;right:-90px;top:-90px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(255,109,85,.28),transparent 65%)}
.claim-audit-inner{position:relative;z-index:2;display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}
.claim-audit h2{font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(2.4rem,4vw,3.6rem);line-height:.95;letter-spacing:-.04em;margin:12px 0 14px}
.claim-audit h2 em{font-style:normal;color:var(--coral)}
.claim-audit .lede{color:#c6dbe4;margin:0 0 18px;font-size:.95rem;max-width:420px}
.claim-audit .eyebrow{color:#7fd4cf}
.audit-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.audit-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:22px 20px}
.audit-num{font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(2.6rem,4.4vw,3.9rem);line-height:1;letter-spacing:-.04em;display:block;font-variant-numeric:tabular-nums}
.audit-stat:nth-child(1) .audit-num{color:#fff}
.audit-stat:nth-child(2) .audit-num{color:#6fd3c7}
.audit-stat:nth-child(3) .audit-num{color:var(--coral)}
.audit-label{display:block;margin-top:10px;font-size:.79rem;line-height:1.4;color:#bcd4de}
.audit-foot{margin:22px 0 0;font-size:.74rem;color:#93b3c1}
.audit-foot a{text-decoration:underline}
.audit-empty{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:26px;color:#c6dbe4;font-size:.9rem}

/* ---------- categories, gated ---------- */
.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.category-card{background:#fff;border:1px solid #e5eae6;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease;display:block;position:relative}
a.category-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(32,72,96,.12)}
.category-card[aria-disabled="true"]{opacity:.52;cursor:not-allowed;box-shadow:none;background:#fbfbf9}
.category-card[aria-disabled="true"] .category-visual{filter:grayscale(.72)}
.cat-status{position:absolute;top:9px;left:9px;z-index:2;font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;padding:4px 8px;border-radius:999px}
.cat-status.live{background:var(--coral);color:#fff}
.cat-status.soon{background:rgba(255,255,255,.92);color:#5d7280;border:1px solid #cfdad8}
.category-visual{height:110px;position:relative;overflow:hidden}
.cat-red{background:radial-gradient(circle at 40% 25%,#ff6b58,#6e0d14 56%,#1b0e12)}
.cat-sleep{background:linear-gradient(135deg,#dce5e8,#8f9aa3)}
.cat-cold{background:linear-gradient(135deg,#d9f7ff,#2f84ae)}
.cat-wear{background:linear-gradient(135deg,#1e4442,#84b7a0)}
.cat-recovery{background:linear-gradient(135deg,#f1d2a0,#90a874)}
.cat-supp{background:linear-gradient(135deg,#d8efd9,#f5efe3)}
.category-visual:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:18px;top:20px;background:rgba(255,255,255,.2);box-shadow:0 0 0 16px rgba(255,255,255,.08)}
.category-body{padding:13px 14px;display:flex;gap:10px;align-items:flex-start}
.category-icon{color:var(--teal);flex:0 0 auto;margin-top:1px}
.category-card[aria-disabled="true"] .category-icon{color:#9aacb4}
.category-body h3{font-size:.86rem;margin:0 0 2px;line-height:1.2}
.category-body p{font-size:.7rem;color:#6a7d89;margin:0;line-height:1.35}

/* ---------- article cards ---------- */
.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.article-card{background:#fff;border:1px solid #e5eae6;border-radius:16px;box-shadow:var(--shadow-soft);padding:12px;display:grid;grid-template-columns:112px 1fr;gap:12px;min-height:158px;transition:transform .2s ease,box-shadow .2s ease}
a.article-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(32,72,96,.12)}
.article-thumb{border-radius:10px;min-height:130px;background:linear-gradient(145deg,#8f1b20,#ff5c4f)}
.article-card:nth-child(2) .article-thumb{background:linear-gradient(145deg,#dce7ec,#7f95a2)}
.article-card:nth-child(3) .article-thumb{background:radial-gradient(circle at 55% 50%,#8f6b45 0 18%,#302721 19% 28%,#d8bd91 29% 36%,#15212a 37%)}
.article-type{font-size:.61rem;letter-spacing:.18em;text-transform:uppercase;color:#b25944;font-weight:800}
.article-card h3{font-size:.94rem;line-height:1.2;margin:5px 0}
.article-card p,.article-date{font-size:.68rem;color:#6c7d87;margin:0;line-height:1.4}
.article-date{margin-top:7px}
.card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}

/* experience labels — enum: researched | hands_on | long_term (+ claim_audited, separate axis) */
.xp{display:inline-flex;align-items:center;gap:5px;font-size:.58rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;padding:4px 8px;border-radius:999px;border:1px solid;white-space:nowrap}
.xp:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}
.xp-researched{color:#4a6a7d;border-color:#c8d8de;background:#f2f7f9}
.xp-hands_on{color:#0a6f6e;border-color:#a7d8d4;background:#eaf7f5}
.xp-long_term{color:#1c5f3a;border-color:#a8d8bd;background:#ebf8f0}
.xp-claim_audited{color:#b94d37;border-color:#ffd3c7;background:#fff0eb}

/* ---------- methodology strip ---------- */
.trust-strip{margin-top:18px;background:rgba(255,255,255,.78);border-top:1px solid #e0e7e3;border-bottom:1px solid #e0e7e3;display:grid;grid-template-columns:repeat(4,1fr)}
.trust-cell{padding:18px 24px;display:flex;gap:12px;border-right:1px solid #dfe8e4}
.trust-cell:last-child{border-right:0}
.round{width:38px;height:38px;border:2px solid var(--teal);border-radius:50%;display:grid;place-items:center;color:var(--teal);font-weight:800;flex:0 0 auto;font-size:.85rem}
.trust-cell h4{margin:0 0 3px;font-size:.83rem}
.trust-cell p{margin:0;color:#6c7b85;font-size:.68rem;line-height:1.45}

/* ---------- newsletter + footer ---------- */
.newsletter{background:linear-gradient(90deg,#105b6d,#0d858b);color:#fff}
.newsletter-inner{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:26px 0}
.newsletter h3{margin:0 0 2px}
.newsletter p{margin:0;font-size:.78rem;opacity:.9}
.signup{display:flex;min-width:450px}
.signup input{flex:1;border:0;border-radius:10px 0 0 10px;padding:14px 16px;font:inherit;font-size:.9rem;min-width:0}
.signup button{border:0;background:var(--coral);color:#fff;font-weight:700;padding:0 22px;border-radius:0 10px 10px 0;cursor:pointer;font-size:.88rem;transition:background .2s ease}
.signup button:hover{background:var(--coral-dark)}
/* Disabled states: visibly unavailable, and structurally unable to submit —
   there is no form element wrapping either control, so there is nothing to post. */
.search.is-disabled,.signup.is-disabled{opacity:.72}
.search.is-disabled input,.signup.is-disabled input{cursor:not-allowed}
.signup.is-disabled input{border-radius:10px 0 0 10px}
.signup-note{display:inline-flex;align-items:center;background:rgba(255,255,255,.18);
  color:#fff;font-weight:700;font-size:.78rem;padding:0 18px;border-radius:0 10px 10px 0;
  white-space:nowrap}
footer{background:#0d2b46;color:#eaf1f3;padding:26px 0}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.footer-links{display:flex;gap:4px 18px;font-size:.75rem;color:#bdd0d8;flex-wrap:wrap}
.footer-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
.footer-links a:hover{color:#fff;text-decoration:underline}
.audit-foot a{display:inline-flex;align-items:center;min-height:44px}

/* ---------- responsive ---------- */
@media(max-width:1180px){
  .main-nav{display:none}.nav{grid-template-columns:auto 1fr}.nav-actions{justify-self:end}
  .site-header .nav > .nav-actions > .search{display:none}
  /* The panel replaces the desktop nav rather than removing navigation.
     :not([hidden]) is load-bearing — an author `display:block` outranks the
     user-agent `[hidden]{display:none}`, so without it the panel renders open
     on every page load and the toggle appears to do nothing. */
  .nav-toggle{display:flex;flex-direction:column}
  .mobile-nav:not([hidden]){display:block}
  .hero-grid{grid-template-columns:1fr}.hero-art{min-height:480px}
  .feature-card{grid-template-columns:1fr}
  .claim-audit-inner{grid-template-columns:1fr;gap:26px}
  .category-grid{grid-template-columns:repeat(3,1fr)}.articles{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .container{width:min(100% - 24px,var(--max))}.newsletter-btn{display:none}.nav{min-height:68px}
  .hero{padding-top:20px}.hero-grid{gap:18px}.hero-copy{padding-left:0}
  .hero h1{font-size:clamp(3rem,15vw,5.3rem)}.hero p{font-size:1rem}
  .hero-art{min-height:420px;border-radius:28px}.hero-script{font-size:1.7rem;left:8%}
  .red-panel{left:55%;width:92px;height:250px}.ring{left:43%;width:58px;height:58px;border-width:14px}
  .mask{left:10%;width:170px;height:82px}.books{display:none}.wall-words{right:5%;font-size:.57rem}
  .claim-audit{padding:30px 24px;border-radius:22px}
  .audit-stats{grid-template-columns:1fr}
  .category-grid{grid-template-columns:repeat(2,1fr)}.articles{grid-template-columns:1fr}
  .trust-strip{grid-template-columns:1fr 1fr}.trust-cell{border-right:0;border-bottom:1px solid #dfe8e4}
  .newsletter-inner{grid-template-columns:1fr}.signup{min-width:0;width:100%}
}
@media(max-width:520px){
  .brand-tag{display:none}.category-grid{grid-template-columns:1fr}.trust-strip{grid-template-columns:1fr}
  .hero-art{min-height:350px}.sun-arch{width:44%}
  .article-card{grid-template-columns:88px 1fr}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
