
:root{
  --bg:#050608;--bg2:#0a0c10;--panel:#0d1015;--panel2:#12161d;--ink:#f6f7f8;--muted:#aab0ba;--line:rgba(255,255,255,.13);
  --white:#fff;--black:#020203;--accent:#fff;--product-accent:#fff;--max:1240px;--radius:28px;--shadow:0 30px 90px rgba(0,0,0,.45);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;background:var(--bg);color-scheme:dark} body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E");mix-blend-mode:soft-light;opacity:.45}
::selection{background:#fff;color:#000} a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,input,textarea{font:inherit} button{cursor:pointer}
.skip-link{position:fixed;left:16px;top:-80px;z-index:10000;background:#fff;color:#000;padding:10px 14px;border-radius:10px}.skip-link:focus{top:16px}
.site-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-3;opacity:.55;pointer-events:none}.cursor-glow{position:fixed;width:480px;height:480px;border-radius:50%;pointer-events:none;z-index:-2;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.08),transparent 64%);filter:blur(4px);opacity:.7}
.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.section{padding:120px 0;position:relative}.section.tight{padding:80px 0}.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;text-transform:uppercase;letter-spacing:.22em;color:#c6cbd3;font-weight:800}.eyebrow::before{content:"";width:32px;height:1px;background:currentColor}.display{font-size:clamp(62px,10vw,154px);line-height:.78;letter-spacing:-.06em;text-transform:uppercase;margin:0;font-weight:950;color:#050505;-webkit-text-stroke:1.4px rgba(255,255,255,.95);paint-order:stroke fill;text-shadow:0 0 40px rgba(255,255,255,.08)}
.display.small{font-size:clamp(48px,7vw,104px)} .section-title{font-size:clamp(38px,5vw,76px);line-height:.95;letter-spacing:-.045em;text-transform:uppercase;margin:14px 0 18px;font-weight:900}.lead{font-size:clamp(18px,2vw,24px);color:#c3c8d0;max-width:760px}.muted{color:var(--muted)}
.outline-text{color:#050505;-webkit-text-stroke:1px #fff;paint-order:stroke fill}.accent-text{color:var(--product-accent)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 21px;border-radius:999px;border:1px solid rgba(255,255,255,.18);font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.1em;transition:.35s var(--ease);background:transparent;color:#fff;position:relative;overflow:hidden}.btn::before{content:"";position:absolute;inset:0;background:#fff;transform:translateY(105%);transition:.35s var(--ease);z-index:-1}.btn:hover{color:#000;border-color:#fff;transform:translateY(-2px)}.btn:hover::before{transform:translateY(0)}.btn.primary{background:#fff;color:#000;border-color:#fff}.btn.primary::before{background:#0b0d11}.btn.primary:hover{color:#fff}.btn.disabled{opacity:.55;pointer-events:none}.btn svg{width:16px;height:16px}
.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:17px 0;transition:.35s var(--ease)}.site-header.scrolled{background:rgba(5,6,8,.76);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);padding:10px 0}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px}.brand-plate{background:#fff;border-radius:12px;padding:6px 11px;box-shadow:0 6px 30px rgba(0,0,0,.25)}.brand-plate img{width:104px;height:42px;object-fit:contain}.brand-name{font-weight:900;letter-spacing:.12em;font-size:11px;text-transform:uppercase;color:#e9ebee}.nav-links{display:flex;gap:30px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#d8dbe0}.nav-links a{position:relative}.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:#fff;transition:.3s var(--ease)}.nav-links a:hover::after,.nav-links a[aria-current="page"]::after{right:0}.menu-btn{display:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#0b0d10;color:#fff}.menu-btn span,.menu-btn::before,.menu-btn::after{content:"";display:block;width:18px;height:1px;background:#fff;margin:5px auto;transition:.3s}
.mobile-drawer{position:fixed;inset:0;z-index:999;background:#050608;display:grid;place-items:center;transform:translateY(-105%);transition:.55s var(--ease)}.mobile-drawer.open{transform:translateY(0)}.mobile-drawer nav{display:grid;gap:18px;text-align:center;font-size:42px;text-transform:uppercase;font-weight:900;letter-spacing:-.04em}.mobile-drawer .close-menu{position:absolute;right:20px;top:20px}
.hero{min-height:100svh;display:flex;align-items:center;padding-top:118px;position:relative;overflow:hidden}.hero::after{content:"";position:absolute;inset:auto 0 0;height:160px;background:linear-gradient(transparent,var(--bg));pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:40px;align-items:center;width:100%}.hero-copy{position:relative;z-index:3}.hero-copy .lead{margin:30px 0 34px}.hero-kicker{margin-bottom:20px}.hero-stage{min-height:700px;position:relative;display:grid;place-items:center;perspective:1300px}.hero-orbit{position:absolute;width:560px;height:560px;border:1px solid rgba(255,255,255,.12);border-radius:50%;animation:spin 20s linear infinite}.hero-orbit::before,.hero-orbit::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;inset:60px}.hero-orbit::after{inset:130px}.hero-orbit span{position:absolute;width:8px;height:8px;border:1px solid #fff;border-radius:50%;left:50%;top:-4px;background:#06070a;box-shadow:0 0 24px #fff}.hero-card{width:min(430px,82vw);aspect-ratio:2/3;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.2);box-shadow:0 50px 130px rgba(0,0,0,.65);transform:rotateY(-7deg) rotateX(2deg);transition:.5s var(--ease);position:relative}.hero-card:hover{transform:rotateY(0) rotateX(0) translateY(-7px)}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);border-radius:inherit;pointer-events:none}.floating-chip{position:absolute;padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:rgba(10,12,16,.62);backdrop-filter:blur(16px);border-radius:14px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#d8dbe0;animation:float 5s ease-in-out infinite}.chip-a{left:0;top:27%}.chip-b{right:-5px;bottom:24%;animation-delay:-2s}.scroll-cue{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#7f858e;z-index:5}.scroll-cue i{display:block;width:1px;height:50px;background:linear-gradient(#fff,transparent);animation:pulse 2s infinite}
.trust-strip{border-block:1px solid var(--line);overflow:hidden;background:#080a0d}.marquee{display:flex;width:max-content;animation:marquee 30s linear infinite;padding:18px 0}.marquee span{font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:800;color:#c9cdd3;white-space:nowrap}.marquee span::after{content:"✦";padding:0 28px;color:#686e77}
.products-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}.products-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.product-card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border-radius:30px;overflow:hidden;position:relative;transition:.45s var(--ease);box-shadow:0 20px 60px rgba(0,0,0,.18)}.product-card:hover{transform:translateY(-8px);border-color:rgba(255,255,255,.3);box-shadow:var(--shadow)}.product-card__visual{aspect-ratio:1.1/1;cursor:pointer;perspective:1500px;background:#08090b;overflow:hidden;position:relative}.flip-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.16,.8,.18,1)}.product-card:hover .flip-inner,.product-card.is-flipped .flip-inner{transform:rotateY(180deg)}.flip-face{position:absolute;inset:0;backface-visibility:hidden}.flip-face.back{transform:rotateY(180deg)}.flip-face img{width:100%;height:100%;object-fit:cover;object-position:center 49%}.flip-hint{position:absolute;right:16px;top:16px;z-index:5;padding:8px 10px;border-radius:999px;background:rgba(0,0,0,.55);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);font-size:9px;text-transform:uppercase;letter-spacing:.15em;font-weight:900}.product-card__body{padding:26px 26px 28px}.product-card__meta{display:flex;justify-content:space-between;align-items:center;color:#a9afb7;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.product-card h3{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;line-height:.95;text-transform:uppercase;margin:16px 0 12px}.product-card p{color:#b6bbc3;margin:0 0 20px;max-width:580px}.product-link{display:flex;align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:900}.arrow{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:.35s var(--ease)}.product-card:hover .arrow{background:#fff;color:#000;transform:rotate(-35deg)}
.manifesto{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.manifesto-sticky{position:sticky;top:130px}.principles{display:grid;gap:16px}.principle{padding:30px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.02);position:relative;overflow:hidden}.principle::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#fff;transform:scaleY(0);transform-origin:bottom;transition:.4s var(--ease)}.principle:hover::before{transform:scaleY(1)}.principle .num{font-size:11px;letter-spacing:.15em;color:#848a92}.principle h3{font-size:26px;text-transform:uppercase;margin:12px 0 8px}.principle p{margin:0;color:#acb1b9}
.science-band{border-block:1px solid var(--line);background:linear-gradient(180deg,#080a0d,#050608)}.science-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:26px;overflow:hidden}.science-cell{background:#090b0f;padding:30px;min-height:240px;display:flex;flex-direction:column;justify-content:space-between;transition:.35s}.science-cell:hover{background:#0f1218}.science-cell .symbol{font-size:44px;font-weight:950;color:#050505;-webkit-text-stroke:1px #fff}.science-cell p{color:#b1b7bf;margin:0}.science-cell small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#70767f}
.cta-panel{border:1px solid rgba(255,255,255,.18);border-radius:34px;min-height:430px;padding:60px;display:flex;align-items:end;justify-content:space-between;gap:40px;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 15%,rgba(255,255,255,.11),transparent 30%),#080a0d}.cta-panel::before{content:"∞";position:absolute;right:-30px;top:-95px;font-size:430px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.09);font-weight:900;transform:rotate(-8deg)}.cta-panel .copy{position:relative;z-index:2;max-width:760px}.cta-panel h2{font-size:clamp(44px,7vw,90px);line-height:.9;text-transform:uppercase;letter-spacing:-.05em;margin:0 0 20px}
.footer{border-top:1px solid var(--line);padding:60px 0 28px;background:#030405}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:50px}.footer-brand p{max-width:440px;color:#8f959e}.footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#737982;margin:0 0 18px}.footer-links{display:grid;gap:10px;font-size:14px;color:#c9ccd1}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:38px;margin-top:42px;border-top:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#696f77}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}.stagger>*{opacity:0;transform:translateY(22px);transition:.7s var(--ease)}.stagger.in>*{opacity:1;transform:none}.stagger.in>*:nth-child(2){transition-delay:.08s}.stagger.in>*:nth-child(3){transition-delay:.16s}.stagger.in>*:nth-child(4){transition-delay:.24s}.stagger.in>*:nth-child(5){transition-delay:.32s}
/* Product detail */
.product-page{--product-accent:#fff}.product-hero{min-height:100svh;padding:130px 0 80px;display:grid;align-items:center;position:relative;overflow:hidden}.product-hero::before{content:"";position:absolute;width:760px;height:760px;border-radius:50%;right:-260px;top:70px;background:radial-gradient(circle,var(--product-glow),transparent 65%);filter:blur(12px);opacity:.7;pointer-events:none}.product-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}.detail-visual{position:relative;min-height:650px;display:grid;place-items:center;perspective:1400px}.detail-flip{width:min(440px,85vw);aspect-ratio:2/3;position:relative;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.16,.8,.18,1);filter:drop-shadow(0 40px 70px rgba(0,0,0,.5))}.detail-visual:hover .detail-flip,.detail-visual.is-flipped .detail-flip{transform:rotateY(180deg)}.detail-flip .flip-face{border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.18)}.detail-flip img{width:100%;height:100%;object-fit:cover}.flip-toggle{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:8;background:rgba(5,6,8,.75);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:10px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;backdrop-filter:blur(12px)}
.product-copy .eyebrow{color:var(--product-accent)}.product-copy h1{font-size:clamp(54px,7.6vw,116px);line-height:.82;letter-spacing:-.06em;text-transform:uppercase;margin:18px 0 26px}.product-copy h1 span{color:#050505;-webkit-text-stroke:1px #fff}.product-copy .sub{font-size:22px;color:#c5cad1;max-width:700px}.fact-row{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.fact-pill{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:11px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#d8dbe0;background:rgba(255,255,255,.025)}.fact-pill b{color:var(--product-accent)}.product-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.accent-btn{background:var(--product-accent);color:#050505;border-color:var(--product-accent)}
.detail-section{padding:105px 0;border-top:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px}.sticky-label{position:sticky;top:120px;align-self:start}.big-stat{font-size:clamp(54px,8vw,124px);font-weight:950;letter-spacing:-.06em;line-height:.8;color:#050505;-webkit-text-stroke:1px var(--product-accent);text-transform:uppercase}.content-stack{display:grid;gap:18px}.content-card{border:1px solid var(--line);border-radius:24px;padding:30px;background:rgba(255,255,255,.02)}.content-card h3{margin:0 0 10px;font-size:25px;text-transform:uppercase;letter-spacing:-.02em}.content-card p{margin:0;color:#b8bdc5}.dose-table{width:100%;border-collapse:collapse;margin-top:14px}.dose-table th,.dose-table td{padding:14px 0;border-bottom:1px solid var(--line);text-align:left}.dose-table th{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#787e87}.dose-table td:last-child,.dose-table th:last-child{text-align:right}.dose-table strong{color:var(--product-accent)}
.steps{counter-reset:step;display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:28px;overflow:hidden}.step{counter-increment:step;background:#080a0d;padding:30px;display:grid;grid-template-columns:70px 1fr;gap:20px}.step::before{content:"0" counter(step);font-size:28px;font-weight:950;color:var(--product-accent)}.step h3{margin:0 0 8px;text-transform:uppercase}.step p{margin:0;color:#b4bac2}.legal-note{font-size:12px;color:#777d85;border-left:2px solid var(--product-accent);padding-left:16px;margin-top:22px}
.refs{display:grid;gap:12px}.ref{padding:18px 20px;border:1px solid var(--line);border-radius:16px;display:flex;justify-content:space-between;gap:18px;align-items:center;transition:.3s}.ref:hover{border-color:rgba(255,255,255,.35);transform:translateX(4px)}.ref span{color:#c6cbd2}.ref small{text-transform:uppercase;letter-spacing:.12em;color:#767c85}
/* About / Science / Contact */
.page-hero{padding:170px 0 90px;min-height:70svh;display:flex;align-items:end;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;right:-120px;top:80px;width:500px;height:500px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}.page-hero .lead{margin-top:28px}.standards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.standard-card{padding:30px;border:1px solid var(--line);border-radius:24px;min-height:260px;background:#080a0d}.standard-card .icon{font-size:42px;color:#050505;-webkit-text-stroke:1px #fff}.standard-card h3{text-transform:uppercase;font-size:24px;margin:28px 0 10px}.standard-card p{color:#aeb4bc;margin:0}.quote{font-size:clamp(34px,5vw,70px);line-height:1.03;letter-spacing:-.045em;font-weight:850;max-width:980px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{border:1px solid var(--line);border-radius:28px;padding:36px;background:#080a0d}.contact-card h2{font-size:34px;text-transform:uppercase;margin:0 0 10px}.contact-card p{color:#aeb4bc}.contact-link{font-size:clamp(24px,4vw,46px);font-weight:900;letter-spacing:-.04em;display:inline-block;margin-top:24px;border-bottom:1px solid #fff}.legal-copy{max-width:850px}.legal-copy h2{margin-top:54px;text-transform:uppercase}.legal-copy p,.legal-copy li{color:#b4bac2}.legal-copy a{text-decoration:underline;text-decoration-color:#555;text-underline-offset:3px}
.four-oh-four{min-height:100svh;display:grid;place-items:center;text-align:center;padding:40px}.four-oh-four .display{font-size:clamp(100px,25vw,280px)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pulse{0%,100%{opacity:.25;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:980px){.nav-links,.nav .btn{display:none}.menu-btn{display:block}.hero-grid,.product-hero-grid,.detail-grid,.manifesto,.contact-grid{grid-template-columns:1fr}.hero{padding-top:130px}.hero-stage{min-height:620px}.chip-a{left:4%}.chip-b{right:4%}.products-grid{grid-template-columns:1fr}.science-grid{grid-template-columns:repeat(2,1fr)}.manifesto-sticky,.sticky-label{position:relative;top:auto}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.product-hero-grid{gap:25px}.product-copy{order:-1}.detail-visual{min-height:620px}.standards-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.wrap{width:min(calc(100% - 28px),var(--max))}.section{padding:85px 0}.hero{min-height:auto;padding-bottom:70px}.hero-grid{gap:10px}.display{font-size:clamp(54px,18vw,88px)}.hero-stage{min-height:500px}.hero-card{width:min(330px,86vw);border-radius:24px}.hero-orbit{width:420px;height:420px}.floating-chip{display:none}.scroll-cue{display:none}.products-intro{display:block}.products-intro .lead{margin-top:16px}.product-card__visual{aspect-ratio:.88/1}.science-grid{grid-template-columns:1fr}.cta-panel{min-height:360px;padding:32px;display:block}.cta-panel .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:grid}.product-hero{padding-top:120px}.product-copy h1{font-size:clamp(54px,16vw,80px)}.detail-visual{min-height:500px}.detail-flip{width:min(330px,88vw)}.detail-grid{gap:40px}.big-stat{font-size:64px}.step{grid-template-columns:50px 1fr;padding:22px}.page-hero{padding-top:145px;min-height:60svh}.standards-grid{grid-template-columns:1fr}.contact-card{padding:26px}.site-header{padding-top:10px}.brand-name{display:none}}
@media(hover:none){.flip-hint{display:none}.product-card:hover .flip-inner{transform:none}.product-card.is-flipped .flip-inner{transform:rotateY(180deg)}.detail-visual:hover .detail-flip{transform:none}.detail-visual.is-flipped .detail-flip{transform:rotateY(180deg)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.site-canvas,.cursor-glow{display:none}.reveal,.stagger>*{opacity:1;transform:none}}


/* ===== Infinity Labs refinement patch ===== */
.display{
  line-height:.82;
  letter-spacing:-.038em;
  font-weight:920;
  color:transparent;
  -webkit-text-stroke:1.35px rgba(255,255,255,.96);
  text-shadow:0 0 36px rgba(255,255,255,.06);
  text-rendering:geometricPrecision;
}
.page-hero .display.small{
  letter-spacing:-.028em;
  line-height:.84;
}
.section-title{
  letter-spacing:-.032em;
  line-height:.92;
  text-rendering:geometricPrecision;
}
.quote{letter-spacing:-.03em}
.brand{gap:12px}
.brand-plate{
  background:transparent;
  border-radius:0;
  padding:0;
  box-shadow:none;
  display:inline-flex;
  align-items:center;
}
.brand-plate img{
  width:126px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.35));
}
.brand-name{display:none}
.footer .brand-plate img{width:118px;height:auto}
.hero-card{
  overflow:visible;
  border:0;
  box-shadow:none;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.08),transparent 58%);
}
.hero-card img{
  object-fit:contain;
  filter:drop-shadow(0 42px 46px rgba(0,0,0,.42));
}
.hero-card::after{display:none}
.product-card__visual{
  background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.08),transparent 58%), #08090b;
}
.flip-face{
  display:grid;
  place-items:center;
  padding:16px;
}
.flip-face img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 28px 24px rgba(0,0,0,.32));
}
.detail-visual{
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.06),transparent 42%);
}
.detail-flip{
  filter:none;
  animation:float 6s ease-in-out infinite;
}
.detail-flip .flip-face{
  overflow:visible;
  border:0;
  display:grid;
  place-items:center;
  padding:10px;
}
.detail-flip img{
  object-fit:contain;
  filter:drop-shadow(0 40px 40px rgba(0,0,0,.38));
}
@media(max-width:640px){
  .brand-plate img{width:104px}
  .page-hero .display.small{letter-spacing:-.02em}
}


/* --- ChatGPT fix: show full product bottles without cropping --- */
.products-grid{
  align-items:start;
}
.product-card{
  display:flex;
  flex-direction:column;
}
.product-card__visual{
  aspect-ratio:auto !important;
  height:430px !important;
  min-height:430px !important;
  display:block;
  overflow:hidden;
  background:radial-gradient(circle at 50% 30%, rgba(255,255,255,.08), transparent 58%), #08090b;
}
.flip-inner{
  position:absolute;
  inset:0;
}
.flip-face{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:18px 18px 10px !important;
}
.flip-face img{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:auto;
  filter:drop-shadow(0 24px 22px rgba(0,0,0,.28));
}
.hero-card img{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.detail-visual{
  min-height:760px !important;
}
.detail-flip{
  width:min(500px, 90vw) !important;
  height:760px !important;
  aspect-ratio:auto !important;
}
.detail-flip .flip-face{
  padding:12px !important;
}
.detail-flip img{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:auto;
}
@media (max-width: 980px){
  .products-grid{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .product-card__visual{
    height:360px !important;
    min-height:360px !important;
  }
  .detail-visual{
    min-height:520px !important;
  }
  .detail-flip{
    width:min(360px, 92vw) !important;
    height:520px !important;
  }
}


/* ===== Infinity Labs commerce layer ===== */
.cart-nav{height:42px;min-width:82px;padding:0 14px;border:1px solid var(--line);border-radius:999px;display:inline-flex;gap:9px;align-items:center;justify-content:center;font-size:12px;text-transform:uppercase;letter-spacing:.1em;background:rgba(8,9,11,.74);backdrop-filter:blur(12px);transition:.25s ease}.cart-nav:hover{border-color:rgba(255,255,255,.4);background:#111318}.cart-nav b,.mobile-cart-link span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:20px;background:#fff;color:#06070a;font-size:10px}.mobile-cart-link{display:flex!important;align-items:center;gap:10px}.store-preview-badge{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:1600;padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(5,6,8,.88);backdrop-filter:blur(15px);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#aeb4bc;box-shadow:0 10px 40px rgba(0,0,0,.3);white-space:nowrap}.shop-card-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:22px 0 12px;padding-top:18px;border-top:1px solid var(--line)}.product-price,.detail-price{font-size:24px;letter-spacing:-.025em}.add-cart-btn{min-height:42px;padding:0 18px}.product-buy{display:flex;align-items:center;gap:16px}.product-actions{flex-wrap:wrap}.detail-price{font-size:30px}.cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:.3s;z-index:1490}.cart-drawer{position:fixed;top:0;right:0;width:min(460px,100vw);height:100dvh;background:#08090b;border-left:1px solid var(--line);z-index:1500;transform:translateX(102%);transition:transform .35s cubic-bezier(.2,.75,.2,1);display:grid;grid-template-rows:auto 1fr auto;box-shadow:-20px 0 80px rgba(0,0,0,.4)}.cart-open .cart-backdrop{opacity:1;pointer-events:auto}.cart-open .cart-drawer{transform:none}.cart-head{display:flex;align-items:start;justify-content:space-between;padding:28px;border-bottom:1px solid var(--line)}.cart-head h2{margin:5px 0 0;font-size:34px;text-transform:uppercase}.cart-close{border:1px solid var(--line);background:#0d0f13;color:#fff;border-radius:50%;width:42px;height:42px;font-size:27px;cursor:pointer}.cart-lines{overflow:auto;padding:10px 24px}.cart-line{display:grid;grid-template-columns:82px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.cart-line-img{height:104px;border-radius:14px;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 62%),#0c0e12;display:grid;place-items:center;overflow:hidden}.cart-line-img img{width:100%;height:100%;object-fit:contain}.cart-line-copy{display:grid;gap:7px}.cart-line-copy strong{font-size:14px}.cart-line-copy>span{color:#aeb4bc;font-size:13px}.qty-control{display:flex;align-items:center;width:max-content;border:1px solid var(--line);border-radius:999px;overflow:hidden}.qty-control button{width:30px;height:28px;border:0;background:transparent;color:#fff;cursor:pointer}.qty-control b{min-width:22px;text-align:center;font-size:12px}.cart-remove{align-self:start;border:0;background:none;color:#707681;font-size:24px;cursor:pointer}.cart-foot{padding:24px 28px 32px;border-top:1px solid var(--line);display:grid;gap:12px}.cart-total{display:flex;justify-content:space-between;align-items:end}.cart-total span{text-transform:uppercase;font-size:11px;letter-spacing:.12em;color:#999fa8}.cart-total strong{font-size:28px}.cart-foot small{color:#7f8791}.cart-checkout{text-align:center;justify-content:center}.cart-clear{background:none;border:0;color:#7f8791;font-size:11px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.cart-empty{padding:40px 4px;color:#aeb4bc}.cart-empty a{color:#fff}.checkout-page{padding:150px 0 100px}.checkout-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:28px;align-items:start}.checkout-panel{border:1px solid var(--line);border-radius:28px;background:#080a0d;padding:32px}.checkout-panel h1,.checkout-panel h2{text-transform:uppercase;margin:0}.checkout-panel h1{font-size:clamp(42px,6vw,70px);letter-spacing:-.04em}.checkout-panel h2{font-size:24px;margin-bottom:22px}.checkout-panel .lead{margin:12px 0 30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#9ca3ad}.field input,.field select{width:100%;height:50px;border:1px solid var(--line);border-radius:12px;background:#0c0e12;color:#fff;padding:0 14px;font:inherit;outline:none}.field input:focus,.field select:focus{border-color:#8b939e}.checkout-consent{display:flex;gap:10px;align-items:flex-start;margin:20px 0;color:#aeb4bc;font-size:13px}.checkout-consent input{margin-top:3px}.checkout-consent a{text-decoration:underline}.pay-btn{width:100%;justify-content:center}.pay-btn:disabled{opacity:.45;cursor:not-allowed}.checkout-message{min-height:20px;margin-top:12px}.checkout-warning{display:block;padding:12px 14px;border:1px solid rgba(255,190,100,.28);border-radius:12px;background:rgba(255,180,80,.06);color:#f1c889;font-size:13px}.order-summary{position:sticky;top:110px}.checkout-lines{display:grid}.checkout-line{display:grid;grid-template-columns:62px 1fr auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.checkout-line img{width:62px;height:78px;object-fit:contain;background:#0c0e12;border-radius:10px}.checkout-line div{display:grid;gap:4px}.checkout-line span{font-size:12px;color:#8f97a1}.checkout-line b{font-size:13px}.summary-totals{display:grid;gap:11px;padding-top:20px}.summary-row{display:flex;justify-content:space-between;color:#aeb4bc}.summary-row.total{padding-top:14px;margin-top:4px;border-top:1px solid var(--line);color:#fff;font-size:22px}.checkout-security{margin-top:18px;color:#78808a;font-size:12px;line-height:1.55}.order-status-wrap{min-height:100svh;display:grid;place-items:center;padding:120px 24px 80px}.order-status-card{width:min(720px,100%);text-align:center;border:1px solid var(--line);border-radius:32px;background:#080a0d;padding:clamp(34px,6vw,70px)}.order-status-card h2{font-size:clamp(34px,6vw,60px);text-transform:uppercase;letter-spacing:-.04em;margin:14px 0}.order-status-card p{color:#aeb4bc;max-width:560px;margin:0 auto 28px}.status-icon{width:72px;height:72px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:34px}.status-icon.success{background:#fff;color:#050608}.checkout-empty a{text-decoration:underline}.shop-legal-note{font-size:11px;color:#737b86;margin-top:14px;line-height:1.55}
@media(max-width:980px){.checkout-grid{grid-template-columns:1fr}.order-summary{position:relative;top:auto}.cart-nav{margin-left:auto}.nav>.cart-nav{display:inline-flex}.shop-card-row{align-items:center}.store-preview-badge{max-width:calc(100vw - 24px);white-space:normal;text-align:center}}
@media(max-width:640px){.store-preview-badge{font-size:9px;bottom:10px}.shop-card-row{display:grid;grid-template-columns:1fr auto}.product-price{font-size:21px}.add-cart-btn{padding:0 14px}.product-buy{width:100%;justify-content:space-between}.detail-price{font-size:26px}.cart-head{padding:22px}.cart-lines{padding:8px 18px}.cart-foot{padding:20px 22px 28px}.checkout-page{padding:120px 0 80px}.checkout-panel{padding:24px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}


/* --- Cart product image fit fix: keep full bottle visible --- */
.cart-line-img{
  height:110px;
  padding:7px 6px;
  box-sizing:border-box;
  overflow:hidden;
}
.cart-line-img img{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:auto;
}
@media(max-width:640px){
  .cart-line-img{height:110px;padding:7px 6px;}
}


/* ===== Mobile experience refinement (desktop rules intentionally unchanged) ===== */
@media (max-width:767px){
  html,body{width:100%;max-width:100%;overflow-x:clip}
  body{-webkit-text-size-adjust:100%}
  .site-canvas,.cursor-glow{display:none!important}

  .wrap{width:min(calc(100% - 28px),var(--max))}
  .section{padding:72px 0}
  .section.tight{padding:60px 0}

  .site-header{padding:10px 0}
  .site-header.scrolled{padding:8px 0}
  .nav{gap:10px;min-width:0}
  .brand{min-width:0;flex:0 1 auto}
  .brand-plate img{width:100px;max-width:29vw;height:auto}
  .cart-nav{height:40px;min-width:72px;padding:0 11px;gap:7px;font-size:10px;letter-spacing:.08em;margin-left:auto;flex:0 0 auto}
  .cart-nav b{min-width:19px;height:19px}
  .menu-btn{display:block;width:42px;height:42px;flex:0 0 42px}

  .mobile-drawer{padding:max(22px,env(safe-area-inset-top)) 20px max(22px,env(safe-area-inset-bottom))}
  .mobile-drawer nav{font-size:clamp(30px,10vw,40px);gap:14px;line-height:1.02}
  .mobile-drawer .close-menu{right:16px;top:max(16px,env(safe-area-inset-top))}

  .hero{min-height:auto;padding:112px 0 58px;align-items:start}
  .hero-grid{gap:0}
  .hero-copy{min-width:0;width:100%}
  .hero-kicker{margin-bottom:16px;font-size:10px;line-height:1.5;letter-spacing:.19em}
  .display{
    font-size:clamp(48px,16vw,70px);
    line-height:.84;
    letter-spacing:-.03em;
    color:#050608;
    -webkit-text-stroke:1.15px rgba(255,255,255,.95);
    paint-order:normal;
    text-shadow:none;
    max-width:100%;
  }
  .hero-copy .lead{font-size:18px;line-height:1.55;margin:26px 0 28px;max-width:100%}
  .hero-copy .btn{flex:1 1 100%;width:100%}
  .hero-stage{min-height:440px;margin-top:20px;overflow:visible}
  .hero-orbit{width:min(390px,96vw);height:min(390px,96vw)}
  .hero-card{width:min(300px,76vw);border-radius:22px;transform:none}
  .hero-card:hover{transform:none}
  .hero-card img{max-height:430px}
  .floating-chip,.scroll-cue{display:none!important}

  .products-intro{display:block;margin-bottom:32px}
  .products-intro .lead{margin:14px 0 0;font-size:18px;line-height:1.55}
  .products-grid{gap:18px}
  .product-card{border-radius:22px}
  .product-card__visual{height:clamp(330px,98vw,390px)!important;min-height:0!important}
  .product-card__body{padding:22px 20px 24px}
  .product-card__meta{align-items:flex-start;gap:6px;flex-direction:column;line-height:1.4}
  .product-card h3{font-size:clamp(32px,10vw,42px);line-height:.94;margin:14px 0 10px}
  .product-card p{font-size:15px;line-height:1.6}
  .shop-card-row{margin:18px 0 12px;padding-top:16px;gap:10px;grid-template-columns:auto 1fr}
  .product-price{font-size:20px}
  .add-cart-btn{min-height:42px;padding:0 14px;justify-self:end;font-size:11px;white-space:nowrap}
  .product-link{font-size:11px}

  .manifesto{gap:34px}
  .principle{padding:22px;border-radius:20px}
  .principle h3{font-size:22px}
  .science-grid{border-radius:20px}
  .science-cell{min-height:190px;padding:22px}
  .cta-panel{min-height:0;padding:30px 24px;border-radius:24px;display:block}
  .cta-panel::before{font-size:280px;right:-60px;top:-70px}
  .cta-panel h2{font-size:clamp(38px,12vw,54px);line-height:.92}
  .cta-panel .btn{width:100%;margin-top:18px}

  .product-hero{min-height:auto;padding:108px 0 58px}
  .product-hero-grid{gap:16px}
  .product-copy{min-width:0}
  .product-copy h1{font-size:clamp(44px,13vw,64px);line-height:.87;letter-spacing:-.04em;margin:16px 0 20px;overflow-wrap:anywhere}
  .product-copy h1 span{color:#050608;paint-order:normal}
  .product-copy .sub{font-size:18px;line-height:1.55}
  .fact-row{gap:8px;margin:22px 0}
  .fact-pill{padding:9px 11px;font-size:9px;letter-spacing:.09em}
  .product-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
  .product-actions>.btn,.product-buy{width:100%}
  .product-buy{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}
  .product-buy .btn{width:100%}
  .detail-price{font-size:24px}
  .detail-visual{min-height:480px!important}
  .detail-flip{width:min(330px,86vw)!important;height:480px!important}
  .detail-flip .flip-face{padding:8px!important}
  .flip-toggle{bottom:6px;max-width:calc(100% - 28px);white-space:normal;text-align:center;line-height:1.35}

  .detail-section{padding:72px 0}
  .detail-grid{gap:30px}
  .sticky-label{margin-bottom:2px}
  .section-title{font-size:clamp(38px,12vw,54px);line-height:.95}
  .big-stat{font-size:clamp(52px,17vw,76px);color:#050608;paint-order:normal}
  .content-stack{gap:14px}
  .content-card{padding:22px;border-radius:20px;min-width:0}
  .content-card h3{font-size:21px;line-height:1.1}
  .content-card p{line-height:1.65}
  .dose-table{font-size:13px;table-layout:fixed}
  .dose-table th,.dose-table td{padding:12px 5px;vertical-align:top;word-break:normal}
  .dose-table th:first-child,.dose-table td:first-child{width:44%}
  .steps{border-radius:20px}
  .step{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:20px 18px}
  .step::before{font-size:23px}
  .refs{gap:10px}
  .ref{padding:16px;display:grid;gap:8px;align-items:start;border-radius:14px}
  .ref small{line-height:1.4}

  .page-hero{padding:125px 0 64px;min-height:52svh}
  .page-hero::after{width:330px;height:330px;right:-160px;top:70px;box-shadow:0 0 0 45px rgba(255,255,255,.02),0 0 0 90px rgba(255,255,255,.014)}
  .page-hero .display.small{font-size:clamp(42px,12vw,62px);line-height:.9;letter-spacing:-.02em;overflow-wrap:anywhere}
  .page-hero .lead{font-size:18px;line-height:1.55}
  .standard-card{min-height:0;padding:24px}
  .contact-card{padding:24px;border-radius:22px}
  .contact-card h2{font-size:28px}
  .contact-link{font-size:clamp(22px,8vw,34px);overflow-wrap:anywhere;word-break:break-word}
  .quote{font-size:clamp(32px,10vw,48px)}
  .legal-copy h2{margin-top:40px}

  .footer{padding:48px 0 calc(24px + env(safe-area-inset-bottom))}
  .footer-grid{gap:30px}
  .footer-brand p{line-height:1.6}
  .footer-bottom{margin-top:32px;padding-top:28px;gap:12px;line-height:1.55}

  .cart-drawer{width:100%;max-width:none;height:100dvh;border-left:0;padding-bottom:env(safe-area-inset-bottom)}
  .cart-head{padding:20px 18px}
  .cart-head h2{font-size:30px}
  .cart-close{width:40px;height:40px;flex:0 0 40px}
  .cart-lines{padding:6px 16px}
  .cart-line{grid-template-columns:74px minmax(0,1fr) 24px;gap:12px;padding:13px 0}
  .cart-line-img{width:74px;height:102px!important;padding:7px 5px!important}
  .cart-line-copy{min-width:0;gap:6px}
  .cart-line-copy strong{font-size:13px;line-height:1.35;display:block;overflow-wrap:anywhere}
  .cart-remove{font-size:22px;padding:0;width:24px}
  .cart-foot{padding:18px 18px calc(22px + env(safe-area-inset-bottom))}
  .cart-total strong{font-size:25px}

  .checkout-page{padding:110px 0 68px}
  .checkout-grid{gap:18px}
  .checkout-panel{padding:20px;border-radius:20px}
  .checkout-panel h1{font-size:clamp(38px,12vw,52px);line-height:.95}
  .checkout-panel h2{font-size:21px}
  .checkout-panel .lead{font-size:17px;line-height:1.55;margin-bottom:24px}
  .form-grid{gap:13px}
  .field input,.field select{height:48px;font-size:16px}
  .checkout-line{grid-template-columns:52px minmax(0,1fr) auto;gap:10px}
  .checkout-line img{width:52px;height:68px}
  .checkout-line strong{font-size:13px;line-height:1.35}
  .summary-row{gap:12px}
  .order-status-wrap{padding:100px 14px 60px}
  .order-status-card{border-radius:22px;padding:30px 20px}

  /* The preview chip is useful on desktop, but it covered primary mobile CTAs. */
  .store-preview-badge{display:none!important}
}

@media (max-width:390px){
  .wrap{width:min(calc(100% - 22px),var(--max))}
  .brand-plate img{width:92px}
  .cart-nav{min-width:64px;padding:0 9px}
  .cart-nav span{font-size:9px}
  .menu-btn{width:40px;height:40px;flex-basis:40px}
  .display{font-size:clamp(46px,15.2vw,60px)}
  .hero-copy .lead{font-size:17px}
  .product-card__body{padding-inline:18px}
  .shop-card-row{grid-template-columns:1fr}
  .add-cart-btn{justify-self:stretch;width:100%}
  .product-buy{grid-template-columns:1fr}
  .product-buy .detail-price{display:block}
  .cart-line{grid-template-columns:68px minmax(0,1fr) 22px;gap:10px}
  .cart-line-img{width:68px;height:96px!important}
}

@media (hover:none),(pointer:coarse){
  .site-canvas,.cursor-glow{display:none!important}
  .product-card:hover{transform:none;border-color:var(--line);box-shadow:0 20px 60px rgba(0,0,0,.18)}
  .product-card:hover .arrow{background:transparent;color:inherit;transform:none}
  .btn:hover{transform:none}
}


/* =========================================================
   INFINITY LABS ACCOUNT / SUPABASE AUTH
   Scoped to auth pages to avoid changing the existing site.
   ========================================================= */
.auth-main{min-height:100svh;padding:150px 0 90px;display:grid;align-items:center}
.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.72fr);gap:clamp(40px,7vw,100px);align-items:center}
.auth-intro{max-width:720px}.auth-display{font-size:clamp(58px,8.4vw,126px);line-height:.82;letter-spacing:-.065em;text-transform:uppercase;margin:22px 0 28px;font-weight:950}.auth-intro .lead{max-width:600px}.auth-benefits{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}.auth-benefits span{padding:10px 13px;border:1px solid var(--line);border-radius:999px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#c5cad1;background:rgba(255,255,255,.025)}
.auth-card{border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 35px 100px rgba(0,0,0,.36);padding:30px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:999px;padding:4px;margin-bottom:28px;background:#080a0d}.auth-tabs button{border:0;background:transparent;color:#8e959e;border-radius:999px;min-height:45px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:900}.auth-tabs button.active{background:#fff;color:#050608}.auth-form{display:grid;gap:15px}.auth-form .field input{height:54px;border-radius:14px;background:#090b0e}.auth-submit{width:100%;margin-top:5px}.auth-divider{display:flex;align-items:center;gap:14px;margin:24px 0;color:#69717b;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:var(--line);flex:1}.google-btn{width:100%;min-height:54px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:800;transition:.25s var(--ease)}.google-btn:hover{transform:translateY(-2px);box-shadow:0 15px 40px rgba(0,0,0,.2)}.google-btn:disabled{opacity:.55;cursor:wait}.google-mark{width:24px;height:24px;border:1px solid #d7d9dd;border-radius:50%;display:grid;place-items:center;font-weight:900;font-family:Arial,sans-serif}.auth-switch,.auth-terms{font-size:12px;color:#8f97a1;text-align:center;margin:20px 0 0}.auth-switch a,.auth-terms a{color:#fff;text-decoration:underline;text-underline-offset:3px}.auth-message{min-height:22px;margin-top:18px;text-align:center;font-size:12px;color:#aab0ba}.auth-message.error{color:#ffaaa3}.auth-message.success{color:#b9e7c7}.existing-session{padding:13px 15px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.04);margin-bottom:18px;color:#bec4cc;font-size:12px}.existing-session a{color:#fff;font-weight:800}.auth-setup{width:min(1100px,100%);margin:0 auto 22px;padding:14px 16px;border:1px solid rgba(255,190,100,.3);border-radius:14px;background:rgba(255,180,80,.07);color:#e5c792;display:grid;gap:4px;font-size:12px}.auth-setup code{color:#fff}.auth-setup strong{text-transform:uppercase;letter-spacing:.1em;font-size:10px}
.account-main{min-height:100svh;padding:150px 0 100px}.account-loading{min-height:55svh;display:grid;place-items:center;align-content:center;gap:16px;color:#929aa4}.account-spinner{width:38px;height:38px;border:1px solid rgba(255,255,255,.17);border-top-color:#fff;border-radius:50%;animation:accountSpin .8s linear infinite}.account-error{padding:20px;border:1px solid rgba(255,120,120,.3);background:rgba(255,80,80,.06);border-radius:18px;color:#ffb4b4}.account-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:60px;align-items:center;padding:28px 0 70px}.account-hero h1{font-size:clamp(58px,8vw,116px);line-height:.82;letter-spacing:-.065em;text-transform:uppercase;margin:20px 0 28px}.account-hero h1 span{color:#050608;-webkit-text-stroke:1px rgba(255,255,255,.96);paint-order:stroke fill}.account-level-card{border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.09),transparent 58%),#090b0f;padding:28px;min-height:410px;display:grid;grid-template-rows:auto 1fr auto;box-shadow:var(--shadow)}.level-top{display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px;letter-spacing:.16em;color:#9ca3ad}.level-top strong{color:#fff}.level-ring{width:170px;height:170px;border:1px solid rgba(255,255,255,.2);border-radius:50%;margin:auto;display:grid;place-items:center;align-content:center;box-shadow:inset 0 0 50px rgba(255,255,255,.035),0 0 60px rgba(255,255,255,.025)}.level-ring span{font-size:9px;letter-spacing:.22em;color:#9199a3}.level-ring b{font-size:72px;line-height:1;letter-spacing:-.06em}.level-progress{display:grid;gap:10px}.level-progress>div:first-child{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#aab0ba}.progress-track{height:5px;border-radius:10px;background:#1a1d22;overflow:hidden}.progress-track i{display:block;height:100%;background:#fff;border-radius:inherit}.level-progress small{color:#727a84}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.account-panel{border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012));padding:28px;min-height:280px}.account-panel h2{font-size:clamp(28px,3vw,42px);text-transform:uppercase;letter-spacing:-.035em;line-height:.95;margin:20px 0 14px}.account-panel p{color:#9ea5ae;max-width:580px}.account-panel .btn{margin-top:14px}.account-details{display:grid;margin:22px 0 0}.account-details>div{display:grid;grid-template-columns:135px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}.account-details dt{text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#7f8791}.account-details dd{margin:0;font-weight:700;overflow-wrap:anywhere}.rewards-panel{background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.07),transparent 35%),linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012))}
@keyframes accountSpin{to{transform:rotate(360deg)}}
@media(max-width:980px){.auth-layout,.account-hero{grid-template-columns:1fr}.auth-intro{max-width:none}.auth-main{padding-top:130px}.account-grid{grid-template-columns:1fr}.account-level-card{width:min(520px,100%)}.account-hero{gap:28px}}
@media(max-width:640px){.auth-main{padding:118px 0 70px}.auth-layout{gap:28px}.auth-display{font-size:clamp(48px,15vw,72px);margin:16px 0 18px}.auth-intro .lead{font-size:18px}.auth-benefits{margin-top:20px}.auth-card{padding:18px;border-radius:22px}.auth-tabs{margin-bottom:20px}.auth-form .field input{height:50px;font-size:16px}.google-btn{min-height:50px}.account-main{padding:118px 0 75px}.account-hero{padding:15px 0 42px}.account-hero h1{font-size:clamp(48px,14vw,70px);margin:16px 0 20px}.account-level-card{min-height:350px;padding:22px;border-radius:24px}.level-ring{width:145px;height:145px}.level-ring b{font-size:60px}.account-panel{padding:22px;min-height:0;border-radius:22px}.account-details>div{grid-template-columns:1fr;gap:5px}.auth-setup{margin-bottom:16px}}

.auth-page .store-preview-badge{display:none}

/* --- Account page fix v2: true hidden state + non-overlapping responsive name --- */
.auth-page [hidden]{display:none !important}

.account-hero > div:first-child{
  min-width:0;
  overflow:visible;
}
.account-hero h1{
  max-width:100%;
  overflow:visible;
  line-height:1;
}
.account-hero h1 .account-welcome{
  display:block;
  color:#f5f5f5;
  -webkit-text-stroke:0;
  paint-order:normal;
  line-height:.84;
}
.account-hero h1 .account-name-row{
  display:flex;
  align-items:baseline;
  width:100%;
  max-width:100%;
  min-width:0;
  margin-top:.13em;
  font-size:1em;
  line-height:1.02;
  white-space:nowrap;
  overflow:hidden;
}
.account-hero h1 .account-name{
  display:block;
  min-width:0;
  max-width:none;
  width:auto;
  flex:0 0 auto;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  font-size:1em;
  line-height:1.02;
  letter-spacing:-.055em;
  color:#050608;
  -webkit-text-stroke:1px rgba(255,255,255,.96);
  paint-order:stroke fill;
  padding-bottom:.06em;
}
.account-hero h1 .account-name-dot{
  display:block;
  flex:0 0 auto;
  margin-left:.015em;
  padding-bottom:.06em;
  font-size:1em;
  line-height:1.02;
  letter-spacing:0;
  color:#f5f5f5;
  -webkit-text-stroke:0;
  paint-order:normal;
}

@media(max-width:640px){
  .account-hero h1 .account-name-row{margin-top:.16em;line-height:1.06}
  .account-hero h1 .account-name,
  .account-hero h1 .account-name-dot{line-height:1.06;padding-bottom:.08em}
}

/* --- Account heading fix v3: protect outlined name glyphs + more welcome/name spacing --- */
.account-hero h1 .account-name-row{
  margin-top:.24em;
  line-height:1.14;
  padding-top:.12em;
  padding-bottom:.08em;
  overflow:visible;
}
.account-hero h1 .account-name,
.account-hero h1 .account-name-dot{
  line-height:1.14;
  padding-top:.02em;
  padding-bottom:.08em;
}
@media(max-width:640px){
  .account-hero h1 .account-name-row{
    margin-top:.22em;
    line-height:1.16;
    padding-top:.12em;
    padding-bottom:.09em;
  }
  .account-hero h1 .account-name,
  .account-hero h1 .account-name-dot{
    line-height:1.16;
    padding-top:.02em;
    padding-bottom:.09em;
  }
}

/* --- Account heading fix v4: stable outlined-name rendering at normal browser zoom --- */
.account-hero h1 .account-name{
  /* A fractional 1px WebKit stroke can lose the top edge at some zoom/DPI values.
     Use a slightly stronger stroke plus a tiny 8-way shadow fallback so the outline
     stays continuous without changing the desktop design. */
  -webkit-text-stroke:1.2px rgba(255,255,255,.98);
  text-shadow:
    0 -.45px 0 rgba(255,255,255,.92),
    .45px -.45px 0 rgba(255,255,255,.82),
    .45px 0 0 rgba(255,255,255,.88),
    .45px .45px 0 rgba(255,255,255,.82),
    0 .45px 0 rgba(255,255,255,.9),
    -.45px .45px 0 rgba(255,255,255,.82),
    -.45px 0 0 rgba(255,255,255,.88),
    -.45px -.45px 0 rgba(255,255,255,.82);
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
  transform:translateZ(0);
}

/* Extra top breathing room for the stroke itself; does not alter the visual gap. */
.account-hero h1 .account-name-row{
  padding-top:.17em;
}

@media(max-width:640px){
  .account-hero h1 .account-name{
    -webkit-text-stroke:1.1px rgba(255,255,255,.98);
  }
  .account-hero h1 .account-name-row{
    padding-top:.17em;
  }
}

/* --- Account heading fix v5: keep the white end dot visually separated from the name --- */
.account-hero h1 .account-name-row{
  column-gap:.14em;
}
.account-hero h1 .account-name-dot{
  margin-left:0;
}
@media(max-width:640px){
  .account-hero h1 .account-name-row{
    column-gap:.12em;
  }
}


/* =========================================================
   INFINITY LABS V15 — responsive, accessibility & legal UX
   Final overrides: intentionally loaded after legacy rules.
   ========================================================= */
:root{--focus:#fff;--content-max:1240px}
:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
a,button,input,select,textarea{touch-action:manipulation}
button,input,select,textarea{min-width:0}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Header scales smoothly before the mobile breakpoint. */
@media (max-width:1180px) and (min-width:981px){
  .nav{gap:14px}
  .nav-links{gap:18px;font-size:11px;letter-spacing:.1em}
  .nav>.btn{min-height:44px;padding-inline:15px;font-size:11px}
  .brand-plate img{width:94px;height:38px}
  .brand-name{display:none}
}

/* Keep wide layouts fluid instead of allowing fixed content to collide. */
.hero-grid,.product-hero-grid,.detail-grid,.manifesto,.checkout-grid,.account-hero,.auth-layout{min-width:0}
.hero-copy,.product-copy,.content-stack,.checkout-panel,.account-hero>*,.auth-layout>*{min-width:0}
.product-copy h1,.section-title,.display,.account-hero h1,.auth-display{overflow-wrap:normal;word-break:normal}

/* Preview notice should never float over CTAs. Test status remains visible at checkout. */
.store-preview-badge{display:none!important}

/* Legal / information pages */
.legal-copy{max-width:900px}
.legal-copy h2{font-size:clamp(24px,3vw,34px);text-transform:uppercase;letter-spacing:-.025em;margin:52px 0 14px}
.legal-copy h3{font-size:18px;margin:28px 0 10px}
.legal-copy p,.legal-copy li{color:#bcc2ca;line-height:1.75}
.legal-copy a{text-decoration:underline;text-underline-offset:3px}
.legal-copy ul,.legal-copy ol{padding-left:1.3em}
.legal-callout{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);margin:24px 0;color:#cfd4da}
.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.legal-card{border:1px solid var(--line);border-radius:18px;padding:20px;background:#080a0d}
.legal-card strong{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.13em;color:#fff;margin-bottom:7px}
.legal-card span{color:#aeb5be;overflow-wrap:anywhere}
.legal-placeholder{border-color:rgba(255,190,100,.32);background:rgba(255,190,100,.055)}
.legal-placeholder span{color:#e5c792}
.cancel-order-link{font-weight:900;color:#fff!important;text-decoration:underline!important;text-underline-offset:4px}

/* Cookie/settings disclosure without unnecessary tracking consent prompts. */
.privacy-settings-btn{border:0;background:none;color:inherit;padding:0;text-align:left;font:inherit;cursor:pointer}
.cookie-dialog{position:fixed;inset:0;z-index:2200;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}
.cookie-dialog__panel{width:min(560px,100%);border:1px solid var(--line);border-radius:24px;background:#090b0f;padding:26px;box-shadow:0 30px 100px rgba(0,0,0,.6)}
.cookie-dialog__panel h2{margin:6px 0 12px;text-transform:uppercase;font-size:28px}
.cookie-dialog__panel p{color:#aeb5be}
.cookie-dialog__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.cookie-state{padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#0d1014;font-size:13px;color:#c7ccd3}

/* Checkout clarity, data minimisation and consent. */
.checkout-notice{font-size:12px;line-height:1.6;color:#8f97a1;margin:14px 0}
.checkout-notice a{text-decoration:underline;text-underline-offset:3px;color:#fff}
.checkout-consent{line-height:1.5}
.checkout-consent input{width:18px;height:18px;flex:0 0 18px;accent-color:#fff}
.pay-btn{min-height:54px}
.checkout-panel input:invalid:not(:placeholder-shown){border-color:rgba(255,120,120,.45)}
.checkout-security strong{color:#cfd4da}

/* Accessibility: avoid motion-heavy effects when requested. */
@media (prefers-reduced-motion:reduce){
  .marquee{animation:none!important;transform:none!important}
  .detail-flip{animation:none!important}
  .hero-orbit{animation:none!important}
}

/* Mobile-first refinement based on real iPhone viewport screenshots. */
@media (max-width:767px){
  body{overflow-x:hidden}
  .wrap{width:min(calc(100% - 32px),var(--max))}
  .site-header{padding:12px 0;background:linear-gradient(to bottom,rgba(5,6,8,.93),rgba(5,6,8,.72) 78%,transparent)}
  .site-header.scrolled{background:rgba(5,6,8,.92);backdrop-filter:blur(16px)}
  .nav{gap:10px}
  .brand-plate{padding:0;background:transparent;box-shadow:none;border-radius:0}
  .brand-plate img{width:clamp(108px,28vw,132px)!important;height:auto!important;max-width:none}
  .cart-nav{height:44px;min-width:86px;padding:0 13px;font-size:11px;border-color:rgba(255,255,255,.16);background:rgba(8,9,11,.75)}
  .menu-btn{width:44px;height:44px;flex-basis:44px;background:rgba(11,13,16,.86)}

  .mobile-drawer{display:block;overflow:auto;padding:calc(96px + env(safe-area-inset-top)) 24px calc(36px + env(safe-area-inset-bottom));transform:translateX(105%);transition:transform .38s var(--ease)}
  .mobile-drawer.open{transform:none}
  .mobile-drawer nav{display:grid;place-items:stretch;gap:0;text-align:left;font-size:clamp(28px,8.5vw,38px);line-height:1.06;letter-spacing:-.025em;max-width:560px;margin:0 auto}
  .mobile-drawer nav a{padding:16px 4px;border-bottom:1px solid rgba(255,255,255,.1)}
  .mobile-drawer nav a:first-child{border-top:1px solid rgba(255,255,255,.1)}
  .mobile-drawer .close-menu{right:18px;top:calc(18px + env(safe-area-inset-top))}
  .mobile-cart-link{justify-content:space-between!important}

  .hero{padding:128px 0 64px}
  .hero-kicker{max-width:100%;font-size:10px}
  .display{font-size:clamp(48px,15.2vw,68px);line-height:.86;letter-spacing:-.025em;-webkit-text-stroke:1.1px rgba(255,255,255,.95)}
  .hero-copy .lead{font-size:18px;line-height:1.55}
  .hero-copy>div:last-child{display:grid!important;grid-template-columns:1fr!important;width:100%}
  .hero-copy .btn{width:100%;min-height:54px}
  .hero-stage{min-height:390px;margin-top:26px}
  .hero-card{width:min(280px,72vw)}

  .section{padding:68px 0}
  .section.tight{padding:56px 0}
  .eyebrow{font-size:10px;letter-spacing:.18em;line-height:1.45}
  .eyebrow::before{width:28px;flex:0 0 28px}
  .section-title{font-size:clamp(36px,11vw,52px);line-height:.97}
  .products-grid{gap:18px}
  .product-card__visual{height:clamp(330px,94vw,390px)!important}
  .product-card__body{padding:22px 20px 24px}
  .product-card h3{font-size:clamp(30px,9.5vw,40px)}
  .shop-card-row{grid-template-columns:auto minmax(0,1fr)}
  .add-cart-btn{justify-self:end;max-width:100%}

  /* Product detail: compact and readable, with no title deformation. */
  .product-hero{padding:122px 0 52px}
  .product-hero-grid{display:grid;grid-template-columns:1fr;gap:26px}
  .product-copy{order:-1}
  .product-copy h1{font-size:clamp(46px,13.5vw,66px);line-height:.88;letter-spacing:-.035em;margin:18px 0 22px}
  .product-copy h1 span{display:block;-webkit-text-stroke:1px rgba(255,255,255,.94);paint-order:stroke fill}
  .product-copy .sub{font-size:18px;line-height:1.55}
  .fact-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}
  .fact-pill{display:flex;min-height:54px;align-items:center;justify-content:center;text-align:center;padding:10px 12px;font-size:10px;line-height:1.35}
  .product-buy{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;width:100%}
  .product-buy .btn{min-height:54px;white-space:nowrap}
  .product-actions>.btn{min-height:54px}
  .detail-visual{min-height:430px!important;margin-top:0}
  .detail-flip{height:430px!important;width:min(300px,78vw)!important}

  .detail-section{padding:64px 0}
  .content-card{padding:21px 19px}
  .dose-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;table-layout:auto}
  .dose-table thead,.dose-table tbody,.dose-table tr{min-width:520px}
  .step{padding:19px 17px}

  /* Footer remains readable and all legal links are comfortably tappable. */
  .footer-grid{grid-template-columns:1fr!important;gap:28px}
  .footer-brand{grid-column:auto!important}
  .footer-links{gap:0}
  .footer-links a,.footer-links button{display:block;padding:10px 0;min-height:44px}
  .footer-bottom{display:grid!important;gap:12px}
  .legal-grid{grid-template-columns:1fr}

  .checkout-grid{grid-template-columns:1fr!important}
  .order-summary{order:-1;position:static}
  .checkout-panel{padding:20px 18px}
  .checkout-panel h1{font-size:clamp(38px,11.5vw,50px)}
  .pay-btn{min-height:56px}
  .checkout-consent{font-size:13px}

  .account-hero,.auth-layout{grid-template-columns:1fr!important}
  .account-hero{gap:24px}
  .account-level-card{width:100%}
  .auth-card{width:100%}
  .cookie-dialog{align-items:end;padding:12px}
  .cookie-dialog__panel{border-radius:22px;padding:22px;margin-bottom:env(safe-area-inset-bottom)}
}

@media (max-width:430px){
  .wrap{width:min(calc(100% - 28px),var(--max))}
  .brand-plate img{width:112px!important}
  .cart-nav{min-width:80px;padding-inline:11px}
  .display{font-size:clamp(46px,14.7vw,62px)}
  .fact-row{gap:8px}
  .fact-pill{font-size:9px;letter-spacing:.08em}
  .product-buy{grid-template-columns:1fr}
  .product-buy .detail-price{font-size:30px}
  .product-buy .btn{width:100%}
  .shop-card-row{grid-template-columns:1fr}
  .shop-card-row .add-cart-btn{width:100%;justify-self:stretch}
}

/* Smooth intermediate desktop/tablet states. */
@media (min-width:768px) and (max-width:1100px){
  .wrap{width:min(calc(100% - 48px),var(--max))}
  .hero-grid{grid-template-columns:1fr;gap:20px;padding-top:40px}
  .hero-stage{min-height:560px}
  .hero-copy .display{font-size:clamp(74px,11vw,118px)}
  .product-hero-grid{grid-template-columns:1fr;gap:30px}
  .product-copy{order:-1}
  .detail-visual{min-height:620px!important}
  .manifesto,.detail-grid{grid-template-columns:1fr;gap:40px}
  .sticky-label,.manifesto-sticky{position:static}
  .checkout-grid{grid-template-columns:1fr}
  .order-summary{position:static}
}

/* =========================================================
   INFINITY LABS V16 — mobile outline rendering + cart X fix
   ========================================================= */

/* Build the cart X from two centered lines instead of relying on the × glyph.
   This keeps it optically centered across iOS/Android/browser font rendering. */
.cart-close{
  position:relative;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:1!important;
  font-size:0!important;
}
.cart-close::before,
.cart-close::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:16px;
  height:1.6px;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  pointer-events:none;
}
.cart-close::before{transform:translate(-50%,-50%) rotate(45deg)}
.cart-close::after{transform:translate(-50%,-50%) rotate(-45deg)}

/* Keep the smaller remove-item X centered too. */
.cart-remove{
  position:relative;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  padding:0!important;
  line-height:1!important;
  font-size:0!important;
}
.cart-remove::before,
.cart-remove::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:1.4px;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  pointer-events:none;
}
.cart-remove::before{transform:translate(-50%,-50%) rotate(45deg)}
.cart-remove::after{transform:translate(-50%,-50%) rotate(-45deg)}

/* iOS/WebKit can render -webkit-text-stroke with stray internal seams on
   large black-filled outlined text at certain DPR/zoom values. On phone-sized
   screens, draw the white edge with an 8-direction text-shadow instead. This
   preserves the black-fill/white-outline look without lines through glyphs. */
@media (max-width:767px){
  .display,
  .outline-text,
  .product-copy h1 span,
  .science-cell .symbol,
  .standard-card .icon,
  .account-hero h1 .account-name{
    -webkit-text-stroke:0!important;
    paint-order:normal!important;
    color:#050608!important;
    text-shadow:
      -1px -1px 0 rgba(255,255,255,.97),
       0   -1px 0 rgba(255,255,255,.97),
       1px -1px 0 rgba(255,255,255,.97),
      -1px  0   0 rgba(255,255,255,.97),
       1px  0   0 rgba(255,255,255,.97),
      -1px  1px 0 rgba(255,255,255,.97),
       0    1px 0 rgba(255,255,255,.97),
       1px  1px 0 rgba(255,255,255,.97)!important;
    -webkit-font-smoothing:antialiased;
    text-rendering:geometricPrecision;
  }

  /* Accent-outline statistics use the same seam-free technique. */
  .big-stat{
    -webkit-text-stroke:0!important;
    paint-order:normal!important;
    color:#050608!important;
    text-shadow:
      -1px -1px 0 var(--product-accent),
       0   -1px 0 var(--product-accent),
       1px -1px 0 var(--product-accent),
      -1px  0   0 var(--product-accent),
       1px  0   0 var(--product-accent),
      -1px  1px 0 var(--product-accent),
       0    1px 0 var(--product-accent),
       1px  1px 0 var(--product-accent)!important;
  }
}

/* --- Secure Supabase order history --- */
.account-orders-panel{min-height:280px}
.account-order-list{display:grid;gap:14px;margin-top:20px}
.account-order{border:1px solid var(--line);border-radius:18px;padding:18px;background:rgba(255,255,255,.018)}
.account-order-head,.account-order-total{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.account-order-head>div:first-child{display:grid;gap:4px}
.account-order-head strong{font-size:15px;letter-spacing:.03em}
.account-order-head span,.account-order-total span{color:#8d959f;font-size:11px}
.account-order-status{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.account-order-status span{border:1px solid var(--line);border-radius:999px;padding:6px 9px;text-transform:uppercase;letter-spacing:.1em;font-size:8px;color:#c8ced5}
.account-order ul{list-style:none;margin:16px 0 14px;padding:0;border-top:1px solid var(--line)}
.account-order li{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}
.account-order li span{color:#adb4bd}
.account-order li b{white-space:nowrap}
.account-order-total{align-items:center;padding-top:2px}
.account-order-total strong{font-size:20px}
@media(max-width:640px){
  .account-order-head{display:grid;gap:10px}
  .account-order-status{justify-content:flex-start}
  .account-order{padding:15px}
}

/* =========================================================
   INFINITY LABS V18 — secure admin order control
   ========================================================= */
.admin-page{background:#050608}
.admin-main{padding:150px 0 90px;min-height:78vh}
.admin-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end;margin-bottom:34px}
.admin-hero h1{font-size:clamp(54px,8vw,112px);line-height:.86;letter-spacing:-.055em;text-transform:uppercase;margin:18px 0 18px;font-weight:950}
.admin-hero .lead{max-width:820px}
.admin-session-card{min-width:280px;border:1px solid var(--line);border-radius:24px;padding:18px 20px;display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.02)}
.admin-session-card small{display:block;color:#8f97a1;font-size:10px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:3px}.admin-session-card strong{font-size:12px}
.admin-status-dot{width:10px;height:10px;border-radius:50%;background:#7df0a7;box-shadow:0 0 20px rgba(125,240,167,.45);flex:0 0 auto}
.admin-state{min-height:300px;display:grid;place-items:center;align-content:center;gap:16px;text-align:center;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.015)}
.admin-state[hidden]{display:none!important}.admin-state h2{font-size:clamp(32px,5vw,58px);margin:12px 0}.admin-state p{color:var(--muted);max-width:650px}.admin-state .btn{margin-top:10px}
.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}.admin-stats article{border:1px solid var(--line);border-radius:22px;padding:20px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012))}.admin-stats span{display:block;color:#8f97a1;font-size:10px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:14px}.admin-stats strong{font-size:clamp(27px,3.4vw,44px);line-height:1}
.admin-toolbar{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(150px,.7fr) minmax(170px,.8fr) auto;gap:12px;align-items:end;margin:18px 0}.admin-toolbar label{display:grid;gap:7px}.admin-toolbar label>span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#8f97a1;font-weight:800}.admin-toolbar input,.admin-toolbar select,.admin-status-control select{width:100%;min-height:50px;border:1px solid var(--line);border-radius:14px;background:#0a0c10;color:#f6f7f8;padding:0 14px;outline:none}.admin-toolbar input:focus,.admin-toolbar select:focus,.admin-status-control select:focus{border-color:rgba(255,255,255,.55);box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.admin-results-meta{display:flex;justify-content:space-between;gap:18px;color:#7f8791;font-size:10px;text-transform:uppercase;letter-spacing:.1em;padding:8px 2px 16px;border-bottom:1px solid var(--line)}
.admin-orders{display:grid;gap:16px;margin-top:18px}.admin-order-card{border:1px solid var(--line);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));overflow:hidden}.admin-order-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px;border-bottom:1px solid var(--line)}.admin-order-card__head h2{font-size:clamp(24px,3vw,38px);margin:2px 0;letter-spacing:-.03em}.admin-order-label{display:block;color:#87909a;font-size:9px;text-transform:uppercase;letter-spacing:.13em}.admin-order-head-right{text-align:right}.admin-order-head-right>strong{display:block;font-size:26px;margin-bottom:9px}.admin-badges{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.admin-badge{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:0 10px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;border:1px solid var(--line)}.admin-badge.success{border-color:rgba(125,240,167,.35);color:#9bf7bb;background:rgba(125,240,167,.06)}.admin-badge.warning{border-color:rgba(255,203,96,.32);color:#ffd88a;background:rgba(255,203,96,.055)}.admin-badge.danger{border-color:rgba(255,111,111,.32);color:#ff9c9c;background:rgba(255,111,111,.055)}.admin-badge.neutral{color:#bfc5cd}
.admin-order-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:0;border-bottom:1px solid var(--line)}.admin-order-grid>section{padding:21px 24px;border-right:1px solid var(--line);min-width:0}.admin-order-grid>section:last-child{border-right:0}.admin-kicker{display:block;color:#858e98;font-size:8px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;margin-bottom:10px}.admin-order-grid strong,.admin-order-grid a{display:block;font-size:12px;overflow-wrap:anywhere}.admin-order-grid a{color:#c2c9d1;margin-top:5px}.admin-order-grid address{font-style:normal;display:grid;gap:2px;font-size:12px;color:#c7cdd4}.admin-text-btn{border:0;background:none;color:#fff;padding:8px 0 0;font-size:9px;text-transform:uppercase;letter-spacing:.12em;text-decoration:underline;text-underline-offset:4px}.admin-mini-dl{display:grid;gap:10px;margin:0}.admin-mini-dl div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px}.admin-mini-dl dt{color:#7f8791;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.admin-mini-dl dd{margin:0;font-size:11px;overflow-wrap:anywhere}
.admin-item-list{padding:0 24px}.admin-item-row{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px 0;border-bottom:1px solid var(--line)}.admin-item-row>div:first-child{display:grid;gap:3px}.admin-item-row strong{font-size:13px}.admin-item-row span{font-size:10px;color:#8f97a1}.admin-item-row>div:last-child{display:flex;align-items:center;gap:22px}.admin-item-row b{min-width:82px;text-align:right}.admin-empty-note{padding:18px 24px;color:#8f97a1}
.admin-financials{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid var(--line)}.admin-financials span{padding:16px 24px;border-right:1px solid var(--line)}.admin-financials span:last-child{border-right:0}.admin-financials small{display:block;color:#7f8791;font-size:8px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.admin-financials b{font-size:13px}.admin-financials .total b{font-size:18px}
.admin-order-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:20px 24px;position:relative}.admin-order-actions>div:first-child small{display:block;color:#7f8791;max-width:620px}.admin-status-control{display:grid;grid-template-columns:minmax(160px,210px) auto;gap:10px}.admin-status-control select{min-height:48px}.admin-inline-message{grid-column:1/-1;min-height:18px;font-size:11px}.admin-inline-message.success{color:#9bf7bb}.admin-inline-message.error{color:#ff9c9c}
.admin-empty{padding:56px 24px;text-align:center;border:1px solid var(--line);border-radius:24px}.admin-empty .eyebrow{justify-content:center}.admin-empty h2{font-size:clamp(30px,5vw,54px);margin:14px 0}.admin-empty p{color:var(--muted)}
.account-admin-link{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}.account-admin-link[hidden]{display:none!important}.account-admin-link span{display:grid;gap:2px}.account-admin-link small{color:#8f97a1}.account-admin-link a{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}
@media(max-width:980px){.admin-hero{grid-template-columns:1fr}.admin-session-card{min-width:0;width:100%}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar{grid-template-columns:1fr 1fr}.admin-search{grid-column:1/-1}.admin-toolbar .btn{width:100%}.admin-order-grid{grid-template-columns:1fr}.admin-order-grid>section{border-right:0;border-bottom:1px solid var(--line)}.admin-order-grid>section:last-child{border-bottom:0}.admin-financials{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-financials span{border-bottom:1px solid var(--line)}.admin-financials .total{grid-column:1/-1;border-bottom:0}.admin-order-actions{grid-template-columns:1fr}.admin-status-control{grid-template-columns:1fr auto}}
@media(max-width:640px){.admin-main{padding:122px 0 62px}.admin-hero h1{font-size:clamp(48px,14vw,64px)}.admin-stats{grid-template-columns:1fr 1fr;gap:10px}.admin-stats article{padding:16px}.admin-toolbar{grid-template-columns:1fr}.admin-search{grid-column:auto}.admin-results-meta{display:grid}.admin-order-card__head{display:grid;padding:18px}.admin-order-head-right{text-align:left}.admin-badges{justify-content:flex-start}.admin-order-grid>section,.admin-item-list,.admin-financials span,.admin-order-actions{padding-left:18px;padding-right:18px}.admin-item-list{padding-top:0;padding-bottom:0}.admin-item-row{align-items:flex-start}.admin-item-row>div:last-child{display:grid;gap:4px;text-align:right}.admin-status-control{grid-template-columns:1fr}.admin-status-control .btn{width:100%}.admin-financials{grid-template-columns:1fr 1fr}.admin-session-card strong{overflow-wrap:anywhere}}

/* V19 transactional email + shipment controls */
.admin-shipment-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:4px}
.admin-shipment-fields label{display:grid;gap:7px}.admin-shipment-fields label>span{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#858e98;font-weight:900}
.admin-shipment-fields input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:#0a0c10;color:#f6f7f8;padding:0 14px;outline:none}
.admin-shipment-fields input:focus{border-color:rgba(255,255,255,.55);box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.admin-inline-message.warning{color:#ffd88a}
@media(max-width:760px){.admin-shipment-fields{grid-template-columns:1fr}}


/* =========================================================
   V20 — customer order history
   ========================================================= */
.account-orders-panel{grid-column:span 2;min-height:300px}
.account-order-list{display:grid;gap:14px;margin-top:20px}
.account-order{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.018);overflow:hidden;transition:border-color .2s ease,background .2s ease}
.account-order[open]{border-color:rgba(255,255,255,.19);background:rgba(255,255,255,.025)}
.account-order>summary{list-style:none;cursor:pointer;padding:18px;user-select:none}
.account-order>summary::-webkit-details-marker{display:none}
.account-order>summary:focus-visible{outline:2px solid #fff;outline-offset:-4px;border-radius:18px}
.account-order-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.account-order-head>div:first-child{display:grid;gap:5px;min-width:0}
.account-order-head>div:first-child strong{font-size:15px;letter-spacing:.04em;overflow-wrap:anywhere}
.account-order-head>div:first-child span{font-size:11px;color:#8d959f}
.account-order-summary-right{display:flex;align-items:center;gap:14px;min-width:0}
.account-order-status{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.account-order-status span{border:1px solid var(--line);border-radius:999px;padding:6px 9px;text-transform:uppercase;letter-spacing:.1em;font-size:8px;line-height:1;color:#c8ced5;white-space:nowrap}
.account-order-status .is-success{border-color:rgba(174,255,211,.25);background:rgba(174,255,211,.07);color:#d9ffe9}
.account-order-status .is-progress{border-color:rgba(180,210,255,.25);background:rgba(180,210,255,.065);color:#dce9ff}
.account-order-status .is-warning{border-color:rgba(255,190,170,.25);background:rgba(255,190,170,.065);color:#ffd8cd}
.account-order-status .is-neutral{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.045);color:#c5cbd2}
.account-order-summary-total{font-size:17px;white-space:nowrap}
.account-order-chevron{width:9px;height:9px;border-right:1px solid #aeb5bd;border-bottom:1px solid #aeb5bd;transform:rotate(45deg);transition:transform .2s ease;margin:-4px 3px 0 2px;flex:0 0 auto}
.account-order[open] .account-order-chevron{transform:rotate(225deg);margin-top:4px}
.account-order-body{border-top:1px solid var(--line);padding:18px;display:grid;gap:18px}
.account-order-section{min-width:0}
.account-order-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.account-order-section-title>span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#d7dce2}
.account-order-section-title small{font-size:10px;color:#737c86}
.account-order-items{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.account-order-items li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}
.account-order-items li>div{display:grid;gap:3px;min-width:0}
.account-order-items li span{color:#e1e5e9;overflow-wrap:anywhere}
.account-order-items li small{font-size:10px;color:#7f8892}
.account-order-items li b{white-space:nowrap;font-size:12px}
.account-order-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.account-order-two-col>.account-order-section{border:1px solid var(--line);border-radius:14px;padding:14px;background:rgba(0,0,0,.16)}
.account-order address{font-style:normal;display:grid;gap:4px;font-size:11px;line-height:1.55;color:#aeb5bd}
.account-order-timeline{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.account-order-timeline li{display:flex;justify-content:space-between;gap:12px;font-size:10px;line-height:1.45}
.account-order-timeline span{color:#8d959f}
.account-order-timeline b{font-weight:500;color:#cbd1d7;text-align:right}
.account-order-tracking{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(180,210,255,.2);background:rgba(180,210,255,.045);border-radius:14px;padding:14px}
.account-order-tracking>div{display:grid;gap:3px}
.account-order-tracking span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#8e9dae}
.account-order-tracking strong{font-size:12px}
.account-order-tracking small{font-size:10px;color:#96a1ad}
.account-track-link{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#eef5ff;text-decoration:none;white-space:nowrap}
.account-track-link:hover{text-decoration:underline}
.account-order-breakdown{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:15px}
.account-order-breakdown>div{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:#8d959f}
.account-order-breakdown b{font-weight:600;color:#ccd2d8}
.account-order-breakdown .account-order-total{align-items:center;border-top:1px solid var(--line);margin-top:3px;padding-top:12px}
.account-order-breakdown .account-order-total strong{font-size:20px;color:#fff}

@media (max-width:900px){
  .account-orders-panel{grid-column:auto}
  .account-order-summary-right{display:grid;grid-template-columns:1fr auto;gap:9px 12px;justify-items:end}
  .account-order-status{grid-column:1/-1}
  .account-order-summary-total{font-size:16px}
}
@media (max-width:640px){
  .account-order>summary,.account-order-body{padding:14px}
  .account-order-head{align-items:flex-start;gap:12px}
  .account-order-summary-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
  .account-order-status{justify-content:flex-end;max-width:155px}
  .account-order-status span{white-space:normal;text-align:center;line-height:1.25}
  .account-order-summary-total{font-size:15px}
  .account-order-chevron{position:absolute;right:15px;margin-top:44px}
  .account-order>summary{position:relative;padding-right:36px}
  .account-order-two-col{grid-template-columns:1fr}
  .account-order-tracking{align-items:flex-start;flex-direction:column}
  .account-order-items li{align-items:flex-start}
  .account-order-timeline li{display:grid;gap:2px}
  .account-order-timeline b{text-align:left}
}
/* V20 order-history compatibility resets for the earlier V17 order-card rules. */
.account-order{padding:0!important}
.account-order .account-order-items,
.account-order .account-order-timeline{margin:0;padding:0;border-top:0}
.account-order .account-order-timeline li{padding:0;border-bottom:0}

/* =========================================================
   V21 — loyalty / XP
   ========================================================= */
.loyalty-summary{display:grid;gap:5px;margin-top:22px;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.15)}
.loyalty-summary>span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#87909a;font-weight:900}
.loyalty-summary>strong{font-size:28px;letter-spacing:-.03em}
.loyalty-summary>small{font-size:10px;line-height:1.5;color:#8d959f}
.loyalty-activity{display:grid;gap:0;margin-top:14px;border-top:1px solid var(--line)}
.loyalty-event{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
.loyalty-event>span{min-width:74px;text-align:center;border:1px solid var(--line);border-radius:999px;padding:7px 9px;font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap}
.loyalty-event>span.is-positive{border-color:rgba(174,255,211,.25);background:rgba(174,255,211,.06);color:#d9ffe9}
.loyalty-event>span.is-negative{border-color:rgba(255,190,170,.25);background:rgba(255,190,170,.06);color:#ffd8cd}
.loyalty-event>div{display:grid;gap:3px;min-width:0}.loyalty-event strong{font-size:11px}.loyalty-event small{font-size:9px;line-height:1.45;color:#7f8892;overflow-wrap:anywhere}
.loyalty-empty{display:block;padding:15px 0;color:#818a94;font-size:10px;line-height:1.55}
.admin-loyalty-pill{display:inline-flex!important;width:max-content;max-width:100%;margin-top:10px;padding:6px 9px;border:1px solid rgba(180,210,255,.2);border-radius:999px;background:rgba(180,210,255,.045);color:#dce9ff!important;font-size:8px!important;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
@media(max-width:640px){.loyalty-event{grid-template-columns:1fr;gap:7px}.loyalty-event>span{width:max-content;text-align:left}.loyalty-summary>strong{font-size:24px}}

/* =========================================================
   V22 — loyalty rewards vault + checkout reward
   ========================================================= */
.loyalty-tier-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.025)}
.loyalty-tier-strip span{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:#f2f4f6}.loyalty-tier-strip small{font-size:9px;color:#87909a;text-transform:uppercase;letter-spacing:.1em}
.loyalty-rewards{margin-top:18px}.loyalty-reward-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.loyalty-reward-heading>span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#d7dce2;font-weight:900}.loyalty-reward-heading small{font-size:9px;color:#737c86}
.loyalty-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.loyalty-reward-card{display:grid;align-content:start;gap:9px;min-height:190px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.16)}
.loyalty-reward-card.is-available{border-color:rgba(174,255,211,.22);background:linear-gradient(180deg,rgba(174,255,211,.05),rgba(255,255,255,.015))}.loyalty-reward-card.is-redeemed{opacity:.62}.loyalty-reward-card.is-reserved{border-color:rgba(180,210,255,.22);background:rgba(180,210,255,.04)}
.loyalty-reward-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.loyalty-reward-top span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#89929c;font-weight:900}.loyalty-reward-top b{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#c8ced5;text-align:right}
.loyalty-reward-card>strong{font-size:13px;line-height:1.35}.loyalty-reward-card>p{font-size:10px;line-height:1.55;color:#8c959f;margin:0}.loyalty-reward-threshold,.loyalty-reward-state{font-size:9px;color:#7e8791;line-height:1.45}
.loyalty-reward-code{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:auto}.loyalty-reward-code code{min-width:0;padding:9px 10px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#080a0d;font-size:10px;letter-spacing:.08em;overflow-wrap:anywhere}.loyalty-reward-code button{border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.05);color:#fff;padding:0 10px;font-size:9px;cursor:pointer}.loyalty-reward-code button:hover{background:rgba(255,255,255,.1)}
.loyalty-use-reward{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#e9fff2;text-decoration:none}.loyalty-use-reward:hover{text-decoration:underline}
.checkout-reward-box{display:grid;gap:8px;margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.018)}.checkout-reward-box>label{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#aeb5bd;font-weight:900}.checkout-reward-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.checkout-reward-row input{width:100%;min-width:0;min-height:46px;border:1px solid var(--line);border-radius:12px;background:#080a0d;color:#fff;padding:0 12px;outline:none;text-transform:uppercase;letter-spacing:.08em}.checkout-reward-row input:focus{border-color:rgba(255,255,255,.5);box-shadow:0 0 0 3px rgba(255,255,255,.05)}.checkout-reward-row .btn{min-height:46px;padding:0 16px}.checkout-reward-box small{font-size:9px;line-height:1.45;color:#7f8892}.checkout-reward-box small.is-success{color:#caffde}.checkout-reward-box small.is-error{color:#ffd0c6}[data-checkout-discount-row] b{color:#d9ffe9}
@media(max-width:700px){.loyalty-reward-grid{grid-template-columns:1fr}.checkout-reward-row{grid-template-columns:1fr}.checkout-reward-row .btn{width:100%}}

/* V23 — Refunds, returns & cancellations */
.cancel-order-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:max-content;max-width:100%;padding:10px 14px!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:999px!important;text-decoration:none!important;text-transform:uppercase;letter-spacing:.08em;font-size:10px!important;background:rgba(255,255,255,.035)}
.cancel-order-link:hover{background:#fff!important;color:#050608!important}
.admin-financials{grid-template-columns:repeat(6,minmax(0,1fr))}
.admin-hold-pill{display:inline-flex;margin-top:10px;padding:6px 9px;border-radius:999px;border:1px solid rgba(255,203,96,.34);color:#ffd88a;background:rgba(255,203,96,.055);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.admin-ops-panel{padding:22px 24px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.008)}
.admin-ops-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.admin-ops-head h3{margin:2px 0 0;font-size:22px;letter-spacing:-.02em}
.admin-service-list,.admin-refund-list{display:grid;gap:10px}
.admin-service-request{border:1px solid var(--line);border-radius:18px;padding:16px;background:#080a0d}
.admin-service-request__head,.admin-refund-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.admin-service-request__head>div,.admin-refund-row>div{display:grid;gap:3px;min-width:0}
.admin-service-request__head strong,.admin-refund-row strong{font-size:13px}
.admin-service-request__head span,.admin-refund-row span,.admin-refund-row small{font-size:10px;color:#8f97a1;overflow-wrap:anywhere}
.admin-service-copy{display:grid;gap:5px;margin:14px 0;color:#b7bdc5;font-size:11px;line-height:1.5}
.admin-service-control{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(260px,1.5fr) auto;gap:10px;align-items:end;margin-top:13px}
.admin-service-control select,.admin-service-control textarea,.admin-refund-fields input,.admin-refund-fields select{width:100%;border:1px solid var(--line);border-radius:13px;background:#0a0c10;color:#f6f7f8;padding:11px 13px;outline:none}
.admin-service-control select,.admin-refund-fields input,.admin-refund-fields select{min-height:46px}
.admin-service-control textarea{resize:vertical;min-height:64px;line-height:1.4}
.admin-service-resolution{margin-top:12px;color:#9bf7bb;font-size:11px}
.admin-refund-list{margin-bottom:14px}.admin-refund-row{padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#080a0d;align-items:center}
.admin-refund-row .is-error{color:#ff9c9c!important}
.admin-refund-control{border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.008))}
.admin-refund-balance{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.admin-refund-balance span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8f97a1}.admin-refund-balance strong{font-size:22px}
.admin-refund-fields{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(210px,.8fr) minmax(260px,1.3fr);gap:10px;margin-bottom:12px}.admin-refund-fields label{display:grid;gap:7px}.admin-refund-fields label>span{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:#858e98;font-weight:900}
.admin-danger-note{margin:11px 0 0;color:#9aa1aa;font-size:10px;line-height:1.5}
.returns-result{display:none;margin-top:16px;padding:16px 18px;border:1px solid rgba(125,240,167,.28);border-radius:16px;background:rgba(125,240,167,.05);color:#c9f7d9}.returns-result.is-visible{display:block}.returns-result strong{display:block;font-size:15px;margin-bottom:5px}.returns-result span{font-size:12px;line-height:1.55}
.return-route-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.return-route-meta{display:grid;gap:10px;margin:18px 0}.return-route-meta div{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.018)}.return-route-meta strong{display:block;font-size:12px;margin-bottom:4px}.return-route-meta span{color:var(--muted);font-size:11px;line-height:1.5}
.account-order-service{margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.015)}.account-order-service h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.account-order-service-list{display:grid;gap:8px}.account-order-service-row{display:flex;justify-content:space-between;gap:16px;font-size:11px}.account-order-service-row span{color:#9ca3ad}.account-order-refund{display:flex;justify-content:space-between;gap:16px;padding-top:8px;border-top:1px solid var(--line);font-size:11px}.account-order-refund strong{white-space:nowrap}.account-order-service-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.account-order-service-actions a{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}
@media(max-width:980px){.admin-financials{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-service-control,.admin-refund-fields{grid-template-columns:1fr 1fr}.admin-service-control textarea,.admin-refund-reason{grid-column:1/-1}.admin-service-control .btn{width:100%}}
@media(max-width:640px){.admin-ops-panel{padding:18px}.admin-ops-head{display:grid}.admin-service-request__head,.admin-refund-row{display:grid}.admin-service-control,.admin-refund-fields{grid-template-columns:1fr}.admin-service-control textarea,.admin-refund-reason{grid-column:auto}.admin-refund-control .btn{width:100%}.cancel-order-link{width:100%!important}.account-order-service-row,.account-order-refund{display:grid;gap:4px}}
.field textarea{width:100%;min-height:112px;border:1px solid var(--line);border-radius:12px;background:#0c0e12;color:#fff;padding:13px 14px;font:inherit;outline:none;resize:vertical;line-height:1.5}.field textarea:focus{border-color:#8b939e}

/* =========================================================
   V24 — Inventory & stock control
   ========================================================= */
.stock-pill{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.11em;font-weight:900;color:#c7cdd4;background:rgba(255,255,255,.025)}
.stock-pill.in_stock{border-color:rgba(125,240,167,.26);color:#aef6c5;background:rgba(125,240,167,.055)}
.stock-pill.low_stock{border-color:rgba(255,203,96,.34);color:#ffd88a;background:rgba(255,203,96,.055)}
.stock-pill.sold_out,.stock-pill.unavailable{border-color:rgba(255,130,130,.26);color:#ffb1b1;background:rgba(255,110,110,.045)}
.shop-card-stock,.product-buy-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.product-buy-meta{align-items:flex-start;flex-direction:column;gap:7px}.add-cart-btn:disabled,.accent-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}
.cart-stock-warning{display:block!important;color:#ffcb83!important;font-size:9px!important;margin-top:3px}.cart-stock-banner,.checkout-stock-alert{margin:12px 0 0;padding:11px 13px;border:1px solid rgba(255,177,120,.25);border-radius:12px;background:rgba(255,177,120,.05);color:#ffd1a7;font-size:10px;line-height:1.5}.qty-control button:disabled{opacity:.28;cursor:not-allowed}.cart-checkout.disabled{pointer-events:none;opacity:.45}

.admin-inventory-panel{margin:0 0 22px;border:1px solid var(--line);border-radius:26px;padding:24px;background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.009))}
.admin-inventory-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}.admin-inventory-head h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.04em;margin:3px 0 6px}.admin-inventory-head p{margin:0;color:#8e97a1;font-size:11px;max-width:680px;line-height:1.55}
.admin-inventory-summary{display:flex;align-items:baseline;justify-content:flex-end;gap:9px;flex-wrap:wrap;color:#8e97a1;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.admin-inventory-summary strong{font-size:26px;color:#fff;letter-spacing:-.03em}.admin-inventory-summary b{padding:5px 8px;border:1px solid rgba(255,203,96,.25);border-radius:999px;color:#ffd88a;font-size:8px}
.admin-inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-inventory-card{border:1px solid var(--line);border-radius:19px;background:#080a0d;padding:17px}.admin-inventory-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-inventory-card__head>div{display:grid;gap:4px}.admin-inventory-card__head>div span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#707984}.admin-inventory-card__head strong{font-size:14px}
.admin-inventory-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:14px 0}.admin-inventory-metrics>div{padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.012)}.admin-inventory-metrics span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.12em;color:#78818c}.admin-inventory-metrics strong{display:block;margin-top:4px;font-size:21px}
.admin-inventory-adjust{display:grid;grid-template-columns:minmax(125px,.55fr) minmax(220px,1fr) auto;gap:8px;align-items:end}.admin-inventory-adjust label,.admin-inventory-threshold label,.admin-restock-control label,.admin-allocation-row label{display:grid;gap:6px}.admin-inventory-adjust label>span,.admin-inventory-threshold label>span,.admin-restock-control label>span,.admin-allocation-row label>span{font-size:7px;text-transform:uppercase;letter-spacing:.12em;color:#818a95;font-weight:900}.admin-inventory-adjust input,.admin-inventory-threshold input,.admin-restock-control input,.admin-allocation-row input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:11px;background:#0a0c10;color:#fff;padding:0 11px;outline:none}.admin-inventory-adjust input:focus,.admin-inventory-threshold input:focus,.admin-restock-control input:focus,.admin-allocation-row input:focus{border-color:rgba(255,255,255,.45)}.admin-inventory-adjust .btn{min-height:42px;padding:0 13px;white-space:nowrap}
.admin-inventory-threshold{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}.admin-inventory-threshold label{max-width:170px}.admin-inventory-threshold .admin-text-btn{padding-bottom:9px}
.admin-inventory-audit{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.admin-inventory-audit>summary{cursor:pointer;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#b8bec6}.admin-inventory-movement-list{display:grid;gap:7px;margin-top:12px}.admin-inventory-movement{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(0,0,0,.18)}.admin-inventory-movement>div{display:grid;gap:2px;min-width:0}.admin-inventory-movement>div:last-child{text-align:right}.admin-inventory-movement strong,.admin-inventory-movement b{font-size:10px}.admin-inventory-movement span,.admin-inventory-movement small{font-size:8px;color:#7f8892;overflow-wrap:anywhere}
.admin-allocation-list{display:grid;gap:8px}.admin-allocation-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.4fr);gap:14px;align-items:center;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:#080a0d}.admin-allocation-row>div{display:grid;gap:3px}.admin-allocation-row strong{font-size:11px}.admin-allocation-row>div span{font-size:9px;color:#838c96}.admin-allocation-row label{justify-self:stretch}.admin-allocation-row input{min-height:38px}
.admin-restock-control{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end;margin-top:12px;padding:14px;border:1px solid rgba(125,240,167,.16);border-radius:14px;background:rgba(125,240,167,.025)}.admin-restock-control>p{grid-column:1/-1;margin:0;color:#8a939d;font-size:9px;line-height:1.5}.admin-restock-control .admin-inline-message{grid-column:1/-1}
@media(max-width:980px){.admin-inventory-grid{grid-template-columns:1fr}.admin-inventory-adjust{grid-template-columns:1fr 1fr}.admin-inventory-adjust .wide{grid-column:1/-1}.admin-inventory-adjust .btn{width:100%}.admin-restock-control{grid-template-columns:1fr}}
@media(max-width:640px){.admin-inventory-panel{padding:18px}.admin-inventory-head{display:grid}.admin-inventory-summary{justify-content:flex-start}.admin-inventory-adjust{grid-template-columns:1fr}.admin-inventory-adjust .wide{grid-column:auto}.admin-inventory-metrics{grid-template-columns:repeat(3,1fr)}.admin-inventory-movement{display:grid}.admin-inventory-movement>div:last-child{text-align:left}.admin-allocation-row{grid-template-columns:1fr}.admin-restock-control .btn{width:100%}.shop-card-stock{align-items:flex-start;flex-direction:column}}

/* =========================================================
   V24.2 — PHONE-ONLY CLEANUP / NAVIGATION / ACCOUNT LAYOUT
   Desktop/tablet >= 768px intentionally unchanged.
   ========================================================= */
@media (max-width:767px){
  /* General phone rhythm and collision protection. */
  html{scroll-padding-top:82px}
  body{font-size:15px;line-height:1.55}
  main{min-width:0}
  p,li,dd,address,small,strong,span,a{overflow-wrap:anywhere}
  .wrap{width:calc(100% - 28px);max-width:100%}
  .section{padding:62px 0}
  .section.tight{padding:50px 0}
  .lead{font-size:17px;line-height:1.58}
  .btn{min-height:48px;padding-inline:17px;font-size:11px;letter-spacing:.085em}

  /* Header: compact, stable and thumb-friendly. */
  .site-header{padding:9px 0;padding-top:max(9px,env(safe-area-inset-top));background:rgba(5,6,8,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}
  .site-header.scrolled{padding:8px 0;padding-top:max(8px,env(safe-area-inset-top))}
  .nav{gap:8px;min-height:48px}
  .brand-plate img{width:104px!important;max-width:30vw!important;height:auto!important}
  .cart-nav{height:42px;min-width:74px;padding:0 10px;font-size:10px;gap:7px}
  .menu-btn{width:42px;height:42px;flex:0 0 42px}
  .mobile-drawer{padding:calc(84px + env(safe-area-inset-top)) 20px calc(26px + env(safe-area-inset-bottom));background:#050608}
  .mobile-drawer nav{font-size:clamp(28px,8.4vw,38px);line-height:1.05}
  .mobile-drawer nav a{padding:15px 2px;min-height:58px;display:flex;align-items:center}

  /* Home / generic page typography: readable without crowding. */
  .hero{padding:108px 0 52px}
  .hero-grid{gap:12px}
  .display{font-size:clamp(46px,14.2vw,64px);line-height:.88;letter-spacing:-.028em}
  .hero-copy .lead{font-size:17px;margin:22px 0 24px}
  .hero-stage{min-height:360px;margin-top:14px}
  .hero-card{width:min(270px,74vw)}
  .hero-orbit{width:min(360px,94vw);height:min(360px,94vw)}
  .products-intro{margin-bottom:26px}
  .section-title{font-size:clamp(34px,10.5vw,48px);line-height:.98}
  .product-card__visual{height:clamp(300px,90vw,370px)!important}
  .product-card__body{padding:20px 18px 22px}
  .product-card h3{font-size:clamp(29px,8.8vw,38px)}
  .product-card p{font-size:14px;line-height:1.58}

  /* Product pages: one clear vertical path and large tap targets. */
  .product-hero{padding:108px 0 48px}
  .product-copy h1{font-size:clamp(42px,12.5vw,58px);line-height:.9;margin:14px 0 18px}
  .product-copy .sub{font-size:17px}
  .fact-row{grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}
  .fact-pill{min-height:50px;padding:9px;font-size:9px}
  .product-buy{grid-template-columns:1fr!important;gap:9px}
  .product-buy .detail-price{font-size:28px}
  .product-buy .btn,.product-actions>.btn{width:100%;min-height:50px}
  .detail-visual{min-height:410px!important}
  .detail-flip{height:410px!important;width:min(290px,82vw)!important}
  .content-card{padding:19px 17px}
  .step{grid-template-columns:38px minmax(0,1fr);padding:18px 15px}

  /* Legal/contact pages: prevent long addresses/emails from escaping cards. */
  .page-hero{padding:112px 0 52px;min-height:auto}
  .page-hero .display.small{font-size:clamp(39px,11.2vw,54px);line-height:.94}
  .legal-copy p,.legal-copy li{line-height:1.65}
  .legal-card,.contact-card{min-width:0;padding:20px 18px}
  .contact-link{max-width:100%;font-size:clamp(21px,7.2vw,31px);word-break:break-word}

  /* Checkout + cart: no cramped two-column content on phones. */
  .checkout-page{padding:100px 0 58px}
  .checkout-panel{padding:18px 16px;border-radius:18px}
  .checkout-panel h1{font-size:clamp(35px,10.8vw,46px)}
  .form-grid{grid-template-columns:1fr!important}
  .field.full{grid-column:auto!important}
  .field input,.field select,.field textarea{font-size:16px}
  .checkout-line{grid-template-columns:48px minmax(0,1fr) auto;gap:9px}
  .checkout-line img{width:48px;height:64px}
  .checkout-reward-row{grid-template-columns:1fr!important}
  .checkout-reward-row .btn{width:100%}
  .cart-line{grid-template-columns:68px minmax(0,1fr) 28px;gap:10px}
  .cart-line-img{width:68px;height:94px!important}
  .cart-line-copy strong{font-size:12px}
  .cart-foot .btn,.cart-checkout{width:100%}

  /* ========================
     ACCOUNT — phone redesign
     ======================== */
  .account-main{padding:96px 0 58px}
  .account-content{min-width:0}
  .account-hero{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;padding:10px 0 26px!important;align-items:start}
  .account-hero>div:first-child{min-width:0;overflow:visible}
  .account-hero .eyebrow{margin-bottom:8px;font-size:9px;letter-spacing:.16em}
  .account-hero h1{font-size:clamp(43px,13.6vw,58px)!important;line-height:1!important;letter-spacing:-.045em!important;margin:8px 0 15px!important;max-width:100%}
  .account-hero h1 .account-welcome{line-height:.95!important;padding:0!important}
  .account-hero h1 .account-name-row{margin-top:9px!important;padding:4px 0 5px!important;line-height:1.13!important;column-gap:.11em!important;min-height:1.18em;overflow:visible!important;align-items:baseline}
  .account-hero h1 .account-name,.account-hero h1 .account-name-dot{line-height:1.13!important;padding:0!important}
  .account-hero .lead{font-size:16px!important;line-height:1.58!important;margin:0!important;max-width:100%}

  .account-level-card{width:100%!important;min-height:0!important;padding:18px!important;border-radius:20px!important;grid-template-rows:auto auto auto;gap:18px;box-shadow:none}
  .level-top{font-size:9px;letter-spacing:.14em}
  .level-ring{width:118px;height:118px;margin:2px auto 0}
  .level-ring span{font-size:8px}
  .level-ring b{font-size:50px}
  .level-progress{gap:8px}
  .level-progress>div:first-child{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;font-size:9px;line-height:1.35;letter-spacing:.08em}
  .level-progress>div:first-child span:last-child{text-align:right}
  .level-progress small{display:block;font-size:10px;line-height:1.45}

  .account-grid{grid-template-columns:1fr!important;gap:14px!important}
  .account-panel{min-width:0!important;min-height:0!important;padding:18px 16px!important;border-radius:18px!important}
  .account-panel .eyebrow{font-size:9px;letter-spacing:.15em}
  .account-panel h2{font-size:clamp(26px,8vw,34px)!important;line-height:1.02!important;margin:15px 0 10px!important}
  .account-panel p{font-size:14px;line-height:1.6;margin:0}
  .account-panel .btn{width:100%}
  .account-details{margin-top:14px}
  .account-details>div{grid-template-columns:1fr!important;gap:4px!important;padding:12px 0!important}
  .account-details dt{font-size:8px}
  .account-details dd{font-size:13px;line-height:1.45;min-width:0}
  .account-admin-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px 12px}
  .account-admin-link a{text-align:right}

  /* Order summaries: stack cleanly instead of forcing status/total into one row. */
  .account-orders-panel{grid-column:auto!important;min-height:0!important}
  .account-order-list{gap:10px;margin-top:14px}
  .account-order{border-radius:15px!important}
  .account-order>summary{padding:13px 12px!important;padding-right:12px!important}
  .account-order-head{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;align-items:start!important}
  .account-order-head>div:first-child{gap:2px;min-width:0}
  .account-order-head>div:first-child strong{font-size:13px!important;line-height:1.35;letter-spacing:.025em}
  .account-order-head>div:first-child span{font-size:9px!important}
  .account-order-summary-right{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;gap:8px!important;width:100%;justify-items:stretch!important}
  .account-order-status{grid-column:1/2!important;display:flex!important;justify-content:flex-start!important;max-width:none!important;min-width:0;gap:5px!important}
  .account-order-status span{font-size:7px!important;padding:5px 7px!important;white-space:normal!important;text-align:left!important;line-height:1.2!important}
  .account-order-summary-total{grid-column:2/3;font-size:14px!important;text-align:right;white-space:nowrap}
  .account-order-chevron{grid-column:3/4;position:static!important;right:auto!important;margin:0 2px 3px 0!important;justify-self:end}
  .account-order[open] .account-order-chevron{margin:4px 2px 0 0!important}
  .account-order-body{padding:13px 12px!important;gap:14px!important}
  .account-order-section-title{align-items:flex-start;gap:8px;margin-bottom:8px}
  .account-order-section-title>span,.account-order-section-title small{font-size:9px}
  .account-order-items li{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:8px!important;padding:10px 0!important;font-size:11px!important}
  .account-order-items li b{font-size:11px!important;text-align:right}
  .account-order-two-col{grid-template-columns:1fr!important;gap:9px!important}
  .account-order-two-col>.account-order-section{padding:12px!important;border-radius:12px!important}
  .account-order-timeline li{display:grid!important;grid-template-columns:1fr!important;gap:1px!important;font-size:9px!important}
  .account-order-timeline b{text-align:left!important}
  .account-order-tracking{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:12px!important;border-radius:12px!important}
  .account-track-link{white-space:normal!important;min-height:42px;display:flex;align-items:center}
  .account-order-breakdown{gap:7px;padding-top:12px}
  .account-order-breakdown>div{font-size:10px;gap:10px}
  .account-order-breakdown .account-order-total strong{font-size:18px}
  .account-order-service{padding:12px!important;border-radius:12px!important}
  .account-order-service-row,.account-order-refund{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;font-size:10px!important}
  .account-order-service-row b,.account-order-refund strong{white-space:normal!important;text-align:left}
  .account-order-service-actions a{display:block;min-height:42px;padding-top:9px;line-height:1.35}

  /* Loyalty vault/activity: one readable column with wrapping codes. */
  .loyalty-summary{margin-top:15px;padding:13px;border-radius:13px}
  .loyalty-summary>strong{font-size:23px}
  .loyalty-tier-strip{display:grid;grid-template-columns:1fr auto;align-items:center;padding:11px 12px}
  .loyalty-reward-heading{display:grid!important;grid-template-columns:1fr!important;gap:2px!important;align-items:start!important}
  .loyalty-reward-grid{grid-template-columns:1fr!important;gap:8px}
  .loyalty-reward-card{min-height:0!important;padding:12px!important;border-radius:13px!important}
  .loyalty-reward-top{gap:8px}
  .loyalty-reward-top b{max-width:55%;overflow-wrap:anywhere}
  .loyalty-reward-code{grid-template-columns:minmax(0,1fr) auto!important}
  .loyalty-reward-code code{font-size:9px;word-break:break-all}
  .loyalty-event{grid-template-columns:1fr!important;gap:6px!important;padding:11px 0!important}
  .loyalty-event>span{width:max-content;max-width:100%;min-width:0;text-align:left}

  /* Admin stays usable on a phone without horizontal scrolling. */
  .admin-main{padding:100px 0 58px!important}
  .admin-hero{gap:16px!important;margin-bottom:22px!important}
  .admin-hero h1{font-size:clamp(42px,12vw,56px)!important;line-height:.92!important;margin:12px 0!important}
  .admin-session-card{padding:14px!important;border-radius:17px!important}
  .admin-stats{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .admin-stats article{padding:13px!important;border-radius:15px!important}
  .admin-stats span{font-size:8px;margin-bottom:8px}
  .admin-stats strong{font-size:25px}
  .admin-toolbar{grid-template-columns:1fr!important;gap:9px!important}
  .admin-search{grid-column:auto!important}
  .admin-toolbar .btn{width:100%}
  .admin-results-meta{display:grid!important;gap:5px!important}
  .admin-order-card{border-radius:18px!important}
  .admin-order-card__head{display:grid!important;gap:11px!important;padding:15px!important}
  .admin-order-head-right{text-align:left!important}
  .admin-badges{justify-content:flex-start!important}
  .admin-order-grid{grid-template-columns:1fr!important}
  .admin-order-grid>section{padding:15px!important;border-right:0!important;border-bottom:1px solid var(--line)}
  .admin-item-list{padding:0 15px!important}
  .admin-financials{grid-template-columns:1fr 1fr!important}
  .admin-financials span{padding:12px 14px!important}
  .admin-order-actions{grid-template-columns:1fr!important;padding:15px!important}
  .admin-status-control{grid-template-columns:1fr!important}
  .admin-status-control .btn{width:100%}
  .admin-ops-panel,.admin-inventory-panel{padding:15px!important;border-radius:18px!important}
  .admin-inventory-head{display:grid!important;gap:9px!important}
  .admin-inventory-summary{justify-content:flex-start!important}
  .admin-inventory-grid{grid-template-columns:1fr!important}
  .admin-inventory-card{padding:14px!important;border-radius:15px!important}
  .admin-inventory-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}
  .admin-inventory-metrics>div{padding:9px 7px!important}
  .admin-inventory-metrics strong{font-size:18px!important}
  .admin-inventory-adjust,.admin-restock-control,.admin-service-control,.admin-refund-fields{grid-template-columns:1fr!important}
  .admin-allocation-row{grid-template-columns:1fr!important}

  /* Footer: each destination is a clear tap row. */
  .footer{padding:42px 0 calc(22px + env(safe-area-inset-bottom))}
  .footer-grid{gap:24px!important}
  .footer-links a,.footer-links button{min-height:46px;display:flex;align-items:center;padding:9px 0}
  .footer-bottom{font-size:10px;line-height:1.5}
}

@media (max-width:430px){
  .wrap{width:calc(100% - 22px)}
  .brand-plate img{width:96px!important}
  .account-hero h1{font-size:clamp(39px,13vw,52px)!important}
  .account-level-card{padding:16px!important}
  .level-progress>div:first-child{grid-template-columns:1fr!important;gap:3px!important}
  .level-progress>div:first-child span:last-child{text-align:left}
  .account-order-summary-right{grid-template-columns:minmax(0,1fr) auto!important}
  .account-order-status{grid-column:1/-1!important}
  .account-order-summary-total{grid-column:1/2!important;text-align:left}
  .account-order-chevron{grid-column:2/3!important}
  .admin-stats{grid-template-columns:1fr!important}
  .admin-financials{grid-template-columns:1fr!important}
  .fact-row{grid-template-columns:1fr!important}
}


/* =========================================================
   INFINITY LABS V24.4 — smooth product crossfade, hero gutter,
   performance + accessibility refinement
   ========================================================= */

/* The launch hero keeps a deliberate breathing gutter on laptop/desktop.
   The earlier spacing patch only covered intermediate widths; this one
   also applies to full desktop without changing the mobile composition. */
@media (min-width:768px){
  .hero-copy{padding-left:clamp(28px,2.6vw,56px)}
}

/* These are 2D front/back renders, so crossfade them instead of pretending
   they are a rotating 3D object. Opacity stays on the compositor and avoids
   the blank frame that could appear while a back image was decoding. */
.product-card__visual{perspective:none}
.flip-inner{transform:none!important;transform-style:flat!important;transition:none!important}
.flip-face{backface-visibility:visible!important;transform:none!important;opacity:0;transition:opacity .24s ease;will-change:opacity}
.flip-face.front{opacity:1}
.product-card.back-ready:hover .flip-face.front,.product-card.back-ready.is-flipped .flip-face.front,
.detail-visual.back-ready:hover .flip-face.front,.detail-visual.back-ready.is-flipped .flip-face.front{opacity:0}
.product-card.back-ready:hover .flip-face.back,.product-card.back-ready.is-flipped .flip-face.back,
.detail-visual.back-ready:hover .flip-face.back,.detail-visual.back-ready.is-flipped .flip-face.back{opacity:1}
.detail-visual{perspective:none}
.detail-flip{transform:none!important;transform-style:flat!important;transition:none!important;will-change:auto}

/* Reduce expensive full-screen compositing while keeping the visual language. */
.cursor-glow{will-change:transform;left:0!important;top:0!important;filter:blur(3px);opacity:.62}
.site-canvas{opacity:.42}
.site-header.scrolled{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.product-card{contain:layout paint}

/* Let the browser defer work for sections well below the viewport. */
@supports (content-visibility:auto){
  main>.section:not(.hero),.footer{content-visibility:auto;contain-intrinsic-size:auto 900px}
}

/* Small contrast lift for secondary UI copy; visually nearly identical but
   avoids borderline contrast readings in automated accessibility audits. */
.muted,.footer-brand p,.legal-copy p,.legal-copy li{color:#b6bdc6}

/* Motion preference applies to the new crossfade as well. */
@media (prefers-reduced-motion:reduce){
  .flip-face{transition:none!important}
  .floating-chip,.scroll-cue i{animation:none!important}
}


/* V24.4.1 audit refinements */
.site-header.scrolled{background:rgba(5,6,8,.94);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.science-cell small,.footer-bottom{color:#8e96a0}
.admin-inventory-card__head>div span,.admin-inventory-metrics span,
.admin-inventory-adjust label>span,.admin-inventory-threshold label>span,
.admin-restock-control label>span,.admin-allocation-row label>span{color:#929aa5}

/* =========================================================
   INFINITY LABS V24.5 — product aura + molecular backdrop
   ========================================================= */

/* Homepage product stage: keep floating chips inside the available column,
   reduce the bottle slightly, and add a restrained cyan aura/formula layer. */
.hero-stage{
  min-width:0;
  overflow:visible;
  isolation:isolate;
  --product-accent:#54dfe8;
}
.hero-stage::before{
  content:"";
  position:absolute;
  z-index:-2;
  width:min(500px,82%);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,
    color-mix(in srgb,var(--product-accent) 24%,transparent) 0%,
    color-mix(in srgb,var(--product-accent) 11%,transparent) 38%,
    transparent 72%);
  filter:blur(22px);
  opacity:.9;
  pointer-events:none;
}
.hero-stage::after{
  content:attr(data-formula);
  position:absolute;
  z-index:-1;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%) rotate(-7deg);
  width:100%;
  text-align:center;
  white-space:nowrap;
  font-size:clamp(42px,5.4vw,82px);
  line-height:1;
  font-weight:950;
  letter-spacing:.035em;
  color:rgba(4,7,10,.86);
  -webkit-text-stroke:1px color-mix(in srgb,var(--product-accent) 58%,transparent);
  text-shadow:
    0 0 18px color-mix(in srgb,var(--product-accent) 24%,transparent),
    0 0 44px color-mix(in srgb,var(--product-accent) 12%,transparent);
  opacity:.56;
  pointer-events:none;
  user-select:none;
}
.hero-card{
  width:min(382px,72vw);
  z-index:2;
  background:transparent;
  box-shadow:
    0 50px 130px rgba(0,0,0,.62),
    0 0 48px color-mix(in srgb,var(--product-accent) 13%,transparent);
}
.hero-card img{
  object-fit:contain;
  filter:drop-shadow(0 20px 24px rgba(0,0,0,.38)) drop-shadow(0 0 18px color-mix(in srgb,var(--product-accent) 16%,transparent));
}
.floating-chip{
  max-width:168px;
  padding:11px 13px;
  font-size:clamp(9px,.72vw,11px);
  line-height:1.25;
  letter-spacing:.12em;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  z-index:4;
  box-shadow:0 14px 34px rgba(0,0,0,.34),0 0 18px color-mix(in srgb,var(--product-accent) 8%,transparent);
}
.chip-a{left:clamp(4px,1.3vw,22px);top:27%}
.chip-b{right:clamp(4px,1.3vw,22px);bottom:24%}

/* Launch collection cards: product-specific glow and a low-contrast formula
   live behind the transparent product renders. */
.product-card__visual{
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--product-accent) 10%,transparent),transparent 47%),
    #08090b;
}
.product-card__visual::before{
  content:"";
  position:absolute;
  z-index:0;
  left:50%;
  top:51%;
  transform:translate(-50%,-50%);
  width:62%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,
    color-mix(in srgb,var(--product-accent) 24%,transparent) 0%,
    color-mix(in srgb,var(--product-accent) 10%,transparent) 40%,
    transparent 72%);
  filter:blur(18px);
  opacity:.78;
  pointer-events:none;
}
.product-card__visual::after{
  content:attr(data-formula);
  position:absolute;
  z-index:1;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%) rotate(-6deg);
  width:94%;
  text-align:center;
  white-space:nowrap;
  font-size:clamp(25px,3.6vw,54px);
  font-weight:950;
  letter-spacing:.025em;
  color:rgba(4,6,9,.9);
  -webkit-text-stroke:1px color-mix(in srgb,var(--product-accent) 52%,transparent);
  text-shadow:0 0 16px color-mix(in srgb,var(--product-accent) 22%,transparent),0 0 34px color-mix(in srgb,var(--product-accent) 10%,transparent);
  opacity:.5;
  pointer-events:none;
  user-select:none;
}
.product-card__visual .flip-inner{z-index:2}
.product-card__visual .flip-face img{
  width:88%;
  height:94%;
  margin:3% auto 0;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 18px 20px rgba(0,0,0,.38)) drop-shadow(0 0 15px color-mix(in srgb,var(--product-accent) 12%,transparent));
}
.product-card__visual .flip-hint{z-index:5}

/* Individual product pages use the same molecule/aura language without
   competing with the information column. */
.detail-visual{
  isolation:isolate;
  overflow:visible;
}
.detail-visual::before{
  content:"";
  position:absolute;
  z-index:0;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  width:min(520px,88%);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,
    color-mix(in srgb,var(--product-accent) 24%,transparent),
    color-mix(in srgb,var(--product-accent) 9%,transparent) 42%,
    transparent 72%);
  filter:blur(22px);
  opacity:.84;
  pointer-events:none;
}
.detail-visual::after{
  content:attr(data-formula);
  position:absolute;
  z-index:1;
  left:50%;
  top:49%;
  transform:translate(-50%,-50%) rotate(-7deg);
  width:112%;
  text-align:center;
  white-space:nowrap;
  font-size:clamp(38px,5vw,72px);
  font-weight:950;
  letter-spacing:.025em;
  color:rgba(4,6,9,.91);
  -webkit-text-stroke:1px color-mix(in srgb,var(--product-accent) 58%,transparent);
  text-shadow:0 0 18px color-mix(in srgb,var(--product-accent) 23%,transparent),0 0 42px color-mix(in srgb,var(--product-accent) 11%,transparent);
  opacity:.54;
  pointer-events:none;
  user-select:none;
}
.detail-flip{
  width:min(404px,80vw);
  z-index:2;
  filter:drop-shadow(0 40px 70px rgba(0,0,0,.48)) drop-shadow(0 0 20px color-mix(in srgb,var(--product-accent) 13%,transparent));
}
.detail-flip .flip-face{background:transparent}
.detail-flip img{object-fit:contain}
.flip-toggle{z-index:5}

/* Preserve the cleaner mobile composition: chips stay hidden and formulas
   become smaller/lower contrast so they never create horizontal clipping. */
@media (max-width:1100px) and (min-width:768px){
  .hero-card{width:min(350px,69vw)}
  .floating-chip{max-width:146px;font-size:9px;padding:10px 11px;letter-spacing:.1em}
  .chip-a{left:0}
  .chip-b{right:0}
  .hero-stage::after{font-size:clamp(38px,5vw,66px)}
}
@media (max-width:767px){
  .hero-stage::before{width:min(360px,84vw);filter:blur(18px)}
  .hero-stage::after{font-size:clamp(28px,9vw,46px);width:94%;opacity:.42}
  .hero-card{width:min(286px,72vw)}
  .product-card__visual::after{font-size:clamp(24px,8vw,36px);width:90%;opacity:.43}
  .product-card__visual .flip-face img{width:84%;height:92%;margin:4% auto 0}
  .detail-visual::after{font-size:clamp(28px,9vw,44px);width:98%;opacity:.42}
  .detail-flip{width:min(320px,76vw)}
}
@media (prefers-reduced-motion:reduce){
  .floating-chip{animation:none!important}
}



/* =========================================================
   V24.6 — glow only, hero product switcher, footer cleanup
   ========================================================= */

/* Remove chemical-formula backdrops while keeping the product glow. */
.hero-stage::after,
.product-card__visual::after,
.detail-visual::after{content:none!important;display:none!important}

/* Homepage product selector dots. */
.hero-product-switcher{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(5,6,8,.44);
  backdrop-filter:blur(12px);
  box-shadow:0 16px 36px rgba(0,0,0,.32);
}
.hero-product-dot{
  width:13px;
  height:13px;
  padding:0;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.28);
  background:var(--dot-color, var(--product-accent));
  box-shadow:0 0 0 0 rgba(255,255,255,0), 0 0 14px color-mix(in srgb,var(--dot-color, var(--product-accent)) 24%,transparent);
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, opacity .22s ease;
  opacity:.92;
}
.hero-product-dot:hover{transform:scale(1.08);opacity:1}
.hero-product-dot.is-active,
.hero-product-dot[aria-selected="true"]{
  transform:scale(1.12);
  border-color:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.1),0 0 18px color-mix(in srgb,var(--dot-color, var(--product-accent)) 46%,transparent);
  opacity:1;
}
.hero-product-dot:nth-child(1){--dot-color:#54dfe8}
.hero-product-dot:nth-child(2){--dot-color:#b69bff}
.hero-product-dot:nth-child(3){--dot-color:#f6b431}
.hero-product-dot:nth-child(4){--dot-color:#ef9fae}

/* Make the cancel link in the footer match the other sitemap/footer links. */
.footer-links .cancel-order-link{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  padding:0!important;
  min-height:0!important;
  border:0!important;
  border-radius:0!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  color:inherit!important;
  background:none!important;
  justify-content:flex-start!important;
  align-items:initial!important;
  box-shadow:none!important;
}
.footer-links .cancel-order-link:hover{background:none!important;color:#fff!important}

@media (max-width:767px){
  .hero-product-switcher{bottom:8px;gap:10px;padding:8px 12px}
  .hero-product-dot{width:12px;height:12px}
}

/* =========================================================
   V24.6.1 — remove visible image-frame / panel outline
   ========================================================= */

/* Homepage featured product should float freely without a rounded card panel. */
.hero-card{
  overflow:visible!important;
  border:none!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:
    0 42px 120px rgba(0,0,0,.58),
    0 0 48px color-mix(in srgb,var(--product-accent) 13%,transparent)!important;
}
.hero-card::after{display:none!important;content:none!important}
.hero-card img{
  background:transparent!important;
}

/* Product detail/product-card images should not show a leftover rectangular frame. */
.product-card__visual .flip-face,
.detail-flip .flip-face{
  border:none!important;
  background:transparent!important;
  overflow:visible!important;
  box-shadow:none!important;
}
.product-card__visual .flip-face img,
.detail-flip .flip-face img{
  background:transparent!important;
}


/* =========================================================
   V24.6.2 — glow follows the product, not the image frame
   ========================================================= */

/* The previous glow was still attached to the hero-card rectangle.
   Remove frame-level shadow and let the image/stage glow carry the effect. */
.hero-card{
  box-shadow:none!important;
}
.hero-card img{
  filter:
    drop-shadow(0 22px 28px rgba(0,0,0,.42))
    drop-shadow(0 0 22px color-mix(in srgb,var(--product-accent) 18%,transparent))
    drop-shadow(0 0 42px color-mix(in srgb,var(--product-accent) 10%,transparent))!important;
}

/* Keep the ambient glow behind the bottle itself, not around the card bounds. */
.hero-stage::before{
  left:50%;
  top:51%;
  transform:translate(-50%,-50%);
  width:min(420px,70%);
  opacity:.95;
}


/* =========================================================
   V24.6.3 — brighter product selector dots
   ========================================================= */
.hero-product-dot{
  opacity:1!important;
  border-color:rgba(255,255,255,.55)!important;
  filter:saturate(1.28) brightness(1.18);
  box-shadow:
    0 0 8px color-mix(in srgb,var(--dot-color,var(--product-accent)) 78%,transparent),
    0 0 18px color-mix(in srgb,var(--dot-color,var(--product-accent)) 55%,transparent),
    0 0 30px color-mix(in srgb,var(--dot-color,var(--product-accent)) 28%,transparent)!important;
}
.hero-product-dot:hover{
  filter:saturate(1.38) brightness(1.28);
}
.hero-product-dot.is-active,
.hero-product-dot[aria-selected="true"]{
  border-color:#fff!important;
  filter:saturate(1.45) brightness(1.35);
  box-shadow:
    0 0 0 4px rgba(255,255,255,.12),
    0 0 10px color-mix(in srgb,var(--dot-color,var(--product-accent)) 95%,transparent),
    0 0 22px color-mix(in srgb,var(--dot-color,var(--product-accent)) 72%,transparent),
    0 0 38px color-mix(in srgb,var(--dot-color,var(--product-accent)) 42%,transparent)!important;
}


/* =========================================================
   V24.6.4 — selector dots use vivid product-label colors
   ========================================================= */
.hero-product-dot:nth-child(1){--dot-color:#20E8F2!important} /* Creatine cyan */
.hero-product-dot:nth-child(2){--dot-color:#9B7BFF!important} /* Magnesium violet */
.hero-product-dot:nth-child(3){--dot-color:#FFB51F!important} /* D3 + K2 gold */
.hero-product-dot:nth-child(4){--dot-color:#FF5F7D!important} /* Beauty pink */


/* =========================================================
   V24.7 — founder story / transparency identity
   ========================================================= */
.founder-page-hero .lead{max-width:860px}
.founder-signoff{display:flex;align-items:baseline;gap:12px;margin-top:28px;text-transform:uppercase;letter-spacing:.12em}
.founder-signoff span{font-size:12px;font-weight:900;color:#fff}
.founder-signoff small{font-size:9px;color:#7f8790}
.founder-signoff.large{margin-top:34px}
.founder-signoff.large span{font-size:14px}

.founder-origin-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:72px;align-items:start}
.founder-origin-sticky{position:sticky;top:130px}
.founder-story{max-width:760px}
.founder-story p{font-size:clamp(17px,1.5vw,21px);line-height:1.75;color:#aeb5be;margin:0 0 24px}
.founder-story .founder-story-lead{font-size:clamp(23px,2.25vw,34px);line-height:1.45;color:#f2f4f6;letter-spacing:-.02em}

.founder-questions-section{background:linear-gradient(180deg,rgba(255,255,255,.012),transparent)}
.founder-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:42px}
.founder-question{position:relative;min-height:230px;padding:28px;border:1px solid var(--line);border-radius:24px;background:#080a0d;overflow:hidden}
.founder-question::after{content:"";position:absolute;inset:auto -20% -55% 25%;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 68%);pointer-events:none}
.founder-question>span{font-size:10px;letter-spacing:.16em;color:#6f7780;font-weight:900}
.founder-question h3{font-size:clamp(24px,2.4vw,34px);text-transform:uppercase;letter-spacing:-.035em;margin:34px 0 12px}
.founder-question p{margin:0;color:#9fa6af;line-height:1.65;max-width:500px}

.founder-manifesto{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.founder-manifesto-copy{position:sticky;top:130px}
.founder-manifesto-copy>p:not(.lead){color:#aeb5be;line-height:1.72;font-size:17px}
.founder-manifesto-stack{display:grid;gap:12px}
.manifesto-line{padding:26px 28px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.018)}
.manifesto-line span{display:block;font-size:20px;font-weight:900;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:8px}
.manifesto-line small{display:block;color:#929aa4;font-size:14px;line-height:1.6}

.transparency-roadmap-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:38px}
.transparency-roadmap-head .lead{max-width:460px}
.transparency-roadmap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.transparency-roadmap article{min-height:250px;padding:22px 20px;border:1px solid var(--line);background:#07090c;display:flex;flex-direction:column;border-radius:20px}
.transparency-roadmap b{font-size:9px;color:#69717b;letter-spacing:.16em}
.transparency-roadmap span{margin-top:auto;font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:-.02em}
.transparency-roadmap small{margin-top:10px;color:#8f97a1;line-height:1.55;font-size:12px}

.founder-ambition-card{padding:clamp(32px,5vw,68px);border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at 80% 10%,rgba(84,223,232,.08),transparent 34%),#07090c}
.founder-ambition-card .quote{margin:24px 0 0;max-width:1100px}

.home-founder{background:linear-gradient(180deg,rgba(84,223,232,.018),transparent)}
.home-founder-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.home-founder-copy>p:not(.lead){color:#aeb5be;line-height:1.72;max-width:680px;font-size:17px}
.home-founder-copy .btn{margin-top:18px}
.home-founder-questions{display:grid;gap:10px}
.home-founder-questions>div{min-height:76px;padding:0 22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.018);display:flex;align-items:center;position:relative;overflow:hidden}
.home-founder-questions>div::before{content:"";width:7px;height:7px;border-radius:50%;background:#54dfe8;box-shadow:0 0 18px rgba(84,223,232,.65);margin-right:16px;flex:0 0 auto}
.home-founder-questions span{font-size:15px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#dce0e5}

@media(max-width:980px){
  .founder-origin-grid,.founder-manifesto,.home-founder-grid{grid-template-columns:1fr;gap:40px}
  .founder-origin-sticky,.founder-manifesto-copy{position:static}
  .transparency-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .transparency-roadmap article:last-child{grid-column:1/-1;min-height:190px}
}
@media(max-width:640px){
  .founder-question-grid{grid-template-columns:1fr}
  .founder-question{min-height:200px;padding:24px 22px}
  .transparency-roadmap-head{display:block}
  .transparency-roadmap-head .lead{margin-top:16px}
  .transparency-roadmap{grid-template-columns:1fr}
  .transparency-roadmap article,.transparency-roadmap article:last-child{grid-column:auto;min-height:190px}
  .founder-ambition-card{border-radius:24px}
  .home-founder-questions>div{min-height:68px;padding:0 18px}
}


/* =========================================================
   V24.8 — formula revision + auth punctuation + mobile hero polish
   ========================================================= */

/* Give the oversized auth heading punctuation intentional breathing room. */
.auth-period{display:inline-block;margin-left:.08em}

/* Mobile-only hero refinement. Desktop product presentation is untouched. */
@media (max-width:767px){
  /* The WebP contains tiny edge-alpha pixels; colored drop-shadow can turn those
     into a rectangular halo on phones. Use only a soft radial aura on mobile. */
  .hero-stage .hero-card img{
    filter:none!important;
  }
  .hero-stage::before{
    width:min(390px,88vw)!important;
    height:auto;
    aspect-ratio:1/1.08;
    top:50%!important;
    opacity:.82!important;
    filter:blur(34px)!important;
    background:radial-gradient(ellipse at center,
      color-mix(in srgb,var(--product-accent) 18%,transparent) 0%,
      color-mix(in srgb,var(--product-accent) 11%,transparent) 30%,
      color-mix(in srgb,var(--product-accent) 5%,transparent) 52%,
      transparent 74%)!important;
  }
  /* Give the selector a little more air under the bottle. */
  .hero-product-switcher{
    bottom:-8px!important;
  }
}


/* =========================================================
   V24.8.2 — homepage CTA breathing room
   ========================================================= */

/* Desktop only: lift the complete hero-copy block slightly.
   This creates more space above the moving trust bar while preserving
   the exact spacing between the paragraph and the CTA buttons. */
@media (min-width:981px){
  .hero-copy{
    transform:translateY(-20px);
  }
}


/* =========================================================
   V24.8.3 — product label flip interaction
   ========================================================= */

/* Desktop: hovering anywhere over the product should NOT flip it anymore.
   Only hovering the View Back Label button previews the reverse side. */
@media (hover:hover) and (pointer:fine){
  .detail-visual:hover .detail-flip{
    transform:none!important;
  }
  .detail-visual.back-ready:hover .flip-face.front{
    opacity:1!important;
  }
  .detail-visual.back-ready:hover .flip-face.back{
    opacity:0!important;
  }

  .detail-visual.is-button-preview .detail-flip,
  .detail-visual.is-flipped .detail-flip{
    transform:rotateY(180deg)!important;
  }
  .detail-visual.back-ready.is-button-preview .flip-face.front,
  .detail-visual.back-ready.is-flipped .flip-face.front{
    opacity:0!important;
  }
  .detail-visual.back-ready.is-button-preview .flip-face.back,
  .detail-visual.back-ready.is-flipped .flip-face.back{
    opacity:1!important;
  }
}


/* =========================================================
   V24.8.4 — mobile product flip button spacing
   ========================================================= */

/* Mobile only: move the front/back-label button slightly lower so it
   no longer overlaps the bottom of the product render. */
@media (max-width:767px){
  .detail-visual{
    padding-bottom:34px;
  }
  .flip-toggle{
    bottom:-8px!important;
  }
}


/* =========================================================
   V24.8.5 — reliable mobile front/back label toggle
   ========================================================= */

/* iOS/Safari can keep :hover "stuck" after a tap. Earlier crossfade rules
   therefore kept the back image visible even after is-flipped was removed.
   On touch/coarse-pointer devices, make the explicit is-flipped class the
   only source of truth for which label is shown. */
@media (hover:none), (pointer:coarse){
  .detail-visual.back-ready .flip-face.front,
  .detail-visual.back-ready:hover .flip-face.front{
    opacity:1!important;
  }

  .detail-visual.back-ready .flip-face.back,
  .detail-visual.back-ready:hover .flip-face.back{
    opacity:0!important;
  }

  .detail-visual.back-ready.is-flipped .flip-face.front,
  .detail-visual.back-ready.is-flipped:hover .flip-face.front{
    opacity:0!important;
  }

  .detail-visual.back-ready.is-flipped .flip-face.back,
  .detail-visual.back-ready.is-flipped:hover .flip-face.back{
    opacity:1!important;
  }
}


/* =========================================================
   V24.8.6 — desktop product flip button spacing
   ========================================================= */

/* Desktop/tablet only: keep the front/back-label control in its own row
   beneath the bottle instead of positioning it on top of the render. */
@media (min-width:768px){
  .detail-visual{
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:18px;
    min-height:700px;
  }

  .flip-toggle{
    position:relative!important;
    left:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    flex:0 0 auto;
  }
}


/* =========================================================
   V24.8.7 — desktop product scale + readable back label
   ========================================================= */

/* Desktop only: the product render was too large to fit comfortably in one
   viewport. Reduce it without changing the phone layout. */
@media (min-width:981px){
  .detail-visual{
    min-height:600px!important;
    gap:24px!important;
  }

  .detail-flip{
    width:clamp(280px,23vw,340px)!important;
  }
}

/* The front/back artwork is already a flat 2D render. Do not rotate the whole
   image on desktop, because that mirrors the back-label text. Use only the
   existing opacity crossfade when the button is hovered/focused. */
@media (hover:hover) and (pointer:fine){
  .detail-visual.is-button-preview .detail-flip,
  .detail-visual.is-flipped .detail-flip{
    transform:none!important;
  }

  .detail-visual.back-ready.is-button-preview .flip-face.front,
  .detail-visual.back-ready.is-flipped .flip-face.front{
    opacity:0!important;
  }

  .detail-visual.back-ready.is-button-preview .flip-face.back,
  .detail-visual.back-ready.is-flipped .flip-face.back{
    opacity:1!important;
  }
}


/* =========================================================
   V24.8.8 — desktop flip-button spacing refinement
   ========================================================= */

/* Desktop only: bring the label-view button closer to the bottle while
   preserving a clean separation so it never overlaps the product render. */
@media (min-width:981px){
  .detail-visual{
    gap:12px!important;
  }

  .flip-toggle{
    margin-top:0!important;
  }
}


/* =========================================================
   V24.8.9 — intrinsic product controls + fluid product pages
   ========================================================= */

/*
   Make the bottle and label button one natural vertical stack.
   This removes the large empty area that appeared when the viewport was
   narrow/short, while guaranteeing that the button cannot overlap the bottle.
*/
.detail-visual{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  min-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

.flip-toggle{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  margin:0!important;
  flex:0 0 auto!important;
}

/* Full desktop: scale from BOTH viewport width and viewport height.
   Large monitors do not get an oversized bottle and short browser windows
   automatically reduce the render enough to keep the full object visible. */
@media (min-width:1101px){
  .product-hero-grid{
    grid-template-columns:minmax(290px,.88fr) minmax(0,1.12fr)!important;
    gap:clamp(34px,4.5vw,68px)!important;
  }

  .detail-flip{
    width:min(
      28vw,
      clamp(250px, calc(62dvh - 130px), 340px)
    )!important;
    max-width:100%!important;
  }

  .product-copy h1{
    font-size:clamp(52px,6.2vw,104px)!important;
  }

  .product-copy .sub{
    font-size:clamp(18px,1.55vw,22px)!important;
  }
}

/* Laptop / tablet window sizes: preserve the stacked layout already used by
   the site, but size the product fluidly rather than relying on fixed heights. */
@media (min-width:768px) and (max-width:1100px){
  .product-hero-grid{
    grid-template-columns:1fr!important;
    gap:clamp(24px,4vw,38px)!important;
  }

  .detail-visual{
    gap:14px!important;
  }

  .detail-flip{
    width:min(340px,48vw)!important;
    max-width:100%!important;
  }
}

/* Phone: keep the existing visual scale, but let the button sit directly
   below the bottle in document flow. This also adapts cleanly in landscape. */
@media (max-width:767px){
  .detail-visual{
    gap:18px!important;
    min-height:0!important;
    padding-bottom:0!important;
  }

  .detail-flip{
    width:min(320px,76vw)!important;
    max-width:100%!important;
  }

  .flip-toggle{
    bottom:auto!important;
  }
}

/* Very narrow phones/windows get a little extra side clearance. */
@media (max-width:420px){
  .detail-flip{
    width:min(300px,82vw)!important;
  }

  .flip-toggle{
    max-width:calc(100vw - 44px);
    white-space:normal;
    text-align:center;
  }
}

/* Very short desktop windows: keep the product/control combination compact
   without altering ordinary desktop presentation. */
@media (min-width:1101px) and (max-height:680px){
  .product-hero{
    padding-top:105px!important;
    padding-bottom:48px!important;
  }

  .detail-visual{
    gap:10px!important;
  }

  .detail-flip{
    width:min(25vw,280px)!important;
  }

  .flip-toggle{
    padding:9px 13px!important;
  }
}


/* =========================================================
   V24.9.0 — fixed bottle/button stack
   ========================================================= */

/*
   The bottle and View Back/Front Label control now share an explicit wrapper.
   This guarantees the button stays immediately beneath the bottle instead of
   being positioned relative to the much taller product-visual column.
*/
.detail-visual{
  display:grid!important;
  place-items:center!important;
  min-height:0!important;
}

.detail-stack{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:9px;
  width:max-content;
  max-width:100%;
}

.detail-stack .detail-flip{
  flex:0 0 auto;
}

.detail-stack .flip-toggle{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  flex:0 0 auto!important;
}

/* Desktop: deliberately small, fixed visual gap directly below the bottle. */
@media (min-width:981px){
  .detail-stack{
    gap:8px;
  }
}

/* Tablet keeps the same relationship while allowing a little more breathing room. */
@media (min-width:768px) and (max-width:980px){
  .detail-stack{
    gap:10px;
  }
}

/* Phone spacing remains comfortable for touch while still staying attached
   visually to the product. */
@media (max-width:767px){
  .detail-stack{
    gap:16px;
  }
}


/* =========================================================
   V24.9.1 — remove hidden fixed-height gap under product
   ========================================================= */

/*
   ROOT CAUSE:
   An older rule still forced .detail-flip to height:760px even after the
   visible bottle had been made smaller. The button was correctly placed under
   that 760px box — not under the visible bottle — creating the huge empty gap.

   Use the actual 2:3 product-image ratio instead. Width now controls the size
   responsively and the button sits directly under the real bottle bounds.
*/
.detail-stack .detail-flip,
.detail-flip{
  height:auto!important;
  aspect-ratio:2 / 3!important;
}

/* Keep the control visually attached to the bottle. */
.detail-stack{
  gap:8px!important;
}

/* Desktop/laptop responsive widths: no fixed heights. */
@media (min-width:1101px){
  .detail-flip{
    width:min(28vw, clamp(250px, calc(62dvh - 130px), 340px))!important;
    height:auto!important;
    aspect-ratio:2 / 3!important;
  }
}

@media (min-width:981px) and (max-width:1100px){
  .detail-flip{
    width:min(320px,34vw)!important;
    height:auto!important;
    aspect-ratio:2 / 3!important;
  }
}

/* Tablet */
@media (min-width:768px) and (max-width:980px){
  .detail-flip{
    width:min(330px,48vw)!important;
    height:auto!important;
    aspect-ratio:2 / 3!important;
  }
  .detail-stack{gap:10px!important}
}

/* Phones retain touch-friendly spacing while also dropping legacy fixed height. */
@media (max-width:767px){
  .detail-flip{
    width:min(320px,76vw)!important;
    height:auto!important;
    aspect-ratio:2 / 3!important;
  }
  .detail-stack{gap:16px!important}
}


/* =========================================================
   V24.9.2 — compact admin order queue
   ========================================================= */
.admin-order-queue{
  margin:22px 0 16px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
  overflow:hidden;
}
.admin-order-queue>summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:72px;
  padding:15px 18px;
  cursor:pointer;
  user-select:none;
}
.admin-order-queue>summary::-webkit-details-marker{display:none}
.admin-order-queue>summary::after{
  content:"+";
  display:grid;
  place-items:center;
  flex:0 0 34px;
  width:34px;
  height:34px;
  margin-left:auto;
  border:1px solid var(--line);
  border-radius:50%;
  font-size:20px;
  line-height:1;
  color:#fff;
  transition:transform .2s ease;
}
.admin-order-queue[open]>summary::after{content:"−";transform:rotate(180deg)}
.admin-order-queue>summary>span:first-child{display:grid;gap:4px}
.admin-order-queue>summary small{
  color:#858e98;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.15em;
}
.admin-order-queue>summary strong{
  font-size:18px;
  letter-spacing:-.015em;
}
.admin-order-queue__count{
  margin-left:auto;
  color:#aab1ba;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.11em;
}
.admin-order-queue__panel{border-top:1px solid var(--line)}
.admin-order-queue__intro{
  padding:11px 16px;
  color:#7f8791;
  font-size:9px;
  line-height:1.5;
  text-transform:uppercase;
  letter-spacing:.09em;
  background:rgba(255,255,255,.012);
  border-bottom:1px solid var(--line);
}
.admin-order-queue__list{
  display:grid;
  max-height:min(56vh,560px);
  overflow:auto;
  overscroll-behavior:contain;
}
.admin-order-queue__item{
  appearance:none;
  width:100%;
  display:grid;
  grid-template-columns:minmax(180px,1.2fr) minmax(120px,.65fr) minmax(260px,1fr);
  align-items:center;
  gap:14px;
  padding:13px 16px;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
  transition:background .18s ease;
}
.admin-order-queue__item:last-child{border-bottom:0}
.admin-order-queue__item:hover,
.admin-order-queue__item:focus-visible{background:rgba(255,255,255,.045)}
.admin-order-queue__identity{display:grid;gap:3px;min-width:0}
.admin-order-queue__identity strong{font-size:12px;overflow-wrap:anywhere}
.admin-order-queue__identity small{
  color:#858e98;
  font-size:9px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-order-queue__work{
  color:#d7dbe0;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.admin-order-queue__statuses{
  display:flex;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.admin-order-queue__empty{padding:20px;color:#858e98}
.admin-order-card--highlight{
  border-color:rgba(255,255,255,.58)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.06),0 22px 65px rgba(0,0,0,.34)!important;
}

@media(max-width:900px){
  .admin-order-queue__item{
    grid-template-columns:1fr auto;
  }
  .admin-order-queue__work{grid-column:1/2}
  .admin-order-queue__statuses{
    grid-column:2;
    grid-row:1/3;
    align-self:center;
    max-width:240px;
  }
}
@media(max-width:640px){
  .admin-order-queue>summary{padding:14px;min-height:66px}
  .admin-order-queue__count{display:none}
  .admin-order-queue__item{
    grid-template-columns:1fr;
    gap:8px;
    padding:14px;
  }
  .admin-order-queue__work,
  .admin-order-queue__statuses{
    grid-column:auto;
    grid-row:auto;
  }
  .admin-order-queue__statuses{justify-content:flex-start;max-width:none}
}


/* =========================================================
   V24.9.3 — quick previous/next product cycling
   ========================================================= */
.product-cycle-nav{
  pointer-events:none;
  position:fixed;
  inset:0;
  z-index:42;
}

.product-cycle-arrow{
  pointer-events:auto;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  max-width:250px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(5,6,8,.62);
  color:#fff;
  text-decoration:none;
  backdrop-filter:blur(14px);
  box-shadow:0 18px 46px rgba(0,0,0,.28);
  transition:
    background .22s ease,
    border-color .22s ease,
    transform .22s ease,
    opacity .22s ease;
}

.product-cycle-prev{left:18px}
.product-cycle-next{right:18px}

.product-cycle-arrow:hover,
.product-cycle-arrow:focus-visible{
  background:rgba(16,18,22,.92);
  border-color:color-mix(in srgb,var(--product-accent) 62%,rgba(255,255,255,.3));
}

.product-cycle-prev:hover,
.product-cycle-prev:focus-visible{
  transform:translateY(-50%) translateX(-3px);
}

.product-cycle-next:hover,
.product-cycle-next:focus-visible{
  transform:translateY(-50%) translateX(3px);
}

.product-cycle-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.04);
  font-size:20px;
  line-height:1;
  color:var(--product-accent);
}

.product-cycle-label{
  display:grid;
  gap:2px;
  min-width:0;
  max-width:0;
  opacity:0;
  overflow:hidden;
  white-space:nowrap;
  transition:max-width .28s ease,opacity .2s ease;
}

.product-cycle-label small{
  color:#7f8791;
  font-size:7px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
}

.product-cycle-label b{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.product-cycle-arrow:hover .product-cycle-label,
.product-cycle-arrow:focus-visible .product-cycle-label{
  max-width:180px;
  opacity:1;
}

/* Prevent the side controls from crowding narrower desktop/laptop layouts. */
@media (max-width:1250px) and (min-width:768px){
  .product-cycle-arrow{padding:7px}
  .product-cycle-label{display:none}
  .product-cycle-prev{left:10px}
  .product-cycle-next{right:10px}
}

/* On phones, keep the arrows out of the bottle/content area.
   They become compact bottom-corner cycle controls. */
@media (max-width:767px){
  .product-cycle-nav{
    inset:auto 0 0;
    height:0;
  }
  .product-cycle-arrow{
    position:fixed;
    top:auto;
    bottom:calc(16px + env(safe-area-inset-bottom));
    transform:none!important;
    min-height:46px;
    padding:4px;
    border-radius:50%;
    background:rgba(5,6,8,.82);
  }
  .product-cycle-prev{left:14px}
  .product-cycle-next{right:14px}
  .product-cycle-icon{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .product-cycle-label{display:none}
}

/* Hide the floating phone arrows while menus/dialogs are open. */
body:has(.mobile-drawer.open) .product-cycle-nav,
body:has(.cart-drawer.open) .product-cycle-nav,
body:has(.cookie-dialog) .product-cycle-nav{
  opacity:0;
  pointer-events:none;
}


/* =========================================================
   V24.9.4 — optically centered product-cycle arrows
   ========================================================= */

/* Replace the font arrow glyph with a CSS-drawn arrow so the icon is
   geometrically centered inside the circle on every browser/OS. */
.product-cycle-icon{
  position:relative;
  font-size:0!important;
  line-height:0!important;
}

.product-cycle-icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:15px;
  height:1.5px;
  border-radius:999px;
  background:currentColor;
  transform:translate(-50%,-50%);
}

.product-cycle-icon::after{
  content:"";
  position:absolute;
  top:50%;
  width:7px;
  height:7px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
}

/* Previous arrow */
.product-cycle-prev .product-cycle-icon::after{
  left:50%;
  transform:translate(-72%,-50%) rotate(-135deg);
}

/* Next arrow */
.product-cycle-next .product-cycle-icon::after{
  left:50%;
  transform:translate(-28%,-50%) rotate(45deg);
}


/* =========================================================
   V24.9.8 — Transparency Roadmap artwork
   ========================================================= */
.transparency-roadmap .transparency-roadmap-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:310px;
  padding:22px 20px 20px;
  background:#07090c;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.015);
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}

.transparency-roadmap .transparency-roadmap-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(180deg,rgba(5,7,10,.08) 0%,rgba(5,7,10,.12) 33%,rgba(5,7,10,.74) 68%,#07090c 91%),
    linear-gradient(90deg,rgba(5,7,10,.18),transparent 56%);
  pointer-events:none;
}

.transparency-roadmap .transparency-roadmap-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:radial-gradient(circle at 72% 27%,rgba(91,197,255,.08),transparent 48%);
  pointer-events:none;
}

.transparency-roadmap-art{
  position:absolute;
  inset:0;
  z-index:-3;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:68% 34%;
  opacity:.72;
  filter:saturate(.88) contrast(1.04) brightness(.72);
  transform:scale(1.015);
  transition:transform .6s cubic-bezier(.16,.8,.18,1),opacity .35s ease,filter .35s ease;
}

.transparency-roadmap-card--manufacturing .transparency-roadmap-art{object-position:72% 31%}
.transparency-roadmap-card--testing .transparency-roadmap-art{object-position:72% 30%}
.transparency-roadmap-card--logistics .transparency-roadmap-art{object-position:72% 34%}
.transparency-roadmap-card--price .transparency-roadmap-art{object-position:70% 31%}

.transparency-roadmap .transparency-roadmap-card>b{
  position:relative;
  z-index:2;
  color:#8c9aaa;
  text-shadow:0 1px 10px rgba(0,0,0,.7);
}

.transparency-roadmap-copy{
  position:relative;
  z-index:2;
  margin-top:auto;
  padding-top:92px;
}

.transparency-roadmap-copy span{
  display:block;
  margin-top:0;
  color:#fff;
  text-shadow:0 2px 20px rgba(0,0,0,.9);
}

.transparency-roadmap-copy small{
  display:block;
  color:#aeb7c2;
  text-shadow:0 2px 16px rgba(0,0,0,.92);
}

@media (hover:hover) and (pointer:fine){
  .transparency-roadmap .transparency-roadmap-card:hover{
    transform:translateY(-3px);
    border-color:rgba(255,255,255,.19);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.025),
      0 18px 45px rgba(0,0,0,.2);
  }
  .transparency-roadmap .transparency-roadmap-card:hover .transparency-roadmap-art{
    transform:scale(1.055);
    opacity:.82;
    filter:saturate(.96) contrast(1.06) brightness(.78);
  }
}

/* Intermediate screens preserve the existing roadmap layout while making
   the generated artwork large enough to read as intentional imagery. */
@media (max-width:980px){
  .transparency-roadmap .transparency-roadmap-card,
  .transparency-roadmap .transparency-roadmap-card:last-child{
    min-height:280px;
  }
  .transparency-roadmap-art{object-position:70% 31%}
  .transparency-roadmap-copy{padding-top:115px}
}

/* Phones use a wider visual crop and a slightly taller card so the image,
   heading and explanation all have clean separation. */
@media (max-width:640px){
  .transparency-roadmap .transparency-roadmap-card,
  .transparency-roadmap .transparency-roadmap-card:last-child{
    min-height:300px;
    padding:20px 19px;
  }
  .transparency-roadmap-art{
    object-position:68% 30%;
    opacity:.69;
  }
  .transparency-roadmap-copy{padding-top:135px}
}


/* =========================================================
   V24.9.9 — science transparency + product FAQs
   ========================================================= */
.science-section-note{
  max-width:310px;
  margin-top:18px;
  color:#8f97a1;
  font-size:13px;
  line-height:1.65;
}

.science-transparency-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.science-transparency-card{
  position:relative;
  min-height:210px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:20px;
  background:
    radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--product-accent) 8%,transparent),transparent 42%),
    #080a0d;
}

.science-transparency-card>b{
  display:block;
  margin-bottom:46px;
  color:color-mix(in srgb,var(--product-accent) 72%,#7b8490);
  font-size:9px;
  letter-spacing:.16em;
}

.science-transparency-card h3{
  margin:0 0 10px;
  font-size:17px;
  text-transform:uppercase;
  letter-spacing:-.01em;
}

.science-transparency-card p{
  margin:0;
  color:#9fa7b1;
  font-size:12px;
  line-height:1.65;
}

.batch-proof-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:12px;
  padding:22px;
  border:1px solid color-mix(in srgb,var(--product-accent) 22%,var(--line));
  border-radius:20px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--product-accent) 7%,#080a0d),#080a0d 60%);
}

.batch-proof-card>div{max-width:720px}
.batch-proof-status{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 9px;
  border:1px solid color-mix(in srgb,var(--product-accent) 34%,var(--line));
  border-radius:999px;
  color:var(--product-accent);
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.batch-proof-card h3{
  margin:0 0 8px;
  font-size:18px;
  text-transform:uppercase;
}

.batch-proof-card p{
  margin:0;
  color:#9ba3ad;
  font-size:12px;
  line-height:1.65;
}

.evidence-basis{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:14px;
}

.evidence-basis>span{
  margin-right:4px;
  color:#77808a;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
}

.evidence-basis a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  color:#aeb5be;
  font-size:9px;
  text-decoration:none;
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}

.evidence-basis a:hover{
  color:#fff;
  border-color:color-mix(in srgb,var(--product-accent) 40%,var(--line));
  background:color-mix(in srgb,var(--product-accent) 5%,transparent);
}

.science-faq-list{
  display:grid;
  gap:9px;
}

.science-faq-item{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#080a0d;
}

.science-faq-item summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:68px;
  padding:17px 19px;
  cursor:pointer;
  color:#f5f6f7;
  font-size:13px;
  font-weight:850;
  line-height:1.35;
}

.science-faq-item summary::-webkit-details-marker{display:none}

.science-faq-item summary span{
  display:grid;
  place-items:center;
  flex:0 0 30px;
  width:30px;
  height:30px;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--product-accent);
  font-size:18px;
  font-weight:400;
  transition:transform .2s ease;
}

.science-faq-item[open] summary span{transform:rotate(45deg)}

.science-faq-item>div{
  padding:0 19px 18px;
}

.science-faq-item p{
  max-width:780px;
  margin:0;
  color:#9fa7b1;
  font-size:12px;
  line-height:1.7;
}

@media(max-width:767px){
  .science-section-note{max-width:none}
  .science-transparency-grid{grid-template-columns:1fr}
  .science-transparency-card{min-height:185px;padding:19px}
  .science-transparency-card>b{margin-bottom:34px}
  .batch-proof-card{display:grid;padding:19px}
  .batch-proof-card .btn{width:100%}
  .evidence-basis{align-items:flex-start}
  .evidence-basis>span{width:100%;margin:0 0 2px}
  .science-faq-item summary{min-height:64px;padding:16px}
  .science-faq-item>div{padding:0 16px 17px}
}


/* =========================================================
   V25.0.2 — FAQ toggle icon centering
   ========================================================= */

/* Replace the text glyph with a CSS-drawn plus so the icon sits perfectly
   centered inside the circle across browsers and screen sizes. */
.science-faq-item summary span{
  position:relative;
  overflow:hidden;
  font-size:0 !important;
  line-height:0 !important;
}

.science-faq-item summary span::before,
.science-faq-item summary span::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:1.5px;
  border-radius:999px;
  background:currentColor;
  transform:translate(-50%,-50%);
}

.science-faq-item summary span::after{
  width:1.5px;
  height:12px;
}

/* Keep the current open-state behavior, but only rotate the drawn icon
   cleanly around its center. */
.science-faq-item[open] summary span{
  transform:none;
}

.science-faq-item[open] summary span::before,
.science-faq-item[open] summary span::after{
  transform-origin:center;
}

.science-faq-item[open] summary span::before{
  transform:translate(-50%,-50%) rotate(45deg);
}

.science-faq-item[open] summary span::after{
  transform:translate(-50%,-50%) rotate(45deg);
}


/* =========================================================
   V25.1.0 — resolution-independent large-screen scaling
   ========================================================= */

/*
   1920×1080 is the visual reference size.
   Above 1920 CSS pixels, 1rem scales from 16px upward using BOTH viewport
   width and height. Using the smaller axis keeps 16:9, 21:9 and 4K screens
   visually balanced instead of letting ultrawide width make everything huge.

   Examples at 100% browser zoom:
   1920×1080 -> 1rem = 16px
   2560×1440 -> 1rem ≈ 21.33px
   3840×2160 -> 1rem = 32px

   All existing tablet/mobile breakpoints remain untouched.
*/
@media (min-width:1921px){
  html{
    font-size:clamp(16px,min(.833333vw,1.481481vh),32px);
  }

  :root{
    --max:77.5rem;
    --content-max:77.5rem;
    --radius:1.75rem;
  }

  body{
    font-size:1rem;
  }

  .wrap{
    width:min(calc(100% - 2.5rem),var(--max))!important;
    max-width:var(--max)!important;
  }

  /* Header / navigation */
  .site-header{
    padding:.75rem 0;
  }
  .site-header.scrolled{
    padding:.625rem 0;
  }
  .nav{
    gap:1.25rem;
  }
  .brand-plate img{
    width:7.875rem!important;
    max-width:none!important;
    height:auto!important;
  }
  .nav-links{
    gap:1.875rem;
    font-size:.75rem;
    letter-spacing:.13em;
  }
  .nav>.btn{
    min-height:3.125rem;
    padding-inline:1.3125rem;
    font-size:.8125rem;
  }
  .cart-nav{
    height:3.125rem;
    min-width:6rem;
    padding-inline:1rem;
    font-size:.8125rem;
    gap:.625rem;
  }
  .cart-nav b{
    min-width:1.5rem;
    height:1.5rem;
  }

  /* Shared typography / spacing */
  .section{
    padding:5.3125rem 0;
  }
  .section.tight{
    padding:4.375rem 0;
  }
  .eyebrow{
    font-size:.625rem;
    letter-spacing:.18em;
  }
  .eyebrow::before{
    width:2.5rem;
    flex-basis:2.5rem;
  }
  .lead{
    font-size:1.5rem;
    max-width:47.5rem;
  }
  .section-title{
    font-size:4.75rem;
  }
  .btn{
    min-height:3.125rem;
    padding:0 1.3125rem;
    gap:.625rem;
    font-size:.8125rem;
  }

  /* Homepage hero */
  .hero{
    min-height:100svh;
    padding-top:7.375rem;
  }
  .hero-grid{
    grid-template-columns:1.07fr .93fr;
    gap:2.5rem;
  }
  .hero-copy{
    padding-left:0;
    transform:none;
  }
  .hero-copy .display,
  .display{
    font-size:9.625rem;
  }
  .hero-copy .lead{
    font-size:1.5rem;
    max-width:47.5rem;
    margin:1.875rem 0 2.125rem;
  }
  .hero-stage{
    min-height:43.75rem;
  }
  .hero-card{
    width:23.875rem;
  }
  .hero-card img{
    max-height:none;
  }
  .hero-orbit{
    width:35rem;
    height:35rem;
  }
  .floating-chip{
    max-width:10.5rem;
    padding:.6875rem .8125rem;
    font-size:.6875rem;
  }
  .hero-product-switcher{
    bottom:1.125rem;
    gap:.75rem;
    padding:.5rem .875rem;
  }
  .hero-product-dot{
    width:.8125rem;
    height:.8125rem;
  }

  /* Homepage / collection cards */
  .products-grid{
    gap:1.5rem;
  }
  .product-card{
    border-radius:1.875rem;
  }
  .product-card__visual{
    height:26.875rem!important;
    min-height:26.875rem!important;
  }
  .product-card__body{
    padding:1.625rem 1.625rem 1.75rem;
  }
  .product-card h3{
    font-size:3rem;
    margin:1rem 0 .75rem;
  }
  .product-card p{
    font-size:1rem;
    line-height:1.6;
  }

  /* General internal-page heroes */
  .page-hero{
    min-height:70svh;
    padding:10.625rem 0 5.625rem;
  }
  .page-hero::after{
    right:-7.5rem;
    top:5rem;
    width:31.25rem;
    height:31.25rem;
    box-shadow:
      0 0 0 4.375rem rgba(255,255,255,.025),
      0 0 0 8.75rem rgba(255,255,255,.018);
  }
  .page-hero .display.small{
    font-size:9.625rem;
  }

  /* Individual product pages */
  .product-hero{
    min-height:100svh;
    padding:8.125rem 0 5rem!important;
  }
  .product-hero-grid{
    grid-template-columns:.9fr 1.1fr!important;
    gap:4.5rem!important;
  }
  .detail-visual{
    min-height:0!important;
  }
  .detail-flip{
    width:21.25rem!important;
    height:auto!important;
    aspect-ratio:2 / 3!important;
  }
  .detail-stack{
    gap:.5rem!important;
  }
  .flip-toggle{
    min-height:2.75rem;
    padding:.625rem .875rem;
    font-size:.625rem;
  }
  .product-copy h1{
    font-size:6.5rem!important;
    margin:1.125rem 0 1.625rem;
  }
  .product-copy .sub{
    font-size:1.375rem!important;
    max-width:43.75rem;
  }
  .fact-row{
    gap:.75rem;
    margin:1.75rem 0;
  }
  .fact-pill{
    padding:.75rem 1rem;
    font-size:.6875rem;
  }
  .detail-price{
    font-size:2.25rem;
  }
  .product-actions{
    gap:.75rem;
  }

  /* Previous / next product controls */
  .product-cycle-arrow{
    min-height:3.375rem;
    max-width:15.625rem;
    padding:.5rem .625rem;
    gap:.625rem;
  }
  .product-cycle-prev{left:1.125rem}
  .product-cycle-next{right:1.125rem}
  .product-cycle-icon{
    width:2.375rem;
    height:2.375rem;
    flex-basis:2.375rem;
  }
  .product-cycle-label small{font-size:.4375rem}
  .product-cycle-label b{font-size:.625rem}

  /* Product detail / science / FAQ sections */
  .detail-grid{
    grid-template-columns:.78fr 1.22fr;
    gap:5rem;
  }
  .science-section-note{
    max-width:19.375rem;
    margin-top:1.125rem;
    font-size:.8125rem;
  }
  .science-transparency-grid{
    gap:.75rem;
  }
  .science-transparency-card{
    min-height:13.125rem;
    padding:1.375rem;
    border-radius:1.25rem;
  }
  .science-transparency-card>b{
    margin-bottom:2.875rem;
    font-size:.5625rem;
  }
  .science-transparency-card h3{
    margin-bottom:.625rem;
    font-size:1.0625rem;
  }
  .science-transparency-card p,
  .batch-proof-card p,
  .science-faq-item p{
    font-size:.75rem;
  }
  .batch-proof-card{
    gap:1.5rem;
    margin-top:.75rem;
    padding:1.375rem;
    border-radius:1.25rem;
  }
  .batch-proof-card h3{
    font-size:1.125rem;
  }
  .batch-proof-status{
    margin-bottom:.625rem;
    padding:.375rem .5625rem;
    font-size:.5rem;
  }
  .evidence-basis{
    gap:.5rem;
    margin-top:.875rem;
  }
  .evidence-basis>span{font-size:.5rem}
  .evidence-basis a{
    gap:.4375rem;
    padding:.5rem .625rem;
    font-size:.5625rem;
  }
  .science-faq-list{
    gap:.5625rem;
  }
  .science-faq-item{
    border-radius:1.125rem;
  }
  .science-faq-item summary{
    min-height:4.25rem;
    padding:1.0625rem 1.1875rem;
    gap:1.125rem;
    font-size:.8125rem;
  }
  .science-faq-item summary span{
    width:1.875rem;
    height:1.875rem;
    flex-basis:1.875rem;
  }
  .science-faq-item>div{
    padding:0 1.1875rem 1.125rem;
  }

  /* About / standards / transparency */
  .standards-grid{
    gap:1.125rem;
  }
  .standard-card{
    min-height:16.25rem;
    padding:1.875rem;
    border-radius:1.5rem;
  }
  .standard-card .icon{font-size:2.625rem}
  .standard-card h3{
    margin:1.75rem 0 .625rem;
    font-size:1.5rem;
  }
  .quote{
    max-width:61.25rem;
    font-size:4.375rem;
  }
  .transparency-roadmap-head{
    gap:3.125rem;
    margin-bottom:2.375rem;
  }
  .transparency-roadmap-head .lead{
    max-width:28.75rem;
  }
  .transparency-roadmap{
    gap:.625rem;
  }
  .transparency-roadmap .transparency-roadmap-card{
    min-height:19.375rem;
    padding:1.375rem 1.25rem 1.25rem;
    border-radius:1.25rem;
  }
  .transparency-roadmap b{font-size:.5625rem}
  .transparency-roadmap-copy{
    padding-top:5.75rem;
  }
  .transparency-roadmap-copy span{
    font-size:1.125rem;
  }
  .transparency-roadmap-copy small{
    margin-top:.625rem;
    font-size:.75rem;
  }

  /* Contact / footer */
  .contact-grid{
    gap:1.5rem;
  }
  .contact-card{
    padding:2.25rem;
    border-radius:1.75rem;
  }
  .contact-card h2{
    font-size:2.125rem;
  }
  .contact-link{
    margin-top:1.5rem;
    font-size:2.875rem;
  }
  .footer{
    font-size:1rem;
  }

  /* Account / admin / checkout get the same spatial rhythm automatically
     through .wrap and rem scaling; enlarge their fixed panels modestly. */
  .auth-card,
  .account-panel,
  .admin-order-card,
  .admin-inventory-panel{
    border-radius:1.5rem;
  }
}

/*
   Extremely wide but short desktop windows (21:9, split-screen, etc.)
   should scale from height rather than width. The root min(vw,vh) rule
   already does this; these limits prevent vertical collisions.
*/
@media (min-width:1921px) and (max-height:900px){
  html{
    font-size:clamp(16px,min(.833333vw,1.481481vh),20px);
  }
  .hero,
  .product-hero{
    min-height:auto;
  }
}
