/* Dymond Concentrates — static clone stylesheet
   Palette/type confirmed from the live site's computed styles:
   body font Archivo, heading/button font Orbitron, light page bg (#f6f6f6) with
   black body text, black header/footer bars, gold #F2AE2C CTA accent. */

/* Age gate */
#age-gate{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;}
.age-gate-box{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:12px;max-width:480px;width:100%;padding:48px 40px;text-align:center;}
.age-gate-eyebrow{font-family:'Orbitron',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 12px;}
.age-gate-title{font-family:'Orbitron',sans-serif;font-size:clamp(16px,2.5vw,22px);font-weight:700;color:#fff;margin:0 0 16px;line-height:1.3;}
.age-gate-sub{font-family:'Archivo',sans-serif;font-size:13px;color:#888;margin:0 0 32px;line-height:1.6;}
.age-gate-btns{display:flex;gap:16px;justify-content:center;}
.age-btn-no{background:transparent;border:1px solid #444;color:#888;}
.age-btn-no:hover{border-color:#888;color:#fff;}

/* scroll-reveal: headline slides up + fades in as it enters the viewport (JS toggles .is-visible) */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .7s ease, transform .7s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

:root{
  --bg:#f6f6f6;
  --bg-soft:#ffffff;
  --card:#ffffff;
  --border:#e3e3e3;
  --dark:#0a0a0a;
  --dark-soft:#161616;
  --dark-border:#2a2a2a;
  --gold:#f2ae2c;
  --gold-light:#f6c768;
  --teal:#014346;
  --teal-bright:#1aa3ad;
  --orange:#cf6a2c;
  --sage:#6f9c87;
  --purple:#9c3f93;
  --text:#111111;
  --text-dim:#5a5a5a;
  --on-dark:#ffffff;
  --on-dark-dim:#c9c9c9;
  --navy:#1c2c5c;
  --maxw:1240px;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Archivo',Arial,sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
h1,h2,h3,h4,h5,h6{
  font-family:'Orbitron',sans-serif;
  font-weight:700;
  letter-spacing:.01em;
  text-transform:uppercase;
  margin:0 0 12px;
  line-height:1.12;
  color:var(--teal);
}
h1{font-size:clamp(32px,5.5vw,58px);font-weight:900;}
h2{font-size:clamp(24px,3.6vw,38px);}
h3{font-size:19px;color:var(--gold);}
.hero h1,.hero h2,.footer-cta h2,.newsletter h2{color:var(--on-dark);}
p{color:var(--text-dim);margin:0 0 16px;}
.eyebrow{
  font-family:'Orbitron',sans-serif;
  color:var(--gold);
  letter-spacing:.12em;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
}
.btn{
  display:inline-block;
  background:var(--gold);
  color:#fff;
  font-family:'Orbitron',sans-serif;
  letter-spacing:.075em;
  text-transform:uppercase;
  font-weight:700;
  font-size:14px;
  padding:16px 36px;
  border:1px solid var(--gold);
  border-radius:0;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.btn:hover{background:#fff;color:var(--gold);border-color:var(--gold);}
.btn-outline{
  background:transparent;
  border:1px solid var(--gold);
  color:var(--gold);
}
.btn-outline:hover{background:var(--gold);color:#fff;}
.btn-black{background:#000;border-color:#000;color:var(--gold);}
.btn-black:hover{background:#fff;color:#000;border-color:#000;}
.btn-gold-dark{background:var(--gold);border-color:var(--gold);color:#111;}
.btn-gold-dark:hover{background:#fff;color:var(--gold);}
.btn-orange{background:var(--orange);border-color:var(--orange);color:#fff;}
.btn-orange:hover{background:#fff;color:var(--orange);}

/* header */
header.site-header{
  position:sticky;top:0;z-index:100;
  background:#000;
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
  border-bottom:1px solid var(--dark-border);
}
.header-inner{
  max-width:var(--maxw);margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;justify-content:space-between;
}
.logo img{height:84px;}
nav.main-nav{display:flex;gap:28px;align-items:center;}
nav.main-nav > ul{display:flex;gap:28px;list-style:none;margin:0;padding:0;}
nav.main-nav a{
  font-family:'Orbitron',sans-serif;
  font-style:italic;
  font-weight:700;
  font-size:14px;letter-spacing:.01em;text-transform:uppercase;
  color:var(--on-dark);
}
nav.main-nav a:hover, nav.main-nav a.active{color:var(--gold);}
.has-dropdown{position:relative;}
.dropdown{
  display:none;position:absolute;top:100%;left:50%;
  transform:translateX(-50%);width:100vw;
  background:#000;
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
  border-top:1px solid var(--dark-border);border-bottom:1px solid var(--dark-border);
}
.has-dropdown:hover .dropdown{display:block;}
.dropdown-inner{max-width:var(--maxw);margin:0 auto;padding:34px 24px;}
.dropdown-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;}
.dropdown .col h4{
  font-family:'Orbitron',sans-serif;font-size:15px;font-weight:700;
  letter-spacing:.04em;margin-bottom:14px;text-transform:uppercase;
}
.dropdown .col a{
  display:block;color:var(--on-dark-dim);font-family:'Archivo',sans-serif;font-style:normal;font-weight:500;
  font-size:13px;text-transform:uppercase;letter-spacing:.02em;padding:5px 0;
}
.dropdown .col a:hover{color:#fff;}
.dropdown-footer{margin-top:26px;padding-top:18px;border-top:1px solid var(--dark-border);text-align:right;}
.dropdown-footer a{
  font-family:'Orbitron',sans-serif;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:13px;color:var(--gold);
}
.dropdown-footer a:hover{color:var(--gold-light);}
.mobile-toggle{display:none;background:none;border:none;color:var(--on-dark);font-size:26px;cursor:pointer;}

/* hero (homepage carousel — stays dark/image-heavy like the live banner) */
.hero{
  position:relative;min-height:560px;display:flex;align-items:center;
  background:var(--dark);overflow:hidden;color:var(--on-dark);
}
.hero h1, .hero h2, .hero h3{color:var(--on-dark);}
.hero .hero-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55;
}
.hero .hero-bg::after{content:'';}
.hero .hero-video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7;
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(10,10,10,.92) 10%,rgba(10,10,10,.35) 70%);
}
.hero-content{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:0 24px;width:100%;}
.hero-content h1{margin-bottom:6px;}
.hero-content .sub{font-family:'Orbitron',sans-serif;color:var(--gold);font-size:clamp(18px,3vw,28px);letter-spacing:.08em;font-weight:700;}
.hero-actions{margin-top:24px;display:flex;gap:14px;flex-wrap:wrap;}

/* CTA banner — sits directly under the hero video, black w/ the header's diagonal texture */
.cta-banner{
  background:#000;
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
  color:var(--on-dark);padding:60px 0;overflow:hidden;
}
.cta-banner-inner{display:flex;align-items:center;justify-content:center;gap:50px;flex-wrap:wrap;}
.cta-banner-img{max-width:340px;width:100%;}
.eyebrow-teal{color:var(--teal-bright);}
.cta-banner-text{max-width:560px;}
.cta-banner-text h2{color:var(--on-dark);margin:0 0 22px;font-size:clamp(34px,5.5vw,58px);font-weight:900;}
.btn-teal{background:var(--teal-bright);border-color:var(--teal-bright);}
.btn-teal:hover{background:#fff;color:var(--teal-bright);border-color:var(--teal-bright);}
@media (max-width:800px){
  .cta-banner-inner{flex-direction:column;text-align:center;}
}

/* category strip — 4 individual boxed tiles under the CTA banner */
.category-strip{background:#000;padding:60px 0;}
.category-strip-grid{
  max-width:var(--maxw);margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:22px;
}
.category-tile{
  position:relative;display:flex;align-items:center;justify-content:center;
  padding:56px 20px;min-height:200px;color:#fff;border-radius:0;overflow:hidden;
}
.category-tile::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;
  background:rgba(0,0,0,0);transition:background .3s ease;
}
.category-tile:hover::after{background:rgba(0,0,0,.28);}
.category-tile .tile-content{position:relative;z-index:3;text-align:center;width:100%;height:104px;overflow:hidden;}
.tile-stack{display:flex;flex-direction:column;width:100%;transition:transform .35s ease;}
.category-tile:hover .tile-stack{transform:translateY(-104px);}
.tile-default{flex:0 0 104px;height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.category-tile img{width:56px;height:56px;margin:0 auto 14px;filter:brightness(0) invert(1);}
.category-tile h3{margin:0;color:#fff;font-size:20px;letter-spacing:.04em;}
.tile-cta-row{flex:0 0 104px;height:104px;display:flex;align-items:center;justify-content:center;}
.tile-cta{
  display:block;width:fit-content;
  font-family:'Orbitron',sans-serif;font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;border:1px solid #fff;padding:0 20px;line-height:36px;white-space:nowrap;
}
.tile-vapes{background:linear-gradient(135deg,#f7bd55,#e8923a);}
.tile-shatter{background:linear-gradient(135deg,#dd8552,#c25a2e);}
.tile-liveresin{background:linear-gradient(135deg,#7fae97,#587f69);}
.tile-diamonds{background:linear-gradient(135deg,#0f4a4f,#082b2f);}
@media (max-width:900px){
  .category-strip-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:520px){
  .category-strip-grid{grid-template-columns:1fr;}
}

/* shared float animation for product photography outside the colored rows */
.float-img{animation:floatY 4.5s ease-in-out infinite;}
.img-sm{max-width:390px;margin:0 auto;}

/* feature rows — full-bleed colored bands, one per product category */
.feature-row{position:relative;padding:80px 0;overflow:visible;}
.feature-row-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.feature-row img{max-width:380px;margin:0 auto;animation:floatY 4.5s ease-in-out infinite;}
/* asymmetrical jagged divider between stacked colored banners (also used for .services-intro) */
.jagged-top{position:relative;}
.jagged-top::before{
  content:'';position:absolute;left:0;right:0;top:-69px;height:70px;
  background-color:inherit;z-index:1;pointer-events:none;
  clip-path:polygon(
    0% 100%, 0% 75%, 22% 20%, 48% 90%, 68% 15%, 88% 65%, 100% 30%, 100% 100%
  );
}
/* keep the zigzag's vertical swing proportionate to the narrower viewport so it reads flatter, not spikier */
@media (max-width:900px){
  .jagged-top::before{top:-44px;height:45px;}
}
@media (max-width:520px){
  .jagged-top::before{top:-25px;height:26px;}
}
@keyframes floatY{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-16px);}
}
@media (prefers-reduced-motion: reduce){
  .feature-row img{animation:none;}
}
.feature-row-text{max-width:520px;}
.feature-row-text h2{
  font-size:clamp(40px,7vw,76px);margin:0 0 14px;
  text-shadow:5px 5px 0 rgba(0,0,0,.22);
}
.feature-row-text .tagline{
  font-style:italic;font-weight:500;font-size:17px;
  text-transform:none;letter-spacing:0;margin-bottom:26px;
}
.row-shatter{background:var(--orange);}
.row-shatter h2{color:var(--gold);}
.row-shatter .tagline{color:#1a1208;}
.row-liveresin{background:var(--sage);}
.row-liveresin h2{color:var(--gold);text-shadow:5px 5px 0 rgba(1,67,70,.45);}
.row-liveresin .tagline{color:#13251d;}
.row-diamonds{background:var(--teal);}
.row-diamonds h2{color:#fff;}
.row-diamonds .tagline{color:var(--on-dark-dim);}
.row-vape{background:#0a0a0a;}
.row-vape h2{color:var(--gold);text-shadow:none;}
.row-vape .tagline{color:var(--on-dark-dim);}
.row-infused{background:var(--purple);}
.row-infused h2{color:#fff;}
.row-infused .tagline{color:#f1dcef;}
.row-shatter img,.row-liveresin img,.row-diamonds img{max-width:460px;}
.feature-row img.img-vape{max-width:323px;margin-top:-40px;}
@media (max-width:800px){
  .feature-row-inner{grid-template-columns:1fr;text-align:center;}
  .feature-row-text{max-width:none;margin:0 auto;}
}

/* page hero (simple text header for sub-pages — light, matches the rest of the page) */
.page-hero{
  text-align:center;padding:70px 24px 46px;border-bottom:1px solid var(--border);
}
.page-hero img.feature{max-width:420px;margin:30px auto 0;}

/* dark variant — black diagonal-texture banner with a jagged light section below it */
.page-hero.hero-dark{
  background:#000;color:#fff;border-bottom:none;
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
  padding:24px 24px 70px;
  min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.page-hero.hero-dark h1{color:#fff;font-size:clamp(40px,6.5vw,66px);margin:0;}
.page-hero.hero-dark .eyebrow{color:var(--gold);margin:0;}
.page-hero.hero-dark .eyebrow-orange{color:var(--orange);margin:16px 0 0;}
.page-hero.hero-dark .hero-dark-sub{
  color:var(--on-dark-dim);font-size:14px;line-height:1.6;
  max-width:640px;margin:18px auto 0;font-family:'Archivo',sans-serif;
}
.page-hero.hero-dark .hero-dark-sub.hero-dark-tag{
  color:var(--gold);font-family:'Orbitron',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;font-size:17px;max-width:none;
}

/* services intro — plain icon + label items, no card boxes, jagged seam into the dark hero above */
.services-intro{position:relative;background:var(--bg);padding:80px 0 60px;}
.services-intro .wrap{position:relative;z-index:2;max-width:1100px;}
.service-items{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center;}
.service-item{display:flex;flex-direction:column;align-items:center;gap:18px;}
.service-item .svc-icon{height:128px;color:var(--text);}
.service-item h3{margin:0;font-size:17px;color:var(--text);letter-spacing:.02em;}
.service-item .sub{font-family:'Archivo',sans-serif;text-transform:none;letter-spacing:0;font-size:13px;font-weight:500;color:var(--text-dim);margin:8px 0 0;}
.scroll-cue{display:block;margin:50px auto 0;width:fit-content;color:var(--text-dim);cursor:pointer;animation:bounceY 2.2s ease-in-out infinite;}
@media (prefers-reduced-motion: reduce){.scroll-cue{animation:none;}}
@keyframes bounceY{0%,100%{transform:translateY(0);}50%{transform:translateY(8px);}}
@media (max-width:800px){
  .service-items{grid-template-columns:1fr;gap:46px;}
}

/* feature sections with a background photo and a white content box on top (vape filling, IPR, etc.) */
.bg-feature{
  background-size:cover;background-position:center;background-repeat:no-repeat;
  background-attachment:fixed;
  padding:90px 24px;
}
.content-box{
  max-width:1000px;margin:0 auto;background:#fff;text-align:center;
  padding:64px 60px;box-shadow:0 8px 30px rgba(0,0,0,.1);
}
.box-icon{height:117px;margin:0 auto 24px;}
.split-heading{font-size:clamp(38px,6vw,64px);margin:0;}
.split-heading .t-orange{color:var(--orange);}
.split-heading .t-sage{color:var(--sage);}
.split-heading .t-teal{color:var(--teal);}
.sub-heading{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(16px,2vw,22px);color:var(--text);margin:4px 0 0;
}
.divider{border:none;border-top:1px solid var(--border);max-width:680px;margin:28px auto;}
.tagline-sm{
  font-family:'Archivo',sans-serif;text-transform:uppercase;letter-spacing:.06em;
  font-size:12px;color:var(--text-dim);margin:0 0 22px;
}
.gold-display{color:var(--gold);font-size:clamp(24px,3.5vw,38px);margin:0 0 26px;}
.bold-statement{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:clamp(13px,1.6vw,18px);color:var(--text);line-height:1.4;
  max-width:760px;margin:0 auto 22px;
}
.benefits-label{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:12px;letter-spacing:.06em;color:var(--text);margin:0 0 12px;
}
.benefits-row{
  display:flex;justify-content:center;gap:24px;flex-wrap:wrap;
  font-family:'Archivo',sans-serif;color:var(--text);font-size:13px;margin-bottom:30px;
}
.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:32px;}
.option-box{border:1px dotted var(--text-dim);padding:22px 16px;}
.option-box h4{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:12px;margin:0 0 10px;color:var(--text);
}
.option-box p{font-family:'Archivo',sans-serif;color:var(--text-dim);margin:0;font-size:13px;}
.statement-plain{
  font-family:'Archivo',sans-serif;font-weight:700;text-transform:none;
  color:var(--text);font-size:14px;line-height:1.5;max-width:760px;margin:0 auto 32px;
}
.icon-list{display:flex;flex-direction:column;align-items:center;gap:14px;margin:0 0 32px;}
.icon-list-item{display:flex;align-items:center;gap:10px;font-family:'Archivo',sans-serif;color:var(--text);font-size:13px;}
.icon-list-item svg{flex-shrink:0;width:18px;height:18px;color:var(--text);}
@media (max-width:700px){
  .option-grid{grid-template-columns:1fr;}
  .content-box{padding:50px 26px;}
  .icon-list-item{text-align:left;}
  .bg-feature{background-attachment:scroll;}
}

/* about page intro — multi-color stacked headline beside the trophy photo */
.about-intro{position:relative;background:var(--bg);padding:90px 0 70px;}
.about-intro .wrap{position:relative;z-index:2;}
.eyebrow-italic{
  font-family:'Archivo',sans-serif;font-style:italic;font-weight:500;
  text-transform:uppercase;letter-spacing:.03em;color:var(--text-dim);font-size:16px;margin-bottom:8px;
}
.about-heading{margin:4px 0 0;line-height:1.06;}
.about-heading span{display:block;font-size:clamp(32px,5vw,52px);}
.about-heading .t-teal{color:var(--teal);}
.about-heading .t-gold{color:var(--gold);}
.about-heading .t-sage2{color:var(--sage);}
.heading-divider{display:block;width:90px;height:3px;background:var(--teal);margin:22px 0 26px;}
.heading-divider.sage{background:var(--sage);}
.bc-leader{background:#fff;}
.gold-label{
  color:var(--gold);font-family:'Orbitron',sans-serif;font-weight:700;
  text-transform:uppercase;font-size:15px;letter-spacing:.04em;margin-bottom:18px;
}
.justify-text{text-align:justify;}

/* legacy section — heading + 3 full-color tiles (services/products/blog), hover behaves like the homepage category tiles */
.legacy-section{background:var(--bg);padding:80px 0;text-align:center;}
.legacy-eyebrow{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  color:var(--teal);font-size:15px;letter-spacing:.04em;margin:0 0 6px;
}
.legacy-heading{color:var(--gold);font-size:clamp(34px,5.5vw,56px);margin:0 0 50px;}
.legacy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto;}
.legacy-tile{position:relative;aspect-ratio:1/1;overflow:hidden;color:#fff;}
.legacy-tile .tile-window{position:absolute;inset:0;overflow:hidden;}
.legacy-stack{display:flex;flex-direction:column;width:100%;height:200%;transition:transform .4s ease;}
.legacy-tile:hover .legacy-stack{transform:translateY(-50%);}
.legacy-default,.legacy-hover{
  flex:0 0 50%;height:50%;width:100%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;padding:24px;text-align:center;
}
.legacy-default{gap:14px;}
.legacy-default img{width:56px;height:56px;filter:brightness(0) invert(1);}
.legacy-default span{
  font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:20px;letter-spacing:.04em;
}
.legacy-hover h3{color:#fff;font-size:clamp(22px,2.6vw,30px);margin:0 0 12px;}
.legacy-hover p{color:#fff;opacity:.92;font-size:13.5px;line-height:1.5;max-width:280px;margin:0 0 16px;}
.legacy-pill{
  display:inline-block;font-family:'Orbitron',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:12px;letter-spacing:.06em;color:#fff;padding:12px 26px;border-radius:12px;
}
.legacy-tile.tile-orange{background:var(--orange);}
.legacy-tile.tile-sage{background:var(--sage);}
.legacy-tile.tile-teal{background:var(--teal);}
.tile-orange .legacy-pill{background:var(--gold);color:#111;}
.tile-sage .legacy-pill{background:var(--teal);}
.tile-teal .legacy-pill{background:var(--sage);}
@media (max-width:700px){.legacy-grid{grid-template-columns:1fr;max-width:320px;}}

/* BC Direct Delivery — "Why Sign Up?" black band + registration section */
.why-signup{
  position:relative;background:#000;color:#fff;padding:90px 0;text-align:center;
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
}
.why-signup .wrap{position:relative;z-index:2;}
.why-signup h2{color:#fff;font-size:clamp(34px,5.5vw,52px);margin:0;}
.icon-bullet-list{
  list-style:none;margin:34px 0 0;padding:0;display:flex;flex-direction:column;
  align-items:center;gap:16px;
}
.icon-bullet-list li{display:flex;align-items:center;gap:10px;}
.icon-bullet-list img{width:20px;height:20px;}
.icon-bullet-list span{font-family:'Archivo',sans-serif;font-weight:700;color:#fff;font-size:16px;}
.registration-section{background:var(--bg);padding:80px 0;}

/* 510 vape carts — one shared cart photo beside a stacked list of strain variants */
.cart-group{padding:50px 0;}
.cart-group-white{
  background:#fff;width:100vw;position:relative;left:50%;
  transform:translateX(-50%);
}
.cart-group-inner{display:flex;justify-content:center;align-items:center;gap:34px;}
.cart-group-reverse .cart-group-img{order:2;}
.cart-group-reverse .cart-group-text{order:1;}
.cart-group-img{max-width:500px;width:420px;flex-shrink:0;margin:0 auto;}
.cart-group-text{flex:0 1 600px;}
.cart-group-heading{color:var(--navy);font-size:clamp(40px,6vw,64px);margin:0 0 30px;}
.cart-list{display:flex;flex-direction:column;}
.cart-item{padding:18px 0;}
.cart-item:first-child{padding-top:0;}
.cart-item-label{
  font-family:'Orbitron',sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;
  color:var(--gold);letter-spacing:.03em;font-size:15px;margin:0 0 10px;
}
.cart-item-link{
  display:inline-flex;align-items:center;gap:14px;
  font-family:'Orbitron',sans-serif;font-weight:900;text-transform:uppercase;
  color:var(--navy);font-size:clamp(17px,2vw,22px);text-decoration:none;transition:opacity .2s ease;
}
.cart-item-link:hover{opacity:.7;}
.cart-divider{border:none;border-top:1px solid var(--border);margin:0;}
@media (max-width:800px){
  .cart-group-inner{flex-direction:column;text-align:center;}
  .cart-item-link{justify-content:center;}
}

/* sections */
section{padding:70px 0;}
section.pad-bottom-xl{padding-bottom:140px;}
section.alt{background:var(--bg-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;row-gap:48px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;align-items:center;}
.card{
  background:var(--card);border:1px solid var(--border);border-radius:0;padding:30px;text-align:center;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.card img.icon{width:56px;height:56px;margin:0 auto 16px;}
.category-row{
  display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:50px 0;
  border-bottom:1px solid var(--border);
}
.category-row:last-child{border-bottom:none;}
.category-row img{border-radius:0;}
.category-row .label{font-family:'Orbitron',sans-serif;color:var(--gold);font-size:16px;font-weight:700;letter-spacing:.1em;}
.product-links a:hover{color:var(--gold);}
.product-tile{text-align:center;display:flex;flex-direction:column;align-items:center;}
.product-tile>a:first-child{display:flex;align-items:center;justify-content:center;height:220px;}
.product-tile>a:first-child img{max-height:220px;width:auto;max-width:100%;object-fit:contain;}
.product-tile h4{font-family:'Orbitron',sans-serif;margin:14px 0 6px;font-size:17px;}
.product-tile a.browse{color:var(--gold);font-size:13px;letter-spacing:.08em;border-bottom:1px solid var(--gold);font-weight:700;}

/* breadcrumb */
.crumb{font-size:13px;color:var(--text-dim);padding:18px 0 0;}
.crumb a{color:var(--gold);}

/* forms */
form.box{background:var(--card);border:1px solid var(--border);padding:34px;border-radius:0;}
form.box label{display:block;font-size:13px;color:var(--text-dim);margin:14px 0 6px;}
form.box input,form.box select,form.box textarea{
  width:100%;background:#fff;border:1px solid var(--border);color:var(--text);
  padding:11px 12px;border-radius:0;font-family:inherit;font-size:14px;
}
form.box .checkbox-row{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:14px;color:var(--text-dim);}
form.box .checkbox-row input{width:auto;}
form.box .form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
form.box .form-grid-2 input{margin:0;}
@media (max-width:600px){
  form.box .form-grid-2{grid-template-columns:1fr;}
}

/* faq accordion */
details.faq-item{border-bottom:1px solid var(--border);padding:16px 0;}
details.faq-item summary{
  cursor:pointer;font-family:'Orbitron',sans-serif;font-weight:700;letter-spacing:.01em;
  font-size:15px;color:var(--text);text-transform:none;
}
details.faq-item summary::marker{color:var(--gold);}
details.faq-item p{margin-top:10px;}

/* newsletter band (image-backed on the live site — kept dark for contrast) */
.newsletter{
  position:relative;background:var(--dark);color:var(--on-dark);
  padding:60px 0;text-align:center;
}
.newsletter h2{color:var(--on-dark);}
.newsletter form{display:flex;justify-content:center;gap:10px;margin-top:18px;flex-wrap:wrap;}
.newsletter input[type=email]{
  background:#fff;border:1px solid var(--dark-border);color:#111;padding:13px 16px;min-width:280px;border-radius:0;
}
.newsletter p{color:var(--on-dark-dim);}
.newsletter-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:60px;text-align:left;flex-wrap:wrap;}
.newsletter-text{flex:1;min-width:280px;text-align:center;}
.newsletter-img{width:auto;max-width:300px;height:auto;flex-shrink:0;}
@media (max-width:700px){
  .newsletter-inner{flex-direction:column-reverse;}
}

/* footer */
footer.site-footer{
  padding:70px 0 0;background:#000;color:var(--on-dark);
  background-image:repeating-linear-gradient(115deg, transparent 0 140px, rgba(255,255,255,.05) 140px 141px, transparent 141px 280px);
}
.footer-cta{text-align:center;padding:24px 0;margin-bottom:60px;}
.footer-eyebrow{
  font-family:'Orbitron',sans-serif;font-style:italic;font-weight:700;color:#fff;
  letter-spacing:.04em;font-size:16px;text-transform:uppercase;margin-bottom:8px;
}
.footer-cta h2{color:var(--on-dark);font-size:clamp(34px,5.5vw,56px);}
.footer-cta h2 .gold{color:var(--gold);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:40px;}
.footer-grid h6{
  font-family:'Orbitron',sans-serif;color:var(--gold);letter-spacing:.1em;font-size:13px;font-weight:700;
  padding-bottom:14px;margin-bottom:18px;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.25);
}
.footer-grid ul{list-style:none;margin:0;padding:0;}
.footer-grid li{margin-bottom:8px;}
.footer-grid a{color:var(--on-dark-dim);font-size:14px;}
.footer-grid a:hover{color:var(--gold-light);}
.footer-logo img{height:64px;}
.touch-row{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--on-dark-dim);font-size:14px;}
.touch-row a{color:var(--on-dark-dim);}
.touch-row a:hover{color:var(--gold-light);}
.touch-row .leaf{font-size:16px;}
.social-row{display:flex;gap:12px;margin-top:6px;}
.social-row a{
  width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:7px;
}
.social-row a.ig{border:2px solid var(--gold);color:var(--gold);background:transparent;}
.social-row a.tw{background:var(--gold);color:#000;}
.social-row a:hover{opacity:.8;}
.footer-bottom{
  border-top:1px solid var(--dark-border);padding:20px 24px;text-align:center;font-size:12px;color:var(--on-dark-dim);
  background:#000;margin-top:10px;
}
.footer-bottom a{color:var(--gold-light);}

/* blog cards */
.post-card{padding:30px 0;border-bottom:1px solid var(--border);transition:opacity .2s;}
.post-card:hover{opacity:.75;}
.post-card .date{font-size:12px;color:var(--gold);letter-spacing:.08em;font-weight:700;}
.post-card h3{margin:8px 0;color:var(--text);text-transform:none;font-family:'Orbitron',sans-serif;}

@media (max-width: 900px){
  nav.main-nav > ul{display:none;}
  .mobile-toggle{display:block;}
  .grid-3,.grid-4{grid-template-columns:1fr 1fr;}
  .category-row,.grid-2{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width: 560px){
  .grid-3,.grid-4,.footer-grid{grid-template-columns:1fr;}
}
