
:root{
  /* BioBylt Labs brand system (Brand Guidelines 2026) */
  --forest:#2E6E53; --deep:#1C3D30; --charcoal:#1F2322;
  --white:#FFFFFF; --mist:#F2F4F3; --mist-2:#E6EAE8; --line:#E4E8E6;
  --ink:#1D2120; --ink-soft:#565D5A; --ink-faint:#8A928E;
  --dark:#161918; --dark-2:#232826; --dark-3:#2F3432;
  --on-dark-accent:#A8D5BD;
  /* Spectrum Pop: product & data moments only, never type or buttons */
  --spectrum:linear-gradient(90deg,#8DC3E8 0%,#C9C3EA 24%,#F2C4DF 44%,#DCDCDC 62%,#BDE5CC 80%,#F5D8A8 100%);
  --spectrum-soft:linear-gradient(160deg,#F5F7F6 0%,#E8EDEA 100%);
  --label-blue:#2E6E53; --label-violet:#2E6E53;
  --ok:#2E6E53; --ok-bg:#E3EFE8; --low:#B4432F; --low-bg:#FBE9E5; --mid:#9A6B00; --mid-bg:#FBF1D9;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --r-xl:28px; --r-lg:22px; --r-md:14px; --wrap:1200px;
  color-scheme:light;
}
*{box-sizing:border-box}
body{background:var(--white);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
h1,h2,h3{text-wrap:balance;margin:0;letter-spacing:-.035em;line-height:1.04}
p{margin:0}
img{display:block;max-width:100%}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:20px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--label-blue);outline-offset:3px;border-radius:10px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding-inline:28px;border-radius:999px;font-weight:700;font-size:15.5px;border:0;cursor:pointer;font-family:inherit;transition:transform .2s ease,box-shadow .2s ease,background .2s}
.btn-dark{background:var(--charcoal);color:#fff}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(22,22,26,.7)}
.btn-spec{background:var(--forest);color:#fff}
.btn-spec:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(33,74,57,.6);background:var(--deep)}
.btn-link{font-weight:700;border-bottom:1.5px solid currentColor;padding-bottom:2px;display:inline-flex;gap:8px;align-items:center}
.arrow{transition:transform .2s ease}
.btn:hover .arrow,.btn-link:hover .arrow{transform:translateX(3px)}

/* promo + nav */
.promo{background:var(--charcoal);color:#fff;border-top:3px solid transparent;border-image:var(--spectrum) 1;display:flex;justify-content:center;align-items:center;gap:14px;padding:9px 16px;font-size:14px;font-weight:700;flex-wrap:wrap;text-align:center}
.promo a{background:#fff;color:var(--ink);border-radius:999px;padding:6px 14px;font-size:13px}
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:rgba(255,255,255,.88);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:70px;gap:20px}
.logo{display:flex;align-items:baseline;gap:6px;font-weight:800;letter-spacing:-.03em;font-size:22px}
.logo small{font-size:10.5px;letter-spacing:.34em;font-weight:700;color:var(--ink-faint)}
.nav-links{display:flex;gap:30px;font-size:15px;font-weight:600;color:var(--ink-soft)}
.nav-links a:hover{color:var(--ink)}
.nav-links .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-right:7px;vertical-align:1px}
.nav-r{display:flex;align-items:center;gap:18px}
.login{font-size:14.5px;font-weight:600;color:var(--ink-soft)}
.login:hover{color:var(--ink)}
@media (max-width:560px){.login{display:none}}
.nav .btn{height:42px;padding-inline:20px;font-size:14px}

/* hero */
.hero{padding-block:56px 40px}
.hero-top{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:end}
.hero h1{font-size:clamp(44px,7vw,92px);font-weight:800}
.hero h1 .grad{color:var(--forest);font-style:italic}
.rotator{display:block;height:1.12em;overflow:hidden;font-size:.62em;white-space:nowrap;margin-top:.18em;color:var(--ink-soft)}
.rot-track{display:block;animation:rot 12s cubic-bezier(.7,0,.3,1) infinite}
.rot-track span{display:block;height:1.12em}
@keyframes rot{0%,20%{transform:translateY(0)}25%,45%{transform:translateY(-1.12em)}50%,70%{transform:translateY(-2.24em)}75%,95%{transform:translateY(-3.36em)}100%{transform:translateY(-4.48em)}}
.hero .lede{font-size:18px;color:var(--ink-soft);margin-top:20px;max-width:30em}
.checklist{list-style:none;padding:0;margin:0;display:grid;gap:14px;font-size:16.5px;font-weight:500}
.checklist li{display:flex;gap:12px;align-items:flex-start}
.checklist svg{flex:none;width:22px;height:22px;stroke:var(--ok);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:28px}

.hero-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}
.hcard{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:1.55/1;max-width:100%}
.hcard .pill-btn{position:absolute;right:20px;bottom:20px;background:#fff;border-radius:999px;padding:12px 20px;font-weight:700;font-size:15px;display:flex;gap:8px;align-items:center;box-shadow:0 8px 24px -10px rgba(0,0,0,.25);transition:transform .2s}
.hcard:hover .pill-btn{transform:translateY(-2px)}
.trio{background:var(--mist);display:flex;justify-content:center;align-items:flex-end}
.cover{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.hcard:hover .cover{transform:scale(1.04)}
.floaty{position:absolute;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.9);border-radius:16px;padding:12px 16px;box-shadow:0 14px 30px -16px rgba(30,20,80,.35);animation:bob 6s ease-in-out infinite}
.floaty small{display:block;font-size:11.5px;font-weight:600;color:var(--ink-soft)}
.floaty b{font-size:22px;letter-spacing:-.02em}
.floaty b i{font-style:normal;font-size:12px;font-weight:600;color:var(--ink-faint);margin-left:3px}
.floaty .st{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;margin-top:2px}
.floaty .st::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
@keyframes bob{50%{transform:translateY(-6px)}}
.labs-card{background:radial-gradient(420px 260px at 78% 30%,rgba(242,196,223,.28),transparent 70%),radial-gradient(380px 240px at 30% 85%,rgba(141,195,232,.22),transparent 70%),var(--mist);padding:28px}
.labs-card .lc-title{font-size:15px;font-weight:600;color:var(--ink-soft)}
.labs-card .lc-title b{font-size:26px;color:var(--ink);letter-spacing:-.03em;display:block;margin-top:2px}
.labs-card .f1{left:28px;bottom:26px}
.labs-card .f2{right:30px;top:28px;animation-delay:-2s}
.labs-card .f3{left:44%;top:40%;animation-delay:-4s}
.st-low{color:var(--low)} .st-ok{color:var(--ok)} .st-mid{color:var(--mid)}

.team{display:flex;justify-content:center;margin-top:40px}
.team a{display:flex;align-items:center;gap:18px;border:1px solid var(--line);border-radius:999px;padding:12px 22px 12px 12px;max-width:100%;transition:box-shadow .2s}
.team a:hover{box-shadow:0 10px 30px -18px rgba(0,0,0,.35)}
.team .seal{flex:none;width:52px;height:52px;border-radius:50%;background:var(--mist);display:grid;place-items:center}
.team .seal svg{width:24px;height:24px;stroke:var(--forest);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.team b{display:block;font-size:16px}
.team span{font-size:14px;color:var(--ink-soft)}

/* marquee */
.marquee{border-block:1px solid var(--line);background:var(--mist);overflow:hidden;padding-block:18px;display:flex;align-items:center;gap:32px}
.mq-label{flex:none;padding-left:max(20px,calc((100vw - var(--wrap))/2 + 20px));font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);background:var(--mist);position:relative;z-index:2;padding-right:20px}
.mq-track{display:flex;gap:44px;width:max-content;animation:mq 40s linear infinite}
.mq-track span{font-size:15.5px;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:10px}
.mq-track span::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--ok-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M5 9.2l2.6 2.6L13 6.4' fill='none' stroke='%231E9E62' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
@keyframes mq{to{transform:translateX(-50%)}}

section{padding-block:96px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap;margin-bottom:40px}
.sec-head h2{font-size:clamp(34px,4.4vw,56px);font-weight:800;margin-top:12px;max-width:15em}
.sec-head p{color:var(--ink-soft);max-width:28em;font-size:17px}

/* protocols */
.protos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.proto{display:flex;flex-direction:column}
.proto-img{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1.02;background:var(--mist);display:flex;justify-content:center;align-items:flex-end;max-width:100%}
.proto:hover .cover{transform:scale(1.05)}
.tagpill{position:absolute;top:16px;left:16px;z-index:3;background:#fff;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:7px 12px;border-radius:999px}
.tagpill.dark{background:var(--ink);color:#fff}
.labs-vis{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:28px}
.mini{width:100%;max-width:270px;background:rgba(255,255,255,.85);border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;box-shadow:0 10px 24px -16px rgba(30,20,80,.4);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.mini .n{font-size:13px;font-weight:700}
.mini .v{font-family:var(--mono);font-size:12.5px;color:var(--ink-soft)}
.mini .bar{grid-column:1/-1;height:5px;border-radius:5px;background:rgba(0,0,0,.07);position:relative}
.mini .bar i{position:absolute;top:-3px;left:var(--p);width:11px;height:11px;border-radius:50%;background:var(--c);border:2px solid #fff;transform:translateX(-50%);box-shadow:0 1px 3px rgba(0,0,0,.25)}
.proto:hover .mini:nth-child(odd){transform:translateX(-6px)}
.proto:hover .mini:nth-child(even){transform:translateX(6px)}
.proto-img.hrt{background:#E6E7EB}
.proto-img.hrt .cover{object-fit:cover;object-position:50% 20%;transform:scale(.94);transform-origin:50% 30%}
.proto:hover .proto-img.hrt .cover{transform:scale(.98)}
.proto-img .mini{position:absolute;max-width:230px;z-index:2;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.proto-img .m1{left:16px;bottom:18px}
.proto-img .m2{right:16px;bottom:78px}
.proto:hover .proto-img .m1{transform:translateY(-4px)}
.proto:hover .proto-img .m2{transform:translateY(4px)}
.proto-body{padding:22px 4px 0;display:flex;flex-direction:column;gap:10px;flex:1}
.rx{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--ok);background:var(--ok-bg);padding:5px 11px;border-radius:999px;width:max-content}
.rx::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.proto-body h3{font-size:28px;font-weight:800}
.proto-body .combo{font-size:15px;color:var(--ink-soft)}
.proto-body .hook{font-size:16.5px;font-weight:600}
.proto-foot{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.price b{font-size:22px;font-weight:800}
.price small{font-size:13px;color:var(--ink-soft);font-weight:600}
.tbd{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);background:var(--mid-bg);padding:3px 7px;border-radius:6px;margin-left:8px;vertical-align:3px}
.proto-foot .btn{height:46px;padding-inline:20px;font-size:14.5px}
.isi{font-size:13px;color:var(--ink-faint);text-decoration:underline;text-underline-offset:3px}

.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.fcard{display:flex;flex-direction:column;gap:10px}
.fcard .ph{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1;background:var(--spectrum-soft)}
.fcard .ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.fcard:hover .ph img{transform:scale(1.05)}
.fcard .ph .tagpill{top:14px;left:14px}
.fcard h4{margin:4px 0 0;font-size:21px;letter-spacing:-.02em}
.fcard p{font-size:14.5px;color:var(--ink-soft);flex:1}
.fprice{font-size:14px;color:var(--ink-soft)}
.fprice b{font-size:19px;color:var(--ink)}
.pricenote{font-size:12.5px;color:var(--ink-faint);margin-top:18px}
.fcard .row{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}
.fcard .btn{height:42px;padding-inline:18px;font-size:14px}
.btn-ghost2{background:#fff;border:1px solid var(--line);color:var(--ink)}
.btn-ghost2:hover{border-color:var(--ink-faint)}
@media (max-width:1000px){.feat{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.feat{grid-template-columns:1fr}}
/* treatments carousel */
.treat{padding-top:0}
.featured{padding-bottom:64px}
.rail-wrap{position:relative}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,260px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:18px;scrollbar-width:thin}
.tcard{scroll-snap-align:start;display:flex;flex-direction:column;gap:10px}
.tcard .ph{border-radius:var(--r-md);overflow:hidden;aspect-ratio:1/1;background:var(--spectrum-soft)}
.tcard .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.tcard:hover .ph img{transform:scale(1.05)}
.tcard .cat{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.tcard h4{margin:0;font-size:19px;letter-spacing:-.02em}
.tcard p{font-size:14px;color:var(--ink-soft)}
.rail-btns{display:flex;gap:10px}
.rail-btns button{all:unset;cursor:pointer;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:18px;transition:background .2s}
.rail-btns button:hover{background:var(--mist)}

/* labs */
.labs{background:var(--dark);color:#fff;border-radius:40px;margin-inline:12px}
.labs .eyebrow{color:rgba(255,255,255,.55)}
.labs .sec-head p{color:rgba(255,255,255,.68)}
.labs h2 em{font-style:italic;color:var(--on-dark-accent)}
.panels{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pcard{background:linear-gradient(180deg,var(--dark-2),#18181C);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg);padding:26px;display:flex;flex-direction:column;gap:14px;transition:transform .3s,border-color .3s}
.pcard:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.2)}
.pcard .tier{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.pcard .tier.pop{display:inline-block;width:max-content;background:var(--forest);color:#fff;padding:5px 10px;border-radius:999px}
.pcard h3{font-size:24px;font-weight:800;letter-spacing:-.02em}
.pcard p{font-size:15px;color:rgba(255,255,255,.66)}
.bio{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.03)}
.bio .k{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.bio .row{display:flex;justify-content:space-between;align-items:baseline;margin-top:4px}
.bio b{font-size:28px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.bio b i{font-style:normal;font-size:13px;color:rgba(255,255,255,.5);font-weight:500;margin-left:3px}
.bio .s{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9BD4B5;display:flex;align-items:center;gap:6px}
.bio .s::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.bio .track{height:4px;border-radius:4px;margin-top:12px;background:linear-gradient(90deg,rgba(255,255,255,.1) 0 25%,#9BD4B5 25% 75%,rgba(255,255,255,.1) 75%);position:relative}
.bio .track i{position:absolute;top:-4px;left:var(--p);width:3px;height:12px;border-radius:2px;background:#fff}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.85)}
.pfoot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:6px}
.pfoot b{font-size:24px}
.pfoot .tbd{background:rgba(251,240,214,.14);color:#F3CF7A}
.pfoot .btn{height:42px;padding-inline:18px;font-size:13.5px;letter-spacing:.04em}
.labs-note{text-align:center;color:rgba(255,255,255,.55);font-size:14px;margin-top:28px;max-width:52em;margin-inline:auto}
.credit{display:flex;gap:14px;justify-content:center;align-items:center;margin-top:22px;text-align:center;font-size:15px;color:rgba(255,255,255,.85)}
.credit b{color:var(--on-dark-accent)}

/* score */
.score-sec .card{background:radial-gradient(700px 300px at 50% 0%,rgba(195,196,244,.18),transparent 70%),var(--dark);color:#fff;border-radius:40px;padding:56px 28px;text-align:center}
.score-sec .kicker{display:inline-block;background:var(--forest);color:#fff;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:8px 16px;border-radius:999px}
.score-sec h2{font-size:clamp(36px,5vw,64px);font-weight:800;margin-top:18px}
.score-sec h2 span{font-style:italic;color:var(--on-dark-accent)}
.score-sec .sub{color:rgba(255,255,255,.68);margin-top:12px;font-size:17px}
.report{max-width:820px;margin:34px auto 0;background:#0E0E11;border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg);padding:24px;text-align:left}
.report-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08);font-weight:700;flex-wrap:wrap}
.report-head .live{font-size:11.5px;letter-spacing:.14em;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:8px}
.report-head .live::before{content:"";width:7px;height:7px;border-radius:50%;background:#C3C4F4;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.3}}
.report-body{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;padding-top:22px}
.gauge{width:170px;text-align:center}
.gauge svg{width:170px;height:170px}
.gauge .t{font-family:var(--sans);font-weight:800;font-size:44px;fill:#fff}
.gauge .l{font-family:var(--sans);font-weight:700;font-size:9px;letter-spacing:.2em;fill:rgba(255,255,255,.55)}
.gauge .arc{stroke-dasharray:440;stroke-dashoffset:440}
.report.play .gauge .arc{animation:arc 1.8s cubic-bezier(.2,.8,.2,1) both}
@keyframes arc{from{stroke-dashoffset:440}to{stroke-dashoffset:141}}
.gauge b{display:block;margin-top:6px;color:var(--on-dark-accent)}
.gauge small{color:rgba(255,255,255,.5);font-size:12.5px}
.sys{display:grid;gap:14px}
.sys-row{display:grid;grid-template-columns:110px 1fr 52px 30px;gap:14px;align-items:center;font-size:14.5px}
.sys-row .tr{height:8px;border-radius:8px;background:rgba(255,255,255,.08);overflow:hidden}
.sys-row .tr i{display:block;height:100%;border-radius:8px;width:0;background:var(--c)}
.report.play .sys-row .tr i{animation:grow 1.6s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--ri,0) * 90ms)}
@keyframes grow{from{width:0}to{width:var(--w)}}
@media (prefers-reduced-motion:reduce){.gauge .arc,.sys-row .tr i{animation:none!important;stroke-dashoffset:141!important;width:var(--w)!important}}
.sys-row .tg{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-align:center;padding:3px 0;border-radius:6px}
.sys-row .n{font-family:var(--mono);text-align:right;color:rgba(255,255,255,.8)}
.score-sec .btn{margin-top:30px}
.score-sec .fine{display:block;margin-top:12px;font-size:13px;color:rgba(255,255,255,.45)}

/* muscle */
.muscle .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.muscle h2{font-size:clamp(34px,4.4vw,56px);font-weight:800;margin-top:12px}
.muscle .lede{color:var(--ink-soft);font-size:17px;margin-top:18px;max-width:32em}
.pillars{display:grid;gap:14px}
.pillar{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:22px;border-radius:var(--r-md);border:1px solid var(--line);transition:border-color .2s,transform .2s}
.pillar:hover{border-color:var(--ink-faint);transform:translateX(4px)}
.pillar .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--mist)}
.pillar .ic svg{width:22px;height:22px;stroke:var(--forest);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pillar b{font-size:16.5px}
.pillar p{font-size:14.5px;color:var(--ink-soft);margin-top:4px}

/* steps */
.steps-sec{background:var(--mist)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:s}
.step{background:var(--white);border-radius:var(--r-lg);padding:30px;border:1px solid var(--line)}
.step::before{counter-increment:s;content:counter(s);font-family:var(--mono);font-size:13px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff;font-weight:500}
.step h3{font-size:22px;margin-top:20px}
.step p{color:var(--ink-soft);margin-top:10px;font-size:15px}
.step .time{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:12.5px;color:var(--ink-faint)}

/* faq */
.faq .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px}
.faq h2{font-size:clamp(34px,4vw,48px);font-weight:800;margin-top:12px}
.faq .side p{color:var(--ink-soft);margin-top:14px}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:22px;font-weight:700;font-size:17px}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:var(--mist) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M10 15h10M15 10v10' stroke='%2316161A' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center no-repeat;transition:transform .25s}
details[open] summary::after{transform:rotate(45deg)}
details p{color:var(--ink-soft);padding-bottom:22px;max-width:40em}

.final{padding-block:8px 96px}
.final-card{border-radius:40px;padding:0 0 0 56px;background:var(--mist);display:grid;grid-template-columns:1fr auto;align-items:center;overflow:hidden;gap:20px}
.final-card h2{font-size:clamp(34px,4.6vw,58px);font-weight:800;max-width:11em}
.final-card p{margin-top:12px;font-size:17px;color:var(--ink-soft)}
.final-card .btn{margin-top:26px}
.final-card .copy{padding-block:56px}
.final-card img{height:420px;width:auto;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}

footer{background:var(--dark);color:rgba(255,255,255,.65);padding-block:64px 40px;font-size:14px}
.f-top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}
footer .logo{color:#fff}
footer h4{color:#fff;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
footer a:hover{color:#fff}
.f-brand p{margin-top:14px;max-width:26em}
.contact{margin-top:18px;line-height:1.8;color:rgba(255,255,255,.75)}
.legit{display:inline-block;margin-top:18px;border:1px solid rgba(255,255,255,.25);padding:8px 12px;border-radius:10px;font-size:12px;font-weight:700;color:#fff;letter-spacing:.04em}
.disc{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;line-height:1.7;color:rgba(255,255,255,.45);display:grid;gap:10px}

@media (max-width:1000px){
  .hero-top,.muscle .wrap,.faq .wrap{grid-template-columns:1fr}
  .hero-cards{grid-template-columns:1fr}
  .protos,.steps,.panels{grid-template-columns:1fr}
  .protos,.panels{max-width:560px;margin-inline:auto}
  .f-top{grid-template-columns:1fr 1fr}
  .nav-links{display:none}
  section{padding-block:72px}
  .final-card{grid-template-columns:1fr;padding:0 28px}
  .final-card img{height:280px;justify-self:center}
  .final-card .copy{padding-block:44px 0}
}
@media (max-width:560px){
  .hero{padding-block:36px 28px}
  .hcard{aspect-ratio:1.1/1}
  .labs,.score-sec .card{border-radius:28px}
  .labs{margin-inline:0}
  .f-top{grid-template-columns:1fr}
  .rotator{font-size:6.4vw}
  .report-body{grid-template-columns:1fr;justify-items:center}
  .sys{width:100%}
  .sys-row{grid-template-columns:84px 1fr 44px 26px;gap:10px;font-size:13px}
  .mq-label{display:none}
  .team a{border-radius:22px}
  .promo{font-size:13px}
  .labs-card .f3{display:none}
  .labs-card .f1{left:20px;bottom:84px}
  .labs-card .f2{right:20px;top:auto;bottom:84px}
  .labs-card .pill-btn,.trio .pill-btn{right:16px;bottom:16px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Brand type: Newsreader display, Inter body */
h1,h2,h3,h4,.logo{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.015em!important}
.hero h1{line-height:1.02}
.proto-body h3,.pcard h3,.fcard h4,.tcard h4,.step h3{font-weight:500!important}
.logo small{font-family:var(--sans)}
.eyebrow{color:var(--forest)}
.labs .eyebrow{color:var(--on-dark-accent)}
.checklist svg{stroke:var(--forest)}
.labs-card .lc-title{max-width:54%}
.labs-card .lc-title b{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.1;letter-spacing:-.01em}
.spec-rule{height:3px;border-radius:3px;background:var(--spectrum);width:120px;margin-top:18px}

/* ===== Multi-page components ===== */
.nav-links a.on{color:var(--ink)}
.mnav{display:none;position:relative}
.mnav summary{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);display:grid;place-items:center}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary span,.mnav summary span::before,.mnav summary span::after{display:block;width:18px;height:1.6px;background:var(--ink);border-radius:2px;position:relative}
.mnav summary span::before,.mnav summary span::after{content:"";position:absolute;left:0}
.mnav summary span::before{top:-6px}.mnav summary span::after{top:6px}
.mpanel{position:absolute;right:0;top:54px;width:min(300px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 50px -24px rgba(0,0,0,.3);padding:10px;display:grid;z-index:40}
.mpanel a{padding:12px 14px;border-radius:10px;font-weight:600}
.mpanel a:hover{background:var(--mist)}
.mpanel .btn{margin-top:6px;color:#fff}
@media (max-width:1000px){.mnav{display:block}}
@media (max-width:560px){.nav-r .btn{display:none}}

.page-hero{padding-block:64px 48px;border-bottom:1px solid var(--line)}
.page-hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.page-hero.solo .wrap{grid-template-columns:1fr;max-width:900px}
.page-hero h1{font-size:clamp(40px,5.4vw,68px);line-height:1.04;margin-top:14px}
.page-hero h1 em{font-style:italic;color:var(--forest)}
.page-hero .lede{font-size:18px;color:var(--ink-soft);margin-top:18px;max-width:34em}
.page-hero .hero-ctas{margin-top:26px}
.page-hero .ph-img{border-radius:var(--r-xl);overflow:hidden;background:var(--mist);aspect-ratio:1/1;max-width:100%}
.page-hero .ph-img img{width:100%;height:100%;object-fit:cover}
.crumbs{font-size:13px;color:var(--ink-faint)}
.crumbs a:hover{color:var(--ink)}
.alt{background:var(--mist)}
.narrow{max-width:820px}
.prose p{color:var(--ink-soft);font-size:17px;margin-top:14px;max-width:40em}
.prose h2{font-size:clamp(28px,3.4vw,40px);margin-top:8px}
.prose h3{font-size:22px;margin-top:30px}
.prose ul{color:var(--ink-soft);font-size:16.5px;padding-left:20px;margin-top:12px;display:grid;gap:8px}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;background:#fff}
.card h3{font-size:23px}
.card p{color:var(--ink-soft);margin-top:10px;font-size:15.5px}
.card .eyebrow{display:block;margin-bottom:8px}
.alt .card{border-color:transparent}
.ticks{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px}
.ticks li{display:flex;gap:10px;font-size:15.5px;color:var(--ink)}
.ticks li::before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--ok-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M5 9.2l2.6 2.6L13 6.4' fill='none' stroke='%23357A5B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.04em;padding:4px 10px;border-radius:999px;background:var(--mist);color:var(--ink-soft)}
.status.early{background:#FBF1D9;color:#8A6200}
.status.est{background:var(--ok-bg);color:var(--forest)}

/* steps list (vertical) */
.vsteps{display:grid;gap:14px;counter-reset:v}
.vstep{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:24px;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff}
.vstep::before{counter-increment:v;content:counter(v);width:40px;height:40px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font-family:var(--mono);font-size:14px}
.vstep h3{font-size:21px}
.vstep p{color:var(--ink-soft);margin-top:6px}

/* treatments filter grid */
.chips-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.fchip{all:unset;cursor:pointer;font-size:14px;font-weight:600;padding:9px 16px;border-radius:999px;border:1px solid var(--line);color:var(--ink-soft);transition:all .2s}
.fchip:hover{border-color:var(--ink-faint);color:var(--ink)}
.fchip[aria-pressed="true"]{background:var(--charcoal);border-color:var(--charcoal);color:#fff}
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tg-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff;scroll-margin-top:100px;transition:box-shadow .3s,transform .3s}
.tg-card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(0,0,0,.35)}
.tg-card .ph{aspect-ratio:1/1;background:var(--mist);overflow:hidden}
.tg-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.tg-card:hover .ph img{transform:scale(1.04)}
.tg-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.tg-body .cat{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--forest)}
.tg-body h3{font-size:26px}
.tg-body p{color:var(--ink-soft);font-size:15px}
.tg-body .ticks li{font-size:14.5px}
.tg-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.tg-foot .p b{font-size:20px}
.tg-foot .p small{display:block;font-size:12.5px;color:var(--ink-faint)}
.tg-foot .row{display:flex;gap:8px}
.tg-foot .btn{height:42px;padding-inline:16px;font-size:14px}
.tg-card[hidden]{display:none}

/* pricing */
.ptable-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff}
.ptable{width:100%;border-collapse:collapse;min-width:640px;font-variant-numeric:tabular-nums}
.ptable th,.ptable td{text-align:left;padding:16px 20px;border-bottom:1px solid var(--line);font-size:15px}
.ptable th{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-weight:700;background:var(--mist)}
.ptable tr:last-child td{border-bottom:0}
.ptable td b{font-size:17px}
.ptable td small{color:var(--ink-faint)}
.fine{font-size:13.5px;color:var(--ink-faint);margin-top:16px;max-width:60em}
.offer{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--charcoal);color:#fff;border-radius:var(--r-lg);padding:28px 32px}
.offer h3{font-size:26px}
.offer p{color:rgba(255,255,255,.7);margin-top:6px}
.offer code{font-family:var(--mono);background:rgba(255,255,255,.1);padding:4px 10px;border-radius:8px}

/* product detail */
.pd{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.pd .ph-img{position:sticky;top:100px}
.pd h1{font-size:clamp(40px,5vw,62px);margin-top:10px}
.pd .lede{font-size:18px;color:var(--ink-soft);margin-top:14px}
.pd .pricebox{margin-top:24px;padding:20px;border-radius:var(--r-md);background:var(--mist);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.pd .pricebox b{font-size:26px}
.pd .pricebox small{display:block;color:var(--ink-faint);font-size:13px}
.kv{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;margin-top:22px;font-size:15px}
.kv dt{color:var(--ink-faint);font-weight:600}
.kv dd{margin:0}
.safety{border-left:3px solid var(--forest);padding:18px 22px;background:var(--mist);border-radius:0 var(--r-md) var(--r-md) 0;margin-top:30px}
.safety h3{font-size:18px}
.safety p{font-size:14.5px;color:var(--ink-soft);margin-top:6px}

/* calculators */
.calc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.calc-tabs a{font-size:14px;font-weight:600;padding:9px 16px;border-radius:999px;border:1px solid var(--line);color:var(--ink-soft)}
.calc-tabs a.on{background:var(--charcoal);color:#fff;border-color:var(--charcoal)}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.calc form{display:grid;gap:16px;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;background:#fff}
.fld{display:grid;gap:6px}
.fld label{font-size:13px;font-weight:600;color:var(--ink-soft)}
.fld .row{display:flex;gap:10px}
.fld input,.fld select{font:inherit;font-size:16px;height:48px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:#fff;color:var(--ink);width:100%;min-width:0}
.fld input:focus,.fld select:focus{outline:2px solid var(--forest);outline-offset:1px}
.seg{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.seg label{flex:1;text-align:center;padding:12px;cursor:pointer;font-size:15px;font-weight:600;color:var(--ink-soft)}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{color:#fff}
.seg label:has(input:checked){background:var(--charcoal);color:#fff}
.result{border-radius:var(--r-lg);background:var(--dark);color:#fff;padding:30px}
.result .k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:700}
.result .big{font-family:var(--serif);font-size:64px;line-height:1;margin-top:10px;font-variant-numeric:tabular-nums}
.result .big small{font-family:var(--sans);font-size:16px;color:rgba(255,255,255,.6);margin-left:6px}
.result .sub{color:rgba(255,255,255,.7);margin-top:12px;font-size:15px}
.result .rows{display:grid;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:15px}
.result .rows div{display:flex;justify-content:space-between;gap:10px}
.result .rows b{font-variant-numeric:tabular-nums}
.result .spec-rule{margin-top:18px}
.result .btn{margin-top:22px;background:#fff;color:var(--ink)}

/* legal / template */
.legal{max-width:760px}
.legal h1{font-size:clamp(36px,4.6vw,54px)}
.legal .updated{color:var(--ink-faint);font-size:14px;margin-top:10px}
.legal h2{font-size:26px;margin-top:40px}
.legal h3{font-size:20px;margin-top:26px}
.legal p,.legal li{color:var(--ink-soft);font-size:16px;line-height:1.7}
.legal p{margin-top:12px}

/* partner form */
.pform{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;background:#fff}
.pform .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pform textarea{font:inherit;font-size:16px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;min-height:110px}
.checks-grid{display:flex;flex-wrap:wrap;gap:8px}
.checks-grid label{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:14px;cursor:pointer}

@media (max-width:1000px){
  .page-hero .wrap,.grid2,.pd,.calc{grid-template-columns:1fr}
  .grid3,.tgrid{grid-template-columns:1fr 1fr}
  .pd .ph-img{position:static;max-width:520px}
}
@media (max-width:620px){
  .grid3,.tgrid,.pform .two{grid-template-columns:1fr}
  .page-hero{padding-block:40px 32px}
  .offer{padding:24px}
  .result .big{font-size:52px}
}
.calc>*,.calc form>*,.fld .row>*{min-width:0}
.fld .row input{flex:1 1 0}
.panels>*{min-width:0}
@media (max-width:620px){.labs .wrap{padding-inline:16px}.pcard{padding:20px}}
.seg label{position:relative;overflow:hidden}.seg input{left:0;top:0}
.panels.two-up{grid-template-columns:repeat(3,1fr)}@media (max-width:1000px){.panels.two-up{grid-template-columns:1fr}}

/* ===== Dropdown nav ===== */
.nav-links{align-items:center}
.nav-links>a,.dd-t{display:inline-flex;align-items:center;gap:5px;height:70px}
.dd{position:relative}
.dd-t svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .2s}
.dd:hover .dd-t svg,.dd:focus-within .dd-t svg{transform:rotate(180deg)}
.dd-m{position:absolute;top:calc(100% - 8px);left:-14px;min-width:240px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 48px -24px rgba(0,0,0,.3);padding:8px;display:grid;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .18s ease;z-index:50}
.dd:hover .dd-m,.dd:focus-within .dd-m{opacity:1;visibility:visible;transform:none}
.dd-m a{padding:10px 12px;border-radius:10px;font-size:14.5px;font-weight:500;color:var(--ink-soft);white-space:nowrap}
.dd-m a:hover{background:var(--mist);color:var(--ink)}
.nav-links .on,.nav-links .on>.dd-t{color:var(--ink)}
.nav-links a.priv{color:var(--forest);font-weight:700}
.nav-links a.priv::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--forest);margin-right:4px}
.mpanel{max-height:75vh;overflow:auto}
.mgrp{display:grid;padding:4px 0;border-bottom:1px solid var(--line)}
.mgrp .mh{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--forest);padding:10px 14px 4px}
.mgrp a{font-weight:500;padding:9px 14px}
.mpanel a.priv{color:var(--forest);font-weight:700}
@media (max-width:1100px){.nav-links{gap:22px}}

/* ===== Glass ===== */
.glass{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-radius:20px;box-shadow:0 24px 50px -24px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.12);color:#fff}
.glass.light{background:rgba(255,255,255,.62);border-color:rgba(255,255,255,.8);color:var(--ink);box-shadow:0 24px 50px -26px rgba(20,40,30,.35),inset 0 1px 0 rgba(255,255,255,.9)}
.gh{position:relative;overflow:hidden;background:radial-gradient(700px 420px at 85% 20%,rgba(53,122,91,.55),transparent 65%),radial-gradient(520px 360px at 70% 95%,rgba(242,196,223,.18),transparent 70%),radial-gradient(500px 300px at 10% 100%,rgba(141,195,232,.14),transparent 70%),var(--dark);color:#fff;padding-block:72px 80px}
.gh .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;position:relative}
.gh .crumbs,.gh .crumbs a{color:rgba(255,255,255,.55)}
.gh .eyebrow{color:var(--on-dark-accent)}
.gh h1{font-size:clamp(42px,5.6vw,74px);line-height:1.02;margin-top:14px;color:#fff}
.gh h1 em{font-style:italic;color:var(--on-dark-accent)}
.gh .lede{color:rgba(255,255,255,.72);font-size:18px;margin-top:18px;max-width:32em}
.gh .hero-ctas{margin-top:28px}
.gh .btn-link{color:#fff}
.gh .btn-dark{background:#fff;color:var(--ink)}
.gh-ticks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-size:14.5px;color:rgba(255,255,255,.8)}
.gh-ticks span::before{content:"✓";color:var(--on-dark-accent);margin-right:8px;font-weight:700}
.gh-stats{display:flex;gap:40px;flex-wrap:wrap;margin-top:34px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12)}
.gh-stats b{display:block;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1}
.gh-stats span{font-size:13.5px;color:rgba(255,255,255,.6)}
.gstage{position:relative;min-height:460px}
.gstage .photo{position:absolute;inset:0 0 0 12%;border-radius:28px;overflow:hidden;background:#dfe6e2}
.gstage .photo img{width:100%;height:100%;object-fit:cover}
.gstage .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,transparent 40%,rgba(26,28,27,.35))}
.gm{position:absolute;padding:14px 16px;min-width:190px;animation:bob 7s ease-in-out infinite}
.gm small{display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:600;opacity:.8}
.gm small i{font-style:normal;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:rgba(53,122,91,.18);color:var(--forest)}
.gm small i.lo{background:rgba(180,67,47,.14);color:#B4432F}
.gm small i.mid{background:rgba(154,107,0,.14);color:#9A6B00}
.glass:not(.light) small i{background:rgba(168,213,189,.18);color:var(--on-dark-accent)}
.gm b{display:block;font-size:28px;letter-spacing:-.02em;margin-top:4px;font-variant-numeric:tabular-nums}
.gm b em{font-style:normal;font-size:12px;font-weight:500;opacity:.6;margin-left:4px}
.gm .tr{height:4px;border-radius:4px;background:rgba(0,0,0,.08);margin-top:10px;position:relative}
.glass:not(.light) .tr{background:rgba(255,255,255,.14)}
.gm .tr i{position:absolute;top:-3px;left:var(--p);width:10px;height:10px;border-radius:50%;background:var(--forest);border:2px solid #fff}
.gm.g1{top:6%;left:0}.gm.gd{top:38%;right:-2%;animation-delay:-2.5s}.gm.g3{bottom:6%;left:6%;animation-delay:-4.5s}
.gring{position:absolute;bottom:10%;right:8%;padding:18px 22px;text-align:center;animation:bob 8s ease-in-out infinite;animation-delay:-1s}
.gring svg{width:110px;height:110px}
.gring .l{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;opacity:.7}
@media (max-width:1000px){.gh .wrap{grid-template-columns:1fr}.gstage{min-height:420px}}
@media (max-width:560px){.gstage{min-height:380px}.gstage .photo{inset:0}.gm{min-width:160px;padding:12px}.gm.gd{right:0}.gm b{font-size:22px}.gring{display:none}.gh-stats{gap:24px}.gh-stats b{font-size:32px}}

/* glass sections on dark */
.dark-sec{background:var(--dark);color:#fff}
.dark-sec .eyebrow{color:var(--on-dark-accent)}
.dark-sec .sec-head p{color:rgba(255,255,255,.68)}
.gcards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gcards .glass{padding:26px}
.gcards h3{font-size:23px;color:#fff}
.gcards p{color:rgba(255,255,255,.7);margin-top:8px;font-size:15px}
.glow-bg{background:radial-gradient(600px 360px at 15% 10%,rgba(53,122,91,.45),transparent 70%),radial-gradient(600px 360px at 90% 90%,rgba(242,196,223,.14),transparent 70%),var(--dark)}
@media (max-width:1000px){.gcards{grid-template-columns:1fr}}

/* panel page: marker groups */
.mgroups{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.mgroups .card h3{font-size:20px}
.mgroups .card ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px;font-size:15px;color:var(--ink-soft)}
.mgroups .card li{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line);padding-bottom:6px}
.mgroups .count{font-family:var(--mono);font-size:12px;color:var(--ink-faint)}
.report{max-width:none}
@media (max-width:1000px){.mgroups{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.mgroups{grid-template-columns:1fr}}

/* decoders */
.dec{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}
.dec-in{border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;padding:24px}
.dec-in h3{font-size:19px;margin-top:18px}
.dec-in h3:first-child{margin-top:0}
.mrow{display:grid;grid-template-columns:1fr 120px 64px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.mrow label{font-size:14.5px;font-weight:600}
.mrow label small{display:block;font-weight:400;color:var(--ink-faint);font-size:12px}
.mrow input{font:inherit;font-size:15px;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;width:100%;min-width:0}
.mrow input:focus{outline:2px solid var(--forest);outline-offset:1px}
.mrow .u{font-size:12px;color:var(--ink-faint)}
.dec-out{position:sticky;top:96px;border-radius:var(--r-lg);padding:24px;min-height:300px}
.dec-out .sum{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 16px}
.dec-out .sum span{font-size:12.5px;font-weight:700;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.1)}
.res{display:grid;gap:10px;max-height:560px;overflow:auto;padding-right:4px}
.ri{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.ri .h{display:flex;justify-content:space-between;gap:10px;align-items:center;font-weight:600;font-size:15px}
.ri .h b{font-variant-numeric:tabular-nums}
.ri p{font-size:13.5px;color:rgba(255,255,255,.68);margin-top:6px}
.pill{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;white-space:nowrap}
.p-ideal{background:rgba(126,224,168,.16);color:#9BD4B5}.p-ok{background:rgba(141,195,232,.16);color:#A9D4F2}.p-bord{background:rgba(240,195,109,.16);color:#F0C36D}.p-out{background:rgba(243,154,138,.16);color:#F39A8A}.p-ctx{background:rgba(255,255,255,.1);color:rgba(255,255,255,.7)}
.empty{color:rgba(255,255,255,.55);font-size:14.5px;padding:18px 0}
.dec-out .btn{margin-top:18px;background:#fff;color:var(--ink);width:100%}
.dec-note{font-size:12.5px;color:rgba(255,255,255,.5);margin-top:12px}
.devices{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}
@media (max-width:1000px){.dec{grid-template-columns:1fr}.dec-out{position:static}}
@media (max-width:480px){.mrow{grid-template-columns:1fr 96px 48px}}

/* BYLT Private */
.pv-tier{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}
.pv-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:14px}
.pv-list li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.pv-list li i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(168,213,189,.14);color:var(--on-dark-accent);font-style:normal;font-family:var(--mono);font-size:12px}
.pv-list b{display:block;font-size:16px}
.pv-list span{font-size:14.5px;color:rgba(255,255,255,.65)}
.cadence{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cadence .glass{padding:22px}
.cadence .k{font-family:var(--mono);font-size:12px;color:var(--on-dark-accent)}
.cadence h3{font-size:21px;margin-top:8px;color:#fff}
.cadence p{font-size:14px;color:rgba(255,255,255,.65);margin-top:6px}
.apply{display:grid;gap:14px}
.apply .fld label{color:rgba(255,255,255,.7)}
.apply .fld input,.apply .fld select,.apply textarea{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:#fff}
.apply textarea{font:inherit;font-size:16px;border-radius:12px;padding:12px 14px;min-height:90px}
.apply .fld select option{color:#000}
.apply .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pv-teaser{border-radius:40px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;padding:56px}
.pv-teaser h2{font-size:clamp(34px,4.4vw,56px);color:#fff;margin-top:12px}
.pv-teaser h2 em{font-style:italic;color:var(--on-dark-accent)}
.pv-teaser p{color:rgba(255,255,255,.7);margin-top:14px;font-size:17px;max-width:30em}
.pv-teaser .chips span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:rgba(255,255,255,.85)}
@media (max-width:1000px){.pv-tier,.pv-teaser{grid-template-columns:1fr}.cadence{grid-template-columns:1fr 1fr}.pv-teaser{padding:32px 24px;border-radius:28px}}
@media (max-width:560px){.cadence{grid-template-columns:1fr}.apply .two{grid-template-columns:1fr}}
.gm.gd{top:24%;right:-3%}
.gring{bottom:-3%;right:-2%}
.gm.g3{bottom:4%;left:0}
@media (max-width:560px){.gm.gd{top:30%}}
/* featured row: 5 cards */
.feat{grid-template-columns:repeat(5,1fr);gap:16px}
.fcard h4{font-size:20px}
.fcard p{font-size:14px}
.fcard .row{flex-wrap:nowrap}
.fcard .row .btn{height:40px;padding-inline:14px;font-size:13.5px}
@media (max-width:1200px){.feat{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.feat{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.feat{grid-template-columns:1fr}}
.fcard .row{flex-direction:column;gap:8px}
.fcard .row .btn{width:100%;white-space:nowrap}
/* ===== Photo tiles ===== */
.goals{padding-top:24px}
.bento{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:300px 300px;gap:16px}
.ptile{position:relative;border-radius:var(--r-xl);overflow:hidden;display:block;background:var(--mist);color:#fff;isolation:isolate}
.ptile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1);z-index:-2}
.ptile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(26,28,27,0) 35%,rgba(26,28,27,.72) 100%)}
.ptile:hover img{transform:scale(1.06)}
.ptile-in{position:absolute;left:24px;right:24px;bottom:24px;display:grid;gap:4px;padding-right:130px}
.pt-l{font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.pt-t{font-family:var(--serif);font-size:30px;line-height:1.1;letter-spacing:-.01em}
.pt-s{font-size:14px;color:rgba(255,255,255,.78)}
.pt-cta{position:absolute;right:20px;bottom:22px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:10px 16px;border-radius:999px;font-weight:700;font-size:14px;transition:background .2s,color .2s}
.ptile:hover .pt-cta{background:#fff;color:var(--ink)}
.t-a{grid-row:1/3}
.t-a .pt-t{font-size:40px}
.t-e{grid-column:2/4}
.t-b{grid-column:2}.t-c{grid-column:3}
.t-d{display:none}
@media (min-width:1001px){.bento{grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:280px 280px 280px}.t-a{grid-row:1/3}.t-b{grid-column:2;grid-row:1}.t-c{grid-column:3;grid-row:1}.t-d{display:block;grid-column:2/4;grid-row:2}.t-e{grid-column:1/4;grid-row:3}}
@media (max-width:1000px){.bento{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:260px}.t-a{grid-row:auto;grid-column:1/3}.t-b,.t-c{grid-column:auto}.t-d{display:block;grid-column:1/3}.t-e{grid-column:1/3}.t-a .pt-t{font-size:32px}}
@media (max-width:560px){.bento{grid-template-columns:1fr;grid-auto-rows:240px}.t-a,.t-d,.t-e{grid-column:auto}.ptile-in{padding-right:0;bottom:70px}.pt-cta{left:24px;right:auto;bottom:20px}.pt-t{font-size:26px}}
.ptile::after{background:linear-gradient(90deg,rgba(26,28,27,.82) 0%,rgba(26,28,27,.45) 42%,rgba(26,28,27,0) 72%),linear-gradient(180deg,rgba(26,28,27,0) 55%,rgba(26,28,27,.45) 100%)}
.ptile img{object-position:75% 50%}
.t-a img{object-position:60% 50%}
.ptile-in{right:auto;max-width:62%;padding-right:0;bottom:80px}
.t-a .ptile-in{max-width:70%}
.pt-cta{left:24px;right:auto;bottom:24px}
.t-b .ptile-in,.t-c .ptile-in{max-width:78%}
.t-b .pt-t,.t-c .pt-t{font-size:26px}
.t-e.glow-bg::after{background:none}
.lab-cards{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:grid;grid-template-columns:repeat(4,150px);gap:12px}
.lab-cards .lc{padding:14px;border-radius:16px;display:grid;gap:2px;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.lab-cards .lc:nth-child(odd){transform:translateY(-14px)}
.t-e:hover .lab-cards .lc{transform:translateY(0)}
.lab-cards small{font-size:12px;opacity:.75}
.lab-cards b{font-size:26px;font-variant-numeric:tabular-nums}
.lab-cards b em{font-style:normal;font-size:11px;opacity:.6;margin-left:3px;font-weight:500}
.lab-cards i{font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#9BD4B5}
.lab-cards i.lo{color:#F39A8A}.lab-cards i.mid{color:#F0C36D}
@media (max-width:1100px){.lab-cards{grid-template-columns:repeat(2,140px)}}
@media (max-width:760px){.lab-cards{display:none}}
@media (max-width:560px){.ptile-in{max-width:none;right:24px;bottom:76px}}
.ptile.t-e{background:radial-gradient(600px 300px at 80% 30%,rgba(53,122,91,.55),transparent 70%),radial-gradient(500px 260px at 20% 100%,rgba(242,196,223,.16),transparent 70%),var(--dark)}
.ptile::after{background:linear-gradient(90deg,rgba(26,28,27,.88) 0%,rgba(26,28,27,.68) 45%,rgba(26,28,27,.12) 85%)}
.t-b img,.t-c img,.t-d img{object-position:100% 50%}
@media (max-width:560px){.ptile::after{background:linear-gradient(180deg,rgba(26,28,27,.25) 0%,rgba(26,28,27,.8) 70%)}.ptile img{object-position:80% 30%}}
/* ===== Photo banners ===== */
.ban{position:relative;border-radius:32px;overflow:hidden;display:grid;grid-template-columns:42% 58%;align-items:center;min-height:520px;isolation:isolate}
.ban.light{background:#EFF1F0;color:var(--ink)}
.ban.light.cool{background:#EFF1F0}
.ban.dark{background:#0E1213;color:#fff}
.ban-copy{padding:56px 0 56px 56px;position:relative;z-index:2}
.ban-kick{display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;flex-wrap:wrap}
.ban-kick b{font-weight:800}
.ban-kick i{display:block;width:44px;height:1px;background:currentColor;opacity:.45}
.ban-kick span{opacity:.6;letter-spacing:.14em}
.ban h1,.ban h2{font-family:var(--sans)!important;font-weight:800!important;letter-spacing:-.05em!important;line-height:.98;font-size:clamp(40px,5vw,72px);margin-top:26px}
.ban h1 em,.ban h2 em{font-style:italic;color:#6F8B76}
.ban.dark h1 em,.ban.dark h2 em{color:#B7DBC6}
.ban .ban-sub{font-size:18px;margin-top:18px;max-width:30em;opacity:.72;line-height:1.5}
.ban .ban-lead{font-size:20px;font-weight:600;margin-top:16px;opacity:.8}
.ban .hero-ctas{margin-top:28px}
.ban .btn-dark{background:#111;height:58px;padding-inline:34px;font-size:16px}
.ban.dark .btn-mint{background:#B7DBC6;color:#0E1213;height:58px;padding-inline:34px;font-size:16px}
.ban.dark .btn-line{border:1px solid rgba(255,255,255,.4);color:#fff;height:58px;padding-inline:30px;font-size:16px}
.ban-pill{display:inline-block;margin-top:26px;background:#B7DBC6;color:#0E1213;font-size:12.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;padding:9px 18px;border-radius:999px}
.ban-pill+h1,.ban-pill+h2{margin-top:18px}
.ban-icons{display:flex;margin-top:34px;gap:0}
.ban-icons div{display:grid;justify-items:center;gap:8px;padding-inline:20px;text-align:center;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;line-height:1.35;border-left:1px solid currentColor;border-color:rgba(127,127,127,.3)}
.ban-icons div:first-child{border-left:0;padding-left:0}
.ban-icons svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.ban-photo{position:relative;align-self:stretch;min-height:100%;container-type:inline-size}
.ban-photo .frame{position:absolute;right:0;top:50%;transform:translateY(-50%);width:100%;aspect-ratio:1090/811}
.ban-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ban-photo .frame::before{content:"";position:absolute;inset:0 auto 0 0;width:22%;z-index:1;background:linear-gradient(90deg,var(--banbg),transparent)}
.ban.light{--banbg:#EFF1F0}.ban.light.cool{--banbg:#EFF1F0}.ban.dark{--banbg:#0E1213}
.bc{position:absolute;z-index:2;border-radius:clamp(10px,1.6cqw,20px);padding:clamp(8px,1.6cqw,18px) clamp(10px,2cqw,22px);display:flex;flex-direction:column;justify-content:center;gap:clamp(2px,.5cqw,6px)}
.bc.lt{background:rgba(247,246,242,.9);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 40px -24px rgba(0,0,0,.3);color:var(--ink)}
.bc.dk{background:rgba(38,42,40,.82);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 24px 50px -24px rgba(0,0,0,.6);color:#fff}
.bc.dk2{background:rgba(16,20,21,.82);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);color:#fff}
.bc .k{font-size:clamp(9px,1.25cqw,13px);letter-spacing:.1em;text-transform:uppercase;font-weight:600;opacity:.75}
.bc .v{font-size:clamp(18px,3.4cqw,36px);font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.bc .v small{font-size:.4em;font-weight:500;opacity:.6;margin-left:4px;letter-spacing:0}
.bc .row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bc .st{font-size:clamp(9px,1.2cqw,13px);font-weight:600;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.bc.lt .st{background:#E2EEE7;color:#2F6B4B;padding:3px 10px;border-radius:999px}
.bc .st::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.bc.dk .st,.bc.dk2 .st{color:#9BD4B5}
.bc .bar{height:4px;border-radius:4px;background:rgba(0,0,0,.08);position:relative;margin-top:4px}
.bc.dk .bar,.bc.dk2 .bar{background:rgba(255,255,255,.12)}
.bc .bar i{position:absolute;left:0;top:0;bottom:0;width:var(--w);border-radius:4px;background:currentColor;opacity:.85}
.bc .bar i::after{content:"";position:absolute;right:-4px;top:-3px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid currentColor}
.bc .spark{display:flex;align-items:flex-end;gap:4px;height:clamp(20px,5cqw,56px)}
.bc .spark i{width:clamp(6px,1.2cqw,12px);border-radius:3px;background:rgba(255,255,255,.35)}
.bc .spark i:last-child{background:rgba(255,255,255,.75)}
.bc .ic{width:clamp(26px,5cqw,52px);height:clamp(26px,5cqw,52px);border-radius:50%;background:rgba(0,0,0,.05);display:grid;place-items:center;flex:none}
.bc .ic svg{width:55%;height:55%;fill:none;stroke:currentColor;stroke-width:1.5}
.bc .main{flex:1;min-width:0}
.bc h5{margin:0;font-family:var(--sans);font-size:clamp(11px,1.6cqw,17px);font-weight:600}
.bc .ringrow{display:flex;gap:clamp(10px,2.6cqw,28px);align-items:center}
.bc .ring{width:clamp(70px,15cqw,170px);flex:none}
.bc .ring text{font-family:var(--sans);font-weight:800;fill:#fff}
.bc .sys{flex:1;display:grid;gap:clamp(3px,.9cqw,10px)}
.bc .sys div{display:flex;justify-content:space-between;align-items:center;font-size:clamp(10px,1.5cqw,16px);padding-bottom:clamp(3px,.7cqw,8px);border-bottom:1px solid rgba(255,255,255,.08)}
.bc .sys b{font-size:clamp(9px,1.2cqw,12px);font-weight:700;padding:2px 8px;border-radius:999px;background:rgba(191,227,180,.16);color:#B7DBC6}
.bc .sys b.w{background:rgba(240,195,109,.16);color:#F0C36D}
.bc .bm{display:grid;grid-template-columns:1.25fr 1fr auto;gap:clamp(6px,1.4cqw,16px);align-items:center;font-size:clamp(9.5px,1.4cqw,15px);padding-block:clamp(3px,.8cqw,9px);border-top:1px solid rgba(255,255,255,.07)}
.bc .bm span small{display:block;opacity:.6;font-size:.85em}
.bc .bm .bar{margin:0;color:#B7DBC6}
.bc .bm b{font-size:clamp(8.5px,1.15cqw,12px);font-weight:700;padding:3px 8px;border-radius:6px;background:#B7DBC6;color:#0E1213}
.bc .bm b.w{background:#F0C36D}
.bc .hd{display:flex;justify-content:space-between;align-items:center;font-size:clamp(9px,1.25cqw,13px);opacity:.8}
.ban-note{position:absolute;right:18px;bottom:12px;z-index:3;font-size:11px;opacity:.55}
.home-ban{padding-block:28px 8px}
@media (max-width:1000px){
 .ban{grid-template-columns:1fr;min-height:0}
 .ban-copy{padding:40px 28px 8px}
 .ban-photo{min-height:0}
 .ban-photo .frame{position:relative;top:auto;transform:none}
 .ban-photo .frame::before{inset:0 0 auto 0;width:auto;height:18%;background:linear-gradient(180deg,var(--banbg),transparent)}
}
@media (max-width:560px){
 .ban{border-radius:24px}
 .ban h1,.ban h2{font-size:40px}
 .ban-icons div{padding-inline:10px;font-size:10px}
 .ban-icons svg{width:24px;height:24px}
 .ban .hero-ctas .btn{width:100%}
}
@media (min-width:1001px){
 .ban{grid-template-columns:38% 62%;min-height:0;align-items:center}
 .ban-copy{grid-column:1;grid-row:1;margin-right:-22%;padding:44px 0 44px 52px}
 .ban-photo{grid-column:2;grid-row:1;position:relative;align-self:stretch;display:flex;align-items:center}
 .ban-photo .frame{position:relative;top:auto;transform:none;width:100%;height:auto;aspect-ratio:1090/811}
 .ban-photo .frame::before{width:30%;background:linear-gradient(90deg,var(--banbg) 0%,transparent 100%)}
 .ban h1,.ban h2{font-size:clamp(42px,4.4vw,62px);margin-top:20px}
 .ban .ban-sub{font-size:16.5px;max-width:27em}
 .ban .hero-ctas{margin-top:22px;flex-wrap:nowrap}
 .ban .btn-dark,.ban.dark .btn-mint,.ban.dark .btn-line{height:52px;padding-inline:24px;font-size:15px}
 .ban-icons{margin-top:26px}
 .ban.dark .ban-icons{display:none}
}
.ban>*{min-width:0}
@media (max-width:560px){.ban-icons{display:grid;grid-template-columns:repeat(4,1fr)}.ban-icons div{padding-inline:4px;font-size:9px;letter-spacing:.06em}.ban-copy{padding:32px 22px 8px}.ban-kick{gap:10px;font-size:10.5px}}
@media (max-width:1000px){
 .ban-photo{overflow:hidden}
 .ban.mc1 .frame{width:162%}
 .ban.mc2 .frame{width:205%;margin-top:-6%}
 .ban.mc1 .bc,.ban.mc2 .bc,.ban.mc1 .ban-note{display:none}
}
/* ===== Full-bleed hero carousel ===== */
.hcar{position:relative;display:grid;overflow:hidden}
.hcar .slide{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s linear .8s}
.hcar .slide.on{opacity:1;visibility:visible;transition:opacity .8s ease}
.hcar .ban{border-radius:0;width:100%}
.hcar .slide .ban-copy{transform:translateY(12px);opacity:0;transition:transform .8s cubic-bezier(.2,.8,.2,1) .15s,opacity .8s ease .15s}
.hcar .slide.on .ban-copy{transform:none;opacity:1}
.hcar .slide .bc{transform:translateY(10px);opacity:0;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .8s}
.hcar .slide.on .bc{transform:none;opacity:1}
.hcar .slide.on .bc:nth-of-type(2){transition-delay:.35s}.hcar .slide.on .bc:nth-of-type(3){transition-delay:.5s}.hcar .slide.on .bc:nth-of-type(4){transition-delay:.65s}
.hcar.hcar-single .slide{opacity:1;visibility:visible}
.hcar.hcar-single .ban-copy,.hcar.hcar-single .bc{opacity:1;transform:none}
.hcar .sh{font-family:var(--sans)!important;font-weight:800!important;letter-spacing:-.05em!important;line-height:.98;font-size:clamp(42px,4.4vw,64px);margin-top:20px}
.hcar .sh em{font-style:italic;color:#6F8B76}.hcar .dark .sh em{color:#B7DBC6}
.car-ui{position:absolute;left:0;right:0;bottom:22px;z-index:5;pointer-events:none}
.car-ui .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px}
.car-dots{display:flex;gap:8px;pointer-events:auto;background:rgba(255,255,255,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);border-radius:999px;padding:6px}
.cd{all:unset;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-soft);padding:7px 14px;border-radius:999px;position:relative;overflow:hidden}
.cd span{width:22px;height:3px;border-radius:3px;background:rgba(0,0,0,.12);position:relative;overflow:hidden}
.cd.on{background:#fff;color:var(--ink);box-shadow:0 4px 12px -6px rgba(0,0,0,.25)}
.cd.on span::after{content:"";position:absolute;inset:0;background:var(--forest);transform-origin:left;animation:prog 7s linear forwards}
.hcar:hover .cd.on span::after{animation-play-state:paused}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.cd:focus-visible,.ca:focus-visible{outline:2px solid var(--forest);outline-offset:2px}
.car-arrows{display:flex;gap:8px;pointer-events:auto}
.ca{all:unset;cursor:pointer;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);font-size:18px;color:var(--ink);transition:background .2s}
.ca:hover{background:#fff}
@media (min-width:1101px){
 .hcar .ban{display:block;height:640px;min-height:0}
 .hcar .ban-copy{position:relative;z-index:3;margin:0;padding:0;max-width:540px;height:100%;display:flex;flex-direction:column;justify-content:center;padding-bottom:60px;margin-left:max(20px,calc((100vw - var(--wrap))/2 + 20px))}
 .hcar .ban-photo{position:absolute;inset:0;display:block}
 .hcar .ban-photo .frame{position:absolute;right:0;top:0;height:100%;width:auto;aspect-ratio:1090/811}
 .hcar .ban-photo .frame::before{width:30%;background:linear-gradient(90deg,var(--banbg) 0%,transparent 100%)}
 .hcar .ban.dark .ban-icons{display:flex}
 .hcar .ban-note{bottom:88px}
}
@media (max-width:1100px){
 .hcar .ban{grid-template-columns:1fr}
 .hcar .ban-copy{margin:0;padding:40px 28px 8px}
 .hcar .ban-photo{overflow:hidden}
 .hcar .ban-photo .frame{position:relative;top:auto;transform:none;width:100%}
 .hcar .ban.mc1 .frame{width:162%}.hcar .ban.mc2 .frame{width:205%}
 .hcar .ban.mc1 .bc,.hcar .ban.mc2 .bc,.hcar .ban .ban-note{display:none}
 .car-ui{bottom:14px}
 .cd{font-size:0;gap:0;padding:8px}
 .ca{width:40px;height:40px}
}
@media (prefers-reduced-motion:reduce){.hcar .slide,.hcar .slide .ban-copy,.hcar .slide .bc{transition:none}.cd.on span::after{animation:none;transform:none}}
.hcar .ban-pill{align-self:flex-start}
.car-ui .wrap{justify-content:flex-start}
.mnav summary::after{display:none!important}
/* smaller hero, OPTML scale */
@media (min-width:1101px){
 .hcar .ban{height:520px}
 .hcar .ban-copy{max-width:470px;padding-bottom:56px}
 .hcar .ban h1,.hcar .sh{font-size:clamp(36px,3.5vw,50px);margin-top:14px}
 .hcar .ban-pill{margin-top:16px;font-size:11px;padding:7px 14px}
 .hcar .ban-pill+.sh{margin-top:12px}
 .hcar .ban-kick{font-size:11px}
 .hcar .ban .ban-sub{font-size:15.5px;margin-top:12px}
 .hcar .ban .ban-lead{font-size:17px;margin-top:10px}
 .hcar .ban .hero-ctas{margin-top:18px}
 .hcar .ban .btn-dark,.hcar .ban.dark .btn-mint,.hcar .ban.dark .btn-line{height:48px;padding-inline:22px;font-size:14.5px}
 .hcar .ban-icons{margin-top:18px}
 .hcar .ban-icons div{font-size:10px;padding-inline:14px;gap:6px}
 .hcar .ban-icons svg{width:22px;height:22px}
 .hcar .ban-note{bottom:70px}
 .car-ui{bottom:16px}
 .cd{padding:6px 12px;font-size:12.5px}
 .ca{width:40px;height:40px;font-size:16px}
}
@media (max-width:1100px){
 .hcar .ban h1,.hcar .sh{font-size:34px}
 .hcar .ban-photo{max-height:300px}
 .hcar .ban-copy{padding-top:28px}
 .hcar .ban .ban-sub{font-size:15.5px}
 .hcar .ban-icons{display:none}
}
.hcar.hcar-single .ban{height:auto}
@media (min-width:1101px){.hcar.hcar-single .ban{height:520px}}
.ban-photo{container-type:normal}
.ban-photo .frame{container-type:inline-size}
@media (min-width:1101px){.hcar .ban.dark .ban-icons{display:none}}
/* OPTML-style hero cards */
.hcard.life{background:#E9E6DF}
.hcard.life .cover{object-position:62% 30%}
.life-tag{position:absolute;left:20px;top:20px;padding:8px 14px;border-radius:999px;font-size:12.5px;font-weight:600}
.hero-cards{margin-top:36px}
.hcard{aspect-ratio:1.7/1}
/* carousel as boxed section */
.car-sec{padding-block:8px 64px}
.hcar.boxed{border-radius:32px}
.hcar.boxed .ban{border-radius:0}
@media (min-width:1101px){.hcar.boxed .ban-copy{margin-left:52px}}
.car-sec .car-ui .wrap{padding-inline:52px}
@media (max-width:1100px){.car-sec .car-ui .wrap{padding-inline:20px}}
.hero{padding-block:36px 24px}
.hero .hero-top{align-items:center}
.hero h1{font-size:clamp(40px,5vw,68px);line-height:1}
.hero h1 .rotator{font-size:.5em;margin-top:.25em}
.hero .spec-rule{margin-top:14px}
.hero .lede{margin-top:14px;font-size:17px}
.hcard.life .cover{object-position:55% 35%}
.hero-cards{margin-top:28px}
/* tighter rhythm */
section{padding-block:72px}
.steps-sec{background:var(--white)}
/* photo steps */
.psteps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pstep{border-radius:var(--r-xl);overflow:hidden;background:var(--mist);transition:transform .3s,box-shadow .3s}
.pstep:hover{transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(0,0,0,.35)}
.ps-img{position:relative;aspect-ratio:4/3;overflow:hidden}
.ps-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.pstep:hover .ps-img img{transform:scale(1.05)}
.ps-n{position:absolute;left:16px;top:16px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-size:14px;font-weight:600}
.ps-t{position:absolute;left:16px;bottom:16px;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;background:rgba(26,28,27,.45)}
.ps-b{padding:22px 24px 26px}
.ps-b h3{font-size:24px}
.ps-b p{color:var(--ink-soft);margin-top:8px;font-size:15px}
/* muscle with photo */
.muscle2 .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.m-photo{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/5;background:#0E1213}
.m-photo img{width:100%;height:100%;object-fit:cover;object-position:28% 30%}
.mcard{position:absolute;padding:14px 18px;border-radius:18px;display:grid;gap:2px;min-width:190px;animation:bob 7s ease-in-out infinite}
.mcard small{font-size:12px;opacity:.75}
.mcard b{font-size:30px;letter-spacing:-.02em}
.mcard b em{font-style:normal;font-size:13px;font-weight:500;opacity:.65;margin-left:5px}
.mcard span{font-size:12px;color:#B7DBC6;font-weight:600}
.m1{right:18px;top:24px}.m2{right:18px;bottom:44px;animation-delay:-3s}
.m-note{position:absolute;left:18px;bottom:14px;font-size:11px;color:rgba(255,255,255,.55)}
.m-copy h2{font-size:clamp(32px,3.8vw,48px);margin-top:12px}
.m-copy .lede{color:var(--ink-soft);font-size:16.5px;margin-top:14px}
.m-copy .pillars{margin-top:22px;gap:10px}
.m-copy .pillar{padding:16px 18px}
.muscle2 .hero-ctas{grid-column:2}
/* faq card */
.faq-card{display:block;position:relative;margin-top:26px;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/3;max-width:420px}
.faq-card img{width:100%;height:100%;object-fit:cover;object-position:55% 30%;transition:transform .8s}
.faq-card:hover img{transform:scale(1.04)}
.fc-in{position:absolute;left:14px;right:14px;bottom:14px;padding:16px 18px;border-radius:18px;display:grid;gap:4px;background:rgba(26,28,27,.5)}
.fc-in b{font-size:17px}.fc-in span{font-size:13px;opacity:.8}.fc-in em{font-style:normal;font-size:13.5px;font-weight:700;color:#B7DBC6;margin-top:4px}
@media (max-width:1000px){.psteps{grid-template-columns:1fr;max-width:560px;margin-inline:auto}.muscle2 .wrap{grid-template-columns:1fr}.muscle2 .hero-ctas{grid-column:auto}.m-photo{aspect-ratio:4/3;max-width:560px}.faq-card{max-width:none}}
@media (max-width:560px){.mcard{min-width:150px;padding:10px 14px}.mcard b{font-size:24px}}
/* ====== Homepage v3: live BioBylt structure + OPTML formatting ====== */
.hl{background:linear-gradient(transparent 60%,#E2EEE7 60%,#E2EEE7 92%,transparent 92%);padding-inline:.04em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.h2o{padding-block:40px 20px}
.h2o-top{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.h2o h1{font-size:clamp(40px,5vw,66px);line-height:1.02;margin-top:12px}
.h2o h1 em{font-style:italic;color:var(--forest)}
.h2o .lede{color:var(--ink-soft);font-size:17px;margin-top:14px;max-width:34em}
.h2o .hero-ctas{margin-top:22px}
.h2o-cards{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px;margin-top:30px}
.hc2{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:1.25/1;background:var(--mist);display:block}
.hc2:first-child{aspect-ratio:auto}
.hc2 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.hc2:hover img{transform:scale(1.04)}
.hc2-l{position:absolute;left:18px;top:18px;background:rgba(255,255,255,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:7px 13px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hc2 .pill-btn{position:absolute;right:16px;bottom:16px}
.h2o .team{margin-top:28px}
/* what we treat carousel */
.wts{padding-block:64px 56px;overflow:hidden}
.wt-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,300px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:max(20px,calc((100vw - var(--wrap))/2 + 20px));padding-bottom:10px;scrollbar-width:none}
.wt-rail::-webkit-scrollbar{display:none}
.wt{scroll-snap-align:start;display:flex;flex-direction:column;gap:8px}
.wt-ph{position:relative;display:block;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:var(--mist)}
.wt-ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.wt:hover .wt-ph img{transform:scale(1.05)}
.wt-tag{position:absolute;left:14px;top:14px;background:#E2EEE7;color:var(--deep);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:6px 11px;border-radius:999px}
.wt-seal{position:absolute;right:14px;top:14px;width:52px;height:52px;border-radius:50%;border:1.5px solid rgba(255,255,255,.9);color:#fff;font-family:var(--serif);font-size:12px;line-height:1.05;display:grid;place-items:center;text-align:center;background:rgba(26,28,27,.18);backdrop-filter:blur(6px)}
.wt .rx{margin-top:6px}
.wt h3{font-size:26px}
.wt p{color:var(--ink-soft);font-size:14.5px;min-height:2.9em}
.wt .row{display:flex;gap:8px;margin-top:4px}
.wt .btn{height:44px;padding-inline:18px;font-size:14px}
/* labs */
.labs2{padding-block:40px 64px}
.lbx{border-radius:32px}
.lbx .ban-kick b{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:0;text-transform:none}
@media (min-width:1001px){.lbx.ban{grid-template-columns:40% 60%;min-height:0}.lbx .ban-copy{margin-right:-18%}}
.lp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.lp{background:#161918;color:#fff;border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:10px;transition:transform .3s}
.lp:hover{transform:translateY(-4px)}
.lp-t{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.lp-t.pop{align-self:flex-start;background:#B7DBC6;color:#0E1213;padding:5px 10px;border-radius:999px}
.lp h3{font-family:var(--sans)!important;font-weight:700!important;font-size:22px;letter-spacing:-.02em!important;color:#fff}
.lp p{color:rgba(255,255,255,.65);font-size:14.5px;flex:1}
.lp-bio{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.03)}
.lp-bio small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.lp-bio .row{display:flex;justify-content:space-between;align-items:baseline}
.lp-bio b{font-size:26px;font-variant-numeric:tabular-nums}.lp-bio b em{font-style:normal;font-size:12px;opacity:.55;margin-left:3px;font-weight:500}
.lp-bio span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9BD4B5}
.lp-bio .bar{height:3px;border-radius:3px;background:linear-gradient(90deg,rgba(255,255,255,.12) 0 25%,#9BD4B5 25% 75%,rgba(255,255,255,.12) 75%);position:relative;margin-top:10px}
.lp-bio .bar i{position:absolute;top:-4px;left:var(--p);width:3px;height:11px;border-radius:2px;background:#fff}
.lp-f{display:flex;justify-content:space-between;align-items:center;padding-top:6px;border-top:1px solid rgba(255,255,255,.1)}
.lp-f b{font-size:26px}
.lp-f .btn{height:40px;padding-inline:18px;font-size:13.5px;background:#B7DBC6;color:#0E1213;letter-spacing:.06em;text-transform:uppercase}
.lp-note{text-align:center;color:var(--ink-faint);font-size:13.5px;margin-top:18px}
/* why */
.why2{padding-block:64px}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.wy-ph{border-radius:22px;overflow:hidden;aspect-ratio:1/1;background:var(--mist)}
.wy-ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.wy:hover .wy-ph img{transform:scale(1.05)}
.wy h3{font-size:21px;margin-top:14px}
.wy p{color:var(--ink-soft);font-size:14.5px;margin-top:6px}
/* tools */
.tools2{padding-block:64px;background:radial-gradient(800px 260px at 50% 0%,rgba(191,227,180,.25),transparent 70%)}
.t2-head{text-align:center;max-width:820px;margin:0 auto 30px}
.t2-pill{display:inline-block;background:#E2EEE7;color:var(--deep);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;padding:8px 16px;border-radius:999px}
.t2-pill.dark{background:#B7DBC6;color:#0E1213}
.t2-head h2{font-size:clamp(32px,4vw,52px);margin-top:16px}
.t2-head p{color:var(--ink-soft);font-size:17px;margin-top:12px}
.t2-card{background:linear-gradient(160deg,#1E2120,#121413);border-radius:32px;padding:32px;color:#fff;box-shadow:0 40px 80px -40px rgba(0,0,0,.5)}
.t2-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.t2-top h3{font-size:30px;color:#fff;margin-top:12px}
.t2-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.t2{position:relative;display:grid;gap:6px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);border-radius:20px;padding:20px;min-height:200px;transition:border-color .2s,transform .2s}
.t2:hover{border-color:rgba(191,227,180,.5);transform:translateY(-3px)}
.t2-tag{justify-self:start;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:#B7DBC6;color:#0E1213;padding:4px 9px;border-radius:999px}
.t2 h4{margin:4px 0 0;font-family:var(--sans);font-size:19px}
.t2 small{color:rgba(255,255,255,.55);font-size:13px}
.t2-big{font-size:30px;font-weight:700;margin-top:auto}.t2-big em{font-style:normal;font-size:13px;opacity:.6;font-weight:500}
.t2-line{width:100%;height:40px;margin-top:auto}
.t2-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.t2-bar i{height:4px;border-radius:4px;background:#B7DBC6}.t2-bar i.o{background:rgba(255,255,255,.15)}
.t2-go{position:absolute;right:16px;bottom:16px;width:34px;height:34px;border-radius:50%;background:#B7DBC6;color:#0E1213;display:grid;place-items:center;font-weight:700}
/* faq */
.faq2{padding-block:64px}
.faq2 .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.f2-pill{display:inline-flex;align-items:center;gap:8px;background:var(--mist);color:var(--forest);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.f2-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.f2-side h2{font-size:clamp(32px,3.6vw,46px);margin-top:16px}
.f2-side p{color:var(--ink-soft);margin-top:14px;font-size:16px}
.f2-side .btn{margin-top:22px}
.f2-list{display:grid;gap:12px}
.f2-list details{border:1px solid var(--line);border-radius:18px;padding:0 22px;background:#fff;transition:border-color .2s}
.f2-list details[open]{border-color:var(--ink-faint)}
.f2-list summary{padding-block:22px}
/* guide */
.guide2{padding-block:24px 64px}
.gd{position:relative;display:grid;grid-template-columns:1fr 1fr;border-radius:32px;overflow:hidden;background:#161918;color:#fff;min-height:440px}
.gd-copy{padding:56px;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}
.gd-copy .eyebrow{color:#B7DBC6}
.gd-copy h2{font-family:var(--sans)!important;font-weight:800!important;letter-spacing:-.04em!important;font-size:clamp(32px,3.6vw,46px);color:#fff;margin-top:12px;line-height:1.05}
.gd-copy h2 em{font-style:normal;color:#B7DBC6}
.gd-copy p{color:rgba(255,255,255,.72);margin-top:12px;font-size:16.5px;max-width:28em}
.gd-form{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
.gd-form input{flex:1 1 220px;min-width:0;height:54px;border-radius:999px;border:0;padding:0 22px;font:inherit;font-size:16px}
.gd-form .btn{height:54px;background:#B7DBC6;color:#0E1213;padding-inline:26px}
.gd-form .ok{flex-basis:100%;color:#B7DBC6;font-weight:600}
.gd-copy small{color:rgba(255,255,255,.45);font-size:12.5px;margin-top:16px}
.gd-copy small a{text-decoration:underline}
.gd-ph{position:relative}
.gd-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:25% 30%}
.gd-ph::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#161918,transparent 45%)}
@media (max-width:1000px){.h2o-top,.faq2 .wrap,.gd{grid-template-columns:1fr}.h2o-cards{grid-template-columns:1fr 1fr}.hc2:first-child{grid-column:1/3;aspect-ratio:1.6/1}.lp-grid,.t2-grid{grid-template-columns:1fr 1fr}.why-grid{grid-template-columns:1fr 1fr}.gd-ph{min-height:300px;order:-1}.gd-ph::before{background:linear-gradient(0deg,#161918,transparent 50%)}.gd-copy{padding:32px 28px}}
@media (max-width:620px){.h2o-cards{grid-template-columns:1fr}.hc2:first-child{grid-column:auto}.lp-grid,.t2-grid,.why-grid{grid-template-columns:1fr}.t2-card{padding:22px}}
.wt-rail{padding-left:max(20px,calc((100% - var(--wrap))/2 + 20px));padding-right:20px;scroll-padding-left:max(20px,calc((100% - var(--wrap))/2 + 20px));grid-auto-columns:300px}
.wt .row .btn{white-space:nowrap;flex:1}
.lbx.ban{display:grid;grid-template-columns:42% 58%;align-items:center;min-height:0}
.lbx .ban-copy{margin-right:0;padding:44px 0 44px 44px}
.lbx .ban-copy h1{font-size:clamp(40px,4.4vw,60px)}
.lbx .ban-photo{position:relative;align-self:stretch;display:flex;align-items:center}
.lbx .ban-photo .frame{position:relative;top:auto;transform:none;width:100%;height:auto;aspect-ratio:1090/811}
@media (max-width:1000px){.lbx.ban{grid-template-columns:1fr}.lbx .ban-copy{padding:32px 24px 8px}}

/* ================= CRISP PASS (OPTML-level polish) ================= */
:root{--disp:"Inter Tight","Inter",ui-sans-serif,system-ui,sans-serif;--line:#E6EAE8;--mist:#F4F6F5}
body{font-size:16px;color:#1B1F1D;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* one display face, heavy + tight, like OPTML */
h1,h2,h3,h4,.pt-t,.hcar .sh,.ban h1,.ban h2{font-family:var(--disp)!important;font-weight:800!important;letter-spacing:-.035em!important;color:inherit}
h3,h4{font-weight:700!important;letter-spacing:-.02em!important}
h1{line-height:1!important}h2{line-height:1.05!important}
h1 em,h2 em,.hero h1 .grad{font-family:var(--disp)!important;font-style:normal!important;color:inherit!important;background:linear-gradient(transparent 58%,#E2EEE7 58%,#E2EEE7 90%,transparent 90%);padding-inline:.05em}
.dark-sec h2 em,.labs h2 em,.score-sec h2 span,.hcar .dark .sh em,.ban.dark h2 em,.gd-copy h2 em{background:none;color:#B7DBC6!important}
.logo{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.01em!important}
/* type scale */
.h2o h1{font-size:clamp(44px,5.4vw,76px)}
.sec-head h2,.t2-head h2,.f2-side h2,.m-copy h2,.muscle h2,.faq h2{font-size:clamp(30px,3.4vw,44px)!important}
.sec-head{margin-bottom:32px;align-items:flex-end}
.sec-head p{font-size:16px;color:var(--ink-soft)}
.lede{color:#4E5652!important}
/* eyebrows -> OPTML-style small pills */
.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11.5px!important;letter-spacing:.16em!important;font-weight:700;color:var(--forest)}
/* uniform rhythm */
section{padding-block:80px}
.wrap{max-width:1180px}
/* buttons: solid black primary, clean secondary */
.btn{height:50px;padding-inline:26px;font-size:15px;font-weight:600;letter-spacing:0}
.btn-dark{background:#111413}
.btn-dark:hover{background:#000;box-shadow:none;transform:translateY(-1px)}
.btn-spec{background:var(--forest)}
.btn-ghost2{border:1px solid #D9DFDC;background:#fff}
.btn-link{font-weight:600;border-bottom-width:1px}
.pill-btn{font-weight:600!important;font-size:14px!important;box-shadow:0 6px 20px -10px rgba(0,0,0,.35)!important}
/* cards: one radius, hairline borders, no heavy shadows */
.card,.pillar,.step,.pstep,.f2-list details,.tg-card,.dec-in,.pcard{border-radius:20px!important}
.card,.pillar,.tg-card,.dec-in,.f2-list details{border:1px solid var(--line)!important;box-shadow:none!important}
.proto-img,.wt-ph,.hc2,.wy-ph,.ps-img,.ptile,.fcard .ph,.tcard .ph{border-radius:20px!important}
.pstep{background:#fff;border:1px solid var(--line)}
.proto:hover,.pstep:hover,.tg-card:hover,.lp:hover,.t2:hover{box-shadow:none!important}
/* quieter motion: no bobbing */
.gm,.mcard,.floaty,.gring{animation:none!important}
/* remove decorative gradients */
.spec-rule{display:none}
.promo{background:#111413!important;border:0!important;border-image:none!important;font-weight:600;font-size:13.5px}
.promo a{background:#fff!important;color:#111!important}
.tools2{background:none}
/* nav crisper */
.nav{background:rgba(255,255,255,.94);border-bottom:1px solid var(--line)}
.nav-links{font-weight:500!important;color:#3E4541!important}
.nav .btn{height:42px;font-size:14px}
/* marquee thinner */
.marquee{background:#fff;padding-block:14px}
.mq-track span{font-size:14.5px;font-weight:500}
/* rx + tags uniform */
.rx{font-size:12px;padding:4px 10px}
.wt-tag,.hc2-l,.tagpill{font-size:10.5px!important;letter-spacing:.14em!important;padding:6px 11px!important;border-radius:999px!important;background:#fff!important;color:#111!important;box-shadow:0 2px 8px -4px rgba(0,0,0,.2)}
.wt h3{font-size:22px}
.wt p{font-size:14px}
/* dark blocks: one consistent near-black */
.lp,.t2-card,.labs,.dark-sec,.score-sec .card,.gd,footer{background-color:#141716!important}
.t2-card{background-image:none!important}
/* footer tidy */
footer{padding-block:56px 32px}
footer h4{font-family:var(--sans)!important;font-weight:700!important;letter-spacing:.14em!important;font-size:11.5px!important;color:#fff}
.h2o h1{font-size:clamp(42px,4.8vw,68px)}
.h2o h1 em{background:none!important;color:var(--forest)!important}
.proto-img .mini{display:none}
.gh h1 em{background:none!important;color:#B7DBC6!important}
.hc2 .pill-btn{z-index:2}
.gh .lede,.pv-teaser p{color:rgba(255,255,255,.75)!important}
.gh-stats b,.result .big,.pd .pricebox b{font-family:var(--disp)!important;font-weight:800!important;letter-spacing:-.03em}
.hc2 .pill-btn{background:#fff!important;color:#111!important;padding:10px 16px!important;border-radius:999px!important}
.g2-ph img,.gd-ph img{object-position:30% 30%}.gstage .photo img{object-position:50% 25%}
.single{margin-top:34px;padding-top:26px;border-top:1px solid var(--line);display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.single>span{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.tchips{display:flex;flex-wrap:wrap;gap:8px;flex:1}
.tchip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:4px 14px 4px 4px;font-size:14px;font-weight:600;transition:border-color .2s}
.tchip:hover{border-color:var(--ink-faint)}
.tchip img{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--mist)}
.proto-img.hrt .cover{transform:scale(1.12)!important;object-position:50% 50%!important}.proto:hover .proto-img.hrt .cover{transform:scale(1.16)!important}.proto-body h3{font-weight:800!important}
/* Why v2 */
.wv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.wv-vis{position:relative;aspect-ratio:1/1;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#F4F6F5,#E7ECE9);display:grid;place-items:center;padding:22px;border:1px solid var(--line)}
.wv-vis>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}
.wv:hover .wv-vis>img{transform:scale(1.04)}
.wv h3{font-size:20px;margin-top:16px}
.wv p{color:var(--ink-soft);font-size:14.5px;margin-top:6px}
.ui-card{width:100%;background:#fff;border-radius:16px;padding:16px;box-shadow:0 20px 40px -24px rgba(20,30,25,.35);border:1px solid #EEF1EF;display:grid;gap:12px;font-size:13px;transition:transform .4s}
.wv:hover .ui-card{transform:translateY(-4px)}
.ui-row{display:flex;align-items:center;gap:10px}
.ui-row b,.ui-hd b{display:block;font-size:14px}
.ui-row small,.ui-hd small{color:var(--ink-faint);font-size:12px}
.ui-av{width:36px;height:36px;border-radius:50%;background:#E2EEE7;color:var(--deep);display:grid;place-items:center;font-weight:800;font-size:12px;flex:none}
.ui-ok{margin-left:auto;background:#E2EEE7;color:var(--deep);font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px}
.ui-line{height:5px;border-radius:5px;background:#EEF1EF}.ui-line i{display:block;height:100%;border-radius:5px;background:var(--forest)}
.ui-meta{color:var(--ink-faint);font-size:12px}
.ui-hd{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:8px;border-bottom:1px solid #EEF1EF}
.ui-kv{display:flex;justify-content:space-between;gap:8px}.ui-kv span{color:var(--ink-soft)}.ui-kv b{font-variant-numeric:tabular-nums}.ui-kv em{font-style:normal;color:var(--ink-faint);font-weight:500;font-size:11px}
.ui-spark{display:flex;align-items:flex-end;gap:5px;height:40px}.ui-spark i{flex:1;border-radius:4px;background:#E2EEE7}.ui-spark i:last-child{background:var(--forest)}
.ui-steps{display:grid;gap:9px}
.ui-steps span{display:flex;align-items:center;gap:9px;color:var(--ink-faint)}
.ui-steps span::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid #D5DCD8;flex:none}
.ui-steps .d{color:var(--ink)}.ui-steps .d::before{background:var(--forest);border-color:var(--forest)}
.ui-steps .c{color:var(--ink);font-weight:700}.ui-steps .c::before{border-color:var(--forest);box-shadow:0 0 0 4px #E2EEE7}
.ui-chip{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);font-size:11px;font-weight:700;letter-spacing:.06em;padding:6px 11px;border-radius:999px;box-shadow:0 4px 12px -6px rgba(0,0,0,.25)}
.wv-vis .ui-card{margin-bottom:24px}
@media (max-width:1000px){.wv-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.wv-grid{grid-template-columns:1fr}}
.wv-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.wv-vis{padding:18px;place-items:center}
.wv-vis .ui-card{margin:26px 0 0}
.ui-chip{top:12px;bottom:auto;left:12px}
.ui-card{padding:14px;gap:10px;font-size:12.5px}
.ui-row b,.ui-hd b{font-size:13.5px;white-space:nowrap}
.ui-meta{font-size:11.5px}
.ui-spark{height:30px}
@media (max-width:1000px){.wv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.wv-grid{grid-template-columns:1fr}}
.ui-card{min-width:0;box-sizing:border-box}.ui-row b{white-space:normal}.ui-ok{white-space:nowrap;font-size:10.5px;padding:3px 8px}.ui-row small{white-space:nowrap}

/* ================= Fix: floating lab-stat cards were drifting over her face on lab/tool pages ================= */
/* Cards now hug the four outer corners of the photo, clear of the centered top-weighted crop where her face sits. */
.gstage .gm.g1{top:auto;left:auto;bottom:32%;left:-5%;animation-delay:0s}
.gstage .gm.g2{top:6%;right:-5%;left:auto;bottom:auto;animation-delay:-3s}
.gstage .gm.g3{top:auto;bottom:6%;left:-5%;animation-delay:-5.5s}
.gstage .gring{bottom:6%;right:-5%}
@media (max-width:1180px){.gstage .gm.g1,.gstage .gm.g2,.gstage .gm.g3,.gstage .gring{left:auto;right:auto}
 .gstage .gm.g1{bottom:32%;right:2%}.gstage .gm.g2{top:6%;left:2%}.gstage .gm.g3{bottom:6%;right:2%}.gstage .gring{bottom:6%;left:2%}}
@media (max-width:1000px){.gstage .gm{min-width:150px}}
@media (max-width:560px){.gstage .gm.g1,.gstage .gm.g2,.gstage .gm.g3{position:static;display:inline-block;margin:6px 6px 0 0}.gstage{display:flex;flex-direction:column;gap:14px}.gstage .photo{position:relative;inset:auto;height:280px}.gstage .gring{display:none}}

/* ================= Sitewide interactivity pass ================= */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.16,.8,.3,1),transform .8s cubic-bezier(.16,.8,.3,1)}
.reveal.in{opacity:1;transform:none}
.card{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
.card:hover{transform:translateY(-5px);box-shadow:0 24px 46px -30px rgba(20,30,25,.4)}
.lp,.pstep,.wv,.vstep,.pillar,.mini,.t2{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
.lp:hover{transform:translateY(-5px)}
.t2:hover{transform:translateY(-3px)}
.gring circle.fillc{transition:stroke-dashoffset 1.5s cubic-bezier(.16,.8,.3,1)}
.gring text{transition:none}
.parallax-img{will-change:transform}
.nav-links a,.dd-t{transition:color .25s ease}
.btn{will-change:transform}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}.parallax-img{transform:none!important}}

/* health-check gauge + system bars: hold at rest, play once scrolled into view */
.report .gauge .arc{animation-play-state:paused}
.report.play .gauge .arc{animation-play-state:running}
.report .sys-row .tr i{animation-play-state:paused}
.report.play .sys-row .tr i{animation-play-state:running}

/* ================= The Complete Panel: scroll-progress marker reveal ================= */
.apx{padding-block:56px 72px;background:#F3F5F4}
.apx-intro{max-width:34em;margin:0 auto 28px;text-align:center;color:var(--ink-soft);font-size:17px;line-height:1.5}
.apx-card{background:#fff;border-radius:28px;padding:40px 44px 36px;box-shadow:0 30px 60px -36px rgba(20,40,30,.28),0 1px 0 rgba(0,0,0,.04)}
.apx-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:0 6% 30px;border-bottom:1px solid var(--line)}
.apx-stat{text-align:center}
.apx-stat small{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
.apx-stat b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(60px,8vw,96px);line-height:1;letter-spacing:-.03em;color:var(--ink-faint);margin-top:12px;font-variant-numeric:tabular-nums}
.apx-stat.rev b{color:var(--forest)}
.apx-stat span{display:block;font-size:13px;color:var(--ink-faint);margin-top:8px}
.apx-slash{width:1px;height:44px;background:var(--line);transform:rotate(18deg)}
.apx-bar{padding:26px 0 8px}
.apx-bar-l{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.apx-bar-l a{color:var(--ink-faint);text-decoration:none}
.apx-bar-l a:hover{color:var(--forest)}
.apx-track{position:relative;height:6px;border-radius:999px;background:var(--mist-2);margin:20px 0 4px}
.apx-track i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:linear-gradient(90deg,#9AD0AF,var(--forest));transition:width .12s linear}
.apx-track b{position:absolute;top:50%;left:0;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:var(--ink);border:4px solid #fff;box-shadow:0 4px 12px -2px rgba(0,0,0,.35);transition:left .12s linear}
.apx-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 40px;margin-top:30px}
.apx-sys-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;border-bottom:1px dashed var(--line);margin-bottom:12px}
.apx-sys-h span{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.apx-sys-h small{font-family:var(--mono);font-size:12px;color:var(--ink-faint);font-variant-numeric:tabular-nums}
.apx-sys.done .apx-sys-h small{color:var(--forest)}
.apx-chips{display:flex;flex-wrap:wrap;gap:7px}
.apx-chip{position:relative;font-size:12.5px;font-weight:500;padding:6px 11px 6px 22px;border-radius:999px;border:1px solid var(--line);color:#B9BFBB;background:#fff;transition:color .35s,background .35s,border-color .35s}
.apx-chip::before{content:'';position:absolute;left:10px;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--line);transition:background .35s}
.apx-chip.on{color:var(--ink);background:#F6F7F5;border-color:transparent}
.apx-chip.on::before{background:var(--forest)}
.apx-chip.base{color:var(--ink);background:#fff;border-color:var(--ink)}
.apx-chip.base::before{background:var(--ink)}
@media (max-width:900px){.apx-card{padding:30px 22px 26px;border-radius:22px}.apx-top{padding:0 0 24px;gap:14px}.apx-grid{grid-template-columns:1fr;gap:24px}}
@media (max-width:560px){.apx-stat b{font-size:52px}.apx-bar-l{font-size:10px}}
@media (prefers-reduced-motion:reduce){.apx-chip,.apx-track i,.apx-track b{transition:none}}

/* Interactive marker browser: tabs + expandable system cards */
.apex-browse .sec-head{align-items:center}
.ab-tabs{display:flex;gap:8px;background:var(--mist);border-radius:999px;padding:4px}
.ab-tab{border:0;background:transparent;padding:9px 18px;border-radius:999px;font-size:14px;font-weight:600;cursor:pointer;color:var(--ink-soft)}
.ab-tab.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.ab-sys-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
@media (max-width:900px){.ab-sys-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ab-sys-grid{grid-template-columns:1fr}}
.ab-sys{border:1px solid rgba(0,0,0,.08);border-radius:14px;overflow:hidden;background:#fff}
.ab-sys-h{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;background:none;border:0;cursor:pointer;text-align:left;font:inherit}
.ab-sys-h span:first-child{font-weight:600;color:var(--ink)}
.ab-sys-h small{opacity:.55;margin-right:auto;margin-left:10px}
.ab-sys-h .arrow{transition:transform .2s;opacity:.5}
.ab-sys.open .ab-sys-h .arrow{transform:rotate(45deg)}
.ab-sys-b{max-height:0;overflow:hidden;transition:max-height .25s ease}
.ab-sys.open .ab-sys-b{max-height:400px}
.ab-sys-b ul{list-style:none;margin:0;padding:0 18px 16px;display:flex;flex-wrap:wrap;gap:6px}
.ab-sys-b li{font-size:13px;background:var(--mist);border-radius:999px;padding:5px 11px;color:var(--ink-soft)}
.ab-az{margin-top:26px;display:flex;flex-wrap:wrap;gap:8px}
.ab-az span{font-size:13px;border:1px solid rgba(0,0,0,.1);border-radius:999px;padding:6px 12px;color:var(--ink-soft)}

/* flagship card on labs.html / pricing.html */
.lp.apex-flag{border-color:var(--forest,#2E6E53)}
.tbd{font-size:11px;opacity:.55;font-weight:500;text-transform:uppercase;letter-spacing:.04em}



/* ===== Scrollcraft: sticky vial collection showcase (treatments) ===== */
.vs{position:relative;height:calc(var(--n) * 34vh + 100vh);background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.vs-pin{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.vs-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center;width:100%}
.vs-count{display:flex;align-items:baseline;gap:6px;margin-top:18px;font-family:var(--mono);color:var(--ink-faint);font-size:13px;letter-spacing:.08em}
.vs-count b{font-weight:500;color:var(--ink);font-size:13px}
.vs-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(44px,5.4vw,76px);line-height:1;letter-spacing:-.02em;margin-top:10px;transition:color .5s ease}
.vs-cat{display:inline-block;margin-top:14px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
.vs-copy p{margin-top:12px;color:var(--ink-soft);font-size:17px;line-height:1.55;max-width:30em;min-height:3.1em}
.vs-copy .btn-link{margin-top:14px;display:inline-flex}
.vs-copy.swap h2,.vs-copy.swap p,.vs-copy.swap .vs-cat{animation:vsIn .55s cubic-bezier(.16,1,.3,1) both}
@keyframes vsIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.vs-list{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px;max-width:34em}
.vs-list button{border:0;background:none;padding:4px 0;font:inherit;font-size:13px;color:var(--ink-faint);cursor:pointer;position:relative;transition:color .3s}
.vs-list button::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.vs-list button.on{color:var(--ink)}
.vs-list button.on::after{transform:scaleX(1)}
.vs-list button:hover{color:var(--ink)}
.vs-stage{position:relative;aspect-ratio:1/1;border-radius:28px;overflow:hidden;background:#fff}
.vs-halo{position:absolute;inset:0;background:radial-gradient(38% 7% at 50% 90%,color-mix(in srgb,var(--c) 26%,transparent),transparent 100%);z-index:2;pointer-events:none;mix-blend-mode:multiply;transition:background .6s ease}
.vs-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04) translateY(14px);transition:opacity .6s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.vs-img.on{opacity:1;transform:none}
.vs-bar{position:absolute;left:18%;right:18%;bottom:14px;height:2px;border-radius:2px;background:var(--line);z-index:3;overflow:hidden}
.vs-bar i{display:block;height:100%;background:var(--ink);transform-origin:left;transform:scaleX(0)}
@media (max-width:900px){
 .vs{height:calc(var(--n) * 30vh + 100vh)}
 .vs-grid{grid-template-columns:1fr;gap:18px}
 .vs-stage{order:-1;width:min(100%,46vh);margin:0 auto;border-radius:24px}
 .vs-copy{text-align:left}
 .vs-copy h2{font-size:clamp(34px,9vw,48px)}
 .vs-copy p{font-size:15px;min-height:0}
 .vs-count{margin-top:0}
 .vs-list{display:none}
}
@media (prefers-reduced-motion:reduce){.vs-img,.vs-copy h2{transition:none}.vs-copy.swap h2,.vs-copy.swap p,.vs-copy.swap .vs-cat{animation:none}}

/* ===== Scrollcraft: homepage pinned horizontal rail ===== */
.hs{position:relative;background:#fff}
.hs-pin{position:sticky;top:0;height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;gap:34px;overflow:hidden}
.hs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.hs-view{overflow:hidden;padding-inline:max(20px,calc((100vw - var(--wrap))/2 + 20px))}
.hs-track{display:flex;gap:22px;will-change:transform}
.hs-card{flex:0 0 clamp(250px,22vw,300px);display:flex;flex-direction:column;text-decoration:none;color:inherit}
.hs-ph{display:block;aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.hs-ph img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.hs-card:hover .hs-ph img{transform:scale(1.04)}
.hs-meta{display:flex;flex-direction:column;gap:6px;padding:16px 4px 0}
.hs-cat{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--forest)}
.hs-meta b{font-size:22px;font-weight:600;letter-spacing:-.01em}
.hs-one{font-size:14.5px;line-height:1.5;color:var(--ink-soft)}
.hs-go{margin-top:4px;font-size:14px;font-weight:600;color:var(--ink)}
.hs-prog{height:2px;background:var(--line);border-radius:2px;overflow:hidden}
.hs-prog i{display:block;height:100%;background:var(--ink);transform:scaleX(0);transform-origin:left}
.hs.static .hs-pin{position:relative;height:auto;padding-block:64px 56px;gap:24px}
.hs.static .hs-view{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
.hs.static .hs-view::-webkit-scrollbar{display:none}
.hs.static .hs-card{scroll-snap-align:start;flex-basis:74vw;max-width:300px}
@media (max-width:900px){.hs-head{flex-direction:column;align-items:flex-start}}
.hs-pin>.wrap{width:100%}
@media (min-width:901px){.grid3.g2{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.protos[style]{grid-template-columns:1fr!important}}

/* ===== Waitlist (pre-launch services) ===== */
.wl{padding-block:48px 72px}
.wl-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.wl-copy .eyebrow{display:block;margin-top:18px}
.wl-copy h1{font-size:clamp(42px,5.2vw,68px);line-height:1.02;margin-top:12px}
.wl-copy h1 em{font-style:italic;color:var(--forest)}
.wl-copy .lede{margin-top:16px;color:var(--ink-soft);font-size:17px;max-width:32em}
.wl-perks{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:18px}
.wl-perks li{display:flex;gap:14px;align-items:flex-start}
.wl-perks b{display:block;font-size:16px}
.wl-perks span{color:var(--ink-soft);font-size:14.5px}
.wl-ic{flex:none;width:40px;height:40px;border-radius:12px;background:#E2EEE7;display:grid;place-items:center}
.wl-ic svg{width:19px;height:19px;stroke:var(--forest);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.wl-path{margin-top:28px;padding:18px 20px;border-radius:18px;background:var(--mist);font-size:14.5px;color:var(--ink-soft);line-height:1.55}
.wl-path b{color:var(--ink)}
.wl-side{position:relative}
.wl-ph{aspect-ratio:4/3;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.wl-ph img{width:100%;height:100%;object-fit:contain;object-position:center 30%}
.wl-ph.cover img{object-fit:cover;object-position:center}
.wl-card{position:relative;margin:-64px 22px 0;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 30px 60px -34px rgba(20,40,30,.35)}
.wl-card h2{font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.01em}
.wl-sub{color:var(--ink-soft);font-size:14.5px;margin-top:4px}
#wlF{display:grid;gap:14px;margin-top:18px}
.wl-fld label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.wl-fld label span{font-weight:400;color:var(--ink-faint)}
.wl-fld input{width:100%;height:50px;border-radius:14px;border:1px solid var(--line);padding:0 15px;font:inherit;font-size:16px;color:var(--ink);background:#fff;transition:border-color .2s,box-shadow .2s}
.wl-fld input:focus{outline:none;border-color:var(--forest);box-shadow:0 0 0 4px rgba(46,110,83,.12)}
.wl-fld input[aria-invalid=true]{border-color:#B4432F}
.wl-err{font-size:13px;color:#B4432F;margin-top:5px}
.wl-chips{display:flex;flex-wrap:wrap;gap:7px}
.wl-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink-soft);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;transition:all .2s}
.wl-chip:hover{border-color:var(--ink-faint);color:var(--ink)}
.wl-chip span{display:none;width:15px;height:15px;border-radius:50%;background:#fff;color:var(--forest);font-size:10px;font-weight:700;line-height:15px;text-align:center}
.wl-chip[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:#fff}
.wl-chip[aria-pressed=true] span{display:inline-block}
.wl-btn{width:100%;height:52px;justify-content:center;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.wl-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(20,40,30,.5)}
.wl-btn[disabled]{opacity:.6;transform:none}
.wl-consent{font-size:12px;color:var(--ink-faint);line-height:1.5}
.wl-done{display:none;text-align:center;padding:8px 0}
.wl-done.on{display:block;animation:vsIn .55s cubic-bezier(.16,1,.3,1) both}
.wl-badge{width:54px;height:54px;margin:0 auto;border-radius:50%;background:#E2EEE7;display:grid;place-items:center}
.wl-badge svg{width:24px;height:24px;stroke:var(--forest);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.wl-done h2{margin-top:14px}
.wl-done p{color:var(--ink-soft);margin-top:6px}
.wl-code{margin:18px auto 0;max-width:300px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px dashed var(--forest);border-radius:16px;padding:8px 8px 8px 18px;background:#F7FAF8}
.wl-code b{font-size:19px;letter-spacing:.14em;color:var(--deep)}
.wl-code .btn{height:38px;padding-inline:16px}
.wl-small{font-size:12.5px!important;margin:12px 0 16px!important}
.wl-fine{padding-block:0 56px}
.wl-fine p{max-width:880px;font-size:12.5px;color:var(--ink-faint);line-height:1.6;border-top:1px solid var(--line);padding-top:22px}
@media (max-width:900px){.wl{padding-top:28px}.wl-grid{grid-template-columns:1fr;gap:28px}.wl-perks{margin-top:22px}.wl-card{margin:-40px 10px 0;padding:22px}}

/* 10/2026: no scroll-pinned runway (dead space). Desktop = grid, mobile = swipe row */
@media (min-width:901px){.hs.static .hs-pin{padding-block:0}.hs.static .hs-view{overflow:visible;padding-inline:0;width:min(var(--wrap),100% - 40px);margin-inline:auto}.hs.static .hs-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;transform:none!important}.hs.static .hs-card{max-width:none}.hs.static .hs-prog{display:none}}

/* 10/10: pinned horizontal scroll restored on desktop; offset for sticky nav so cards sit centered under it (less empty space) */
@media (min-width:901px){.hs:not(.static) .hs-pin{padding-top:72px;box-sizing:border-box;gap:26px}}
