/* ═══════════════════════════════════════════════════════════════
   BOUCHERIE NOIR — char, ember, bone
   Display  Big Shoulders Display  (industrial condensed signage)
   Body     Newsreader             (old cookbook / literary)
   Utility  DM Mono                (scale readouts, weights, days)
   ═══════════════════════════════════════════════════════════════ */

:root{
  --char:  #0B0908;
  --ash:   #131110;
  --soot:  #1D1917;
  --grit:  #3A332C;
  --bone:  #EAE4D7;
  --dim:   #948B7D;
  --ember: #E2571F;
  --flame: #F2A63F;
  --blood: #63201A;

  --pad: clamp(1.25rem, 5vw, 6rem);
  --maxw: 1560px;

  --f-disp: "Big Shoulders Display", Impact, sans-serif;
  --f-body: "Newsreader", Georgia, serif;
  --f-mono: "DM Mono", ui-monospace, monospace;

  --ease: cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
section[id],footer[id]{ scroll-margin-top:5rem; }

body{
  margin:0;
  background:var(--char);
  color:var(--bone);
  font-family:var(--f-body);
  font-size:clamp(1rem,.94rem + .3vw,1.16rem);
  line-height:1.62;
  font-weight:300;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
h1,h2,h3,h4{ margin:0; font-weight:400; }
p{ margin:0; }
ul,ol,dl,dd{ margin:0; padding:0; list-style:none; }
a{ color:inherit; }

::selection{ background:var(--ember); color:var(--char); }

:focus-visible{
  outline:2px solid var(--flame);
  outline-offset:3px;
}

.skip{
  position:fixed; top:-100px; left:1rem; z-index:200;
  background:var(--ember); color:var(--char);
  padding:.7rem 1.1rem; font-family:var(--f-mono); font-size:.8rem;
  text-decoration:none;
}
.skip:focus{ top:1rem; }

/* ── shared section header ─────────────────────────────────── */
.sec-head__label{
  font-family:var(--f-mono);
  font-size:.72rem; letter-spacing:.24em; text-transform:uppercase;
  color:var(--ember);
  margin-bottom:1.6rem;
}
.sec-head__title{
  font-family:var(--f-disp);
  font-weight:800;
  font-size:clamp(2.9rem,7.5vw,6.2rem);
  line-height:.86;
  letter-spacing:-.015em;
  text-transform:uppercase;
  margin-bottom:1.5rem;
}
.sec-head__lede{
  max-width:46ch;
  color:var(--dim);
  font-size:clamp(1.02rem,.95rem + .35vw,1.3rem);
}

.btn{
  display:inline-block;
  font-family:var(--f-mono);
  font-size:.76rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--char); background:var(--ember);
  padding:1rem 1.7rem;
  border:0; cursor:pointer;
  text-decoration:none;
  transition:background .3s var(--ease), transform .3s var(--ease);
}
.btn:hover{ background:var(--flame); transform:translateY(-2px); }
.btn--full{ width:100%; text-align:center; }

/* ── nav ───────────────────────────────────────────────────── */
.nav{
  position:fixed; inset:0 0 auto 0; z-index:80;
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem;
  padding:1.05rem var(--pad);
  border-bottom:1px solid transparent;
  transition:background .45s var(--ease), border-color .45s var(--ease), backdrop-filter .45s;
}
.nav.is-stuck{
  background:rgba(11,9,8,.82);
  backdrop-filter:blur(14px) saturate(1.2);
  border-bottom-color:rgba(234,228,215,.11);
}
.nav__mark{
  font-family:var(--f-disp); font-weight:900;
  font-size:1.32rem; line-height:1; text-transform:uppercase;
  letter-spacing:.01em; text-decoration:none;
  display:flex; gap:.42em;
}
.nav__mark-b{ color:var(--ember); }
.nav__links{ display:flex; gap:2.1rem; }
.nav__links a{
  font-family:var(--f-mono); font-size:.74rem;
  letter-spacing:.15em; text-transform:uppercase;
  text-decoration:none; color:var(--dim);
  padding-bottom:3px;
  border-bottom:1px solid transparent;
  transition:color .3s var(--ease), border-color .3s var(--ease);
}
.nav__links a:hover{ color:var(--bone); border-bottom-color:var(--ember); }
.nav__cart{
  font-family:var(--f-mono); font-size:.74rem;
  letter-spacing:.15em; text-transform:uppercase;
  background:none; border:1px solid rgba(234,228,215,.24);
  color:var(--bone); padding:.6rem 1rem; cursor:pointer;
  display:flex; align-items:center; gap:.6rem;
  transition:border-color .3s var(--ease), color .3s var(--ease);
}
.nav__cart:hover{ border-color:var(--ember); color:var(--ember); }
.nav__cart-n{
  background:var(--ember); color:var(--char);
  min-width:1.35em; height:1.35em; line-height:1.35em;
  text-align:center; font-size:.7rem;
}

/* ── hero ──────────────────────────────────────────────────── */
.hero{
  position:relative;
  min-height:100svh;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:0 var(--pad) clamp(1.5rem,3vw,2.6rem);
  overflow:hidden;
  isolation:isolate;
}
.hero__smoke,
.hero__embers{
  position:absolute; inset:0; width:100%; height:100%;
  z-index:-2; display:block;
}
.hero__embers{ z-index:-1; }
.hero__vignette{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(130% 84% at 50% 4%, transparent 46%, rgba(11,9,8,.62) 100%),
    linear-gradient(to top, var(--char) 0%, rgba(11,9,8,.55) 22%, rgba(11,9,8,.10) 52%, transparent 74%);
}
.hero__inner{ margin-top:auto; padding-bottom:clamp(2rem,6vw,4.4rem); }
.hero__eyebrow{
  display:flex; gap:1.4rem; align-items:baseline;
  font-family:var(--f-mono); font-size:.74rem;
  letter-spacing:.22em; text-transform:uppercase; color:var(--dim);
  margin-bottom:clamp(.8rem,2vw,1.4rem);
}
.hero__est{ color:var(--ember); }

.hero__title{
  font-family:var(--f-disp); font-weight:900;
  font-size:clamp(4.2rem,17.5vw,17rem);
  line-height:.79;
  letter-spacing:-.022em;
  text-transform:uppercase;
  display:flex; flex-direction:column;
}
.hero__l1,.hero__l2{ display:block; }
.hero__l2{
  padding-left:.09em;
  color:transparent;
  -webkit-text-stroke:1.5px var(--bone);
  text-stroke:1.5px var(--bone);
}
.hero__rule{
  height:1px; width:min(100%,780px);
  background:linear-gradient(to right,var(--ember),rgba(226,87,31,0));
  margin:clamp(1.1rem,3vw,2rem) 0 1.1rem;
}
.hero__sub{
  font-size:clamp(1.05rem,1rem + .5vw,1.5rem);
  color:var(--bone);
  max-width:34ch;
  font-style:italic;
}

.hero__foot{
  display:flex; align-items:flex-end; justify-content:space-between;
  gap:2rem; flex-wrap:wrap;
  padding-top:1.4rem;
  border-top:1px solid rgba(234,228,215,.14);
}
.hero__scroll{
  display:flex; align-items:center; gap:.9rem;
  font-family:var(--f-mono); font-size:.74rem;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--dim); text-decoration:none;
  transition:color .3s var(--ease);
}
.hero__scroll:hover{ color:var(--bone); }
.hero__scroll-line{
  width:52px; height:1px; background:var(--ember);
  transform-origin:left; animation:reach 2.6s var(--ease) infinite;
}
@keyframes reach{ 0%,100%{ transform:scaleX(.35);} 50%{ transform:scaleX(1);} }

.hero__stats{ display:flex; gap:clamp(1.6rem,4vw,3.4rem); }
.hero__stats dt{
  font-family:var(--f-mono); font-size:.66rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--dim);
  margin-bottom:.3rem;
}
.hero__stats dd{
  font-family:var(--f-disp); font-weight:800;
  font-size:clamp(1.6rem,3vw,2.4rem); line-height:1;
}

/* ── marquee band ──────────────────────────────────────────── */
.band{
  background:var(--ember); color:var(--char);
  overflow:hidden; padding:.72rem 0;
  border-block:1px solid var(--char);
}
.band__track{
  display:flex; gap:2.4rem; align-items:center;
  width:max-content;
  font-family:var(--f-disp); font-weight:800;
  font-size:1.06rem; letter-spacing:.13em; text-transform:uppercase;
  animation:slide 28s linear infinite;
}
.band__track i{ font-style:normal; font-size:.6rem; opacity:.62; }
@keyframes slide{ to{ transform:translateX(-50%); } }

/* ── cut chart ─────────────────────────────────────────────── */
.chart{ padding:clamp(5rem,11vw,10rem) var(--pad); max-width:var(--maxw); margin-inline:auto; }
.chart__body{
  margin-top:clamp(3rem,6vw,5rem);
  display:grid; gap:clamp(2rem,5vw,4.5rem);
  grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
  align-items:start;
}
.chart__figure{ position:relative; }
.hog{ width:100%; height:auto; overflow:visible; }
.hog__r{
  fill:var(--soot);
  stroke:none;
  cursor:pointer;
  transition:fill .35s var(--ease);
}
.hog__r:hover{ fill:#2E2723; }
.hog__r.is-on{ fill:var(--ember); }
.hog__outline{ fill:none; stroke:var(--bone); stroke-width:2.4; stroke-linejoin:round; }
.hog__seam{ fill:none; stroke:rgba(234,228,215,.32); stroke-width:1.3; stroke-dasharray:5 7; }
.hog__tail,
.hog__ear{ fill:none; stroke:var(--bone); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.hog__eye{ fill:var(--bone); }
.hog__nose,
.hog__snout{ fill:none; stroke:var(--bone); stroke-width:2; }
.hog__ink,.hog__labels{ pointer-events:none; }

.hog__lb{
  font-family:var(--f-mono); font-size:15px;
  letter-spacing:.18em; text-transform:uppercase;
  fill:rgba(234,228,215,.42);
  text-anchor:middle;
  transition:fill .35s var(--ease);
}
.hog__lb.is-on{ fill:var(--char); }
.hog__lb--out{ fill:rgba(234,228,215,.3); }
.hog__lb--out.is-on{ fill:var(--ember); }
.chart__hint{
  font-family:var(--f-mono); font-size:.68rem;
  letter-spacing:.2em; text-transform:uppercase; color:var(--grit);
  margin-top:.8rem;
}

.chart__panel{
  border-left:1px solid rgba(234,228,215,.16);
  padding-left:clamp(1.4rem,2.4vw,2.4rem);
  position:sticky; top:7rem;
}
.chart__idx{
  font-family:var(--f-mono); font-size:.72rem;
  letter-spacing:.2em; color:var(--ember);
  display:flex; gap:.6rem; margin-bottom:1.1rem;
}
.chart__idx-of{ color:var(--grit); }
.chart__name{
  font-family:var(--f-disp); font-weight:800;
  font-size:clamp(2.1rem,4.4vw,3.4rem); line-height:.92;
  text-transform:uppercase; margin-bottom:.5rem;
}
.chart__weight{
  font-family:var(--f-mono); font-size:.8rem;
  color:var(--flame); margin-bottom:1.3rem;
}
.chart__desc{ color:var(--dim); margin-bottom:1.9rem; }
.chart__cuts li{
  display:flex; justify-content:space-between; gap:1.2rem;
  padding:.72rem 0;
  border-top:1px solid rgba(234,228,215,.12);
  font-family:var(--f-mono); font-size:.82rem;
}
.chart__cuts li span:last-child{ color:var(--grit); white-space:nowrap; }

/* ── counter ───────────────────────────────────────────────── */
.counter{
  padding:clamp(5rem,11vw,10rem) var(--pad);
  max-width:var(--maxw); margin-inline:auto;
  border-top:1px solid rgba(234,228,215,.1);
}
.grid{
  margin-top:clamp(3rem,6vw,4.5rem);
  display:grid; gap:1px;
  grid-template-columns:repeat(auto-fill,minmax(345px,1fr));
  background:rgba(234,228,215,.11);
  border:1px solid rgba(234,228,215,.11);
}
.card{
  background:var(--char);
  padding:1.5rem;
  display:flex; flex-direction:column;
  transition:background .4s var(--ease);
}
.card:hover{ background:var(--ash); }
.card__img{
  position:relative; aspect-ratio:4/3; overflow:hidden;
  background:var(--soot); margin-bottom:1.3rem;
}
.card__img img{
  width:100%; height:100%; object-fit:cover;
  filter:grayscale(.72) contrast(1.12) brightness(.82);
  transform:scale(1.02);
  transition:filter .6s var(--ease), transform .8s var(--ease);
}
.card:hover .card__img img{ filter:none; transform:scale(1.06); }
.card__tag{
  position:absolute; top:0; left:0; z-index:2;
  background:var(--char); color:var(--flame);
  font-family:var(--f-mono); font-size:.62rem;
  letter-spacing:.18em; text-transform:uppercase;
  padding:.42rem .7rem;
}
.card__name{
  font-family:var(--f-disp); font-weight:800;
  font-size:1.86rem; line-height:1; text-transform:uppercase;
  margin-bottom:.5rem;
}
.card__desc{ color:var(--dim); font-size:.95rem; margin-bottom:1.1rem; }
.card__meta{
  display:flex; flex-wrap:wrap; gap:.4rem 1.1rem;
  font-family:var(--f-mono); font-size:.7rem;
  letter-spacing:.08em; color:var(--grit);
  padding-bottom:1.1rem; margin-bottom:auto;
}
.card__meta b{ color:var(--dim); font-weight:400; }
.card__primal{
  font:inherit; font-size:.7rem; letter-spacing:.08em;
  background:none; border:1px solid rgba(226,87,31,.42);
  color:var(--ember); cursor:pointer;
  padding:.18rem .5rem;
  display:inline-flex; align-items:center; gap:.35rem;
  transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}
.card__primal i{ font-style:normal; font-size:.78em; opacity:.7; }
.card__primal:hover{ background:var(--ember); border-color:var(--ember); color:var(--char); }
.card__primal--flat{
  border-color:rgba(234,228,215,.2); color:var(--grit); cursor:default;
}
.card__buy{
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; padding-top:1.1rem;
  border-top:1px solid rgba(234,228,215,.14);
}
.card__price{
  font-family:var(--f-disp); font-weight:800; font-size:1.5rem;
}
.card__price sup{ font-family:var(--f-mono); font-size:.6rem; color:var(--grit); top:-.9em; }
.card__add{
  font-family:var(--f-mono); font-size:.7rem;
  letter-spacing:.16em; text-transform:uppercase;
  background:none; border:1px solid rgba(234,228,215,.26);
  color:var(--bone); padding:.62rem .95rem; cursor:pointer;
  transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}
.card__add:hover{ background:var(--ember); border-color:var(--ember); color:var(--char); }
.card__add.is-done{ background:var(--flame); border-color:var(--flame); color:var(--char); }
.counter__note{
  margin-top:2rem; max-width:62ch; color:var(--grit); font-size:.95rem;
}

/* ── smokehouse ────────────────────────────────────────────── */
.smokehouse{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  border-top:1px solid rgba(234,228,215,.1);
}
.smokehouse__img{ position:relative; }
.smokehouse__img img{
  position:sticky; top:0;
  height:100svh; width:100%; object-fit:cover;
  filter:contrast(1.1) brightness(.78) saturate(.7);
}
.smokehouse__body{
  padding:clamp(4.5rem,9vw,9rem) var(--pad);
  border-left:1px solid rgba(234,228,215,.1);
}
.smokehouse__lede{
  color:var(--dim); max-width:48ch;
  margin-bottom:clamp(2.6rem,5vw,4rem);
  font-size:clamp(1.02rem,.95rem + .35vw,1.24rem);
}
.cure{ counter-reset:none; }
.cure__step{
  position:relative;
  padding:1.4rem 0 1.5rem 5.6rem;
  border-top:1px solid rgba(234,228,215,.13);
}
.cure__step::before{
  content:"Day " attr(data-day);
  position:absolute; left:0; top:1.55rem;
  font-family:var(--f-mono); font-size:.68rem;
  letter-spacing:.1em; color:var(--ember);
  white-space:nowrap;
}
.cure__step::after{
  content:""; position:absolute; left:0; top:0;
  width:100%; height:1px; background:var(--ember);
  transform:scaleX(0); transform-origin:left;
  transition:transform 1.1s var(--ease);
}
.cure__step.is-in::after{ transform:scaleX(1); }
.cure__step h4{
  font-family:var(--f-disp); font-weight:800;
  font-size:1.5rem; text-transform:uppercase; line-height:1;
  margin-bottom:.42rem;
}
.cure__step p{ color:var(--dim); font-size:.98rem; }

/* ── provenance ────────────────────────────────────────────── */
.prov{
  padding:clamp(5rem,11vw,10rem) var(--pad);
  max-width:var(--maxw); margin-inline:auto;
}
.prov__head{ margin-bottom:clamp(2.4rem,5vw,4rem); }
.prov__list li{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1.4fr) auto;
  gap:1.5rem; align-items:baseline;
  padding:1.5rem 0;
  border-top:1px solid rgba(234,228,215,.13);
  transition:background .45s var(--ease);
}
/* the row indents on hover, but the rule stays put — so the text moves,
   not the <li>. Compositor-only, and the right-hand column holds its edge. */
.prov__list li > span{ transition:transform .45s var(--ease); }
.prov__list li:hover{ background:var(--ash); }
.prov__list li:hover > span:not(.prov__k){ transform:translateX(1.2rem); }
.prov__list li:last-child{ border-bottom:1px solid rgba(234,228,215,.13); }
.prov__n{
  font-family:var(--f-disp); font-weight:800;
  font-size:clamp(1.5rem,2.6vw,2.2rem); text-transform:uppercase; line-height:1;
}
.prov__d,.prov__k{ font-family:var(--f-mono); font-size:.76rem; letter-spacing:.1em; color:var(--dim); }
.prov__k{ color:var(--ember); text-align:right; }
.prov__m{ color:var(--dim); font-size:.98rem; }
.prov__note{ margin-top:2rem; max-width:56ch; color:var(--grit); font-size:.95rem; }

/* ── visit / footer ────────────────────────────────────────── */
.visit{
  padding:clamp(4.5rem,9vw,8rem) var(--pad) 2rem;
  border-top:1px solid rgba(234,228,215,.13);
  background:var(--ash);
}
.visit__grid{
  display:grid; gap:clamp(2rem,5vw,4rem);
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
}
.visit__col h3{
  font-family:var(--f-mono); font-size:.72rem;
  letter-spacing:.22em; text-transform:uppercase; color:var(--ember);
  margin-bottom:1.2rem;
}
.visit__col p{ color:var(--dim); margin-bottom:.8rem; }
.visit__col a{ color:var(--bone); text-decoration-color:var(--grit); text-underline-offset:4px; }
.visit__hours div{
  display:flex; justify-content:space-between; gap:1rem;
  padding:.5rem 0; border-top:1px solid rgba(234,228,215,.11);
  font-family:var(--f-mono); font-size:.8rem; color:var(--dim);
}
.visit__mark{
  margin-top:clamp(3.5rem,8vw,7rem);
  font-family:var(--f-disp); font-weight:900;
  font-size:clamp(3.4rem,15.5vw,15rem);
  line-height:.8; text-transform:uppercase; letter-spacing:-.02em;
  color:transparent;
  -webkit-text-stroke:1px rgba(234,228,215,.2);
  text-stroke:1px rgba(234,228,215,.2);
  user-select:none;
}
.visit__legal{
  margin-top:1.6rem; padding-top:1.4rem;
  border-top:1px solid rgba(234,228,215,.11);
  font-family:var(--f-mono); font-size:.68rem;
  letter-spacing:.08em; color:var(--grit);
}

/* ── cart drawer ───────────────────────────────────────────── */
.cart{ position:fixed; inset:0; z-index:120; }
.cart__scrim{
  position:absolute; inset:0;
  background:rgba(5,4,4,.7); backdrop-filter:blur(3px);
  animation:fade .3s var(--ease);
}
@keyframes fade{ from{ opacity:0; } }
.cart__panel{
  position:absolute; top:0; right:0; bottom:0;
  width:min(420px,100%);
  background:var(--ash);
  border-left:1px solid rgba(234,228,215,.16);
  display:flex; flex-direction:column;
  animation:slidein .42s var(--ease);
}
@keyframes slidein{ from{ transform:translateX(100%); } }
.cart__top{
  display:flex; align-items:center; justify-content:space-between;
  padding:1.4rem 1.5rem;
  border-bottom:1px solid rgba(234,228,215,.14);
}
.cart__top h3{
  font-family:var(--f-disp); font-weight:800;
  font-size:1.5rem; text-transform:uppercase;
}
.cart__x{
  background:none; border:0; color:var(--dim);
  font-size:1rem; cursor:pointer; padding:.4rem;
}
.cart__x:hover{ color:var(--ember); }
.cart__list{ flex:1; overflow-y:auto; padding:.5rem 1.5rem; }
.cart__list li{
  display:flex; justify-content:space-between; gap:1rem;
  padding:1.1rem 0;
  border-bottom:1px solid rgba(234,228,215,.1);
}
.cart__nm{ font-family:var(--f-disp); font-weight:600; font-size:1.2rem; text-transform:uppercase; }
.cart__qty{ font-family:var(--f-mono); font-size:.72rem; color:var(--dim); display:block; margin-top:.2rem; }
.cart__rm{
  background:none; border:0; color:var(--grit); cursor:pointer;
  font-family:var(--f-mono); font-size:.68rem; letter-spacing:.1em;
  text-transform:uppercase; padding:0;
}
.cart__rm:hover{ color:var(--ember); }
.cart__pr{ font-family:var(--f-mono); font-size:.84rem; white-space:nowrap; }
.cart__empty{ color:var(--grit); padding:2rem 0; font-size:.95rem; }
.cart__foot{ padding:1.4rem 1.5rem; border-top:1px solid rgba(234,228,215,.14); }
.cart__total{
  display:flex; justify-content:space-between; align-items:baseline;
  font-family:var(--f-disp); font-weight:800;
  font-size:1.6rem; text-transform:uppercase;
  margin-bottom:.5rem;
}
.cart__fine{ color:var(--grit); font-size:.8rem; margin-bottom:1.1rem; }

/* ── reveal ────────────────────────────────────────────────── */
.rv{ opacity:0; transform:translateY(24px); transition:opacity .9s var(--ease), transform .9s var(--ease); }
.rv.is-in{ opacity:1; transform:none; }

/* ── responsive ────────────────────────────────────────────── */
@media (max-width:1080px){
  .chart__body{ grid-template-columns:1fr; }
  .chart__panel{ position:static; border-left:0; padding-left:0; border-top:1px solid rgba(234,228,215,.16); padding-top:1.8rem; }
  .smokehouse{ grid-template-columns:1fr; }
  .smokehouse__img img{ position:relative; height:56svh; }
  .smokehouse__body{ border-left:0; }
}
@media (max-width:860px){
  /* nav wraps to a second, swipeable row instead of vanishing */
  .nav{ flex-wrap:wrap; row-gap:.8rem; padding-bottom:.8rem; }
  .nav__links{
    order:3; width:100%;
    gap:1.5rem; overflow-x:auto; scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .nav__links::-webkit-scrollbar{ display:none; }
  .nav__links a{ white-space:nowrap; font-size:.7rem; }
  .prov__list li{ grid-template-columns:1fr auto; row-gap:.3rem; }
  .prov__m{ grid-column:1 / -1; }
  .hero__foot{ flex-direction:column; align-items:flex-start; gap:1.4rem; }
  .cure__step{ padding-left:0; padding-top:2.5rem; }
  .cure__step::before{ top:1rem; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  .rv{ opacity:1; transform:none; }
  .cure__step::after{ transform:scaleX(1); }
}
