/* ZOOOST – Stil nach Claude-Design "ZUOST Website" (1a + 2a–2d). Farben kommen als CSS-Variablen aus
   config/partners/zooost.json (siehe Partner::cssVariablen()); hier stehen nur Rückfallwerte. */

@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/schriften/anton-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Anton";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/schriften/anton-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/schriften/barlow-400-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/schriften/barlow-400-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/schriften/barlow-500-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/schriften/barlow-500-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/schriften/barlow-600-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/schriften/barlow-600-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/schriften/barlow-700-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/schriften/barlow-700-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --gelb:#F4EA17;--schwarz:#050407;--offwhite:#FCFBF5;--linie:#2A2925;--text-hell:#D9D6CB;--text-dunkel:#3B3A33;
  --schlamm:#6B4A2B;--staub:#A67C52;--flaeche-dunkel:#1A1A16;
  --schrift-kopf:"Anton",Impact,sans-serif;--schrift-text:"Barlow",system-ui,sans-serif;
  --rand:32px;--rand-schmal:18px;
  --streifen:repeating-linear-gradient(-45deg,var(--gelb) 0 14px,var(--schwarz) 14px 28px);
  --streifen-klein:repeating-linear-gradient(-45deg,var(--gelb) 0 12px,var(--schwarz) 12px 24px);
  --streifen-gross:repeating-linear-gradient(-45deg,var(--gelb) 0 16px,var(--schwarz) 16px 32px);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
body{margin:0;background:var(--schwarz);color:var(--offwhite);font:400 16px/1.5 var(--schrift-text);-webkit-font-smoothing:antialiased}
body.hell{background:var(--offwhite);color:var(--schwarz)}
a{color:inherit}
img,svg,video{max-width:100%;display:block}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4,p{margin:0}
.anton,.h1,.h2,.h3{font-family:var(--schrift-kopf);font-weight:400;text-transform:uppercase}
.gelb{color:var(--gelb)}
.versteckt{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--gelb);outline-offset:3px}
body.hell :focus-visible{outline-color:var(--schwarz)}
.sprung{position:absolute;left:-999px;top:8px;background:var(--gelb);color:var(--schwarz);padding:8px 12px;z-index:100}
.sprung:focus{left:8px}

/* Breite ---------------------------------------------------------------- */
.wrap{max-width:1200px;margin:0 auto}
.rand{padding-left:var(--rand);padding-right:var(--rand)}
.mrand{margin-left:var(--rand);margin-right:var(--rand)}
@media (max-width:767px){:root{--rand:var(--rand-schmal)}}

/* Kopfzeile ------------------------------------------------------------- */
.kopf{position:sticky;top:0;z-index:50;background:var(--schwarz);color:var(--offwhite);border-bottom:1px solid var(--linie)}
body.hell .kopf{border-bottom-color:var(--schwarz)}
.kopf__innen{display:flex;align-items:center;justify-content:space-between;padding:14px var(--rand);gap:16px}
.kopf__logo img{height:40px;width:auto}
.kopf__nav{display:flex;gap:28px;font:600 13px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase}
.kopf__nav a{text-decoration:none;padding-bottom:4px;border-bottom:2px solid transparent}
.kopf__nav a:hover{color:var(--gelb)}
.kopf__nav a[aria-current=page]{color:var(--gelb);border-bottom-color:var(--gelb)}
.kopf__rechts{display:flex;align-items:center;gap:10px}
.knopf-shop{background:var(--gelb);color:var(--schwarz);text-decoration:none;font:600 13px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;padding:12px 20px;display:inline-flex;align-items:center;gap:8px}
.knopf-shop:hover{background:var(--offwhite)}
.knopf-shop__zahl{font:400 13px var(--schrift-kopf);background:var(--schwarz);color:var(--gelb);min-width:20px;height:20px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center}
.burger{display:none;width:28px;flex-direction:column;gap:5px;padding:6px 0}
.burger i{display:block;height:3px;background:var(--offwhite)}
.burger i:last-child{width:60%}
.menue-mobil{display:none}
@media (max-width:767px){
  .kopf__innen{padding:12px var(--rand)}
  .kopf__logo img{height:30px}
  .kopf__nav{display:none}
  .burger{display:flex}
  .knopf-shop{font-size:11px;letter-spacing:.16em;padding:9px 12px}
  .kopf.offen .menue-mobil{display:block;border-top:1px solid var(--linie);padding:8px var(--rand) 20px}
  .menue-mobil a{display:block;padding:14px 0;border-bottom:1px solid var(--linie);text-decoration:none;font:400 28px var(--schrift-kopf);text-transform:uppercase}
  .menue-mobil a[aria-current=page]{color:var(--gelb)}
  .menue-mobil a:last-child{border-bottom:0}
}

/* Typo-Bausteine -------------------------------------------------------- */
.kennziffer{font:600 12px var(--schrift-text);letter-spacing:.24em;text-transform:uppercase;color:var(--staub)}
body.hell .kennziffer{color:var(--schlamm)}
.kennziffer--hell{color:var(--text-hell)}
.kennziffer--schwarz{color:var(--schwarz)}
.h-riesig{font:400 150px/.85 var(--schrift-kopf);text-transform:uppercase;margin-top:16px;letter-spacing:.01em}
.h-gross{font:400 64px/.9 var(--schrift-kopf);text-transform:uppercase}
.h-mittel{font:400 44px/.95 var(--schrift-kopf);text-transform:uppercase}
.h-klein{font:400 32px/1 var(--schrift-kopf);text-transform:uppercase}
.lead{font:400 20px/1.45 var(--schrift-text);color:var(--text-hell)}
body.hell .lead{color:var(--text-dunkel)}
.text{font:400 16px/1.55 var(--schrift-text);color:var(--text-hell)}
body.hell .text{color:var(--text-dunkel)}
.etikett{font:600 13px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--text-hell)}
@media (max-width:767px){
  .kennziffer{font-size:11px;letter-spacing:.22em}
  .h-riesig{font-size:clamp(58px,19.5vw,92px);margin-top:10px}
  .h-gross{font-size:38px}.h-mittel{font-size:32px}.h-klein{font-size:26px}
  .lead{font-size:16px}.text{font-size:15px;line-height:1.5}
}

/* Wiederkehrende Bausteine --------------------------------------------- */
.streifen{height:14px;background:var(--streifen)}
@media (max-width:767px){.streifen{height:12px;background:var(--streifen-klein)}}
.plakette{display:inline-block;background:var(--offwhite);color:var(--schwarz);font:400 28px/1 var(--schrift-kopf);padding:4px 9px 1px;border-radius:5px;border:3px solid var(--schwarz)}
.plakette--klein{font-size:22px;border:0;padding:4px 9px 2px}
.plakette--gross{font-size:64px;padding:6px 18px 2px;border-radius:10px;border-width:4px;box-shadow:0 0 0 4px var(--offwhite)}
.plakette--riesig{font-size:72px;padding:6px 18px 2px;border-radius:10px;border-width:4px}
.ecke{position:absolute;top:10px;right:10px;pointer-events:none}
.ecke--links{right:auto;left:10px}
.knopf{display:inline-flex;align-items:center;gap:14px;background:var(--gelb);color:var(--schwarz);text-decoration:none;font:400 22px var(--schrift-kopf);text-transform:uppercase;letter-spacing:.04em;padding:16px 28px;border:0;cursor:pointer}
.knopf:hover{background:var(--offwhite)}
.knopf--schwarz{background:var(--schwarz);color:var(--gelb)}
.knopf--schwarz:hover{background:var(--schlamm);color:var(--offwhite)}
.knopf--block{display:flex;justify-content:center;width:100%}
.knopf[disabled],.knopf[aria-disabled=true]{opacity:.5;cursor:not-allowed}
.link-pfeil{font:600 13px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--gelb);text-decoration:none}
.link-pfeil:hover{text-decoration:underline}
body.hell .link-pfeil{color:var(--schwarz)}
.schild{display:inline-block;background:var(--offwhite);color:var(--schwarz);font:400 44px/1 var(--schrift-kopf);padding:6px 14px 2px;border-radius:8px}
.schild--gelb{background:var(--gelb)}
@media (max-width:767px){.knopf{font-size:20px;padding:16px;display:flex;justify-content:center}.schild{font-size:30px;padding:4px 10px 1px;border-radius:6px}.plakette{font-size:24px}.plakette--gross{font-size:40px;padding:4px 12px 1px;border-radius:8px;border-width:3px;box-shadow:0 0 0 3px var(--offwhite)}}

/* Bildplätze (Drop-Zonen aus dem Design) */
.bild-platz{width:100%;height:100%;min-height:120px;border:1px dashed rgba(255,255,255,.28);background:rgba(255,255,255,.03);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:rgba(255,255,255,.45);font:500 12px var(--schrift-text);letter-spacing:.04em;text-align:center;padding:12px}
body.hell .bild-platz,.hell-flaeche .bild-platz,.gehege .bild-platz,.steckbrief__rechts .bild-platz,.kollektion .bild-platz{border-color:rgba(5,4,7,.3);background:rgba(5,4,7,.04);color:rgba(5,4,7,.5)}
.bild-platz svg{opacity:.7}
.bild-rahmen{position:relative;overflow:hidden;background:var(--flaeche-dunkel)}
.bild-rahmen img,.bild-rahmen video,.bild-rahmen picture{width:100%;height:100%;object-fit:cover}
.bild-rahmen picture img{height:100%}

/* Gehegeschild (Fahrerkarte) */
.gehege{border:3px solid var(--gelb);background:var(--offwhite);color:var(--schwarz);display:flex;flex-direction:column;text-decoration:none}
.gehege__kopf{background:var(--schwarz);color:var(--gelb);font:600 11px var(--schrift-text);letter-spacing:.22em;text-transform:uppercase;padding:8px 12px;display:flex;justify-content:space-between;gap:8px}
.gehege__bild{aspect-ratio:4/5;position:relative;overflow:hidden}
.gehege__bild img{width:100%;height:100%;object-fit:cover}
.gehege__text{padding:14px 14px 16px}
.gehege__tier{font:400 34px/.95 var(--schrift-kopf);text-transform:uppercase}
.gehege__name{font:italic 500 13px var(--schrift-text);color:var(--schlamm);margin-top:4px}
.daten{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin-top:12px;padding-top:10px;border-top:2px solid var(--schwarz);font:400 13px/1.3 var(--schrift-text)}
.daten b{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.daten dd,.daten dt{margin:0;min-width:0;overflow-wrap:anywhere}
.daten > div{min-width:0}
.gehege__text,.gehege__koerper{min-width:0}
.daten--drei{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px;font-size:15px;margin-top:22px;padding-top:16px}
.daten--drei b{font-size:11px}
.daten a{color:var(--schwarz)}
.gehege:hover{box-shadow:8px 8px 0 var(--gelb)}

/* Fußzeile ------------------------------------------------------------- */
.fuss{background:var(--schwarz);color:var(--text-hell)}
.fuss__oben{padding:40px var(--rand) 28px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;font:400 14px/1.6 var(--schrift-text);border-top:1px solid var(--linie)}
.fuss__oben img{height:36px;width:auto;margin-bottom:12px}
.fuss__oben p{max-width:300px}
.fuss__spalte{display:flex;flex-direction:column;gap:6px}
.fuss__spalte b{color:var(--offwhite);letter-spacing:.14em;text-transform:uppercase;font-size:12px}
.fuss__spalte a{text-decoration:none}
.fuss__spalte a:hover{color:var(--gelb)}
.fuss__unten{padding:14px var(--rand);border-top:1px solid var(--linie);display:flex;justify-content:space-between;gap:12px;font:600 11px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--staub)}
@media (max-width:767px){
  .fuss__oben{grid-template-columns:1fr 1fr;padding:28px var(--rand) 20px}
  .fuss__oben > div:first-child{grid-column:1/-1}
  .fuss__unten{flex-direction:column;gap:2px;line-height:1.9;padding:20px var(--rand) 28px}
  .fuss__unten span:last-child{color:var(--offwhite);margin-top:8px}
}

/* Meldungen ------------------------------------------------------------ */
.meldung{margin:0 var(--rand);padding:14px 18px;border:3px solid var(--gelb);font:500 15px var(--schrift-text)}
.meldung--fehler{border-color:#e0462f}
.meldung + .meldung{margin-top:8px}

/* ======================================================================= */
/* Startseite (1a Startnummer)                                             */
/* ======================================================================= */
.hero{position:relative;height:640px;overflow:hidden;background:var(--flaeche-dunkel)}
.hero__medium{position:absolute;inset:0}
.hero__medium picture{display:block;width:100%;height:100%}
.hero__medium video,.hero__medium img{width:100%;height:100%;object-fit:cover}
.hero__schleier{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,4,7,.85) 0%,rgba(5,4,7,.3) 60%,transparent);pointer-events:none}
.hero__nummer{position:absolute;top:28px;right:32px;pointer-events:none}
.hero__text{position:absolute;left:var(--rand);bottom:56px;pointer-events:none;max-width:820px}
.hero__text img{height:150px;width:auto;margin-bottom:22px}
.hero__claim{font:400 112px/.9 var(--schrift-kopf);text-transform:uppercase;letter-spacing:.01em}
.hero__sub{margin-top:22px;font:500 18px/1.4 var(--schrift-text);color:var(--text-hell);max-width:460px}
.hero__koord{position:absolute;right:var(--rand);bottom:56px;display:flex;flex-direction:column;gap:8px;font:600 12px var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--text-hell);text-align:right;pointer-events:none}
.hero__streifen{position:absolute;left:0;right:0;bottom:0;height:18px;background:var(--streifen-gross)}
@media (max-width:767px){
  .hero{height:560px}
  .hero__schleier{background:linear-gradient(0deg,rgba(5,4,7,.9) 0%,rgba(5,4,7,.2) 55%,transparent)}
  .hero__nummer{top:16px;right:16px}
  .hero__text{left:var(--rand);right:var(--rand);bottom:34px}
  .hero__text img{height:84px;margin-bottom:14px}
  .hero__claim{font-size:58px}
  .hero__sub{margin-top:12px;font-size:14px}
  .hero__koord{display:none}
  .hero__streifen{height:14px;background:var(--streifen-klein)}
}
.drop{padding:64px var(--rand);display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:end}
.drop__label{display:inline-block;background:var(--gelb);color:var(--schwarz);font:600 12px var(--schrift-text);letter-spacing:.22em;text-transform:uppercase;padding:6px 10px}
.drop__titel{font:400 84px/.9 var(--schrift-kopf);text-transform:uppercase;margin:18px 0 16px}
.drop__text{margin:0 0 28px;font:400 17px/1.5 var(--schrift-text);color:var(--text-hell);max-width:380px}
.drop__raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.drop__karte{position:relative;aspect-ratio:3/4;background:var(--flaeche-dunkel);text-decoration:none;color:inherit;display:block;overflow:hidden}
.drop__karte img{width:100%;height:100%;object-fit:cover}
.drop__karte .bild-platz{position:absolute;inset:0}
.drop__preis{position:absolute;left:0;right:0;bottom:0;background:rgba(5,4,7,.82);padding:10px 12px;font:600 12px var(--schrift-text);letter-spacing:.12em;text-transform:uppercase;display:flex;justify-content:space-between;gap:8px}
@media (max-width:767px){
  .drop{grid-template-columns:1fr;padding:36px var(--rand) 8px;gap:0}
  .drop__label{font-size:11px;letter-spacing:.2em;padding:5px 8px}
  .drop__titel{font-size:50px;margin:12px 0}
  .drop__text{margin:0 0 4px;font-size:15px}
  .drop__raster{display:flex;gap:8px;overflow-x:auto;margin:16px 0;scroll-snap-type:x mandatory;scrollbar-width:none}
  .drop__raster::-webkit-scrollbar{display:none}
  .drop__karte{flex:none;width:200px;scroll-snap-align:start}
  .drop__knopf{margin-top:0}
}
.teaser{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.teaser__spalte{padding:36px var(--rand);border-right:1px solid var(--linie);display:flex;flex-direction:column;gap:18px}
.teaser__spalte:last-child{border-right:0}
.teaser__bild{height:200px}
.teaser__ig{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;height:200px}
.teaser__ig a,.teaser__ig .bild-platz{min-height:0;display:block;overflow:hidden}
.teaser__ig img{width:100%;height:100%;object-fit:cover}
.teaser__rudel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;height:200px}
.teaser__rudel a{position:relative;display:block;min-height:0;overflow:hidden;background:var(--flaeche-dunkel)}
.teaser__rudel img,.teaser__rudel picture,.teaser__rudel .bild-platz{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.teaser__rudel a:hover img,.teaser__rudel a:focus-visible img{transform:scale(1.05)}
.teaser__rudel .plakette--klein{font-size:15px;padding:2px 6px 1px;top:6px;left:6px}
@media (max-width:767px){
  .teaser{grid-template-columns:1fr;margin-top:28px}
  .teaser__spalte{padding:22px var(--rand);border-right:0;border-bottom:1px solid var(--linie);flex-direction:row;justify-content:space-between;align-items:center;gap:12px}
  .teaser__spalte:last-child{border-bottom:0}
  .teaser__bild,.teaser__ig,.teaser__spalte .link-pfeil span{display:none}
  .teaser__spalte:has(.teaser__rudel){flex-wrap:wrap}
  .teaser__rudel{order:3;flex:1 1 100%;height:auto}
  .teaser__rudel a{aspect-ratio:4/5}
  .teaser__spalte .h-mittel{font-size:30px;margin-top:6px}
  .teaser__spalte .link-pfeil{font:400 28px var(--schrift-kopf);color:var(--gelb)}
}

/* ======================================================================= */
/* Kopfblock der Unterseiten                                                */
/* ======================================================================= */
.seitenkopf{padding:72px var(--rand) 56px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}
.seitenkopf--eng{padding-bottom:40px;display:flex;justify-content:space-between;gap:40px}
.seitenkopf--eng .lead{max-width:380px;font-size:18px;margin-bottom:12px}
.seitenkopf--rechts{text-align:right}
@media (max-width:767px){
  .seitenkopf,.seitenkopf--eng{display:block;padding:36px var(--rand) 28px}
  .seitenkopf .lead{margin-top:18px}
  .seitenkopf--eng .lead{margin-top:18px;max-width:none}
  .seitenkopf--rechts{text-align:left;margin-top:20px}
}

/* Story (2a) ------------------------------------------------------------- */
.zooost{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.zooost__spalte{padding:48px var(--rand)}
.zooost__spalte:first-child{border-right:1px solid var(--linie)}
.zooost__spalte .h-mittel{margin:24px 0 16px}
.zooost__bild{height:260px;margin-top:28px}
@media (max-width:767px){
  .zooost{grid-template-columns:1fr;border-bottom:0}
  .zooost__spalte{padding:28px var(--rand);border-right:0!important;border-top:1px solid var(--linie)}
  .zooost__spalte:first-child{border-top:0}
  .zooost__spalte .h-mittel{margin:16px 0 10px}
  .zooost__bild{height:200px;margin-top:18px}
  .zooost__spalte:last-child .zooost__bild{display:none}
}
.haltung{background:var(--gelb);color:var(--schwarz);padding:56px var(--rand);display:grid;grid-template-columns:1fr 2fr;gap:40px}
.haltung__liste{display:flex;flex-direction:column;gap:14px;font:400 40px/1 var(--schrift-kopf);text-transform:uppercase;margin:0;padding:0;list-style:none}
@media (max-width:767px){.haltung{display:block;padding:28px var(--rand)}.haltung .kennziffer{display:none}.haltung__liste{gap:10px;font-size:26px}.haltung__liste li.nur-desktop{display:none}}
.route{padding:56px var(--rand) 0;display:flex;justify-content:space-between;align-items:end;gap:24px}
.route .h-gross{margin-top:12px}
.karte{margin:24px var(--rand) 0;border:3px solid var(--gelb);height:560px;overflow:hidden;position:relative;background:#0b0b09}
.karte svg{display:block;width:100%;height:100%}
.karte .st{cursor:pointer}
.karte .st circle.ring{transition:r .2s}
.karte .st:hover circle.ring,.karte .st.on circle.ring{r:14}
.karte__karte{position:absolute;left:16px;bottom:16px;max-width:320px;background:var(--schwarz);border:3px solid var(--gelb);padding:14px 16px 16px;box-shadow:8px 8px 0 var(--gelb)}
.karte__karte .k{font:400 11px/1 var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--gelb);display:flex;justify-content:space-between;gap:12px}
.karte__karte h3{font:400 30px/1 var(--schrift-kopf);margin:8px 0 6px;text-transform:uppercase;letter-spacing:.01em}
.karte__karte p{margin:0;font-size:14px;line-height:1.4;color:var(--text-hell)}
.karte__wild{position:absolute;right:16px;top:16px;background:var(--schwarz);border:2px solid var(--gelb);padding:8px 10px;font:600 11px/1 var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--gelb)}
.karte__wild b{display:block;font:400 28px/1 var(--schrift-kopf);color:var(--offwhite);margin-top:4px;letter-spacing:.02em}
.karte__stationen{margin:0 var(--rand);padding:0;list-style:none;display:none}
@media (max-width:767px){
  .route{display:block;padding:28px var(--rand) 0}
  .route .h-gross{margin:10px 0 16px}
  .route .etikett{display:none}
  .karte{height:420px;margin-top:0}
  .karte__karte{left:8px;right:8px;bottom:8px;max-width:none}
  .karte__karte h3{font-size:24px}
}
.schluss{padding:72px var(--rand);text-align:center}
.schluss .h-schluss{font:400 96px/.9 var(--schrift-kopf);text-transform:uppercase;max-width:1040px;margin:0 auto}
.schluss .knopf{margin-top:32px}
@media (max-width:767px){.schluss{padding:40px var(--rand);text-align:left}.schluss .h-schluss{font-size:44px}.schluss .knopf{margin-top:24px}}

/* Rudel (2b) -------------------------------------------------------------- */
.rudel{padding:48px var(--rand);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1023px){.rudel{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
  .rudel{grid-template-columns:1fr;padding:24px var(--rand);gap:16px}
  .gehege--liste .gehege__koerper{display:grid;grid-template-columns:120px 1fr}
  .gehege--liste .gehege__bild{aspect-ratio:4/5}
  .gehege--liste .gehege__text{padding:12px}
  .gehege--liste .gehege__tier{font-size:30px}
  .gehege--liste .gehege__name{font-size:12px;margin-top:3px}
  .gehege--liste .daten{gap:6px 10px;margin-top:10px;padding-top:0;border-top:0;font-size:12px}
  .gehege--liste .daten b{font-size:9px}
  .gehege--liste .ecke{display:none}
}
.steckbrief-label{margin:16px var(--rand) 0}
.steckbrief{margin:16px var(--rand) 64px;display:grid;grid-template-columns:5fr 7fr;border:3px solid var(--gelb)}
.steckbrief__bild{position:relative;min-height:620px;background:var(--flaeche-dunkel)}
.steckbrief__bild img,.steckbrief__bild .bild-platz{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.steckbrief__bild .plakette{position:absolute;left:20px;top:20px}
.steckbrief__rechts{background:var(--offwhite);color:var(--schwarz);display:flex;flex-direction:column}
.steckbrief__kopf{background:var(--schwarz);color:var(--gelb);font:600 12px var(--schrift-text);letter-spacing:.24em;text-transform:uppercase;padding:12px 24px;display:flex;justify-content:space-between;gap:12px}
.steckbrief__text{padding:28px 24px 24px;flex:1}
.steckbrief__tier{font:400 84px/.9 var(--schrift-kopf);text-transform:uppercase}
.steckbrief__name{font:italic 500 16px var(--schrift-text);color:var(--schlamm);margin-top:8px}
.steckbrief__text p{margin:18px 0 0;font:400 16px/1.5 var(--schrift-text);max-width:560px}
.kollektion{padding:20px 24px 24px;border-top:3px solid var(--schwarz)}
.kollektion__kopf{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.kollektion__kopf .h-klein{font-size:28px}
.kollektion__kopf a{font:600 12px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--schwarz)}
.kollektion__raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.kollektion__raster a,.kollektion__raster > div{aspect-ratio:3/4;border:2px solid var(--schwarz);display:block;overflow:hidden;position:relative}
.kollektion__raster img{width:100%;height:100%;object-fit:cover}
@media (max-width:767px){
  .steckbrief{display:block;margin:8px var(--rand) 28px}
  .steckbrief__bild{min-height:0;height:260px}
  .steckbrief__bild .plakette{left:12px;top:12px}
  .steckbrief__kopf{font-size:10px;letter-spacing:.22em;padding:8px 12px}
  .steckbrief__text{padding:16px 14px}
  .steckbrief__tier{font-size:48px}
  .steckbrief__text p{margin-top:10px;font-size:14px}
  .steckbrief__text .daten--drei{grid-template-columns:1fr 1fr;font-size:13px;gap:8px 12px;margin-top:14px;padding-top:10px}
  .kollektion{padding:0 14px 16px;border-top:0}
  .kollektion__kopf{display:none}
  .kollektion__raster{display:flex;gap:8px;margin-top:14px}
  .kollektion__raster a,.kollektion__raster > div{flex:1}
  .kollektion__raster a:nth-child(n+4){display:none}
  .kollektion .knopf--schwarz{margin-top:12px;font-size:18px;padding:14px}
}

/* Skills (2c, helle Seite) ------------------------------------------------ */
.filter{padding:0 var(--rand) 32px;display:flex;gap:10px;flex-wrap:wrap;font:600 12px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase}
.filter a{text-decoration:none;border:2px solid var(--schwarz);padding:8px 14px;color:var(--schwarz)}
.filter a[aria-current=true]{background:var(--schwarz);color:var(--gelb);border-color:var(--schwarz);padding:10px 16px}
.filter a.filter--erde{border-color:var(--staub);color:var(--schlamm)}
.filter a.filter--erde[aria-current=true]{background:var(--schlamm);color:var(--offwhite);border-color:var(--schlamm)}
.filter .filter__abstand{margin-left:16px}
body:not(.hell) .filter a{border-color:var(--offwhite);color:var(--offwhite)}
body:not(.hell) .filter a[aria-current=true]{background:var(--gelb);color:var(--schwarz);border-color:var(--gelb)}
@media (max-width:767px){
  .filter{padding:0 var(--rand) 20px;gap:8px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;font-size:11px;letter-spacing:.16em;scrollbar-width:none}
  .filter::-webkit-scrollbar{display:none}
  .filter a{padding:7px 12px}.filter a[aria-current=true]{padding:9px 14px}.filter .filter__abstand{margin-left:8px}
}
.lexikon{padding:40px var(--rand) 64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.skill{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.skill__bild{position:relative;aspect-ratio:4/3;overflow:hidden;background:rgba(5,4,7,.04)}
.skill__bild img{width:100%;height:100%;object-fit:cover}
.skill__bild .bild-platz{position:absolute;inset:0}
.skill__zeile{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.skill__name{font:400 44px/1 var(--schrift-kopf);text-transform:uppercase}
.marke{font:600 10px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;background:var(--gelb);color:var(--schwarz);padding:4px 8px;white-space:nowrap}
.marke--technik{background:var(--schlamm);color:var(--offwhite)}
.marke--linie{background:var(--schwarz);color:var(--gelb)}
.skill__wer{font:600 11px var(--schrift-text);letter-spacing:.16em;text-transform:uppercase;color:var(--schlamm)}
.skill:hover .skill__name{color:var(--schlamm)}
@media (max-width:1023px){.lexikon{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.lexikon{grid-template-columns:1fr;padding:24px var(--rand) 28px;gap:28px}.skill{gap:10px}.skill__name{font-size:40px}.skill__wer{font-size:10px}}
.skill-seite{padding:48px var(--rand) 64px;display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}
.skill-seite__bild{aspect-ratio:4/3;position:relative;overflow:hidden;border:3px solid var(--schwarz)}
.skill-seite__bild img{width:100%;height:100%;object-fit:cover}
.schritte{margin:24px 0 0;padding:0;list-style:none;counter-reset:schritt}
.schritte li{position:relative;padding:14px 0 14px 64px;border-top:2px solid var(--schwarz);font:400 16px/1.5 var(--schrift-text)}
.schritte li::before{counter-increment:schritt;content:counter(schritt,decimal-leading-zero);position:absolute;left:0;top:10px;font:400 32px/1 var(--schrift-kopf);color:var(--schlamm)}
.schwierigkeit{display:inline-flex;gap:4px;vertical-align:middle}
.schwierigkeit i{width:14px;height:14px;background:var(--schwarz);display:block}
.schwierigkeit i.leer{background:transparent;border:2px solid var(--schwarz)}
@media (max-width:767px){.skill-seite{display:block;padding:24px var(--rand) 40px}.skill-seite__bild{margin-bottom:24px}}

/* Community (2d) ------------------------------------------------------------ */
.ig{padding:0 var(--rand);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.ig a,.ig .ig__folgen{aspect-ratio:1;min-width:0;display:block;overflow:hidden;position:relative}
.ig img{width:100%;height:100%;object-fit:cover}
.ig .bild-platz{position:absolute;inset:0;min-height:0}
.ig__folgen{display:flex!important;align-items:center;justify-content:center;background:var(--gelb);color:var(--schwarz);font:400 28px/1 var(--schrift-kopf);text-transform:uppercase;text-align:center;text-decoration:none}
.ig__folgen:hover{background:var(--offwhite)}
.handle{font:400 64px/1 var(--schrift-kopf);text-decoration:none}
.handle + .etikett{margin-top:6px}
@media (max-width:767px){
  .ig{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
  .ig__folgen{font-size:20px}
  .handle{font-size:34px;display:block;margin-top:20px}
  .handle + .etikett{display:none}
}
.events-kopf{margin:64px var(--rand) 0;display:flex;justify-content:space-between;align-items:end;gap:16px}
.events{margin:20px var(--rand) 0;border-top:1px solid var(--linie)}
.event{display:grid;grid-template-columns:120px 1fr 1fr auto;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--linie)}
.datum{background:var(--offwhite);color:var(--schwarz);font:400 40px/1 var(--schrift-kopf);padding:8px 10px 4px;border-radius:8px;text-align:center}
.datum span{display:block;font:600 11px var(--schrift-text);letter-spacing:.2em}
.datum--gelb{background:var(--gelb)}
.event__titel{font:400 32px/1 var(--schrift-kopf);text-transform:uppercase}
.event__text{font:400 14px var(--schrift-text);color:var(--text-hell);margin-top:6px}
.event__art{font:600 12px var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--staub)}
.event .link-pfeil{font-size:12px}
@media (max-width:767px){
  .events-kopf{margin:40px var(--rand) 0;display:block}
  .events-kopf .etikett{display:none}
  .events-kopf .h-gross{font-size:40px}
  .events{margin-top:16px}
  .event{grid-template-columns:64px 1fr;gap:14px;padding:16px 0}
  .datum{font-size:28px;padding:6px 6px 3px;border-radius:6px}
  .datum span{font-size:9px}
  .event__titel{font-size:22px}
  .event__text{font-size:13px;margin-top:4px}
  .event__art,.event .link-pfeil{display:none}
}
.newsletter{margin:64px var(--rand);background:var(--gelb);color:var(--schwarz);padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;position:relative;overflow:hidden}
.newsletter__streifen{position:absolute;left:0;top:0;bottom:0;width:18px;background:var(--streifen)}
.newsletter__links{padding-left:20px}
.newsletter__titel{font:400 72px/.9 var(--schrift-kopf);text-transform:uppercase;margin-top:12px}
.newsletter__links p{margin:16px 0 0;font:400 16px/1.5 var(--schrift-text);max-width:420px}
.newsletter__form{display:flex;flex-direction:column;gap:10px}
.newsletter__zeile{display:flex;border:3px solid var(--schwarz)}
.newsletter__zeile input{flex:1;min-width:0;padding:16px 18px;font:400 16px var(--schrift-text);color:var(--schwarz);background:var(--offwhite);border:0}
.newsletter__zeile input::placeholder{color:var(--schlamm)}
.newsletter__zeile button{background:var(--schwarz);color:var(--gelb);font:400 20px var(--schrift-kopf);text-transform:uppercase;padding:16px 24px;white-space:nowrap}
.newsletter__zeile button:hover{background:var(--schlamm);color:var(--offwhite)}
.newsletter__hinweis{font:400 12px/1.4 var(--schrift-text)}
.newsletter__hinweis a{color:var(--schwarz)}
@media (max-width:767px){
  .newsletter{margin:32px var(--rand);padding:24px 18px;display:block}
  .newsletter__streifen,.newsletter__links p{display:none}
  .newsletter__links{padding-left:0}
  .newsletter__titel{font-size:44px;margin-top:8px}
  .newsletter__form{margin-top:16px;gap:8px}
  .newsletter__zeile{flex-direction:column;border:0;gap:8px}
  .newsletter__zeile input{border:3px solid var(--schwarz);padding:14px;font-size:15px}
  .newsletter__zeile button{padding:14px;font-size:18px;text-align:center}
}

/* ======================================================================= */
/* Shop (im Stil von 2b / 1a)                                               */
/* ======================================================================= */
.produkte{padding:40px var(--rand) 64px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1023px){.produkte{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.produkte{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:24px var(--rand) 40px}}
.produkt{border:3px solid var(--gelb);background:var(--offwhite);color:var(--schwarz);display:flex;flex-direction:column;text-decoration:none}
.produkt:hover{box-shadow:8px 8px 0 var(--gelb)}
.produkt__kopf{background:var(--schwarz);color:var(--gelb);font:600 11px var(--schrift-text);letter-spacing:.22em;text-transform:uppercase;padding:8px 12px;display:flex;justify-content:space-between;gap:8px}
.produkt__kopf span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.produkt__bild{aspect-ratio:3/4;position:relative;overflow:hidden;background:#efede6}
.produkt__bild img{width:100%;height:100%;object-fit:cover}
.produkt__bild .bild-platz{position:absolute;inset:0}
.produkt__text{padding:14px 14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.produkt__titel{font:400 28px/.95 var(--schrift-kopf);text-transform:uppercase}
.produkt__preis{font:600 14px var(--schrift-text);letter-spacing:.08em;margin-top:auto;padding-top:10px;border-top:2px solid var(--schwarz);display:flex;justify-content:space-between;gap:8px}
.produkt__preis s{color:var(--schlamm);font-weight:400}
.produkt--aus .produkt__bild::after{content:"Ausverkauft";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);background:var(--schwarz);color:var(--gelb);font:400 22px var(--schrift-kopf);text-transform:uppercase;padding:6px 14px}
@media (max-width:767px){.produkt__kopf{font-size:9px;letter-spacing:.16em;padding:6px 8px}.produkt__text{padding:10px}.produkt__titel{font-size:20px}.produkt__preis{font-size:12px}}
.leer{margin:0 var(--rand) 64px;border:3px solid var(--gelb);padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.leer .h-mittel{font-size:40px}
@media (max-width:767px){.leer{display:block;padding:24px 18px;margin-bottom:40px}.leer .knopf{margin-top:20px}}
.shop-leiste{padding:0 var(--rand) 24px;display:flex;flex-wrap:wrap;gap:12px 28px;font:600 12px var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--text-hell)}
.shop-leiste a{text-decoration:none}
.shop-leiste a:hover,.shop-leiste a[aria-current=page]{color:var(--gelb)}

/* Produktseite */
.artikel{padding:48px var(--rand) 64px;display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}
.galerie__haupt{aspect-ratio:3/4;border:3px solid var(--gelb);position:relative;overflow:hidden;background:var(--flaeche-dunkel)}
.galerie__haupt img{width:100%;height:100%;object-fit:cover}
.galerie__haupt .plakette{position:absolute;left:16px;top:16px}
.galerie__klein{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}
.galerie__klein button{aspect-ratio:3/4;border:2px solid var(--linie);overflow:hidden;background:var(--flaeche-dunkel)}
.galerie__klein button[aria-current=true]{border-color:var(--gelb)}
.galerie__klein img{width:100%;height:100%;object-fit:cover}
.artikel__titel{font:400 64px/.9 var(--schrift-kopf);text-transform:uppercase;margin-top:12px}
.artikel__preis{font:400 32px/1 var(--schrift-kopf);margin-top:18px;display:flex;align-items:baseline;gap:14px}
.artikel__preis s{font:400 20px var(--schrift-kopf);color:var(--staub)}
.artikel__preis small{font:400 12px var(--schrift-text);color:var(--text-hell);letter-spacing:.04em}
.artikel__rest{margin-top:12px;display:inline-block;border:2px solid var(--gelb);color:var(--gelb);font:600 12px var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;padding:6px 10px}
.formular{margin-top:24px;display:flex;flex-direction:column;gap:16px}
.feld label,.feld legend{display:block;font:600 11px var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--text-hell);margin-bottom:8px}
body.hell .feld label,body.hell .feld legend{color:var(--schlamm)}
.feld fieldset{border:0;padding:0;margin:0;min-width:0}
.optionen{display:flex;flex-wrap:wrap;gap:8px}
.optionen input{position:absolute;opacity:0;width:0;height:0}
.optionen label{display:inline-block;border:2px solid var(--offwhite);padding:10px 14px;font:600 13px var(--schrift-text);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;min-width:52px;text-align:center}
.optionen input:checked + label{background:var(--gelb);color:var(--schwarz);border-color:var(--gelb)}
.optionen input:focus-visible + label{outline:3px solid var(--gelb);outline-offset:3px}
.optionen label.aus{opacity:.4;text-decoration:line-through}
.feld input[type=text],.feld input[type=email],.feld input[type=tel],.feld input[type=number],.feld input[type=date],.feld select,.feld textarea{width:100%;padding:14px 16px;font:400 16px var(--schrift-text);background:var(--offwhite);color:var(--schwarz);border:3px solid var(--schwarz);border-radius:0;-webkit-appearance:none;appearance:none}
.feld select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10'%3E%3Cpath d='M1 1l7 7 7-7' fill='none' stroke='%23050407' stroke-width='2.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}
body:not(.hell) .feld input,body:not(.hell) .feld select,body:not(.hell) .feld textarea{border-color:var(--offwhite)}
.feld input:focus,.feld select:focus,.feld textarea:focus{outline:3px solid var(--gelb);outline-offset:0}
.feld .fehler{display:block;margin-top:6px;font:500 13px var(--schrift-text);color:#e0462f}
body:not(.hell) .feld .fehler{color:#ff8a7a}
.feld--fehler input,.feld--fehler select,.feld--fehler textarea{border-color:#e0462f}
.menge{display:inline-flex;border:2px solid var(--offwhite)}
.menge button{width:44px;height:44px;font:400 22px var(--schrift-kopf)}
.menge input{width:56px;text-align:center;background:transparent;color:inherit;border:0;border-left:2px solid var(--offwhite);border-right:2px solid var(--offwhite);font:600 16px var(--schrift-text);-moz-appearance:textfield}
.menge input::-webkit-outer-spin-button,.menge input::-webkit-inner-spin-button{-webkit-appearance:none}
.zeile-kauf{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}
.zeile-kauf .knopf{flex:1}
.details{margin-top:32px;border-top:1px solid var(--linie)}
.details details{border-bottom:1px solid var(--linie)}
.details summary{cursor:pointer;list-style:none;padding:16px 0;font:400 22px var(--schrift-kopf);text-transform:uppercase;display:flex;justify-content:space-between;align-items:center}
.details summary::-webkit-details-marker{display:none}
.details summary::after{content:"+";font:400 28px var(--schrift-kopf);color:var(--gelb)}
.details details[open] summary::after{content:"–"}
.details .text{padding:0 0 20px}
.details table{width:100%;border-collapse:collapse;font:400 14px var(--schrift-text);margin-bottom:20px}
.details th,.details td{padding:8px 10px;border:1px solid var(--linie);text-align:center}
.details th{font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:var(--gelb)}
.beschreibung{font:400 16px/1.6 var(--schrift-text);color:var(--text-hell)}
.beschreibung p{margin:0 0 12px}
.beschreibung ul{padding-left:20px}
.beschreibung img{display:none}
@media (max-width:767px){.artikel{display:block;padding:24px var(--rand) 40px}.artikel__titel{font-size:44px}.artikel__preis{font-size:28px;margin-top:14px}.galerie__klein{grid-template-columns:repeat(5,minmax(0,1fr))}.artikel__rechts{margin-top:28px}}

/* Drop-Seite */
.countdown{margin:0 var(--rand);border:3px solid var(--gelb);padding:40px;display:grid;grid-template-columns:1fr 2fr;gap:32px;align-items:center}
.countdown__zahlen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.countdown__zahlen div{background:var(--offwhite);color:var(--schwarz);border-radius:10px;padding:14px 8px 10px;text-align:center}
.countdown__zahlen b{display:block;font:400 72px/1 var(--schrift-kopf)}
.countdown__zahlen span{display:block;font:600 11px var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;margin-top:6px}
.countdown--offen{background:var(--gelb);color:var(--schwarz)}
.countdown--offen .countdown__zahlen div{background:var(--schwarz);color:var(--offwhite)}
.rest-balken{margin-top:16px;height:14px;border:2px solid var(--gelb);position:relative;overflow:hidden}
.rest-balken i{display:block;height:100%;background:var(--gelb)}
@media (max-width:767px){.countdown{display:block;padding:20px 16px}.countdown__zahlen{margin-top:16px;gap:8px}.countdown__zahlen b{font-size:40px}.countdown__zahlen span{font-size:9px}}

/* Lookbook */
.looks{padding:40px var(--rand) 64px;display:flex;flex-direction:column;gap:56px}
.look{display:grid;grid-template-columns:7fr 5fr;gap:32px;align-items:center}
.look:nth-child(even){direction:rtl}
.look:nth-child(even) > *{direction:ltr}
.look__bild{aspect-ratio:4/3;position:relative;overflow:hidden;border:3px solid var(--gelb)}
.look__bild img{width:100%;height:100%;object-fit:cover}
.look__produkte{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
@media (max-width:767px){.looks{padding:24px var(--rand) 40px;gap:36px}.look{display:block}.look__text{margin-top:16px}}

/* Warenkorb */
.korb{padding:48px var(--rand) 64px;display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}
.korb__zeile{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--linie)}
.korb__zeile:first-child{border-top:1px solid var(--linie)}
.korb__bild{aspect-ratio:3/4;background:var(--flaeche-dunkel);overflow:hidden}
.korb__bild img{width:100%;height:100%;object-fit:cover}
.korb__titel{font:400 24px/1 var(--schrift-kopf);text-transform:uppercase;text-decoration:none}
.korb__variante{font:400 14px var(--schrift-text);color:var(--text-hell);margin-top:4px}
.korb__preis{font:400 24px/1 var(--schrift-kopf);text-align:right}
.korb__aktionen{display:flex;align-items:center;gap:12px;margin-top:12px}
.korb__entfernen{font:600 11px var(--schrift-text);letter-spacing:.16em;text-transform:uppercase;color:var(--staub);text-decoration:underline}
.summe{border:3px solid var(--gelb);padding:24px}
.summe__zeile{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--linie);font:400 16px var(--schrift-text)}
.summe__zeile--gesamt{font:400 32px/1 var(--schrift-kopf);border-bottom:0;padding-top:16px}
.summe .knopf{margin-top:20px}
.summe small{display:block;margin-top:12px;font:400 12px/1.4 var(--schrift-text);color:var(--text-hell)}
@media (max-width:767px){.korb{display:block;padding:24px var(--rand) 40px}.korb__zeile{grid-template-columns:72px 1fr;gap:12px}.korb__preis{grid-column:2;text-align:left}.summe{margin-top:24px}}

/* Teamwear */
.teamwear{padding:48px var(--rand) 64px;display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
.teamwear__form{border:3px solid var(--gelb);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.teamwear__form .feld--breit{grid-column:1/-1}
.teamwear__form .knopf{grid-column:1/-1;justify-content:center}
.datei{border:3px dashed var(--offwhite);padding:18px;text-align:center;font:400 14px var(--schrift-text);color:var(--text-hell)}
.datei input{width:100%;margin-top:8px;color:var(--offwhite)}
.argumente{margin:28px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px;font:400 28px/1 var(--schrift-kopf);text-transform:uppercase}
.argumente li::before{content:"→ ";color:var(--gelb)}
@media (max-width:767px){.teamwear{display:block;padding:24px var(--rand) 40px}.teamwear__form{display:flex;flex-direction:column;padding:18px;margin-top:28px}}

/* Rechtstexte */
.rechtstext{padding:24px var(--rand) 64px;max-width:820px}
.rechtstext h2{font:400 28px/1 var(--schrift-kopf);text-transform:uppercase;margin:32px 0 12px}
.rechtstext p,.rechtstext li{font:400 16px/1.6 var(--schrift-text);color:var(--text-hell);margin:0 0 12px}
.rechtstext a{color:var(--gelb)}
.rechtstext ul{padding-left:20px}

/* Laufband (aus 1b, als Baustein verfügbar) */
.laufband{overflow:hidden;background:var(--schwarz);color:var(--gelb);padding:10px 0;white-space:nowrap;border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.laufband div{display:inline-flex;gap:48px;font:400 20px var(--schrift-kopf);text-transform:uppercase;letter-spacing:.06em;animation:mq 18s linear infinite;padding-right:48px}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:767px){.laufband div{gap:32px;font-size:16px;animation-duration:14s;padding-right:32px}}

@media print{.kopf,.fuss,.newsletter,.knopf{display:none!important}body{background:#fff;color:#000}}

/* Kilometer 0 – die fünf Mitten Deutschlands (Story) */
.mitte{border-top:1px solid var(--linie);padding:56px var(--rand) 64px;display:grid;grid-template-columns:7fr 5fr;gap:24px 40px;align-items:start}
.mitte__kopf{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}
.mitte__kopf .h-gross{margin-top:12px}
.mitte__zaehler{grid-column:1/-1;display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;border:3px solid var(--gelb);padding:14px 18px}
.mitte__zaehler b{font:400 56px/1 var(--schrift-kopf);color:var(--gelb);font-variant-numeric:tabular-nums;min-width:5.2em}
.mitte__zaehler .etikett{margin-left:auto}
.mitte__karte{position:relative;border:3px solid var(--gelb);background:#0b0b09;aspect-ratio:16/10;overflow:hidden}
.mitte__karte svg{display:block;width:100%;height:100%}
.mitte__karte .fl{cursor:pointer}
.mitte__karte .fl:hover .fl-mast,.mitte__karte .fl.on .fl-mast{stroke-width:4}
.mitte__karte .fl.on .fl-ring{opacity:1}
.mitte__karte .fl-ring{opacity:0;transition:opacity .2s}
.mitte__hinweis{position:absolute;right:12px;top:12px;background:var(--schwarz);border:2px solid var(--gelb);padding:6px 10px;font:600 11px/1 var(--schrift-text);letter-spacing:.2em;text-transform:uppercase;color:var(--gelb)}
.mitte__flaggen{display:flex;flex-wrap:wrap;gap:8px}
.mitte__flaggen button{display:inline-flex;align-items:center;gap:8px;border:2px solid var(--offwhite);padding:8px 12px;font:600 12px var(--schrift-text);letter-spacing:.14em;text-transform:uppercase;color:var(--offwhite)}
.mitte__flaggen button small{font:400 12px var(--schrift-kopf);color:var(--gelb);letter-spacing:.06em}
.mitte__flaggen button[aria-selected=true]{background:var(--gelb);color:var(--schwarz);border-color:var(--gelb)}
.mitte__flaggen button[aria-selected=true] small{color:var(--schwarz)}
.mitte__flagge{width:14px;height:10px;background:repeating-conic-gradient(var(--schwarz) 0 25%,var(--offwhite) 0 50%) 0 0/7px 5px;border:1px solid var(--schwarz);flex:none}
.mitte__flaggen button[aria-selected=true] .mitte__flagge{background:repeating-conic-gradient(var(--schwarz) 0 25%,var(--gelb) 0 50%) 0 0/7px 5px}
.mitte__info{background:var(--offwhite);color:var(--schwarz);border:3px solid var(--gelb);padding:18px 20px 20px;box-shadow:8px 8px 0 var(--gelb);margin-top:8px}
.mitte__info .k{font:600 11px/1.4 var(--schrift-text);letter-spacing:.18em;text-transform:uppercase;color:var(--schlamm)}
.mitte__info h3{font:400 40px/1 var(--schrift-kopf);text-transform:uppercase;margin:8px 0 6px}
.mitte__info h3 span{display:block;font:italic 500 14px var(--schrift-text);text-transform:none;color:var(--schlamm);margin-top:4px}
.mitte__koord{font:600 12px var(--schrift-text);letter-spacing:.08em;font-variant-numeric:tabular-nums}
.mitte__info p{margin:12px 0 0;font:400 15px/1.5 var(--schrift-text)}
body.hell .mitte__karte{background:#efede6}
body.hell .mitte__flaggen button{border-color:var(--schwarz);color:var(--schwarz)}
@media (min-width:768px){.mitte__rechts{display:contents}.mitte__flaggen{grid-column:2;grid-row:3}.mitte__info{grid-column:2;grid-row:4}.mitte__karte{grid-column:1;grid-row:3/5}}
@media (max-width:767px){
  .mitte{display:block;padding:36px var(--rand) 40px}
  .mitte__kopf{display:block}.mitte__kopf .lead{margin-top:16px}
  .mitte__zaehler{margin-top:20px;padding:10px 12px;gap:10px}
  .mitte__zaehler b{font-size:36px;min-width:0}.mitte__zaehler .etikett{display:none}
  .mitte__karte{margin-top:16px;aspect-ratio:4/3}
  .mitte__hinweis{display:none}
  .mitte__flaggen{margin-top:16px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;scrollbar-width:none;padding-bottom:4px}
  .mitte__flaggen::-webkit-scrollbar{display:none}
  .mitte__flaggen button{font-size:11px;padding:7px 10px;flex:none}
  .mitte__info{margin-top:12px;box-shadow:6px 6px 0 var(--gelb)}
  .mitte__info h3{font-size:32px}
}
