/* ==========================================================================
   WHITE FOX — Global Stylesheet
   Built to the Figma "White Fox Landing Page" spec.
   Fonts: Bitcrusher (display), Conthrax (tech), Red Hat Display (body)
   Accent: #1CAAE1
   ========================================================================== */

/* ---- Custom brand fonts (drop real files into /assets/fonts to activate) --- */
@font-face{
  font-family:"Bitcrusher";
  src:url("../assets/fonts/bitcrusher condensed bd.otf") format("opentype"),
      url("../assets/fonts/Bitcrusher-CondensedBold.woff2") format("woff2"),
      url("../assets/fonts/Bitcrusher-CondensedBold.woff") format("woff");
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Conthrax";
  src:url("../assets/fonts/conthrax-sb.otf") format("opentype"),
      url("../assets/fonts/Conthrax-SemiBold.woff2") format("woff2"),
      url("../assets/fonts/Conthrax-SemiBold.woff") format("woff");
  font-weight:600;font-style:normal;font-display:swap;
}

:root{
  /* palette */
  --c-black:#0c0c0e;
  --c-ink:#111114;
  --c-dark:#161619;
  --c-white:#ffffff;
  --c-accent:#1CAAE1;
  --c-accent-d:#1391c2;
  --c-green:#9ecb4b;
  --c-gray-bg:#EDEDED;
  --c-gray-100:#f3f3f3;
  --c-gray-line:#e2e2e2;
  --c-text:#111114;
  --c-text-soft:#5b5b60;
  --c-text-mut:#8a8a90;

  /* blue slider gradient */
  --grad-blue:radial-gradient(120% 120% at 78% 50%, #2f8cf9 0%, #2372d3 25%, #1859ad 50%, #0c3f87 75%, #002661 100%);
  --grad-blue-deep:radial-gradient(130% 130% at 80% 45%, rgba(0,89,195,.5) 0%, rgba(0,67,153,.94) 45%, #002661 100%);

  /* type stacks (custom font first, close web fallbacks after) */
  --f-display:"Bitcrusher","Anton","Oswald Bold",sans-serif;
  --f-tech:"Conthrax","Michroma","Chakra Petch",sans-serif;
  --f-body:"Red Hat Display",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --f-body-weight:500;

  /* layout */
  --container:1440px;
  --gutter:120px;
  --radius:16px;
  --radius-lg:24px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;font-family:var(--f-body);font-weight:var(--f-body-weight);color:var(--c-text);
  background:#EDEDED;line-height:1.5;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
ul{margin:0;padding:0;list-style:none;}

/* ---- Shared layout helpers ---- */
.wf-container{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter);}
.wf-section{position:relative;}

/* ---- Display / tech type ---- */
.display-xl{font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:96px;line-height:.93;letter-spacing:.03em;margin:0;}
.display-lg{font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:72px;line-height:.95;letter-spacing:.02em;margin:0;}
.display-md{font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:56px;line-height:.96;letter-spacing:.02em;margin:0;}
.tech{font-family:var(--f-tech);font-weight:600;text-transform:uppercase;letter-spacing:.14em;}
.accent{color:var(--c-accent);}
.accent-green{color:var(--c-green);}
.accent-wf{color:#1CAAE1;}
.accent-full-charge{color:#F63235;}
.accent-peppered{color:#9AC25C;}
.accent-double-mint{color:#32E7DC;}
.accent-black{color:#000;}

/* ---- Homepage type roles ---- */
.wf-heading{font-family:var(--f-display);font-weight:700;text-transform:uppercase;margin:0;}
.wf-subtitle{font-family:var(--f-tech);font-weight:600;text-transform:none;letter-spacing:0;margin:0;}
.wf-copy{font-family:var(--f-body);font-weight:500;}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--f-tech);font-weight:600;font-size:13px;letter-spacing:.02em;
  text-transform:uppercase;padding:12px 18px;border-radius:12px;transition:.2s ease;white-space:nowrap;}
.btn-accent{background:var(--c-accent);color:#fff;border:1.5px solid var(--c-accent);}
.btn-accent:hover{background:var(--c-accent-d);border-color:var(--c-accent-d);color:#fff;}
.btn-dark{background:var(--c-ink);color:#fff;border:1.5px solid var(--c-ink);}
.btn-dark:hover{background:#000;border-color:#000;color:#fff;}
.btn-outline{border:1.5px solid rgba(17,17,20,.25);color:var(--c-ink);background:transparent;}
.btn-outline:hover,.btn-outline:focus,.btn-outline:active{
  border-color:var(--c-ink);background:transparent !important;color:var(--c-ink);
  box-shadow:0 0 0 1px var(--c-ink);
}
.btn-outline-light{border:1.5px solid rgba(255,255,255,.4);color:#fff;background:transparent;}
.btn-outline-light:hover,.btn-outline-light:focus,.btn-outline-light:active{
  border-color:#fff;background:transparent !important;color:#fff;
  box-shadow:0 0 0 1px #fff;
}
.btn-white{background:#fff;color:var(--c-ink);border:1.5px solid #fff;}
.btn-white:hover,.btn-white:focus,.btn-white:active{
  background:#fff !important;color:var(--c-ink);border-color:var(--c-accent);
  box-shadow:0 0 0 1px var(--c-accent);
}
.btn-green{background:var(--c-green);color:#fff;border:1.5px solid var(--c-green);}
.btn-green:hover{background:#8eba3f;border-color:#8eba3f;color:#fff;}
.btn-lg{padding:14px 26px;font-size:14px;}

/* ---- Pill / badge ---- */
.pill{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-tech);font-weight:600;
  font-size:10px;line-height:normal;letter-spacing:.13em;text-transform:uppercase;padding:9px 15px;border-radius:100px;
  border:1.5px solid rgba(17,17,20,.18);color:var(--c-ink);}
.pill-accent{border-color:rgba(28,170,225,.5);color:var(--c-accent);}
.pill-light{border-color:rgba(255,255,255,.4);color:#fff;}
.wf-pill-desk{display:inline-flex;}
.wf-pill-mob{display:none;}

/* ==========================================================================
   TOP WARNING BAR
   ========================================================================== */
.wf-warning{background:var(--c-ink);color:rgba(255,255,255,.85);font-size:17px;
  letter-spacing:.02em;text-align:center;padding:11px 20px;font-weight:500;}

/* ==========================================================================
   HEADER
   ========================================================================== */
.wf-header{position:sticky;top:0;z-index:900;height:87px;display:flex;align-items:center;
  background:rgba(0,38,97,.8);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);
  border-bottom:none;}
.wf-header + .wf-slider,
.wf-header + .wf-products-hero,
.wf-header + .wf-pd--v2{margin-top:-87px;}
.wf-header .wf-container{display:flex;align-items:center;justify-content:center;width:100%;}
.wf-logo{display:flex;align-items:center;}
.wf-logo img{height:44px;width:auto;}
.wf-tm{
  display:inline-block;
  font-size:.38em;line-height:1;
  vertical-align:baseline;position:relative;top:-1.35em;
  font-style:normal;letter-spacing:0;text-transform:uppercase;
}

/* ==========================================================================
   MARQUEE TICKER
   ========================================================================== */
.wf-marquee{background:var(--c-accent);color:#fff;height:44px;display:flex;align-items:center;overflow:hidden;white-space:nowrap;}
.wf-marquee__track{display:inline-flex;align-items:center;gap:0;will-change:transform;animation:wf-ticker 26s linear infinite;}
.wf-marquee:hover .wf-marquee__track{animation-play-state:paused;}
.wf-marquee__track span{font-family:var(--f-tech);font-weight:600;font-size:13px;letter-spacing:.04em;
  text-transform:uppercase;padding:0 22px;white-space:nowrap;}
@keyframes wf-ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ==========================================================================
   HERO SLIDER
   ========================================================================== */
.wf-slider{position:relative;background:#0a2140;color:#fff;overflow:hidden;}
.wf-slides{position:relative;}
.wf-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease;
  display:flex;align-items:flex-start;background:var(--grad-blue);}
.wf-slide::before{content:"";position:absolute;inset:0;background-image:url("../assets/images/fox-watermark.svg");
  background-size:220px;mix-blend-mode:overlay;pointer-events:none;}
.wf-slide.is-active{position:relative;opacity:1;visibility:visible;}
.wf-slide.slide-dark{background:radial-gradient(120% 130% at 76% 45%,#3b3e44 0%,#232529 45%,#111214 100%);}
.wf-slide.slide-green{background:radial-gradient(120% 130% at 76% 50%,#9ecb4b 0%,#6ea62c 40%,#3c6417 100%);}
.wf-slide .wf-container{display:flex;align-items:stretch;width:100%;padding-top:0;padding-bottom:0;min-height:inherit;}
.wf-slide__text{flex:0 0 50%;width:50%;max-width:50%;display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding-top:160px;padding-bottom:100px;box-sizing:border-box;}
.wf-slide__title{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:96px;
  line-height:.93;letter-spacing:.03em;}
.wf-slide__desc{font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.19;color:rgba(255,255,255,.8);max-width:50%;}
.wf-slide__cta{display:flex;gap:13px;}
.wf-slide__cta .btn{width:195px;}
.wf-slide__media{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;}
.wf-slide__media img{width:min(665px,46vw);height:auto;filter:drop-shadow(1px 40px 30px rgba(0,0,0,.35));}
.wf-slider__controls{
  position:absolute;left:50%;bottom:40px;transform:translateX(-50%);z-index:5;
  display:inline-flex;align-items:center;gap:18px;padding:8px 10px 8px 8px;
  border-radius:100px;background:rgba(255,255,255,.16);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.wf-slider__arrow{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;
  border-radius:50%;background:rgba(255,255,255,.14);transition:.2s;flex-shrink:0;}
.wf-slider__arrow:hover{background:rgba(255,255,255,.24);}
.wf-slider__arrow svg{width:18px;height:18px;stroke-width:2;}
.wf-slider__dots{display:flex;align-items:center;gap:8px;padding:0 4px;}
.wf-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.4);transition:.3s;cursor:pointer;}
.wf-dot.is-active{width:9px;height:9px;background:#fff;}

/* ==========================================================================
   SECTION: intelligent nicotine
   ========================================================================== */
.wf-intelligent{background:var(--c-gray-bg);padding:120px 0 0;}
.wf-intelligent .wf-container{max-width:1440px;}
.wf-intelligent__panel{
  position:relative;overflow:hidden;border-radius:32px;
  width:100%;max-width:1200px;aspect-ratio:1200/680;height:auto;margin:0 auto;
  background:#002661 url("../assets/images/intelegent-nicotine.png") center center/cover no-repeat;
  color:#fff;display:flex;align-items:stretch;
  box-sizing:border-box;
}
.wf-intelligent__text{
  width:70%;max-width:1000px;padding:100px;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;
  position:relative;z-index:1;box-sizing:border-box;
}
.wf-intelligent__text .wf-who-pill{margin:0 0 24px;border:0;}
.wf-intelligent__text .wf-heading{
  color:#fff;font-size:56px;line-height:.95;letter-spacing:.02em;margin:0 0 24px;
}
.wf-intelligent__text .wf-lead{
  font-family:var(--f-tech);font-weight:600;font-size:18px;line-height:1.3;
  color:#fff;margin:0 0 20px;
}
.wf-intelligent__text .wf-body{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.4;
  color:rgba(255,255,255,.6);margin:0 0 12px;
}
.wf-intelligent__text .wf-body:last-child{margin-bottom:0;}
.wf-intelligent__copy{width:100%;}
.wf-intelligent__more{
  display:none;align-items:center;justify-content:center;
  width:100%;margin-top:8px;padding:4px;color:rgba(255,255,255,.7);
}
.wf-intelligent__more svg{width:22px;height:22px;transition:transform .25s ease;}
.wf-intelligent__copy.is-open + .wf-intelligent__more svg{transform:rotate(180deg);}
.wf-intelligent__can{display:none;}
.wf-lead{font-family:var(--f-tech);font-weight:600;font-size:20px;line-height:1;color:var(--c-ink);}
.wf-body{font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.19;color:var(--c-text-soft);}
.wf-body + .wf-body{margin-top:6px;}

/* who-we-are pill: border hugs text width */
.wf-who-pill{align-self:flex-start;width:fit-content;font-size:10px;border-width:1px;padding:0;}
.wf-intelligent .pill.pill-light.wf-who-pill{border:0;}

/* ==========================================================================
   SECTION: white fox standard (light gray, cards)
   ========================================================================== */
.wf-standard{background:var(--c-gray-bg);padding:120px 0;text-align:center;}
.wf-standard .wf-container{
  display:flex;flex-direction:column;align-items:center;gap:40px;
}
.wf-standard__intro{
  display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;
}
.wf-standard__title-shadow{
  width:100%;
  filter:
    drop-shadow(-2px -3px 9px rgba(30,58,117,.14))
    drop-shadow(2px 2px 6px rgba(209,228,235,.52))
    drop-shadow(0 7px 17.4px rgba(0,0,0,.13));
}
.wf-standard__title,
.wf-heading.wf-standard__title{
  margin:0;width:100%;
  font-size:clamp(72px,11.94vw,172px);line-height:.93;letter-spacing:.03em;
  color:transparent;
}
.wf-standard__title > span{display:inline;}
.wf-standard__title > span:not(.wf-standard__gap){
  background:linear-gradient(109deg,rgba(0,137,192,.95) 41%,rgba(30,107,162,.95) 78%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.wf-standard__gap{
  white-space:pre;
  -webkit-text-fill-color:transparent;color:transparent;
}
.wf-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left;width:100%;}
.wf-card{
  background:#fff;border-radius:16px;padding:24px;min-height:0;
  display:flex;flex-direction:column;align-items:flex-start;gap:16px;
  box-shadow:0 19px 21px rgba(0,0,0,.03);
}
.wf-card__icon{width:40px;height:40px;margin:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.wf-card__icon img{width:40px;height:40px;object-fit:contain;display:block;}
.wf-card__body{display:flex;flex-direction:column;gap:8px;width:100%;}
.wf-card h3.wf-subtitle{
  margin:0;font-size:20px;line-height:1.1;letter-spacing:.02em;color:#000;
}
.wf-card p{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:rgba(0,0,0,.6);margin:0;
}

/* ==========================================================================
   SECTION: nikotek standard (dark, cards)
   ========================================================================== */
.wf-nikotek{
  background:linear-gradient(180deg,#313131 0%,#212121 100%);color:#fff;
  padding:120px 0;border-radius:56px 56px 0 0;
}
.wf-nikotek .wf-container{
  display:flex;flex-direction:column;align-items:flex-start;gap:40px;
}
.wf-nikotek__logo{
  margin:0;display:block;line-height:0;
}
.wf-nikotek__logo img{
  width:384px;max-width:100%;height:auto;display:block;
  filter:drop-shadow(0 0 18px rgba(28,170,225,.55));
}
.wf-nikotek__title,
.wf-heading.wf-nikotek__title{
  margin:0;max-width:968px;
  font-size:96px;line-height:.93;letter-spacing:.03em;
  color:rgba(255,255,255,.85);text-align:left;
}
.wf-cards-dark{
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:100%;
}
.wf-card-dark{
  background:linear-gradient(149deg,rgba(255,255,255,.14) 20%,rgba(255,255,255,.06) 87%);
  border:none;border-radius:16px;padding:24px;text-align:left;
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:0;
}
.wf-card-dark__icon{
  width:80px;height:80px;margin:0;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.wf-card-dark__icon img{width:60px;height:60px;object-fit:contain;display:block;}
.wf-card-dark h3.wf-subtitle{
  margin:0;font-size:20px;line-height:1.1;letter-spacing:.02em;color:#fff;text-align:left;
}
.wf-card-dark p{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:rgba(255,255,255,.6);margin:0;text-align:left;
}

/* image-based slider variant (homepage) */
.wf-slider--image{height:820px;max-height:820px;}
.wf-slider--image .wf-slides{height:820px;max-height:820px;}
.wf-slider--image .wf-slide,
.wf-slider--image .wf-slide.slide-dark,
.wf-slider--image .wf-slide.slide-green{
  background-color:#0a2140;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  height:820px;max-height:820px;min-height:820px;
}
.wf-slider--image .wf-slide--1{background-image:url("../assets/images/slider-1-desktop.webp") !important;}
.wf-slider--image .wf-slide--2{background-image:url("../assets/images/slider-2-desktop.webp") !important;}
.wf-slider--image .wf-slide--3{background-image:url("../assets/images/slider-3-desktop.webp") !important;}
.wf-slider--image .wf-slide::before{display:none;}
.wf-slider--image .wf-slide__media{display:none;}
.wf-slide__can{display:none;}
.wf-slider--image .wf-slide.is-active{aspect-ratio:unset;height:820px;}
.wf-slider--image .wf-slide .wf-container{min-height:820px;max-height:820px;height:820px;align-items:stretch;}
.wf-slider--image .wf-slide__text{min-height:820px;max-height:820px;}
.wf-slider .wf-container{max-width:none;margin:0;padding-left:var(--gutter);padding-right:0;}

@media (max-width:767px){
  .wf-slider--image .wf-slide--1{background-image:url("../assets/images/home-slider-mobile-blue-bg.webp") !important;}
  .wf-slider--image .wf-slide--2{background-image:url("../assets/images/home-slider-mobile-green-bg.webp") !important;}
  .wf-slider--image .wf-slide--3{background-image:url("../assets/images/home-slider-mobile-black-bg.webp") !important;}
}

/* ==========================================================================
   SECTION: the lineup (blue)
   ========================================================================== */
.wf-lineup{position:relative;background:url("../assets/images/homepage-background.webp") center/cover no-repeat;color:#fff;padding:120px 0;overflow:hidden;}
.wf-lineup::before{display:none;}
.wf-lineup__head{text-align:center;position:relative;}
.wf-lineup__art{width:min(100%,1742px);height:auto;margin:0 auto;display:block;}
.wf-lineup__sub{margin:40px 0;text-transform:uppercase;}
.wf-br-mob{display:none;}
.wf-lineup__desc{max-width:711px;margin:0 auto 40px;font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;color:#fff;}
.wf-products{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;}
.wf-product{
  background:rgba(255,255,255,.7);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);
  border-radius:32px;padding:22px 18px 24px;color:var(--c-ink);
  display:flex;flex-direction:column;min-height:0;height:auto;text-align:center;
}
.wf-product__img{
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  margin:0 auto 18px;flex-shrink:0;width:100%;height:auto;background:transparent;
}
.wf-product__img img{width:100%;height:auto;}
.wf-product h3.wf-subtitle{
  margin:0 0 14px;text-transform:uppercase;letter-spacing:.03em;text-align:center;flex-shrink:0;color:var(--c-ink);
}
.wf-product__meta{
  display:flex;align-items:center;justify-content:space-between;gap:6px;
  width:100%;margin:0 0 14px;padding:8px 12px;border-radius:100px;
  background:rgba(255,255,255,.6);flex-shrink:0;
}
.wf-product__meta-item{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0;
  font-family:var(--f-body);font-weight:700;font-size:14px;line-height:1;color:var(--c-ink);
  white-space:nowrap;
}
.wf-product__meta-item + .wf-product__meta-item{
  border-left:1px solid rgba(17,17,20,.12);padding-left:8px;
}
.wf-product__meta-item img,
.wf-product__meta-item svg{width:14px;height:14px;flex-shrink:0;color:var(--c-accent);}
.wf-product p{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;color:rgba(0,0,0,.6);
  margin:0 0 18px;flex:1 1 auto;min-height:0;overflow:hidden;text-align:left;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;text-overflow:ellipsis;
}
.wf-product .btn{width:100%;flex-shrink:0;margin-top:auto;border-radius:12px;}
.wf-lineup__all{text-align:center;margin-top:40px;}
.wf-seeall{display:inline-flex;background:#fff;color:var(--c-ink);font-family:var(--f-tech);font-weight:600;font-size:11px;
  letter-spacing:.08em;text-transform:uppercase;padding:12px 22px;border-radius:12px;}

/* Related products (product pages) */
.wf-related{
  position:relative;
  background:url("../assets/images/homepage-background.webp") center/cover no-repeat;
  color:#fff;padding:120px 0;overflow:hidden;
}
.wf-related__mfr{margin:0 0 64px;}
.wf-related__title{
  text-align:left;color:#fff;margin:0 0 40px;
  text-transform:uppercase;
}

/* ---- CTA panel (talk directly) ---- */
.wf-cta-panel{
  margin-top:120px;border-radius:28px;padding:100px;position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.18) 100%);
  backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);
  box-shadow:0 10px 64px rgba(255,255,255,.07);
}
.wf-cta-panel::before{content:"";position:absolute;inset:0;background-image:url("../assets/images/fox-watermark.svg");
  background-size:220px;mix-blend-mode:overlay;opacity:.45;pointer-events:none;}
.wf-cta-panel__inner{position:relative;width:720px;max-width:100%;}
.wf-cta-panel h2.wf-heading{margin:16px 0 0;color:rgba(255,255,255,.85);font-size:96px;line-height:.93;letter-spacing:.03em;}
.wf-cta-panel p{font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.19;color:rgba(255,255,255,.82);margin:0 0 26px;}
.wf-cta-panel p.wf-subtitle{
  font-family:var(--f-tech);font-weight:600;font-size:20px;line-height:1.1;
  letter-spacing:.02em;margin:40px 0;color:rgba(255,255,255,.85);max-width:705px;
}
.wf-cta-panel p b{color:#fff;}
.wf-cta-panel .btn{width:auto;min-width:195px;height:40px;border-radius:12px;padding:0 16px;}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.wf-footer{
  background:linear-gradient(180deg,#313131 0%,#212121 100%);color:#fff;
  padding:80px 0 24px;position:relative;
}
.wf-footer .wf-container{
  display:flex;flex-direction:column;align-items:flex-start;gap:40px;
}
.wf-footer__logo{display:block;line-height:0;}
.wf-footer__logo img{width:66px;height:55px;object-fit:contain;display:block;}
.wf-footer__mid{
  display:flex;justify-content:space-between;align-items:flex-start;gap:24px;width:100%;
}
.wf-footer__tag{
  max-width:786px;margin:0;flex:1 1 auto;
  font-family:var(--f-tech);font-weight:600;font-size:20px;line-height:1.1;
  letter-spacing:.02em;color:#fff;text-transform:none;
}
.wf-footer__nav{
  display:flex;align-items:flex-start;flex-shrink:0;margin-left:auto;
}
.wf-footer__nav a{
  font-family:var(--f-tech);font-weight:600;font-size:13px;letter-spacing:.02em;
  text-transform:uppercase;color:#fff;transition:.2s;white-space:nowrap;
  height:37px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;
}
.wf-footer__nav a:hover{color:var(--c-accent);}
.wf-footer__bottom{
  display:flex;justify-content:space-between;align-items:flex-end;gap:56px;width:100%;
}
.wf-footer__copy{
  display:flex;flex-direction:column;gap:0;flex:1 1 auto;min-width:0;
  font-family:var(--f-body);font-weight:400;font-size:12px;line-height:1.45;
  color:rgba(255,255,255,.4);
}
.wf-footer__legal{
  display:flex;align-items:center;flex-shrink:0;
}
.wf-footer__legal a{
  font-family:var(--f-tech);font-weight:600;font-size:10px;letter-spacing:.13em;
  text-transform:uppercase;color:rgba(255,255,255,.55);transition:.2s;white-space:nowrap;
  padding:0 16px;display:inline-flex;align-items:center;justify-content:center;
}
.wf-footer__legal a:hover{color:#fff;}
.wf-footer__legal a:first-child{padding-left:0;}
.wf-footer__legal a:last-child{padding-right:0;}

/* ==========================================================================
   MODALS (age gate + contact)
   ========================================================================== */
.wf-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:20px;}
.wf-modal.is-open{display:flex;}
.wf-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.85);backdrop-filter:none;}
.wf-modal__dialog{position:relative;z-index:2;background:#fff;border-radius:var(--radius-lg);width:100%;max-width:520px;
  padding:48px 44px;text-align:center;animation:wf-pop .35s ease;}
@keyframes wf-pop{from{opacity:0;transform:translateY(18px) scale(.97);}to{opacity:1;transform:none;}}

/* age gate */
.wf-modal--age{padding:16px;}
.wf-age__bg{
  background:#002661 url("../assets/images/confirm-age-backrgound.webp") center/cover no-repeat;
  backdrop-filter:none;
}
.wf-age{
  background:#fff;color:#000;max-width:496px;width:100%;
  padding:80px;border-radius:28px;box-shadow:0 24px 60px rgba(0,0,0,.35);
  display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center;
}
.wf-age__logo{display:flex;justify-content:center;margin:0;}
.wf-age__logo img{width:66px;height:55px;object-fit:contain;}
.wf-age h2{
  font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:53px;line-height:.96;letter-spacing:.03em;margin:0;color:#000;
}
.wf-age > p{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:#000;margin:0;max-width:336px;
}
.wf-age__actions{display:flex;flex-direction:column;gap:13px;align-items:stretch;width:100%;}
.wf-age__actions .btn{
  width:100%;height:42px;padding:0 16px;font-size:13px;letter-spacing:.02em;
  border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
}
.wf-age__actions .btn-outline{
  border:1.5px solid rgba(0,0,0,.2);color:#000;background:transparent;
}
.wf-age__actions .btn-outline:hover{
  border-color:rgba(0,0,0,.45);background:transparent;box-shadow:none;color:#000;
}
.wf-age__warn{
  margin:0;font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:rgba(0,0,0,.4);max-width:none;
}

/* contact */
#wfContactModal .wf-modal__overlay{background:rgba(0,0,0,.6);}
.wf-contact__dialog{
  max-width:506px;width:100%;text-align:center;
  padding:80px;border-radius:24px;
}
.wf-contact__view{
  display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;
}
.wf-contact__view.is-hidden{display:none;}
.wf-contact__logo{justify-content:center;margin:0;}
.wf-contact__logo img{width:66px;height:55px;object-fit:contain;}
.wf-contact h2,.wf-contact .wf-heading{
  font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:53px;line-height:.96;letter-spacing:1.59px;margin:0;color:#000;
}
.wf-contact p.sub{
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:rgba(0,0,0,.6);margin:0;max-width:336px;
}
.wf-br-desk{display:revert;}
.wf-contact form{
  width:100%;display:flex;flex-direction:column;gap:24px;margin:0;
}
.wf-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;}
.wf-field{margin:0;text-align:left;display:flex;flex-direction:column;gap:8px;width:100%;}
.wf-field label{
  display:block;font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:rgba(0,0,0,.6);margin:0;text-transform:none;letter-spacing:0;
}
.wf-field input,.wf-field textarea{
  width:100%;border:none;border-radius:12px;padding:12px;
  font-family:var(--f-body);font-weight:500;font-size:17px;line-height:1.1;
  color:#000;transition:.2s;background:#f5f5f5;
}
.wf-field input{height:43px;}
.wf-field input::placeholder,.wf-field textarea::placeholder{color:rgba(0,0,0,.2);}
.wf-field input:focus,.wf-field textarea:focus{outline:none;box-shadow:0 0 0 1.5px var(--c-accent);background:#fff;}
.wf-field textarea{min-height:72px;height:72px;resize:vertical;}
.wf-contact .btn{
  width:100%;height:42px;padding:0 16px;font-size:13px;letter-spacing:.02em;
  margin:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
}
.wf-modal__close{
  position:absolute;top:0;right:0;width:80px;height:80px;border:none;border-radius:0;
  display:flex;align-items:center;justify-content:center;background:transparent;padding:0;z-index:3;
}
.wf-modal__close img{width:40px;height:40px;display:block;}
.wf-form-success{display:none;text-align:center;padding:0;}
.wf-form-success.is-show{
  display:flex;flex-direction:column;align-items:center;gap:24px;width:100%;
}
.wf-form-success .wf-heading{margin:0;}
.wf-form-success .sub{margin:0;max-width:336px;}
.wf-form-success .btn{max-width:100%;}

/* lock scroll while modal open */
body.wf-lock{overflow:hidden;}

/* reveal-on-scroll animation base (jQuery toggles .in) */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}

/* ==========================================================================
   COOKIE CONSENT WIDGET
   ========================================================================== */
.wf-cookies{
  position:fixed;right:24px;bottom:24px;z-index:1100;
  width:min(360px,calc(100vw - 32px));
  background:#fff;border-radius:20px;
  box-shadow:0 16px 48px rgba(17,17,20,.18);
  padding:22px 22px 20px;
  display:none;flex-direction:column;gap:12px;
  animation:wf-pop .35s ease;
}
.wf-cookies.is-show{display:flex;}
.wf-cookies__title{
  display:flex;align-items:center;gap:10px;
  font-family:var(--f-tech);font-weight:600;font-size:16px;line-height:1.2;color:var(--c-ink);margin:0;
}
.wf-cookies__title svg{width:22px;height:22px;flex-shrink:0;color:var(--c-ink);}
.wf-cookies__text{
  font-family:var(--f-body);font-weight:500;font-size:14px;line-height:1.4;
  color:var(--c-text-soft);margin:0;
}
.wf-cookies__text a{color:var(--c-accent);text-decoration:underline;text-underline-offset:2px;}
.wf-cookies__text a:hover{opacity:.8;}
.wf-cookies__actions{display:flex;gap:10px;margin-top:4px;}
.wf-cookies__actions .btn{flex:1;justify-content:center;padding:12px 16px;font-size:12px;}

/* ==========================================================================
   PRODUCTS PAGE
   ========================================================================== */
.wf-products-hero{
  position:relative;color:#fff;overflow:hidden;
  background:#0a2140 url("../assets/images/hero-products.webp") center/cover no-repeat;
  height:720px;min-height:720px;display:flex;align-items:center;
}
.wf-products-hero .wf-container{
  width:100%;padding-top:140px;padding-bottom:100px;
}
.wf-products-hero__text{
  max-width:560px;display:flex;flex-direction:column;align-items:flex-start;gap:24px;
}
.wf-products-hero__desc{
  font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.19;
  color:rgba(255,255,255,.8);max-width:420px;margin:0;
}
.wf-products-hero__cta{display:flex;flex-wrap:wrap;gap:13px;}
.wf-products-hero__cta .btn-outline-light{color:#fff;}

.wf-products-catalog{
  background:var(--c-gray-bg);padding:120px 0;
}
.wf-products--catalog{
  display:flex;flex-direction:column;gap:24px;
  grid-template-columns:unset;
}
.wf-products-catalog .wf-product{
  position:relative;overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,40%);
  grid-template-rows:auto auto 1fr auto;
  column-gap:40px;row-gap:18px;
  align-items:center;
  min-height:340px;height:auto;padding:80px;
  border-radius:32px;text-align:left;
  background-color:#0a2140;background-size:cover;background-position:center;
  background-repeat:no-repeat;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  color:#fff;box-shadow:none;
}
.wf-products-catalog .wf-product--classic{
  background-image:url("../assets/images/white-fox-classic-cover.webp");
}
.wf-products-catalog .wf-product--peppered{
  background-image:url("../assets/images/white-fox-peppered-mint-cover.webp");
}
.wf-products-catalog .wf-product--full-charge{
  background-image:url("../assets/images/white-fox-full-charge-cover.webp");
}
.wf-products-catalog .wf-product--black{
  background-image:url("../assets/images/white-fox-black-edition-cover.webp");
}
.wf-products-catalog .wf-product--double-mint{
  background-image:url("../assets/images/white-fox-double-mint-cover.webp");
}
.wf-products-catalog .wf-product h3.wf-subtitle{
  grid-column:1;grid-row:1;margin:0;
  color:#fff;text-align:left;
  font-family:var(--f-display);font-weight:700;font-size:96px;line-height:.93;
  letter-spacing:.02em;text-transform:uppercase;
}
.wf-products-catalog .wf-product--classic .wf-product__variant{color:#44D2FF;}
.wf-products-catalog .wf-product--double-mint .wf-product__variant{color:#4DF3E9;}
.wf-products-catalog .wf-product--peppered .wf-product__variant{color:#CDFF86;}
.wf-products-catalog .wf-product--full-charge .wf-product__variant{color:#FEA0A0;}
.wf-products-catalog .wf-product--black .wf-product__variant{color:#000;}
.wf-products-catalog .wf-product__img{
  grid-column:2;grid-row:1 / -1;
  width:min(100%,320px);max-height:none;aspect-ratio:1;
  margin:0 auto;border-radius:0;align-self:center;
}
.wf-products-catalog .wf-product__img img{width:100%;height:auto;filter:drop-shadow(0 18px 28px rgba(0,0,0,.35));}
.wf-products-catalog .wf-product__meta{
  grid-column:1;grid-row:2;width:275px;max-width:100%;
  margin:0;padding:10px 16px;background:#fff;
}
.wf-products-catalog .wf-product p{
  grid-column:1;grid-row:3;margin:0;align-self:start;
  color:rgba(255,255,255,.9);font-size:15px;line-height:1.4;text-align:left;
  -webkit-line-clamp:4;line-clamp:4;
}
.wf-products-catalog .wf-product .btn,
.wf-products-catalog .wf-product__btn{
  grid-column:1;grid-row:4;width:195px;margin-top:8px;
  border-radius:12px;border:none;font-weight:700;color:#111;
}
.wf-products-catalog .wf-product--classic .wf-product__btn{background:#1CAAE1;color:#fff;}
.wf-products-catalog .wf-product--classic .wf-product__btn:hover{background:#1391c2;color:#fff;}
.wf-products-catalog .wf-product--double-mint .wf-product__btn{background:#4DF3E9;color:#0a3d3a;}
.wf-products-catalog .wf-product--double-mint .wf-product__btn:hover{background:#3adfd5;color:#0a3d3a;}
.wf-products-catalog .wf-product--peppered .wf-product__btn{background:#C2FF7F;color:#1a3a0a;}
.wf-products-catalog .wf-product--peppered .wf-product__btn:hover{background:#b2f06a;color:#1a3a0a;}
.wf-products-catalog .wf-product--full-charge .wf-product__btn{background:#FEA0A0;color:#4a1010;}
.wf-products-catalog .wf-product--full-charge .wf-product__btn:hover{background:#f58e8e;color:#4a1010;}
.wf-products-catalog .wf-product--black .wf-product__btn{background:#fff;color:#111;}
.wf-products-catalog .wf-product--black .wf-product__btn:hover{background:#f0f0f0;color:#111;}

/* ==========================================================================
   DESKTOP (≥1200px) — Figma homepage spec
   ========================================================================== */
@media (min-width:1200px){
  .wf-heading{font-size:96px;line-height:.93;letter-spacing:.03em;}
  .wf-subtitle{font-size:20px;line-height:1;}
  .wf-lead{font-size:20px;line-height:1;}
  .wf-slide__text{flex:0 0 75%;width:75%;max-width:75%;}
  .wf-intelligent__text .wf-heading{font-size:64px;}
  .wf-intelligent__text .wf-lead{font-size:20px;}
}

/* ==========================================================================
   RESPONSIVE — TABLET (≤1199px)
   ========================================================================== */
@media (max-width:1199px){
  :root{--gutter:56px;}
  .display-xl,.wf-slide__title,.wf-heading{font-size:72px;}
  .wf-cards{grid-template-columns:repeat(2,1fr);}
  .wf-heading.wf-nikotek__title{font-size:72px;line-height:.93;}
  .wf-cards-dark{grid-template-columns:repeat(2,1fr);}
  .wf-products{grid-template-columns:repeat(2,1fr);}
  .wf-products--catalog{display:flex;flex-direction:column;gap:20px;}
  .wf-products-catalog .wf-product{
    min-height:300px;padding:48px 40px;column-gap:28px;
  }
  .wf-products-catalog .wf-product h3.wf-subtitle{font-size:64px;line-height:.93;}
  .wf-slide__text{flex-basis:75%;width:75%;max-width:75%;}
  .wf-intelligent{padding:64px 0;}
  .wf-intelligent__panel{border-radius:28px;}
  .wf-intelligent__text .wf-heading{font-size:40px;margin-bottom:18px;}
  .wf-intelligent__text .wf-lead{font-size:16px;margin-bottom:16px;}
  .wf-intelligent__text .wf-body{font-size:15px;}
  .wf-cta-panel h2.wf-heading{font-size:53px;line-height:.98;}
  .wf-products-hero{height:720px;min-height:720px;}
  .wf-products-hero .wf-container{padding-top:72px;padding-bottom:72px;}
}

/* ==========================================================================
   RESPONSIVE — MOBILE (≤767px)
   ========================================================================== */
@media (max-width:767px){
  :root{--gutter:20px;}
  .wf-header{height:66px;border-bottom:none;}
  .wf-header + .wf-slider,
  .wf-header + .wf-products-hero,
  .wf-header + .wf-pd--v2{margin-top:-66px;}
  .wf-header .wf-container{display:flex;justify-content:center;}
  .wf-logo img{height:34px;}

  .wf-field-row{grid-template-columns:1fr;}
  .wf-contact__dialog{padding:40px 24px 24px;max-width:100%;}
  .wf-contact h2,.wf-contact .wf-heading{font-size:53px;line-height:.96;letter-spacing:1.59px;}
  .wf-contact p.sub{max-width:none;}
  .wf-br-desk{display:none;}
  .wf-field textarea{min-height:92px;height:92px;}
  .wf-modal{padding:16px;}

  /* Mobile type scale */
  h1,h2,h3,
  .wf-heading,
  .wf-slide__title,
  .display-xl,
  .display-lg,
  .display-md{font-size:53px;line-height:.98;}
  .wf-subtitle,
  .wf-lead,
  .wf-cta-panel p.wf-subtitle{font-size:20px;line-height:1;}
  .wf-body,
  .wf-slide__desc,
  .wf-card p,
  .wf-card-dark p,
  .wf-product p,
  .wf-lineup__desc,
  .wf-standard__sub,
  .wf-cta-panel p:not(.wf-subtitle){font-size:17px;line-height:1.19;}
  .wf-card p{font-size:17px;}
  .wf-slide__desc{max-width:100%;}

  .wf-slider{min-height:0;}
  .wf-slide .wf-container{flex-direction:column;gap:26px;padding-top:0;padding-bottom:40px;}
  .wf-slide__text{
    flex-basis:100%;width:100%;max-width:100%;
    padding-top:110px;padding-bottom:110px;gap:18px;
    align-items:flex-start;justify-content:flex-start;
  }
  .wf-slider--image,
  .wf-slider--image .wf-slides,
  .wf-slider--image .wf-slide,
  .wf-slider--image .wf-slide.slide-dark,
  .wf-slider--image .wf-slide.slide-green{height:700px;max-height:700px;min-height:700px;}
  .wf-slider--image .wf-slide.is-active{aspect-ratio:unset;min-height:700px;height:700px;}
  .wf-slider--image .wf-slide .wf-container{
    padding-right:var(--gutter);padding-bottom:28px;min-height:700px;height:700px;
  }
  .wf-slider--image .wf-slide__text{
    min-height:100%;height:100%;max-height:none;
    padding-top:100px;padding-bottom:0;box-sizing:border-box;
  }
  .wf-slide__can{
    display:block;width:min(72%,280px);height:auto;margin:4px auto;
    filter:drop-shadow(0 18px 28px rgba(0,0,0,.35));
  }
  .wf-slide__desc{max-width:100%;}
  .wf-slide__cta{
    width:calc(100% - 168px);max-width:calc(100% - 168px);
    margin-top:auto;flex-shrink:0;
  }
  .wf-slide__cta .btn{
    width:100%;max-width:100%;height:48px;border-radius:12px;
    padding:0 18px;display:inline-flex;align-items:center;justify-content:center;
  }
  .wf-slider__controls{
    left:auto;right:var(--gutter);bottom:28px;transform:none;
    height:48px;padding:4px 6px;gap:8px;box-sizing:border-box;
  }
  .wf-slider__arrow{width:36px;height:36px;}
  .wf-slide__media{order:-1;}
  .wf-slide__media img{width:80%;}

  .wf-intelligent{padding:40px 0;}
  .wf-intelligent__panel{
    aspect-ratio:auto;min-height:0;height:auto;border-radius:32px;
    display:flex;flex-direction:column;align-items:stretch;
    background:#002661 url("../assets/images/intelegent-mobile-bg.webp") center top/cover no-repeat;
  }
  .wf-intelligent__text{
    width:100%;max-width:100%;padding:40px 24px 16px;justify-content:flex-start;
  }
  .wf-intelligent__text .wf-heading{font-size:42px;line-height:.95;margin-bottom:18px;}
  .wf-intelligent__text .wf-lead{font-size:16px;line-height:1.3;margin-bottom:16px;}
  .wf-intelligent__text .wf-body{font-size:15px;line-height:1.4;}
  .wf-intelligent__copy .wf-body:first-child{
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;
    overflow:hidden;margin-bottom:0;
  }
  .wf-intelligent__copy .wf-body:nth-child(n+2){display:none;}
  .wf-intelligent__copy.is-open .wf-body:first-child{
    display:block;-webkit-line-clamp:unset;overflow:visible;margin-bottom:12px;
  }
  .wf-intelligent__copy.is-open .wf-body:nth-child(n+2){display:block;}
  .wf-intelligent__more{display:flex;}
  .wf-intelligent__can{
    display:block;width:100%;height:auto;margin-top:4px;
    position:relative;z-index:0;pointer-events:none;
  }

  .wf-standard{padding:64px 0;}
  .wf-standard .wf-container{gap:28px;align-items:stretch;}
  .wf-standard__intro{align-items:flex-start;gap:16px;}
  .wf-standard__intro .pill{align-self:center;}
  .wf-standard__title-shadow{width:100%;}
  .wf-standard__title,
  .wf-heading.wf-standard__title{
    display:flex;flex-direction:column;align-items:flex-start;
    font-size:clamp(72px,24vw,96px);line-height:.93;letter-spacing:.03em;
    text-align:left;
  }
  .wf-standard__title > span{display:block;}
  .wf-standard__gap{display:none;}
  .wf-cards{
    display:flex;grid-template-columns:unset;align-items:stretch;
    gap:14px;overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;scroll-padding-left:20px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    width:calc(100% + var(--gutter) * 2);max-width:none;
    margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1);
    padding-left:20px;padding-right:0;padding-bottom:4px;
    box-sizing:border-box;
  }
  .wf-cards::-webkit-scrollbar{display:none;}
  .wf-card{
    flex:0 0 82%;max-width:300px;width:82%;
    min-height:0;scroll-snap-align:start;height:100%;
  }

  .wf-nikotek{padding:64px 20px;border-radius:32px 32px 0 0;}
  .wf-nikotek .wf-container{gap:28px;padding-left:0;padding-right:0;}
  .wf-nikotek__logo{margin-bottom:0;}
  .wf-nikotek__logo img{width:200px;height:auto;}
  .wf-nikotek__title,
  .wf-heading.wf-nikotek__title{
    margin:0;font-size:53px;line-height:.98;letter-spacing:.03em;max-width:none;
  }
  .wf-cards-dark{grid-template-columns:1fr;gap:16px;}
  .wf-card-dark{padding:24px;}
  .wf-card-dark__icon{width:64px;height:64px;}
  .wf-card-dark__icon img{width:48px;height:48px;}
  .wf-card-dark h3.wf-subtitle{font-size:20px;line-height:1.1;}
  .wf-card-dark p{font-size:17px;line-height:1.1;}

  .wf-lineup{padding:64px 0;}
  .wf-lineup__sub{margin:28px 0;}
  .wf-br-mob{display:revert;}
  .wf-pill-desk{display:none;}
  .wf-pill-mob{display:inline-flex;}
  .wf-lineup__desc{margin-bottom:28px;}
  .wf-lineup__all{margin-top:28px;}
  .wf-related{padding:64px 0;}
  .wf-related__mfr{margin-bottom:40px;}
  .wf-related__title{margin-bottom:28px;font-size:42px;}
  .wf-products{grid-template-columns:1fr;}
  .wf-lineup .wf-products,
  .wf-related .wf-products{
    display:flex;grid-template-columns:unset;align-items:stretch;
    gap:16px;overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;scroll-padding-left:20px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    width:calc(100% + var(--gutter) * 2);max-width:none;
    margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1);
    padding-left:20px;padding-right:0;padding-bottom:4px;
    box-sizing:border-box;
  }
  .wf-lineup .wf-products::-webkit-scrollbar,
  .wf-related .wf-products::-webkit-scrollbar{display:none;}
  .wf-lineup .wf-product,
  .wf-related .wf-product{
    flex:0 0 82%;max-width:320px;width:82%;
    scroll-snap-align:start;height:100%;
  }
  .wf-lineup .wf-product h3.wf-subtitle,
  .wf-related .wf-product h3.wf-subtitle{
    font-family:var(--f-display);font-weight:700;font-size:56px;line-height:.93;
    letter-spacing:.02em;text-transform:uppercase;
  }
  .wf-products--catalog{display:flex;flex-direction:column;gap:18px;}
  .wf-products-catalog .wf-product{
    display:flex;flex-direction:column;align-items:center;
    min-height:0;padding:40px 24px 28px;gap:16px;text-align:center;
  }
  .wf-products-catalog .wf-product h3.wf-subtitle{
    order:1;grid-column:auto;grid-row:auto;
    width:100%;margin:0;font-size:56px;line-height:.93;
    text-align:center;color:#fff;
  }
  .wf-products-catalog .wf-product__img{
    order:2;grid-column:auto;grid-row:auto;
    width:min(78%,260px);margin:4px auto 0;
  }
  .wf-products-catalog .wf-product__meta{
    order:3;grid-column:auto;grid-row:auto;width:100%;max-width:100%;
  }
  .wf-products-catalog .wf-product p{
    order:4;grid-column:auto;grid-row:auto;width:100%;
    color:rgba(255,255,255,.9);text-align:left;
    -webkit-line-clamp:5;line-clamp:5;
  }
  .wf-products-catalog .wf-product .btn,
  .wf-products-catalog .wf-product__btn{
    order:5;grid-column:auto;grid-row:auto;
    width:100%;margin-top:4px;
  }
  .wf-cta-panel{padding:24px 26px;}
  .wf-cta-panel__inner{max-width:100%;}

  .wf-products-hero{
    height:520px;min-height:520px;
    background-image:url("../assets/images/banner-products-mob.webp");
    background-position:center top;
    background-size:cover;
    align-items:flex-start;
  }
  .wf-products-hero .wf-container{
    padding-top:100px;padding-bottom:40px;
    display:flex;align-items:flex-start;min-height:520px;box-sizing:border-box;
  }
  .wf-products-hero__text{max-width:100%;gap:22px;padding-top:8px;}
  .wf-products-hero__text .wf-heading{font-size:53px;line-height:.98;}
  .wf-products-hero__desc{
    max-width:100%;font-size:15px;line-height:1.35;
    color:rgba(255,255,255,.9);
  }
  .wf-products-hero__cta{width:100%;margin-top:8px;}
  .wf-products-hero__cta .btn{
    width:120px;min-width:120px;height:42px;padding:0 15px;
    border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
  }
  .wf-products-catalog{padding:48px 0 64px;}

  .wf-footer{padding:64px 0 24px;}
  .wf-footer .wf-container{gap:28px;}
  .wf-footer__logo img{width:50px;height:42px;}
  .wf-footer__tag{max-width:100%;font-size:16px;line-height:1.2;}
  .wf-footer__mid{flex-direction:column;align-items:flex-start;gap:24px;}
  .wf-footer__nav{margin-left:0;flex-direction:column;align-items:flex-start;gap:4px;}
  .wf-footer__nav a{padding:0;height:auto;min-height:37px;}
  .wf-footer__bottom{flex-direction:column;align-items:flex-start;gap:28px;}
  .wf-footer__copy{order:2;max-width:100%;}
  .wf-footer__legal{order:1;flex-direction:column;align-items:flex-start;gap:12px;}
  .wf-footer__legal a{padding:0;}

  .wf-modal__dialog{padding:36px 24px;}
  .wf-age{max-width:343px;padding:40px 24px;border-radius:28px;gap:24px;}
  .wf-age h2{font-size:53px;line-height:.96;}
  .wf-age__logo img{width:66px;height:55px;}
  .wf-age > p{font-size:17px;line-height:1.1;max-width:100%;}
  .wf-age__warn{font-size:17px;line-height:1.1;}
  .wf-age__avatar{width:34px;height:34px;}

  .wf-cookies{right:16px;bottom:16px;padding:18px 18px 16px;border-radius:16px;}
  .wf-cookies__actions{flex-direction:column;}
}

/* ==========================================================================
   POLICY / LEGAL PAGES
   ========================================================================== */
.wf-legal-page{
  background:var(--c-gray-bg);padding:72px 0 100px;
}
.wf-legal-page .wf-container{max-width:920px;}
.wf-legal-updated{
  display:inline-flex;align-items:center;margin:0 0 20px;
  font-family:var(--f-tech);font-weight:600;font-size:10px;line-height:normal;
  letter-spacing:.13em;text-transform:uppercase;padding:9px 15px;border-radius:100px;
  border:1.5px solid rgba(28,170,225,.5);color:var(--c-accent);background:transparent;
}
.wf-legal-page__title{
  font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:72px;line-height:.93;letter-spacing:.02em;color:var(--c-ink);
  margin:0 0 48px;
}
.wf-legal-page__body{max-width:760px;}
.wf-legal-page__body h2{
  font-family:var(--f-tech);font-weight:600;font-size:20px;line-height:1.2;
  letter-spacing:.02em;text-transform:uppercase;color:var(--c-ink);
  margin:40px 0 14px;
}
.wf-legal-page__body h2:first-child{margin-top:0;}
.wf-legal-page__body h3{
  font-family:var(--f-tech);font-weight:600;font-size:16px;line-height:1.3;
  text-transform:uppercase;color:var(--c-ink);margin:28px 0 10px;
}
.wf-legal-page__body p,
.wf-legal-page__body li{
  font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.55;
  color:var(--c-text-soft);margin:0 0 14px;
}
.wf-legal-page__body ul{margin:0 0 18px;padding-left:22px;list-style:disc;}
.wf-legal-page__body li{margin-bottom:8px;}
.wf-legal-page__body a{color:var(--c-accent);text-decoration:underline;text-underline-offset:2px;}
.wf-legal-page__body a:hover{opacity:.8;}

@media (min-width:1200px){
  .wf-legal-page__title{font-size:96px;}
}
@media (max-width:1199px){
  .wf-legal-page__title{font-size:64px;}
}
@media (max-width:767px){
  .wf-legal-page{padding:48px 0 64px;}
  .wf-legal-page__title{font-size:42px;margin-bottom:32px;}
  .wf-legal-page__body h2{font-size:18px;margin-top:32px;}
}

/* ==========================================================================
   SINGLE PRODUCT PAGE
   ========================================================================== */
.wf-pd{background:var(--c-gray-bg);padding:48px 0 100px;}
.wf-pd__crumb{
  display:flex;align-items:center;flex-wrap:wrap;gap:8px;
  font-family:var(--f-body);font-weight:500;font-size:14px;color:var(--c-text-mut);
  margin:0 0 32px;
}
.wf-pd__crumb a{color:var(--c-text-mut);transition:.2s;}
.wf-pd__crumb a:hover{color:var(--c-accent);}
.wf-pd__crumb span{opacity:.45;}
.wf-pd__layout,
.wf-pd__hero{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:48px;align-items:start;
}
.wf-pd__title--page{display:none;}
.wf-pd__title--panel{display:block;}
.wf-pd__gallery{display:flex;flex-direction:column;align-items:center;gap:28px;}
.wf-pd__gallery-main{
  position:relative;width:100%;display:flex;align-items:center;justify-content:center;
  gap:12px;
}
.wf-pd__nav{
  flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;
  color:rgba(17,17,20,.35);transition:.2s;border-radius:50%;
}
.wf-pd__nav:hover{color:var(--c-ink);}
.wf-pd__nav svg{width:22px;height:22px;}
.wf-pd__thumb{
  width:72px;height:72px;border-radius:50%;padding:6px;
  border:1.5px solid transparent;background:transparent;
  display:flex;align-items:center;justify-content:center;
  transition:opacity .2s ease;overflow:hidden;
  opacity:.4;
}
.wf-pd__thumb img{width:100%;height:100%;object-fit:contain;display:block;background:transparent;}
.wf-pd__thumb.is-active{opacity:1;}
.wf-pd__thumb:hover{opacity:.7;}
.wf-pd__thumb.is-active:hover{opacity:1;}
.wf-pd__media{
  flex:1;display:flex;align-items:center;justify-content:center;
  min-width:0;padding:10px 0;background:transparent;
}
.wf-pd__media img{
  width:min(100%,460px);height:auto;background:transparent;
  filter:drop-shadow(0 20px 36px rgba(0,0,0,.16));
  transition:opacity .35s ease,transform .35s ease;
}
.wf-pd__media img.is-changing{
  opacity:0;transform:scale(.96);
}
.wf-pd__thumbs{display:flex;align-items:center;justify-content:center;gap:14px;}
.wf-pd__panel{
  --pd-accent:var(--c-accent);
  --pd-buy-bg:var(--c-accent);
  --pd-buy-fg:#fff;
  background:#fff;border-radius:20px;padding:40px 40px 36px;
  box-shadow:0 12px 40px rgba(17,17,20,.06);
  display:flex;flex-direction:column;
}
.wf-pd__title{
  font-family:var(--f-display);font-weight:700;text-transform:uppercase;
  font-size:56px;line-height:.93;letter-spacing:.02em;margin:0 0 22px;color:#000;
  text-align:left;white-space:nowrap;
}
.wf-pd__title .wf-pd__br{display:none;}
.wf-pd__stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 22px;
}
.wf-pd__stat{
  display:flex;flex-direction:column;align-items:flex-start;gap:8px;
  background:#f4f4f4;border:none;border-radius:12px;
  padding:14px 14px 16px;min-width:0;
}
.wf-pd__stat-head{
  display:flex;align-items:center;gap:6px;min-width:0;
}
.wf-pd__stat-head img{width:16px;height:16px;object-fit:contain;flex-shrink:0;}
.wf-pd__stat-label{
  font-family:var(--f-body);font-weight:500;font-size:13px;line-height:1.2;
  color:#8a8a8a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.wf-pd__stat-value{
  font-family:var(--f-tech);font-weight:600;font-size:14px;line-height:1.2;
  color:#111;letter-spacing:.01em;
  word-break:break-word;
}
.wf-pd__stat-value small{
  display:inline;font-size:inherit;font-weight:inherit;letter-spacing:inherit;opacity:.9;
}
.wf-pd__desc{margin:0 0 28px;}
.wf-pd__desc > p{
  font-family:var(--f-body);font-weight:500;font-size:15px;line-height:1.45;
  color:#6b6b6b;margin:0;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;
}
.wf-pd__desc.is-open > p{-webkit-line-clamp:unset;display:block;}
.wf-pd__desc-toggle{
  display:flex;align-items:center;justify-content:center;
  width:100%;margin-top:12px;color:#b0b0b0;padding:4px;
}
.wf-pd__desc-toggle svg{transition:transform .25s ease;}
.wf-pd__desc.is-open .wf-pd__desc-toggle svg{transform:rotate(180deg);}
.wf-pd__desc-extra{display:none;margin-top:12px;}
.wf-pd__desc-extra p{
  font-family:var(--f-body);font-weight:500;font-size:15px;line-height:1.45;
  color:#6b6b6b;margin:0;
}
.wf-pd__desc.is-open .wf-pd__desc-extra{display:block;}
.wf-pd__specs-title{
  font-family:var(--f-tech);font-weight:600;font-size:16px;letter-spacing:.02em;
  text-transform:none;color:#111;margin:0 0 8px;
}
.wf-pd__specs{margin:0 0 28px;padding:0;border-top:1px solid #ececec;}
.wf-pd__specs div{
  display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  padding:14px 0;border-bottom:1px solid #ececec;
  font-family:var(--f-body);font-weight:500;font-size:15px;line-height:1.35;
}
.wf-pd__specs b{color:#8a8a8a;font-weight:500;text-align:right;}
.wf-pd__actions{display:flex;margin-top:auto;}
.wf-pd__actions .btn{
  width:100%;flex:none;padding:16px 22px;font-size:14px;border-radius:12px;
  background:var(--pd-buy-bg);border-color:var(--pd-buy-bg);color:var(--pd-buy-fg);
}
.wf-pd__actions .btn:hover{
  filter:brightness(.96);color:var(--pd-buy-fg);
}

/* ---- PDP v2 (full-bleed hero + glass panel) ---- */
.wf-pd--v2{
  --pd-hero-bg:#077667;
  --pd-hero-image:none;
  background-color:var(--pd-hero-bg);
  background-image:var(--pd-hero-image);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  padding:160px 0 120px;
  color:#fff;
}
.wf-pd--double{
  --pd-hero-bg:#077667;
  --pd-hero-image:url("../assets/images/white-fox-double-mint-background.webp");
  --pd-buy-bg:#32E7DC;
  --pd-buy-fg:#006E7C;
}
.wf-pd--classic{
  --pd-hero-bg:#0056A4;
  --pd-hero-image:url("../assets/images/white-fox-classic-background.webp");
  --pd-buy-bg:#1CAAE1;
  --pd-buy-fg:#fff;
}
.wf-pd--peppered{
  --pd-hero-bg:#4E7A2E;
  --pd-hero-image:url("../assets/images/white-fox-peppered-mint-background.webp");
  --pd-buy-bg:#9AC25C;
  --pd-buy-fg:#243714;
}
.wf-pd--full{
  --pd-hero-bg:#8B1A1C;
  --pd-hero-image:url("../assets/images/white-fox-full-charge-background.webp");
  --pd-buy-bg:#F63235;
  --pd-buy-fg:#fff;
}
.wf-pd--black{
  --pd-hero-bg:#151515;
  --pd-hero-image:url("../assets/images/white-fox-black-background.webp");
  --pd-buy-bg:#fff;
  --pd-buy-fg:#111;
}
.wf-pd--black .accent-black{color:#000;}
.wf-pd--v2 .wf-pd__hero{
  grid-template-columns:minmax(0,505fr) minmax(0,645fr);
  gap:48px;
  align-items:stretch;
  margin:0 0 120px;
}
.wf-pd--v2 .wf-pd__gallery{
  align-items:stretch;
  justify-content:space-between;
  gap:0;
  min-height:100%;
  align-self:stretch;
}
.wf-pd--v2 .wf-pd__slider{
  display:flex;flex-direction:column;align-items:center;
  justify-content:space-between;flex:1 1 auto;min-height:0;gap:28px;width:100%;
}
.wf-pd--v2 .wf-pd__crumb{
  width:100%;margin:0;font-size:17px;line-height:1.1;
  color:rgba(255,255,255,.55);
  flex-shrink:0;
}
.wf-pd--v2 .wf-pd__crumb a{color:rgba(255,255,255,.55);}
.wf-pd--v2 .wf-pd__crumb a:hover{color:#fff;}
.wf-pd--v2 .wf-pd__crumb span:last-child{color:rgba(255,255,255,.85);opacity:1;}
.wf-pd--v2 .wf-pd__gallery-main{
  flex:1 1 auto;
  min-height:0;
  align-self:center;
  width:100%;
}
.wf-pd--v2 .wf-pd__nav{color:rgba(255,255,255,.7);width:32px;height:32px;}
.wf-pd--v2 .wf-pd__nav:hover{color:#fff;}
.wf-pd--v2 .wf-pd__media{padding:0;}
.wf-pd--v2 .wf-pd__media img{
  width:min(100%,393px);
  filter:drop-shadow(0 24px 40px rgba(0,0,0,.28));
  transition:opacity .35s ease,transform .35s ease;
}
.wf-pd--v2 .wf-pd__media img.is-changing{
  opacity:0;transform:scale(.96);
}
.wf-pd--v2 .wf-pd__thumbs{
  flex-shrink:0;
  gap:24px;
  padding-top:8px;
}
.wf-pd--v2 .wf-pd__thumb{width:45px;height:45px;opacity:.4;padding:0;}
.wf-pd--v2 .wf-pd__thumb.is-active{
  width:60px;height:60px;opacity:1;
}
.wf-pd--v2 .wf-pd__panel{
  width:100%;
  box-sizing:border-box;
  background:linear-gradient(180deg,rgba(255,255,255,.25) 0%,rgba(255,255,255,.1) 100%);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-radius:40px;padding:40px;box-shadow:0 30px 50px rgba(0,0,0,.04);
  gap:24px;
  min-height:100%;
}
.wf-pd--v2 .wf-pd__title{
  color:rgba(255,255,255,.85);font-size:53px;letter-spacing:.03em;
  line-height:.96;margin:0;white-space:normal;
}
.wf-pd--v2 .wf-pd__stats{gap:12px;margin:0;}
.wf-pd--v2 .wf-pd__stat{
  background:rgba(255,255,255,.11);padding:16px;gap:8px;
}
.wf-pd--v2 .wf-pd__stat-head{gap:8px;}
.wf-pd--v2 .wf-pd__stat-head img{
  width:18px;height:18px;filter:brightness(0) invert(1);opacity:.7;
}
.wf-pd--v2 .wf-pd__stat-label{font-size:17px;color:rgba(255,255,255,.55);}
.wf-pd--v2 .wf-pd__stat-value{
  font-size:13px;letter-spacing:.02em;color:rgba(255,255,255,.85);
}
.wf-pd--v2 .wf-pd__stat-value small{display:block;font-size:inherit;}
.wf-pd--v2 .wf-pd__desc{margin:0;}
.wf-pd--v2 .wf-pd__desc > p{
  font-size:17px;line-height:1.1;color:rgba(255,255,255,.55);
}
.wf-pd--v2 .wf-pd__desc-toggle{color:rgba(255,255,255,.55);margin-top:8px;}
.wf-pd--v2 .wf-pd__specs-title{
  color:#fff;font-size:20px;letter-spacing:.02em;margin:0;
}
.wf-pd--v2 .wf-pd__specs{margin:0;border-top:none;}
.wf-pd--v2 .wf-pd__specs div{
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2);
  font-size:17px;color:rgba(255,255,255,.85);
}
.wf-pd--v2 .wf-pd__specs b{color:rgba(255,255,255,.85);}
.wf-pd--v2 .wf-pd__actions{margin-top:auto;}
.wf-pd--v2 .wf-pd__actions .btn{
  height:42px;padding:0 16px;font-size:13px;letter-spacing:.02em;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--pd-buy-bg,var(--c-accent));
  border-color:var(--pd-buy-bg,var(--c-accent));
  color:var(--pd-buy-fg,#fff);
}
.wf-pd--double .wf-pd__panel{--pd-buy-bg:#32E7DC;--pd-buy-fg:#006E7C;}
.wf-pd--classic .wf-pd__panel{--pd-buy-bg:#1CAAE1;--pd-buy-fg:#fff;}
.wf-pd--peppered .wf-pd__panel{--pd-buy-bg:#9AC25C;--pd-buy-fg:#243714;}
.wf-pd--full .wf-pd__panel{--pd-buy-bg:#F63235;--pd-buy-fg:#fff;}
.wf-pd--black .wf-pd__panel{--pd-buy-bg:#fff;--pd-buy-fg:#111;}

.wf-pd__related{padding:0;}
.wf-pd__related-title{
  margin:0 0 48px;color:rgba(255,255,255,.85);
  text-transform:uppercase;text-align:left;
}
.wf-pd--v2 .wf-product{
  text-decoration:none;color:inherit;
  border-radius:28px;padding:16px;min-height:548px;
}
.wf-pd--v2 .wf-product .btn{
  border-radius:12px;height:42px;padding:0 16px;font-size:13px;
  display:inline-flex;align-items:center;justify-content:center;
}

/* Manufacturer */
.wf-mfr--brand,
.wf-mfr--mark{background:#fff;padding:120px 0;}
.wf-mfr--mark{border-top:1px solid #ececec;}
.wf-mfr__grid{
  display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:56px;align-items:start;
}
.wf-mfr__aside{display:flex;flex-direction:column;align-items:flex-start;gap:28px;}
.wf-mfr__logo{display:block;height:auto;}
.wf-mfr__logo--wordmark{width:240px;max-width:100%;}
.wf-mfr__logo--mark{width:115px;max-width:100%;}
.wf-mfr--brand .wf-heading,
.wf-mfr--mark .wf-heading{
  margin:0;color:#111;font-size:96px;line-height:.93;
  text-transform:uppercase;
}
.wf-mfr__body{display:flex;flex-direction:column;align-items:flex-start;}
.wf-mfr__copy p{
  font-family:var(--f-body);font-weight:500;font-size:16px;line-height:1.45;
  color:#6b6b6b;margin:0 0 14px;
}
.wf-mfr__copy p:last-child{margin-bottom:0;}
.wf-mfr__points{display:flex;flex-direction:column;gap:12px;margin:28px 0 28px;width:100%;}
.wf-mfr__points p{
  margin:0;font-family:var(--f-body);font-weight:700;font-size:16px;line-height:1.35;color:#222;
}
.wf-mfr__points--bar p{
  border-left:3px solid #1CAAE1;padding:4px 0 4px 16px;
}
.wf-mfr__points--chip p{
  background:#ececec;border-radius:10px;padding:14px 18px;
}
.wf-mfr__cta{
  width:auto;min-width:280px;height:42px;padding:0 22px;border-radius:12px;font-size:13px;
  background:#1CAAE1;border-color:#1CAAE1;color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
}
.wf-mfr__cta:hover{background:#1391c2;border-color:#1391c2;color:#fff;}

/* Manufacturer — dark panel */
.wf-mfr--panel{background:var(--c-gray-bg,#ededed);padding:120px 0;}
.wf-mfr__panel{
  position:relative;overflow:hidden;border-radius:28px;color:#fff;
  background:#0a2e4c url("../assets/images/swedish-smokeless-background-1-desktop.webp") right center/cover no-repeat;
  background-color:#0a2e4c;
  box-sizing:border-box;
  min-height:736px;
}
.wf-mfr--panel-2 .wf-mfr__panel{
  background-image:url("../assets/images/swedish-smokeless-background-2-desktop.webp");
}
.wf-mfr--panel-3.wf-mfr__panel,
.wf-mfr--panel-3 .wf-mfr__panel{
  color:#111;min-height:0;
  background-color:#fff;
  background-image:url("../assets/images/swedish-smokeless-background-3-desktop.webp");
  background-position:center;
}
.wf-mfr__panel-inner{
  position:relative;z-index:1;
  width:100%;max-width:720px;
  display:flex;flex-direction:column;align-items:flex-start;gap:24px;
  padding:80px;box-sizing:border-box;
}
.wf-mfr__logo--panel{width:350px;max-width:100%;margin:0;height:auto;display:block;}
.wf-mfr--panel .pill{margin:0;}
.wf-mfr--panel .wf-subtitle{
  margin:0;color:rgba(255,255,255,.85);font-size:20px;line-height:1;
  letter-spacing:.02em;text-transform:uppercase;
}
.wf-mfr--panel .wf-mfr__copy{margin:0;max-width:636px;width:100%;}
.wf-mfr--panel .wf-mfr__copy-text p{
  color:rgba(255,255,255,.6);font-size:17px;line-height:1.1;margin:0 0 14px;
  font-family:var(--f-body);font-weight:500;
}
.wf-mfr--panel .wf-mfr__copy-text p:last-child{margin-bottom:0;}
.wf-mfr__copy-toggle{
  display:none;align-items:center;justify-content:center;
  width:100%;margin-top:8px;padding:4px;color:rgba(255,255,255,.55);
}
.wf-mfr__copy-toggle svg{transition:transform .25s ease;}
.wf-mfr__copy.is-open .wf-mfr__copy-toggle svg{transform:rotate(180deg);}
.wf-mfr--panel .wf-mfr__points{margin:0;width:100%;max-width:540px;gap:12px;}
.wf-mfr__points--glass .wf-subtitle{
  font-family:var(--f-tech);font-weight:600;text-transform:none;letter-spacing:.02em;
  background:rgba(255,255,255,.1);border-radius:12px;padding:12px;
  color:#fff;margin:0;font-size:13px;line-height:1.2;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.wf-mfr__points--rule .wf-subtitle{
  font-family:var(--f-tech);font-weight:600;text-transform:none;letter-spacing:0;
  border-left:2px solid #1CAAE1;padding:4px 0 4px 16px;
  color:#fff;margin:0;font-size:13px;line-height:1.35;background:none;
}
.wf-mfr--panel-2 .wf-mfr__logo--panel{width:370px;}
.wf-mfr--panel-3 .wf-mfr__panel-inner{
  width:100%;max-width:100%;
}
.wf-mfr--panel-3 .wf-mfr__logo--panel{width:440px;margin:0;}
.wf-mfr--panel-3 .wf-heading{
  margin:0;color:#111;font-size:96px;line-height:.93;
  letter-spacing:.02em;text-transform:uppercase;
}
.wf-mfr--panel-3 .wf-mfr__copy p,
.wf-mfr--panel-3 .wf-mfr__copy-text p{color:#6b6b6b;}
.wf-mfr--panel-3 .wf-mfr__points--bar .wf-subtitle{
  font-family:var(--f-tech);font-weight:600;text-transform:none;letter-spacing:0;
  border-left:3px solid #1CAAE1;padding:4px 0 4px 16px;
  color:#222;margin:0;font-size:13px;line-height:1.35;background:none;
}
.wf-mfr--panel .wf-mfr__cta{margin-top:0;width:auto;}

@media (min-width:1200px){
  .wf-pd__title{font-size:64px;}
  .wf-pd--v2 .wf-pd__title{font-size:53px;}
}
@media (max-width:1199px){
  .wf-pd__layout{gap:28px;}
  .wf-pd--v2 .wf-pd__hero{
    grid-template-columns:minmax(0,505fr) minmax(0,645fr);
    gap:32px;
  }
  .wf-pd__panel{padding:28px;}
  .wf-pd__title{font-size:48px;}
  .wf-pd--v2 .wf-pd__title{font-size:42px;}
  .wf-pd--v2 .wf-pd__panel{padding:28px;border-radius:28px;}
  .wf-pd--v2 .wf-pd__media img{width:min(100%,340px);}
  .wf-pd__stat-value{font-size:13px;}
  .wf-mfr__grid{gap:36px;}
  .wf-mfr--brand .wf-heading,
  .wf-mfr--mark .wf-heading{font-size:72px;}
  .wf-mfr--panel-3 .wf-heading{font-size:72px;}
  .wf-mfr__panel-inner{padding:56px 40px;}
}
@media (max-width:991px){
  .wf-pd__layout,
  .wf-pd__hero{grid-template-columns:1fr;gap:28px;}
  .wf-pd__title--page{display:none;}
  .wf-pd__title--panel{display:block;white-space:normal;text-align:center;}
  .wf-pd__title--panel .wf-pd__br{display:block;}
  /* PDP v2 mobile — matches Figma single product mobile v2 */
  .wf-pd--v2{padding:80px 0 40px;}
  .wf-pd--v2 .wf-pd__hero{
    display:flex;flex-direction:column;align-items:stretch;
    gap:32px;margin:0 0 32px;grid-template-columns:unset;
  }
  .wf-pd--v2 .wf-pd__gallery{
    display:flex;flex-direction:column;align-items:center;
    gap:32px;min-height:0;justify-content:flex-start;
  }
  .wf-pd--v2 .wf-pd__slider{
    flex:none;gap:48px;justify-content:flex-start;width:100%;
  }
  .wf-pd--v2 .wf-pd__crumb{
    align-self:stretch;font-size:17px;line-height:1.1;margin:0;
  }
  .wf-pd--v2 .wf-pd__title--page{
    display:block;order:0;width:100%;max-width:272px;margin:0 auto;
    text-align:center;font-size:53px;line-height:.96;letter-spacing:.03em;
    color:rgba(255,255,255,.85);
  }
  .wf-pd--v2 .wf-pd__title--panel{display:none;}
  .wf-pd--v2 .wf-pd__gallery-main{
    flex:none;width:100%;gap:16px;
  }
  .wf-pd--v2 .wf-pd__media img{width:min(100%,260px);}
  .wf-pd--v2 .wf-pd__thumbs{gap:24px;padding-top:0;}
  .wf-pd--v2 .wf-pd__thumb{width:44px;height:44px;}
  .wf-pd--v2 .wf-pd__thumb.is-active{width:60px;height:60px;}
  .wf-pd--v2 .wf-pd__panel{
    min-height:0;width:100%;padding:24px;border-radius:28px;gap:24px;
    box-shadow:0 29px 53px rgba(0,0,0,.04);
    background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.1) 100%);
  }
  .wf-pd--v2 .wf-pd__stats{
    display:flex;flex-direction:column;grid-template-columns:unset;gap:12px;margin:0;
  }
  .wf-pd--v2 .wf-pd__stat{
    flex-direction:row;align-items:flex-start;justify-content:space-between;
    gap:12px;padding:16px;background:rgba(255,255,255,.1);
  }
  .wf-pd--v2 .wf-pd__stat-head{gap:8px;}
  .wf-pd--v2 .wf-pd__stat-label{font-size:17px;white-space:nowrap;}
  .wf-pd--v2 .wf-pd__stat-value{
    text-align:right;max-width:150px;font-size:13px;flex-shrink:0;
  }
  .wf-pd--v2 .wf-pd__stat-value small{display:inline;font-size:inherit;}
  .wf-pd--v2 .wf-pd__desc > p{
    font-size:17px;line-height:1.1;-webkit-line-clamp:4;line-clamp:4;
  }
  .wf-pd--v2 .wf-pd__specs-title{font-size:20px;}
  .wf-pd--v2 .wf-pd__specs div{font-size:17px;padding:14px 0;}
  .wf-pd--v2 .wf-pd__specs div:last-child{border-bottom:none;}
  .wf-pd--v2 .wf-pd__related{padding:0;}
  .wf-pd--v2 .wf-pd__related-title{
    font-size:53px;line-height:.96;letter-spacing:.03em;
    margin:0 0 16px;text-align:left;
  }
  .wf-pd--v2 .wf-products{
    display:flex;grid-template-columns:unset;align-items:stretch;
    gap:16px;overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;scroll-padding-left:20px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    width:calc(100% + var(--gutter) * 2);max-width:none;
    margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1);
    padding-left:20px;padding-right:0;padding-bottom:4px;
    box-sizing:border-box;
  }
  .wf-pd--v2 .wf-products::-webkit-scrollbar{display:none;}
  .wf-pd--v2 .wf-product{
    flex:0 0 286px;max-width:286px;width:286px;
    scroll-snap-align:start;min-height:548px;height:100%;
  }
  .wf-pd--v2 .wf-product h3.wf-subtitle{
    font-family:var(--f-display);font-weight:700;font-size:56px;line-height:.93;
    letter-spacing:.02em;text-transform:uppercase;
  }
  .wf-pd__stats{grid-template-columns:1fr;gap:8px;}
  .wf-pd__stat{
    flex-direction:row;align-items:center;justify-content:space-between;
    gap:12px;padding:14px 16px;
  }
  .wf-pd__stat-label{font-size:13px;}
  .wf-pd__stat-value{text-align:right;flex-shrink:0;max-width:55%;}
  .wf-mfr__grid{grid-template-columns:1fr;gap:24px;}
  .wf-mfr__aside{align-items:flex-start;text-align:left;gap:20px;}
  .wf-mfr--brand .wf-heading,
  .wf-mfr--mark .wf-heading{text-align:left;font-size:48px;line-height:.95;}
  .wf-mfr--panel-3 .wf-heading{text-align:left;font-size:48px;line-height:.95;}
  .wf-mfr--panel-3 .wf-mfr__aside{align-items:flex-start;text-align:left;}
}
@media (max-width:767px){
  .wf-pd{padding:20px 0 48px;}
  .wf-pd--v2{padding:80px 0 40px;}
  .wf-pd__crumb{font-size:12px;margin-bottom:16px;}
  .wf-pd--v2 .wf-pd__crumb{font-size:17px;margin:0;}
  .wf-pd__title{font-size:42px;line-height:.95;white-space:normal;text-align:center;}
  .wf-pd__title .wf-pd__br{display:block;}
  .wf-pd--v2 .wf-pd__title--page{font-size:53px;line-height:.96;}
  .wf-pd__gallery{gap:20px;}
  .wf-pd--v2 .wf-pd__gallery{gap:32px;}
  .wf-pd--v2 .wf-pd__slider{gap:48px;}
  .wf-pd--v2 .wf-pd__gallery-main{margin-bottom:0;flex:none;width:100%;gap:16px;}
  .wf-pd--v2 .wf-pd__media img{width:min(100%,260px);}
  .wf-pd__thumb{width:56px;height:56px;}
  .wf-pd__panel{
    padding:22px 18px 24px;border-radius:20px 20px 16px 16px;
    box-shadow:0 -4px 24px rgba(17,17,20,.04);
  }
  .wf-pd--v2 .wf-pd__panel{
    padding:24px;border-radius:28px;gap:24px;
    box-shadow:0 29px 53px rgba(0,0,0,.04);
  }
  .wf-pd__stats{margin:0 0 18px;}
  .wf-pd__stat-head{gap:8px;}
  .wf-pd__stat-value{font-size:14px;}
  .wf-pd__desc{margin:0 0 22px;}
  .wf-pd__desc > p{font-size:14px;-webkit-line-clamp:4;}
  .wf-pd--v2 .wf-pd__desc{margin:0;}
  .wf-pd--v2 .wf-pd__desc > p{font-size:17px;-webkit-line-clamp:4;line-clamp:4;}
  .wf-pd__specs-title{font-size:15px;}
  .wf-pd--v2 .wf-pd__specs-title{font-size:20px;}
  .wf-pd__specs{margin:0 0 22px;}
  .wf-pd__specs div{font-size:14px;padding:12px 0;}
  .wf-pd--v2 .wf-pd__specs{margin:0;}
  .wf-pd--v2 .wf-pd__specs div{font-size:17px;padding:14px 0;}
  .wf-pd__actions .btn{padding:15px 22px;border-radius:12px;}
  .wf-pd--v2 .wf-pd__related-title{font-size:53px;margin-bottom:16px;}
  .wf-pd--v2 .wf-product{flex:0 0 286px;max-width:286px;min-height:548px;height:100%;}
  .wf-pd__desc-toggle svg,
  .wf-mfr__copy-toggle svg{width:20px;height:20px;}
  .wf-mfr--brand,
  .wf-mfr--mark{padding:48px 0;}
  .wf-mfr--brand .wf-heading,
  .wf-mfr--mark .wf-heading{font-size:42px;line-height:.95;}
  .wf-mfr--panel-3 .wf-heading{font-size:42px;line-height:.95;text-align:left;}
  .wf-mfr__logo--wordmark{width:200px;}
  .wf-mfr__logo--mark{width:96px;}
  .wf-mfr__copy p{font-size:15px;}
  .wf-mfr__points{margin:22px 0 24px;gap:10px;}
  .wf-mfr__points p{
    font-family:var(--f-tech);font-weight:600;font-size:13px;line-height:1.35;
  }
  .wf-mfr__points--bar p{padding:2px 0 2px 14px;}
  .wf-mfr__points--chip p{padding:12px 14px;border-radius:10px;}
  .wf-mfr__cta{width:100%;min-width:0;height:44px;font-size:13px;border-radius:10px;}
  .wf-mfr--panel{padding:40px 0;}
  .wf-mfr__panel{
    border-radius:28px;min-height:0;
    background-color:#0c2234;
    background-image:url("../assets/images/swedish-smokeless-background-1-mobile.webp");
    background-position:center top;
  }
  .wf-mfr--panel-2 .wf-mfr__panel{
    background-image:url("../assets/images/swedish-smokeless-background-2-mobile.webp");
  }
  .wf-mfr--panel-3.wf-mfr__panel,
  .wf-mfr--panel-3 .wf-mfr__panel{
    background-image:url("../assets/images/swedish-smokeless-background-3-mobile.webp");
  }
  .wf-mfr__panel-inner{padding:24px;width:100%;max-width:100%;gap:24px;}
  .wf-mfr__logo--panel{width:240px;margin:0;}
  .wf-mfr--panel .wf-mfr__logo--panel{width:240px;}
  .wf-mfr--panel-2 .wf-mfr__logo--panel{width:min(370px,100%);}
  .wf-mfr--panel-3 .wf-mfr__logo--panel{width:min(440px,100%);margin:0 0 20px;}
  .wf-mfr--panel .wf-subtitle{margin:0;font-size:20px;line-height:1;}
  .wf-mfr--panel .wf-mfr__copy{margin:0;max-width:100%;}
  .wf-mfr--panel .wf-mfr__copy-text{
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;
    overflow:hidden;max-width:295px;
  }
  .wf-mfr--panel .wf-mfr__copy.is-open .wf-mfr__copy-text{
    display:block;-webkit-line-clamp:unset;line-clamp:unset;max-width:none;
  }
  .wf-mfr--panel .wf-mfr__copy-text p{font-size:17px;line-height:1.1;margin:0 0 8px;}
  .wf-mfr__copy-toggle{display:flex;}
  .wf-mfr--panel .wf-mfr__points{margin:0;max-width:100%;width:100%;gap:12px;}
  .wf-mfr__points--glass .wf-subtitle{
    background:rgba(255,255,255,.1);padding:12px;font-size:13px;line-height:1.2;
    width:100%;box-sizing:border-box;
  }
  .wf-mfr--panel .wf-mfr__cta{width:100%;min-width:0;height:42px;border-radius:12px;}
}

/* small helper for reduced motion */
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}
