/* ==========================================================================
   BeautyBoutique Vlissingen — homepagevoorstel.

   Tokens staan onder .site. Elke tekstkleur hieronder is vooraf doorgerekend
   tegen elk vlak waarop hij werkelijk landt; de laagste verhouding in het hele
   document is 5,23:1.
   ========================================================================== */

/* ------------------------------------------------------------------ fonts */
@font-face{font-family:'Fraunces';src:url('../fonts/fraunces-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Fraunces';src:url('../fonts/fraunces-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Fraunces';src:url('../fonts/fraunces-500i.woff2') format('woff2');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url('../fonts/instrument-sans-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url('../fonts/instrument-sans-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url('../fonts/instrument-sans-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}

/* ------------------------------------------------------------------ reset */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,figure,blockquote,dl,dd,ol,ul{margin:0}
ol,ul{list-style:none;padding:0}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;margin:0;padding:0;cursor:pointer}
address{font-style:normal}

/* Eén focusring voor het hele document, zonder specificiteitsstrijd.
   currentColor werkt op elk vlak omdat de tekstkleur er altijd al leesbaar is. */
:where(a,button,[tabindex],summary):focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
  border-radius:2px;
}

.u-sr{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

.u-skip{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:#14151a;color:#fff;padding:12px 18px;
  font:500 15px/1 'Instrument Sans',system-ui,sans-serif;
}
.u-skip:focus{left:8px;top:8px}



/* ------------------------------------------------------------- onthullen */
/* De verborgen staat bestaat alleen als JS draait EN de bezoeker beweging
   toestaat. Onder reduced motion wordt .motion nooit gezet, dus dan bestaat
   er geen enkele opacity:0 regel en kan er niets onzichtbaar blijven staan. */
html.js.motion [data-reveal]{opacity:0;transform:translateY(16px)}
html.js.motion [data-reveal].is-in{
  opacity:1;transform:none;
  transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);
}
@media (prefers-reduced-motion:reduce){
  html.js.motion [data-reveal]{opacity:1;transform:none;transition:none}
  *{animation-duration:.001ms !important;transition-duration:.001ms !important}
}


/* ==========================================================================
   VERSION 1 — "Een momentje voor jezelf"
   Warm, redactioneel. Kleuren komen uit de kamer zelf: het havermoutkrijt van
   de muur, het diepe groen van de vloer, de kleiwarmte van de kruidenstempels.
   ========================================================================== */
.site{
  --ground:#F5F0E8;
  --ground-alt:#E9E0D2;
  --ink:#221E19;
  --muted:#585045;
  --forest:#1E3A31;
  --forest-text:#1A332B;
  --clay:#9A4E2E;
  --clay-text:#8C4526;
  --on-dark:#F3EFE7;
  --on-dark-muted:#C4C9BE;
  --clay-light:#E39A76;
  --line:rgba(34,30,25,.14);
  --line-dark:rgba(243,239,231,.22);

  --display:'Fraunces',Georgia,'Times New Roman',serif;
  --body:'Instrument Sans',system-ui,-apple-system,Segoe UI,sans-serif;

  --pad:clamp(18px,5vw,72px);
  --gap:clamp(38px,7vw,110px);

  background:var(--ground);
  color:var(--ink);
  font-family:var(--body);
  font-size:clamp(16px,.55vw + 15px,17.5px);
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
.site ::selection{background:var(--clay);color:var(--on-dark)}

.v1-eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--clay-text);margin-bottom:18px;
}
.v1-eyebrow--on-dark{color:var(--clay-light)}

/* -------------------------------------------------------------- v1 knoppen */
.v1-btn{
  display:inline-flex;align-items:center;gap:12px;
  min-height:52px;padding:0 26px;border-radius:999px;
  font-weight:500;font-size:15.5px;letter-spacing:.01em;text-decoration:none;
  transition:transform .3s cubic-bezier(.22,.61,.36,1),background-color .3s,color .3s;
}
.v1-btn--solid{background:var(--forest);color:var(--on-dark)}
.v1-btn--solid:hover{background:var(--clay);transform:translateY(-2px)}
.v1-btn__dot{width:7px;height:7px;border-radius:50%;background:var(--clay-light)}
.v1-btn--ghost{border:1px solid var(--line);color:var(--forest-text)}
.v1-btn--ghost:hover{border-color:var(--forest);transform:translateY(-2px)}
.v1-btn--light{background:var(--on-dark);color:var(--forest-text)}
.v1-btn--light:hover{transform:translateY(-2px)}
.v1-btn--outline{border:1px solid var(--line-dark);color:var(--on-dark)}
.v1-btn--outline:hover{border-color:var(--on-dark);transform:translateY(-2px)}

/* ------------------------------------------------------------------ v1 nav */
.v1-nav{position:sticky;top:0;z-index:60;background:rgba(245,240,232,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.v1-nav__in{display:flex;align-items:center;gap:clamp(14px,3vw,44px);padding:12px var(--pad);max-width:1560px;margin:0 auto}
.v1-nav__brand{flex:0 0 auto;line-height:0}
.v1-nav__brand img{width:clamp(132px,17vw,188px);height:auto}
.v1-nav__links{display:flex;gap:clamp(14px,2vw,30px);margin-left:auto;min-width:0}
.v1-nav__links a{
  text-decoration:none;font-size:14.5px;color:var(--muted);
  padding:6px 0;border-bottom:1px solid transparent;transition:color .25s,border-color .25s;
}
.v1-nav__links a:hover{color:var(--forest-text);border-bottom-color:var(--clay)}
.v1-nav__cta{
  display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;
  min-height:42px;padding:0 20px;border-radius:999px;
  background:var(--forest);color:var(--on-dark);
  text-decoration:none;font-size:14.5px;font-weight:500;
  transition:background-color .3s;
}
.v1-nav__cta:hover{background:var(--clay)}
@media (max-width:900px){
  .v1-nav__links{display:none}
  .v1-nav__in{gap:12px}
}
/* Op de smalste schermen passen merk en knop samen niet meer op één regel.
   Niet de rij laten afkappen, maar beide onderdelen echt kleiner maken. */
@media (max-width:560px){
  .v1-nav__in{gap:8px}
  .v1-nav__brand img{width:104px}
  .v1-nav__cta{padding:0 14px;font-size:13px;gap:0}
  .v1-nav__cta svg{display:none}
}

/* ----------------------------------------------------------------- v1 hero */
.v1-hero{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);
  gap:clamp(28px,5vw,80px);align-items:center;
  max-width:1560px;margin:0 auto;
  padding:clamp(44px,8vw,110px) var(--pad) clamp(40px,7vw,96px);
}
.v1-hero__text{min-width:0}
.v1-hero__title{
  font-family:var(--display);font-weight:600;
  font-size:clamp(2.9rem,8.2vw,6.4rem);line-height:.98;
  letter-spacing:-.025em;margin-bottom:26px;
}
.v1-hero__title em{display:block;font-weight:500;font-style:italic;color:var(--clay-text)}
.v1-hero__lead{font-size:clamp(17px,1.1vw + 14px,20.5px);line-height:1.58;color:var(--muted);max-width:33em}
.v1-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.v1-hero__facts{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:22px;margin-top:52px;padding-top:30px;border-top:1px solid var(--line);
}
.v1-hero__facts div{min-width:0}
/* Een label als "Behandelingen" is één ondeelbaar woord: met .16em spatiëring
   is het breder dan zijn eigen kolom op 390px, en dan schuift de hele pagina
   opzij. Breken mag hier dus, en de kolom mag smaller worden dan het woord. */
.v1-hero__facts dt{
  font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--clay-text);margin-bottom:7px;
  overflow-wrap:break-word;
}
.v1-hero__facts dd{margin:0;font-size:15px;line-height:1.45;color:var(--ink)}

.v1-hero__figure{position:relative;min-width:0;margin:0}
.v1-hero__figure img{
  width:100%;border-radius:230px 230px 12px 12px;
  box-shadow:0 30px 70px -40px rgba(34,30,25,.5);
}
.v1-hero__chip{
  position:absolute;left:-10px;bottom:26px;
  background:var(--forest);color:var(--on-dark);
  padding:11px 18px;border-radius:999px;
  font-size:12.5px;letter-spacing:.04em;
  box-shadow:0 10px 28px -14px rgba(0,0,0,.55);
}
@media (max-width:900px){
  .v1-hero{grid-template-columns:minmax(0,1fr)}
  .v1-hero__figure img{border-radius:150px 150px 12px 12px;max-height:74vh;object-fit:cover}
  .v1-hero__chip{left:12px}
}

/* -------------------------------------------------------------- v1 belofte */
.v1-belofte{
  background:var(--ground-alt);
  padding:clamp(46px,7vw,104px) var(--pad);
}
.v1-belofte__list{
  max-width:1560px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));
  gap:clamp(26px,4vw,64px);
}
.v1-belofte__list li{min-width:0;padding-top:22px;border-top:2px solid var(--clay)}
.v1-belofte__num{
  display:block;font-family:var(--display);font-size:14px;font-weight:600;
  letter-spacing:.1em;color:var(--clay-text);margin-bottom:14px;
}
.v1-belofte__list h3{
  font-family:var(--display);font-weight:500;font-size:clamp(1.6rem,2.4vw,2.3rem);
  line-height:1.1;letter-spacing:-.015em;margin-bottom:12px;
}
.v1-belofte__list p{color:var(--muted);font-size:16px}

/* ----------------------------------------------- v1 signature: het ritueel */
.v1-ritueel{
  background:var(--forest);color:var(--on-dark);
  padding:clamp(52px,8vw,120px) var(--pad);
}
.v1-ritueel__head{max-width:1560px;margin:0 auto clamp(30px,4vw,52px)}
.v1-ritueel__head h2{
  font-family:var(--display);font-weight:600;
  font-size:clamp(2.3rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.025em;
  max-width:16em;
}
.v1-ritueel__head h2 em{font-weight:500;font-style:italic;color:var(--clay-light)}
.v1-ritueel__intro{margin-top:20px;max-width:44em;color:var(--on-dark-muted);font-size:17px}

.v1-ritueel__picker{
  max-width:1560px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(184px,1fr));gap:10px;
}
.v1-chip{
  min-width:0;text-align:left;padding:16px 18px;border-radius:14px;
  border:1px solid var(--line-dark);color:var(--on-dark);
  transition:background-color .3s,border-color .3s,transform .3s;
}
.v1-chip:hover{border-color:var(--clay-light);transform:translateY(-2px)}
.v1-chip.is-on{background:var(--on-dark);color:var(--forest-text);border-color:var(--on-dark)}
.v1-chip__name{display:block;font-family:var(--display);font-weight:600;font-size:19px;line-height:1.2}
.v1-chip__meta{display:block;margin-top:5px;font-size:13px;color:var(--on-dark-muted)}
.v1-chip.is-on .v1-chip__meta{color:var(--clay-text)}

.v1-ritueel__stage{max-width:1560px;margin:clamp(26px,4vw,46px) auto 0}
/* Zonder JS staan alle vier de panelen gewoon onder elkaar; met JS toont
   site.js er één. Nooit opacity:0, altijd echt weg of echt aanwezig. */
html.js .v1-panel{display:none}
html.js .v1-panel.is-on{display:block}
.v1-panel + .v1-panel{margin-top:40px}
.v1-panel__title{
  font-family:var(--display);font-weight:600;font-size:clamp(1.4rem,2.4vw,2rem);
  line-height:1.15;margin-bottom:24px;
}
.v1-panel__title span{
  display:block;font-family:var(--body);font-weight:400;font-size:14px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--clay-light);margin-top:9px;
}

/* De rail: de warme lijn die door het hele ritueel loopt. */
.v1-rail{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(216px,1fr));
  gap:14px;
}
.v1-rail li{
  position:relative;min-width:0;
  padding:20px 18px 18px;border-radius:12px;
  background:rgba(243,239,231,.07);
  border:1px solid var(--line-dark);
  counter-increment:railstep;
}
.v1-rail li::before{
  content:counter(railstep,decimal-leading-zero);
  display:block;font-size:11.5px;letter-spacing:.14em;
  color:var(--on-dark-muted);margin-bottom:9px;
}
.v1-rail li::after{
  content:"";position:absolute;left:0;top:0;width:3px;height:100%;
  background:var(--line-dark);border-radius:12px 0 0 12px;
}
.v1-rail li.is-zen::after{background:var(--clay-light)}
.v1-rail li.is-new::after{background:rgba(227,154,118,.5)}
.v1-rail{counter-reset:railstep}
.v1-rail__tag{
  display:inline-block;margin-bottom:8px;padding:3px 10px;border-radius:999px;
  background:var(--clay);color:var(--on-dark);
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.v1-rail__step{display:block;font-size:15px;line-height:1.45}
.v1-rail li.is-new .v1-rail__step::after{
  content:" nieuw in dit ritueel";
  color:var(--clay-light);font-size:12.5px;letter-spacing:.05em;
}

.v1-ritueel__notes{
  max-width:1560px;margin:clamp(30px,4vw,54px) auto 0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:24px;padding-top:30px;border-top:1px solid var(--line-dark);
}
.v1-ritueel__notes p{min-width:0;color:var(--on-dark-muted);font-size:15px}
.v1-ritueel__notes strong{display:block;color:var(--on-dark);font-weight:500;margin-bottom:5px}

/* ---------------------------------------------------------------- v1 brief */
.v1-brief{
  display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);
  gap:clamp(28px,5vw,84px);align-items:center;
  max-width:1560px;margin:0 auto;padding:clamp(52px,8vw,120px) var(--pad);
}
.v1-brief__figure{min-width:0;margin:0}
.v1-brief__figure img{width:100%;border-radius:12px 12px 200px 200px}
.v1-brief__body{min-width:0}
.v1-brief__body h2{
  font-family:var(--display);font-weight:600;
  font-size:clamp(2rem,4.4vw,3.5rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:26px;
}
.v1-brief__body h2 em{font-style:italic;font-weight:500;color:var(--clay-text)}
.v1-brief__body blockquote{margin:0;padding-left:22px;border-left:2px solid var(--clay)}
.v1-brief__body blockquote p{font-size:clamp(17px,1vw + 14px,19.5px);line-height:1.6;color:var(--ink)}
.v1-brief__body blockquote p + p{margin-top:16px}
.v1-brief__sign{
  margin-top:22px;font-family:var(--display);font-style:italic;font-weight:500;
  font-size:21px;color:var(--clay-text);
}
.v1-brief__quote{
  margin-top:38px;padding:26px 28px;border-radius:14px;
  background:var(--ground-alt);
}
.v1-brief__quote p{font-family:var(--display);font-size:18px;line-height:1.45;font-style:italic}
.v1-brief__quote cite{display:block;margin-top:14px;font-style:normal;font-size:13px;letter-spacing:.05em;color:var(--muted)}
@media (max-width:900px){.v1-brief{grid-template-columns:minmax(0,1fr)}}

/* ----------------------------------------------------------------- v1 menu */
.v1-menu{background:var(--ground-alt);padding:clamp(52px,8vw,120px) var(--pad)}
.v1-menu__head{max-width:1560px;margin:0 auto clamp(30px,4vw,54px)}
.v1-menu__head h2{
  font-family:var(--display);font-weight:600;font-size:clamp(2.2rem,5vw,3.8rem);
  line-height:1.03;letter-spacing:-.02em;
}
.v1-menu__note{margin-top:14px;color:var(--muted);font-size:15.5px;max-width:40em}
.v1-menu__cols{
  max-width:1560px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(276px,1fr));
  gap:clamp(26px,3.4vw,54px);
}
.v1-menu__group{min-width:0}
.v1-menu__group h3{
  font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--clay-text);padding-bottom:12px;border-bottom:2px solid var(--clay);margin-bottom:6px;
}
.v1-menu__group li{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  column-gap:14px;row-gap:2px;align-items:baseline;
  padding:14px 0;border-bottom:1px solid var(--line);
}
.v1-menu__n{grid-column:1;font-size:15.5px;line-height:1.35;min-width:0;overflow-wrap:break-word}
.v1-menu__p{grid-column:2;grid-row:1;font-family:var(--display);font-weight:600;font-size:17px;white-space:nowrap}
/* Duur plus een regel over wat de behandeling werkelijk inhoudt: een prijs
   zonder uitleg laat de bezoeker raden waarvoor hij betaalt. Spant beide
   kolommen, zodat de prijs rechts op één regel met de naam blijft staan. */
.v1-menu__d{
  grid-column:1 / -1;grid-row:2;
  font-size:13.5px;line-height:1.45;color:var(--muted);
  margin-top:3px;overflow-wrap:break-word;
}

/* --------------------------------------------------------------- v1 merken */
.v1-merken{max-width:1560px;margin:0 auto;padding:clamp(52px,8vw,110px) var(--pad)}
.v1-merken h2{
  font-family:var(--display);font-weight:500;font-style:italic;
  font-size:clamp(1.6rem,3vw,2.4rem);margin-bottom:clamp(24px,3vw,44px);color:var(--forest-text);
}
.v1-merken__rail{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(224px,1fr));
  gap:clamp(20px,3vw,44px);
}
.v1-merken__rail li{min-width:0;padding-top:20px;border-top:1px solid var(--line)}
.v1-merken__name{
  display:block;font-family:var(--display);font-weight:600;
  font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.1;margin-bottom:10px;
}
.v1-merken__desc{display:block;color:var(--muted);font-size:15px}

/* --------------------------------------------------------------- v1 cadeau */
.v1-cadeau{padding:0 var(--pad) clamp(52px,8vw,110px)}
.v1-cadeau__card{
  max-width:1560px;margin:0 auto;
  display:grid;grid-template-columns:auto minmax(0,1fr);
  gap:clamp(24px,4vw,60px);align-items:center;
  background:var(--ground-alt);border-radius:20px;
  padding:clamp(24px,4vw,54px);
}
.v1-cadeau__figure{margin:0;min-width:0}
.v1-cadeau__figure img{width:clamp(140px,22vw,260px);border-radius:14px}
.v1-cadeau__body{min-width:0}
.v1-cadeau__body h2{
  font-family:var(--display);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.8rem);
  line-height:1.06;letter-spacing:-.02em;margin-bottom:14px;
}
.v1-cadeau__body h2 em{font-style:italic;font-weight:500;color:var(--clay-text)}
.v1-cadeau__body p{color:var(--muted);max-width:36em}
.v1-cadeau__how{margin-top:12px;font-size:15px}
.v1-cadeau__how a{color:var(--forest-text)}
@media (max-width:700px){.v1-cadeau__card{grid-template-columns:minmax(0,1fr)}}

/* ----------------------------------------------------------------- v1 week */
.v1-week{
  max-width:1560px;margin:0 auto;padding:0 var(--pad) clamp(52px,8vw,110px);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(272px,1fr));
  gap:clamp(26px,4vw,64px);align-items:start;
}
.v1-week__head{min-width:0}
.v1-week__head h2{
  font-family:var(--display);font-weight:600;font-size:clamp(2rem,4.2vw,3.2rem);
  line-height:1.04;letter-spacing:-.02em;margin-bottom:16px;
}
.v1-week__head h2 em{font-style:italic;font-weight:500;color:var(--clay-text)}
.v1-week__head p{color:var(--muted)}
.v1-week__status{
  display:flex;align-items:flex-start;gap:10px;margin-top:20px;
  padding:14px 18px;border-radius:12px;background:var(--ground-alt);
  font-size:14.5px;color:var(--ink);
}
.v1-week__dot{flex:0 0 auto;width:9px;height:9px;margin-top:7px;border-radius:50%;background:var(--muted)}
.v1-week__status[data-status="open"] .v1-week__dot{background:var(--clay)}
.v1-week__status[data-status="dicht"] .v1-week__dot{background:var(--muted)}

.v1-week__grid{min-width:0;border-top:1px solid var(--line)}
.v1-week__row{
  display:flex;justify-content:space-between;gap:14px;align-items:baseline;
  padding:15px 0;border-bottom:1px solid var(--line);min-width:0;
}
.v1-week__row [role="rowheader"]{font-size:15.5px}
.v1-week__row [role="cell"]{font-family:var(--display);font-weight:600;font-size:16px;text-align:right}
.v1-week__row .is-shut{font-family:var(--body);font-weight:400;font-size:14.5px;color:var(--muted)}
.v1-week__row.is-open [role="rowheader"]{font-weight:500}
.v1-week__row.is-open [role="cell"]{color:var(--clay-text)}

.v1-week__where{min-width:0;padding:clamp(22px,3vw,34px);border-radius:16px;background:var(--forest);color:var(--on-dark)}
.v1-week__where h3{
  font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--clay-light);margin-bottom:16px;
}
.v1-week__where address{font-family:var(--display);font-weight:500;font-size:20px;line-height:1.45;margin-bottom:16px}
.v1-week__where p{color:var(--on-dark-muted);font-size:14.5px}
.v1-week__where p + p{margin-top:8px}

/* ------------------------------------------------------------------ v1 cta */
.v1-cta{background:var(--clay);color:var(--on-dark);padding:clamp(52px,8vw,116px) var(--pad)}
.v1-cta__in{max-width:1560px;margin:0 auto}
.v1-cta h2{
  font-family:var(--display);font-weight:600;font-size:clamp(2.3rem,6vw,4.6rem);
  line-height:1.02;letter-spacing:-.025em;margin-bottom:16px;
}
.v1-cta h2 em{font-style:italic;font-weight:500}
.v1-cta p{max-width:38em;font-size:17.5px}
.v1-cta__row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

/* ----------------------------------------------------------------- v1 foot */
.v1-foot{background:var(--forest);color:var(--on-dark);padding:clamp(46px,6vw,88px) var(--pad) 90px}
.v1-foot__in{
  max-width:1560px;margin:0 auto;
  display:grid;grid-template-columns:minmax(0,1.5fr) repeat(auto-fit,minmax(158px,1fr));
  gap:clamp(26px,3vw,52px);
}
.v1-foot__brand{min-width:0}
.v1-foot__brand img{width:190px;margin-bottom:18px;background:var(--on-dark);padding:12px 16px;border-radius:10px}
.v1-foot__brand p{color:var(--on-dark-muted);font-size:14.5px;max-width:30em}
.v1-foot__col{min-width:0}
.v1-foot__col h3{
  font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--clay-light);margin-bottom:14px;
}
.v1-foot__col p{font-size:14.5px;color:var(--on-dark-muted);margin-bottom:7px;overflow-wrap:break-word}
.v1-foot__col a{color:var(--on-dark);text-decoration:none;border-bottom:1px solid var(--line-dark)}
.v1-foot__col a:hover{border-bottom-color:var(--clay-light)}
.v1-foot__base{
  max-width:1560px;margin:clamp(34px,4vw,58px) auto 0;padding-top:22px;
  border-top:1px solid var(--line-dark);
  display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;
  font-family:var(--display);font-style:italic;font-size:15px;color:var(--on-dark-muted);
}
.v1-foot__credit{font-family:var(--body);font-style:normal;font-size:14px}
.v1-foot__credit a{color:var(--on-dark);text-decoration:underline;text-underline-offset:3px}
.v1-foot__credit a:hover{color:var(--clay-light)}

