@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-var.woff2) format('woff2')}
@font-face{font-family:'Caveat';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/caveat-700.woff2) format('woff2')}
/* generated by tools/build_lioness_theme.py from data/products/*.json: edit the data, not this block */
body{--dark:#23272F;--accent:#C2185B;--bright:#F33A6A;--tint:#FFF1F4;--tint2:#FFE3EA;--cta:#00A32E;--ctad:#008A27;--neon:#FFD84D;--glow:#FFE0E8;--hline:#F2E3E8;--wash:#FFF8FA;--dots:#E5C9D2;--dash:#EBD3DB;--caps:#FAD3DD;--sticky-sub:#F7D6DE;--sticky-was:#D4A4B2;--shade:rgba(35,39,47,.18);--hour:#F33A6A;--ink:var(--dark);--ink-2:#3A3F48;--muted:#5B6069;--cream:var(--tint);--cream-2:var(--tint2);--paper:#FFFFFF;--line:#E4DDE2;--serif:Inter,Arial,sans-serif;--sans:Inter,Arial,sans-serif;--font:Inter,Arial,sans-serif;--r:10px}
[data-product="energy"]{--dark:#3B1A10;--accent:#B8502A;--bright:#E8845C;--tint:#FFF3EC;--tint2:#FFE6D8;--cta:#00A32E;--ctad:#008A27;--neon:#FFD84D;--glow:#FFE3D3;--hline:#F1E4DC;--wash:#FFF7F2;--dots:#D9C5BA;--dash:#E2CFC4;--caps:#F4D6C6;--sticky-sub:#F3D9CC;--sticky-was:#C9A99A;--shade:rgba(59,26,16,.18);--hour:#E8845C}
[data-product="focus"]{--dark:#0B3A44;--accent:#1F7A8C;--bright:#1CA0B3;--tint:#EAF6F7;--tint2:#D8EFF2;--cta:#E0245E;--ctad:#BF1B4E;--neon:#FFD84D;--glow:#D3F0F3;--hline:#D9ECEF;--wash:#F2FAFB;--dots:#B9D6DB;--dash:#C7E0E4;--caps:#CDEBEF;--sticky-sub:#CFE9ED;--sticky-was:#9CC3C9;--shade:rgba(11,58,68,.18);--hour:#1F7A8C}
[data-product="sleep"]{--dark:#161A4A;--accent:#2B2F6B;--bright:#7B6FE8;--tint:#F0EFFA;--tint2:#E2DFF7;--cta:#00A32E;--ctad:#008A27;--neon:#FFD84D;--glow:#E2DDFA;--hline:#E6E3F5;--wash:#F7F6FD;--dots:#C3BEE3;--dash:#D6D2EE;--caps:#DCD7F6;--sticky-sub:#DAD6F2;--sticky-was:#A9A3D2;--shade:rgba(22,26,74,.18);--hour:#2B2F6B}
/* The Lioness Rose design system: the components of the approved product pages (Primal Queen's method, approved by the
   owner 2026-09-15). Colours come only from design/tokens.css (generated from data/products/*.json). One definition per
   component; every page type uses these. Change a component here and it changes everywhere. */
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:24px;color:#000;background:#fff;overflow-x:hidden}
img{max-width:100%;display:block}a{color:inherit}
.w{max-width:1120px;margin:0 auto;padding:0 24px;position:relative;z-index:2}.w--n{max-width:860px}
h1,h2,h3,h4{margin:0;color:var(--dark)}p{margin:0 0 14px}
.c{text-align:center}.up{text-transform:uppercase}
.hl{color:var(--bright)}.hl2{color:var(--accent)}
.sec{position:relative;overflow:hidden;padding:64px 0}
.spl{position:absolute;z-index:0;pointer-events:none;max-width:none}
.h2{font-size:52px;line-height:1.12;font-weight:800;text-align:center;letter-spacing:-.01em;margin:0 auto 40px;max-width:1000px}
.h2--w{max-width:900px}.h2--n{max-width:700px}
.h2s{font-size:36px;line-height:1.15;font-weight:700;margin:0 0 14px}
.h3s{font-size:20px;line-height:1.3;font-weight:800;margin:0 0 14px}
.h3b{font-size:29px;line-height:1.25;font-weight:800;margin:0 0 16px}
.h45{font-size:45px;line-height:1.12;font-weight:700;margin:0 0 20px}
.h40{font-size:40px;line-height:1.15;font-weight:700;margin:0 0 22px}
.h33{font-size:33px;line-height:1.2;font-weight:700;margin:26px 0 14px}
.h28{font-size:28px;line-height:1.25;font-weight:700;color:#000}
.sub25{font-size:25px;text-align:center;color:var(--dark);margin:-22px 0 34px}
.stars{color:#FFB400;letter-spacing:1px;font-size:15px}
/* buttons */
.cta-w{position:relative;display:inline-block;margin:10px 0 6px}
.cta-w::before,.cta-w::after{content:"";position:absolute;width:16px;height:16px;border:3px solid var(--cta);z-index:1}
.cta-w::before{top:-8px;right:-8px;border-left:0;border-bottom:0}.cta-w::after{bottom:-8px;left:-8px;border-right:0;border-top:0}
.cta{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;width:430px;max-width:100%;height:60px;padding:0 18px;background:var(--cta);color:#fff;text-decoration:none;font-weight:700;font-size:21px;text-transform:uppercase;box-shadow:0 3px 3px rgba(0,0,0,.2);transition:background .15s,transform .15s}
.cta:hover{background:var(--ctad)}.cta:active{transform:translateY(1px)}
.cta img{width:26px;height:26px}
.cta--full{width:100%}
.cta--ghost{background:var(--dark)}.cta--ghost:hover{background:#000}
.trust{display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;line-height:16px;color:#222;margin-top:10px}
.trust span{display:inline-flex;align-items:center;gap:5px}
.c .trust{justify-content:center}
.pis-h{margin-top:46px}
.ck{width:14px;height:14px;border-radius:50%;background:var(--cta);position:relative;display:inline-block}
.ck::after{content:"";position:absolute;left:4.5px;top:2.5px;width:3px;height:6px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
/* top bar and header */
.topbar{background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 12px;font-weight:800;text-transform:uppercase;font-size:15px}
.cd{display:inline-flex;gap:6px}
.cd div{background:var(--neon);color:var(--dark);border-radius:4px;min-width:46px;text-align:center;padding:3px 4px 2px;line-height:1}
.cd b{display:block;font-size:17px;font-weight:800}.cd i{display:block;font-style:normal;font-size:8.5px;font-weight:700;letter-spacing:.04em;margin-top:2px}
.hdr{background:#fff;border-bottom:1px solid var(--hline);position:sticky;top:0;z-index:30}
.hdr__in{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.logo img{height:40px;width:auto}.logo .logo__wm{height:22px}
.nav{display:flex;gap:28px}.nav a{text-decoration:none;font-size:16px;color:#2E2A39}.nav a:hover{color:var(--accent)}
.cart{position:relative;color:var(--dark)}.cart i{position:absolute;top:-4px;right:-8px;background:var(--bright);color:#fff;font-style:normal;font-size:11px;font-weight:700;border-radius:999px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--tint);padding:40px 0 34px}
.hero__g{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}
.hero__g>*,.belief__g>*,.row>*,.founder__g>*,.love__g>*,.boxes>*,.scar__c>*,.rs>*{min-width:0}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--neon);color:var(--dark);font-size:12.5px;font-weight:700;padding:5px 12px;border-radius:4px;margin-bottom:16px;text-transform:uppercase}
.pill__ic{width:14px;height:14px;border-radius:50%;background:var(--bright);display:inline-block}
.hero h1{font-size:36px;line-height:1.22;font-weight:800;margin:0 0 14px}
.hero h1 .hl{display:inline-block;margin-bottom:4px}
.hero__s{font-size:17px;line-height:1.5;color:#222;margin:0 0 14px;max-width:560px}
.proof{display:flex;align-items:center;gap:6px;font-size:13px;margin-top:10px;flex-wrap:wrap}
.avs{display:inline-flex}.avs img{width:26px;height:26px;border-radius:50%;border:2px solid #fff;margin-left:-8px}.avs img:first-child{margin-left:0}
.tqs{position:relative;margin-top:18px;max-width:430px;min-height:92px}
.tq{position:absolute;inset:0;display:flex;gap:12px;align-items:center;background:#fff;border:2px solid var(--dark);border-radius:10px;padding:12px 14px;opacity:0;transition:opacity .5s}
.tq.is-on{opacity:1}
.tq img{width:44px;height:44px;border-radius:50%;flex:none}
.tq p{font-size:12.5px;line-height:1.4;font-style:italic;margin:0 0 4px;color:#222}
.tq__f{display:flex;align-items:center;gap:6px;font-size:12.5px}.tq__f b{color:var(--accent)}.tq__f .stars{margin-left:auto;font-size:13px}
.vf{width:13px;height:13px;border-radius:50%;background:#1D9BF0;display:inline-block;position:relative}.vf::after{content:"";position:absolute;left:4px;top:2px;width:3px;height:6px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.tq__dots{display:flex;gap:6px;margin:10px 0 0 180px}.tq__dots i{width:7px;height:7px;border-radius:50%;background:var(--dots)}.tq__dots i.is-on{background:var(--dark)}
.hero__m{position:relative;display:flex;justify-content:center}
.arch{width:420px;max-width:100%;aspect-ratio:3/4;border-radius:210px 210px 18px 18px;overflow:hidden;border:4px solid var(--bright);background:var(--tint2);box-shadow:0 18px 40px var(--shade)}
.arch img{width:100%;height:100%;object-fit:cover}
.sticker{position:absolute;right:18px;bottom:40px;width:118px;height:118px;border-radius:50%;background:var(--bright);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:19px;line-height:1.05;transform:rotate(-12deg);box-shadow:0 0 0 5px #fff,0 8px 18px rgba(0,0,0,.18);text-transform:uppercase}
.sticker b{font-size:11px;letter-spacing:.04em;margin-bottom:3px}
.mq{background:var(--dark);overflow:hidden;white-space:nowrap}
.mq__in{display:inline-flex;animation:mq 40s linear infinite}
.mq span{color:var(--neon);font-weight:800;font-size:14px;padding:10px 0;text-transform:uppercase;letter-spacing:.02em}
@keyframes mq{to{transform:translateX(-50%)}}
/* enemy */
.enemy{background:linear-gradient(var(--wash),#fff 40%)}
.row{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;margin:34px 0}
.row--rev .row__m{order:-1}
.row__t p{font-size:16px;line-height:24px}
.frame{position:relative;border:3px solid var(--bright);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.frame img{width:100%;height:100%;object-fit:cover}
.frame--b{border-color:var(--dark)}.frame--d{border-color:var(--dark)}
.scribble{position:absolute;left:18px;bottom:16px;font-family:Caveat,cursive;font-weight:700;font-size:38px;line-height:1;color:var(--neon);text-shadow:0 2px 6px rgba(0,0,0,.55);transform:rotate(-4deg)}
.collage{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:1fr 1fr;gap:10px}
.collage img{width:100%;height:100%;object-fit:cover;border-radius:12px;filter:grayscale(1)}
.collage img:first-child{grid-row:1/3}
.labelbar{display:flex;align-items:center;gap:16px;background:var(--dark);border:3px solid var(--bright);border-radius:10px;padding:12px 18px;color:#fff;margin-top:20px}
.labelbar__ic{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;flex:none}
.labelbar b{font-size:19px;flex:1}
.labelbar a{background:var(--bright);color:#fff;text-decoration:none;font-weight:700;font-size:16px;padding:12px 22px;border-radius:4px;white-space:nowrap}
/* belief */
.belief{background:var(--tint2)}
.belief__g{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.belief p{font-size:15px;line-height:22px}
.belief__m{display:flex;justify-content:center}
.oval{width:440px;max-width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:10px solid var(--bright);box-shadow:0 0 0 6px #fff,0 16px 36px rgba(0,0,0,.15)}
.oval img{width:100%;height:100%;object-fit:cover}
/* timeline */
.tl{background:#fff}
.tl__deco{position:absolute;z-index:1;width:230px;border-radius:14px;box-shadow:0 18px 36px rgba(0,0,0,.18)}
.tl__deco--l{left:-40px;top:520px;transform:rotate(-14deg)}.tl__deco--r{right:-30px;top:1080px;transform:rotate(12deg)}
.tl__l{list-style:none;margin:10px auto 40px;padding:0;max-width:760px;position:relative}
.tl__l::before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:4px;background:var(--dark);transform:translateX(-50%)}
.tl__i{position:relative;width:50%;padding:0 48px 64px}
.tl__i::after{content:"";position:absolute;top:2px;width:30px;height:30px;border-radius:50%;background:var(--dark);box-shadow:0 0 0 6px #fff}
.tl__i--l{margin-right:auto;text-align:right}.tl__i--l::after{right:-15px}
.tl__i--r{margin-left:auto}.tl__i--r::after{left:-15px}
.tl__c h3{display:inline-flex;align-items:center;gap:8px;font-size:26px;font-weight:600;color:#1a1a1a;margin-bottom:8px}
.tl__i--l .tl__c h3{flex-direction:row-reverse}
.tl__c p{font-size:16px;line-height:1.5;color:#222;margin:0}
.fda{font-size:11px;line-height:1.4;color:#444}
.fda--box{border:1px solid #999;padding:6px 10px;max-width:760px;margin:0 auto 22px;text-align:center}
/* how to use */
.how{background:#fff}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative;margin-top:10px}
.steps::before{content:"";position:absolute;top:20px;left:16%;right:16%;border-top:3px dotted var(--dark)}
.step{margin:0;text-align:center;position:relative}
.step__n{display:inline-flex;width:40px;height:40px;border-radius:50%;background:var(--dark);color:#fff;font-weight:800;align-items:center;justify-content:center;box-shadow:0 0 0 4px var(--bright);position:relative;z-index:1;margin-bottom:18px}
.step__img{border:3px solid var(--bright);border-radius:14px;overflow:hidden;aspect-ratio:4/5;background:var(--tint)}
.step__img img{width:100%;height:100%;object-fit:cover}
.step figcaption{font-weight:700;font-size:15px;line-height:1.35;margin-top:12px}
.how__n{text-align:center;font-size:12.5px;color:#444;margin-top:18px}
/* ingredients */
.ingr{background:var(--tint)}
.ings{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:980px;margin:0 auto}
.ing{background:#fff;border:2px solid var(--dark);border-radius:10px;overflow:hidden;box-shadow:0 8px 18px rgba(0,0,0,.08)}
.ing header{display:flex;align-items:center;justify-content:space-between;background:var(--dark);color:#fff;padding:9px 12px;font-size:15px}
.ing__ic{width:26px;height:26px;border-radius:50%;background:var(--neon);display:flex;align-items:center;justify-content:center}
.ing__img{aspect-ratio:16/11;overflow:hidden}.ing__img img{width:100%;height:100%;object-fit:cover}
.ing{display:flex;flex-direction:column}.ing footer{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bright);color:#fff;font-size:11.5px;font-weight:700;text-align:center;padding:7px 8px;letter-spacing:.01em}
.ing__more{text-align:center;font-weight:600;margin:22px 0 4px;color:var(--dark)}
.pis{display:flex;justify-content:center;gap:34px;flex-wrap:wrap;margin-top:6px}
.pi{display:flex;flex-direction:column;align-items:center;gap:8px;width:96px;text-align:center}
.pi__c{width:64px;height:64px;border-radius:50%;background:var(--neon);color:var(--dark);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px var(--dark)}
.pi b{font-size:12.5px;line-height:1.25;font-weight:600}
/* scarcity */
.scar{background:#fff;padding:54px 0 70px}
.scar__c{display:grid;grid-template-columns:1fr 1fr;max-width:900px;margin:0 auto;border:4px solid var(--bright);border-radius:12px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.12)}
.scar__m img{width:100%;height:100%;object-fit:cover}
.scar__t{background:var(--dark);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:28px;text-align:center}
.scar__t p{font-size:27px;line-height:1.3;font-weight:800;margin:0 0 14px}
.scar__t .cta{width:360px;font-size:18px}
/* voices */
.voices{background:#fff}
.fbs{display:flex;flex-direction:column;align-items:center;gap:22px}
.fb{display:flex;gap:10px;width:600px;max-width:100%;background:#242526;border-radius:14px;padding:18px 18px 14px}
.fb>img{width:40px;height:40px;border-radius:50%;flex:none}
.fb__bubble{background:#3A3B3C;border-radius:18px;padding:10px 14px;color:#E4E6EB}
.fb__bubble b{color:#E4E6EB;font-size:14.5px}.blur{filter:blur(4px);color:#E4E6EB}
.fb__bubble p{font-size:15px;line-height:1.35;margin:4px 0 0}
.fb__meta{display:flex;gap:16px;font-size:12.5px;color:#B0B3B8;font-weight:600;padding:6px 10px 0}
.fb__r{margin-left:auto;display:inline-flex;align-items:center;gap:4px}
.like{width:17px;height:17px;border-radius:50%;background:#1877F2;display:inline-block;position:relative}
.like::after{content:"";position:absolute;left:5px;top:4px;width:7px;height:8px;background:#fff;border-radius:1px 3px 1px 1px}
/* founder */
.founder{background:var(--tint)}
.founder__g{display:grid;grid-template-columns:380px 1fr;gap:48px;align-items:start}
.founder__card{position:relative;border-radius:14px;overflow:hidden;background:var(--bright);padding:10px 10px 0}
.founder__card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px 10px 0 0}
.founder__plate{background:var(--dark);color:#fff;text-align:center;padding:10px 8px 12px;margin:0 -10px}
.founder__plate b{display:block;font-size:22px}.founder__plate span{font-size:11px;font-weight:700;letter-spacing:.04em}
.founder__t p{font-size:15px;line-height:22px}
.xs{list-style:none;padding:0;margin:0 0 14px;display:grid;grid-template-columns:1fr 1fr;gap:6px 20px}
.xs li{position:relative;padding-left:22px;font-weight:600;font-size:14.5px}
.xs li::before{content:"✕";position:absolute;left:0;color:#E0245E;font-weight:800}
.dots2{columns:2;margin:0 0 16px;padding-left:20px;font-size:14.5px;line-height:1.8}
.dots1{margin:0 0 0;padding-left:20px;font-size:14.5px;line-height:1.8}
/* love / problem / solution */
.love{background:var(--tint2)}
.love__box{background:var(--tint);border:3px solid var(--bright);border-radius:18px;padding:30px 34px;margin-bottom:10px}
.love__g{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:center}
.checks{list-style:none;margin:0;padding:0}
.checks li{position:relative;padding-left:30px;margin:10px 0;font-size:16px}
.checks li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:5px;background:var(--bright);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.love__ic{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.li{text-align:center}.li img{width:96px;height:96px;border-radius:50%;object-fit:cover;margin:0 auto 6px;border:3px solid #fff;box-shadow:0 4px 12px rgba(0,0,0,.12)}.li b{font-size:13px;font-weight:600}
.sol__h{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
.caps{flex:none;width:54px;height:54px;border-radius:50%;background:var(--bright);position:relative}
.caps::after{content:"";position:absolute;left:14px;top:21px;width:26px;height:12px;border-radius:7px;background:linear-gradient(90deg,#fff 50%,var(--caps) 50%);transform:rotate(-35deg)}
/* magic */
.magic{background:#fff}
.facts{position:relative;max-width:640px;margin:0 auto 34px;background:var(--neon);border:4px solid var(--dark);box-shadow:10px 10px 0 var(--bright);padding:22px 26px 26px}
.facts__u{color:#C1121F;font-weight:800;font-size:17px;line-height:1.3;margin:0 0 12px}
.facts img{background:#fff;border:3px solid var(--dark);margin:0 auto}
.pis--4{gap:48px}
/* buy box */
.buy{position:relative;background:radial-gradient(1200px 500px at 50% 0%,var(--glow),var(--tint) 60%);padding-bottom:0}
.buy__in{padding-top:44px;padding-bottom:40px}
.buy__cd{display:flex;align-items:center;justify-content:center;gap:16px;margin:-18px 0 14px}
.buy__cd .cd div{min-width:64px;padding:8px 6px 6px;background:var(--dark);color:#fff}.buy__cd .cd b{font-size:26px}.buy__cd .cd i{font-size:10px}
.rstk{width:84px;height:84px;border-radius:50%;background:var(--bright);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:15px;line-height:1.05;transform:rotate(-10deg);box-shadow:0 0 0 4px #fff}
.buy__sc{text-align:center;font-size:14px;margin:0 0 26px}
.boxes{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;max-width:900px;margin:0 auto;align-items:start}
.box{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.12)}
.box h3{text-align:center;font-size:32px;line-height:1.1;font-weight:800;padding:14px 10px}
.box--a{border:4px solid var(--bright)}
.box--a .box__top{background:var(--neon);text-align:center;padding:8px;line-height:1.2}.box__top b{display:block;font-size:18px;color:var(--dark)}.box__top span{font-size:14px;color:var(--dark);font-weight:600}
.box--a h3{background:var(--bright);color:#fff}
.box--b{border:3px solid var(--dark);margin-top:34px}
.box--b h3{background:var(--tint2)}
.box__img{background:var(--tint);padding:10px}.box__img img{width:100%;border-radius:8px}
.vl{list-style:none;margin:0;padding:10px 18px}
.vl li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px dashed var(--dash);font-size:15px}
.vl li span:first-child::before{content:"✓ ";color:var(--cta);font-weight:800}
.vl s{color:#999}.vl b{color:var(--dark)}
.box__p{display:flex;align-items:baseline;justify-content:space-between;padding:6px 18px 12px}
.box__p b{font-size:40px;font-weight:800;color:var(--dark)}.box__p span{font-size:14px;color:#555}
.box .cta{margin:0 18px 12px;width:calc(100% - 36px);height:62px}
.bx__t{list-style:none;margin:0;padding:0 18px 18px;font-size:12.5px;color:#333}
.bx__t li{padding:3px 0 3px 20px;position:relative}.bx__t li::before{content:"✓";position:absolute;left:0;color:var(--cta);font-weight:800}
.buy__c{text-align:center;font-size:15px;margin:26px 0 0}.buy__c a{color:var(--dark)}
.buy__bar{background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px;font-weight:800;text-transform:uppercase;font-size:17px}
/* reviews */
.reviews{background:#fff}
.fls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 0 26px}
.fl{border:2px solid var(--dark);border-radius:999px;padding:6px 16px;font-size:14px;font-weight:600;color:var(--dark)}.fl.is-on{background:var(--dark);color:#fff}
.rs{display:grid;grid-template-columns:260px 1fr;gap:30px;align-items:center;max-width:720px;margin:0 auto 30px;border-bottom:1px solid #eee;padding-bottom:26px}
.rs__big{text-align:center}.rs__big b{display:block;font-size:56px;line-height:1;font-weight:800;color:var(--dark)}.rs__big .stars{font-size:22px}.rs__big span{display:block;font-size:13px;color:#555;margin-top:4px}
.ds{display:grid;grid-template-columns:36px 1fr 40px;gap:10px;align-items:center;font-size:13px;margin:4px 0}
.ds i{height:10px;background:#EEE;border-radius:6px;overflow:hidden;display:block}.ds em{display:block;height:100%;background:#FFB400}
.rvs{max-width:820px;margin:0 auto}
.rv{border-bottom:1px solid #eee;padding:18px 0}
.rv__h{display:flex;gap:12px;align-items:center;margin-bottom:6px}
.rv__av{width:42px;height:42px;border-radius:50%;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px;flex:none}
.rv__h b{font-size:15px}.rv__vb{display:inline-block;margin-left:8px;font-size:11px;background:#111;color:#fff;padding:1px 6px;border-radius:3px;vertical-align:2px}
.rv__loc{font-size:12px;color:#666}.rv__h time{margin-left:auto;font-size:12.5px;color:#666}
.rv h4{font-size:15px;margin:6px 0 4px;color:#000}.rv p{font-size:14.5px;line-height:1.5;margin:0;color:#222}.rv__share{font-size:12px;color:#888;margin-top:8px}
/* faq */
.faq{background:#fff}
.faq__l details{border:2px solid var(--dark);border-radius:10px;margin:0 0 12px;background:#fff}
.faq__l summary{list-style:none;cursor:pointer;font-weight:700;font-size:17px;padding:16px 50px 16px 18px;position:relative;color:var(--dark)}
.faq__l summary::-webkit-details-marker{display:none}
.faq__l summary::after{content:"+";position:absolute;right:18px;top:10px;font-size:26px;font-weight:600}
.faq__l details[open] summary::after{content:"–"}
.faq__l details p{padding:0 18px 16px;margin:0;font-size:15px;line-height:1.55;color:#222}
/* footer */
.ftr{background:var(--dark);color:#fff;padding:50px 0 90px}
.ftr__g{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}
.ftr img{height:26px;width:auto;margin-bottom:12px}.ftr h4{color:var(--neon);font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}
.ftr a{display:block;color:#fff;text-decoration:none;font-size:15px;margin:6px 0}
.ftr__l{grid-column:1/-1;font-size:11.5px;color:var(--dots);border-top:1px solid rgba(255,255,255,.18);padding-top:18px;margin-top:10px}
.sticky{display:none}
/* responsive */
@media (max-width:1000px){
  .h2{font-size:40px}.h45{font-size:36px}.h40{font-size:32px}.hero h1{font-size:30px}
  .hero__g,.belief__g,.row,.founder__g,.love__g{grid-template-columns:1fr}.row--rev .row__m{order:0}
  .nav{display:none}.tl__deco{display:none}
}
@media (max-width:640px){
  body{font-size:15px}.w{padding:0 16px}.sec{padding:44px 0}
  .h2{font-size:30px;margin-bottom:26px}.h2s{font-size:28px}.h45{font-size:28px}.h40,.h33{font-size:26px}.h3b{font-size:22px}.h28{font-size:21px}.sub25{font-size:18px;margin-top:-12px}
  .topbar{font-size:11px;gap:8px}.cd div{min-width:36px}.cd b{font-size:14px}
  .hero{padding:22px 0 26px}.hero h1{font-size:26px}.hero__s{font-size:15px}
  .cta-w{display:block}.cta{width:100%;font-size:18px;height:58px}
  .arch{width:300px}.sticker{width:96px;height:96px;font-size:15px;right:6px}
  .tq__dots{margin-left:0;justify-content:center}
  .tl__l::before{left:14px}.tl__i{width:100%;padding:0 0 40px 46px;text-align:left!important}.tl__i::after{left:0!important;right:auto!important}
  .tl__i--l .tl__c h3{flex-direction:row}.tl__c h3{font-size:21px}
  .steps{grid-template-columns:1fr;gap:34px}.steps::before{display:none}
  .ings{grid-template-columns:1fr 1fr;gap:12px}.ing header{font-size:12.5px;padding:7px 8px}.ing__ic{display:none}.ing footer{font-size:10px}
  .pis{gap:14px}.pi{width:90px}
  .scar__c{grid-template-columns:1fr}.scar__t p{font-size:22px}.scar__t .cta{width:100%}
  .labelbar{flex-wrap:wrap}.labelbar a{width:100%;text-align:center}
  .xs,.dots2{grid-template-columns:1fr;columns:1}
  .love__box{padding:22px 18px}.love__ic{grid-template-columns:repeat(3,1fr);gap:10px}.li img{width:76px;height:76px}
  .boxes{grid-template-columns:1fr}.box--b{margin-top:0}
  .buy__cd{gap:8px}.rstk{display:none}.buy__cd .cd div{min-width:54px}.buy__bar{font-size:12px;gap:8px}
  .rs{grid-template-columns:1fr}
  .ftr__g{grid-template-columns:1fr 1fr}.ftr__g>div:first-child{grid-column:1/-1}
  .hero .spl,.magic .spl{display:none}
  .sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--dark);color:#fff;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px}
  .sticky b{display:block;font-size:16px}.sticky span{font-size:11.5px;color:var(--sticky-sub)}.sticky s{color:var(--sticky-was)}
  .sticky a{background:var(--cta);color:#fff;text-decoration:none;font-weight:800;text-transform:uppercase;font-size:14px;padding:12px 16px;box-shadow:0 3px 3px rgba(0,0,0,.25)}
}

/* The Lioness Rose design system, part 2: the pieces the approved product pages did not need but the rest of the site does
   (the menu drawer, the three doors, the home hero, generic page heads, text pages, forms, journal cards). Same tokens,
   same type, same buttons. */

/* menu drawer (phones and tablets) */
.burger{display:none;width:40px;height:40px;border:0;background:none;padding:8px 6px;margin-right:6px;cursor:pointer;color:var(--dark)}
.burger span{display:block;height:2.5px;background:currentColor;margin:5px 0;border-radius:2px}
.drawer{position:fixed;inset:0;z-index:100;display:none}
.drawer.is-open{display:block}
.drawer__bg{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.drawer__p{position:absolute;top:0;left:0;bottom:0;width:min(84vw,340px);background:var(--dark);color:#fff;padding:18px 24px;display:flex;flex-direction:column;overflow-y:auto}
.drawer__x{align-self:flex-end;background:none;border:0;color:#fff;font-size:34px;line-height:1;cursor:pointer;padding:0 4px}
.drawer__p a{color:#fff;text-decoration:none;font-weight:800;font-size:24px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.drawer__p a.drawer__sm{font-size:15px;font-weight:700;color:var(--neon);border:0;padding:9px 0}
@media (max-width:1000px){.burger{display:block}.hdr__in{justify-content:flex-start;gap:2px}.hdr__in .cart{margin-left:auto}}

/* the three doors */
.three{background:var(--tint)}
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1080px;margin:0 auto}
.door{background:#fff;border:4px solid var(--bright);border-radius:14px;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.1);display:flex;flex-direction:column}
.door__img{display:block;background:var(--tint)}
.door__img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.door__b{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.door__hour{align-self:flex-start;background:var(--neon);color:var(--dark);font-size:12px;font-weight:800;letter-spacing:.06em;padding:4px 10px;border-radius:4px}
.door h3{font-size:34px;line-height:1.1;font-weight:800;color:var(--dark);margin:10px 0 6px}
.door p{font-size:15.5px;line-height:1.45;margin:0 0 10px;color:#222}
.door .cta-w{display:block;margin-top:auto}
.door .cta{width:100%;font-size:17px}
@media (max-width:1000px){.doors{grid-template-columns:1fr;max-width:520px}}

/* the home hero */
.hero--home{padding:56px 0 50px}
.home__t{max-width:880px;text-align:center}
.home__t h1{font-size:40px}
.home__t .hero__s{margin:0 auto 16px}
.home__t .proof,.home__t .trust,.home-promise__t .trust{justify-content:center}
.home-promise{background:#fff}
.home-promise__t{margin-top:26px}

/* the footer with the Free Checks column (pages that are not product pages) */
.ftr__g--4{grid-template-columns:1.4fr 1fr 1fr 1fr}
.ftr--check{padding:22px 0 26px}.ftr--check .ftr__l{margin:0;border:0;padding:0;text-align:center}

/* the free checks: an ad landing page, one screen that changes in place (tests/04-src/js/96-check.js) */
.hdr--check{position:static}.hdr--check .hdr__in{justify-content:center}
.chk-wrap{background:var(--tint);padding:28px 16px 56px}
.chk{max-width:480px;margin:0 auto;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.12);font-family:Inter,Arial,sans-serif;color:#111;line-height:1.4}
.chk .c{text-align:center}
.chk__hero img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.chk__pad{padding:18px 22px 24px}
.chk__pill{display:inline-block;background:var(--neon);color:var(--dark);font-weight:800;font-size:12px;letter-spacing:.04em;padding:5px 10px;border-radius:4px}
.chk__h{font-size:30px;line-height:1.14;font-weight:800;color:var(--dark);margin:12px 0 8px;letter-spacing:-.01em}
.chk__h2{font-size:24px;line-height:1.2;font-weight:800;color:var(--dark);margin:12px 0 6px}
.chk__p{font-size:15.5px;line-height:1.45;color:#222;margin:0 0 12px}
.chk__ticks{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13.5px;font-weight:700;color:var(--dark)}
.chk__ticks li::before{content:"\2713  ";color:#00A32E;font-weight:800}
.chk__cta{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:56px;border:0;background:var(--cta);color:#fff;font:700 17px Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.01em;box-shadow:0 3px 3px rgba(0,0,0,.2);cursor:pointer;text-decoration:none}
.chk__cta:hover{background:var(--ctad);color:#fff}
.chk__cta img{width:22px;height:22px}
.chk__cta[hidden],.chk [hidden]{display:none!important}
.chk__fine{font-size:12.5px;color:#555;margin:8px 0 0;text-align:center}
.chk__link{display:block;margin:12px auto 0;background:none;border:0;color:#555;text-decoration:underline;font:500 13.5px Inter,Arial,sans-serif;cursor:pointer}
.chk__step{padding:14px 22px 0}
.chk__step span{font-size:11.5px;font-weight:800;letter-spacing:.08em;color:var(--accent)}
.chk__step i{display:block;height:5px;border-radius:3px;background:var(--tint);margin-top:6px;position:relative;overflow:hidden}
.chk__step i::after{content:"";position:absolute;top:0;bottom:0;left:0;width:var(--w);background:var(--bright)}
.chk__ages{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 4px}
.chk__ages button{height:54px;border:2px solid var(--dark);border-radius:10px;background:#fff;font:800 17px Inter,Arial,sans-serif;color:var(--dark);cursor:pointer}
.chk__ages button:hover{background:var(--tint)}
.chk__words{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}
.chk__words span{background:var(--tint);border:2px solid var(--bright);border-radius:8px;padding:9px 2px;font-weight:800;font-size:12.5px;color:var(--dark);text-transform:uppercase;letter-spacing:.02em}
.chk__timer{height:6px;background:#EEE;border-radius:3px;overflow:hidden;margin:6px 0 4px}
.chk__timer i{display:block;height:100%;width:100%;background:var(--bright);transition:width 1s linear}
.chk__math{font-size:42px;font-weight:800;color:var(--dark);margin:8px 0 12px}
.chk__field input{width:100%;height:54px;border:2px solid var(--dark);border-radius:8px;padding:0 14px;font:500 18px Inter,Arial,sans-serif;text-align:center;margin:0 0 12px;background:#fff;color:#111}
.chk__field input.is-bad,.chk__mail input.is-bad{border-color:#B3261E}
.chk__chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;min-height:30px;margin:0 0 10px}
.chk__chips span{padding:4px 10px;border-radius:14px;font-size:13px;font-weight:700}
.chk__chips .hit{background:var(--tint);color:var(--dark);border:1.5px solid var(--bright)}
.chk__chips .miss{color:#999;border:1.5px solid #DDD;text-decoration:line-through}
.chk__count{font-size:14px;color:#333;margin:0 0 14px}
.chk__rx{display:flex;align-items:center;justify-content:center;width:100%;height:320px;border-radius:14px;background:var(--dark);color:#fff;cursor:pointer;font:800 22px Inter,Arial,sans-serif;margin:10px 0 12px;padding:0 18px;user-select:none;-webkit-user-select:none;touch-action:manipulation;outline:0}
.chk__rx.is-wait{background:var(--dark)}.chk__rx.is-go{background:#00A32E}.chk__rx.is-early{background:#B3261E}.chk__rx.is-done{background:var(--accent)}
.chk__rounds{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;min-height:26px}
.chk__rounds span{background:var(--tint);padding:3px 10px;border-radius:12px;font-weight:700;font-size:13px;color:var(--dark)}
.chk__tap{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:280px;border-radius:14px;background:var(--bright);color:#fff;cursor:pointer;margin:12px 0;user-select:none;-webkit-user-select:none;touch-action:manipulation;outline:0}
.chk__tap.is-go{background:var(--bright)}   /* tests.css has a bare .is-go; the pad keeps its colour while she taps */
.chk__tap b{font-size:84px;line-height:1;font-weight:800}.chk__tap span{font-size:15px;font-weight:700;margin-top:8px}
.chk__clock{font-size:64px;font-weight:800;color:var(--dark);margin:6px 0 14px;line-height:1}
.chk__scale{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 8px}
.chk__scale button{height:62px;border:2px solid var(--dark);border-radius:10px;background:#fff;font:800 24px Inter,Arial,sans-serif;color:var(--dark);cursor:pointer}
.chk__scale button:hover{background:var(--tint)}
.chk__scale-l{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#444}
.chk__form{display:flex;flex-direction:column;gap:7px;margin:12px 0 12px}
.chk__form label{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #E3E3E3;border-radius:10px;padding:7px 10px;font-size:14px;color:#222}
.chk__form input{flex:none;width:96px;height:40px;border:2px solid var(--dark);border-radius:8px;padding:0 8px;font:600 15px Inter,Arial,sans-serif;text-align:right;background:#fff;color:#111}
.chk__form input[type=time]{width:140px}
.chk__err{color:#B3261E}
.chk__card{background:var(--dark);color:#fff;border-radius:16px;padding:16px 14px;margin:4px 0 12px}
.chk__card img{width:132px;height:auto;margin:0 auto 2px;display:block}
.chk__cl{font-size:11.5px;letter-spacing:.14em;font-weight:700;margin:0 0 10px;color:#E6E6E6}
.chk__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:6px}
.chk__stats div{background:rgba(255,255,255,.12);border-radius:10px;padding:8px 4px}
.chk__stats b{display:block;font-size:21px;font-weight:800}.chk__stats span{font-size:11px;color:#E6E6E6}
.chk__verdict{font-size:16.5px;line-height:1.35;font-weight:700;margin:12px 4px 0}
.chk__src{font-size:13px;line-height:1.5;color:#333;text-align:left;margin:0 2px 14px}
.chk__src p{margin:0 0 8px}
.chk__next{font-size:14px;color:#333;margin:0 0 10px;line-height:1.45}
.chk__mail{position:relative;background:var(--tint);border-radius:12px;padding:12px;margin:0 0 4px}
.chk__mh{font-weight:800;color:var(--dark);margin:0 0 8px;font-size:15px}
.chk__mrow{display:flex;gap:6px}
.chk__mail input[type=email]{flex:1;min-width:0;height:46px;border:2px solid var(--dark);border-radius:8px;padding:0 10px;font:500 15px Inter,Arial,sans-serif;background:#fff;color:#111}
.chk__mail button{height:46px;border:0;border-radius:8px;background:var(--cta);color:#fff;font:700 14px Inter,Arial,sans-serif;padding:0 16px;text-transform:uppercase;cursor:pointer}
.chk__mail button:disabled{opacity:.6}
.chk__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.chk__sent{font-weight:800;color:#00873A;margin:2px 0}
.chk__bridge{background:var(--tint);padding:18px 22px 8px;text-align:center;border-top:4px solid var(--bright)}
.chk__bk{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--accent);margin:0 0 6px}
.chk__bridge h3{font-size:20px;line-height:1.22;font-weight:800;color:var(--dark);margin:0 0 12px}
.chk__bimg{width:100%;height:auto;border-radius:12px;margin:0 0 14px;display:block}
.chk__again{margin:10px 0 12px}.chk__again a{color:#555;font-size:13px}
@media (max-width:520px){.chk-wrap{padding:0}.chk{border-radius:0;box-shadow:none}.chk__h{font-size:27px}}
@media (max-width:1000px){.ftr__g--4{grid-template-columns:1fr 1fr}}

/* the label warning under a buy box */
.buy__note{text-align:center;font-size:12px;line-height:1.45;color:#444;max-width:760px;margin:14px auto 0}

/* footer policy links */
.ftr__l a{display:inline;margin:0;font-size:inherit;color:inherit;text-decoration:underline}

/* generic pages: page heads, text, forms, cards */
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;position:relative;z-index:2}
.wrap--narrow{max-width:820px}
.wrap--wide{max-width:1200px}
.sec--paper{background:#fff}
.hero--short{padding:54px 0 46px}
.hero--short h1{font-size:46px;line-height:1.1;letter-spacing:-.01em;color:var(--dark);margin:0 0 12px}
.kicker{display:inline-block;background:var(--neon);color:var(--dark);font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 12px;border-radius:4px;margin:0 0 16px}
.lede{font-size:18px;line-height:1.55;color:#222;max-width:680px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 28px;background:var(--cta);color:#fff;border:0;border-radius:0;text-decoration:none;font:700 17px/1 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.01em;box-shadow:0 3px 3px rgba(0,0,0,.2);cursor:pointer}
.btn:hover{background:var(--ctad);color:#fff}
.btn--ghost{background:#fff;color:var(--dark);box-shadow:inset 0 0 0 2px var(--dark)}
.btn--ghost:hover{background:var(--dark);color:#fff}
.btn--cream{background:#fff;color:var(--dark)}
.btn--sm{height:44px;padding:0 18px;font-size:14px}
.link{color:var(--dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.row-cta{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;margin-top:22px}
.mt{margin-top:22px}
.hint{font-size:13px;color:#555}
.entry{font-size:16px;line-height:1.7;color:#1a1a1a}
.entry h2{font-size:30px;line-height:1.2;font-weight:800;color:var(--dark);margin:34px 0 12px}
.entry h3{font-size:21px;line-height:1.3;font-weight:700;color:var(--dark);margin:26px 0 8px}
.entry a{color:var(--accent);font-weight:600}
.entry ul,.entry ol{padding-left:22px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:2px solid var(--dark);border-radius:10px;overflow:hidden}
.card__body{padding:16px 18px 20px}
.card__meta{font-size:12px;color:#666}
.card__title{font-size:21px;line-height:1.25;font-weight:800;margin:6px 0 8px}
.card__title a{color:var(--dark);text-decoration:none}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],select,textarea{font-family:Inter,Arial,sans-serif}
@media (max-width:640px){.hero--short h1{font-size:32px}.home__t h1{font-size:27px}.cards{grid-template-columns:1fr}.wrap{padding:0 16px}}

/* the tests hub list, section heads, number tiles, forms, text blocks */
.sec__head{max-width:760px;margin:0 0 40px}
.sec__head .lede{margin-top:14px}
.sec__head--c{margin:0 auto 40px;text-align:center}
.lede--c{margin:0 auto}
.tests{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.test{background:#fff;border:2px solid var(--dark);border-radius:10px;padding:24px 24px 22px;display:flex;flex-direction:column;gap:8px;min-height:200px;text-decoration:none;color:inherit;box-shadow:0 8px 18px rgba(0,0,0,.06);transition:transform .15s}
.test:hover{transform:translateY(-2px)}
.test__n{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--bright)}
.test h3{font-size:24px;line-height:1.2;font-weight:800;color:var(--dark);margin:0}
.test p{margin:0;color:#333;font-size:15px;line-height:1.45}
.test__t{margin-top:auto;font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dark)}
.tests--list{grid-template-columns:1fr}
.test--row{flex-direction:row;align-items:center;gap:20px;min-height:0;padding:18px 22px}
.test--row h3{font-size:21px;margin-bottom:2px}
.test--row .test__t{margin:0 0 0 auto;white-space:nowrap;background:var(--cta);color:#fff;padding:10px 16px;box-shadow:0 3px 3px rgba(0,0,0,.2)}
.chart{background:#fff;border:2px solid var(--dark);border-radius:10px;padding:18px 18px 8px;margin-bottom:18px}
.nums{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.num{background:#fff;border:2px solid var(--dark);border-radius:10px;padding:18px 20px}
.num__t{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--bright)}
.num b{display:block;font-weight:800;font-size:36px;line-height:1.1;margin:8px 0 4px;color:var(--dark)}
.num__d{display:block;font-size:14px;color:#333}
.form{display:flex;flex-direction:column;gap:12px;max-width:440px;margin:26px 0 16px}
.form label{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dark)}
.form input{height:56px;border:2px solid var(--dark);border-radius:0;background:#fff;padding:0 16px;font:400 17px Inter,Arial,sans-serif;color:#111}
.form .btn,.form button{width:100%}
.prose{max-width:66ch;margin-top:26px;font-size:17px;line-height:1.65}
.prose p{margin:0 0 16px}
.signin h1{line-height:1.1}
@media (max-width:1000px){.tests,.nums{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.tests,.nums{grid-template-columns:1fr}.test--row{flex-wrap:wrap}.test--row .test__t{margin:6px 0 0}}

/* ==== articles (2026-09-16): the list, a topic, search, an article; functions-articles.php ==== */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.art-head{position:relative;overflow:hidden;background:var(--tint);padding:46px 0 36px;text-align:center}
.art-head__in{max-width:920px;margin:0 auto}
.art-head__h{font-size:46px;line-height:1.1;font-weight:800;color:var(--dark);margin:14px auto 10px;letter-spacing:-.01em}
.art-head__s{font-size:19px;line-height:1.5;color:#222;max-width:680px;margin:0 auto 6px}
.art-head__s p{margin:0}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;font-size:13px;color:#555;margin:0 0 12px}
.crumbs a{color:var(--dark);text-decoration:none;font-weight:600}.crumbs a:hover{text-decoration:underline}
.art-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:22px 0 14px}
.art-pills a{padding:8px 18px;border-radius:999px;border:2px solid var(--dark);background:#fff;color:var(--dark);font-weight:700;font-size:14px;text-decoration:none}
.art-pills a:hover{background:var(--tint2)}.art-pills a.is-on{background:var(--dark);color:#fff}
.art-search{display:flex;max-width:460px;margin:0 auto;border:2px solid var(--dark);background:#fff}
.art-search input{flex:1;min-width:0;height:48px;border:0;padding:0 14px;font:500 16px Inter,Arial,sans-serif;background:#fff;color:#111}
.art-search button{border:0;background:var(--cta);color:#fff;font:700 14px Inter,Arial,sans-serif;text-transform:uppercase;padding:0 18px;cursor:pointer}
.art-search button:hover{background:var(--ctad)}
.art-list{background:#fff}
.art-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.art-card{display:flex;flex-direction:column;background:#fff;border:2px solid var(--dark);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.07);transition:transform .15s}
.art-card:hover{transform:translateY(-3px)}
.art-card[data-product]{border-color:var(--bright)}
.art-card__img{display:block;background:var(--tint)}
.art-card__img img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.art-card__b{display:flex;flex-direction:column;gap:9px;padding:16px 18px 18px;flex:1}
.art-pill{align-self:flex-start;display:inline-block;background:var(--neon);color:var(--dark);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:4px;text-decoration:none}
.art-card__t{font-size:21px;line-height:1.25;font-weight:800;margin:0}
.art-card__t a{color:var(--dark);text-decoration:none}.art-card__t a:hover{color:var(--accent)}
.art-card__x{font-size:15px;line-height:1.5;color:#333;margin:0}
.art-card__m{font-size:13px;color:#666;margin:auto 0 0}
.art-card--big{display:grid;grid-template-columns:1.2fr 1fr;border-width:3px;border-color:var(--bright);margin:0 0 30px}
.art-card--big .art-card__img img{height:100%;aspect-ratio:16/10}
.art-card--big .art-card__b{padding:28px 30px;justify-content:center;gap:12px}
.art-card--big .art-card__t{font-size:32px;line-height:1.15}
.art-card--big .art-card__x{font-size:17px}
.art-card--big .art-card__m{margin:0}
.art-more{align-self:flex-start;display:inline-flex;align-items:center;background:var(--cta);color:#fff;font-weight:700;font-size:15px;text-transform:uppercase;padding:13px 22px;text-decoration:none;box-shadow:0 3px 3px rgba(0,0,0,.2)}
.art-more:hover{background:var(--ctad);color:#fff}
.art-pager{display:flex;justify-content:center;gap:8px;margin-top:34px;flex-wrap:wrap}
.art-pager .page-numbers{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:2px solid var(--dark);border-radius:8px;color:var(--dark);font-weight:700;text-decoration:none;background:#fff}
.art-pager .page-numbers.current{background:var(--dark);color:#fff}
.art-empty{text-align:center;padding:10px 0}.art-empty p{font-size:17px;color:#333}
.art-checks{background:var(--tint)}
.art-checks__g{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.art-check{display:flex;flex-direction:column;gap:8px;background:#fff;border:3px solid var(--bright);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--dark);padding-bottom:16px;box-shadow:0 12px 26px rgba(0,0,0,.08)}
.art-check img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;margin-bottom:6px}
.art-check__k{align-self:flex-start;margin:0 16px;background:var(--neon);font-size:11.5px;font-weight:800;padding:4px 9px;border-radius:4px}
.art-check b{font-size:22px;font-weight:800;margin:0 16px}
.art-check__go{margin:0 16px;font-weight:700;color:var(--accent)}
.art-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:60;pointer-events:none}
.art-progress i{display:block;height:100%;width:0;background:var(--bright)}
.art-head--post{text-align:left;padding-bottom:30px}
.art-head--post .art-head__in{max-width:820px}
.art-head--post .crumbs{justify-content:flex-start}
.art-title{font-size:48px;line-height:1.1;font-weight:800;color:var(--dark);margin:12px 0;letter-spacing:-.01em}
.art-dek{font-size:21px;line-height:1.45;color:#222;margin:0 0 14px}
.art-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;font-weight:600;color:#444;margin:0}
.art-meta span+span::before{content:"\2022";margin-right:18px;color:var(--bright)}
.art-hero{margin:28px auto 0;max-width:1120px}
.art-hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:16px;display:block;box-shadow:0 18px 40px rgba(0,0,0,.12)}
.art-hero figcaption{font-size:13px;color:#555;text-align:center;margin-top:8px}
.art-layout{display:grid;grid-template-columns:minmax(0,740px) 280px;gap:56px;justify-content:center;padding-top:40px;padding-bottom:10px}
.art-side{align-self:start;position:sticky;top:96px}
.art-toc{background:var(--tint);border-radius:12px;border-left:5px solid var(--bright);padding:16px 18px}
.art-toc p,.art-toc summary{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;cursor:pointer}
.art-toc ol{margin:0;padding-left:20px;font-size:14.5px;line-height:1.45}
.art-toc li{margin:0 0 8px}.art-toc li::marker{color:var(--bright);font-weight:800}
.art-toc a{color:var(--dark);text-decoration:none}.art-toc a:hover{color:var(--accent);text-decoration:underline}
.art-toc--m{display:none}
.art-side__check{display:block;margin-top:18px;background:var(--dark);color:#fff;border-radius:12px;padding:16px 18px;text-decoration:none}
.art-side__check span{display:inline-block;background:var(--neon);color:var(--dark);font-size:11px;font-weight:800;padding:3px 8px;border-radius:4px}
.art-side__check b{display:block;font-size:20px;font-weight:800;margin:8px 0 6px}
.art-side__check em{font-style:normal;font-weight:700;color:var(--neon)}
.art-body{font-size:18px;line-height:1.75;color:#1b1b1b}
.art-body>p:first-child{font-size:20px;line-height:1.65}
.art-body p{margin:0 0 20px}
.art-body h2{font-size:32px;line-height:1.2;font-weight:800;color:var(--dark);margin:46px 0 14px;scroll-margin-top:96px}
.art-body h3{font-size:23px;line-height:1.3;font-weight:800;color:var(--dark);margin:32px 0 10px;scroll-margin-top:96px}
.art-body h4{font-size:19px;font-weight:800;color:var(--dark);margin:26px 0 8px}
.art-body a{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.art-body ul,.art-body ol{padding-left:24px;margin:0 0 22px}
.art-body li{margin:0 0 10px}
.art-body ul li::marker{color:var(--bright)}.art-body ol li::marker{color:var(--accent);font-weight:800}
.art-body blockquote{margin:32px 0;padding:6px 0 6px 22px;border-left:5px solid var(--bright);font-size:22px;line-height:1.45;font-weight:600;color:var(--dark)}
.art-body blockquote p{margin:0 0 8px}.art-body blockquote cite{display:block;font-size:14px;font-style:normal;font-weight:600;color:#555}
.art-body .wp-block-pullquote{border-top:4px solid var(--bright);border-bottom:4px solid var(--bright);padding:22px 0;margin:36px 0;text-align:center}
.art-body .wp-block-pullquote blockquote{border:0;padding:0;margin:0}.art-body .wp-block-pullquote p{font-size:27px;line-height:1.3;font-weight:800}
.art-body figure{margin:30px 0}.art-body img{max-width:100%;height:auto;border-radius:12px}
.art-body figcaption{font-size:14px;color:#555;text-align:center;margin-top:8px}
.art-body .wp-block-table{overflow-x:auto;margin:30px 0;border:2px solid var(--dark);border-radius:12px}
.art-body .wp-block-table table{margin:0}.art-body .wp-block-table thead{border:0}
.art-body .wp-block-table td,.art-body .wp-block-table th{border:0;border-bottom:1px solid #E6E1E4;padding:11px 14px}
.art-body .wp-block-table th{border-bottom:0}.art-body .wp-block-table tr:last-child td{border-bottom:0}
.art-body table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5;margin:26px 0}
.art-body th{background:var(--dark);color:#fff;text-align:left;padding:10px 12px;font-weight:700}
.art-body td{padding:10px 12px;border-bottom:1px solid #E6E1E4;vertical-align:top}
.art-body tr:nth-child(even) td{background:var(--wash)}
.art-body hr{border:0;border-top:3px dotted var(--dots);margin:40px 0}
.art-body mark{background:var(--neon);color:inherit;padding:0 3px}
.art-body .takeaways,.art-body .is-style-takeaways{background:var(--tint);border:3px solid var(--bright);border-radius:14px;padding:18px 22px 4px;margin:30px 0}
.art-body .takeaways>:first-child,.art-body .takeaways .wp-block-group__inner-container>:first-child{margin-top:0}
.art-body .takeaways ul{margin-bottom:14px}
.art-body .wp-block-button__link{display:inline-flex;background:var(--cta);color:#fff;border-radius:0;font-weight:700;text-transform:uppercase;text-decoration:none;padding:14px 24px;box-shadow:0 3px 3px rgba(0,0,0,.2)}
.art-fda{margin:34px 0 0}
.art-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:22px 0 10px}
.art-share span{font-weight:800;color:var(--dark);margin-right:6px}
.art-share a,.art-share button{padding:8px 15px;border:2px solid var(--dark);border-radius:999px;background:#fff;color:var(--dark);font:700 14px Inter,Arial,sans-serif;text-decoration:none;cursor:pointer}
.art-share a:hover,.art-share button:hover{background:var(--tint)}
.art-cta{display:grid;grid-template-columns:230px 1fr;gap:22px;align-items:stretch;background:var(--tint);border:3px solid var(--bright);border-radius:16px;overflow:hidden;margin:40px 0}
.art-cta>img{width:100%;height:100%;min-height:220px;object-fit:cover;display:block;border-radius:0}
.art-cta__b{padding:20px 22px 20px 0;display:flex;flex-direction:column;justify-content:center}
.art-cta__b p{margin:0 0 8px;font-size:15.5px;line-height:1.5;color:#222}
.art-cta .art-cta__k{font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--accent)}
.art-cta .art-cta__h{font-size:24px;line-height:1.2;font-weight:800;color:var(--dark);margin:6px 0 8px}
.art-cta .pill{align-self:flex-start;margin:0}
.art-cta .cta-w{align-self:flex-start;margin-top:8px}.art-cta .cta{width:380px;max-width:100%;height:54px;font-size:16px}
.art-body .art-cta a.cta{color:#fff;text-decoration:none;font-weight:700}.art-body .art-cta>img{border-radius:0}
.art-cta .trust{justify-content:flex-start;margin-top:6px}
.art-cta--product{grid-template-columns:320px 1fr;background:#fff}
.art-end{background:#fff;padding-top:6px}
.art-related{background:var(--tint)}.art-related .h40{text-align:center;margin-bottom:28px}
@media (max-width:1000px){.art-layout{grid-template-columns:minmax(0,1fr);gap:0}.art-side{display:none}.art-toc--m{display:block;margin:0 0 20px}
  .art-grid3,.art-checks__g{grid-template-columns:1fr 1fr}.art-card--big{grid-template-columns:1fr}.art-card--big .art-card__img img{aspect-ratio:16/9}}
@media (max-width:640px){.art-head{padding:30px 0 26px}.art-head__h,.art-title{font-size:31px}.art-dek{font-size:18px}.art-meta span:first-child{flex-basis:100%}.art-meta span:nth-child(2)::before{display:none}.art-body{font-size:17px}.art-body>p:first-child{font-size:18px}.art-body h2{font-size:26px}
  .art-grid3,.art-checks__g{grid-template-columns:1fr}.art-card--big .art-card__t{font-size:25px}.art-card--big .art-card__b{padding:18px}
  .art-cta,.art-cta--product{grid-template-columns:1fr}.art-cta>img{min-height:0;height:auto;aspect-ratio:16/9}.art-cta .cta-w{align-self:stretch}.art-cta .cta{width:100%}.art-cta__b{padding:0 18px 20px}}

/* ==== our quality standards (2026-09-16): page-quality.php ==== */
.qhero{position:relative;overflow:hidden;background:var(--tint);padding:50px 0 46px}
.qhero__g{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center}
.qhero h1{font-size:42px;line-height:1.14;font-weight:800;color:var(--dark);margin:14px 0 12px;letter-spacing:-.01em}
.qhero .hero__s{font-size:18px;line-height:1.55;margin:0 0 18px}
.qhero__m img{width:100%;height:auto;border-radius:16px;border:5px solid #fff;box-shadow:0 22px 44px rgba(0,0,0,.16);display:block}
.qstats{background:var(--dark);color:#fff;padding:28px 0}
.qstats__g{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
.qstat b{display:block;font-size:50px;line-height:1;font-weight:800;color:var(--neon)}
.qstat span{display:block;font-size:14.5px;margin-top:8px;color:#EDEDED}
.qsplit{display:grid;grid-template-columns:1.35fr 1fr;gap:44px;align-items:center}
.qsplit__t .h40{text-align:left;margin:0 0 16px}
.qsplit__t p{font-size:18px;line-height:1.6;color:#222;margin:0 0 14px}
.qbadge{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--tint);border:4px solid var(--bright);border-radius:18px;padding:30px 24px;text-align:center}
.qbadge .pi{width:auto}.qbadge .pi b{display:none}.qbadge .pi__c{width:120px;height:120px;box-shadow:inset 0 0 0 3px var(--dark)}
.qbadge b{font-size:28px;font-weight:800;color:var(--dark)}.qbadge span{font-size:14.5px;color:#333}
.qlabel{background:var(--wash)}
.qlead{font-size:18px;line-height:1.6;color:#222;max-width:860px;margin:-18px auto 30px;text-align:center}
.qother{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.qother__c{display:flex;flex-direction:column;background:#fff;border:3px solid var(--bright);border-radius:14px;overflow:hidden}
.qother__c img{width:100%;height:280px;object-fit:contain;background:#fff;padding:12px;border-bottom:2px solid var(--tint2)}
.qother__c>div{padding:14px 18px 18px}
.qother__c h3{font-size:22px;font-weight:800;color:var(--dark);margin:0 0 6px}
.qother__l{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 4px}
.qother__c p{margin:0;font-size:15.5px;line-height:1.5}
.qmatrix{background:#fff}
.qtable{overflow-x:auto;border-radius:14px;border:2px solid var(--dark);box-shadow:0 14px 32px rgba(0,0,0,.08)}
.qtable table{width:100%;border-collapse:collapse;min-width:520px;background:#fff}
.qtable thead th{background:var(--dark);color:#fff;font-size:16px;font-weight:800;padding:14px 10px;text-align:center}
.qtable thead th[data-product]{background:var(--accent)}
.qtable tbody th{display:flex;align-items:center;gap:10px;text-align:left;font-size:15.5px;font-weight:700;color:var(--dark);padding:10px 14px}
.qtable td{text-align:center;padding:10px;border-left:1px solid #EEE}
.qtable tbody tr:nth-child(even){background:#FAFAFA}
.qtable tbody tr+tr th,.qtable tbody tr+tr td{border-top:1px solid #EEE}
.qtable__i{display:inline-flex;flex:none;width:40px;justify-content:center;color:var(--dark)}
.qtable__i .pi{width:auto;gap:0}.qtable__i .pi b{display:none}.qtable__i .pi__c{width:40px;height:40px;box-shadow:inset 0 0 0 1.5px var(--dark)}
.qyes{display:inline-flex;width:30px;height:30px;border-radius:50%;background:#00A32E;color:#fff;align-items:center;justify-content:center;font-style:normal;font-weight:800;font-size:16px}
.qno{font-style:normal;font-size:22px;color:#AAA}
.qnote{text-align:center;font-size:14.5px;color:#444;margin:14px 0 0}
.qnature{background:var(--tint)}
.qnature__g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.qnature__c h3{font-size:20px;font-weight:800;color:var(--dark);text-align:center;margin:0 0 12px}
.qnature__c .ings{grid-template-columns:1fr 1fr;gap:10px;max-width:none}
.qnature .ing header{font-size:12.5px;padding:7px 8px}.qnature .ing__ic{display:none}.qnature .ing footer{font-size:10px}
.qrules{background:#fff}
.qrules__g{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.qrule{background:#fff;border:2px solid var(--dark);border-radius:14px;padding:20px 20px 16px;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.qrule__n{display:inline-flex;width:36px;height:36px;border-radius:50%;background:var(--dark);color:#fff;align-items:center;justify-content:center;font-weight:800;box-shadow:0 0 0 4px var(--bright);margin:4px 0 14px 4px}
.qrule h3{font-size:20px;font-weight:800;color:var(--dark);margin:0 0 6px}
.qrule p{font-size:15px;line-height:1.5;color:#222;margin:0}
.qpromise{background:var(--tint)}
.qpromise .trust{justify-content:center}
@media (max-width:1000px){.qhero__g,.qsplit{grid-template-columns:1fr}.qother,.qnature__g{grid-template-columns:1fr}.qrules__g{grid-template-columns:1fr 1fr}.qstats__g{grid-template-columns:1fr 1fr}.qnature__c .ings{grid-template-columns:repeat(4,1fr)}}
@media (max-width:640px){.qhero h1{font-size:30px}.qstat b{font-size:38px}.qrules__g{grid-template-columns:1fr}.qnature__c .ings{grid-template-columns:1fr 1fr}.qother__c img{height:220px}
  .qtable table{min-width:0}.qtable thead th{font-size:13px;padding:10px 4px}.qtable tbody th{font-size:13.5px;padding:8px;gap:8px}.qtable td{padding:8px 4px}
  .qtable__i{width:30px}.qtable__i .pi__c{width:30px;height:30px}.qtable__i svg{width:24px;height:24px}.qyes{width:26px;height:26px;font-size:14px}}

/* ==== the contact form (2026-09-16): page-contact.php, functions-contact.php ==== */
.cform-sec{background:#fff}
.cform-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:start}
.cform-card{background:#fff;border:3px solid var(--bright);border-radius:18px;padding:26px 26px 22px;box-shadow:0 18px 40px rgba(0,0,0,.08);scroll-margin-top:96px}
.cform-h{font-size:26px;line-height:1.2;font-weight:800;color:var(--dark);margin:0 0 16px}
.cform label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--dark);margin:0 0 14px}
.cform label small{font-weight:500;color:#555}
.cform-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cform input[type=text],.cform input[type=email],.cform select,.cform textarea{width:100%;border:2px solid var(--dark);border-radius:8px;padding:12px 14px;font:500 16px Inter,Arial,sans-serif;color:#111;background:#fff}
.cform textarea{resize:vertical;min-height:150px;line-height:1.5}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:3px solid var(--tint2);border-color:var(--accent)}
.cform-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:58px;border:0;background:var(--cta);color:#fff;font:700 18px Inter,Arial,sans-serif;text-transform:uppercase;box-shadow:0 3px 3px rgba(0,0,0,.2);cursor:pointer}
.cform-btn:hover{background:var(--ctad)}.cform-btn:disabled{opacity:.6}.cform-btn img{width:22px;height:22px}
.cform-err{background:#FDECEC;color:#8A1C1C;border-radius:8px;padding:10px 12px;font-size:14px;margin:0 0 14px}
.cform-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.cform-fine{font-size:12.5px;color:#555;text-align:center;margin:10px 0 0}
.cform-done{text-align:center;padding:24px 6px}
.cform-done__i{display:inline-flex;width:64px;height:64px;border-radius:50%;background:#00A32E;color:#fff;font-size:34px;align-items:center;justify-content:center;margin-bottom:12px}
.cform-done h2{font-size:26px;font-weight:800;color:var(--dark);margin:0 0 8px}.cform-done p{font-size:16px;color:#333}
.cform-side{background:var(--tint);border-radius:16px;padding:6px 24px 18px}
.cform-side h2{font-size:22px;margin:20px 0 8px}
@media (max-width:1000px){.cform-grid{grid-template-columns:1fr}}
@media (max-width:640px){.cform-row{grid-template-columns:1fr;gap:0}.cform-card{padding:20px 18px}}


/* ===== The tests v2 =====================================================================
   One motif: a coral signal travelling a teal nerve. It is the countdown, the progress bar, the
   score gauge, and the first picture in the bridge to the product. */

.test-hero { position: relative; overflow: hidden; background: linear-gradient(180deg, #F5EFE6 0%, #EDE5D8 55%, #FFFDF9 100%); padding: 26px 0 46px; }
@media (min-width: 900px) { .test-hero { padding: 44px 0 66px; } }
.test-hero .wrap { position: relative; z-index: 2; }
.neural { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.85; pointer-events: none; }
.splash--test-1 { right: -220px; top: -220px; width: 520px; opacity: 0.75; }
.splash--test-2 { left: -240px; bottom: -240px; width: 520px; opacity: 0.45; }

.test-kicker { display: inline-block; background: var(--plum); color: var(--yellow); font-weight: 800; font-size: 12px; letter-spacing: 1.6px; padding: 8px 14px; border-radius: 3px; margin-bottom: 16px; }
.test-h1 { font-size: 33px; font-weight: 800; line-height: 1.12; color: var(--plum); margin: 0 0 14px; text-align: center; letter-spacing: -0.5px; }
@media (min-width: 900px) { .test-h1 { font-size: 58px; } }
.test-h1 em { font-style: normal; color: var(--violet); }
.test-sub { font-size: 17px; line-height: 1.5; text-align: center; max-width: 660px; margin: 0 auto 22px; }
@media (min-width: 900px) { .test-sub { font-size: 21px; } }
.test-hero__head { text-align: center; }
.test-meta { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px 20px; font-size: 14px; font-weight: 600; margin-bottom: 22px; }
.mute { display: inline-flex; align-items: center; gap: 6px; background: none; border: 2px solid rgba(35,39,47,0.22); color: var(--plum); border-radius: 999px; padding: 5px 12px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.mute:hover { border-color: var(--plum); }
.mute .mute__off { display: none; } .mute.is-muted .mute__on { display: none; } .mute.is-muted .mute__off { display: inline; } .mute.is-muted { opacity: 0.55; }

/* Challenge banner (?vs=) */
.challenge { display: flex; align-items: center; gap: 14px; max-width: 620px; margin: 0 auto 24px; background: var(--plum); color: #fff; border-radius: 14px; padding: 14px 18px; text-align: left; box-shadow: 0 12px 30px rgba(35,39,47,0.18); }
.challenge img { width: 44px; height: auto; flex: none; }
.challenge b { display: block; font-size: 18px; color: var(--yellow); line-height: 1.2; margin-bottom: 3px; }
.challenge span { font-size: 14px; opacity: 0.9; line-height: 1.35; }

/* ---- The signal line (rounds / steps) --------------------------------------------------------- */
.sig-wrap { flex: 1; max-width: 280px; margin: 0 14px; }
.sig { display: block; width: 100%; height: 38px; overflow: visible; }
.sig__fibre { fill: none; stroke: rgba(255,255,255,0.28); stroke-width: 3; stroke-linecap: round; }
.sig__lit { fill: none; stroke: var(--yellow); stroke-width: 3; stroke-linecap: round; }
.sig__dot { fill: rgba(255,255,255,0.18); stroke: rgba(255,255,255,0.4); stroke-width: 1.5; transition: fill 300ms; }
.sig__num { font-family: var(--font); font-size: 11px; font-weight: 800; fill: rgba(255,255,255,0.75); }
.sig__st.is-done .sig__dot { fill: var(--yellow); stroke: var(--yellow); }
.sig__st.is-done .sig__num { fill: var(--plum); }
.sig__st.has-label .sig__num { font-size: 9px; }
.sig__st.is-now .sig__dot { fill: var(--violet); stroke: #fff; }
.sig__pulse { fill: var(--violet); }
.stage__top .sig__fibre { stroke: rgba(35,39,47,0.16); }
.stage__top .sig__dot { fill: rgba(35,39,47,0.1); stroke: rgba(35,39,47,0.25); }
.stage__top .sig__num { fill: rgba(35,39,47,0.6); }
.stage__top .sig__lit { stroke: var(--violet); }
.stage__top .sig__st.is-done .sig__dot { fill: var(--violet); stroke: var(--violet); }
.stage__top .sig__st.is-done .sig__num { fill: #fff; }

/* Waiting ring: the pulse circles while you wait for green */
.ring-wrap { width: 108px; height: 108px; margin: 0 auto 10px; }
.sigring { width: 100%; height: 100%; }
.sigring__track { fill: none; stroke: rgba(255,255,255,0.16); stroke-width: 6; }
.sigring__arc { fill: none; stroke: rgba(255,255,255,0.3); stroke-width: 6; stroke-dasharray: 40 274; stroke-linecap: round; transform-origin: 60px 60px; animation: sigspin 1.6s linear infinite; }
.sigring__pulse { fill: var(--violet); transform-origin: 60px 60px; animation: sigspin 1.6s linear infinite; }
@keyframes sigspin { to { transform: rotate(360deg); } }

/* ---- Game stage -------------------------------------------------------------------------------- */
.stage { max-width: 780px; margin: 0 auto; background: #fff; border: 3px solid var(--violet); border-radius: 20px; box-shadow: 0 18px 44px rgba(35,39,47,0.16); overflow: hidden; position: relative; }
.stage__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 11px 18px; background: var(--lilac-2); font-weight: 700; font-size: 14px; color: var(--plum); }
.stage__top b { font-weight: 800; }
.stage__timer { font-variant-numeric: tabular-nums; font-weight: 800; }
.stage__pad { min-height: 340px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 28px 22px; -webkit-user-select: none; user-select: none; transition: background 140ms; }
@media (min-width: 900px) { .stage__pad { min-height: 430px; } }
.stage__pad h3 { font-size: 28px; font-weight: 800; margin: 0 0 10px; line-height: 1.14; color: var(--plum); letter-spacing: -0.3px; }
@media (min-width: 900px) { .stage__pad h3 { font-size: 38px; } }
.stage__pad p { font-size: 16.5px; margin: 0 0 18px; max-width: 500px; }
.stage__obj { width: 140px; height: auto; margin: -6px auto 10px; filter: drop-shadow(0 10px 18px rgba(35,39,47,0.18)); }
@media (min-width: 900px) { .stage__obj { width: 168px; } }
.stage__note { font-size: 13px !important; color: var(--gray); margin: 12px 0 0 !important; }
.stage__big { font-size: 68px; font-weight: 900; line-height: 1; color: var(--violet); letter-spacing: -2px; font-variant-numeric: tabular-nums; }
@media (min-width: 900px) { .stage__big { font-size: 94px; } }
.stage__big small { font-size: 22px; font-weight: 700; color: var(--plum); letter-spacing: 0; }

/* Playing: the stage takes the screen, so the whole screen is the button. */
.stage.is-playing { position: fixed; inset: 0; z-index: 120; max-width: none; border: 0; border-radius: 0; box-shadow: none; display: flex; flex-direction: column; }
.stage.is-playing .stage__pad { flex: 1; min-height: 0; cursor: pointer; overflow-y: auto; justify-content: center; }
.stage.is-playing .stage__top { padding: 14px 20px; }
body.sq-playing { overflow: hidden; }

/* Reflex states */
.stage--reflex .stage__pad { cursor: pointer; }
.is-ready { background: var(--lilac); }
.is-wait { background: var(--plum); color: #fff; }
.is-wait h3, .is-wait p { color: #fff; }
.is-go { background: var(--lime-deep); color: #fff; position: relative; overflow: hidden; }
.is-go h3 { color: #fff; font-size: 58px; letter-spacing: 4px; }
@media (min-width: 900px) { .is-go h3 { font-size: 96px; } }
.go-flash { position: absolute; left: 50%; top: 50%; width: 320px; height: 320px; margin: -160px 0 0 -160px; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,0.95) 0%, rgba(255,255,255,0) 70%); pointer-events: none; }
.is-early { background: var(--violet-deep); color: #fff; }
.is-early h3, .is-early p { color: #fff; }
.is-result { background: var(--lilac); }
.is-scoring { background: var(--lilac-2); }

/* ---- Word test: the cards ---------------------------------------------------------------------- */
.wordwall { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; width: 100%; max-width: 580px; margin: 6px auto 0; perspective: 900px; }
@media (min-width: 700px) { .wordwall { grid-template-columns: repeat(5, 1fr); gap: 10px; } }
.wcard { position: relative; display: block; aspect-ratio: 5 / 3.4; transform-style: preserve-3d; transition: transform 450ms cubic-bezier(0.4, 0, 0.2, 1); }
.wcard > i { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; border-radius: 10px; font-style: normal; font-weight: 800; font-size: 14px; text-transform: uppercase; letter-spacing: 0.3px; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
@media (min-width: 700px) { .wcard > i { font-size: 15px; } }
.wcard__face { background: #fff; border: 2px solid var(--plum); color: var(--plum); }
.wcard__back { background: var(--violet); border: 2px solid var(--violet-deep); transform: rotateY(180deg); }
.wcard__back img { width: 22px; height: 22px; opacity: 0.9; }
.wcard.is-down { transform: rotateY(180deg); }
.wcard.is-hit .wcard__face { background: var(--yellow); border-color: var(--plum); }
.wcard.is-missed .wcard__face { background: #f0eceb; border-color: #cfc7c5; color: #9a908e; text-decoration: line-through; }
.bar { width: 100%; max-width: 580px; height: 10px; background: rgba(35,39,47,0.1); border-radius: 5px; margin: 16px auto 0; overflow: hidden; }
.bar i { display: block; height: 100%; background: linear-gradient(90deg, var(--violet), var(--yellow)); width: 100%; transition: width 1s linear; }
.recall { width: 100%; max-width: 520px; }
.recall input { width: 100%; height: 54px; border: 2px solid var(--plum); border-radius: 10px; font-size: 19px; padding: 0 16px; font-family: var(--font); font-weight: 700; text-align: center; background: #fff; color: var(--plum); }
.recall input:focus { outline: 3px solid var(--yellow); outline-offset: 1px; }
.chips { display: flex; flex-wrap: wrap; gap: 7px; justify-content: center; margin-top: 12px; }
.chips span { background: var(--yellow); color: var(--plum); font-weight: 800; padding: 6px 12px; border-radius: 999px; font-size: 13px; text-transform: uppercase; }
.chips span.miss { background: #efe9e8; text-decoration: line-through; color: #8d8483; }
.mathq { font-size: 44px; font-weight: 900; color: var(--plum); margin: 4px 0 14px; font-variant-numeric: tabular-nums; }
.mathq + .recall input { max-width: 190px; margin: 0 auto; display: block; }
.is-memo, .is-recall { background: #fff; }
.is-math { background: var(--lilac-2); }

/* ---- Age pick ---------------------------------------------------------------------------------- */
.agepick { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; max-width: 500px; margin: 8px auto 0; }
@media (min-width: 640px) { .agepick { grid-template-columns: repeat(5, 1fr); } }
.agepick button { height: 56px; border: 2px solid var(--plum); background: #fff; border-radius: 10px; font-family: var(--font); font-weight: 800; font-size: 16px; color: var(--plum); cursor: pointer; transition: transform 120ms, background 120ms; }
.agepick button:hover { background: var(--yellow); transform: translateY(-2px); }
.agepick button:active { transform: scale(0.96, 1.04); }

/* Flex containers ignore the hidden attribute unless told otherwise. */
.scorecard [hidden], .stage[hidden], .hub [hidden] { display: none !important; }

/* ---- Score card -------------------------------------------------------------------------------- */
.scorecard { max-width: 780px; margin: 0 auto; }
.scorecard__box { background: var(--plum); color: #fff; border-radius: 22px; padding: 28px 22px 26px; text-align: center; position: relative; overflow: hidden; }
@media (min-width: 900px) { .scorecard__box { padding: 38px 40px 32px; } }
.scorecard__box::before { content: ""; position: absolute; right: -120px; top: -120px; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, rgba(31,122,140,0.55) 0%, rgba(31,122,140,0) 70%); }
.scorecard__box::after { content: ""; position: absolute; left: -140px; bottom: -150px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(245,213,71,0.4) 0%, rgba(245,213,71,0) 70%); }
.scorecard__box > * { position: relative; z-index: 1; }
.scorecard__obj { width: 118px; height: auto; margin: 0 auto 6px; display: block; filter: drop-shadow(0 14px 22px rgba(0,0,0,0.28)); }
@media (min-width: 900px) { .scorecard__obj { width: 150px; } }
.scorecard__label { font-weight: 800; letter-spacing: 1.6px; font-size: 12px; color: var(--yellow); margin-bottom: 6px; }
.scorecard__num { font-size: 78px; font-weight: 900; line-height: 1; letter-spacing: -3px; font-variant-numeric: tabular-nums; }
@media (min-width: 900px) { .scorecard__num { font-size: 112px; } }
.scorecard__num small { font-size: 24px; font-weight: 700; letter-spacing: 0; margin-left: 4px; }
.scorecard__verdict { font-size: 23px; font-weight: 800; margin: 12px 0 2px; line-height: 1.2; }
@media (min-width: 900px) { .scorecard__verdict { font-size: 30px; } }
.scorecard__verdict em { font-style: normal; color: var(--yellow); }
.gauge-wrap { max-width: 360px; margin: 14px auto 0; }
.gauge { display: block; width: 100%; overflow: visible; }
.gauge__track { fill: none; stroke: rgba(255,255,255,0.18); stroke-width: 10; stroke-linecap: round; }
.gauge__arc { fill: none; stroke: var(--yellow); stroke-width: 10; stroke-linecap: round; }
.gauge__median { stroke: rgba(255,255,255,0.5); stroke-width: 2.5; stroke-linecap: round; }
.gauge__pulse { fill: var(--violet); stroke: #fff; stroke-width: 2.5; }
.pct-labels { display: flex; justify-content: space-between; max-width: 360px; margin: -8px auto 12px; font-size: 11.5px; font-weight: 700; opacity: 0.8; letter-spacing: 0.3px; }
.scorecard__line { font-size: 16px; line-height: 1.5; opacity: 0.95; max-width: 540px; margin: 6px auto 0; }
.scorecard__line b { color: var(--yellow); }
.scorecard__line2 { font-size: 14.5px; line-height: 1.5; opacity: 0.8; max-width: 540px; margin: 10px auto 0; }
.scorecard__line2 b { color: var(--yellow); }
.scorecard .chips { margin-top: 16px; }
.scorecard .chips span { background: var(--yellow); }
.scorecard .chips span.miss { background: rgba(255,255,255,0.12); color: rgba(255,255,255,0.75); }
.scorecard__vs { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px 16px; margin: 16px auto 0; background: rgba(255,255,255,0.1); border-radius: 14px; padding: 12px 16px; max-width: 460px; }
.scorecard__vs b { display: block; font-size: 24px; color: var(--yellow); line-height: 1; }
.scorecard__vs span { font-size: 12px; font-weight: 700; letter-spacing: 0.6px; text-transform: uppercase; opacity: 0.85; }
.scorecard__vs i { font-style: normal; font-weight: 800; opacity: 0.5; }
.scorecard__vs em { flex-basis: 100%; font-style: normal; font-weight: 800; font-size: 15px; color: #fff; }
.scorecard__actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 16px; }
.scorecard__actions .btn-ghost { min-height: 42px; padding: 0 14px; font-size: 13.5px; border-color: rgba(255,255,255,0.4); color: rgba(255,255,255,0.85); }
.scorecard__actions .btn-ghost:hover { color: #fff; border-color: rgba(255,255,255,0.75); }
.btn-ghost { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 20px; border: 2px solid rgba(255,255,255,0.65); border-radius: 8px; color: #fff; font-family: var(--font); font-weight: 800; font-size: 15px; background: transparent; cursor: pointer; text-decoration: none; transition: transform 120ms, background 150ms; }
.btn-ghost:hover { background: rgba(255,255,255,0.14); transform: translateY(-2px); }
.btn-solid { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 22px; border: 0; border-radius: 8px; color: var(--plum); font-family: var(--font); font-weight: 800; font-size: 15px; background: var(--yellow); cursor: pointer; text-decoration: none; transition: transform 120ms, box-shadow 150ms; }
.btn-solid:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,0.22); }
.btn-solid:active, .btn-ghost:active { transform: scale(0.96, 1.03); }
.scorecard__meaning { display: inline-block; margin-top: 16px; color: #fff; font-weight: 800; font-size: 15px; text-decoration: none; opacity: 0.9; }
.scorecard__meaning span { display: inline-block; animation: bob 1.4s ease-in-out infinite; }
@keyframes bob { 0%,100% { transform: translateY(0); } 50% { transform: translateY(5px); } }
.toast { position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); background: #fff; color: var(--plum); font-weight: 700; font-size: 14px; padding: 10px 16px; border-radius: 999px; box-shadow: 0 10px 24px rgba(0,0,0,0.25); max-width: 90%; z-index: 3; }
/* The save block: the primary action on the card, inside the card, right under the number. */
.savebox { margin: 22px 0 0; padding: 20px 18px 18px; background: rgba(255,255,255,0.07);
           border: 2px solid var(--yellow); border-radius: 16px; text-align: center; }
@media (min-width: 700px) { .savebox { padding: 24px 26px 20px; } }
.savebox.is-done { border-color: rgba(255,255,255,0.3); background: rgba(255,255,255,0.05); }
.savebox__h { margin: 0 0 6px; font-size: 22px; font-weight: 800; line-height: 1.25; color: var(--yellow); }
@media (min-width: 700px) { .savebox__h { font-size: 25px; } }
.savebox.is-done .savebox__h { color: #fff; font-size: 20px; overflow-wrap: anywhere; }
.savebox__tick { color: var(--lime); }
.savebox__p { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: #D8DBE0; }
.savebox__form { display: flex; flex-wrap: wrap; gap: 10px; }
.savebox__form input { flex: 1 1 220px; min-width: 0; height: 56px; border: 2px solid transparent; border-radius: 10px;
           padding: 0 16px; font-size: 17px; font-family: var(--font); color: var(--plum); background: #fff; }
.savebox__form input:focus { outline: none; border-color: var(--violet); box-shadow: 0 0 0 4px rgba(31,122,140,0.25); }
.savebox__form button { flex: 1 1 200px; height: 56px; padding: 0 22px; background: var(--lime); color: #fff; border: 0;
           border-radius: 10px; font-family: var(--font); font-weight: 800; font-size: 16px; letter-spacing: 0.4px;
           cursor: pointer; box-shadow: 0 4px 0 rgba(0,0,0,0.25); transition: background 140ms, transform 120ms; }
.savebox__form button:hover { background: var(--lime-deep); }
.savebox__form button:active { transform: translateY(2px); box-shadow: 0 2px 0 rgba(0,0,0,0.25); }
.savebox__form button[disabled] { opacity: 0.7; cursor: default; }
.savebox__fine { margin: 12px 0 0; font-size: 12.5px; color: rgba(255,255,255,0.6); }
.savebox__go { display: inline-block; margin-top: 4px; padding: 12px 22px; background: var(--yellow); color: var(--plum);
           border-radius: 999px; font-weight: 800; font-size: 15px; letter-spacing: 0.4px; text-decoration: none; }
.savebox__go:hover { background: var(--yellow-deep); }

/* ---- Hub: the brain map ------------------------------------------------------------------------ */
.hub { max-width: 900px; margin: 0 auto 34px; }
.brainmap { position: relative; width: 100%; max-width: 560px; margin: 0 auto; aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; }
.brainmap__ring { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.brainmap__track { fill: none; stroke: rgba(35,39,47,0.16); stroke-width: 4; stroke-dasharray: 2 6; stroke-linecap: round; }
.brainmap__fill { fill: none; stroke: var(--violet); stroke-width: 5; stroke-linecap: round; }
.brainmap__brain { width: 34%; height: auto; transform: translateY(-12%); filter: drop-shadow(0 18px 30px rgba(35,39,47,0.24)); }
.brainmap__score { position: absolute; left: 50%; bottom: 7%; transform: translateX(-50%); text-align: center; background: var(--plum); color: #fff; border-radius: 14px; padding: 10px 18px; box-shadow: 0 12px 26px rgba(35,39,47,0.22); }
.brainmap__score b { display: block; font-size: 30px; font-weight: 900; color: var(--yellow); line-height: 1; font-variant-numeric: tabular-nums; }
.brainmap__score span { font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; opacity: 0.85; }
.brainmap__score small { display: block; font-size: 12px; opacity: 0.75; margin-top: 2px; }
.node { position: absolute; display: flex; flex-direction: column; align-items: center; gap: 4px; width: 116px; text-align: center; text-decoration: none; color: var(--plum); transform: translate(-50%, -50%); }
.node i { width: 20px; height: 20px; border-radius: 50%; background: rgba(35,39,47,0.16); box-shadow: 0 0 0 5px rgba(35,39,47,0.06); transition: background 300ms, box-shadow 300ms; }
.node__name { font-size: 12px; font-weight: 800; line-height: 1.15; }
.node__score { font-size: 13px; font-weight: 900; color: var(--gray); font-variant-numeric: tabular-nums; }
.node:not(.is-lit) .node__score { display: none; }
.node.is-lit i { background: var(--violet); box-shadow: 0 0 0 6px rgba(31,122,140,0.22); }
.node.is-lit .node__score { color: var(--violet-deep); }
.node:not(.is-lit) i { animation: nodepulse 2.4s ease-in-out infinite; }
@keyframes nodepulse { 0%,100% { box-shadow: 0 0 0 5px rgba(35,39,47,0.06); } 50% { box-shadow: 0 0 0 10px rgba(35,39,47,0.02); } }
/* Six points on the ring: -90, -30, 30, 90, 150, 210 degrees at radius 44% */
.node--reflex { left: 50%;   top: 6%; }
.node--words  { left: 88.1%; top: 28%; }
.node--vault  { left: 88.1%; top: 72%; }
.node--grid   { left: 50%;   top: 94%; }
.node--color  { left: 11.9%; top: 72%; }
.node--lights { left: 11.9%; top: 28%; }
@media (max-width: 620px) {
  .brainmap { max-width: 400px; }
  .node { width: 88px; }
  .node__name { font-size: 10.5px; }
  .brainmap__score { padding: 8px 14px; bottom: 14%; }
  .brainmap__score b { font-size: 24px; }
}
.stamps { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 14px; margin: 18px auto 0; background: var(--lilac-2); border-radius: 14px; padding: 12px 18px; max-width: 620px; }
.stamps__label { font-size: 12px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; color: var(--plum); }
.stamps__row { display: flex; gap: 6px; }
.stamp { width: 30px; height: 30px; border-radius: 50%; border: 2px dashed rgba(35,39,47,0.28); display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800; color: rgba(35,39,47,0.45); }
.stamp.is-on { background: var(--yellow); border: 2px solid var(--plum); color: var(--plum); }
.stamps__note { font-size: 13px; font-weight: 700; color: var(--plum); }

.hub-grid { display: grid; gap: 16px; margin-top: 10px; }
@media (min-width: 700px) { .hub-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; } }
@media (min-width: 1100px) { .hub-grid--six { grid-template-columns: repeat(3, 1fr); } }
.hub-card { display: block; background: #fff; border: 3px solid var(--violet); border-radius: 18px; padding: 22px 20px 20px; text-decoration: none; color: var(--plum); position: relative; overflow: hidden; transition: transform 160ms, box-shadow 160ms; }
.hub-card:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(35,39,47,0.2); }
.hub-card__obj { position: absolute; right: 10px; bottom: 10px; width: 84px; height: auto; opacity: 0.95; }
.hub-card .n { position: absolute; right: 16px; top: 10px; font-size: 46px; font-weight: 900; color: var(--lilac-4); line-height: 1; }
.hub-card h3 { font-size: 23px; font-weight: 800; margin: 0 0 8px; position: relative; }
.hub-card p { margin: 0 0 16px; font-size: 15px; color: var(--ink-2); position: relative; max-width: 80%; }
.hub-card .go { display: inline-block; background: var(--lime); color: #fff; font-weight: 800; text-transform: uppercase; padding: 11px 18px; border-radius: 6px; box-shadow: 0 3px 3px rgba(0,0,0,0.2); font-size: 14px; position: relative; }
.hub-card .time { display: inline-block; font-size: 13px; font-weight: 700; margin-left: 10px; }
.hub-card.is-done { border-color: var(--plum); }
.hub-card.is-done .go { background: var(--plum); }
.hub-card.is-soon { opacity: 0.55; pointer-events: none; }
.hub-card.is-soon .go { background: #999; }
.myscores { max-width: 760px; margin: 26px auto 0; background: var(--lilac); border: 2px solid var(--plum); border-radius: 14px; padding: 16px 20px; font-weight: 700; color: var(--plum); text-align: center; }

/* ---- Bridge ------------------------------------------------------------------------------------- */
.bridge-lead { max-width: 760px; margin: 0 auto; text-align: center; font-size: 18px; line-height: 1.55; }
@media (min-width: 900px) { .bridge-lead { font-size: 21px; } }
.depends { display: grid; gap: 18px; margin: 30px 0 10px; }
@media (min-width: 800px) { .depends { grid-template-columns: repeat(3, 1fr); gap: 22px; } }
.depend { background: #fff; border: 3px solid var(--plum); border-radius: 16px; padding: 20px; }
.depend__img { width: 92px; height: auto; margin-bottom: 8px; filter: drop-shadow(0 8px 14px rgba(35,39,47,0.16)); }
.depend h3 { font-size: 20px; font-weight: 800; margin: 0 0 8px; color: var(--plum); }
.depend p { margin: 0; font-size: 16px; }
.depend--you { border-color: var(--violet); background: var(--lilac); }
.depend--you .tag { display: inline-block; background: var(--violet); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: 1px; padding: 4px 8px; border-radius: 3px; margin-bottom: 10px; }
.nerve-strip { display: grid; gap: 14px; margin: 26px auto 0; max-width: 980px; }
@media (min-width: 800px) { .nerve-strip { grid-template-columns: repeat(4, 1fr); } }
.nerve { background: var(--plum); color: #fff; border-radius: 14px; padding: 18px 16px; text-align: center; }
.nerve b { display: block; font-size: 34px; font-weight: 900; color: var(--yellow); line-height: 1; margin-bottom: 4px; }
.nerve span { font-size: 14px; font-weight: 600; }
.nerve small { display: block; font-size: 12px; opacity: 0.8; margin-top: 4px; }
.retest { background: var(--lilac-2); border: 2px dashed var(--violet); border-radius: 14px; padding: 18px 22px; max-width: 760px; margin: 26px auto 0; text-align: center; font-weight: 700; color: var(--plum); }
.retest b { color: var(--violet-deep); }
.bottle--bridge { position: relative; }
.bottle__caps { position: absolute; right: -6%; bottom: 4%; width: 34%; height: auto; filter: drop-shadow(0 10px 18px rgba(35,39,47,0.2)); }

/* Reveal on scroll */
[data-reveal] { opacity: 0; transform: translateY(26px); transition: opacity 600ms cubic-bezier(0, 0, 0.2, 1), transform 600ms cubic-bezier(0, 0, 0.2, 1); transition-delay: calc(var(--i, 0) * 90ms); }
[data-reveal].is-in { opacity: 1; transform: none; }

/* ---- Reduced motion ---------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .neural { display: none; }
  .sigring__arc, .sigring__pulse, .scorecard__meaning span, .node:not(.is-lit) i { animation: none !important; }
  [data-reveal] { opacity: 1; transform: none; transition: none; }
  .wcard { transition: none; }
}

/* ---- The Vault ---------------------------------------------------------------------------------- */
.is-vault { background: var(--lilac); }
.vaultwrap { position: relative; width: 190px; height: 190px; margin: 4px auto 14px; display: flex; align-items: center; justify-content: center; }
.vault__img { width: 100%; height: auto; filter: drop-shadow(0 12px 22px rgba(35,39,47,0.22)); transition: transform 700ms cubic-bezier(0.34, 1.56, 0.64, 1); }
.vaultwrap.is-open .vault__img { transform: rotateY(-62deg) translateX(-14%); }
.vault__glow { position: absolute; inset: 18%; border-radius: 50%; background: radial-gradient(circle, var(--yellow) 0%, rgba(245,213,71,0) 70%); opacity: 0; pointer-events: none; }
.vaultwrap.is-open .vault__glow { opacity: 0.9; }
.vault__digit { position: absolute; font-size: 78px; font-weight: 900; color: var(--plum); line-height: 1; font-variant-numeric: tabular-nums; text-shadow: 0 4px 0 rgba(255,255,255,0.8); }
.stage--vault .recall input { letter-spacing: 10px; font-size: 26px; }

/* ---- The Focus Grid ----------------------------------------------------------------------------- */
.is-grid { background: #fff; padding: 16px 14px; }
.grid5 { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; width: 100%; max-width: min(92vw, 460px); margin: 0 auto; aspect-ratio: 1 / 1; }
@media (min-width: 900px) { .grid5 { max-width: 500px; gap: 8px; } }
.tile { display: flex; align-items: center; justify-content: center; background: var(--plum); color: #fff; border: 0; border-radius: 10px; font-family: var(--font); font-weight: 800; font-size: 20px; cursor: pointer; font-variant-numeric: tabular-nums; transition: background 150ms, opacity 300ms; }
@media (min-width: 900px) { .tile { font-size: 24px; border-radius: 12px; } }
.tile:disabled { background: rgba(35,39,47,0.12); color: rgba(35,39,47,0.35); cursor: default; }
.tile.is-wrong { background: var(--violet-deep); }
.trail { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.trail polyline { fill: none; stroke: var(--violet); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; filter: drop-shadow(0 0 6px rgba(31,122,140,0.75)); }

/* ---- The Color Test ------------------------------------------------------------------------------ */
.is-color { background: #fff; }
.stroop-hint { font-size: 14px !important; color: var(--gray); margin-bottom: 6px !important; }
.stroopword { font-size: 68px; font-weight: 900; letter-spacing: 2px; line-height: 1; margin: 10px 0 34px; }
@media (min-width: 900px) { .stroopword { font-size: 104px; margin: 16px 0 44px; } }
.inkrow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; width: 100%; max-width: 520px; }
/* The buttons are dealt again every round, so lock the row while the answer is on screen. */
.inkrow.is-locked { pointer-events: none; }
.ink { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 92px; background: #fff; border: 3px solid rgba(35,39,47,0.14); border-radius: 16px; padding: 12px 4px; cursor: pointer; font-family: var(--font); font-weight: 800; font-size: 13px; color: var(--plum); transition: transform 120ms, border-color 150ms; }
.ink i { width: 40px; height: 40px; border-radius: 50%; background: var(--ink); }
@media (min-width: 700px) { .ink i { width: 46px; height: 46px; } .ink { font-size: 15px; } }
.ink:hover { border-color: var(--plum); transform: translateY(-2px); }
.ink:active { transform: scale(0.95, 1.04); }
.ink.is-right { border-color: var(--lime-deep); }
.ink.is-wrong { border-color: var(--violet-deep); }

/* ---- The Lights ---------------------------------------------------------------------------------- */
.is-lights { background: var(--plum); }
.is-lights h3, .is-lights p { color: #fff; }
.grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; width: 100%; max-width: min(80vw, 330px); margin: 10px auto 0; aspect-ratio: 1 / 1; }
@media (min-width: 900px) { .grid3 { max-width: 360px; gap: 12px; } }
.ltile { border: 2px solid rgba(255,255,255,0.14); border-radius: 14px; background: #14625B; box-shadow: inset 0 -4px 0 rgba(0,0,0,0.22); cursor: pointer; transition: background 120ms, transform 120ms, box-shadow 160ms; }
.ltile:hover { background: #17605A; }
.ltile.is-on { background: var(--yellow); box-shadow: 0 0 26px rgba(245,213,71,0.75); transform: scale(1.04); }
.ltile.is-bad { background: var(--violet-deep); }

/* Colour test: twenty dots keep the score where your thumb can see it */
.stroopdots { display: flex; flex-wrap: nowrap; justify-content: center; gap: 6px; margin-top: 30px; max-width: 100%; }
.stroopdots i { flex: none; width: 11px; height: 11px; border-radius: 50%; background: rgba(35,39,47,0.14); transition: background 200ms, transform 200ms; }
.stroopdots i.is-hit { background: var(--lime-deep); transform: scale(1.12); }
.stroopdots i.is-miss { background: var(--violet-deep); transform: scale(1.12); }

/* ===== The tests in The Lioness Rose's system. Loaded after tests/04-src/css/tests.css: the old palette names become the
   new colours, and the surfaces the old sheet drew in its own style (hero, stage, card, hub, bridge) are redrawn here. ===== */
body{--plum:var(--ink);--plum-2:var(--ink-2);--violet:var(--hour, #1F7A8C);--violet-deep:var(--hour, #1F7A8C);--yellow:var(--cream);--yellow-deep:var(--cream-2);--lilac:var(--paper);--lilac-2:var(--cream-2);--lilac-3:var(--paper);--lilac-4:var(--line);--lime:var(--ink);--lime-deep:var(--ink-2);--gray:var(--muted);--font:var(--sans);--magenta:var(--hour, #1F7A8C);--white:#fff}
body[data-product]{--violet:var(--hour);--violet-deep:var(--hour);--magenta:var(--hour)}

/* hero */
.hero--test{padding-bottom:40px}
.hero--test h1 em{font-style:italic}
.test-meta{align-items:center}
.mute{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 12px;font:500 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.mute:hover{border-color:var(--ink);color:var(--ink)}
.mute .mute__off{display:none}.mute.is-muted .mute__on{display:none}.mute.is-muted .mute__off{display:inline}
.trust .mute::before{display:none}
.challenge{display:flex;align-items:center;gap:14px;max-width:620px;margin:26px 0 0;background:var(--ink);color:var(--cream);border-radius:var(--r);padding:16px 20px;box-shadow:none}
.challenge b{display:block;font-family:var(--serif);font-size:20px;font-weight:500;color:var(--cream);line-height:1.2;margin-bottom:3px}
.challenge span{font-size:14px;color:#D8DBE0;line-height:1.4}

/* stage */
.sec--stage{padding-top:40px}
/* the game goes fullscreen while she plays (.stage.is-playing, fixed, z-index 120); the wrap must not open a stacking context
   around it, or the sticky header and the next section paint over the game */
.sec--stage .wrap{z-index:auto}
.stage{max-width:780px;margin:0 auto;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:none}
.stage__top{background:var(--cream-2);color:var(--ink);font-weight:500;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:12px 20px}
.stage__top b{font-weight:500}
.stage__pad{background:var(--paper)}
.stage__pad h3{font-family:var(--serif);font-weight:500;font-size:30px;color:var(--ink);letter-spacing:-.01em}
.stage__pad p{font-size:16px;color:var(--ink-2)}
.stage__note{color:var(--muted)}
.stage__big{font-family:var(--serif);font-weight:500;font-size:72px;color:var(--ink);letter-spacing:-.01em}
.stage__big small{font-family:var(--sans);font-weight:400;color:var(--muted);font-size:20px}
.stage.is-playing{background:var(--paper)}
.stage__pad.is-go,.stage__pad.is-wait{background:var(--ink);color:var(--cream)}
/* the Reflex Test says "the moment the screen turns green": the go screen must be green, not the wait screen's dark */
.stage--reflex .stage__pad.is-go{background:#00A32E;color:#fff}
.stage__pad.is-go h3,.stage__pad.is-wait h3,.stage__pad.is-go .stage__big{color:var(--cream)}
.stage__pad.is-go p,.stage__pad.is-wait p{color:#D8DBE0}
.stage__pad.is-early{background:var(--cream-2)}
.stage__pad.is-result .stage__big{color:var(--hour, var(--ink))}
.go-flash{background:radial-gradient(circle, rgba(245,239,230,.35), rgba(245,239,230,0) 70%)}
.cta-wrap{display:flex;justify-content:center;margin:8px 0 4px}
.stage .cta{width:auto;max-width:none;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 30px;border-radius:8px;background:var(--ink);color:var(--cream);text-decoration:none;font-family:var(--sans);font-weight:500;font-size:14px;letter-spacing:.12em;text-transform:uppercase;border:1.5px solid var(--ink);box-shadow:none;cursor:pointer}
.stage .cta:hover{background:var(--ink-2);border-color:var(--ink-2)}
.stage .cta--ghost{background:transparent;color:var(--ink)}
.agepick button{border:1px solid var(--line);background:var(--paper);border-radius:8px;font-family:var(--sans);font-weight:500;font-size:16px;color:var(--ink)}
.agepick button:hover{background:var(--cream-2);border-color:var(--ink);transform:none}
.recall{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.recall input{flex:1 1 200px;border:1.5px solid var(--ink);border-radius:8px;font-family:var(--sans);font-weight:400;color:var(--ink);background:#fff}
.recall input:focus{outline:none;border-color:var(--ink-2);box-shadow:0 0 0 3px rgba(35,39,47,.12)}
.chips span{background:var(--cream-2);color:var(--ink);font-weight:500;text-transform:none;letter-spacing:0}
.chips span.miss{background:transparent;border:1px solid var(--line);color:var(--muted)}
.wcard__face{border:1px solid var(--line);color:var(--ink);font-weight:500}
.wcard__back{background:var(--ink);border-color:var(--ink)}
.wcard.is-hit .wcard__face{background:var(--cream-2);border-color:var(--ink)}
.stage__top .sig__lit,.stage__top .sig__st.is-done .sig__dot{stroke:var(--hour, var(--ink));fill:var(--hour, var(--ink))}
.stage__top .sig__st.is-done .sig__dot{fill:var(--hour, var(--ink))}
.sig__pulse,.sig__st.is-now .sig__dot{fill:var(--hour, var(--ink))}
.sigring__pulse{fill:var(--hour, var(--cream))}

/* the new games' surfaces */
.tap-pad{width:min(100%,360px);height:220px;margin:14px auto 0;border-radius:14px;background:var(--ink);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:64px;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}
.stage__pad.is-go .tap-pad{background:var(--hour, var(--ink))}
.scale{display:grid;grid-template-columns:repeat(9,1fr);gap:6px;width:100%;max-width:520px;margin:18px auto 8px}
.scale button{aspect-ratio:1;border:1.5px solid var(--line);border-radius:8px;background:#fff;font-family:var(--serif);font-size:22px;color:var(--ink);cursor:pointer;min-width:0;padding:0}
.scale button:hover{border-color:var(--ink)}
.scale button.is-on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.anch{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);max-width:520px;margin:0 auto 10px}
.scale__pick{font-size:15px;color:var(--ink)}
.wake-counter{font-family:var(--serif);font-size:88px;line-height:1;min-height:96px;color:var(--cream)}
.stage__pad.is-wait .wake-counter{opacity:.25}
.log{display:grid;gap:10px;width:100%;max-width:520px;margin:14px auto 0;text-align:left}
.log label{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#fff;font-size:15px}
.log label span{color:var(--ink-2)}
.log input{width:120px;height:40px;border:1.5px solid var(--ink);border-radius:8px;padding:0 10px;font:400 16px var(--sans);color:var(--ink);background:var(--paper);text-align:right}
.stage__pad.is-log,.stage__pad.is-scale,.stage__pad.is-ask,.stage__pad.is-count{cursor:default}

/* the card */
.scorecard{max-width:780px;margin:0 auto}
.scorecard__box{background:var(--ink);color:var(--cream);border-radius:14px;padding:34px 26px 30px}
.scorecard__box::before,.scorecard__box::after{display:none}
.scorecard__obj{width:200px;height:auto;margin:0 auto 10px;filter:none}
.scorecard__label{font-weight:500;letter-spacing:.24em;font-size:12px;color:#B8BDC6;text-transform:uppercase}
.scorecard__num{font-family:var(--serif);font-weight:500;font-size:84px;letter-spacing:-.01em}
.scorecard__num small{font-family:var(--sans);font-weight:400;font-size:20px;color:#B8BDC6;margin-left:8px}
.scorecard__verdict{font-family:var(--serif);font-weight:500;font-size:26px;margin:10px 0 4px}
.scorecard__verdict em{font-style:italic;color:var(--cream)}
.gauge__arc{stroke:var(--hour, var(--cream))}
.gauge__pulse{fill:var(--hour, var(--cream));stroke:var(--ink)}
.gauge__median{stroke:rgba(245,239,230,.5)}
.pct-labels{font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:11px;color:#B8BDC6;opacity:1}
.scorecard__line{font-size:16px;color:#D8DBE0}
.scorecard__line b{color:var(--cream);font-weight:500}
.scorecard__line2{font-size:13.5px;color:#A8ADB6}
.scorecard__line2 b{color:var(--cream);font-weight:500}
.scorecard .chips span{background:rgba(245,239,230,.14);color:var(--cream)}
.scorecard__vs{background:rgba(245,239,230,.08)}
.scorecard__vs b{color:var(--cream);font-family:var(--serif);font-weight:500}
.scorecard__vs span{font-weight:500;letter-spacing:.14em}
.scorecard__vs em{font-weight:500;color:var(--cream)}
.savebox{border:1px solid rgba(245,239,230,.3);background:rgba(245,239,230,.05);border-radius:12px}
.savebox.is-done{border-color:rgba(245,239,230,.3)}
.savebox__h{font-family:var(--serif);font-weight:500;font-size:24px;color:var(--cream)}
.savebox__p{color:#D8DBE0;font-size:15px}
.savebox__form input{border:1.5px solid var(--cream);background:var(--cream);color:var(--ink);font-family:var(--sans);font-weight:400;border-radius:8px}
.savebox__form input:focus{outline:none;border-color:#fff;box-shadow:none}
.savebox__form button{background:var(--cream);color:var(--ink);font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;border-radius:8px;box-shadow:none}
.savebox__form button:hover{background:#fff}
.savebox__form button:active{transform:none;box-shadow:none}
.savebox__fine{color:#A8ADB6}
.savebox__go{background:var(--cream);color:var(--ink);border-radius:8px;font-weight:500}
.savebox__tick{color:var(--cream)}
.btn-ghost{border:1px solid rgba(245,239,230,.45);color:var(--cream);font-family:var(--sans);font-weight:500;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;border-radius:8px;min-height:44px;background:none;cursor:pointer}
.btn-ghost:hover{background:rgba(245,239,230,.1);transform:none}
.scorecard__meaning{font-weight:500;color:var(--cream);opacity:.85;border-bottom:1px solid rgba(245,239,230,.5);padding-bottom:2px}
.scorecard__meaning span{display:none}
.toast{background:var(--cream);color:var(--ink);font-weight:500;box-shadow:none;border:1px solid var(--line)}

/* the hub */
.hub{max-width:none;margin:0}
.hubscore{display:flex;align-items:center;gap:22px;margin:0 0 26px;padding:22px 24px;background:var(--cream-2);border-radius:var(--r)}
.hubscore__ring{width:84px;height:84px;transform:rotate(-90deg);flex:none}
.hubscore__track{fill:none;stroke:var(--line);stroke-width:4}
.hubscore__fill{fill:none;stroke:var(--hour, var(--ink));stroke-width:5;stroke-linecap:round}
.hubscore__t b{display:block;font-family:var(--serif);font-size:38px;line-height:1;color:var(--ink)}
.hubscore__t span{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.hubscore__t small{display:block;font-size:13px;color:var(--ink-2);margin-top:4px}
.test--row{position:relative}
.test__last{font-family:var(--serif);font-weight:500;font-size:22px;color:var(--ink);margin-left:14px;white-space:nowrap}
.test__last:not(.is-lit){display:none}
.test.is-done{border-color:var(--ink)}
.stamps{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;margin:22px auto 0;background:var(--cream-2);border-radius:var(--r);padding:12px 18px;max-width:640px}
.stamps__label{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500}
.stamp{width:30px;height:30px;border-radius:50%;border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--muted)}
.stamp.is-on{background:var(--ink);border:1px solid var(--ink);color:var(--cream)}
.stamps__note{font-size:13px;color:var(--ink-2)}

/* the bridge: what the number depends on, then the product's own hero lines, ingredient cards and button */
.why{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:why}
.why li{counter-increment:why;background:#fff;border:2px solid var(--dark);border-radius:10px;padding:20px 22px;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.why li::before{content:counter(why);display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--dark);color:#fff;font-weight:800;box-shadow:0 0 0 4px var(--bright);margin:4px 0 16px 4px}
.why b{display:block;font-size:19px;line-height:1.25;font-weight:800;color:var(--dark)}
.why p{margin:8px 0 0;font-size:15px;line-height:1.5;color:#222}
.why li.why--you{border:4px solid var(--bright)}
.why__tag{display:inline-block;background:var(--neon);color:var(--dark);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:4px;margin-top:8px}
.carry .h2{font-size:40px}
.carry .h2 .hl{display:inline-block;margin-bottom:6px}
.carry .sub25{font-size:21px;max-width:820px;margin:-18px auto 34px}
.carry .fda{max-width:760px;margin:26px auto 0}
@media (max-width:1000px){.why{grid-template-columns:1fr}}
@media (max-width:640px){.carry .h2{font-size:26px}.carry .sub25{font-size:17px;margin-top:-10px}}
@media (max-width:640px){.scorecard__num{font-size:64px}.scorecard__box{padding:28px 18px 24px}.stage__pad h3{font-size:24px}.wake-counter{font-size:64px}.tap-pad{height:180px;font-size:48px}.test__last{font-size:18px;margin-left:0}}

/* ===== The Lioness Rose: pages, journal, WooCommerce ===== */
.wrap--wide{max-width:1180px}
.page-std__head{padding-bottom:40px}
.page-std__body{padding-top:56px}

/* Entry content (legal pages, posts, cart, checkout, account) */
.entry{font-size:17px;line-height:1.7}
.entry h2{font-size:32px;margin:44px 0 14px}
.entry h3{font-size:24px;margin:32px 0 10px}
.entry h4{font-family:var(--sans);font-size:17px;font-weight:500;margin:24px 0 8px}
.entry p{margin:0 0 18px}
.entry a{color:var(--ink);font-weight:500}
.entry ul,.entry ol{padding-left:22px;margin:0 0 18px}
.entry li{margin-bottom:8px}
.entry li::marker{color:var(--muted)}
.entry blockquote{border-left:2px solid var(--ink);margin:24px 0;padding:6px 22px;font-family:var(--serif);font-size:22px;line-height:1.35}
.entry img{border-radius:12px}
.entry table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15.5px}
.entry th,.entry td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.entry th{font-weight:500;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.entry hr{border:0;border-top:1px solid var(--line);margin:36px 0}
.entry em{font-style:italic}

/* Journal */
.cards{display:grid;gap:18px}
@media (min-width:760px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cards{grid-template-columns:repeat(3,1fr)}}
.cards--list{grid-template-columns:1fr !important}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.card:hover{border-color:var(--ink)}
.card__media img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.card__body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.card__meta{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.card__title{font-size:24px;line-height:1.25;margin:0}
.card__title a{text-decoration:none}
.card__excerpt{margin:0;color:var(--ink-2);font-size:15.5px;flex:1}
.pager{margin-top:36px;text-align:center}
.pager .nav-links{display:flex;justify-content:center;gap:12px}
.pager a,.pager span{padding:10px 14px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-size:14px}
.pager .current{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.post__hero{margin:-24px auto 0}
.post__hero img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px}

/* WooCommerce: every default surface in the site's own frame */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce button.button.alt,.woocommerce a.button.alt,.wc-block-components-button,.woocommerce-form-login .button,.woocommerce-Button{
  display:inline-flex;align-items:center;justify-content:center;height:54px;padding:0 26px !important;border-radius:0 !important;background:var(--cta) !important;color:#fff !important;font-family:var(--sans) !important;font-weight:700 !important;font-size:16px !important;letter-spacing:.01em;text-transform:uppercase;border:0 !important;line-height:1 !important;box-shadow:0 3px 3px rgba(0,0,0,.2) !important}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover,.wc-block-components-button:hover{background:var(--ctad) !important;color:#fff !important}
.woocommerce-breadcrumb{font-size:13px;color:var(--muted);margin-bottom:24px}
.woocommerce-breadcrumb a{color:var(--muted)}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:0 0 22px;text-align:center}
.woocommerce ul.products li.product a img{border-radius:var(--r) var(--r) 0 0;margin:0 0 18px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Inter,Arial,sans-serif;font-weight:800;font-size:20px;line-height:1.25;color:var(--dark);padding:0 18px;margin:0 0 8px}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price{display:block;font-family:Inter,Arial,sans-serif;font-weight:800;font-size:26px;color:var(--dark)}
.woocommerce ul.products li.product .price del,.woocommerce div.product p.price del{color:var(--muted);font-size:18px}
.woocommerce ul.products li.product .button{display:inline-flex !important;margin:14px 0 0;padding:0 22px !important}
.woocommerce div.product .product_title{font-size:44px;line-height:1.1}
.woocommerce div.product div.images img{border-radius:14px}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:17px;line-height:1.6}
.woocommerce div.product .woocommerce-product-details__short-description ul{list-style:none;padding:0}
.woocommerce div.product .woocommerce-product-details__short-description li{padding:8px 0;border-bottom:1px solid var(--line)}
.woocommerce div.product form.cart{display:flex;align-items:stretch;gap:10px;margin:22px 0 14px}
.woocommerce div.product form.cart .quantity .qty{height:52px;border:1.5px solid var(--ink);border-radius:8px;font-family:var(--sans);width:70px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 20px;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;border-radius:0;margin:0 22px 0 0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:12px 0;font-weight:500}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom:1.5px solid var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{font-size:16px;line-height:1.65}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:24px}
.woocommerce div.product .product_meta{font-size:13px;color:var(--muted)}
.woocommerce span.onsale{display:none}
.woocommerce .trust{margin-top:18px}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--ink);color:var(--ink);border-radius:var(--r);padding:16px 18px 16px 18px !important;font-size:15px}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-message .button{float:none;margin:10px 0 0;display:inline-flex}
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;font-size:15px}
.woocommerce table.shop_table th{font-weight:500;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-EditAccountForm input{border:1.5px solid var(--ink);border-radius:8px;padding:12px 14px;font-size:16px;font-family:var(--sans);background:var(--paper);color:var(--ink);width:100%}
.woocommerce form .form-row input.input-text:focus{outline:none;border-color:var(--ink-2);box-shadow:0 0 0 3px rgba(35,39,47,.12)}
.woocommerce form .form-row label{font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-size:13px;color:var(--muted)}
.woocommerce .woocommerce-ordering select{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-family:var(--sans)}
.woocommerce .star-rating span::before,.woocommerce .star-rating::before{color:var(--ink)}
.woocommerce-store-notice{background:var(--ink);color:var(--cream);font-weight:500}
.woocommerce-checkout #payment{background:var(--paper);border:1px solid var(--line);border-radius:var(--r)}
.woocommerce-checkout #payment div.payment_box{background:var(--cream-2);color:var(--ink)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--cream-2)}
.woocommerce .woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{font-size:13.5px;color:var(--muted)}
.woocommerce-order .woocommerce-thankyou-order-received{font-family:var(--serif);font-size:30px;line-height:1.25;margin-bottom:22px}
.woocommerce-order ul.order_details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:0;margin:0 0 30px;list-style:none}
.woocommerce-order ul.order_details li{border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);float:none;margin:0}
.woocommerce-order ul.order_details li strong{display:block;font-family:var(--serif);font-size:22px;letter-spacing:0;text-transform:none;color:var(--ink);margin-top:6px}
.woocommerce-order h2,.woocommerce-order h3{font-size:26px;margin:30px 0 14px}

/* Block cart and checkout */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{font-family:var(--sans);color:var(--ink)}
.wc-block-components-checkout-step__title,.wc-block-components-title,.wp-block-woocommerce-cart h2,.wp-block-woocommerce-checkout h2,.wc-block-cart__totals-title,.wc-block-components-checkout-order-summary__title-text{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.01em}
.wc-block-components-product-name,.wc-block-components-order-summary-item__description{font-weight:500}
.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button,.wc-block-components-button.wc-block-cart__submit-button{background:var(--cta) !important;color:#fff !important;border-radius:0 !important;height:60px;font-weight:700 !important;letter-spacing:.01em;text-transform:uppercase;font-size:18px !important;box-shadow:0 3px 3px rgba(0,0,0,.2) !important}
.wc-block-components-checkout-place-order-button:hover,.wc-block-cart__submit-button:hover{background:var(--ctad) !important}
.wc-block-components-notice-banner{border-radius:var(--r);border-color:var(--line);background:var(--paper)}
.wc-block-components-notice-banner.is-info{background:var(--paper);border-color:var(--line);color:var(--ink)}
.wc-block-components-sidebar,.wc-block-cart__sidebar{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.wc-block-components-text-input input,.wc-block-components-select select,.wc-block-components-textarea textarea,.wc-block-components-text-input input[type=email],.wc-block-components-text-input input[type=text]{border:1.5px solid var(--ink) !important;border-radius:8px !important;font-family:var(--sans) !important;background:var(--paper) !important;color:var(--ink) !important}
.wc-block-components-text-input label,.wc-block-components-select label{font-family:var(--sans)}
.wc-block-components-radio-control__option,.wc-block-components-checkbox__label{font-family:var(--sans)}
.wc-block-components-totals-item,.wc-block-components-totals-footer-item{font-family:var(--sans)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--serif);font-weight:500;font-size:26px}
.wc-block-components-shipping-rates-control__package,.wc-block-components-shipping-address{font-family:var(--sans)}
.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img{border-radius:8px}
.wc-block-components-express-payment,.wc-block-components-express-payment-continue-rule{display:none}
.wc-block-components-checkout-return-to-cart-button{color:var(--ink)}
.wc-block-cart__empty-cart__title{font-family:var(--serif);font-weight:500}
.wc-block-cart .wc-block-cart__submit-container a{color:var(--cream)}
.woocommerce-shipping-totals .woocommerce-shipping-methods{list-style:none;padding:0;margin:0}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%;margin-bottom:24px}
@media (min-width:900px){.woocommerce div.product div.images{float:left;width:46%}.woocommerce div.product div.summary{float:right;width:48%}}
@media (max-width:900px){.woocommerce ul.products{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.woocommerce ul.products{grid-template-columns:1fr}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;margin:0 0 12px}}
.cart-empty.woocommerce-info{display:none}
.lr-empty{max-width:640px;margin:0 auto;text-align:center}
.lr-empty h2{font-size:34px;margin:0 0 14px}
.lr-empty p{color:var(--ink-2);margin:0 0 26px}
.lr-empty .row-cta{justify-content:center;margin-top:0}
.woocommerce .return-to-shop{display:none}


/* ===== My Account: sign-in, the account shell, My Numbers ===== */

/* Sign in: one email field. The account page's standard head is hidden; the card carries its own. */
.woocommerce-account:not(.logged-in) .page-std__head{display:none}
.signin{max-width:640px;margin:0 auto;padding:40px 0 20px}
.signin h1{font-size:54px;margin:0 0 20px}
.signin .form{margin:30px 0 16px}
.signin__msg{background:var(--cream-2);border-left:2px solid var(--ink);border-radius:0 var(--r) var(--r) 0;padding:14px 18px;font-size:15.5px;margin:0 0 20px}
.signin__msg--ok{background:var(--paper);border-left-color:var(--ink)}
.signin__msg b{font-weight:500}
@media (max-width:640px){.signin h1{font-size:38px}}

/* The account shell: tabs on the left, her page on the right */
.woocommerce-account.logged-in .page-std__head{padding-bottom:20px}
.woocommerce-account.logged-in .page-std__head h1{font-size:44px}
.woocommerce-account.logged-in .entry.woocommerce,.woocommerce-account.logged-in .woocommerce{display:grid;gap:26px}
@media (min-width:900px){.woocommerce-account.logged-in .woocommerce{grid-template-columns:220px 1fr;gap:44px;align-items:start}}
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.woocommerce-account .woocommerce::before,.woocommerce-account .woocommerce::after{display:none !important}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none !important;width:auto !important;min-width:0}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation a{display:block;padding:14px 0;font-size:14px;letter-spacing:.08em;text-decoration:none;color:var(--ink-2)}
.woocommerce-MyAccount-navigation a:hover{color:var(--ink)}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li.is-active a:hover{color:var(--ink);font-weight:500;padding-left:14px;border-left:1.5px solid var(--hour, var(--ink))}
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--muted)}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-size:26px;margin:0 0 16px}
.woocommerce-MyAccount-content table.shop_table{width:100%;font-size:15px}
.woocommerce-MyAccount-content .form-row-first,.woocommerce-MyAccount-content .form-row-last{display:inline-block;width:100%}
@media (min-width:620px){.woocommerce-MyAccount-content .form-row-first,.woocommerce-MyAccount-content .form-row-last{width:48%}.woocommerce-MyAccount-content .form-row-first{margin-right:3%}}
.woocommerce-MyAccount-content .clear{clear:both}
.form--wide{max-width:640px}
.form--wide .hint{display:block;margin-top:6px}

/* ===== My Numbers: one tab per product, then four acts: the verdict, the line, the cards, the history ===== */
.mytabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}
.mytabs a{text-decoration:none;font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:10px 18px;border:1px solid var(--line);border-radius:999px;color:var(--ink-2);background:var(--paper)}
.mytabs a.is-on{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.mytabs a b{font-weight:500;margin-left:6px;color:inherit;opacity:.7}
.mybrain{--mb:var(--hour, var(--ink))}
.mbhead{background:var(--ink);color:var(--cream);border-radius:14px;padding:30px 28px;margin:0 0 18px;display:grid;gap:22px}
@media (min-width:900px){.mbhead{grid-template-columns:1fr auto;align-items:center;padding:36px;gap:36px}}
.mbhead__eyebrow{margin:0 0 10px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#B8BDC6}
.mybrain .mbhead h2{margin:0;font-size:30px;line-height:1.2;color:var(--cream)}
@media (min-width:900px){.mybrain .mbhead h2{font-size:34px;max-width:24ch}}
.mbhead__sub{margin:12px 0 0;font-size:15.5px;line-height:1.6;color:#D8DBE0}
.mbhead__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (min-width:540px){.mbhead__stats{grid-template-columns:repeat(4,1fr)}}
@media (min-width:900px){.mbhead__stats{grid-template-columns:repeat(2,1fr);min-width:260px}}
.mbstat{border:1px solid rgba(245,239,230,.22);border-radius:var(--r);padding:14px 10px;text-align:center}
.mbstat b{display:block;font-family:var(--serif);font-weight:500;font-size:30px;line-height:1;color:var(--cream)}
.mbstat b small{font-size:15px;color:#B8BDC6}
.mbstat span{display:block;margin-top:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#B8BDC6;line-height:1.3}
.mbstat--due b{font-size:22px}
.mbstat--wait b{font-size:22px}
.mbchart{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px 22px 18px;margin:0 0 26px}
.mybrain .mbchart h3{margin:0 0 6px;font-size:22px}
.mbchart header p{margin:0 0 18px;font-size:14.5px;line-height:1.6;color:var(--muted);max-width:62ch}
.mbchart__plot{overflow-x:auto}
.mbchart__svg{display:block;width:100%;min-width:460px;height:auto}
.mbchart__key{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--line)}
.mbchart__key li{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-2)}
.mbchart__key i{width:14px;height:2px;flex:none}
.mbchart__key b{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}
.mybrain .mbsec{margin:0 0 14px;font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-family:var(--sans);font-weight:500}
.mbgrid-wrap{margin:0 0 30px}
.mybrain__grid{display:grid;gap:14px;grid-template-columns:1fr}
@media (min-width:620px){.mybrain__grid{grid-template-columns:1fr 1fr}}
@media (min-width:1180px){.mybrain__grid{grid-template-columns:1fr 1fr 1fr}}
.mbcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px 18px;display:flex;flex-direction:column;position:relative}
.mbcard::before{content:"";position:absolute;left:22px;right:22px;top:0;height:1.5px;background:var(--c, var(--ink))}
.mybrain .mbcard h3{margin:6px 0 12px;font-family:var(--sans);font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500}
.mbcard__row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;min-height:44px}
.mbcard__num{font-family:var(--serif);font-size:38px;line-height:1;color:var(--ink)}
.mbcard__num small{font-family:var(--sans);font-size:14px;color:var(--muted);margin-left:6px;white-space:nowrap}
.mbcard__spark{width:116px;height:34px;flex:none;color:var(--line)}
.mbcard.is-good .mbcard__spark{color:var(--ink)}
.mbcard.is-bad .mbcard__spark{color:var(--muted)}
.mbcard__delta{margin:12px 0 0;font-size:14px;line-height:1.45;color:var(--ink-2)}
.mbcard__foot{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.mbcard__blurb{font-size:12.5px;color:var(--muted)}
.mbcard__go{flex:none;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--ink);padding-bottom:2px}
.mbcard--empty{border-style:dashed}
.mbcard--empty::before{display:none}
.mbcard__invite{margin:0 0 18px;font-size:15px;line-height:1.5;color:var(--muted)}
.mbcard__go--wide{margin-top:auto;align-self:flex-start}
.mbhist{margin:0 0 26px}
.mbhist__scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.mbhist table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:430px}
.mbhist th{font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;padding:12px 14px;border-bottom:1px solid var(--line)}
.mbhist td{padding:11px 14px;border-top:1px solid var(--line)}
.mbhist .num{text-align:right;font-variant-numeric:tabular-nums}
.mbhist td.num small{color:var(--muted);font-size:12px}
.mbhist td.is-good{color:var(--ink);font-weight:500}
.mbhist td.is-bad{color:var(--muted)}
.mbdot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-inline-end:8px}
.mybrain__note{margin:18px 0 0;font-size:15px;line-height:1.55;color:var(--ink-2);border-left:1.5px solid var(--ink);padding:4px 18px}
.mybrain__note b{font-weight:500}
.mbempty{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:34px 28px 30px}
.mybrain .mbempty h2{margin:0 0 12px;font-size:30px}
.mbempty > p{font-size:16.5px;line-height:1.6;color:var(--ink-2);max-width:60ch;margin:0 0 24px}
.mbempty__list{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:620px){.mbempty__list{grid-template-columns:1fr 1fr}}
.mbempty__list a{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none}
.mbempty__list a:hover{border-color:var(--ink)}
.mbempty__list b{font-weight:500;font-size:16px}
.mbempty__list span{color:var(--muted);font-size:13.5px;line-height:1.45}
.mbempty__foot{margin:22px 0 0;font-size:14px;color:var(--muted)}
.mbridge{margin:26px 0 0;background:var(--ink);color:var(--cream);border-radius:14px;padding:30px 28px;display:grid;gap:22px}
@media (min-width:860px){.mbridge{grid-template-columns:1fr auto;align-items:center;padding:34px;gap:34px}}
.mybrain .mbridge h3{font-size:26px;line-height:1.2;margin:0 0 12px;color:var(--cream)}
.mbridge p{margin:0 0 12px;font-size:15.5px;line-height:1.55;color:#D8DBE0}
.mbridge p:last-child{margin-bottom:0}
.mbridge__line{border-left:1.5px solid var(--cream);padding-left:14px;color:var(--cream) !important}
.mbridge__line b{font-weight:500}
.mbridge .btn{white-space:nowrap}
.mbridge .btn--cream{background:var(--cream);color:var(--ink);border-color:var(--cream)}
@media (max-width:899px){
  .woocommerce-MyAccount-navigation ul{display:flex;gap:8px;padding:2px 0 6px;border:0;overflow-x:auto;scrollbar-width:none}
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woocommerce-MyAccount-navigation li{flex:none;border:0}
  .woocommerce-MyAccount-navigation a{padding:9px 16px;font-size:12.5px;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--paper)}
  .woocommerce-MyAccount-navigation li.is-active a{background:var(--ink);color:var(--cream);border-color:var(--ink);padding-left:16px}
}

/* headings the kept sheets set in the serif: Inter 800 */
.challenge b,.stage__pad h3,.stage__big,/* the new games' surfaces */
.tap-pad,.scale button,.wake-counter,.scorecard__num,.scorecard__verdict,.scorecard__vs b,.savebox__h,.hubscore__t b,.test__last,.entry blockquote,.woocommerce-order .woocommerce-thankyou-order-received,.woocommerce-order ul.order_details li strong,.wc-block-components-checkout-step__title,.wc-block-components-title,.wp-block-woocommerce-cart h2,.wp-block-woocommerce-checkout h2,.wc-block-cart__totals-title,.wc-block-components-checkout-order-summary__title-text,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,.wc-block-cart__empty-cart__title,.mbstat b,.mbcard__num{font-weight:800;letter-spacing:-.01em}
