:root{
  --blood:#790d1a;
  --black:#000;
  --paper:#ebe9e0;
  --gold:#b49b64;
  --white:#efefec;
  --line:#282828;
  --muted:#a3a3a0;
  --display:Impact,'Arial Narrow',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#000;color:var(--white);font:16px/1.6 Arial,Helvetica,sans-serif}
#skol-experience{background:#000;isolation:isolate;padding-bottom:72px}
a{color:inherit;text-decoration:none}
button,a{touch-action:manipulation}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:none;padding:0}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.98;letter-spacing:-.02em}
p{color:#b8b8b5}
.eyebrow{font:11px/1.5 Arial;letter-spacing:.13em;color:var(--muted);text-transform:uppercase}
.eyebrow.gold{color:var(--gold)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.skip{position:fixed;left:10px;top:-100px;background:#fff;color:#000;z-index:200;padding:10px}
.skip:focus{top:10px}

.announcement{
  background:var(--blood);color:#fff;text-align:center;
  font-size:10px;line-height:1.65;padding:9px 14px;font-weight:700;letter-spacing:.025em;
  transition:background .35s;
}
.announcement span{display:block}
.announcement.is-unlocked{background:#5a0a12}
#skol-experience[data-offer-revealed="true"] .announcement{
  background:var(--blood);
}

/* —— Hero teaser / reveal —— */
.hero{
  padding:36px 18px 28px;text-align:center;scroll-margin-top:8px;
  background:radial-gradient(ellipse at 50% 0%,#790d1a33,transparent 55%),#000;
  min-height:min(72vh,640px);display:flex;flex-direction:column;justify-content:center;
}
.hero .eyebrow{margin-bottom:14px}
.hero h1{font-size:clamp(40px,11vw,84px);margin:0 0 18px}
.hero h1 i{font-style:normal;color:var(--gold)}
.hero-sub{font-size:15px;line-height:1.55;max-width:340px;margin:0 auto 14px;color:#d0d0cc}
.hero-disclaimer{
  font-size:12px;line-height:1.5;color:var(--gold);
  max-width:340px;margin:0 auto 18px;padding:10px 12px;
  border:1px solid #5a4a2e;background:#120f0a;
}
.rating-link{
  font-size:11px;display:flex;gap:8px;align-items:center;justify-content:center;
  flex-wrap:wrap;margin:0 auto 22px;color:#c8c8c4;
}
.stars{color:#ddb900;letter-spacing:2px;font-size:14px}
.hero-cta,.hero-reveal-btn{max-width:340px;margin:0 auto}
.reveal-hint{font-size:11px;color:#777;margin-top:14px}

.hero-teaser{animation:fade-in .45s ease}
.hero-reveal[hidden]{display:none}
.hero-reveal:not([hidden]){animation:reveal-in .7s cubic-bezier(.16,1,.3,1) both}

.unlock-stage{
  display:flex;justify-content:center;margin:0 auto 20px;perspective:800px;
}
.unlock-card{
  position:relative;width:140px;height:140px;
  border:1px solid var(--gold);background:#0c0a06;
  display:flex;align-items:center;justify-content:center;
  animation:card-flip .85s cubic-bezier(.16,1,.3,1) both;
  box-shadow:0 0 40px #b49b6433,0 12px 32px #000a;
}
.unlock-bottle{width:100%;height:100%;object-fit:contain;padding:10px}
.unlock-stamp{
  position:absolute;top:8px;right:-6px;z-index:2;
  font:700 9px/1 Arial;letter-spacing:.12em;color:#000;background:var(--gold);
  padding:5px 8px;transform:rotate(12deg);
  animation:stamp-in .5s .45s cubic-bezier(.2,1.4,.4,1) both;
}

@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes reveal-in{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
@keyframes card-flip{
  0%{transform:rotateY(-90deg) scale(.7);opacity:0;filter:brightness(.4)}
  55%{transform:rotateY(8deg) scale(1.04);opacity:1;filter:brightness(1.15)}
  100%{transform:rotateY(0) scale(1);opacity:1;filter:brightness(1)}
}
@keyframes stamp-in{
  0%{transform:rotate(12deg) scale(2.2);opacity:0}
  70%{transform:rotate(12deg) scale(.92);opacity:1}
  100%{transform:rotate(12deg) scale(1);opacity:1}
}

.button{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 18px;min-height:52px;font-weight:700;font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;width:100%;
  border:1px solid #454545;transition:background .2s,border-color .2s,color .2s;
}
.primary{background:var(--blood);border-color:var(--blood);color:#fff}
.primary:hover{background:#951126}
.ghost{
  background:transparent;border-color:#555;color:#ddd;
}
.ghost:hover{border-color:var(--gold);color:var(--gold)}

/* —— Interactive steps —— */
.offer-strip{
  padding:28px 18px 32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  scroll-margin-top:12px;
}
.offer-strip .eyebrow{margin-bottom:12px;text-align:center}
.how-title{
  text-align:center;font-size:clamp(32px,9vw,56px);margin:0 auto 22px;max-width:420px;
}
.how-title i{font-style:normal;color:var(--gold)}
.steps-interactive{
  display:grid;gap:10px;max-width:480px;margin:0 auto 16px;
}
.step-tab{
  display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;text-align:left;
  padding:14px;border:1px solid #333;background:#080808;width:100%;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.step-tab strong{font:28px/1 var(--display);color:#555;transition:color .2s}
.step-tab span{font-size:14px;color:#aaa;line-height:1.35}
.step-tab.is-active{
  border-color:var(--gold);background:#120f0a;
  box-shadow:inset 0 0 0 1px #b49b6433;
}
.step-tab.is-active strong{color:var(--gold)}
.step-tab.is-active span{color:#eee}
.step-tab:hover{border-color:#555}

.step-panels{max-width:480px;margin:0 auto}
.step-panel{
  padding:18px 16px;border:1px solid #3a3220;background:linear-gradient(180deg,#14110c,#080808);
  animation:fade-in .3s ease;
}
.step-panel[hidden]{display:none}
.step-panel-kicker{
  font:11px/1.4 Arial;letter-spacing:.12em;color:var(--gold);text-transform:uppercase;margin-bottom:8px;
}
.step-panel h3{font-size:clamp(24px,7vw,32px);margin-bottom:10px;line-height:1.05}
.step-panel p{font-size:14px;line-height:1.55;color:#c8c8c4}

/* —— Products —— */
.products{padding:40px 18px 20px;scroll-margin-top:10px}
.products .eyebrow{margin-bottom:10px}
.products h2{font-size:clamp(40px,11vw,72px);margin-bottom:12px}
.section-lead{font-size:14px;max-width:380px;margin-bottom:28px;line-height:1.55}

.product-stack{display:grid;gap:22px;max-width:480px}
.product-card{
  position:relative;border:1px solid #333;background:#080806;
  display:grid;grid-template-rows:auto 1fr;
  box-shadow:0 10px 28px #0008;
}
.product-badge{
  position:absolute;top:12px;left:12px;z-index:2;
  background:var(--blood);color:#fff;
  font:700 10px/1 Arial;letter-spacing:.06em;text-transform:uppercase;
  padding:8px 10px;border:1px solid #a31a2a;
  box-shadow:0 4px 14px #0008;
}
.product-media{
  display:block;background:#0c0c0a;aspect-ratio:1;overflow:hidden;
  border-bottom:1px solid #2a2a28;
}
.product-media img{
  width:100%;height:100%;object-fit:contain;object-position:center;
  transition:transform .35s ease;
}
.product-card:hover .product-media img{transform:scale(1.03)}
.product-body{padding:18px 16px 16px;display:flex;flex-direction:column;gap:8px}
.product-body h3{font-size:clamp(28px,8vw,36px);line-height:1}
.benefit{font-size:13px;color:#b8b8b5;line-height:1.45}
.price{
  font:700 18px/1.2 Arial;color:var(--gold);letter-spacing:.02em;
  margin:4px 0 0;
}
.microcopy{
  font-size:12px;color:var(--gold);letter-spacing:.02em;margin:0 0 6px;
}
.product-actions{display:grid;gap:8px;margin-top:auto}

.trust{padding:48px 18px 36px;border-top:1px solid var(--line)}
.trust .eyebrow{margin-bottom:10px}
.trust h2{font-size:clamp(42px,12vw,80px);margin-bottom:22px}
.usp-list{list-style:none;margin:0;padding:0;display:grid;gap:16px;max-width:480px}
.usp-list li{
  padding:18px 16px;border:1px solid #333;background:#080808;
  display:grid;gap:8px;
}
.usp-list strong{
  font:700 13px/1.35 Arial;letter-spacing:.04em;text-transform:uppercase;color:#eee;
}
.usp-list span{font-size:14px;line-height:1.55;color:#b8b8b5}
.trust-flex{
  margin-top:22px;font-size:13px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;
  color:#c8c8c4;
}

.faq{padding:36px 18px 40px;border-top:1px solid var(--line)}
.faq .eyebrow{margin-bottom:10px}
.faq h2{font-size:clamp(40px,11vw,72px);margin-bottom:22px}
.faq-list{max-width:520px;display:grid;gap:0}
.faq-list details{border-top:1px solid #333}
.faq-list details:last-child{border-bottom:1px solid #333}
.faq-list summary{
  cursor:pointer;list-style:none;padding:16px 4px;
  font:700 14px/1.4 Arial;color:#eee;display:flex;justify-content:space-between;gap:12px;
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';color:var(--gold);font:22px/1 var(--display)}
.faq-list details[open] summary::after{content:'–'}
.faq-list details p{padding:0 4px 16px;font-size:14px;line-height:1.6;color:#b8b8b5}

.finish{padding:48px 18px 100px;text-align:center}
.finish .eyebrow{margin-bottom:12px}
.finish h2{font-size:clamp(48px,14vw,100px);margin:0 0 16px}
.finish>p{max-width:340px;margin:0 auto 24px;font-size:15px}
.finish .button{max-width:340px;margin:0 auto 20px}
.preview-footnote{font-size:10px;color:#777;margin-top:8px}

/* —— Sticky dock —— */
.signature-dock{
  position:fixed;bottom:0;left:0;right:0;background:#000e;
  border-top:1px solid #333;padding:10px 18px calc(10px + env(safe-area-inset-bottom));
  z-index:40;backdrop-filter:blur(10px);
  transition:transform .25s,opacity .25s;
}
.signature-dock a{
  display:flex;align-items:center;justify-content:space-between;
  max-width:540px;margin:auto;min-height:34px;font-size:12px;
  letter-spacing:.07em;font-weight:bold;
}
.signature-dock span{font-size:20px}
.signature-dock.is-hidden{transform:translateY(110%);opacity:0;pointer-events:none}
.signature-dock[data-state="unlocked"] a{color:#fff}
.signature-dock[data-state="unlocked"] #dock-label{color:#fff}
.signature-dock[data-state="unlocked"] #dock-arrow{color:var(--gold)}

/* —— Cart sheet —— */
.cart-sheet-backdrop{
  position:fixed;inset:0;background:#000a;z-index:50;
  animation:fade-in .25s ease;
}
.cart-sheet-backdrop[hidden],.cart-sheet[hidden]{display:none}
.cart-sheet{
  position:fixed;left:0;right:0;bottom:0;z-index:51;
  max-height:min(88vh,720px);overflow:auto;
  background:#0a0a08;border-top:1px solid var(--gold);
  border-radius:16px 16px 0 0;
  padding:8px 18px calc(24px + env(safe-area-inset-bottom));
  box-shadow:0 -20px 60px #000c;
  animation:sheet-up .4s cubic-bezier(.16,1,.3,1);
}
@keyframes sheet-up{
  from{transform:translateY(100%)}
  to{transform:none}
}
.cart-sheet-handle{
  width:40px;height:4px;border-radius:2px;background:#444;margin:6px auto 12px;
}
.cart-sheet-head{
  display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;
}
.cart-sheet-head h2{font-size:clamp(32px,9vw,44px);margin-top:4px}
.cart-close{
  width:40px;height:40px;border:1px solid #444;font-size:24px;line-height:1;color:#ccc;
  flex-shrink:0;
}
.cart-close:hover{border-color:var(--gold);color:var(--gold)}
.cart-preview-note{
  font-size:12px;color:#999;line-height:1.45;margin-bottom:18px;
  padding:10px 12px;border:1px dashed #444;background:#111;
}
.cart-line{
  display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;
  padding:14px 0;border-bottom:1px solid #2a2a28;
}
.cart-line img{
  width:72px;height:72px;object-fit:contain;background:#111;border:1px solid #333;
}
.cart-line strong{display:block;font:700 14px/1.3 Arial;color:#eee;margin-bottom:4px}
.cart-line span{font-size:13px;color:var(--gold)}
.cart-line-free{align-items:start;border:1px solid #5a4a2e;background:#120f0a;padding:14px;margin:14px 0 18px}
.cart-free-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.free-tag{
  font:700 10px/1 Arial;letter-spacing:.08em;color:#000;background:var(--gold);padding:4px 7px;
}
.cart-free-status{font-size:13px;color:#c8c8c4;margin-bottom:12px;line-height:1.4}
.scent-chips{display:flex;flex-wrap:wrap;gap:8px}
.scent-chip{
  padding:8px 12px;border:1px solid #555;background:#0a0a08;
  font:700 11px/1.2 Arial;letter-spacing:.02em;color:#ccc;text-transform:uppercase;
  transition:border-color .15s,background .15s,color .15s;
}
.scent-chip:hover{border-color:var(--gold);color:#eee}
.scent-chip.is-selected{
  border-color:var(--gold);background:var(--blood);color:#fff;
}
.cart-shop-cta{max-width:none}

body.cart-open{overflow:hidden}

@media(min-width:760px){
  .announcement span{display:inline}
  .announcement{font-size:12px}
  .hero{padding:56px 10% 40px;min-height:auto}
  .hero h1{font-size:78px}
  .hero-sub,.hero-disclaimer{max-width:480px;font-size:16px}
  .hero-disclaimer{font-size:13px}
  .unlock-card{width:180px;height:180px}
  .offer-strip{padding:36px 10%}
  .how-title{max-width:560px;font-size:52px}
  .steps-interactive{
    grid-template-columns:repeat(3,1fr);max-width:900px;gap:12px;
  }
  .step-tab{grid-template-columns:1fr;gap:10px;min-height:110px;align-content:center}
  .step-panels{max-width:900px}
  .products{padding:56px 10% 28px}
  .products h2{font-size:68px}
  .product-stack{
    max-width:1100px;grid-template-columns:repeat(2,1fr);gap:24px;
  }
  .product-card:last-child:nth-child(odd){grid-column:1 / -1;max-width:540px;justify-self:center;width:100%}
  .product-body h3{font-size:34px}
  .trust,.faq{padding-left:10%;padding-right:10%}
  .trust h2,.faq h2{font-size:68px}
  .usp-list{grid-template-columns:repeat(3,1fr);max-width:1100px;gap:18px}
  .finish{padding:64px 10% 120px}
  .finish h2{font-size:96px}
  .signature-dock{padding-top:12px;padding-bottom:12px}
  .signature-dock a{font-size:13px}
  .cart-sheet{
    left:50%;right:auto;bottom:24px;transform:translateX(-50%);
    width:min(480px,calc(100% - 32px));border-radius:16px;border:1px solid var(--gold);
    animation:sheet-fade .35s ease;
  }
  @keyframes sheet-fade{
    from{opacity:0;transform:translateX(-50%) translateY(24px)}
    to{opacity:1;transform:translateX(-50%) translateY(0)}
  }
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .product-card:hover .product-media img{transform:none}
}

/* —— Per-card social proof —— */
.card-proof{
  margin:6px 0 10px;padding:12px;border:1px solid #333;background:#0c0c0a;
}
.card-proof-meta{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px;
}
.card-proof-count{font-size:11px;color:#aaa;letter-spacing:.02em}
.card-quote{margin:0}
.card-quote p{
  font-size:13px;line-height:1.45;color:#d8d8d4;font-style:italic;margin:0 0 8px;
}
.card-quote footer{font-size:11px;color:#999;font-style:normal}
.verified{
  display:inline-block;margin-left:4px;font-size:10px;letter-spacing:.04em;
  text-transform:uppercase;color:var(--gold);
}
.card-proof-more{margin-top:8px;border-top:1px solid #2a2a28;padding-top:6px}
.card-proof-more summary{
  cursor:pointer;list-style:none;font:700 11px/1.4 Arial;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gold);padding:4px 0;
}
.card-proof-more summary::-webkit-details-marker{display:none}
.mini-reviews{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:10px}
.mini-reviews li{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start}
.mini-avatar{
  width:32px;height:32px;border-radius:50%;background:#1a1210;border:1px solid #5a4a2e;
  display:flex;align-items:center;justify-content:center;
  font:700 12px/1 Arial;color:var(--gold);
}
.mini-reviews strong{display:block;font-size:12px;color:#eee;margin-bottom:2px}
.mini-stars{font-size:10px!important;letter-spacing:1px}
.mini-reviews p{font-size:12px;line-height:1.4;color:#b8b8b5;margin:4px 0 0}

/* —— Builder sheet —— */
.sheet-backdrop{
  position:fixed;inset:0;background:#000a;z-index:50;animation:fade-in .25s ease;
}
.sheet-backdrop[hidden],.builder-sheet[hidden],.cart-sheet[hidden]{display:none!important}
.builder-sheet,.cart-sheet{
  position:fixed;left:0;right:0;bottom:0;z-index:51;
  max-height:min(92vh,760px);overflow:auto;
  background:#0a0a08;border-top:1px solid var(--gold);
  border-radius:16px 16px 0 0;
  padding:8px 18px calc(24px + env(safe-area-inset-bottom));
  box-shadow:0 -20px 60px #000c;
  animation:sheet-up .4s cubic-bezier(.16,1,.3,1);
}
.builder-product-row{
  display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;
  margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #2a2a28;
}
.builder-product-row img{
  width:64px;height:64px;object-fit:contain;background:#111;border:1px solid #333;
}
.builder-product-row strong{display:block;font:700 15px/1.3 Arial;color:#eee}
.builder-product-row span{font-size:13px;color:var(--gold)}
.builder-slots{display:grid;gap:14px;margin-bottom:18px}
.builder-slot{
  padding:14px;border:1px solid #333;background:#080806;
}
.builder-slot.is-active{border-color:var(--gold);box-shadow:inset 0 0 0 1px #b49b6433}
.builder-slot-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;
}
.builder-slot-head strong{font:700 12px/1.3 Arial;letter-spacing:.05em;text-transform:uppercase;color:#eee}
.builder-slot-picked{font-size:12px;color:var(--gold);text-align:right}
.builder-slot-hint{font-size:12px;color:#888;margin-bottom:10px}
.builder-slot .scent-chips{max-height:160px;overflow:auto;padding-right:2px}
.builder-free-block{
  border:1px solid #5a4a2e;background:#120f0a;padding:14px;margin-bottom:16px;
}
.builder-free-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.builder-free-head strong{font:700 14px/1.3 Arial;color:#eee}
.builder-free-hint{font-size:12px;color:#c8c8c4;margin-bottom:12px;line-height:1.4}
.builder-actions{display:grid;gap:8px}
.cart-scents-summary{font-size:12px;color:#b8b8b5;margin-top:6px;line-height:1.4}

.scent-chips{display:flex;flex-wrap:wrap;gap:8px}
.scent-chip{
  padding:8px 12px;border:1px solid #555;background:#0a0a08;
  font:700 11px/1.2 Arial;letter-spacing:.02em;color:#ccc;text-transform:uppercase;
  transition:border-color .15s,background .15s,color .15s;
}
.scent-chip:hover{border-color:var(--gold);color:#eee}
.scent-chip.is-selected{
  border-color:var(--gold);background:var(--blood);color:#fff;
}
.scent-chip.is-used-elsewhere{opacity:.45}

body.sheet-open{overflow:hidden}

@media(min-width:760px){
  .builder-sheet,.cart-sheet{
    left:50%;right:auto;bottom:24px;transform:translateX(-50%);
    width:min(520px,calc(100% - 32px));border-radius:16px;border:1px solid var(--gold);
    animation:sheet-fade .35s ease;
  }
}
