/* STNK website v2. Dark ground, one accent that follows the chosen scent, calm motion. */
:root{
  --bg:#0d0c10; --bg-2:#17151c; --ink:#f3f0ea; --ink-soft:#bdb6c8; --line:rgba(243,240,234,.14);
  --tin:#b0168f; --acc:#b6ff3b; --acc-ink:#0d0c10;
  --display:"Archivo",system-ui,sans-serif; --mono:"JetBrains Mono",ui-monospace,monospace;
  --pad:clamp(16px,4vw,56px); --ease:cubic-bezier(.16,1,.3,1);
}
body[data-tin="teal"]{--tin:#19b6d2; --acc:#ff4fb0}
body[data-tin="lime"]{--tin:#72e01c; --acc:#9a8bff}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);color-scheme:dark}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--bg);color:var(--ink);font-family:var(--display);font-variation-settings:"wdth" 100;font-size:clamp(16px,1.1vw,18px);line-height:1.6;letter-spacing:.005em;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::selection{background:var(--acc);color:var(--acc-ink)}
a{color:inherit}
img,video{display:block;max-width:100%}
button{font:inherit;color:inherit;cursor:pointer}
.mono{font-family:var(--mono);font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase}
.acc{color:var(--acc);transition:color .6s var(--ease)}
figure{margin:0}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--pad);transition:background-color .4s,backdrop-filter .4s}
.nav.is-solid{background:rgba(13,12,16,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line)}
.nav__logo{display:flex;align-items:center;gap:6px;font-weight:900;font-style:italic;font-size:28px;letter-spacing:-.03em;text-decoration:none;font-variation-settings:"wdth" 110}
.nav__logo svg{width:16px;height:16px;color:var(--acc);transform:translateY(-8px)}
.nav__links{display:flex;gap:clamp(24px,2.4vw,44px)}
.nav__links a{text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:800;font-size:clamp(16px,1.1vw,19px);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 1px 12px rgba(0,0,0,.6);transition:color .2s}
.nav__links a:hover{color:var(--acc)}
@media (max-width:760px){.nav__links{display:none}}

/* buttons: big, solid, easy to hit */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 26px;border-radius:999px;background:var(--acc);color:var(--acc-ink);font-family:var(--display);font-weight:800;font-size:1rem;letter-spacing:.01em;text-transform:uppercase;text-decoration:none;border:2px solid var(--acc);box-shadow:5px 5px 0 var(--ink);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .6s var(--ease),border-color .6s var(--ease)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}
.btn svg{width:16px;height:16px;flex:none}
.btn--big{padding:22px 38px;font-size:clamp(17px,1.25vw,20px)}
.btn--wide{width:100%}
.btn--nav{padding:13px 22px;font-size:.92rem;box-shadow:none}
.btn--nav:hover{box-shadow:none}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink);box-shadow:none}
.btn--ghost:hover{box-shadow:none;background:rgba(243,240,234,.1)}

/* scent chips */
.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;border-radius:999px;border:1.5px solid var(--line);background:rgba(13,12,16,.6);font-family:var(--mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;transition:border-color .3s}
.chip i{width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7 0,transparent 45%),var(--c);box-shadow:inset -3px -4px 6px #0005}
.chip[aria-pressed="true"]{border-color:var(--ink)}

/* hero */
.hero{position:relative;height:100svh;min-height:620px;overflow:hidden;display:flex;align-items:flex-end}
.hero__media{position:absolute;inset:0}
.hero__media video{width:100%;height:100%;object-fit:cover}
.hero__band{position:absolute;inset:auto 0 0 0;height:78%;background:linear-gradient(to top,rgba(13,12,16,.94) 0,rgba(13,12,16,.74) 40%,rgba(13,12,16,0) 100%);pointer-events:none}
.hero__copy{position:relative;padding:0 var(--pad) clamp(44px,9vh,96px);max-width:1180px}

/* type */
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--ink-soft);margin-bottom:22px}
.eyebrow svg{width:12px;height:12px;color:var(--acc);flex:none}
.h-xl{font-weight:900;font-size:clamp(52px,8.6vw,156px);line-height:.9;letter-spacing:-.045em;font-variation-settings:"wdth" 82;text-wrap:balance;text-transform:uppercase}
.h-l{font-weight:900;font-size:clamp(44px,6.4vw,112px);line-height:.92;letter-spacing:-.04em;font-variation-settings:"wdth" 82;text-wrap:balance;text-transform:uppercase}
.h-m{font-weight:800;font-size:clamp(30px,3.6vw,60px);line-height:.98;letter-spacing:-.03em;font-variation-settings:"wdth" 90;text-wrap:balance}
.lede{font-size:clamp(17px,1.35vw,21px);line-height:1.55;color:var(--ink-soft);max-width:44ch;text-wrap:pretty;margin-top:22px;font-weight:450}
.cta-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:36px}
@media (max-width:700px){.h-xl{font-size:clamp(42px,12.4vw,68px)}.h-l{font-size:clamp(38px,11vw,60px)}.btn--big{padding:20px 30px}}

/* stage: pinned 3D tin with four beats */
.stage{position:relative;height:420vh}
.stage__pin{position:sticky;top:0;height:100svh;overflow:hidden}
.stage__canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab}
.stage__canvas:active{cursor:grabbing}
.haze{position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 48% at 50% 55%,color-mix(in srgb,var(--tin) 28%,transparent),transparent 72%);transition:background .8s}
.beat{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(40px,9vh,96px);max-width:760px;pointer-events:none}
.beat .chips{pointer-events:auto}
.beat--right{left:auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.beat--right .lede{margin-left:auto}
.beat__n{color:var(--acc);margin-bottom:14px}
.stage__progress{position:absolute;left:var(--pad);top:96px;display:flex;gap:6px}
.stage__progress i{width:28px;height:3px;background:var(--line);overflow:hidden;position:relative}
.stage__progress i b{position:absolute;inset:0;background:var(--acc);transform:scaleX(0);transform-origin:left}
@media (max-width:760px){.beat{bottom:28px}.beat--right{left:var(--pad);text-align:left;align-items:flex-start}.beat--right .lede{margin-left:0}}

/* marquee tape */
.marquee{border-block:2px solid var(--ink);background:var(--acc);color:var(--acc-ink);overflow:hidden;white-space:nowrap;transform:rotate(-2deg) scale(1.04);margin:60px 0;transition:background .6s}
.marquee__track{display:inline-flex;padding:18px 0;font-weight:900;font-size:clamp(22px,2.8vw,40px);letter-spacing:-.02em;text-transform:uppercase;font-variation-settings:"wdth" 75}
.marquee__track span{display:inline-flex;align-items:center;gap:28px;padding-right:28px}
.marquee__track svg{width:.7em;height:.7em}

/* sections */
.sec{position:relative;padding:clamp(96px,12vw,180px) var(--pad) clamp(48px,6vw,96px)}
.sec__head{margin-bottom:clamp(36px,5vw,72px);max-width:1100px}

/* story */
.story__grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(40px,7vw,140px);align-items:start;border-top:2px solid var(--line);padding-top:clamp(40px,5vw,80px)}
.story__head{position:sticky;top:120px}
.story__body{display:grid;gap:clamp(20px,2vw,32px)}
.story__body p{font-size:clamp(19px,1.75vw,32px);line-height:1.45;color:var(--ink-soft);text-wrap:pretty;letter-spacing:-.005em}
.story__body .story__lead{color:var(--ink);font-weight:600;font-size:clamp(22px,2.2vw,42px);line-height:1.3;letter-spacing:-.015em}
.story__sign{display:flex;align-items:baseline;gap:16px;margin-top:clamp(28px,3vw,48px)}
.story__name{font-weight:900;font-style:italic;font-size:clamp(40px,4vw,72px);letter-spacing:-.03em;color:var(--acc);font-variation-settings:"wdth" 110;transition:color .6s}
.story__sign .mono{color:var(--ink-soft);font-size:clamp(12px,.9vw,15px)}
@media (max-width:860px){.story__grid{grid-template-columns:1fr;gap:0}.story__head{display:contents}.story__body{order:2;margin-top:28px}.story__sign{order:3}}

/* quiz */
.quiz__card{position:relative;border:2px solid var(--line);border-radius:16px;background:var(--bg-2);padding:clamp(24px,5vw,88px);overflow:hidden;min-height:clamp(420px,46vw,640px);display:flex;flex-direction:column;justify-content:center}
.quiz__bar{position:absolute;left:0;right:0;top:0;height:6px;background:var(--line)}
.quiz__bar b{display:block;height:100%;width:0;background:var(--acc);transition:width .5s var(--ease),background-color .6s}
.quiz__n{color:var(--acc);margin-bottom:18px;font-size:clamp(13px,1vw,16px)}
.quiz__q{font-weight:900;font-size:clamp(34px,5vw,96px);line-height:1;letter-spacing:-.035em;text-transform:uppercase;font-variation-settings:"wdth" 82;text-wrap:balance}
.quiz__opts{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.2vw,18px);margin-top:clamp(28px,3vw,48px)}
.quiz__opt{display:flex;align-items:center;gap:14px;text-align:left;padding:clamp(22px,1.8vw,32px) clamp(24px,2vw,36px);border-radius:999px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font-weight:700;font-size:clamp(18px,1.6vw,28px);line-height:1.25;transition:border-color .2s,background-color .2s,transform .2s var(--ease)}
.quiz__opt:hover{border-color:var(--acc);transform:translateY(-2px)}
.quiz__opt b{font-family:var(--mono);font-size:clamp(14px,1vw,18px);color:var(--acc);flex:none}
.quiz__back{margin-top:26px;align-self:flex-start;background:none;border:0;color:var(--ink-soft);text-decoration:underline;text-underline-offset:4px;font-size:clamp(16px,1.1vw,19px)}
.quiz__result{display:grid;grid-template-columns:minmax(0,.8fr) 1.2fr;gap:clamp(24px,4vw,56px);align-items:center}
.quiz__result img{width:100%;max-height:72vh;border-radius:10px;aspect-ratio:4/5;object-fit:cover}
.quiz__name{font-weight:900;font-size:clamp(48px,7vw,136px);line-height:.92;letter-spacing:-.04em;text-transform:uppercase;font-variation-settings:"wdth" 80;color:var(--acc);margin-top:8px}
.quiz__why{font-size:clamp(19px,1.8vw,30px);line-height:1.45;color:var(--ink-soft);margin-top:20px;max-width:36ch}
.quiz__result .cta-row{margin-top:30px}
@media (max-width:760px){.quiz__opts{grid-template-columns:1fr}.quiz__result{grid-template-columns:1fr}.quiz__result img{max-width:320px}}

/* left out */
.out{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.out__list{list-style:none;margin-top:36px}
.out__list li{position:relative;font-weight:900;font-size:clamp(44px,7vw,120px);line-height:.98;letter-spacing:-.045em;text-transform:uppercase;font-variation-settings:"wdth" 70;width:max-content;max-width:100%}
.out__list li svg{position:absolute;left:-3%;top:42%;width:106%;height:.34em;overflow:visible;color:var(--acc)}
.out__list li svg path{stroke:currentColor;stroke-width:10;fill:none;stroke-linecap:round;transition:stroke .6s}
.out__list li.keep{color:var(--acc)}
.out__note{color:var(--ink-soft);max-width:40ch;margin-top:28px}
.out__img{border-radius:8px;overflow:hidden;aspect-ratio:4/5}
.out__img img{width:100%;height:100%;object-fit:cover}
@media (max-width:860px){.out{grid-template-columns:1fr}}

/* scents: Byoma-style solid cards */
.scents{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,22px)}
.scent{display:flex;flex-direction:column;text-align:left;border:0;border-radius:10px;overflow:hidden;background:var(--c);color:#fff;padding:0 0 22px;outline:3px solid transparent;outline-offset:4px;transition:transform .5s var(--ease),outline-color .3s}
.scent:hover{transform:translateY(-6px)}
.scent[aria-pressed="true"]{outline-color:var(--ink)}
.scent__img{display:block;aspect-ratio:4/5;overflow:hidden}
.scent__img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.scent:hover .scent__img img{transform:scale(1.04)}
.scent__name{display:block;font-weight:900;font-size:clamp(28px,2.6vw,42px);letter-spacing:-.03em;text-transform:uppercase;font-variation-settings:"wdth" 78;padding:20px 22px 0;line-height:1}
.scent__line{display:block;padding:8px 22px 0;font-size:1.02rem;opacity:.92}
.scent__pick{display:inline-block;margin:18px 22px 0;padding:10px 16px;border:1.5px solid currentColor;border-radius:999px;align-self:flex-start}
.scent[aria-pressed="true"] .scent__pick{background:#fff;color:var(--c);border-color:#fff}
.scent[data-set-tin="teal"]{color:#1b1712}
.scent[data-set-tin="teal"][aria-pressed="true"] .scent__pick{background:#1b1712;color:#efe2cb;border-color:#1b1712}
@media (max-width:860px){.scents{grid-template-columns:1fr}}

/* refill loop */
.forever{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.forever__img{border-radius:8px;overflow:hidden;aspect-ratio:4/5}
.forever .eyebrow{font-size:1.1rem}
.forever__img img{width:100%;height:100%;object-fit:cover}
.steps{list-style:none;margin-top:36px;border-top:1.5px solid var(--line)}
.steps li{display:grid;grid-template-columns:64px 1fr;gap:12px;padding:28px 0;border-bottom:1.5px solid var(--line)}
.steps b{font-family:var(--mono);color:var(--acc);font-size:1.2rem;padding-top:6px}
.steps strong{display:block;font-size:clamp(22px,1.75vw,28px);font-weight:800;letter-spacing:-.01em;line-height:1.2}
.steps span{color:var(--ink-soft);font-size:clamp(18px,1.6vw,26px);line-height:1.45;display:block;margin-top:4px}
@media (max-width:860px){.forever{grid-template-columns:1fr}}

/* spotted: real photos */
.spotted{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(12px,1.6vw,22px);align-items:start}
.spotted figure{border-radius:8px;overflow:hidden}
.spotted img{width:100%;height:100%;object-fit:cover}
.spotted__a{aspect-ratio:1164/1351}
.spotted__b{aspect-ratio:1086/1448;margin-top:clamp(0px,8vw,120px)}
@media (max-width:760px){.spotted{grid-template-columns:1fr}.spotted__b{margin-top:0}}

/* list */
.sec--list{background:var(--bg-2);border-top:1.5px solid var(--line);margin-top:clamp(48px,6vw,96px);padding-bottom:clamp(96px,12vw,160px)}
.list{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,6vw,96px);align-items:end}
.form{display:grid;gap:16px}
.form__fields{display:grid;gap:16px}
.field{display:grid;gap:8px}
.field label,.pick legend{color:var(--ink);font-weight:800;font-size:clamp(17px,1.3vw,20px);letter-spacing:-.01em}
.pick{border:0;padding:0;margin:0;min-width:0}
.pick legend{margin-bottom:10px;padding:0}
.pick__opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pick__opt{position:relative;display:flex;align-items:center;gap:12px;padding:18px 20px;border-radius:999px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font-weight:700;font-size:clamp(16px,1.2vw,19px);cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.pick__opt input{position:absolute;opacity:0;pointer-events:none}
.pick__opt i{width:24px;height:24px;flex:none;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7 0,transparent 45%),var(--c);box-shadow:inset -3px -4px 6px #0005}
.pick__opt--all i{background:conic-gradient(#b0168f 0 33%,#19b6d2 0 66%,#72e01c 0)}
.pick__opt:hover{border-color:var(--ink-soft)}
.pick__opt:has(input:checked){border-color:var(--acc);background:color-mix(in srgb,var(--acc) 14%,var(--bg))}
.pick__opt:has(input:focus-visible){outline:2px solid var(--acc);outline-offset:3px}
@media (max-width:520px){.pick__opts{grid-template-columns:1fr}}
.field input{appearance:none;width:100%;padding:22px 24px;border-radius:999px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:clamp(18px,1.35vw,21px);transition:border-color .2s}
.field input::placeholder{color:#8f879c}
.field input:focus{outline:none;border-color:var(--acc)}
.form__ok{display:none;font-weight:800;font-size:1.6rem}
.form.is-sent .form__ok{display:block}
.form.is-sent .form__fields{display:none}
.fine{color:var(--ink-soft);font-size:1rem}
.form__err{color:#ff8a8a;font-weight:700;font-size:1.05rem}
.btn:disabled{opacity:.6;pointer-events:none}
@media (max-width:860px){.list{grid-template-columns:1fr}}

/* footer */
.foot{position:relative;padding:60px var(--pad) 28px;overflow:hidden;border-top:1.5px solid var(--line)}
.foot__mark{font-weight:900;font-style:italic;font-size:clamp(120px,28vw,500px);line-height:.8;letter-spacing:-.07em;font-variation-settings:"wdth" 125;color:var(--acc);transition:color .6s;white-space:nowrap}
.foot__row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--ink-soft);margin-top:24px}

[data-reveal]{opacity:0;transform:translateY(30px)}
.is-loading [data-intro]{opacity:0}
@media (prefers-reduced-motion:reduce){[data-reveal],.is-loading [data-intro]{opacity:1;transform:none}}
