:root{--acid:#b6ff27;--pink:#ff2ba6;--violet:#8d39ff;--cyan:#2ce7ff;--orange:#ff7a19;--line:rgba(255,255,255,.13)}
body{overflow-x:hidden;background:#050605}body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.025;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='.9'/%3E%3C/svg%3E")}
.site-header{top:18px;left:3vw;right:3vw;height:66px;padding:0 1.25rem;background:rgba(8,10,7,.7);border:1px solid var(--line);border-radius:18px;backdrop-filter:blur(20px);box-shadow:0 14px 40px #0006}.reaper-mark{letter-spacing:.08em;text-shadow:0 0 22px #a7ef2255}nav{font-size:.78rem;text-transform:uppercase;letter-spacing:.11em}nav a{transition:.2s}.nav-cta{background:#fff08}
.hero{height:100svh;isolation:isolate}.hero>img{transform:scale(1.03);animation:heroBreath 14s ease-in-out infinite alternate}.hero:before{content:'';position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 20% 42%,rgba(139,255,35,.15),transparent 27%),radial-gradient(circle at 82% 45%,rgba(255,43,166,.2),transparent 30%)}.hero-shade{z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.12) 45%,rgba(0,0,0,.58)),linear-gradient(0deg,#050605,transparent 40%),linear-gradient(180deg,#0008,transparent 28%)}.hero-content{z-index:3;max-width:1100px}.hero .eyebrow:before,.hero .eyebrow:after{content:'';display:inline-block;width:42px;height:1px;background:currentColor;vertical-align:middle;margin:0 14px;opacity:.5}.hero h1{font-size:clamp(4.5rem,10.5vw,10.5rem);line-height:.76;letter-spacing:-.085em;text-transform:uppercase;text-shadow:0 5px 30px #000}.hero h1 span{display:inline-block;font-style:italic;filter:drop-shadow(0 0 25px #ff2ca833)}.button{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.primary{box-shadow:0 0 32px #a7ef2240}.hero-proof{z-index:3;font-size:.67rem;letter-spacing:.18em}.hero-proof span:before{content:'◆';font-size:.55rem}
.story{position:relative;overflow:hidden;grid-template-columns:1.05fr .95fr;gap:10vw}.story:after{content:'439268';position:absolute;right:-2vw;bottom:-5vw;font:800 18vw/.8 'Syne';letter-spacing:-.08em;color:#0c0d0910}.story-copy{position:relative;z-index:1}.lead{font-size:clamp(1.25rem,2vw,1.7rem)}
.brand-panel{min-height:920px;isolation:isolate}.brand-panel:before,.brand-panel:after{z-index:-2}.brand-panel:after{content:'';position:absolute;inset:0;z-index:-1;opacity:.4}.reaper-panel:before{background:radial-gradient(circle at 75% 75%,#86ff1e3b,transparent 34%),linear-gradient(145deg,#14200e,#050605 58%)}.reaper-panel:after{background:repeating-linear-gradient(120deg,transparent 0 34px,#a7ef2214 35px 36px)}.melted-panel:before{background:radial-gradient(circle at 20% 12%,#2ce7ff 0,transparent 28%),radial-gradient(circle at 90% 18%,#ff7b17 0,transparent 36%),radial-gradient(circle at 50% 95%,#ff2ca8 0,transparent 48%),#541378;filter:saturate(1.35)}.melted-panel:after{background:linear-gradient(115deg,transparent 0 45%,#fff2 47%,transparent 50%);transform:skewX(-12deg)}.reaper-panel h2{text-shadow:0 0 30px #8af02b38}.melted-panel h2{text-shadow:5px 5px 0 var(--pink),-5px -5px 0 var(--cyan)}.brand-line{text-transform:uppercase;letter-spacing:.08em}.brand-product{filter:drop-shadow(0 35px 45px #000b);transition:.6s transform}.brand-panel:hover .brand-product{transform:translateY(-12px) rotate(-2deg) scale(1.03)}.reaper-panel:hover .reaper-product{transform:translateY(-12px) rotate(1deg) scale(1.04)}
.official-products{background:linear-gradient(180deg,#090b08,#11130e)}.official-grid figure{min-height:480px;border-radius:28px;transition:.35s transform,.35s border-color}.official-grid figure:hover{transform:translateY(-9px);border-color:#a7ef2266}.official-grid figure:nth-child(2):hover,.official-grid figure:nth-child(3):hover{border-color:#ff2ca899}.official-grid img{height:350px;filter:drop-shadow(0 25px 35px #000c);transition:.35s transform}.official-grid figure:hover img{transform:scale(1.045)}.vape-pair{height:350px}.official-grid figcaption{text-transform:uppercase;letter-spacing:.14em}
.principles{border-radius:22px;overflow:hidden}.principles article{transition:.25s background}.principles article:hover{background:#15190f}.principles span{letter-spacing:.15em}.orb{transition:.35s transform}.format-card:hover .orb{transform:scale(1.06) rotate(4deg)}.strain-columns{gap:1rem}.strain-list{position:relative;overflow:hidden}.menus a{position:relative;overflow:hidden;border-radius:24px;background:#111;border:1px solid var(--line)}.menus img{border:0;border-radius:0;transition:.5s transform,.5s filter}.menus a:hover img{transform:scale(1.025);filter:brightness(.75)}.menus span{position:absolute;left:1.2rem;right:1.2rem;bottom:1.2rem;padding:1rem 1.2rem;background:#050605cc;border:1px solid #fff2;border-radius:99px;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;backdrop-filter:blur(10px)}
.shop{background:radial-gradient(circle at 10% 80%,#79c91c40,transparent 32%),radial-gradient(circle at 90% 25%,#ff2ca84d,transparent 34%),linear-gradient(120deg,#111b0b,#080908 50%,#260b2b)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@keyframes heroBreath{from{transform:scale(1.03)}to{transform:scale(1.09)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:900px){
  .reveal{opacity:1!important;transform:none!important}
  .site-header{top:10px;left:10px;right:10px;height:60px}
  nav{top:68px}
  /* brand-upgrade.css loads after the base responsive rules, so repeat the
     single-column layout here instead of restoring the desktop story grid. */
  .story,.brands,.shop{grid-template-columns:minmax(0,1fr)}
  .story>*,.brands>*,.shop>*{min-width:0;max-width:100%}
  .hero{height:auto;min-height:760px}
  .hero-content{padding:8rem 1.25rem 10rem}
  .hero-proof{bottom:1.4rem;gap:.65rem 1rem}
  .story{gap:2rem}
  .brand-panel{min-height:680px;padding-top:6rem;padding-bottom:7rem;align-items:flex-start}
  .brand-inner{max-width:620px}
  .brand-product{opacity:.18;right:-8%;bottom:-6%;max-width:72%;max-height:60%;pointer-events:none}
  .reaper-product{right:2%;max-width:38%}
  .melted-product{right:-16%;max-width:80%}
  .official-grid img,.vape-pair{height:300px}
  .official-grid figure{min-height:410px}
  .menus span{position:static;border:0;border-top:1px solid var(--line);border-radius:0;background:#0b0d0b;padding:1.1rem 1.2rem}
}
@media(max-width:560px){
  html,body,main{width:100%;max-width:100%;overflow-x:hidden}
  .wordmark{max-width:265px}.cross{font-size:.8rem}
  .hero{width:100%;min-width:0;place-items:center}
  .hero-content{width:100%;max-width:100%;min-width:0;padding:7.5rem 1rem 9rem;text-align:center;overflow:hidden}
  .hero h1{width:100%;max-width:100%;font-size:clamp(2.8rem,14.5vw,3.55rem);line-height:.84;letter-spacing:-.07em;overflow-wrap:anywhere}
  .hero h1 span{display:block;max-width:100%}
  .hero-copy{width:100%;max-width:34rem;padding:0 .25rem;font-size:.98rem}
  .hero-actions{width:100%;padding:0 .25rem}
  .hero-actions .button{flex:1 1 100%;max-width:20rem}
  .hero .eyebrow:before,.hero .eyebrow:after{width:14px;margin:0 5px}
  .hero-proof{left:0;right:0;width:100%;font-size:.55rem;padding:0 .65rem}
  .story:after{display:none}
  .brand-panel{min-height:auto;padding:5rem 1.25rem 7rem}
  .brand-panel h2{font-size:clamp(4.3rem,24vw,6rem);line-height:.72}
  .brand-panel ul{grid-template-columns:1fr}
  .brand-product{opacity:.12;max-height:48%}
  .reaper-product{max-width:50%}.melted-product{max-width:95%;right:-28%}
  .official-grid{gap:.8rem}
  .official-grid figure{min-height:350px;padding:1.4rem}
  .official-grid img,.vape-pair{height:250px}
  .strain-list{padding:2rem 1.4rem}
  .strain-list p{line-height:1.75}
  .menus{gap:1rem}
  .shop{min-height:auto}
  .age-card{max-height:calc(100svh - 2rem);overflow:auto}

  /* Keep every mobile section on one centered visual axis. */
  .hero-content,
  .story,
  .brand-panel,
  .brand-inner,
  .official-products,
  .official-copy,
  .craft,
  .craft-heading,
  .format-card,
  .strain-section,
  .strain-intro,
  .strain-list,
  .menu-preview,
  .menu-copy,
  .shop,
  .shop-copy,
  footer{
    text-align:center;
  }
  .story,
  .brand-panel,
  .official-products,
  .craft,
  .strain-section,
  .menu-preview,
  .shop,
  footer{
    justify-items:center;
  }
  .story>*,
  .brand-inner,
  .official-copy,
  .craft-heading,
  .strain-intro,
  .menu-copy,
  .shop-copy,
  footer>*{
    width:100%;
    max-width:42rem;
    margin-left:auto;
    margin-right:auto;
  }
  .brand-panel{
    flex-direction:column;
    align-items:center;
  }
  .brand-product{
    position:relative;
    right:auto;
    bottom:auto;
    width:auto;
    margin:0 auto 1.5rem;
    object-fit:contain;
    object-position:center;
  }
  .reaper-product{max-width:min(52%,220px)}
  .melted-product{max-width:min(78%,300px)}
  .brand-panel ul{
    width:min(100%,24rem);
    margin-left:auto;
    margin-right:auto;
    justify-items:center;
  }
  .brand-panel li{text-align:center}
  .hero-actions,
  .age-actions,
  .shop-actions{
    width:100%;
    align-items:center;
    justify-content:center;
  }
  .official-grid,
  .principles,
  .formats,
  .strain-columns,
  .menus{
    width:100%;
    justify-items:center;
  }
  .official-grid figure,
  .principles article,
  .strain-list,
  .menus a{
    width:100%;
    margin-left:auto;
    margin-right:auto;
  }
  .official-grid img,
  .vape-pair,
  .vape-pair img,
  .menus img{
    margin-left:auto;
    margin-right:auto;
    object-position:center;
  }
  .vape-pair{display:flex;justify-content:center;align-items:center}
  footer .wordmark{justify-content:center}
}
