@font-face{font-family:"ModernGothic Regular";src:url(fs-font-1.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"ModernGothicMono";src:url(fs-font-2.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"FT Base";src:url(fs-font-3.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
:root{--bg:oklch(6.72046% 0.0000000 89.87556);--surface:oklch(25.61533% 0.0000000 89.87556);--fg:oklch(100.00000% 0.0000000 89.87556);--muted:oklch(73.15950% 0.0000000 89.87556);--border:oklch(38.28786% 0.0000000 89.87556);--accent:oklch(37.17163% 0.0142647 269.30249);--display:'ModernGothicMono',monospace;--body:'ModernGothic Regular',sans-serif;--mono:'ModernGothicMono',monospace;--inset:40px}
*{box-sizing:border-box}html{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);scrollbar-width:none}html::-webkit-scrollbar{display:none}body{margin:0}body.scroll-locked{overflow:hidden}button,input{font:inherit}button,a,input{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--fg);outline-offset:6px}a{color:inherit}button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4}[hidden]{display:none!important}::selection{background:var(--fg);color:var(--bg)}.mono{font:12px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.02em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{position:fixed;top:0;left:0;right:0;height:104px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:0 var(--inset);background:var(--bg);z-index:10}.topbar:after{content:'';position:absolute;bottom:0;left:var(--inset);right:var(--inset);height:1px;background:oklch(from var(--fg) l c h / .18)}.brand{justify-self:start;background:transparent;padding:0 6px 11px 0;font:78px/.85 var(--body);letter-spacing:-6px}.brand:hover{transform:translateY(-2px)}.header-link,.back-link{background:transparent;min-height:44px;padding:0 4px;font-size:14px;display:flex;align-items:center;gap:14px}.header-link:hover,.back-link:hover{box-shadow:0 1px var(--fg)}.cart-button{justify-self:end;min-height:44px;background:var(--surface);color:var(--fg);min-width:126px;padding:0 21px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px}.cart-button:hover{background:oklch(from var(--surface) calc(l - .07) c h);color:var(--fg)}.cart-button span:last-child{font:12px var(--mono)}
.stage{position:fixed;inset:0;z-index:1;pointer-events:none}.stage canvas{display:block;width:100%;height:100%}.stage-status{position:absolute;top:30vh;left:30%;font-size:15px;color:var(--muted);max-width:320px}.ambient{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 52% 45%,oklch(20% .026 275 / .44),transparent 58%)}
.shelf{position:relative;padding:146px 0 112px;min-height:100vh;transition:opacity .35s;z-index:2}.collection-intro{position:fixed;top:156px;left:var(--inset);width:180px;pointer-events:none;transition:opacity .25s}.collection-intro .mono{color:var(--muted);font-size:10px;margin:0 0 17px}.collection-intro h1{font:24px/1.15 var(--display);text-transform:uppercase;font-weight:400;letter-spacing:-.04em;margin:0}.shelf-list{width:min(650px,60vw);margin:0 auto;padding:0;list-style:none}.shelf-item{height:330px;position:relative;list-style:none}.shelf-hitbox{position:absolute;inset:0;width:100%;background:transparent;border:0;cursor:pointer;outline-offset:-4px!important}.item-hover{position:absolute;right:1%;bottom:5%;font:11px var(--mono);color:var(--fg);opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;text-transform:uppercase}.shelf-hitbox:hover .item-hover,.shelf-hitbox:focus-visible .item-hover{opacity:1;transform:translateY(0)}.fallback-label{display:none}.scene-unavailable .fallback-label{display:block;font-size:30px}.scene-unavailable .shelf-item{border-bottom:1px solid var(--border)}
.collection-rail{position:fixed;left:var(--inset);top:46%;z-index:5;display:flex;flex-direction:column;gap:4px;transition:opacity .3s}.rail-button{min-height:44px;min-width:65px;padding:0;background:transparent;display:flex;align-items:center;gap:15px;font:11px var(--mono);color:var(--muted)}.rail-button:before{content:'';width:17px;height:1px;background:var(--muted);transition:width .25s}.rail-button.selected{color:var(--fg)}.rail-button.selected:before{width:33px;background:var(--fg)}.rail-button:hover{color:var(--fg)}
.shelf-footer{position:fixed;left:var(--inset);right:var(--inset);bottom:0;height:61px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:6;background:var(--bg);border-top:1px solid oklch(from var(--fg) l c h / .18);transition:opacity .3s}.shelf-footer p{margin:0;font-size:10px;color:var(--muted)}.shelf-footer .scroll-instruction{color:var(--fg);display:flex;gap:14px;align-items:center}.shelf-footer .scroll-instruction span{font-size:18px}.shelf-end{margin:46px auto 0;width:min(650px,60vw);display:flex;justify-content:space-between;color:var(--muted);font-size:10px;border-top:1px solid var(--border);padding-top:20px}.product-open .shelf,.product-open .collection-rail,.product-open .shelf-footer{opacity:0;pointer-events:none}
.product-view{position:fixed;inset:104px 0 0;display:grid;grid-template-columns:52% 48%;z-index:3;pointer-events:none;opacity:0;transition:opacity .35s}.product-open .product-view{opacity:1}.product-visual{position:relative;height:calc(100dvh - 145px);min-height:360px;pointer-events:none}.rotate-zone{position:absolute;inset:12% 16%;pointer-events:auto;cursor:grab;touch-action:pan-y;outline-offset:5px!important}.rotate-zone.dragging{cursor:grabbing}.rotate-hint{position:absolute;bottom:28px;left:0;right:0;text-align:center;font-size:10px;color:var(--muted)}.product-panel{pointer-events:auto;max-height:calc(100dvh - 104px);overflow-y:auto;padding:58px clamp(32px,5vw,90px) 55px 30px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.product-meta{display:flex;justify-content:space-between;color:var(--muted);gap:18px;margin-bottom:21px}.product-title{font:clamp(36px,3.75vw,58px)/1.02 var(--body);font-weight:400;letter-spacing:-.045em;overflow-wrap:anywhere;margin:0 0 18px}.product-class{font-size:16px;color:var(--muted);margin:0 0 30px;line-height:1.5}.product-tabs{display:flex;gap:28px;border-bottom:1px solid var(--border)}.product-tab{padding:0 0 14px;min-height:44px;background:transparent;font-size:14px;position:relative;color:var(--muted)}.product-tab[aria-selected=true]{color:var(--fg)}.product-tab[aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--fg)}.product-tab:hover{color:var(--fg)}.tab-content{min-height:125px;padding:19px 0 18px}.product-description{font-size:16px;line-height:1.55;margin:0;color:var(--fg);text-wrap:pretty}.product-facts{margin:0}.product-facts div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;font-size:14px;line-height:1.45}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0;text-align:right}
.product-purchase{border-top:1px solid var(--border);padding-top:22px}.price-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:19px;align-items:center}.product-price{font-size:19px;margin:0}.unit-label{font-size:11px;color:var(--muted)}.strength-row{display:flex;justify-content:space-between;color:var(--muted);font-size:14px;margin-bottom:22px}.purchase-row{display:grid;grid-template-columns:134px 1fr;gap:12px}.quantity-control{border:1px solid var(--border);display:grid;grid-template-columns:44px 44px 44px;min-height:52px}.quantity-control button{background:transparent;font-size:20px;min-height:50px}.quantity-control button:not(:disabled):hover{background:oklch(from var(--surface) calc(l - .07) c h);color:var(--fg)}.quantity-control input{width:44px;min-width:0;border:0;background:transparent;text-align:center;color:var(--fg);appearance:textfield;-moz-appearance:textfield;font-size:16px}.quantity-control input::-webkit-inner-spin-button{appearance:none}.primary{display:flex;justify-content:space-between;align-items:center;gap:15px;background:var(--fg);color:var(--bg);min-height:52px;padding:0 21px;font-size:15px}.primary:hover{background:var(--fg);color:var(--bg);box-shadow:inset 0 0 0 2px var(--border)}.quantity-error{font-size:13px;color:var(--fg);margin:12px 0 0}.purchase-note{font-size:12px;line-height:1.55;color:var(--muted);margin:16px 0 21px}.source-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:5px;gap:14px}.source-link:hover{color:var(--fg);text-decoration-thickness:2px}.product-concept{font-size:11px;line-height:1.5;color:var(--muted);margin:16px 0 0}
.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,12px);opacity:0;pointer-events:none;background:var(--fg);color:var(--bg);padding:16px 22px;font-size:14px;box-shadow:0 8px 30px oklch(0% 0 0 / .4);z-index:30;transition:opacity .2s,transform .2s;max-width:calc(100vw - 40px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
.cart-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(470px,100%);max-width:100%;height:100dvh;max-height:100dvh;overflow-y:auto;padding:30px;border:1px solid var(--border);background:var(--bg);color:var(--fg);box-shadow:-10px 0 60px oklch(0% 0 0 / .5)}.cart-dialog::backdrop{background:oklch(0% 0 0 / .65);backdrop-filter:blur(5px)}.cart-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:25px}.cart-header h2{font-size:28px;font-weight:400;margin:0;letter-spacing:-.025em}.cart-header h2 span{color:var(--muted);font-size:17px;margin-left:10px}.close-button{width:44px;height:44px;background:var(--surface);display:grid;place-items:center}.close-button:hover{background:var(--fg);color:var(--bg)}.cart-empty{padding:50px 0;font-size:17px;line-height:1.5;color:var(--muted)}.cart-items{list-style:none;padding:0;margin:0}.cart-item{padding:25px 0;border-bottom:1px solid var(--border)}.cart-item-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.cart-item h3{font-size:22px;font-weight:400;margin:0;letter-spacing:-.025em}.text-button{background:transparent;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:12px;padding:0 3px}.text-button:hover{text-decoration-thickness:2px}.cart-item-meta{font-size:12px;color:var(--muted);line-height:1.4;margin:1px 0 20px}.cart-item-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px}.cart-quantity{display:flex;align-items:center;border:1px solid var(--border)}.cart-quantity button{width:44px;height:44px;background:transparent;font-size:19px}.cart-quantity button:not(:disabled):hover{background:var(--surface)}.cart-quantity span{width:32px;text-align:center;font-size:14px}.cart-item-price{font-size:13px;color:var(--muted)}.cart-summary{padding:25px 0 0}.cart-total{display:flex;justify-content:space-between;gap:20px;font-size:16px}.cart-summary p{color:var(--muted);font-size:13px;line-height:1.5}.secondary{border:1px solid var(--border);background:transparent;min-height:50px;width:100%;margin-top:30px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:14px}.secondary:hover{border-color:var(--fg);background:var(--surface);color:var(--fg)}.noscript{position:fixed;inset:104px 0 0;z-index:50;background:var(--bg);padding:60px 10%;font-size:21px;line-height:1.5}
@media(min-width:1700px){:root{--inset:60px}.shelf-list{width:740px}.shelf-item{height:360px}.product-panel{padding-top:80px}.product-title{font-size:64px}}
@media(max-width:1100px){:root{--inset:28px}.collection-intro{width:145px}.collection-intro h1{font-size:20px}.shelf-list{width:64vw}.product-panel{padding:38px 28px 40px 8px}.product-title{font-size:41px}.product-view{grid-template-columns:47% 53%}.primary{padding:0 16px}.product-class{margin-bottom:20px}}
@media(max-width:760px){:root{--inset:20px}.topbar{height:84px;grid-template-columns:1fr auto auto;gap:20px}.brand{font-size:64px;padding-bottom:9px;letter-spacing:-5px}.header-link{display:none}.back-link{font-size:12px;gap:8px}.back-link svg{width:16px}.cart-button{min-width:92px;gap:13px;padding:0 15px;font-size:13px}.shelf{padding:167px 0 110px}.collection-intro{position:absolute;top:108px;left:20px;width:auto;right:20px}.collection-intro .mono{font-size:9px;margin:0 0 10px}.collection-intro h1{font-size:18px;line-height:1}.collection-intro h1 br{display:none}.shelf-list{width:calc(100% - 45px);margin-left:32px}.shelf-item{height:225px}.collection-rail{left:0;top:47%;gap:2px}.rail-button{min-width:44px;width:44px;gap:0;justify-content:center}.rail-button:before{display:none}.rail-button{font-size:9px}.rail-button.selected{font-size:11px}.shelf-footer{height:54px;left:20px;right:20px}.shelf-footer p{font-size:8px}.shelf-footer .footer-prompt{display:none}.shelf-end{width:calc(100% - 65px);margin-left:32px;font-size:9px}.item-hover{font-size:9px;bottom:1%;right:5%}.product-view{top:84px;bottom:0;display:block;overflow-y:auto;pointer-events:auto;padding-bottom:30px}.product-visual{height:300px;min-height:0}.rotate-zone{inset:5% 20% 12%}.rotate-hint{bottom:4px;font-size:9px}.product-panel{max-height:none;overflow:visible;padding:23px 22px 30px;position:relative;background:var(--bg)}.product-title{font-size:40px;margin-bottom:12px}.product-meta{margin-bottom:14px;font-size:10px}.product-class{font-size:14px;margin-bottom:22px}.tab-content{min-height:0;padding-bottom:22px}.product-description{font-size:15px}.product-price{font-size:17px}.product-concept{font-size:11px}.product-open .stage{z-index:2}.product-purchase{padding-top:20px}.toast{bottom:20px;width:max-content}.cart-dialog{padding:23px}}
@media(max-height:700px) and (min-width:761px){.topbar{height:84px}.brand{font-size:64px}.product-view{top:84px}.product-visual{height:calc(100dvh - 110px)}.product-panel{padding-top:25px;max-height:calc(100dvh - 84px)}.product-title{font-size:38px}.product-class{margin-bottom:16px}.product-meta{margin-bottom:12px}.tab-content{min-height:0}.collection-intro{top:128px}.shelf{padding-top:116px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.brand:hover{transform:none}}

/* Captured symbol; inherited black palette and original future lettering. */
.brand {
  --brand-future-font: var(--body);
  --brand-self-font: 'FT Base', sans-serif;
  display: inline-flex;
  align-items: center;
  gap: .22em;
  min-height: 44px;
  padding: 0 6px 6px 0;
  font-size: 60px;
  letter-spacing: -.04em;
}
.brand .brand-mark {
  display: block;
  width: .84828em;
  height: .9em;
  flex: 0 0 auto;
  fill: currentColor;
  stroke: none;
}
.brand-wordmark { display: inline-flex; align-items: baseline; }
.brand-future { font-family: var(--brand-future-font); font-weight: 400; }
/* Trim 10% of FT Base Book's measured .076em stem; retain glyph size and spacing. */
.brand-self { font-family: var(--brand-self-font); font-weight: 300; font-synthesis: none; margin-left: .015em; -webkit-text-stroke: .0076em var(--bg); paint-order: fill stroke; }
@media (max-width: 1100px) { .brand { font-size: 48px; } }
@media (max-width: 760px) {
  .topbar { gap: 12px; }
  .brand { font-size: 40px; padding-bottom: 4px; }
}
@media (max-width: 600px) {
  .brand { font-size: clamp(26px, 8vw, 36px); }
  .back-link { width: 44px; justify-content: center; padding: 0; gap: 0; }
  .back-link svg { width: 20px; }
  .back-label { display: none; }
}
/* fs-mobfix2 */@media (max-width: 420px){.topbar{gap:8px}.cart-button{min-width:70px;padding:0 8px;gap:8px}.topbar .fs-quiz-link{padding:0 8px}}

#fs-variant{width:100%;padding:12px;background:#181818;color:white;border:1px solid #555;margin:12px 0;font:inherit}.primary:disabled{opacity:.45;cursor:not-allowed}.fs-empty{padding:140px 40px}a.primary{display:flex;text-decoration:none}.shelf-hitbox{color:inherit}.fs-policy-links{display:flex;gap:16px;flex-wrap:wrap}.fs-policy-links a{color:inherit}.fs-preview-note{color:#aaa;font-size:12px}.cart-item-price{white-space:nowrap}

/* site footer (snippet fs-footer) */
.fs-footer{position:relative;z-index:2;margin:0 var(--inset) 61px;padding:48px 0 28px;border-top:1px solid oklch(from var(--fg) l c h / .18);color:var(--fg)}
.fs-footer-inner{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:32px}
.fs-footer-wordmark{font:44px/.9 var(--body);letter-spacing:-3px;color:inherit;text-decoration:none}
.fs-footer-tag,.fs-footer-note{color:var(--muted);font-size:13px;line-height:1.5;max-width:34ch;margin:14px 0 0}
.fs-footer-col{display:flex;flex-direction:column;gap:10px}
.fs-footer-col a{color:inherit;text-decoration:none;font-size:14px;width:max-content}
.fs-footer-col a:hover{box-shadow:0 1px var(--fg)}
.fs-footer-heading{margin:0 0 4px}
.fs-footer-legal{margin:36px 0 0;color:var(--muted)}
.product-open .fs-footer{display:none}
.fs-cat-link{font-size:13px;opacity:.85}
.fs-cat-link[aria-current="page"]{box-shadow:0 1px var(--fg);opacity:1}
.topbar>div{display:flex;flex-wrap:wrap;gap:0 4px}
@media(max-width:900px){.fs-cat-link{display:none}.fs-footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.fs-footer-inner{grid-template-columns:1fr}.fs-footer{margin-bottom:70px}}

.topbar a.header-link{text-decoration:none;color:inherit}

/* Quiz nav button — mirrors the cart button, brand green */
.topbar .fs-quiz-link,.topbar a.fs-quiz-link{min-height:44px;background:#1f7a5c;color:#fff;border:1px solid #1f7a5c;min-width:92px;padding:0 15px;margin:0 6px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.01em;box-shadow:none;text-decoration:none}
.topbar .fs-quiz-link:after{content:'→';font-size:14px}
.topbar .fs-quiz-link:hover{background:#16634a;border-color:#16634a;box-shadow:none;color:#fff}
.topbar .fs-quiz-link.fs-nav-current{background:#0f4e39;border-color:#0f4e39;text-decoration:none}

/* quiz next to cart */
.topbar{grid-template-columns:1fr auto auto auto}
.topbar .fs-quiz-link,.topbar a.fs-quiz-link{justify-self:end;margin:0}
@media(max-width:600px){.topbar .fs-quiz-link{min-width:0;padding:0 12px}}
/* nav true-center: cats absolutely centered, quiz+cart stay right */
.topbar .fs-cats{position:absolute;left:50%;transform:translateX(-50%);justify-self:auto}
@media(max-width:900px){.topbar .fs-cats{position:static;transform:none}}
/* nav: kill hover line on links */
.topbar .header-link:hover,.topbar .header-link:focus-visible,.topbar a.header-link:hover,.topbar .fs-cat-link:hover,.topbar .fs-cat-link:focus-visible{box-shadow:none!important;outline:none!important;opacity:.75}

/* mobile category chips (sticky under nav) */
.fs-mcats{display:none}
@media(max-width:900px){
  .fs-mcats{display:flex;gap:8px;overflow-x:auto;position:fixed;top:104px;left:0;right:0;z-index:9;background:var(--bg,#070707);padding:10px 16px 12px;border-bottom:1px solid rgba(255,255,255,.14);-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .fs-mcats::-webkit-scrollbar{display:none}
  .fs-mcats a{flex:0 0 auto;display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:12px;color:inherit;text-decoration:none;background:#141414;letter-spacing:.02em}
  .fs-mcats a[aria-current=page]{background:#fff;color:#151515;border-color:#fff}
  .shelf{padding-top:236px}
  .collection-intro{top:172px}
}
@media(max-width:760px){.fs-mcats{top:84px}}
/* center chips when they fit */
@media(max-width:900px){.fs-mcats{justify-content:safe center}}

/* ===== topbar fit at <=600px (cart was +14px past edge at 390) ===== */
@media (max-width: 600px){
  :root{--inset:14px}
  .topbar .fs-quiz-link{padding:0 10px}
  .cart-button{min-width:78px;padding:0 10px;gap:8px}
}

/* mobile sideways-lock: clip preferred (keeps sticky), hidden fallback */
html,body{overflow-x:hidden;overflow-x:clip}

/* Original FutureSelf RX lockup shared with checkout. */
.topbar .brand{width:280px;max-width:100%;padding:0;gap:0;min-width:0;line-height:1}
.fs-footer-wordmark{display:block;width:260px;max-width:100%;letter-spacing:normal}
@media(max-width:1100px){.topbar .brand{width:230px}}
@media(max-width:760px){.topbar .brand{width:200px}}
@media(max-width:600px){.topbar .brand{width:clamp(130px,42vw,180px)}}

/* Photographic collection shelf */
[data-realistic-collection] .stage{display:none}[data-realistic-collection] .fs-realistic-product{display:block;width:100%;height:100%;object-fit:cover;mix-blend-mode:lighten;transition:transform .3s ease}[data-realistic-collection] .shelf-hitbox{overflow:hidden;display:block}[data-realistic-collection] .shelf-hitbox:hover .fs-realistic-product{transform:scale(1.025)}[data-realistic-collection] .fallback-label{display:none!important}[data-realistic-collection] .item-hover{opacity:1;transform:none;right:7%;bottom:8%;z-index:2}[data-realistic-collection] .shelf-item{isolation:isolate}[data-realistic-collection] .shelf-end{font-size:10px}@media(prefers-reduced-motion:reduce){[data-realistic-collection] .fs-realistic-product{transition:none}}

/* Footer gained a 5th column (Legal) 2026-09-22; the base grid is
   `1.6fr repeat(3,1fr)`. Only widen above the 900px breakpoint so the
   existing 2-column mobile layout is untouched. */
@media(min-width:901px){
  .fs-footer-inner{ grid-template-columns: 1.4fr repeat(4, 1fr); gap: 26px; }
}
