/* ============================================================
   VELLINORE — Homepage chapters (magazine index · Stück der Saison ·
   seasonal cover · film-strip lookbook · macro material)
   Toggles via body[data-*]; defaults set in Tweaks.
   ============================================================ */

/* ---- magazine layout switch: show only the active variant ---- */
.magindex, .magindex-row, .magtiles, .maggallery, .magstack, .magcover, .magmasonry, .magspread{ display:none; }

/* ---- top-of-page leftovers: toggle (Essentials triptych off by default) ---- */
body[data-essentials="off"] .home-essentials{ display:none; }
body[data-editorialsplit="off"] .home-editorialsplit{ display:none; }
body[data-magstyle="index"] .magindex,
body[data-magstyle="editorial"] .magindex{ display:grid; }
body[data-magstyle="index"] .magindex-row,
body[data-magstyle="editorial"] .magindex-row{ display:grid; }
body[data-magstyle="tiles"] .magtiles{ display:block; }
body[data-magstyle="gallery"] .maggallery{ display:grid; }
body[data-magstyle="stack"] .magstack{ display:flex; }
body[data-magstyle="cover"] .magcover{ display:grid; }
body[data-magstyle="masonry"] .magmasonry{ display:block; }
body[data-magstyle="spread"] .magspread{ display:grid; }

/* magazine header: hidden by default so the magazine leads directly */
[data-mag-header]{ display:none !important; }
body[data-magheader="on"] [data-mag-header]{ display:flex !important; }

/* ---- VARIANT: editorial (bigger, more dramatic asymmetry on the index) ---- */
body[data-magstyle="editorial"] .magindex{ grid-template-columns:1.7fr 1fr; gap:clamp(36px,5vw,90px); }
body[data-magstyle="editorial"] .mi-feature{ aspect-ratio:3/4; }
body[data-magstyle="editorial"] .mi-coverline .cl{ font-size:clamp(72px,11vw,180px); }
body[data-magstyle="editorial"] .mi-list .nm{ font-size:clamp(24px,2.6vw,40px); }
body[data-magstyle="editorial"] .magindex-row{ grid-template-columns:1.3fr .7fr; }
body[data-magstyle="editorial"] .magindex-row .mir-tile.a{ aspect-ratio:16/9; margin-top:clamp(30px,6vw,90px); }
body[data-magstyle="editorial"] .magindex-row .mir-tile.b{ aspect-ratio:3/4; }

/* ---- VARIANT: gallery (even 6-up, numbered captions) ---- */
.maggallery{ grid-template-columns:repeat(3,1fr); gap:clamp(14px,1.8vw,28px); }
.maggallery .mg-tile{ position:relative; display:block; aspect-ratio:4/5; overflow:hidden; background:var(--cream-3); }
.maggallery .mg-tile img{ width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease); }
.maggallery .mg-tile:hover img{ transform:scale(1.05); }
.maggallery .mg-tile::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 55%,rgba(34,28,18,.5)); }
.maggallery .cap{ position:absolute; left:0; bottom:0; z-index:2; padding:20px 22px; color:#F6EFE0; display:flex; align-items:baseline; gap:11px; }
.maggallery .cap .ix{ font-family:var(--serif); font-style:italic; font-size:17px; color:var(--champagne); }
.maggallery .cap .t{ font-family:var(--serif); font-weight:500; font-size:clamp(18px,1.6vw,24px); }
@media (max-width:820px){ .maggallery{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .maggallery{ grid-template-columns:1fr; } }

/* ---- VARIANT: stack (full-width cinematic bands) ---- */
.magstack{ flex-direction:column; gap:clamp(14px,1.6vw,24px); }
.magstack .mk-band{ position:relative; display:block; height:clamp(220px,30vw,360px); overflow:hidden; background:var(--cream-3); }
.magstack .mk-band img{ width:100%; height:100%; object-fit:cover; transition:transform 1.3s var(--ease); }
.magstack .mk-band:hover img{ transform:scale(1.05); }
.magstack .mk-band::after{ content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(34,28,18,.5),rgba(34,28,18,0) 60%); }
.magstack .mk-tx{ position:absolute; left:clamp(24px,4vw,60px); top:50%; transform:translateY(-50%); z-index:2; color:#F6EFE0; display:flex; flex-direction:column; }
.magstack .mk-tx .ix{ font-family:var(--serif); font-style:italic; font-size:clamp(22px,2.4vw,34px); color:var(--champagne); }
.magstack .mk-tx .t{ font-family:var(--serif); font-weight:500; font-size:clamp(28px,4vw,58px); line-height:1; margin:4px 0 6px; }
.magstack .mk-tx .e{ font-family:var(--sans); font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:rgba(246,239,224,.8); }

/* ---- Lookbook named editions index (data-lb-stories) ---- */
body[data-lb-stories="off"] .lb-editions{ display:none; }
.lb-editions{ padding:clamp(64px,8vw,110px) 0; border-bottom:1px solid var(--line); background:var(--cream); }
.lb-editions .le-head{ text-align:center; margin-bottom:clamp(36px,4vw,60px); }
.lb-editions .le-head .e{ font-family:var(--sans); font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--gold-deep); }
.lb-editions .le-head h2{ font-family:var(--serif); font-weight:500; font-size:clamp(30px,3.6vw,52px); margin-top:12px; }
.le-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(18px,2.4vw,34px); }
.le-card{ position:relative; display:block; aspect-ratio:3/4; overflow:hidden; background:var(--cream-3); text-decoration:none; }
.le-card img{ width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease); }
.le-card:hover img{ transform:scale(1.05); }
.le-card::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 45%,rgba(34,28,18,.62)); }
.le-card .le-tx{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:26px 26px 28px; color:#F6EFE0; }
.le-card .le-tx .ix{ font-family:var(--serif); font-style:italic; font-size:15px; color:var(--champagne); }
.le-card .le-tx h3{ font-family:var(--serif); font-weight:500; font-size:clamp(24px,2.2vw,34px); line-height:1.04; margin:6px 0 6px; }
.le-card .le-tx p{ font-family:var(--sans); font-size:12.5px; letter-spacing:.04em; color:rgba(246,239,224,.84); margin:0; }
@media (max-width:820px){ .le-grid{ grid-template-columns:1fr; max-width:460px; margin:0 auto; } }

/* ---- VARIANT: cover (fashion-magazine cover) ---- */
.magcover{ grid-template-columns:1.5fr 1fr; gap:clamp(28px,4vw,72px); align-items:stretch; }
.magcover .mc-feature{ position:relative; display:block; aspect-ratio:4/5; overflow:hidden; background:var(--cream-3); }
.magcover .mc-feature img{ width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--ease); }
.magcover .mc-feature:hover img{ transform:scale(1.04); }
.magcover .mc-feature::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,.28) 0%,rgba(34,28,18,0) 26%,rgba(34,28,18,0) 60%,rgba(34,28,18,.46) 100%); }
.magcover .mc-masthead{ position:absolute; top:clamp(18px,2.4vw,34px); left:0; right:0; z-index:2; text-align:center;
  font-family:var(--serif); font-weight:500; font-size:clamp(40px,6vw,104px); line-height:.9; letter-spacing:.06em; color:#F6EFE0; }
.magcover .mc-issue{ position:absolute; top:calc(clamp(18px,2.4vw,34px) + clamp(46px,7vw,116px)); left:0; right:0; z-index:2; text-align:center;
  font-family:var(--sans); font-size:11px; letter-spacing:.34em; text-transform:uppercase; color:rgba(246,239,224,.82); }
.magcover .mc-cl{ position:absolute; z-index:2; display:flex; flex-direction:column; gap:3px; max-width:50%; }
.magcover .mc-cl .e{ font-family:var(--sans); font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--champagne); }
.magcover .mc-cl .t{ font-family:var(--serif); font-style:italic; font-size:clamp(17px,1.7vw,25px); line-height:1.1; color:#F6EFE0; }
.magcover .mc-cl-1{ left:clamp(18px,2.6vw,34px); top:38%; text-align:left; }
.magcover .mc-cl-2{ right:clamp(18px,2.6vw,34px); top:52%; text-align:right; align-items:flex-end; }
.magcover .mc-cl-3{ left:clamp(18px,2.6vw,34px); bottom:clamp(46px,7vw,92px); text-align:left; }
.magcover .mc-foot{ position:absolute; left:0; right:0; bottom:clamp(18px,2.4vw,30px); z-index:2; text-align:center;
  font-family:var(--sans); font-size:10.5px; letter-spacing:.26em; text-transform:uppercase; color:rgba(246,239,224,.78); }
.magcover .mc-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; justify-content:center; border-top:1px solid var(--line); }
.magcover .mc-list li{ border-bottom:1px solid var(--line); }
.magcover .mc-list a{ display:flex; align-items:baseline; gap:16px; padding:clamp(14px,2vw,26px) 4px; text-decoration:none; transition:padding-left .3s var(--ease); }
.magcover .mc-list a:hover{ padding-left:14px; }
.magcover .mc-list .ix{ font-family:var(--serif); font-style:italic; font-size:15px; color:var(--gold-deep); }
.magcover .mc-list .nm{ font-family:var(--serif); font-weight:500; font-size:clamp(20px,2vw,32px); color:var(--ink); }
@media (max-width:820px){ .magcover{ grid-template-columns:1fr; } }

/* ---- VARIANT: masonry (varied-height columns) ---- */
.magmasonry{ column-count:3; column-gap:clamp(14px,1.8vw,28px); }
.magmasonry .mm-card{ position:relative; display:block; break-inside:avoid; margin-bottom:clamp(14px,1.8vw,28px); overflow:hidden; background:var(--cream-3); }
.magmasonry .mm-card img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform 1.1s var(--ease); }
.magmasonry .mm-card:hover img{ transform:scale(1.05); }
.magmasonry .mm-card{ aspect-ratio:4/5; }
.magmasonry .mm-card.tall{ aspect-ratio:3/5; }
.magmasonry .mm-card.short{ aspect-ratio:1/1; }
.magmasonry .mm-card::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 55%,rgba(34,28,18,.5)); }
.magmasonry .cap{ position:absolute; left:0; bottom:0; z-index:2; padding:18px 20px; color:#F6EFE0; display:flex; align-items:baseline; gap:10px; }
.magmasonry .cap .ix{ font-family:var(--serif); font-style:italic; font-size:16px; color:var(--champagne); }
.magmasonry .cap .t{ font-family:var(--serif); font-weight:500; font-size:clamp(17px,1.5vw,23px); }
@media (max-width:820px){ .magmasonry{ column-count:2; } }
@media (max-width:520px){ .magmasonry{ column-count:1; } }

/* ---- VARIANT: spread (open-magazine two-page) ---- */
.magspread{ grid-template-columns:1fr 1.1fr; gap:0; border:1px solid var(--line); background:var(--cream); }
.magspread .msp-page{ position:relative; overflow:hidden; }
.magspread .msp-left{ padding:clamp(36px,4.5vw,72px); display:flex; flex-direction:column; border-right:1px solid var(--line); }
.magspread .msp-folio{ font-family:var(--serif); font-style:italic; font-size:14px; color:var(--gold-deep); margin-bottom:auto; letter-spacing:.1em; }
.magspread .msp-kicker{ font-family:var(--sans); font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:var(--gold-deep); margin:26px 0 14px; }
.magspread .msp-title{ font-family:var(--serif); font-weight:500; font-size:clamp(34px,4vw,62px); line-height:1.02; color:var(--ink); margin:0 0 18px; }
.magspread .msp-lede{ font-family:var(--sans); font-size:15px; line-height:1.7; color:var(--ink-soft); max-width:40ch; margin:0 0 26px; }
.magspread .msp-index{ list-style:none; margin:0; padding:0; border-top:1px solid var(--line); }
.magspread .msp-index li{ border-bottom:1px solid var(--line); }
.magspread .msp-index a{ display:flex; align-items:baseline; gap:14px; padding:13px 2px; text-decoration:none; transition:padding-left .3s var(--ease); }
.magspread .msp-index a:hover{ padding-left:12px; }
.magspread .msp-index .ix{ font-family:var(--serif); font-style:italic; font-size:13px; color:var(--gold-deep); }
.magspread .msp-index .nm{ font-family:var(--serif); font-weight:500; font-size:clamp(18px,1.7vw,26px); color:var(--ink); }
.magspread .msp-right{ display:block; min-height:clamp(420px,52vw,640px); }
.magspread .msp-right img{ width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--ease); }
.magspread .msp-right:hover img{ transform:scale(1.04); }
.magspread .msp-caption{ position:absolute; left:clamp(22px,2.4vw,34px); bottom:clamp(22px,2.4vw,34px); z-index:2; display:flex; flex-direction:column; gap:4px; }
.magspread .msp-caption .e{ font-family:var(--sans); font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--champagne); }
.magspread .msp-caption .t{ font-family:var(--serif); font-weight:500; font-size:clamp(22px,2.2vw,34px); color:#F6EFE0; }
.magspread .msp-right::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 58%,rgba(34,28,18,.5)); }
@media (max-width:820px){ .magspread{ grid-template-columns:1fr; } .magspread .msp-left{ border-right:0; border-bottom:1px solid var(--line); } }

/* ---- Magazine spacing (data-magspacing) — applies to EVERY variant ---- */
/* ENG */
body[data-magspacing="eng"] .magcover,
body[data-magspacing="eng"] .magindex{ gap:clamp(20px,2.4vw,40px); }
body[data-magspacing="eng"] .maggallery,
body[data-magspacing="eng"] .magmasonry{ column-gap:clamp(10px,1.2vw,16px); gap:clamp(10px,1.2vw,16px); }
body[data-magspacing="eng"] .magmasonry .mm-card{ margin-bottom:clamp(10px,1.2vw,16px); }
body[data-magspacing="eng"] .magstack{ gap:clamp(9px,1vw,14px); }
body[data-magspacing="eng"] .magtiles .mag,
body[data-magspacing="eng"] .magtiles .collrow{ gap:clamp(10px,1.2vw,16px); }
/* GROSSZÜGIG */
body[data-magspacing="grosszuegig"] .magcover,
body[data-magspacing="grosszuegig"] .magindex{ gap:clamp(40px,5vw,88px); }
body[data-magspacing="grosszuegig"] .maggallery,
body[data-magspacing="grosszuegig"] .magmasonry{ column-gap:clamp(26px,3.4vw,52px); gap:clamp(26px,3.4vw,52px); }
body[data-magspacing="grosszuegig"] .magmasonry .mm-card{ margin-bottom:clamp(26px,3.4vw,52px); }
body[data-magspacing="grosszuegig"] .magstack{ gap:clamp(26px,3vw,44px); }
body[data-magspacing="grosszuegig"] .magtiles .mag,
body[data-magspacing="grosszuegig"] .magtiles .collrow{ gap:clamp(24px,3vw,44px); }
body[data-magspacing="grosszuegig"] .magtiles .collrow{ margin-top:clamp(24px,3vw,44px); }

/* ---- Saison-Cover: always self-contained, never bleeds into hero ---- */
.saisoncover{ position:relative; overflow:hidden; }
.saisoncover .sc-bg{ display:none; }
.saisoncover .sc-numeral{ display:none; }
.saisoncover .sc-cta{ display:inline-block; margin-top:26px; }

/* statement (default): quiet centered type on cream */
body[data-introstyle="statement"] .saisoncover{ text-align:center; }

/* left: editorial left-aligned */
body[data-introstyle="left"] .saisoncover{ text-align:left; }
body[data-introstyle="left"] .saisoncover .sc-sub{ margin:0; }

/* numeral: giant season year behind the title */
body[data-introstyle="numeral"] .saisoncover{ text-align:center; }
body[data-introstyle="numeral"] .saisoncover .sc-numeral{ display:block; font-family:var(--serif); font-weight:500;
  font-size:clamp(140px,26vw,400px); line-height:.8; color:var(--cream-2); letter-spacing:.02em; margin-bottom:-.36em; user-select:none; }
body[data-introstyle="numeral"] .saisoncover .sc-title{ position:relative; }

/* minimal: tiny kicker + restrained title, generous air */
body[data-introstyle="minimal"] .saisoncover{ text-align:center; padding:clamp(110px,15vw,220px) 0; }
body[data-introstyle="minimal"] .saisoncover .sc-title{ font-size:clamp(34px,5vw,68px); }
body[data-introstyle="minimal"] .saisoncover .sc-sub{ display:none; }

/* overimage: full-bleed image — add a top border so it reads as a new section */
body[data-introstyle="overimage"] .saisoncover{ min-height:clamp(440px,72vh,760px); display:flex; align-items:center; text-align:center; padding:0; overflow:hidden; border-top:1px solid rgba(70,62,49,.15); }
body[data-introstyle="overimage"] .saisoncover .sc-bg{ display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
body[data-introstyle="overimage"] .saisoncover::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,.32),rgba(34,28,18,.52)); z-index:1; }
body[data-introstyle="overimage"] .saisoncover .wrap{ position:relative; z-index:2; }
body[data-introstyle="overimage"] .saisoncover .sc-kicker{ color:var(--champagne); }
body[data-introstyle="overimage"] .saisoncover .sc-title{ color:#F6EFE0; }
body[data-introstyle="overimage"] .saisoncover .sc-sub{ color:rgba(246,239,224,.86); margin-left:auto; margin-right:auto; }


/* ============================================================
   MAGAZINE INDEX — asymmetric, numbered, cover-line type
   ============================================================ */
.magindex{ grid-template-columns:1.45fr 1fr; gap:clamp(28px,4vw,72px); align-items:end; }

/* ---- Magazine spacing tweak (data-magspacing) ----
   Controls the gaps between the magazine pictures + the rhythm
   between the top index block and the bottom tile row. ---- */
/* ENG — tighter, denser */
body[data-magspacing="eng"] .magindex{ gap:clamp(20px,2.4vw,40px); }
body[data-magspacing="eng"] .magindex-row{ gap:clamp(14px,1.6vw,24px); margin-top:clamp(16px,2vw,32px); }
body[data-magspacing="eng"] .magindex-row .mir-tile.a{ margin-top:clamp(14px,2.4vw,40px); }
body[data-magspacing="eng"] .magindex-row .mir-tile.b{ margin-bottom:clamp(14px,2.4vw,40px); }
/* GROSSZÜGIG — generous, editorial whitespace + asymmetric bottom tiles */
body[data-magspacing="grosszuegig"] .magindex{ gap:clamp(40px,5vw,88px); }
body[data-magspacing="grosszuegig"] .magindex-row{
  grid-template-columns:1.25fr .75fr;
  gap:clamp(32px,4vw,56px);
  margin-top:clamp(56px,7vw,104px);
}
body[data-magspacing="grosszuegig"] .magindex-row .mir-tile .tx{ padding:32px 34px; }
body[data-magspacing="grosszuegig"] .mi-coverline{ bottom:26px; }

.magindex .mi-feature{ position:relative; display:block; aspect-ratio:4/5; overflow:hidden; background:var(--cream-3); }
.magindex .mi-feature img{ width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--ease); }
.magindex .mi-feature:hover img{ transform:scale(1.04); }
.magindex .mi-feature::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 45%,rgba(34,28,18,.46) 100%); }
/* cover-line: oversized serif set into the image, bleeding past the edge */
.mi-coverline{ position:absolute; left:-2px; bottom:18px; z-index:2; display:flex; align-items:flex-end; gap:14px; color:#F6EFE0; }
.mi-coverline .ix{ font-family:var(--sans); font-size:13px; letter-spacing:.16em; padding-bottom:14px; color:var(--champagne); }
.mi-coverline .cl{ font-family:var(--serif); font-weight:500; font-size:clamp(64px,9vw,140px); line-height:.82; letter-spacing:.01em; }
.mi-feature-meta{ position:absolute; right:22px; top:22px; z-index:2; text-align:right; color:#F6EFE0; }
.mi-feature-meta .e{ display:block; font-family:var(--sans); font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--champagne); }
.mi-feature-meta .t{ display:block; font-family:var(--serif); font-size:20px; margin-top:3px; }

.mi-list{ list-style:none; margin:0; padding:0; }
.mi-list li{ border-top:1px solid var(--line); }
.mi-list li:last-child{ border-bottom:1px solid var(--line); }
.mi-list a{ display:grid; grid-template-columns:auto 1fr auto; align-items:baseline; gap:18px; padding:clamp(16px,1.8vw,26px) 4px; text-decoration:none; transition:padding-left .4s var(--ease); }
.mi-list a:hover{ padding-left:14px; }
.mi-list .ix{ font-family:var(--serif); font-style:italic; font-size:clamp(20px,1.8vw,26px); color:var(--gold-deep); line-height:1; }
.mi-list .nm{ font-family:var(--serif); font-weight:500; font-size:clamp(22px,2.2vw,32px); color:var(--ink); line-height:1; }
.mi-list .ar{ font-family:var(--sans); font-size:15px; color:var(--ink-faint); opacity:0; transform:translateX(-6px); transition:.4s var(--ease); }
.mi-list a:hover .ar{ opacity:1; transform:none; color:var(--gold-deep); }

.magindex-row{ grid-template-columns:1fr 1fr; gap:clamp(20px,2.4vw,42px); margin-top:clamp(20px,2.4vw,42px); }
.magindex-row .mir-tile{ position:relative; display:block; overflow:hidden; aspect-ratio:16/11; background:var(--cream-3); }
.magindex-row .mir-tile.a{ margin-top:clamp(20px,4vw,64px); }   /* asymmetric offset */
.magindex-row .mir-tile.b{ margin-bottom:clamp(20px,4vw,64px); }
.magindex-row .mir-tile img{ width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--ease); }
.magindex-row .mir-tile:hover img{ transform:scale(1.045); }
.magindex-row .mir-tile::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 50%,rgba(34,28,18,.5) 100%); }
.magindex-row .mir-tile .tx{ position:absolute; left:0; bottom:0; z-index:2; padding:24px 26px; color:#F6EFE0; }
.magindex-row .mir-tile .e{ font-family:var(--sans); font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--champagne); }
.magindex-row .mir-tile .t{ display:block; font-family:var(--serif); font-weight:500; font-size:clamp(22px,2vw,30px); margin-top:5px; }
@media (max-width:820px){
  .magindex{ grid-template-columns:1fr; gap:30px; }
  .mi-coverline .cl{ font-size:clamp(56px,18vw,96px); }
  .magindex-row{ grid-template-columns:1fr; }
  .magindex-row .mir-tile.a,.magindex-row .mir-tile.b{ margin:0; }
}

/* ============================================================
   SAISON-COVER — chapter opener (Tweak)
   ============================================================ */
body[data-saisoncover="off"] .saisoncover{ display:none; }
.saisoncover{ text-align:center; padding:clamp(80px,11vw,170px) 0 clamp(40px,5vw,70px); }
.saisoncover .sc-kicker{ font-family:var(--sans); font-size:12px; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-deep); }
.saisoncover .sc-title{ font-family:var(--serif); font-weight:500; font-size:clamp(48px,8vw,116px); line-height:.96; letter-spacing:-.01em; margin:18px 0 18px; }
.saisoncover .sc-sub{ font-family:var(--sans); font-weight:300; font-size:clamp(15px,1.4vw,18px); line-height:1.65; color:var(--ink-soft); max-width:46ch; margin:0 auto; }

/* ============================================================
   DAS STÜCK DER SAISON — single-product editorial feature
   ============================================================ */
body[data-saisonstueck="off"] .saisonstueck{ display:none; }
.saisonstueck{ background:var(--espresso); color:var(--cream); }
.saisonstueck .wrap{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,5vw,90px); align-items:center; padding:clamp(60px,7vw,120px) 56px; }
.saisonstueck .ss-media{ display:block; aspect-ratio:4/5; overflow:hidden; background:#2A251C; position:relative; }
.saisonstueck .ss-media img{ width:100%; height:100%; object-fit:cover; transition:transform 1.3s var(--ease); }
.saisonstueck .ss-media:hover img{ transform:scale(1.04); }
.saisonstueck .ss-kicker{ font-family:var(--sans); font-size:12px; letter-spacing:.26em; text-transform:uppercase; color:var(--champagne); }
.saisonstueck .ss-name{ font-family:var(--serif); font-weight:500; font-size:clamp(38px,4.6vw,66px); line-height:.98; color:#F4ECDA; margin:16px 0 20px; }
.saisonstueck .ss-note{ font-family:var(--sans); font-weight:300; font-size:16px; line-height:1.72; color:#CDC2AC; max-width:42ch; }
.saisonstueck .ss-meta{ display:flex; align-items:baseline; gap:10px; margin:24px 0 26px; }
.saisonstueck .ss-price{ font-family:var(--serif); font-size:26px; color:#F4ECDA; }
.saisonstueck .ss-tax{ font-family:var(--sans); font-size:11px; letter-spacing:.06em; color:#9C8F77; }
.saisonstueck .ss-cta{ align-self:flex-start; }
@media (max-width:820px){ .saisonstueck .wrap{ grid-template-columns:1fr; gap:30px; padding:54px 22px; } .saisonstueck .ss-media{ order:-1; } }

/* ============================================================
   MACRO MATERIAL MOMENT (Tweak)
   ============================================================ */
body[data-macro="off"] .macro{ display:none; }
.macro{ position:relative; height:clamp(360px,52vw,640px); overflow:hidden; background:var(--cream-3); }
.macro .macro-img{ position:absolute; inset:0; }
.macro .macro-img img{ width:100%; height:100%; object-fit:cover; transform:scale(1.12); filter:saturate(.96); }
.macro .macro-cap{ position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(30px,5vw,64px); color:#F6EFE0;
  background:linear-gradient(180deg,rgba(34,28,18,0),rgba(34,28,18,.5)); }
.macro .macro-cap .e{ font-family:var(--sans); font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--champagne); }
.macro .macro-cap p{ font-family:var(--serif); font-style:italic; font-weight:500; font-size:clamp(20px,2.4vw,34px); line-height:1.25; max-width:24ch; margin:10px 0 0; }

/* ============================================================
   FILM-STRIP LOOKBOOK — horizontal drag (Tweak)
   ============================================================ */
body[data-filmstrip="off"] .filmstrip{ display:none; }
.filmstrip{ padding:clamp(60px,7vw,108px) 0; overflow:hidden; }
.filmstrip .fs-head{ display:flex; align-items:baseline; gap:18px; margin-bottom:30px; }
.filmstrip .fs-head h2{ font-family:var(--serif); font-weight:500; font-size:clamp(28px,3.2vw,46px); line-height:1; }
.filmstrip .fs-head .fs-hint{ margin-left:auto; font-family:var(--sans); font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-faint); }
.fs-track{ display:flex; gap:clamp(16px,2vw,28px); padding:0 clamp(20px,4vw,56px); overflow-x:auto; scroll-snap-type:x mandatory;
  cursor:grab; scrollbar-width:none; -ms-overflow-style:none; }
.fs-track::-webkit-scrollbar{ display:none; }
.fs-track.dragging{ cursor:grabbing; scroll-snap-type:none; }
.fs-slide{ position:relative; flex:0 0 auto; width:min(74vw,440px); aspect-ratio:3/4; overflow:hidden; background:var(--cream-3); scroll-snap-align:center; }
.fs-slide img{ width:100%; height:100%; object-fit:cover; pointer-events:none; transition:transform 1.2s var(--ease); }
.fs-slide:hover img{ transform:scale(1.04); }
.fs-slide::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(34,28,18,0) 60%,rgba(34,28,18,.5)); }
.fs-slide .fs-cap{ position:absolute; left:0; bottom:0; z-index:2; padding:20px 22px; color:#F6EFE0; font-family:var(--sans); font-size:12px; letter-spacing:.16em; text-transform:uppercase; }
@media (max-width:680px){ .filmstrip .fs-head{ padding:0 22px; } }
