/* Approved index-copy-refresh homepage proportions; isolated from product and cart. */
body.template-index .display{
  font-family:var(--display);
  font-weight:800;
  font-style:italic;
  text-transform:uppercase;
  line-height:0.84;
  letter-spacing:-0.015em;
  margin:0;
}
body.template-index .display--upright{ font-style:normal; }
body.template-index .label{
  font-family:var(--display);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.16em;
  font-size:0.8rem;
  line-height:1;
}
body.template-index .mono-note{
  font-family:var(--body);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.66rem;
}
body.template-index .btn{
  display:inline-flex; align-items:center; gap:.6rem;
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; letter-spacing:0.04em; font-size:1.05rem;
  padding:.85rem 1.6rem; border-radius:var(--r);
  border:2px solid var(--ink); background:var(--ink); color:var(--paper-2);
  text-decoration:none; cursor:pointer;
  transition:transform .18s ease, background-color .18s ease, color .18s ease;
}
body.template-index .btn:hover{ transform:translateY(-2px); }
body.template-index .btn--ghost{ background:transparent; color:var(--ink); }
body.template-index .btn--ghost:hover{ background:var(--ink); color:var(--paper-2); }
body.template-index .btn--acc{ background:var(--acc); border-color:var(--acc); color:var(--acc-on); }
body.template-index .nav{
  position:sticky; top:0; z-index:60;
  /* Solid, not glassy: the design language is flat print blocks, and a
     translucent bar goes muddy where it passes over a dark pack room. */
  background:var(--paper);
  border-bottom:1px solid var(--hairline);
}
body.template-index .nav__in{
  display:flex; align-items:center; gap:2rem;
  padding:.9rem 0;
}
body.template-index .nav__links{
  display:flex; gap:1.6rem; margin-left:auto; align-items:center;
  list-style:none; padding:0; margin-block:0;
}
body.template-index .nav__links a{ text-decoration:none; }
body.template-index .nav__links a:hover{ color:var(--acc-deep); }
body.template-index .nav__cart{
  border:2px solid var(--ink); border-radius:var(--r);
  padding:.45rem 1.1rem;
}
body.template-index .nav__cart:hover{ background:var(--acc); color:var(--acc-on); border-color:var(--acc); }
body.template-index .nav__toggle{
  display:none; margin-left:auto;
  font:inherit; cursor:pointer;
  background:var(--ink); color:var(--paper-2);
  border:2px solid var(--ink); border-radius:var(--r);
  padding:.5rem 1.1rem;
}
body.template-index .nav__drawer{ display:none; }
body.template-index .hero{ padding:clamp(1.6rem,3.2vw,2.5rem) 0 0; }
body.template-index .hero__grid{
  display:grid; gap:clamp(1.5rem,3vw,2.5rem);
  grid-template-columns:1.05fr .95fr;
  align-items:stretch;
}
body.template-index .hero__copy{
  display:grid; grid-template-rows:1fr auto;
  min-height:100%;
}
body.template-index .hero__meta{
  display:flex; align-items:center; gap:1rem; flex-wrap:wrap;
  padding-bottom:.85rem; margin:0;
  border-bottom:2px solid var(--ink);
}
body.template-index .hero__meta .label{ font-size:.9rem; }
body.template-index .lockup{
  position:relative;
  --mist-size: clamp(6rem, 17vw, 14.5rem);
}
body.template-index .lockup__nicotine{
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; letter-spacing:-0.015em;
  font-size:clamp(1.7rem,4.6vw,3.5rem); line-height:.78;
  margin:0;
  /* Italic MIST sits in from the box edge at the cap; nudge Nicotine onto that corner. */
  padding-left: calc(var(--mist-size) * 0.055);
}
body.template-index .lockup__nic{ color:var(--acc); transition:color .45s ease; }
body.template-index .lockup__otine{ opacity:.5; }
body.template-index .lockup__word{
  font-size:var(--mist-size);
  line-height:.82;
  margin: calc(var(--mist-size) * -0.055) 0 0;
}
body.template-index .lockup__tail{
  font-size:clamp(1.5rem,3.4vw,2.9rem);
  margin-top:.35rem;
}
body.template-index .lockup__tail .thin{ font-weight:700; color:var(--ink-60); }
body.template-index .hero__main{
  display:flex; flex-direction:column; justify-content:center;
  gap:clamp(1.15rem,2.2vw,1.65rem);
  /* Slightly more room below the CTAs than under the rule, so the
     title-to-button block sits a touch higher and the two gaps match. */
  padding-top:clamp(.85rem,1.6vw,1.15rem);
  padding-bottom:clamp(1.65rem,3.4vw,2.5rem);
}
body.template-index .hero__lede{
  max-width:38ch; margin:0; font-size:1.06rem; line-height:1.65; color:var(--ink-60);
}
body.template-index .hero__cta{ display:flex; flex-wrap:wrap; gap:.75rem; margin:0; }
body.template-index .hero__trust{
  margin:0; padding-top:.25rem;
  display:flex; gap:1.5rem; flex-wrap:wrap; color:var(--ink-60);
}
body.template-index .hero__media{ position:relative; overflow:hidden; border-radius:2px; min-height:clamp(320px,46vw,620px); }
body.template-index .hero__media img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
}
body.template-index .hero__tab{
  position:absolute; left:0; top:0; z-index:2;
  padding:1.1rem 1.25rem;
  max-width:min(62%,320px);
}
body.template-index .hero__tab .display{ font-size:clamp(1.6rem,2.7vw,2.25rem); }
body.template-index .hero__tab .mono-note{ display:block; margin-top:.5rem; opacity:.75; }
body.template-index .hero__halftone{
  position:absolute; right:0; bottom:0; z-index:2;
  width:150px; height:110px; color:var(--paper-2);
  pointer-events:none;
  mask-image:linear-gradient(to top left, #000, transparent 75%);
}
body.template-index .marquee{
  margin-top:clamp(2.5rem,4.5vw,3.75rem);
  overflow:hidden; border-block:2px solid var(--ink);
  padding:.65rem 0;
}
body.template-index .marquee__track{
  display:flex; gap:2.5rem; width:max-content;
  animation:vye-b2-marquee 26s linear infinite;
}
body.template-index .marquee__track span{
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:clamp(1.5rem,3.6vw,2.9rem);
  line-height:1; white-space:nowrap;
}
body.template-index .marquee__track span:nth-child(even){ color:var(--acc-deep); transition:color .45s ease; }
body.template-index .sec-head{
  display:flex; align-items:flex-end; justify-content:space-between;
  gap:2rem; flex-wrap:wrap;
  padding-bottom:1.25rem; margin-bottom:clamp(2rem,3.5vw,2.75rem);
  border-bottom:2px solid var(--ink);
}
body.template-index .sec-head__index{ color:var(--acc-deep); transition:color .45s ease; margin-bottom:.75rem; }
body.template-index .sec-head h2{ font-size:clamp(2.4rem,6vw,4.75rem); margin:0; }
body.template-index .sec-head > p{ margin:0; max-width:36ch; color:var(--ink-60); }
body.template-index .flavours{ background:var(--paper-2); }
body.template-index .flav{
  --c:var(--spearmint);
  position:relative; display:flex; flex-direction:column;
  border:2px solid var(--ink); background:transparent;
  padding:0; text-align:left; cursor:pointer; font:inherit; color:inherit;
  text-decoration:none; overflow:hidden;
  transition:transform .2s ease;
}
body.template-index .flav:hover{ transform:translateY(-4px); }
body.template-index .flav__swatch{
  position:relative;
  background:var(--c); aspect-ratio:3/4;
  display:flex; flex-direction:column;
  padding:.85rem;
}
body.template-index .flav__top{
  display:flex; align-items:center; justify-content:space-between;
  gap:.5rem; margin-bottom:auto; line-height:1;
}
body.template-index .flav__swatch .mono-note{ color:#101010; opacity:.6; line-height:1; }
body.template-index .flav__dots{ color:#101010; flex:none; }
body.template-index .flav__dots i{ width:.42em; height:.42em; }
body.template-index .flav__name{
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:1.05rem; line-height:.95;
  color:#101010;
}
body.template-index .flav__swatch::after{
  content:"Mist";
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:2.9rem; line-height:.8;
  letter-spacing:-0.02em; color:#101010;
}
body.template-index .flav[aria-pressed="true"]{ background:var(--ink); color:var(--paper-2); }
body.template-index .field--packs{ margin-top:clamp(1.75rem,3vw,2.25rem); }
body.template-index .field__head{ display:flex; align-items:baseline; gap:.7rem; margin-bottom:1rem; }
body.template-index .packs{
  display:grid; grid-template-columns:repeat(3, minmax(0,16rem));
  gap:.75rem;
  padding-top:.45rem;
}
body.template-index .pack{
  position:relative; display:block; text-align:left; text-decoration:none;
  background:transparent; color:inherit;
  border:2px solid var(--ink); padding:.85rem .8rem .75rem;
}
body.template-index .pack[aria-current="true"]{ background:var(--ink); color:var(--paper-2); }
body.template-index .pack__n{
  display:block; font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:1.35rem; line-height:1;
}
body.template-index .pack__save{ display:block; margin-top:.35rem; font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; opacity:.75; }
body.template-index .pack__badge{
  position:absolute; top:-.55rem; right:.5rem;
  background:var(--acc); color:var(--acc-on);
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:.62rem; letter-spacing:.04em;
  padding:.18rem .45rem;
}
body.template-index .steps__grid{
  display:grid; gap:clamp(1.5rem,3vw,2.5rem);
  grid-template-columns:1.1fr .9fr;
  align-items:stretch;
}
body.template-index .steps__list{ display:grid; gap:0; }
body.template-index .step{
  display:grid; grid-template-columns:auto 1fr; gap:1.25rem;
  align-items:start;
  padding:1.5rem 0; border-top:1px solid var(--hairline);
}
body.template-index .step:first-child{ border-top:0; padding-top:0; }
body.template-index .step__n{
  font-family:var(--display); font-weight:800; font-style:italic;
  font-size:clamp(3rem,6vw,5rem); line-height:.8;
  color:var(--acc-deep);
  transition:color .45s ease;
  min-width:2.2ch;
}
body.template-index .step h3{
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:clamp(1.6rem,3vw,2.3rem);
  line-height:.95; margin:0 0 .35rem;
}
body.template-index .step p{ margin:0; color:var(--ink-60); max-width:34ch; }
body.template-index .steps__close{
  margin:0; padding:.95rem 0 0;
  border-top:1px solid var(--hairline);
}
body.template-index .steps__close .display{
  display:block; font-size:clamp(1.35rem,2.5vw,1.9rem);
  color:var(--acc-deep); margin:0 0 .4rem;
  transition:color .45s ease;
}
body.template-index .steps__close p{
  margin:0; color:var(--ink-60); max-width:36ch;
}
body.template-index .steps__media{
  position:relative; overflow:hidden; min-height:0;
  background:var(--ink-25);
}
body.template-index .steps__media img{
  position:absolute; inset:0;
  width:100%; height:100%; object-fit:cover; object-position:center;
  opacity:0;
  animation:steps-gif 7.5s infinite;
}
body.template-index .steps__media img:nth-child(1){ opacity:1; }
body.template-index .steps__media img:nth-child(1){ animation-delay:0s; }
body.template-index .steps__media img:nth-child(2){ animation-delay:2.5s; }
body.template-index .steps__media img:nth-child(3){ animation-delay:5s; }
@media  (min-width:861px){body.template-index .steps__media{aspect-ratio:1;align-self:center;width:100%;background:transparent}
body.template-index .steps__media img{object-fit:cover}}
body.template-index .mosaic__grid{
  display:grid; gap:1rem;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:minmax(0,auto);
}
body.template-index .tile{ position:relative; overflow:hidden; }
body.template-index .tile img{ width:100%; height:100%; object-fit:cover; }
body.template-index .tile--wide{ grid-column:span 2; }
body.template-index .tile--tall{ grid-row:span 2; }
body.template-index .tile__cap{
  position:absolute; left:0; bottom:0; z-index:2;
  padding:.75rem 1rem;
}
body.template-index .tile--quote{
  display:flex; flex-direction:column; justify-content:space-between;
  padding:clamp(1.25rem,2.5vw,2rem); min-height:240px;
}
body.template-index .tile--quote .display{ font-size:clamp(1.5rem,2.6vw,2.2rem); }
body.template-index .tile--quote .display,body.template-index .tile--quote .mono-note{ opacity:.5; }
body.template-index .tile--mint-review{
  background:var(--spearmint);
  color:#062E25;
}
body.template-index .tile--brief{
  border:2px dashed var(--ink-25);
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:clamp(1.25rem,2.5vw,2rem); min-height:240px;
  color:var(--ink-60);
}
body.template-index .tile--brief strong{
  display:block; color:var(--ink);
  font-family:var(--display); font-weight:800; font-style:italic;
  text-transform:uppercase; font-size:1.5rem; line-height:1; margin-bottom:.5rem;
}
body.template-index .social__grid{
  display:grid; gap:1rem; grid-template-columns:repeat(4,1fr);
}
body.template-index .social__card{
  aspect-ratio:1; position:relative; overflow:hidden;
  border:2px solid var(--ink);
  display:flex; align-items:flex-end; padding:1rem;
}
body.template-index .social__card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
body.template-index .social__card .mono-note{
  position:relative; z-index:2;
  /* Fixed values, not --ink: inside a pack room --ink flips light and the
     pill would end up light text on a light pill. */
  background:var(--pack-black); color:#FFFDF8;
  padding:.35rem .7rem; border-radius:var(--r);
}
body.template-index .social__card--fill{ background:var(--acc); color:var(--acc-on); align-items:center; justify-content:center; }
body.template-index .social__card--fill .display{ font-size:clamp(1.4rem,2.4vw,2rem); text-align:center; }
body.template-index .social__card--review{
  flex-direction:column; align-items:flex-start; justify-content:space-between;
  background:var(--paper-2); color:var(--ink); text-decoration:none;
  padding:clamp(1.1rem,2vw,1.5rem);
}
body.template-index .social__card--review:hover{ border-color:var(--acc); }
body.template-index .social__card--review .rev-widget__score{
  font-size:clamp(3.2rem,6vw,4.6rem); line-height:.8; margin:0;
}
body.template-index .social__card--review .stars{
  letter-spacing:.08em; color:var(--acc-deep); font-size:1.15rem; margin:.15rem 0 .4rem;
  transition:color .45s ease;
}
body.template-index .social__card--review .mono-note{ background:transparent; color:var(--ink-60); padding:0; border-radius:0; }
body.template-index .rev-scroll{
  display:grid;
  grid-auto-flow:initial;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-columns:auto;
  gap:1rem;
  align-content:start;
  overflow:visible;
  scroll-snap-type:none;
  padding-bottom:0; margin-bottom:0;
}
body.template-index .rev-scroll .rev{
  scroll-snap-align:none; scroll-snap-stop:normal;
  border:2px solid var(--ink);
  padding:1.25rem 1.2rem;
  display:flex; flex-direction:column; gap:.7rem;
  height:100%;
  background:var(--paper-2); color:var(--ink);
}
body.template-index .rev-scroll .rev .stars{
  flex:none;
  letter-spacing:.08em; color:var(--acc-deep);
}
body.template-index .rev-scroll .rev blockquote.rev__quote,
body.template-index .rev-scroll .rev > p:not(.stars){
  margin:0;
  flex:0 1 auto;
}
body.template-index .rev-scroll .rev__quote p{ margin:0; }
body.template-index .rev-scroll .rev footer{
  flex:none;
  margin-top:auto;
  color:var(--ink-60);
}
body.template-index .rev-scroll::-webkit-scrollbar{ height:6px; }
body.template-index .rev-scroll::-webkit-scrollbar-thumb{ background:var(--ink-25); }
body.template-index .foot{ background:var(--pack-black); color:#E6E2D8; padding:clamp(3.5rem,6vw,5.5rem) 0 2rem; }
body.template-index .foot a{ text-decoration:none; }
body.template-index .foot a:hover{ color:var(--acc); }
body.template-index .foot__top{
  display:grid; gap:2.5rem;
  grid-template-columns:1.4fr 1fr 1fr 1.2fr;
  padding-bottom:2.5rem; border-bottom:1px solid #333;
}
body.template-index .foot__mark{
  height: clamp(2.2rem, 5vw, 3.2rem);
  width: auto;
  display: block;
  margin: 0 0 1rem;
}
body.template-index .foot__brandline{ margin:0 0 1.5rem; color:#8E8A80; }
body.template-index .foot h3{ font-family:var(--display); font-weight:700; text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; margin:0 0 1rem; color:#8E8A80; }
body.template-index .foot ul{ list-style:none; margin:0; padding:0; display:grid; gap:.55rem; }
body.template-index .warn{
  background:#FFFDF8; color:#101010;
  border:2px solid #FFFDF8;
  padding:1rem 1.15rem;
  font-family:var(--body); font-weight:800; text-transform:uppercase;
  font-size:.82rem; line-height:1.3; letter-spacing:.01em;
}
body.template-index .foot__legal{
  display:flex; gap:1.5rem; flex-wrap:wrap; align-items:center;
  padding-top:2rem; color:#8E8A80;
}
body.template-index .badge18{
  width:2.4rem; height:2.4rem; border-radius:50%;
  border:2px solid #FFFDF8; color:#FFFDF8;
  display:grid; place-items:center; flex:none;
  font-family:var(--display); font-weight:800; font-size:.95rem;
}
@media  (max-width:1080px){body.template-index .foot__top{ grid-template-columns:1fr 1fr; }}
@media  (max-width:860px){body.template-index .hero__grid,body.template-index .steps__grid{ grid-template-columns:1fr; }
body.template-index .steps__media{ min-height:0; aspect-ratio:1; width:100%; order:-1; }
body.template-index .hero__media{ min-height:min(70vw,420px); }
body.template-index .nav__links{ display:none; }
body.template-index .nav__toggle{ display:block; }
body.template-index .nav__drawer[data-open="true"]{
    display:block; border-top:1px solid var(--hairline);
  }
body.template-index .nav__drawer ul{
    list-style:none; margin:0; padding:1rem 0 1.5rem;
    display:grid; gap:1rem;
  }
body.template-index .nav__drawer a{ text-decoration:none; font-size:1.1rem; }
body.template-index .mosaic__grid,body.template-index .social__grid{ grid-template-columns:repeat(2,1fr); }
body.template-index .rev-scroll{ --cols: 2; }
body.template-index .tile--wide{ grid-column:span 2; }
body.template-index .tile--tall{ grid-row:span 1; }}
@media  (max-width:560px){body.template-index .packs{ grid-template-columns:1fr; }
body.template-index .foot__top{ grid-template-columns:1fr; }}
@media  (prefers-reduced-motion:reduce){body.template-index .steps__media img{ animation:none !important; opacity:0 !important; }
body.template-index .steps__media img:first-child{ opacity:1 !important; }}
body.template-index .usp-story{scroll-margin-top:90px;padding:clamp(3.5rem,6vw,5.5rem) 0 0;background:var(--paper);color:var(--ink)}
body.template-index .usp-story__grid{display:grid;grid-template-columns:repeat(3,1fr)}
body.template-index .usp-story__item{position:relative;min-width:0;padding:0 clamp(1.25rem,2.5vw,2.25rem) 1.5rem;overflow:hidden}
body.template-index .usp-story__item+.usp-story__item{border-left:1px solid var(--hairline)}
body.template-index .usp-story__eyebrow{font:700 .8rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase;margin:0}
body.template-index .usp-story__visual{height:220px;display:flex;align-items:center;position:relative;margin:1rem 0 1.6rem}
body.template-index .usp-story__item h3{font:italic 800 clamp(2rem,3vw,3rem)/.95 var(--display);text-transform:uppercase;margin:0 0 .8rem}
body.template-index .usp-story__copy{max-width:34ch;margin:0;color:var(--ink-60);font-size:1rem;line-height:1.55}
body.template-index .usp-story__big{font:italic 800 clamp(6rem,10vw,10rem)/.8 var(--display);letter-spacing:-.045em}
body.template-index .usp-story__unit{display:block;font:700 .72rem var(--body);letter-spacing:.14em;text-transform:uppercase;margin-top:1.3rem}
body.template-index .usp-story__mist{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle,var(--ink) 1px,transparent 1.4px) 0 0/7px 7px;mask-image:radial-gradient(ellipse at 65% 42%,#0008,transparent 68%);opacity:.3}
body.template-index .usp-story__visual>div{position:relative;z-index:1}
body.template-index .usp-story + .mosaic{padding-top:clamp(3.5rem,6vw,5.5rem)}
body.template-index .usp-story__dial{width:218px;height:218px;border-radius:50%;border:1px solid var(--ink-25);display:flex;align-items:center;justify-content:center;position:relative}
body.template-index .usp-story__dial:before{content:"";position:absolute;inset:8px;border:6px solid var(--acc);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(45deg)}
body.template-index .usp-story__dial:after{content:"";position:absolute;width:12px;height:12px;background:var(--ink);border:3px solid var(--paper);border-radius:50%;bottom:7px;left:50%;transform:translateX(-50%)}
body.template-index .usp-story__dial .usp-story__big{font-size:6.5rem;letter-spacing:-.035em}
body.template-index .usp-story__dial small{font:italic 700 2.8rem var(--display);margin-left:3px}
@media (max-width:900px){body.template-index .usp-story__item{padding:0 1.25rem 1.5rem}
body.template-index .usp-story__visual{height:205px}
body.template-index .usp-story__dial{width:185px;height:185px}
body.template-index .usp-story__dial .usp-story__big{font-size:5.5rem}}
@media (max-width:760px){body.template-index .usp-story__grid{grid-template-columns:1fr}
body.template-index .usp-story__item,body.template-index .usp-story__item:first-child{padding:1.5rem 0;display:grid;grid-template-columns:1fr 1fr;column-gap:1rem;align-items:center}
body.template-index .usp-story__item+.usp-story__item{border-left:0;border-top:1px solid var(--hairline)}
body.template-index .usp-story__eyebrow{grid-column:1/-1}
body.template-index .usp-story__visual{grid-column:1;grid-row:1/3;height:180px;margin:0}
body.template-index .usp-story__item h3{grid-column:2;align-self:end;margin-bottom:.65rem}
body.template-index .usp-story__copy{grid-column:2;align-self:start;font-size:.85rem}
body.template-index .usp-story__dial{width:155px;height:155px}
body.template-index .usp-story__dial .usp-story__big{font-size:4.6rem}
body.template-index .usp-story__big{font-size:5.7rem}
body.template-index .usp-story__unit{font-size:.6rem}}
body.template-index .usp-story>.shell{padding-bottom:1rem}
body.template-index .usp-story__visual--flavour{align-items:stretch}
body.template-index .usp-story__visual>.flavour-scene{width:auto;aspect-ratio:1;max-width:100%;height:100%;background:var(--acc);position:relative;overflow:hidden}
body.template-index .flavour-scene__photo{position:absolute;left:50%;top:0;height:100%;aspect-ratio:1;transform:translateX(-50%);background-size:300% 200%}
body.template-index .flavour-scene__name{z-index:2;position:absolute;left:14px;top:12px;color:var(--acc);font:italic 800 1.35rem/1 var(--display);text-transform:uppercase;text-shadow:0 1px 6px #000}
body.template-index .flavour-scene__choices{z-index:3;position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:8px;padding:10px;background:#0A1416e8}
body.template-index .flavour-scene__choices button{width:25px;height:25px;padding:4px;background:var(--swatch);background-clip:content-box;border:1px solid transparent;cursor:pointer;border-radius:0}
body.template-index .flavour-scene__choices button[aria-pressed="true"]{border-color:#fff}
body.template-index .flavour-scene__choices button:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:760px){body.template-index .flavour-scene__name{font-size:1rem;left:8px;top:9px}
body.template-index .flavour-scene__choices{gap:2px;padding:6px 2px}
body.template-index .flavour-scene__choices button{width:22px;height:25px;padding:4px}}
body.template-index .hero__tab{max-width:200px;pointer-events:none}
body.template-index .hero__tab .mono-note{font-size:.65rem;line-height:1.5;max-width:16ch}
body.template-index .hero__banner-toggle{position:absolute;right:12px;bottom:12px;z-index:3;background:#091315;color:#fff;border:1px solid #ffffff70;border-radius:2px;padding:8px 11px;font:inherit;font-size:11px;cursor:pointer}
body.template-index .hero__banner-toggle:focus-visible{outline:3px solid white;outline-offset:3px}
body.template-index .hero__tab[hidden]{display:none}
body.template-index .foot__top{grid-template-columns:1.5fr 1fr 1fr;gap:clamp(2rem,5vw,5rem);padding-bottom:3rem;border-color:#ffffff30}
body.template-index .foot__shop{display:inline-block;font-size:clamp(2.5rem,4.7vw,4.5rem);line-height:1.05;max-width:8ch;color:var(--acc)}
body.template-index .foot__shop span{display:inline-block;font-family:var(--body);font-size:.6em;vertical-align:middle}
body.template-index .foot h3{color:#a8aeac;margin-bottom:1.3rem}
body.template-index .foot ul{gap:.9rem}
body.template-index .foot a[aria-disabled="true"]{cursor:default}
body.template-index .foot a[aria-disabled="true"]:hover{color:inherit}
body.template-index .foot__policies{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-top:2rem}
body.template-index .foot__policies .warn{max-width:430px;margin:0}
body.template-index .foot__policies nav{display:flex;gap:1rem 1.5rem;flex-wrap:wrap;font-size:.8rem;color:#bfc3c0}
body.template-index .foot__legal{color:#a8aeac}
@media (max-width:680px){body.template-index .foot__top{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem}
body.template-index .foot__invite{grid-column:1/-1}
body.template-index .foot__shop{max-width:none}
body.template-index .foot__policies{align-items:stretch;flex-direction:column}
body.template-index .foot__policies .warn{max-width:none}
body.template-index .foot__legal{gap:1rem}}
/* Neutralise Horizon's intrinsic media sizing and Shopify section wrappers. */
body.template-index .hero__media{height:auto;width:100%;max-height:none;aspect-ratio:auto;align-self:stretch}
body.template-index .hero__media img{position:absolute;inset:0;height:100%;width:100%;aspect-ratio:auto;object-fit:cover}
body.template-index .hero__main{flex:initial}
body.template-index .hero__tab .display{margin:0}
body.template-index .usp-story>.shell{padding-bottom:1rem}
body.template-index .vye-b2-why-wrap{padding-bottom:0}
body.template-index .vye-b2-mosaic-wrap .mosaic{padding-top:clamp(3.5rem,6vw,5.5rem)}
body.template-index .nav__cart{font:700 .8rem var(--display);letter-spacing:.12em}
@media(max-width:860px){body.template-index .hero__media{min-height:min(70vw,420px)}}
/* Keep navigation sticky beyond Shopify's header section group. */
body.template-index #header-group{display:contents}
body.template-index .vye-b2-header{position:sticky;top:0;z-index:70}
body.template-index .vye-b2-header .nav{position:relative}
/* Adjacent sections are wrapped by Shopify, so target their wrappers explicitly. */
body.template-index .usp-story{padding-bottom:0}
/* Match the source's star row and keep anchored headings below navigation. */
body.template-index .vye-b2-sec{scroll-margin-top:90px}
