/* Fermentierlust Homepage R3 – homepage-only composition layer.
   Loaded only by /index.html after all shared stylesheets. */
/* ===== HOMEPAGE R2 – composed page dramaturgy (homepage-only) ===== */
body.xp-page-home .home-hero{padding-bottom:0}
body.xp-page-home .home-hero .hero-grid{padding-bottom:clamp(44px,5vw,68px)}
body.xp-page-home .home-hero .hero-media{border-radius:44px 108px 44px 44px;box-shadow:0 24px 70px rgba(84,22,80,.12)}
body.xp-page-home .home-hero .hero-note{left:auto;right:-24px;bottom:28px;width:min(255px,62%);border-radius:20px 20px 8px 20px;background:rgba(255,253,248,.94)}
body.xp-page-home .home-proof-rail{border-block:1px solid rgba(84,22,80,.10);background:rgba(245,241,197,.52)}
body.xp-page-home .home-proof-rail__inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:18px}
body.xp-page-home .home-proof-rail__inner>div{display:grid;gap:3px;padding:0 22px;border-left:1px solid rgba(84,22,80,.12)}
body.xp-page-home .home-proof-rail__inner>div:first-child{padding-left:0;border-left:0}
body.xp-page-home .home-proof-rail__inner>div:last-child{padding-right:0}
body.xp-page-home .home-proof-rail strong{font:500 17px/1.2 var(--font-display);color:var(--fl-purple-dark)}
body.xp-page-home .home-proof-rail span{font-size:11.5px;line-height:1.35;color:var(--fl-ink-soft)}
body.xp-page-home .home-workshop-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}
body.xp-page-home .home-workshop-head__link{align-self:end;justify-self:end;margin-bottom:6px;white-space:nowrap}

body.xp-page-home .home-story{background:linear-gradient(180deg,var(--fl-cream) 0%,#fbf8ec 100%)}
body.xp-page-home .home-story__grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:clamp(34px,6vw,72px);align-items:center}
body.xp-page-home .home-story__media{height:clamp(330px,37vw,470px);overflow:hidden;border-radius:30px 30px 92px 30px;background:#e3ddd4}
body.xp-page-home .home-story__media img{width:100%;height:100%;object-fit:cover;object-position:center 54%}
body.xp-page-home .home-story__copy{max-width:470px}
body.xp-page-home .home-story__copy .lead{margin-top:20px}
body.xp-page-home .home-story__note{margin-top:28px;padding-top:18px;border-top:1px solid rgba(84,22,80,.16);font-family:var(--font-accent);font-size:11px;font-weight:600;letter-spacing:.10em;line-height:1.5;text-transform:uppercase;color:var(--fl-purple-dark)}

body.xp-page-home .home-journey{overflow:hidden}
body.xp-page-home .home-journey__head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.7fr);column-gap:clamp(40px,7vw,88px);align-items:end}
body.xp-page-home .home-journey__head .eyebrow{grid-column:1/-1}
body.xp-page-home .home-journey__head .lead{margin:0 0 4px}
body.xp-page-home .home-journey__track{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,4vw,48px);margin-top:50px;padding-top:26px}
body.xp-page-home .home-journey__track::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(84,22,80,.20)}
body.xp-page-home .home-journey__stage{position:relative;padding-right:8px}
body.xp-page-home .home-journey__stage::before{content:"";position:absolute;width:11px;height:11px;top:-32px;left:0;border-radius:50%;background:var(--fl-purple);box-shadow:0 0 0 7px var(--fl-surface)}
body.xp-page-home .home-journey__stage:nth-child(2){transform:translateY(30px)}
body.xp-page-home .home-journey__number{display:block;margin-bottom:20px;font:400 clamp(48px,5vw,66px)/.9 var(--font-display);color:rgba(186,120,168,.72)}
body.xp-page-home .home-journey__kicker{margin-bottom:8px;font-family:var(--font-accent);font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--fl-purple-dark)}
body.xp-page-home .home-journey__stage .h3{max-width:12ch}
body.xp-page-home .home-journey__stage>p:last-child{margin-top:14px;max-width:34ch;color:var(--fl-ink-soft)}
body.xp-page-home .home-journey__track{padding-bottom:30px}

body.xp-page-home .home-knowledge__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:clamp(44px,7vw,90px);align-items:center}
body.xp-page-home .home-knowledge__copy .lead{margin-top:22px}
body.xp-page-home .home-knowledge__ledger{border-top:1px solid rgba(245,241,197,.26)}
body.xp-page-home .home-knowledge__row{display:grid;grid-template-columns:110px 1fr;gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(245,241,197,.26)}
body.xp-page-home .home-knowledge__row>strong{font:400 clamp(42px,4.5vw,62px)/.85 var(--font-display);color:var(--fl-green-light)}
body.xp-page-home .home-knowledge__row span{color:rgba(245,241,197,.78);font-size:14px;line-height:1.5}
body.xp-page-home .home-knowledge__row b{display:block;margin-bottom:3px;color:var(--fl-cream);font-size:14px;font-weight:600}
body.xp-page-home .home-knowledge .brand-panel__actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:30px}

body.xp-page-home .home-voices{background:#eef3e9}
body.xp-page-home .home-voices__grid.home-voices__v2-layout{display:block}
body.xp-page-home .home-voices__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:38px}
body.xp-page-home .home-voices__head .h2{max-width:17ch}
body.xp-page-home .home-voices__source{display:grid;gap:5px;text-align:right}
body.xp-page-home .home-voices__source>span{font-family:var(--font-accent);font-size:10px;font-weight:600;letter-spacing:.10em;text-transform:uppercase;color:var(--fl-ink-soft)}
body.xp-page-home .home-voices__strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid rgba(84,22,80,.16)}
body.xp-page-home .home-voices__strip figure{margin:0;padding:30px 28px 28px;border-left:1px solid rgba(84,22,80,.16)}
body.xp-page-home .home-voices__strip figure:first-child{padding-left:0;border-left:0}
body.xp-page-home .home-voices__strip figure:last-child{padding-right:0}
body.xp-page-home .home-voices__strip blockquote{margin:0 0 22px;font:400 clamp(25px,2.35vw,34px)/1.08 var(--font-display);color:var(--fl-purple-dark)}
body.xp-page-home .home-voices__strip figcaption{font-size:12px;color:var(--fl-ink-soft)}

body.xp-page-home .home-region{position:relative;overflow:hidden;background:#fbf7ef}
body.xp-page-home .home-region::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 26%,rgba(186,120,168,.12),transparent 28%),linear-gradient(100deg,rgba(245,241,197,.38),transparent 56%);pointer-events:none}
body.xp-page-home .home-region__frame{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:clamp(48px,8vw,112px);align-items:center;padding:clamp(8px,1vw,16px) 0}
body.xp-page-home .home-region__place{position:relative;display:grid;align-content:center;min-height:310px;padding:34px 38px;border:1px solid rgba(84,22,80,.14);border-radius:34px 34px 92px 34px;background:rgba(255,253,248,.72);box-shadow:0 22px 54px rgba(84,22,80,.06)}
body.xp-page-home .home-region__place::after{content:"";position:absolute;right:34px;top:34px;width:10px;height:10px;border-radius:50%;background:var(--fl-green);box-shadow:0 0 0 8px rgba(176,200,153,.18)}
body.xp-page-home .home-region__place-kicker{font-family:var(--font-accent);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--fl-purple-dark)}
body.xp-page-home .home-region__place strong{display:block;margin:16px 0 2px;font:400 clamp(70px,8vw,116px)/.8 var(--font-display);letter-spacing:-.045em;color:var(--fl-purple-dark)}
body.xp-page-home .home-region__place-sub{font-size:14px;color:var(--fl-ink-soft)}
body.xp-page-home .home-region__venue{display:inline-flex;width:max-content;margin-top:32px;padding-top:14px;border-top:1px solid rgba(84,22,80,.16);font-family:var(--font-accent);font-size:11px;font-weight:600;letter-spacing:.10em;text-transform:uppercase;color:var(--fl-purple-dark)}
body.xp-page-home .home-region__copy{max-width:650px}
body.xp-page-home .home-region__copy .h2{max-width:12ch;margin-top:10px}
body.xp-page-home .home-region__copy .lead{max-width:52ch;margin:22px 0 0}
body.xp-page-home .home-region__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:30px}
body.xp-page-home .home-region__actions .text-link{white-space:nowrap}


@media(max-width:900px){
  body.xp-page-home .home-proof-rail__inner{grid-template-columns:1fr 1fr;row-gap:18px}
  body.xp-page-home .home-proof-rail__inner>div{padding:0 18px}
  body.xp-page-home .home-proof-rail__inner>div:nth-child(odd){padding-left:0;border-left:0}
  body.xp-page-home .home-story__grid,body.xp-page-home .home-journey__head,body.xp-page-home .home-knowledge__grid{grid-template-columns:1fr}
  body.xp-page-home .home-story__copy{max-width:650px}
  body.xp-page-home .home-journey__head{gap:18px}
  body.xp-page-home .home-journey__track{gap:24px}
  body.xp-page-home .home-journey__stage:nth-child(2){transform:none}
  body.xp-page-home .home-knowledge__ledger{margin-top:8px}
  body.xp-page-home .home-voices__head{grid-template-columns:1fr;gap:14px}
  body.xp-page-home .home-voices__source{text-align:left}
}
@media(max-width:680px){
  body.xp-page-home .home-hero .hero-note{right:14px;bottom:14px;width:min(245px,72%)}
  body.xp-page-home .home-workshop-head{grid-template-columns:1fr;gap:16px}
  body.xp-page-home .home-workshop-head__link{justify-self:start;margin:0}
  body.xp-page-home .home-story__media{height:330px;border-radius:24px 24px 68px 24px}
  body.xp-page-home .home-journey__track{grid-template-columns:1fr;margin-top:40px;padding-top:0;padding-left:28px;gap:34px}
  body.xp-page-home .home-journey__track::before{left:5px;right:auto;top:0;bottom:0;width:1px;height:auto}
  body.xp-page-home .home-journey__stage::before{left:-28px;top:6px;box-shadow:0 0 0 6px var(--fl-surface)}
  body.xp-page-home .home-journey__number{font-size:42px;margin-bottom:12px}
  body.xp-page-home .home-journey__stage .h3{max-width:18ch}
  body.xp-page-home .home-knowledge__row{grid-template-columns:78px 1fr;gap:16px}
  body.xp-page-home .home-voices__strip{grid-template-columns:1fr}
  body.xp-page-home .home-voices__strip figure{padding:24px 0;border-left:0;border-top:1px solid rgba(84,22,80,.16)}
  body.xp-page-home .home-voices__strip figure:first-child{border-top:0}
}
@media(max-width:430px){
  body.xp-page-home .home-proof-rail__inner{grid-template-columns:1fr;padding-block:15px;row-gap:0}
  body.xp-page-home .home-proof-rail__inner>div{padding:11px 0!important;border-left:0!important;border-top:1px solid rgba(84,22,80,.10)}
  body.xp-page-home .home-proof-rail__inner>div:first-child{border-top:0}
  body.xp-page-home .home-story__media{height:285px}
  body.xp-page-home .home-knowledge__row{grid-template-columns:64px 1fr}
}
@media(prefers-reduced-motion:reduce){body.xp-page-home .home-journey__stage:nth-child(2){transform:none}}

/* R3 region responsive rules retained; footer ownership intentionally excluded. */
@media(max-width:900px){
  body.xp-page-home .home-region__frame{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:44px}
  body.xp-page-home .home-region__place{min-height:270px;padding:30px}
}
@media(max-width:680px){
  body.xp-page-home .home-region__frame{grid-template-columns:1fr;gap:30px}
  body.xp-page-home .home-region__place{min-height:230px;border-radius:26px 26px 66px 26px}
  body.xp-page-home .home-region__place strong{font-size:76px}
  body.xp-page-home .home-region__copy .h2{max-width:15ch}
  body.xp-page-home .home-region__actions{display:grid;justify-items:start;gap:18px}
}
@media(max-width:460px){
  body.xp-page-home .home-region__place{min-height:210px;padding:26px}
  body.xp-page-home .home-region__place strong{font-size:66px}
}

/* R3 hero de-duplication. */
body.xp-page-home .home-hero .hero-actions{margin-bottom:0}

/* R8O.1 homepage visual patch: keep Instrument Serif descenders clear in workshop heading. */
body.xp-page-home .home-workshop-head .h2{line-height:1.08;padding-bottom:.10em;overflow:visible}
