/* PRUEFMARKE: site.css Stand 2026-10-14-BQ (Casa Cafaro, Deko-Eyebrows entfernt, Claim und Untertitel in Serife) */

/* =====================================================================
   Tokens. Markenfarben kommen aus config colors (brand_style):
   --petrol = Anthrazit, --petrol-deep = Tinte, --petrol-tint = Creme,
   --coral-soft = Creme tief, --paper, --ink, --muted = Stein.
   ===================================================================== */
:root{
  --creme:var(--petrol-tint,#EFE4CF); --anthrazit:var(--petrol,#2B2A28); --weiss:var(--paper,#FFFFFF);
  --tinte:var(--ink,#1F1E1C); --stein:var(--muted,#6E685D); --creme-tief:var(--coral-soft,#E4D6BA);
  --linie:rgba(31,30,28,.16); --linie-hell:rgba(239,228,207,.22);
  --serif:var(--font-display,"CormorantGaramond",Georgia,"Times New Roman",serif);
  --sans:var(--font-body,"Manrope","Helvetica Neue",Arial,sans-serif);
  --w:1240px; --gutter:clamp(20px,5vw,72px); --kopf-h:88px;
  --ease:cubic-bezier(.2,.7,.2,1); --ease-clip:cubic-bezier(.65,0,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--creme);color:var(--tinte);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto}
img{display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-weight:500;line-height:1.1;text-wrap:balance}
p{margin:0}
button{font:inherit;color:inherit}
.wrap{max-width:var(--w);margin-inline:auto;padding-inline:var(--gutter)}
.cc-schmal{max-width:820px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--anthrazit);color:var(--creme);padding:8px 14px;z-index:100}
.skip-link:focus{left:8px}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* Typografie */
.cc-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;opacity:.75;margin:0}
.cc-claim{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(18px,1.6vw,22px);letter-spacing:.01em;opacity:.85;margin:0 0 10px}
.cc-untertitel{font-family:var(--serif);font-weight:500;font-size:clamp(20px,1.8vw,24px);line-height:1.2;margin:0 0 14px}
.cc-h1,.cc-hero-titel,.cc-kauf-titel{font-family:var(--serif);font-weight:500;font-size:clamp(40px,6.2vw,84px);line-height:1;letter-spacing:-.005em}
.cc-h2{font-family:var(--sans);font-weight:600;font-size:clamp(24px,3vw,38px);line-height:1.15;letter-spacing:-.01em;margin-top:16px}
.cc-h3{font-family:var(--sans);font-weight:600;font-size:20px;line-height:1.25}
.cc-serif{font-family:var(--serif);font-weight:600;font-size:28px;line-height:1.1}
.cc-lead{font-size:clamp(17px,1.4vw,20px);line-height:1.55;max-width:62ch;margin-top:22px}
.cc-text{max-width:62ch;margin-top:22px}
.cc-gedaempft{opacity:.8}
.cc-link{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;border-bottom:1.5px solid currentColor;padding-bottom:4px;display:inline-block;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer;padding-top:0;padding-inline:0}

/* Buttons */
.cc-btn,.sg-btn,.gd-btn{display:inline-block;padding:15px 26px;border:1.5px solid var(--anthrazit);background:var(--anthrazit);color:var(--creme);font-family:var(--sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;line-height:1;cursor:pointer;text-align:center;transition:background .2s,color .2s}
.cc-btn:hover,.sg-btn:hover{background:transparent;color:var(--anthrazit)}
.cc-btn-hell{background:var(--creme);color:var(--anthrazit);border-color:var(--creme)}
.cc-btn-hell:hover{background:transparent;color:var(--creme)}
.cc-btn-linie,.sg-btn-hell{background:transparent;color:var(--anthrazit)}
.cc-btn-linie:hover,.sg-btn-hell:hover{background:var(--anthrazit);color:var(--creme)}
.cc-band-dunkel .cc-btn-linie{color:var(--creme);border-color:var(--creme)}
.cc-band-dunkel .cc-btn-linie:hover{background:var(--creme);color:var(--anthrazit)}
.cc-btn + .cc-btn{margin-left:10px}
/* Luft um Knoepfe (AQ): nach Text, Titeln und Listen oben Abstand, in Fliesstext auch unten; Knopfgruppen gleich. */
:is(p,h1,h2,h3,h4,ul,ol,figure,.cc-text,.cc-lead) + .cc-btn{margin-top:28px}
.prose .cc-btn{margin-top:28px}
.prose .gd-button-zeile{margin:28px 0 32px}
.prose .gd-button-zeile+.gd-button-zeile{margin-top:-16px}
.prose .gd-button-zeile+:is(h2,h3,h4){margin-top:44px}
:is(p,h1,h2,h3,ul,ol,figure,.cc-text) + .cc-knoepfe{margin-top:32px}
.cc-form .cc-btn{margin-top:24px}
@media(max-width:600px){:is(p,h1,h2,h3,h4,ul,ol,figure,.cc-text,.cc-lead) + .cc-btn,.prose .cc-btn{margin-top:22px}:is(p,h1,h2,h3,ul,ol,figure,.cc-text) + .cc-knoepfe{margin-top:26px}}
.cc-knoepfe{display:flex;gap:14px;flex-wrap:wrap}
.cc-knoepfe .cc-btn+.cc-btn{margin-left:0}

/* =====================================================================
   Kopf
   ===================================================================== */
.cc-kopfzeile{position:sticky;top:0;z-index:40;background:#fff;transition:background .4s,box-shadow .4s}
.js .cc-kopfzeile.gescrollt{background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(43,42,40,.06)}
/* Startseite (AT): Kopf liegt transparent auf dem Hero, Logo und Symbole hell; ab 40 px Scrollweg weiss. */
body.menu-open .cc-kopfzeile,.js body.menu-open .cc-kopfzeile.gescrollt{background:#fff}
.is-home .cc-kopfzeile{margin-bottom:calc(-1 * var(--kopf-h))}
.is-home .cc-hero{min-height:calc(clamp(520px,80vh,860px) + var(--kopf-h))}
.is-home .cc-hero-inhalt{padding-top:calc(var(--kopf-h) + clamp(32px,6vw,80px))}
@media(max-width:600px){.cc-hero-inhalt{padding-bottom:36px}}
.js body.is-home:not(.menu-open) .cc-kopfzeile:not(.gescrollt){background:transparent;color:var(--creme)}
.js body.is-home:not(.menu-open) .cc-kopfzeile:not(.gescrollt) :is(.hdr-logo,.hdr-nav-link,.hdr-lang a,.hdr-cart,.hdr-search,.burger){color:var(--creme)}
.js body.is-home:not(.menu-open) .cc-kopfzeile:not(.gescrollt) .hdr-lang{border-right-color:rgba(239,228,207,.4)}
.js body.is-home:not(.menu-open) .cc-kopfzeile:not(.gescrollt) .hdr-cart-n{background:var(--creme);color:var(--anthrazit)}
.hdr-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;height:var(--kopf-h);padding-inline:clamp(20px,3vw,48px)}
.hdr-nav{justify-self:center}
@media(max-width:1000px){.hdr-inner{grid-template-columns:auto 1fr auto}}
.hdr-logo{display:block;width:170px;color:var(--tinte);flex:none}
.cc-logo svg{width:100%;height:auto;display:block;fill:currentColor}
.hdr-nav-list{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0;font-size:13px;letter-spacing:.04em;font-weight:500;white-space:nowrap}
.hdr-nav-link{padding:6px 0;border-bottom:1.5px solid transparent;transition:border-color .2s}
.hdr-nav-link:hover,.hdr-nav-link[aria-current]{border-bottom-color:currentColor}
.hdr-actions{display:flex;align-items:center;gap:18px;flex:none}
.hdr-lang{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.12em;padding-right:22px;border-right:1px solid var(--linie);height:24px}
.hdr-lang a{opacity:.55}.hdr-lang a.is-aktiv{opacity:1;font-weight:700}
.hdr-lang-trenner{opacity:.4}
.hdr-cart,.hdr-search{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--tinte);background:none;border:0;cursor:pointer;padding:0}
.hdr-cart-n{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--anthrazit);color:var(--creme);font-size:10px;font-weight:700;line-height:18px;text-align:center;display:none}
.hdr-cart.has-items .hdr-cart-n{display:block}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--tinte);width:44px;height:44px}
.burger span{display:block;width:26px;height:2px;background:currentColor;margin:5px auto;transition:transform .3s,opacity .3s}
body.menu-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mm{display:none}
@media(max-width:1000px){
  .hdr-nav{display:none}
  .burger{display:block}
  .hdr-lang{display:none}
  .mm{display:block;position:fixed;inset:var(--kopf-h) 0 0 0;background:#fff;z-index:39;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;overflow:auto}
  body.menu-open .mm{opacity:1;visibility:visible}
  body.menu-open{overflow:hidden}
  .mm-inner{padding:32px var(--gutter) 48px}
  .mm-nav{list-style:none;margin:0;padding:0}
  .mm-item{opacity:0;transform:translateY(12px);transition:opacity .4s var(--ease),transform .4s var(--ease);transition-delay:calc(var(--i,0)*50ms + 80ms)}
  body.menu-open .mm-item{opacity:1;transform:none}
  .mm-main{display:block;padding:14px 0;border-bottom:1px solid var(--linie);font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.1}
  .mm-main[aria-current]{padding-left:14px;border-left:2px solid var(--anthrazit)}
  .mm-lang{margin:28px 0 0;display:flex;gap:18px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
  .mm-lang a{opacity:.55}.mm-lang a.is-aktiv{opacity:1}
  .mm-mail{margin-top:18px;font-size:14px;color:var(--stein)}
}

/* =====================================================================
   Baender und Sektionen
   ===================================================================== */
.cc-band{position:relative}
.cc-band-creme{background:var(--creme);color:var(--tinte)}
.cc-band-dunkel{background:var(--anthrazit);color:var(--creme)}
.cc-band-weiss{background:var(--weiss);color:var(--tinte)}
.cc-sek{padding-block:clamp(64px,9vw,128px)}
.cc-zweispaltig{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:start}
.cc-mittig{align-items:center}
@media(max-width:800px){.cc-zweispaltig{grid-template-columns:1fr}}
.cc-vertikal{position:absolute;left:var(--gutter);top:0;height:100%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;letter-spacing:.32em;text-transform:uppercase;font-weight:600;opacity:.5;display:flex;align-items:center;justify-content:center;pointer-events:none}
@media(max-width:1100px){.cc-vertikal{display:none}}
.cc-kz{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:clamp(32px,4vw,56px)}
.cc-kz .cc-h2{margin-top:14px}

/* Seitenkopf (Unterseiten) */
.cc-kopf{background:var(--creme);padding-block:clamp(48px,7vw,96px) clamp(40px,6vw,72px)}
.cc-kopf .cc-h1{margin-top:18px;max-width:16ch;font-size:clamp(36px,5vw,68px)}

/* Ueberhang: Bild ragt in das naechste Band */
.cc-sek-ueberhang{padding-bottom:0}
.cc-sek-ueberhang .cc-zweispaltig{align-items:end}
.cc-textspalte{padding-bottom:clamp(64px,9vw,128px)}
.cc-ueberhang{position:relative;z-index:3;margin-bottom:calc(-1 * clamp(80px,12vw,180px));align-self:end}
.cc-ueberhang .md-bild{margin:0}
.cc-ueberhang img{width:100%;aspect-ratio:4/5;object-fit:cover}
.cc-vorlauf{padding-top:clamp(120px,16vw,240px)}
@media(max-width:800px){.cc-ueberhang{margin-bottom:calc(-1 * clamp(60px,10vw,120px))}.cc-vorlauf{padding-top:clamp(100px,14vw,180px)}}
.cc-bild-3-2 img{aspect-ratio:3/2;object-fit:cover;width:100%}
figure{margin:0}

/* Karten */
.cc-karten{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:860px){.cc-karten{grid-template-columns:1fr}}
.cc-karte{background:var(--weiss);color:var(--tinte);padding:36px 32px 40px;display:flex;flex-direction:column;gap:14px}
.cc-karte .cc-eyebrow{opacity:.55}
.cc-karte h3{font-family:var(--serif);font-weight:600;font-size:28px;line-height:1.1}
.cc-karte p:last-child{color:var(--stein);font-size:15px}
.cc-studien{margin-top:clamp(56px,7vw,96px);align-items:center}

/* Zitat */
.cc-zitat{text-align:center;padding-block:clamp(72px,10vw,140px)}
.cc-zitat blockquote{margin:0 auto;max-width:22ch;font-family:var(--serif);font-weight:500;font-size:clamp(30px,4.6vw,60px);line-height:1.12;text-wrap:balance}
.cc-zitat figcaption{margin-top:28px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;opacity:.6}
.cc-strich{width:56px;height:1.5px;background:currentColor;margin:0 auto 28px;opacity:.5}

/* Angebote */
.cc-angebote{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,56px)}
@media(max-width:860px){.cc-angebote{grid-template-columns:1fr;gap:40px}}
.cc-angebot{display:flex;flex-direction:column;gap:16px}
.cc-angebot-bild img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cc-angebot:nth-child(2){margin-top:clamp(0px,5vw,72px)}
.cc-angebot h3{margin-top:8px}
.cc-angebot p{color:var(--stein);font-size:15px}
.cc-angebot .cc-link{align-self:flex-start;margin-top:4px}

/* Produkte */
.cc-produkte{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1000px){.cc-produkte{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.cc-produkte{grid-template-columns:1fr}}
.cc-produkt{background:var(--weiss);color:var(--tinte);display:flex;flex-direction:column}
.cc-produkt-bild{display:block;background:var(--creme-tief);overflow:hidden}
.cc-produkt-bild img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .5s var(--ease)}
.cc-produkt:hover .cc-produkt-bild img{transform:scale(1.03)}
.cc-produkt-leer{display:block;aspect-ratio:4/5;background:var(--creme-tief)}
.cc-produkt-info{padding:20px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.cc-produkt-info .cc-eyebrow{opacity:.5;font-size:11px}
.cc-produkt-titel{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1.1}
.cc-produkt-preis{margin-top:6px;font-size:14px;font-weight:600;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.cc-produkt-preis small{font-weight:400;color:var(--stein);letter-spacing:0;margin-left:6px}
.cc-produkt-form{margin-top:auto;padding-top:14px}
.cc-produkt-btn{color:var(--anthrazit)}
.cc-produkt.is-aus .cc-produkt-bild img{opacity:.6}
.cc-kategorien{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:clamp(28px,4vw,48px);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.cc-kategorien a{padding-bottom:6px;border-bottom:1.5px solid transparent;opacity:.6}
.cc-kategorien a:hover,.cc-kategorien a[aria-current]{opacity:1;border-bottom-color:currentColor}
.cc-shop-leer{color:var(--stein)}
.cc-dreier{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}
@media(max-width:760px){.cc-dreier{grid-template-columns:1fr}}
.cc-dreier h3{margin:14px 0 10px}
.cc-dreier p:last-child{color:var(--stein);font-size:15px}

/* Bildgruppe (Ueber uns) */
.cc-bildgruppe{display:grid;grid-template-columns:7fr 5fr;gap:18px;align-items:end}
.cc-bg1 img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cc-bg2{margin-bottom:clamp(40px,8vw,120px)}
.cc-bg2 img{aspect-ratio:3/4;object-fit:cover;width:100%}
.cc-legende{font-size:12px;letter-spacing:.06em;color:var(--stein);margin-top:10px}

/* CTA */
.cc-cta{text-align:center}
.cc-cta-titel{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5vw,64px);line-height:1.05;max-width:18ch;margin:20px auto 0}
.cc-cta .cc-knoepfe{justify-content:center;margin-top:40px}

/* Hero Startseite */
.cc-hero{position:relative;background:var(--anthrazit);color:var(--creme);overflow:hidden;min-height:clamp(460px,72vh,780px);display:flex;flex-direction:column;justify-content:flex-end}
.cc-hero-ebene{position:absolute;inset:0 0 -28% 0;will-change:transform}   /* Ueberhang nur unten: das Bild beginnt an der Oberkante (AT) */
.cc-hero-ebene img{width:100%;height:100%;object-fit:cover;object-position:60% 0}
.cc-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(20,19,17,.55) 0%,rgba(20,19,17,.15) 55%,rgba(20,19,17,0) 80%);pointer-events:none}
.cc-hero-inhalt{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding-top:clamp(40px,7vw,96px);padding-bottom:clamp(40px,6vw,72px)}
.cc-hero-inhalt .wrap{width:100%}
.cc-hero-titel{max-width:17ch;margin-top:18px;font-size:clamp(34px,4.6vw,66px);text-wrap:balance}
.cc-hero-sub{margin-top:22px;max-width:44ch;font-size:clamp(16px,1.4vw,19px);line-height:1.5}
.cc-hero .cc-btn{margin-top:32px}
@media(max-width:600px){.cc-hero-ebene img{object-position:70% 50%}.cc-hero-titel{max-width:14ch;font-size:clamp(32px,9vw,40px)}}

/* =====================================================================
   Unterseiten, Prose, Elemente
   ===================================================================== */
.cc-seite-raster{display:grid;grid-template-columns:7fr 4fr;gap:clamp(32px,6vw,96px);align-items:start}
.cc-seite-raster.ist-einspaltig{grid-template-columns:1fr;max-width:860px}
@media(max-width:900px){.cc-seite-raster{grid-template-columns:1fr}}
.cc-seite-rechts-innen{position:sticky;top:calc(var(--kopf-h) + 24px);display:flex;flex-direction:column;gap:18px}
.cc-seite-rechts .md-bild{margin:0}
.cc-seite-rechts .md-bild img{width:100%;aspect-ratio:4/5;object-fit:cover}
.cc-seite-rechts .md-bild:nth-child(2n){width:78%;margin-left:auto}
@media(max-width:900px){.cc-seite-rechts-innen{position:static;flex-direction:row;flex-wrap:wrap}.cc-seite-rechts .md-bild{flex:1 1 200px;margin:0!important;width:auto!important}}
.prose{font-size:16px;line-height:1.7}
.prose>*+*{margin-top:1em}
.prose h2{font-family:var(--sans);font-weight:600;font-size:clamp(22px,2.4vw,30px);line-height:1.2;margin-top:2.2em;letter-spacing:-.01em}
.prose h2:first-child{margin-top:0}
.prose h3{font-family:var(--serif);font-weight:600;font-size:24px;margin-top:1.8em}
.prose p{max-width:66ch}
.prose ul,.prose ol{padding-left:1.2em;max-width:66ch}
.prose li+li{margin-top:.4em}
.prose a{border-bottom:1px solid currentColor;transition:opacity .2s}
.prose a:hover{opacity:.7}
.prose strong{font-weight:600}
.prose .md-bild{margin:1.6em 0}
.prose .md-bild img{width:100%;height:auto}
.prose .md-bild.ist-klein{max-width:300px}
.prose .gd-liste-haken{list-style:none;padding:0}
.cc-recht .prose{max-width:760px}
.cc-recht .prose h2{font-size:20px;margin-top:2em}

/* Akkordeon (Elemente und Produktseite) */
.gd-akk,.cc-akkordeon details{border-top:1px solid var(--linie)}
.gd-akk:last-of-type,.cc-akkordeon details:last-child{border-bottom:1px solid var(--linie)}
.gd-akk summary,.cc-akkordeon summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.gd-akk summary::-webkit-details-marker,.cc-akkordeon summary::-webkit-details-marker{display:none}
.gd-akk summary::after,.cc-akkordeon summary::after{content:"+";font-family:var(--serif);font-size:26px;font-weight:400;line-height:1;transition:transform .25s;flex:none}
.gd-akk[open] summary::after,.cc-akkordeon details[open] summary::after{transform:rotate(45deg)}
.gd-akk-inhalt,.cc-akk-inhalt{padding:0 0 22px;color:var(--stein);font-size:15px;max-width:60ch}
.gd-akk-inhalt>*+*,.cc-akk-inhalt>*+*{margin-top:.8em}
.prose .gd-akk+.gd-akk{margin-top:0}
.cc-akkordeon{margin-top:12px}

/* Formulare (Kontakt, Kasse) */
.gd-form label{display:block;margin-bottom:16px}
.gd-form label>span,.gd-form label>b{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:8px;color:var(--stein)}
.gd-form label>span .gd-pflicht,.gd-pflicht{color:var(--anthrazit);opacity:.6;font-weight:600}
.gd-form input[type=text],.gd-form input[type=email],.gd-form input[type=tel],.gd-form input[type=number],.gd-form textarea,.gd-form select{width:100%;padding:14px 16px;border:1.5px solid var(--linie);background:var(--weiss);color:var(--tinte);font:inherit;border-radius:0;transition:border-color .2s}
.gd-form input:focus,.gd-form textarea:focus,.gd-form select:focus{outline:none;border-color:var(--anthrazit)}
.gd-form textarea{min-height:140px;resize:vertical}
.gd-zwei{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:560px){.gd-zwei{grid-template-columns:1fr}}
.gd-hp{position:absolute;left:-9999px;top:-9999px}
.gd-form-fehler{background:#F6E3DF;color:#7A2E22;padding:14px 18px;margin-bottom:20px;font-size:15px}
.is-fehler input,.is-fehler textarea{border-color:#B3452F!important}
.gd-haken{display:flex!important;gap:12px;align-items:flex-start;font-size:15px;text-transform:none!important;letter-spacing:0!important}
.gd-haken input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:var(--anthrazit)}
.gd-haken a{border-bottom:1px solid currentColor}
.cc-formular{margin-top:40px;padding-top:40px;border-top:1px solid var(--linie);max-width:640px}
.cc-formular-dank{background:var(--creme);padding:32px}
.cc-form-hinweis{font-size:13px;color:var(--stein);margin:8px 0 22px}
.cc-form-hinweis a{border-bottom:1px solid currentColor}

/* =====================================================================
   Shop: Produktseite, Warenkorb, Kasse, Mini-Warenkorb
   ===================================================================== */
.cc-brotkrumen{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stein);display:flex;gap:10px;flex-wrap:wrap;padding-block:22px 0}
.cc-brotkrumen span{opacity:.5}
.cc-brotkrumen [aria-current]{opacity:1;color:var(--tinte)}
.cc-pdp{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px,5vw,80px);align-items:start;padding-block:clamp(24px,3vw,40px) clamp(64px,8vw,110px)}
@media(max-width:860px){.cc-pdp{grid-template-columns:1fr}}
.cc-galerie{display:grid;gap:14px}
.cc-galerie-bild{display:none;background:var(--creme-tief);overflow:hidden}
.cc-galerie-bild.is-active{display:block}
.cc-galerie-bild img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cc-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cc-thumb{padding:0;border:1.5px solid transparent;background:var(--creme-tief);cursor:pointer;overflow:hidden}
.cc-thumb.is-active{border-color:var(--anthrazit)}
.cc-thumb img{aspect-ratio:1;object-fit:cover;width:100%}
.cc-kauf{position:sticky;top:calc(var(--kopf-h) + 24px);display:flex;flex-direction:column;gap:18px}
@media(max-width:860px){.cc-kauf{position:static}}
.cc-kauf-titel{font-size:clamp(44px,5vw,68px);line-height:.95}
.cc-noten{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--stein);font-weight:500}
.cc-kauf-preis{font-size:24px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.cc-kauf-preis small{display:block;font-size:12px;font-weight:400;color:var(--stein);letter-spacing:.04em;margin-top:4px}
.cc-kauf-text{color:var(--stein);font-size:15px;max-width:52ch}
.cc-kaufzeile{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin-top:6px}
.cc-menge{display:inline-flex;border:1.5px solid var(--anthrazit);align-items:center;margin:0}
.cc-menge input{width:72px;text-align:center;border:0;background:transparent;font:inherit;font-weight:600;color:inherit;padding:14px 8px}
.cc-menge input:focus{outline:none}
.cc-kaufzeile .cc-btn{flex:1;padding-block:17px}
.cc-knapp,.cc-hinweis{font-size:14px;color:var(--stein)}
.cc-merkmale{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;letter-spacing:.06em;color:var(--stein);margin-top:4px}
.cc-merkmale span::before{content:"";display:inline-block;width:6px;height:6px;background:var(--anthrazit);margin-right:9px;vertical-align:middle;opacity:.6}
.cc-sku{font-size:12px;color:var(--stein);letter-spacing:.06em}
.cc-ritual{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,96px);align-items:center}
@media(max-width:860px){.cc-ritual{grid-template-columns:1fr}}
.cc-ritual-bild img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cc-ritual-zitat{margin:20px 0 0;font-family:var(--serif);font-weight:500;font-size:clamp(30px,3.6vw,48px);line-height:1.12}

/* Warenkorb, Kasse, Danke (Engine-Vorlagen mit gd-shop-*) */
.gd-shop{background:var(--weiss);padding-block:clamp(40px,6vw,80px)}
.gd-shop-h2{font-family:var(--sans);font-weight:600;font-size:20px;margin:32px 0 16px;letter-spacing:-.01em}
.gd-shop-h2:first-child{margin-top:0}
.gd-shop-leer,.gd-shop-hinweis{color:var(--stein);font-size:15px}
.gd-shop-hinweis a,.gd-shop-kontakt a{border-bottom:1px solid currentColor}
.gd-shop-tabelle{width:100%;border-collapse:collapse;font-size:15px}
.gd-shop-tabelle th{text-align:left;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--stein);padding:0 0 12px;border-bottom:1px solid var(--linie)}
.gd-shop-tabelle td{padding:16px 12px 16px 0;border-bottom:1px solid var(--linie);vertical-align:middle}
.gd-shop-tabelle .r,.gd-shop-tabelle th.r{text-align:right;font-variant-numeric:tabular-nums}
.gd-shop-tb{width:72px}
.gd-shop-tb img{aspect-ratio:1;object-fit:cover;width:64px}
.gd-shop-tabelle input[type=number]{width:70px;padding:10px;border:1.5px solid var(--linie);text-align:center;font:inherit}
.gd-shop-entfernen{background:none;border:0;cursor:pointer;font-size:22px;line-height:1;color:var(--stein);padding:4px}
.gd-shop-korb-aktionen{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;align-items:center}
.gd-shop-btn-leicht{background:transparent;color:var(--anthrazit)}
.gd-shop-kasse-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px,5vw,72px);align-items:start}
@media(max-width:900px){.gd-shop-kasse-grid{grid-template-columns:1fr}}
.gd-shop-zusammenfassung{background:var(--creme);padding:28px;position:sticky;top:calc(var(--kopf-h) + 24px)}
.gd-shop-zf-liste{list-style:none;margin:0;padding:0}
.gd-shop-zf-liste li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--linie);font-size:14px}
.gd-shop-zf-bild img{width:44px;height:44px;object-fit:cover}
.gd-shop-zf-titel{flex:1}
.gd-shop-zf-summen{margin:16px 0 0}
.gd-shop-zf-summen div{display:flex;justify-content:space-between;padding:6px 0;font-size:15px}
.gd-shop-zf-summen dt,.gd-shop-zf-summen dd{margin:0}
.gd-shop-zf-total{border-top:1px solid var(--linie);margin-top:8px;padding-top:12px!important;font-weight:600;font-size:18px!important}
.gd-shop-zf-total small{font-weight:400;font-size:12px;color:var(--stein)}
.gd-shop-wahl{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.gd-shop-option{display:flex!important;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid var(--linie);cursor:pointer;margin:0!important;text-transform:none!important;letter-spacing:0!important;font-size:15px!important;color:var(--tinte)!important}
.gd-shop-option:has(input:checked){border-color:var(--anthrazit)}
.gd-shop-option input{accent-color:var(--anthrazit);flex:none}
.gd-shop-option>span:not(.gd-shop-option-preis){flex:1;display:flex;flex-direction:column}
.gd-shop-option-text{font-size:13px;color:var(--stein)}
.gd-shop-option-preis{font-variant-numeric:tabular-nums;font-weight:600}
.gd-shop-bestellen{width:100%;padding-block:17px;margin-top:8px}
.gd-liefer{margin-top:8px}
.gd-shop-nr{font-family:var(--serif);font-size:32px;font-weight:600;margin:12px 0}
.gd-shop-lead{font-size:18px;max-width:60ch}
.gd-shop-danke .gd-shop-tabelle{max-width:640px;margin-top:24px}
/* Engine 1.4.0: Rabattcode in der Kasse, Bestellung mit Bildern auf der Dankeseite */
.gd-shop-rabatt{margin:20px 0 4px;padding-top:16px;border-top:1px solid var(--linie)}
.gd-shop-rabatt-label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:8px}
.gd-shop-rabatt-zeile{display:flex;gap:8px}
.gd-shop-rabatt-zeile input{flex:1;min-width:0;padding:12px 14px;border:1.5px solid var(--linie);background:#fff;font:inherit;font-size:15px;text-transform:uppercase;letter-spacing:.08em}
.gd-shop-rabatt-zeile input:focus{outline:none;border-color:var(--anthrazit)}
.gd-shop-rabatt-zeile .gd-shop-btn-leicht{padding:12px 18px;white-space:nowrap}
.gd-shop-rabatt-weg{background:none;border:0;padding:0;margin-left:6px;font:inherit;font-size:13px;color:var(--stein);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.gd-shop-rabatt-fehler{margin:8px 0 0;font-size:13px}
.gd-shop-zf-rabatt dd{color:var(--stein)}
.gd-shop-danke-bestellung{max-width:720px;margin:32px 0 28px}
.gd-shop-danke-bestellung,.gd-shop-danke-bestellung *{font-family:var(--sans)!important}
.gd-shop-danke-bestellung img{display:block;width:56px;height:56px;object-fit:cover}
.gd-shop-danke-bestellung a{color:inherit;text-decoration:none}
.gd-shop-danke-bestellung a:hover{text-decoration:underline;text-underline-offset:3px}
.gd-shop-danke-bestellung h3,.gd-shop-danke-bestellung h4{font-family:var(--serif);font-weight:600;margin:28px 0 8px}
.wrap-schmal{max-width:820px}

/* Mini-Warenkorb (Schublade) */
.gd-mini-korb{position:fixed;inset:0;z-index:60}
.gd-mini-korb-hinter{position:absolute;inset:0;background:rgba(31,30,28,.45);opacity:0;transition:opacity .4s}
.gd-mini-korb.is-offen .gd-mini-korb-hinter{opacity:1}
.gd-mini-korb-lade{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--creme);color:var(--tinte);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .45s var(--ease);padding:24px}
.gd-mini-korb.is-offen .gd-mini-korb-lade{transform:none}
.gd-mini-korb-kopf{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--linie)}
.gd-mini-korb-titel{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.gd-mini-korb-x{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;padding:0 4px}
.gd-mini-korb-liste{flex:1;overflow:auto;padding-block:8px}
.gd-mini-korb-pos{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--linie)}
.gd-mini-korb-bild img{width:56px;height:56px;object-fit:cover}
.gd-mini-korb-text{flex:1;display:flex;flex-direction:column;font-size:14px}
.gd-mini-korb-text span{color:var(--stein);font-size:13px}
.gd-mini-korb-rechts{display:flex;align-items:center;gap:8px;font-variant-numeric:tabular-nums}
.gd-mini-korb-entfernen{background:none;border:0;font-size:20px;cursor:pointer;color:var(--stein);padding:4px}
.gd-mini-korb-leer{color:var(--stein);padding:24px 0}
.gd-mini-korb-fuss{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--linie)}
.gd-mini-korb-summe{display:flex;justify-content:space-between;font-size:15px;margin-bottom:6px}
.gd-mini-korb-summe small{color:var(--stein);font-size:12px}

/* Blog */
.cc-beitraege{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);margin-top:clamp(24px,4vw,48px)}
@media(max-width:900px){.cc-beitraege{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cc-beitraege{grid-template-columns:1fr}}
.cc-beitrag{display:flex;flex-direction:column;gap:12px}
.cc-beitrag-bild img{aspect-ratio:4/3;object-fit:cover;width:100%}
.cc-beitrag-titel{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1.1}
.cc-beitrag p{color:var(--stein);font-size:15px}
.cc-beitrag .cc-link{align-self:flex-start}
.cc-beitrag-titelbild{margin-bottom:32px}
.cc-beitrag-titelbild img{width:100%;aspect-ratio:16/9;object-fit:cover}
.cc-zurueck{margin-top:40px}
.cc-blog-intro{margin-bottom:8px}

/* Fuss */
.cc-fuss{background:var(--creme);color:var(--tinte);border-top:1px solid var(--linie)}
.cc-fuss-raster{padding-block:64px 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
@media(max-width:860px){.cc-fuss-raster{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.cc-fuss-raster{grid-template-columns:1fr}}
.cc-fuss-logo{width:220px;margin-bottom:22px;color:var(--tinte)}
.cc-fuss-logo svg{width:100%;height:auto;fill:currentColor}
.cc-fuss-titel{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:16px;opacity:.6}
.cc-fuss-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.cc-fuss-liste a:hover{text-decoration:underline;text-underline-offset:4px}
.cc-fuss-adresse{font-style:normal;font-size:14px;line-height:1.7;color:var(--stein)}

.cc-fuss-unten .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:18px;font-size:12px;color:var(--stein);letter-spacing:.04em}
.cc-fuss-recht{display:flex;gap:14px;flex-wrap:wrap}
.cc-fuss-agentur{opacity:.7}

/* Nach oben */
.gd-to-top{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border:0;background:#fff;box-shadow:0 2px 10px rgba(43,42,40,.12);color:var(--anthrazit);display:grid;place-items:center;cursor:pointer;z-index:30;transform:rotate(-90deg);transition:opacity .3s}
.gd-to-top[hidden]{display:none}
.gd-to-top svg{width:22px;height:22px}

/* =====================================================================
   Bewegung (Stilentwurf B). Nur mit JS, nie auf dem LCP-Bild; ohne JS
   und mit prefers-reduced-motion ist alles sofort sichtbar.
   ===================================================================== */
.js .cc-enthuellen{opacity:0;transform:translateY(28px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.js .cc-enthuellen.sichtbar{opacity:1;transform:none}
.js .cc-enthuellen-bild img{clip-path:inset(0 0 100% 0);transform:scale(1.1);transition:clip-path 1.4s var(--ease-clip),transform 1.8s var(--ease)}
.js .cc-enthuellen-bild.sichtbar img{clip-path:inset(0 0 0 0);transform:none}
.js .cc-karten .cc-enthuellen:nth-child(2),.js .cc-angebote .cc-enthuellen:nth-child(2),.js .cc-dreier .cc-enthuellen:nth-child(2),.js .cc-produkte .cc-enthuellen:nth-child(2),.js .cc-beitraege .cc-enthuellen:nth-child(2){transition-delay:.15s}
.js .cc-karten .cc-enthuellen:nth-child(3),.js .cc-angebote .cc-enthuellen:nth-child(3),.js .cc-dreier .cc-enthuellen:nth-child(3),.js .cc-produkte .cc-enthuellen:nth-child(3),.js .cc-beitraege .cc-enthuellen:nth-child(3){transition-delay:.3s}
.js .cc-produkte .cc-enthuellen:nth-child(4){transition-delay:.45s}
.js .cc-produkte .cc-produkt.cc-enthuellen .cc-produkt-bild img{transform:scale(1.08);transition:transform 1.6s var(--ease)}
.js .cc-produkte .cc-produkt.cc-enthuellen.sichtbar .cc-produkt-bild img{transform:none}
.js .cc-zitat .cc-strich{transform:scaleX(0);transition:transform 1.2s var(--ease-clip) .2s}
.js .cc-zitat .sichtbar .cc-strich{transform:scaleX(1)}
.js .cc-hero-ebene img{transform:scale(1.06);animation:cc-hero-ruhe 3.2s var(--ease) forwards}
@keyframes cc-hero-ruhe{to{transform:scale(1)}}
.js .cc-hero .cc-eyebrow,.js .cc-hero .cc-claim,.js .cc-hero .cc-hero-titel,.js .cc-hero .cc-hero-sub,.js .cc-hero .cc-btn{opacity:0;transform:translateY(22px);animation:cc-hero-text 1.3s var(--ease) forwards}
.js .cc-hero .cc-eyebrow,.js .cc-hero .cc-claim{animation-delay:.4s}.js .cc-hero .cc-hero-titel{animation-delay:.6s}.js .cc-hero .cc-hero-sub{animation-delay:.85s}.js .cc-hero .cc-btn{animation-delay:1.05s}
@keyframes cc-hero-text{to{opacity:1;transform:none}}
[data-ebene]{will-change:transform}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;scroll-behavior:auto!important}
  .js .cc-enthuellen{opacity:1;transform:none}
  .js .cc-enthuellen-bild img,.js .cc-produkte .cc-produkt.cc-enthuellen .cc-produkt-bild img{clip-path:none;transform:none}
  .js .cc-hero-ebene img,.js .cc-hero .cc-eyebrow,.js .cc-hero .cc-claim,.js .cc-hero .cc-hero-titel,.js .cc-hero .cc-hero-sub,.js .cc-hero .cc-btn{animation:none;opacity:1;transform:none}
  .js .cc-zitat .cc-strich{transform:none}
  [data-ebene]{transform:none!important}
}

/* Symbol im Button-Element (Elemente::renderButton, config elemente.icon_class) */
.cc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px}
.cc-ico{width:18px;height:18px;flex:none}
.prose .cc-btn+.cc-btn{margin-left:10px}

/* =====================================================================
   Unterseiten im Rhythmus der Startseite (AB)
   ===================================================================== */
.cc-seitenkopf .cc-h1{margin-top:18px;font-size:clamp(38px,5.2vw,72px);max-width:14ch}
.cc-seitenkopf .cc-einstieg{margin-top:28px;max-width:60ch}
.cc-seitenkopf .cc-einstieg p{font-size:17px}
.cc-seitenkopf .cc-seite-rechts-innen{position:static}
.cc-seitenkopf .cc-seite-rechts figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
.cc-seitenkopf .cc-formular{margin-top:36px}
.cc-zweispaltig.cc-bild-links .cc-bildgruppe{order:-1}
@media(min-width:801px){.cc-zweispaltig:not(.cc-bild-links) .cc-bildgruppe{order:2}}
.cc-bildgruppe.ist-einzeln{grid-template-columns:1fr}
.cc-bildgruppe.ist-einzeln .cc-bg1 img{aspect-ratio:4/5}
.cc-abschnitt-text{margin-top:22px}
.cc-abschnitt-text h3{font-family:var(--serif);font-weight:600;font-size:24px;margin-top:1.6em}
.cc-karten-4{grid-template-columns:repeat(4,1fr)}
.cc-karten-2{grid-template-columns:repeat(2,1fr);max-width:860px}
@media(max-width:1000px){.cc-karten-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.cc-karten-4,.cc-karten-2{grid-template-columns:1fr}}
.cc-karte .cc-eyebrow{font-family:var(--serif);font-size:20px;letter-spacing:.04em;opacity:.35}
.cc-akk-band{grid-template-columns:5fr 7fr;align-items:start}
@media(max-width:800px){.cc-akk-band{grid-template-columns:1fr}}
.cc-band-dunkel .prose{color:var(--creme)}
.cc-band-dunkel .prose p,.cc-band-dunkel .prose li{color:rgba(239,228,207,.85)}
.cc-band-dunkel .gd-akk,.cc-band-dunkel .cc-akkordeon details{border-color:var(--linie-hell)}
.cc-band-dunkel .gd-akk:last-of-type{border-bottom-color:var(--linie-hell)}
.cc-band-dunkel .gd-akk-inhalt{color:rgba(239,228,207,.78)}
.cc-band-dunkel .prose .cc-btn{background:var(--creme);color:var(--anthrazit);border-color:var(--creme)}
.cc-band-dunkel .prose .cc-btn:hover{background:transparent;color:var(--creme)}
.cc-band-dunkel .cc-legende{color:rgba(239,228,207,.6)}
.cc-bildband{display:grid;grid-template-columns:5fr 4fr 3fr;gap:clamp(16px,3vw,40px);align-items:end}
@media(max-width:800px){.cc-bildband{grid-template-columns:1fr 1fr}}
.cc-bildband figure:nth-child(2){margin-bottom:clamp(30px,6vw,90px)}
.cc-bildband figure:nth-child(3){margin-bottom:clamp(60px,10vw,150px)}
.cc-bildband img{width:100%;aspect-ratio:4/5;object-fit:cover}
.cc-vorlauf .cc-kz,.cc-vorlauf .cc-zweispaltig{position:relative;z-index:1}

/* Suche als Schublade (AC) */
.cc-suche{position:fixed;inset:0;z-index:60}
.cc-suche[hidden]{display:none}
.cc-suche-hinter{position:absolute;inset:0;background:rgba(31,30,28,.45);opacity:0;transition:opacity .4s}
body.search-open .cc-suche-hinter{opacity:1}
.cc-suche-lade{position:absolute;top:0;right:0;bottom:0;width:min(460px,100%);background:var(--creme);color:var(--tinte);display:flex;flex-direction:column;padding:24px;transform:translateX(100%);transition:transform .45s var(--ease)}
body.search-open .cc-suche-lade{transform:none}
.cc-suche-kopf{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--linie)}
.cc-suche-titel{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.cc-suche-x{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;padding:0 4px;color:inherit}
.cc-suche-feld{display:flex;align-items:center;gap:12px;margin-top:20px;border:1.5px solid var(--anthrazit);padding:0 16px;background:var(--weiss)}
.cc-suche-feld input{flex:1;border:0;background:transparent;font:inherit;font-size:17px;padding:15px 0;color:inherit;min-width:0}
.cc-suche-feld input:focus{outline:none}
.cc-suche-feld input::-webkit-search-cancel-button{-webkit-appearance:none}
.cc-suche-hinweis{font-size:13px;color:var(--stein);margin:12px 0 0}
.cc-suche-liste{list-style:none;margin:16px 0 0;padding:0;overflow:auto;flex:1}
.cc-suche-liste li{border-bottom:1px solid var(--linie)}
.cc-suche-liste li a{display:flex;gap:14px;align-items:center;padding:14px 0}
.cc-suche-liste .sr-bild img{width:56px;height:56px;object-fit:cover;background:var(--creme-tief)}
.cc-suche-liste .sr-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.cc-suche-liste .sr-title{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.15}
.cc-suche-liste .sr-price{font-size:13px;font-weight:600;letter-spacing:.04em}
.cc-suche-liste .sr-text{font-size:13px;color:var(--stein);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cc-suche-liste .search-none{padding:16px 0;color:var(--stein);font-size:14px}
.cc-suche-liste li.is-active a{background:rgba(31,30,28,.05)}

/* Variantenwahl (Engine 1.3.0), z. B. Kerzengroessen */
.gd-shop-varianten{flex:1 0 100%;border:0;padding:0;margin:4px 0 10px}
.gd-shop-varianten-titel{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--stein);margin-bottom:10px;padding:0}
.gd-shop-varianten-liste{display:flex;flex-wrap:wrap;gap:8px}
.gd-shop-variante{position:relative;cursor:pointer;margin:0}
.gd-shop-variante input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.gd-shop-variante span{display:inline-block;min-width:58px;padding:12px 18px;border:1.5px solid rgba(43,42,40,.35);text-align:center;font-weight:600;letter-spacing:.06em;transition:border-color .2s,background .2s,color .2s}
.gd-shop-variante:hover span{border-color:var(--anthrazit)}
.gd-shop-variante input:checked+span{background:var(--anthrazit);border-color:var(--anthrazit);color:var(--creme)}
.gd-shop-variante input:focus-visible+span{outline:2px solid var(--anthrazit);outline-offset:3px}
.gd-shop-variante.is-aus span{opacity:.4;text-decoration:line-through;cursor:not-allowed}
.gd-shop-variante small{font-weight:400;letter-spacing:0;text-transform:none}

/* Stille Videoschleife im Bildplatz (Herkunft Lavendel) */
.cc-video video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;background:var(--anthrazit)}
.cc-bildgruppe.ist-einzeln .cc-video{max-width:420px;margin-inline:auto}

/* =====================================================================
   Neue Startseite (AV, Briefing Lu 28.09.2026): Manifest, fuenf Fragen,
   Menschen, Nutzen, Warum, Zusammenarbeit, Wissen.
   ===================================================================== */
.cc-hero-claim{font-weight:600;font-size:clamp(18px,1.6vw,22px);max-width:30ch}
.cc-hero-text{margin-top:14px;opacity:.9}
.cc-akzent{font-family:var(--serif);font-weight:500;font-size:clamp(24px,2.6vw,34px);line-height:1.2;margin-top:28px;max-width:26ch;text-wrap:balance}
.cc-akzent-hell{margin-top:0}
.cc-text-eng{margin-top:14px}
.cc-band-dunkel .cc-gedaempft{opacity:.8}

/* Manifest */
.cc-manifest .wrap{display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,7vw,120px);align-items:end}
@media(max-width:900px){.cc-manifest .wrap{grid-template-columns:1fr}}
.cc-manifest-titel{font-family:var(--serif);font-weight:500;font-size:clamp(38px,5.4vw,76px);line-height:1.02;letter-spacing:-.005em;margin-top:20px;max-width:14ch;text-wrap:balance}
.cc-manifest-text{font-size:clamp(17px,1.5vw,20px);max-width:44ch;margin-top:30px}
.cc-manifest-akzent{padding-bottom:6px}
.cc-manifest-akzent .cc-strich{margin:0 0 26px}
.cc-manifest-satz{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,40px);line-height:1.15;text-wrap:balance}
.cc-manifest-schluss{margin-top:22px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600}

/* Fuenf Fragen */
.cc-fragen-kopf{align-items:end;margin-bottom:clamp(32px,5vw,64px)}
.cc-fragen-kopf .cc-text{margin-top:0}
.cc-fragen-liste{list-style:none;margin:0;padding:0;border-top:1px solid var(--linie)}
.cc-frage{display:grid;grid-template-columns:56px 180px 1fr;gap:clamp(16px,3vw,48px);padding:clamp(26px,3vw,40px) 0;border-bottom:1px solid var(--linie);align-items:start}
.cc-frage-nr{font-size:12px;letter-spacing:.18em;font-weight:600;opacity:.5;padding-top:8px}
.cc-frage-kuerzel{font-family:var(--serif);font-weight:500;font-size:clamp(30px,3.4vw,46px);line-height:1;letter-spacing:-.01em}
.cc-frage-inhalt h3{font-family:var(--sans);font-weight:600;font-size:clamp(18px,1.6vw,22px);line-height:1.3;margin:4px 0 12px;max-width:34ch}
.cc-frage-inhalt p{color:var(--stein);font-size:16px;max-width:60ch}
@media(max-width:760px){.cc-frage{grid-template-columns:40px 1fr;gap:12px 16px}.cc-frage-inhalt{grid-column:2}.cc-frage-kuerzel{font-size:32px}}
.cc-fragen-schluss{margin-top:clamp(40px,6vw,72px);max-width:62ch}
.cc-fragen-schluss-titel{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,40px);line-height:1.15;text-wrap:balance}
.cc-fragen-schluss .cc-text{margin-top:18px}

/* Menschen */
.cc-bild-4-5 img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cc-menschen .cc-text+.cc-text{margin-top:14px}

/* Nutzen */
.cc-nutzen .cc-zweispaltig{align-items:start;margin-bottom:clamp(40px,6vw,80px)}
.cc-nutzen-raster{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1000px){.cc-nutzen-raster{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cc-nutzen-raster{grid-template-columns:1fr}}
.cc-nutzen-karte{background:rgba(239,228,207,.06);border:1px solid var(--linie-hell);padding:32px 28px 36px;display:flex;flex-direction:column;gap:14px}
.cc-nutzen-karte .cc-eyebrow{opacity:.5}
.cc-nutzen-karte h3{font-family:var(--serif);font-weight:500;font-size:28px;line-height:1.1}
.cc-nutzen-karte p{font-size:15px;opacity:.85}
.cc-nutzen-schluss{margin-top:clamp(40px,6vw,72px);max-width:64ch}
.cc-nutzen-schluss-titel{font-family:var(--serif);font-weight:500;font-size:clamp(24px,2.8vw,36px);line-height:1.18;text-wrap:balance}
.cc-nutzen-schluss .cc-text{margin-top:18px}

/* Warum */
.cc-warum .cc-zweispaltig{align-items:start}
.cc-warum .cc-zweispaltig .cc-text:first-child{margin-top:0}
.cc-personen{margin-top:clamp(48px,7vw,96px)}
.cc-personen-titel{margin-bottom:24px}
.cc-personen-raster{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px)}
@media(max-width:700px){.cc-personen-raster{grid-template-columns:1fr}}
.cc-person-bild img{aspect-ratio:4/3;object-fit:cover;width:100%}
.cc-person-text{margin-top:18px;font-size:16px;max-width:48ch}
.cc-person-text strong{font-weight:600}
.cc-personen-text{margin-top:32px;max-width:62ch}
.cc-warum-liste{margin-top:clamp(48px,7vw,96px)}
.cc-haken{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;max-width:52ch}
.cc-haken li{position:relative;padding-left:30px;font-size:16px;line-height:1.5}
.cc-haken li::before{content:"";position:absolute;left:0;top:8px;width:14px;height:8px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg)}
.cc-warum-schluss .cc-akzent{margin-top:0}
@media(max-width:800px){.cc-warum-schluss .cc-akzent{margin-top:32px}}

/* Zusammenarbeit */
.cc-zusammen{text-align:center}
.cc-zusammen-titel{font-size:clamp(32px,4.6vw,58px)}
.cc-zusammen-text{margin:24px auto 0;max-width:58ch;font-size:clamp(16px,1.3vw,18px)}
.cc-zusammen .cc-btn{margin-top:36px}

/* Shop, drei Kacheln */
.cc-produkte-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.cc-produkte-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.cc-produkte-3{grid-template-columns:1fr}}
.cc-kz .cc-text{margin-top:16px}

/* Wissen */
.cc-wissen .cc-beitraege{margin-top:0}
.cc-wissen .cc-beitrag-titel{font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.15;margin-top:14px}
.cc-wissen .cc-beitrag p{color:var(--stein);font-size:15px;margin-top:10px}
.cc-wissen .cc-beitrag .cc-link{margin-top:14px;align-self:flex-start}
.cc-wissen .cc-beitrag-bild img{aspect-ratio:3/2;object-fit:cover;width:100%}

/* CTA mit Text */
.cc-cta-text{margin:26px auto 0;max-width:58ch;opacity:.85}

/* =====================================================================
   AW (Aenderungsprotokoll 07.10.2026)
   ===================================================================== */
/* Manifest: Fliesstext mit Bild rechts am Desktop, mobil wie bisher ohne Bild */
.cc-manifest .wrap{grid-template-columns:7fr 5fr;align-items:center}
.cc-manifest-akzent-text{margin-top:18px}
.cc-manifest-schluss-satz{margin-top:30px}
.cc-manifest-bild img{aspect-ratio:4/5;object-fit:cover;width:100%}
@media(max-width:900px){.cc-manifest .wrap{grid-template-columns:1fr}.cc-manifest-bild{display:none}.cc-manifest-akzent-text{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3vw,40px);line-height:1.15;max-width:22ch;text-wrap:balance;margin-top:36px;padding-top:26px;border-top:1.5px solid rgba(239,228,207,.5)}.cc-manifest-schluss-satz{font-family:var(--sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;margin-top:22px}}
/* Nutzen-Kacheln: Lead, Absaetze, als Link */
a.cc-nutzen-karte{color:inherit;text-decoration:none;transition:background .25s,border-color .25s}
a.cc-nutzen-karte:hover{background:rgba(239,228,207,.12);border-color:rgba(239,228,207,.45)}
.cc-nutzen-lead{font-weight:600;font-size:16px;line-height:1.4}
.cc-nutzen-karte p+p{margin-top:0}
.cc-nutzen-link{margin-top:auto;padding-top:10px;align-self:flex-start;color:var(--creme);border-color:var(--creme)}
/* Warum: Perspektiven als Text */
.cc-personen-prosa{align-items:start}
.cc-personen-lead{margin-top:0}
.cc-personen-prosa .cc-text:first-child{margin-top:0}
/* Shop: Kategorienleiste im Kopf */
.cc-kategorien-kopf{margin:28px 0 8px}
.cc-kopf .cc-lead{margin-top:24px}
/* Kontakt: Logo in der rechten Spalte */
.cc-kontakt-logo{width:200px;margin-bottom:24px;color:var(--tinte)}
.cc-kontakt-logo svg{width:100%;height:auto;fill:currentColor}
/* Referenzen und andere Textbaender: zwei Bilder mobil mit Luft (Wunsch 32) */
@media(max-width:800px){.cc-bildgruppe{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.cc-bg2{margin-bottom:0}.cc-bg1 img,.cc-bg2 img{aspect-ratio:3/2}.cc-vorlauf .cc-bildgruppe{margin-top:0}}
.cc-band[id]{scroll-margin-top:calc(var(--kopf-h) + 8px)}

/* AX: Navigation mit Haus-Symbol und Aufklappmenue «Angebot» */
.hdr-nav-link.ist-haus{display:inline-flex;align-items:center;padding:4px 0}
.hdr-haus{display:block}
.hdr-nav-item{position:relative}
.hdr-nav-link{display:inline-flex;align-items:center;gap:6px}
.hdr-pfeil{opacity:.6;transition:transform .2s}
.hdr-nav-item.hat-kinder:hover .hdr-pfeil,.hdr-nav-item.hat-kinder:focus-within .hdr-pfeil{transform:rotate(180deg)}
.hdr-sub{position:absolute;left:-18px;top:100%;min-width:240px;padding:14px 0;margin:0;list-style:none;background:#fff;box-shadow:0 10px 30px rgba(43,42,40,.12);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;z-index:50}
.hdr-sub::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.hdr-nav-item.hat-kinder:hover .hdr-sub,.hdr-nav-item.hat-kinder:focus-within .hdr-sub{opacity:1;visibility:visible;transform:none}
.hdr-sub-link{display:block;padding:9px 22px;font-size:14px;letter-spacing:.02em;color:var(--tinte);white-space:nowrap}
.hdr-sub-link:hover,.hdr-sub-link[aria-current]{background:var(--creme)}
.js body.is-home:not(.menu-open) .cc-kopfzeile:not(.gescrollt) .hdr-sub-link{color:var(--tinte)}
@media(max-width:1000px){
  .mm-sub{list-style:none;margin:0;padding:4px 0 10px 18px;border-bottom:1px solid var(--linie)}
  .mm-sub-link{display:block;padding:9px 0;font-size:17px;color:var(--stein)}
  .mm-item:has(.mm-sub) .mm-main{border-bottom:0}
}

/* BB: Newsletter-Haken im Kontaktformular (gleiche Form wie .gd-haken an der Kasse) */
.cc-form-haken{display:flex;gap:12px;align-items:flex-start;font-size:15px;margin:4px 0 8px;cursor:pointer}
.cc-form-haken input{margin-top:4px;flex:none;width:18px;height:18px;accent-color:var(--anthrazit)}

/* BD: Produktbewertungen (Engine 1.6.12) auf der Produktseite und die Bewertungsseite */
.gd-bewertungen .wrap{max-width:860px}
.gd-bewertungen-kopf{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:28px}
.gd-bewertungen-titel{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:clamp(26px,3vw,36px);margin:0}
.gd-bewertungen-schnitt{display:flex;align-items:center;gap:10px;margin:0;font-size:15px;color:var(--stein)}
.gd-bewertungen-schnitt strong{color:var(--anthrazit);font-size:18px}
.gd-sterne{display:inline-flex;gap:2px;color:#C8A24B;line-height:0}
.gd-bewertungen-liste{list-style:none;margin:0;padding:0}
.gd-bewertung{padding:22px 0;border-top:1px solid rgba(43,42,40,.12)}
.gd-bewertung:last-child{border-bottom:1px solid rgba(43,42,40,.12)}
.gd-bewertung-kopf{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:8px}
.gd-bewertung-name{font-weight:600}
.gd-bewertung-meta{font-size:13px;color:var(--stein)}
.gd-bewertung-text{margin:0;font-size:16px;line-height:1.6;max-width:68ch}
.gd-bewertung-antwort{margin:12px 0 0;padding:12px 16px;background:var(--creme,#F3EDE0);border-radius:8px;font-size:15px;max-width:68ch}
.gd-shop-bewerten .gd-bewerten-produkt{background:#fff}
.gd-shop-bewerten label{display:block;margin:10px 0}
.gd-shop-bewerten input[type=text],.gd-shop-bewerten textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid rgba(43,42,40,.25);border-radius:6px;font:inherit}
.gd-shop-bewerten .gd-form-ok{background:#E7F2E6;color:#1E5631;padding:14px 16px;border-radius:8px}
