/* =====================================================================
   GrowCologne – Bausteine (B01–B20 aus docs/relaunch/13-bausteinmatrix.md)
   Quelle: content/pages/dummies/v4-klar-mit-stickern.html, mechanisch portiert:
   Klasse `foo` → `gc-foo` (auch Zustands- und Hilfsklassen), Variable `--foo` → `--gc-foo`
   (auch die lokalen: --gc-bs, --gc-rot, --gc-aw, --gc-x, --gc-y …), Keyframes `foo` → `gc-foo`.
   Keine ID-Selektoren. Woo (B21–B25) kommt in woo.css (P7).

   Präfix `html:root body` vor jeder Regel: siehe Kopf von layout.css (Spezifität gegen
   Elementor-Kit und Healfio, ohne `!important`).
   Zustandsklassen am <body> (setzt das MU-Skript): gc-shop-open, gc-shop-closed, gc-is-holiday,
   gc-is-hint → Regeln `html:root body.gc-shop-open …`.
   Doku-Namen als Alias neben dem mechanischen Namen: `:is(.gc-hdr,.gc-header)`, gc-footer,
   gc-chip, gc-h1-sticker, gc-photo-sticker, gc-shelf, gc-visit, gc-brand, gc-cc, gc-btn--primary (und die übrigen Varianten).
   `:where(:not(.elementor-widget))` an den Button-Klassen (.gc-btn, .gc-btn-…) und an .gc-nav: Steht die Klasse an einem Elementor-Widget,
   gilt nicht diese Regel (sie träfe den Wrapper), sondern die Brücke am Dateiende.
   Aufbau: 1 Reset im Geltungsbereich · 2 Bausteine in Dummy-Reihenfolge · 3 Sticker-Schicht ·
   4 Ergänzungen · 5 Elementor-Brücke (Widgets).
   ===================================================================== */

/* =====================================================================
   1 · Reset im Geltungsbereich
   Der Dummy setzt Grundregeln global (h1–h3, p, ul, a, img, button …). Hier gelten sie nur für
   handgebautes gc-Markup (Shortcodes, HTML-Widgets): jedes Element mit gc-Klasse, das KEIN
   Elementor-Element ist, samt Nachfahren. Elementor-Container/-Widgets mit gc-Klasse behalten
   ihre eigenen Abstände (Text-Editor-Absätze usw.).
   Spezifität (0,1,3): über Healfio/Bootstrap (`p`, `h2`, `ul ul`, `a`, `blockquote:before`) und
   über dem Kit (`.elementor-kit-N a`, `… h2`, `… button`), unter jeder Baustein-Regel (ab 0,2,2).
   ===================================================================== */
/* body und html sind ausgenommen: sie tragen Zustandsklassen (gc-shop-open, gc-is-hint, gc-menu-lock) und
   würden sonst die ganze Seite in den Reset ziehen (in echtem WordPress aufgefallen, P4). */
html:root body :is(h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure,blockquote,address):where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){margin:0}
/* Healfio/Bootstrap/Kit geben Überschriften Größe, Gewicht, Zeilenhöhe, Laufweite und Farbe → erben */
html:root body :is(h1,h2,h3,h4,h5,h6):where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){font:inherit;letter-spacing:inherit;color:inherit;text-transform:none}
html:root body :is(ul,ol):where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){padding:0;list-style:none}
html:root body address:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){font-style:normal;line-height:inherit}
/* Healfio: blockquote mit Rahmen, Polster, Kursiv und Anführungs-Icon (blockquote:before) */
html:root body blockquote:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){position:static;padding:0;border:0;border-radius:0;background:none;font-style:normal;font-weight:inherit}
html:root body blockquote:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *)::before{content:none}
/* Healfio: `b,strong{font-weight:800}` → Browser-Standard wie im Dummy */
html:root body :is(b,strong):where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){font-weight:bolder}
html:root body :is(img,svg):where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){display:block;max-width:100%}
html:root body img:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){height:auto}
/* Links: Farbe erben, unterstrichen wie im Dummy (Bootstrap nimmt die Unterstreichung weg, Healfio animiert `all`) */
html:root body a:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){color:inherit;text-decoration:underline;text-underline-offset:.18em;transition:none}
html:root body a[href^="tel:"]:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){white-space:nowrap}
/* Buttons: Kit-Buttonstil (Fläche, Polster, Pille, Schrift) und Healfio-Outline neutralisieren; Polster = Browser-Standard wie im Dummy */
html:root body button:where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *){margin:0;padding:1px 6px;border:0;border-radius:0;background:none;box-shadow:none;font:inherit;letter-spacing:inherit;text-transform:none;color:inherit;cursor:pointer}
/* Fokus (Healfio: `:focus{outline:none}`) */
html:root body :where([class*="gc-"]:not(.elementor-element,body,html),[class*="gc-"]:not(.elementor-element,body,html) *):focus-visible{outline:3px solid var(--gc-nacht);outline-offset:3px}
html:root body [class*="gc-"][tabindex="-1"]:focus{outline:none}
/* Fokus in Elementor-Widgets mit gc-Klasse (der Reset oben gilt nur für handgebautes Markup): Links in
   Text-Widgets, Button-Widgets, Fragen im Akkordeon – auf Startseite, Abschnitten und allen Inhaltsseiten. */
html:root body :is(.gc-lead,.gc-copy,.gc-faq,.gc-page-h1,.gc-post-meta) a:focus-visible,
html:root body :is(.gc-btn,.gc-btn-primary,.gc-btn-ghost,.gc-btn-neon,.gc-btn-light,.gc-btn-line,.gc-btn-deep) .elementor-button:focus-visible,
html:root body .gc-faq .e-n-accordion-item-title:focus-visible{outline:3px solid var(--gc-nacht);outline-offset:3px}
html:root body .gc-dark :is(.gc-lead,.gc-copy) a:focus-visible,
html:root body .gc-dark :is(.gc-btn,.gc-btn-primary,.gc-btn-ghost,.gc-btn-neon,.gc-btn-light,.gc-btn-line,.gc-btn-deep) .elementor-button:focus-visible,
html:root body .gc-faq .e-n-accordion-item>.e-con a:focus-visible{outline-color:var(--gc-neon)}

/* Grundschrift: im Dummy kommt sie vom <body>. Hier an den Wurzeln der Bausteine, damit ein Baustein auch in
   einem fremden Container stimmt (Healfio-Body: Inter, Laufweite -.011em). :where() = keine Zusatz-Spezifität. */
html:root body :where(.gc-topbar,.gc-hdr,.gc-header,.gc-menu,.gc-hero,.gc-sec,.gc-tape-wrap,.gc-cc-strip,.gc-cc,.gc-ftr,.gc-footer,.gc-actionbar,
	.gc-lead,.gc-btn,.gc-txt-link,.gc-tag,.gc-slap,.gc-arrow,.gc-cc-label,.gc-mega,.gc-menu-head,.gc-cta-row,.gc-badge,.gc-live,.gc-hdr-status,.gc-chip,.gc-hero-status,.gc-menu-body,.gc-menu-live,.gc-menu-list,.gc-menu-cats,.gc-mcard,
	.gc-bento,.gc-tile,.gc-legend,.gc-drops,.gc-shelf,.gc-drop-list,.gc-packets-fig,.gc-packets,.gc-brand-wall,.gc-brand,.gc-partners,.gc-otone,.gc-quotes,.gc-quote,
	.gc-steps,.gc-step,.gc-hours-card,.gc-hours-list,.gc-week,.gc-addr,.gc-ways,.gc-wayfind,.gc-faq-list,.gc-faq-item,.gc-online-in,.gc-ftr-grid,.gc-legal,.gc-ps,.gc-photo-sticker){font:400 var(--gc-fs-body)/1.6 var(--gc-sans);letter-spacing:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
html:root body :where(.gc-hdr,.gc-header,.gc-hero,.gc-sec,.gc-actionbar){color:var(--gc-ink)}
/* Dummy-Seitenhintergrund (Mint) kommt in WordPress aus dem Kit (body_background_color). */

/* Klasse am <html>, solange ein Vollbild-Menü offen ist (nur für das Dummy-Menü; Elementors Off-Canvas sperrt selbst) */
html:root.gc-menu-lock{overflow:hidden}

/* =====================================================================
   2 · Bausteine (Reihenfolge wie im Dummy)
   ===================================================================== */
html:root body .gc-dark :focus-visible,html:root body .gc-dark:focus-visible{outline-color:var(--gc-neon)}
html:root body .gc-topbar :focus-visible,
html:root body .gc-actionbar :focus-visible,
html:root body .gc-faq-a :focus-visible,
html:root body .gc-skip:focus-visible,
html:root body .gc-otone :focus-visible{outline-color:var(--gc-neon)}
html:root body .gc-skip{position:absolute;left:12px;top:-80px;z-index:300;background:var(--gc-nacht);color:#fff;padding:12px 18px;border-radius:var(--gc-r-s);font-weight:700;text-decoration:none}
html:root body .gc-skip:focus{top:12px}
/* ---------- Typo ---------- */
html:root body .gc-h2{font-weight:800;font-size:var(--gc-fs-h2);line-height:1.02;letter-spacing:-.032em;text-wrap:balance}
html:root body .gc-h2 .gc-l{display:block}
html:root body :is(.gc-h1,.gc-h1-sticker),
html:root body .gc-h2,
html:root body .gc-h-online,
html:root body .gc-t-termin h3,
html:root body .gc-ftr-claim{word-spacing:.06em}
html:root body .gc-lead{font-size:var(--gc-fs-lead);line-height:1.55;font-weight:500;max-width:52ch;text-wrap:pretty}
html:root body .gc-dark{color:#fff}
html:root body .gc-dark .gc-lead{color:var(--gc-on-dark)}
/* ---------- Buttons ---------- */
html:root body .gc-btn:where(:not(.elementor-widget)){display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:0 1.35em;border-radius:var(--gc-r-s);border:2px solid transparent;font:700 1rem/1.15 var(--gc-sans);text-decoration:none;cursor:pointer;white-space:normal;text-align:center;transition:transform .18s var(--gc-ease),box-shadow .18s var(--gc-ease),background-color .18s}
html:root body .gc-btn:where(:not(.elementor-widget)) svg{width:20px;height:20px;flex:none}
html:root body .gc-btn:where(:not(.elementor-widget)):hover{transform:translateY(-2px);box-shadow:0 12px 20px -12px rgba(7,59,46,.6)}
html:root body :is(.gc-btn-primary,.gc-btn--primary):where(:not(.elementor-widget)){background:var(--gc-gruen);color:#fff}
html:root body :is(.gc-btn-primary,.gc-btn--primary):where(:not(.elementor-widget)):hover{background:var(--gc-gruen-d)}
html:root body :is(.gc-btn-ghost,.gc-btn--ghost):where(:not(.elementor-widget)){background:#fff;color:var(--gc-gruen);border-color:var(--gc-gruen)}
html:root body :is(.gc-btn-neon,.gc-btn--neon):where(:not(.elementor-widget)){background:var(--gc-neon);color:var(--gc-nacht)}
html:root body :is(.gc-btn-light,.gc-btn--light):where(:not(.elementor-widget)){background:#fff;color:var(--gc-nacht)}
html:root body :is(.gc-btn-line,.gc-btn--line):where(:not(.elementor-widget)){background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
html:root body :is(.gc-btn-deep,.gc-btn--deep):where(:not(.elementor-widget)){background:var(--gc-nacht);color:#fff}
html:root body .gc-btn:where(:not(.elementor-widget)) small{font-weight:500;font-size:.8125rem}
html:root body .gc-cta-row{display:flex;flex-wrap:wrap;gap:12px}
html:root body .gc-txt-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
@media (min-width:481px){
	html:root body .gc-btn:where(:not(.elementor-widget)){white-space:nowrap}
}
/* ---------- Signatur-Sticker (nur zwei): Status-Pinsel + Hof-Pfeil ---------- */
html:root body .gc-badge{position:relative;display:grid;place-items:center;width:var(--gc-bs,170px);aspect-ratio:1;text-align:center;color:#fff;transform:rotate(var(--gc-rot,-3deg));filter:drop-shadow(0 10px 12px rgba(7,59,46,.3))}
html:root body .gc-badge>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
html:root body .gc-b-rim{fill:#fff;stroke:#fff;stroke-width:14;stroke-linejoin:round}
html:root body .gc-b-fill{fill:var(--gc-b-bg,var(--gc-gruen))}
html:root body .gc-badge-txt{position:relative;display:grid;justify-items:center;padding:0 13%;color:inherit}
html:root body .gc-badge-big{font:400 calc(var(--gc-bs,170px)*.25)/.92 var(--gc-hand);letter-spacing:.005em}
html:root body .gc-badge-small{font:400 max(12px,calc(var(--gc-bs,170px)*.105))/1.1 var(--gc-hand);text-wrap:balance}
html:root body .gc-badge-big.gc-is-long{font-size:calc(var(--gc-bs,170px)*.175)}
html:root body .gc-badge.gc-is-closed{--gc-b-bg:var(--gc-beige);color:var(--gc-nacht)}
html:root body .gc-live{position:relative}
/* Feiertags-Streifen: flaches Label unter dem Status-Sticker (gerade, Poppins) */
html:root body .gc-holtape{position:absolute;left:50%;top:88%;z-index:2;display:none;padding:6px 12px;border-radius:var(--gc-r-xs);background:#FFFDF6;color:var(--gc-nacht);font:700 .875rem/1.15 var(--gc-sans);white-space:nowrap;transform:translateX(-50%);box-shadow:0 8px 14px -8px rgba(7,59,46,.5)}
html:root body.gc-is-holiday .gc-holtape{display:block}
html:root body .gc-arrow{position:relative;display:inline-grid;place-items:center;width:var(--gc-aw,200px);height:calc(var(--gc-aw,200px)*.34);color:var(--gc-nacht);filter:drop-shadow(0 8px 10px rgba(7,59,46,.32));transform:rotate(var(--gc-rot,-2deg))}
html:root body .gc-arrow>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
html:root body .gc-a-rim{fill:#fff;stroke:#fff;stroke-width:10;stroke-linejoin:round}
html:root body .gc-a-fill{fill:var(--gc-neon)}
html:root body .gc-arrow span{position:relative;padding-left:14%;font:400 calc(var(--gc-aw,200px)*.108)/1 var(--gc-hand);white-space:nowrap}
/* Tags (flach): Kennzeichnung im Laden / Laden & online / Online */
html:root body .gc-tag{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 10px;border-radius:var(--gc-r-xs);font:700 .8125rem/1.1 var(--gc-sans);white-space:nowrap}
html:root body .gc-tag::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:currentColor}
html:root body .gc-tag-laden{background:var(--gc-salbei);color:var(--gc-nacht)}
html:root body .gc-tag-both{background:var(--gc-nacht);color:#fff}
html:root body .gc-tag-both::before{background:var(--gc-neon)}
html:root body .gc-tag-web{background:var(--gc-beige);color:var(--gc-nacht)}
/* Status-Punkt (rund): Ladenstatus kommt nur von body.shop-open */
html:root body .gc-dot{width:10px;height:10px;border-radius:50%;flex:none;background:#B9A57E;box-shadow:0 0 0 3px rgba(185,165,126,.25)}
html:root body.gc-shop-open .gc-dot{background:var(--gc-gruen);box-shadow:0 0 0 3px rgba(1,120,92,.22)}
html:root body.gc-shop-open .gc-dark .gc-dot,html:root body.gc-shop-open .gc-topbar .gc-dot{background:var(--gc-neon);box-shadow:0 0 0 3px rgba(94,234,212,.28)}
html:root body.gc-shop-open .gc-hours-card .gc-dot{background:var(--gc-gruen);box-shadow:0 0 0 3px rgba(1,120,92,.22)}
@media (prefers-reduced-motion:no-preference){
	html:root body.gc-shop-open .gc-dot{animation:gc-pulse 1.8s ease-out .6s 2}
}
@keyframes gc-pulse{0%{box-shadow:0 0 0 0 rgba(94,234,212,.9)}100%{box-shadow:0 0 0 14px rgba(94,234,212,0)}}
/* Skyline: SVG im 2000er-Rahmen, Sockel läuft als Fläche voll durch */
html:root body .gc-sky-wrap{position:relative;z-index:3;pointer-events:none;--gc-sky-c:var(--gc-nacht);background:linear-gradient(to bottom,transparent 86.4%,var(--gc-sky-c) 86.4%)}
html:root body .gc-skyline{display:block;width:100%;max-width:var(--gc-frame);height:var(--gc-sky-h);margin-inline:auto;color:var(--gc-sky-c)}
@media (min-width:2001px){
	html:root body .gc-sky-wrap .gc-skyline{-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
}
/* ---------- Topbar ---------- */
html:root body .gc-topbar{background:var(--gc-nacht);color:#fff;font-size:.875rem;line-height:1.35}
html:root body .gc-topbar-in{display:flex;align-items:center;justify-content:center;gap:8px 12px;min-height:var(--gc-tb);padding-block:5px;text-align:center}
html:root body .gc-tb-neu{flex:none;padding:3px 7px;border-radius:var(--gc-r-xs);background:var(--gc-neon);color:var(--gc-nacht);font:800 .8125rem/1.15 var(--gc-sans)}
html:root body .gc-topbar .gc-dot{display:none}
html:root body .gc-topbar.gc-is-live .gc-tb-neu{display:none}
html:root body .gc-topbar.gc-is-live .gc-dot{display:block}
html:root body .gc-tb-text{font-weight:500}
html:root body .gc-tb-link{display:none;flex:none;align-items:center;min-height:44px;margin-block:-6px;color:#fff;font-weight:700}
@media (min-width:1024px){
	html:root body .gc-topbar{font-size:.9375rem}
	html:root body .gc-tb-link{display:inline-flex}
}
/* ---------- Header (Leiste volle Breite, Inhalt im 1440er-Container) ---------- */
html:root body :is(.gc-hdr,.gc-header){position:sticky;top:0;z-index:60}
html:root body :is(.gc-hdr,.gc-header)::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(241,248,249,.95);-webkit-backdrop-filter:saturate(1.3) blur(10px);backdrop-filter:saturate(1.3) blur(10px);border-bottom:1px solid var(--gc-line);transition:box-shadow .2s}
html:root body :is(.gc-hdr,.gc-header).gc-is-scrolled::before{box-shadow:0 10px 24px -18px rgba(7,59,46,.45)}
html:root body :is(.gc-hdr,.gc-header)::after{content:"";position:fixed;inset:0;z-index:-2;background:rgba(4,30,24,.55);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s}
html:root body :is(.gc-hdr,.gc-header).gc-is-mega::after{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .3s ease,visibility 0s}
html:root body .gc-hdr-in{display:flex;align-items:center;gap:12px;min-height:var(--gc-hdr)}
html:root body .gc-logo{display:flex;align-items:center;min-height:48px;flex:none;margin-right:auto}
html:root body .gc-logo img{height:34px;width:auto}
html:root body .gc-nav:where(:not(.elementor-widget)){display:flex;align-items:center;gap:2px}
html:root body .gc-nav-link,html:root body :is(.gc-hdr-status,.gc-chip),html:root body .gc-hdr-route{display:none}
html:root body .gc-menu-toggle{position:relative;display:inline-flex;align-items:center;white-space:nowrap;flex:none;gap:10px;min-height:48px;padding:0 16px 0 14px;border:0;border-radius:var(--gc-r-s);background:var(--gc-gruen);color:#fff;font-weight:700;font-size:.96875rem;cursor:pointer;transition:background-color .15s,color .15s}
html:root body .gc-menu-toggle:hover{background:var(--gc-gruen-d)}
html:root body .gc-mt-desk,html:root body .gc-mt-chev{display:none}
html:root body .gc-mt-burger{display:inline-grid;gap:4px}
html:root body .gc-mt-burger i{display:block;width:18px;height:2px;background:currentColor}
html:root body .gc-mt-chev{width:18px;height:18px;transition:transform .25s var(--gc-ease)}
@media (min-width:721px){
	html:root body .gc-logo img{height:38px}
}
/* ---------- Menü, Basis = Mobil-/Tablet-Dialog (Vollbild) ---------- */
html:root body .gc-menu{--gc-crown:max(15vw,72px);position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;scroll-padding-top:86px;scroll-padding-bottom:calc(150px + var(--gc-crown));background:var(--gc-nacht);color:#fff;visibility:hidden;clip-path:circle(0 at var(--gc-cx,92%) var(--gc-cy,40px));transition:clip-path .5s var(--gc-ease),visibility 0s linear .5s;box-shadow:inset 0 -2px 0 #0E5644}
html:root body .gc-menu.gc-is-shown{visibility:visible;clip-path:circle(160% at var(--gc-cx,92%) var(--gc-cy,40px));transition:clip-path .5s var(--gc-ease),visibility 0s}
html:root body .gc-menu:not(.gc-is-shown){pointer-events:none}
html:root body .gc-menu-fade{display:none}
html:root body .gc-menu-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:12px;padding:10px var(--gc-gut);background:var(--gc-nacht)}
html:root body .gc-logo-sticker{display:inline-flex;align-items:center;padding:8px 14px;border-radius:var(--gc-r-m);background:#fff}
html:root body .gc-logo-sticker img{height:44px;width:auto}
html:root body .gc-menu-head .gc-logo-sticker{flex:none;padding:6px 10px;border-radius:var(--gc-r-s)}
html:root body .gc-menu-head .gc-logo-sticker img{height:28px}
html:root body .gc-menu-title{flex:1;min-width:0;font-weight:700;font-size:1.0625rem;line-height:1.2;color:var(--gc-neon)}
html:root body .gc-menu-close{display:grid;place-items:center;flex:none;width:52px;height:52px;border:0;border-radius:var(--gc-r-s);background:var(--gc-neon);color:var(--gc-nacht);cursor:pointer}
html:root body .gc-menu-close svg{width:22px;height:22px}
html:root body .gc-menu-body{flex:1;display:flex;flex-direction:column;align-items:stretch;gap:16px;width:100%;padding:4px var(--gc-gut) 0}
html:root body .gc-menu-main{order:2;display:grid;gap:10px;padding-bottom:var(--gc-crown)}
html:root body .gc-menu-label,
html:root body .gc-menu-cats,
html:root body .gc-menu-foot,
html:root body .gc-ml-ctas,
html:root body .gc-ml-pills{display:none}
html:root body .gc-menu-live{order:1;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:16px;row-gap:4px;padding:14px 16px;border-radius:var(--gc-r-l);background:var(--gc-nacht-2)}
html:root body .gc-menu-live .gc-live{--gc-bs:92px;grid-row:span 2;margin:0;position:static}
html:root body .gc-menu-live .gc-holtape{left:12px;top:auto;bottom:-13px;transform:none}
html:root body.gc-is-holiday .gc-menu-live{padding-bottom:26px;margin-bottom:10px}
html:root body .gc-ml-status{display:flex;align-items:flex-start;gap:10px;font-weight:700;font-size:.96875rem;line-height:1.35;text-wrap:balance}
html:root body .gc-ml-status .gc-dot{margin-top:6px}
html:root body .gc-ml-addr{color:var(--gc-on-dark-2);font-size:.875rem;line-height:1.5}
html:root body .gc-menu-list{display:grid}
html:root body .gc-menu-list>li{border-bottom:1px solid var(--gc-line-d)}
html:root body .gc-ml-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;grid-template-areas:"thumb name pm" "thumb sub pm";column-gap:14px;align-items:center;width:100%;min-height:76px;padding:10px 0;border:0;background:none;color:#fff;text-align:left;text-decoration:none;cursor:pointer}
html:root body .gc-ml-thumb{grid-area:thumb;width:52px;height:52px;border-radius:var(--gc-r-s);overflow:hidden;background:var(--gc-gruen);display:grid;place-items:center;color:var(--gc-neon)}
html:root body .gc-ml-thumb img{width:100%;height:100%;object-fit:cover}
html:root body .gc-ml-thumb svg{width:24px;height:24px}
html:root body .gc-ml-name{grid-area:name;font-weight:800;font-size:clamp(1.5rem,1.2rem + 1.6vw,2rem);line-height:1.05;letter-spacing:-.03em}
html:root body .gc-ml-sub{grid-area:sub;margin-top:3px;font-size:.9375rem;line-height:1.35;color:var(--gc-on-dark-2);text-wrap:balance}
html:root body .gc-ml-pm{grid-area:pm;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--gc-r-s);box-shadow:inset 0 0 0 2px var(--gc-neon);color:var(--gc-neon);transition:transform .3s var(--gc-ease)}
html:root body .gc-ml-pm svg{width:20px;height:20px}
html:root body .gc-ml-item[aria-expanded="true"] .gc-ml-pm{transform:rotate(180deg)}
html:root body .gc-ml-item:hover .gc-ml-name,html:root body .gc-ml-item:focus-visible .gc-ml-name{color:var(--gc-neon)}
html:root body .gc-ml-chips{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 16px}
html:root body .gc-ml-chips a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:var(--gc-r-s);background:rgba(255,255,255,.1);color:#fff;font-weight:700;font-size:.9375rem;text-decoration:none}
html:root body .gc-ml-chips a:hover{background:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-menu-more{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px}
html:root body .gc-menu-more a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:var(--gc-r-s);box-shadow:inset 0 0 0 2px rgba(205,239,224,.45);color:#fff;font-weight:700;font-size:.9375rem;text-decoration:none}
html:root body .gc-menu-more a:hover{background:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-menu-ctas{order:4;position:sticky;bottom:-1px;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:auto calc(-1*var(--gc-gut)) 0;padding:12px var(--gc-gut) calc(13px + env(safe-area-inset-bottom));background:#0E5644}
html:root body .gc-menu-ctas::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:calc(var(--gc-crown) + 28px);background:linear-gradient(rgba(7,59,46,0),var(--gc-nacht) 32%);pointer-events:none}
html:root body .gc-sky-menu{position:absolute;left:0;right:0;bottom:calc(100% - 1px);width:100%;height:var(--gc-crown);max-width:none;color:#0E5644}
html:root body .gc-mc-status{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-weight:700;font-size:.9375rem;line-height:1.3;text-wrap:balance}
html:root body .gc-menu-ctas .gc-btn:where(:not(.elementor-widget)){min-height:52px;padding:0 .6em;white-space:nowrap}
@media (min-width:721px){
	html:root body .gc-ml-chips{padding-left:66px}
}
/* Fünf große Einträge plus „Wissen“ (17 §3.2): auf Handys bis 900 px Höhe engere Zeilen, damit „Wissen“
   über der Skyline der Fußleiste steht und nicht dahinter (QA S7: bei 390×844 verdeckt). */
@media (max-height:900px) and (max-width:1023px){
	html:root body .gc-ml-item{min-height:66px;padding:7px 0}
}
@media (max-height:639px) and (max-width:1023px){
	html:root body .gc-menu{--gc-crown:0px}
	html:root body .gc-sky-menu{display:none}
	html:root body .gc-menu-ctas::before{background:linear-gradient(rgba(7,59,46,0),var(--gc-nacht))}
}
@media (prefers-reduced-motion:no-preference){
	html:root body .gc-menu.gc-is-shown .gc-menu-list>li,html:root body .gc-menu.gc-is-shown .gc-menu-live{animation:gc-linkIn .4s var(--gc-ease) backwards}
	html:root body .gc-menu.gc-is-shown .gc-menu-list>li:nth-child(2){animation-delay:.04s}
	html:root body .gc-menu.gc-is-shown .gc-menu-list>li:nth-child(3){animation-delay:.08s}
	html:root body .gc-menu.gc-is-shown .gc-menu-list>li:nth-child(4){animation-delay:.12s}
	html:root body .gc-menu.gc-is-shown .gc-menu-list>li:nth-child(5){animation-delay:.16s}
}
@keyframes gc-linkIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
/* Grafik-Kacheln (Samen, Onlineshop) im Mega-Menü */
html:root body .gc-graphic{display:grid;place-items:center;align-content:center;gap:2px;width:100%;height:100%;background:var(--gc-nacht);color:var(--gc-neon);text-align:center;overflow:hidden}
html:root body .gc-graphic b{font-weight:900;font-size:1.8rem;line-height:1;letter-spacing:-.04em}
html:root body .gc-graphic span{font-weight:700;font-size:.9375rem;line-height:1.15;color:#fff}
html:root body .gc-graphic.gc-shop{gap:6px;background:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-graphic.gc-shop svg{width:44px;height:44px}
html:root body .gc-graphic.gc-shop span{color:var(--gc-nacht)}
/* ---------- Desktop ≥ 1024: Navigation + Mega-Menü ---------- */
@media (min-width:1024px){
	html:root body .gc-logo img{height:34px}
	html:root body .gc-hdr-in{gap:6px}
	html:root body .gc-nav-link{display:inline-flex;align-items:center;white-space:nowrap;min-height:44px;padding:0 8px;border-radius:var(--gc-r-s);font-weight:600;font-size:.9375rem;text-decoration:none;color:var(--gc-ink);transition:background-color .15s}
	html:root body .gc-nav-link:hover{background:var(--gc-salbei)}
	html:root body .gc-menu-toggle{min-height:44px;gap:6px;padding:0 9px 0 12px;background:transparent;color:var(--gc-ink);font-weight:700;font-size:.9375rem}
	html:root body .gc-menu-toggle:hover{background:var(--gc-salbei)}
	html:root body .gc-menu-toggle[aria-expanded="true"]{background:var(--gc-nacht);color:#fff}
	html:root body :is(.gc-hdr,.gc-header).gc-is-mega .gc-menu-toggle::after{content:"";position:absolute;left:-2px;right:-2px;top:0;bottom:calc(-1*((var(--gc-hdr) - 44px)/2 + 2px))}
	html:root body .gc-mt-desk{display:inline}
	html:root body .gc-mt-chev{display:block}
	html:root body .gc-mt-mob,html:root body .gc-mt-burger{display:none}
	html:root body .gc-menu-toggle[aria-expanded="true"] .gc-mt-chev{transform:rotate(180deg)}
	html:root body :is(.gc-hdr-status,.gc-chip){display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-left:4px;padding:0 12px 0 11px;border-radius:var(--gc-r-s);background:#fff;border:1.5px solid var(--gc-salbei);font-weight:700;font-size:.8125rem;text-decoration:none;white-space:nowrap}
	html:root body :is(.gc-hdr-status,.gc-chip):hover{border-color:var(--gc-gruen)}
	/* Breite des Platzhalters („Mo–Sa 12–20 Uhr“) halten: Der Live-Text ist meist kürzer, die Leiste soll dabei nicht rücken (CLS). */
	html:root body .gc-hdr-status{min-width:11.9em;justify-content:center}
	html:root body .gc-hdr-route{display:inline-flex;min-height:46px;padding:0 .95em;margin-left:2px}
	html:root body .gc-hdr-route .gc-short{display:none}
	html:root body .gc-menu{position:absolute;inset:auto 0 auto 0;top:100%;z-index:5;display:block;max-height:calc(100vh - var(--gc-mtop,120px));max-height:calc(100dvh - var(--gc-mtop,120px));scroll-padding:0 0 64px;border-bottom:4px solid var(--gc-neon);clip-path:inset(0 0 100% 0);transition:clip-path .35s var(--gc-ease),visibility 0s linear .35s;box-shadow:0 40px 70px -30px rgba(4,30,24,.9)}
	html:root body .gc-menu.gc-is-shown{clip-path:inset(0 0 -80px 0);transition:clip-path .35s var(--gc-ease),visibility 0s}
	html:root body .gc-menu-fade{position:sticky;bottom:0;display:block;height:56px;margin-top:-56px;background:linear-gradient(rgba(7,59,46,0),var(--gc-nacht) 82%);pointer-events:none;opacity:0;transition:opacity .2s}
	html:root body .gc-menu.gc-can-scroll .gc-menu-fade{opacity:1}
	html:root body .gc-menu-head,
	html:root body .gc-menu-list,
	html:root body .gc-menu-more,
	html:root body .gc-menu-ctas{display:none}
	html:root body .gc-menu-body{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:20px var(--gc-cgap);align-items:start;max-width:var(--gc-wrap);margin:0 auto;padding:28px var(--gc-gut) 30px}
	html:root body .gc-menu-main{order:0;gap:16px;padding-bottom:0}
	html:root body .gc-menu-label{display:block;font-weight:700;font-size:1.0625rem;color:var(--gc-neon)}
	html:root body .gc-menu-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gc-gap)}
	/* Panel „Growshop Köln“: drei Karten statt acht */
	html:root body .gc-menu-cats-3{grid-template-columns:repeat(3,minmax(0,1fr))}
	html:root body .gc-mcard{display:grid;grid-template-rows:auto auto 1fr auto;gap:2px;height:100%;padding:6px 6px 12px;border-radius:var(--gc-r-m);background:#fff;color:var(--gc-nacht);text-decoration:none;transition:transform .2s var(--gc-ease),box-shadow .2s var(--gc-ease)}
	html:root body .gc-mcard:hover,html:root body .gc-mcard:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 3px var(--gc-neon)}
	html:root body .gc-mcard-img{display:block;aspect-ratio:16/9;border-radius:var(--gc-r-xs);overflow:hidden;background:var(--gc-nacht-2);margin-bottom:8px}
	html:root body .gc-mcard-img img{width:100%;height:100%;object-fit:cover}
	html:root body .gc-mcard-name{padding:0 6px;font-weight:800;font-size:1.0625rem;line-height:1.2;letter-spacing:-.015em}
	html:root body .gc-mcard-line{padding:0 6px;font-size:.8125rem;line-height:1.35;color:var(--gc-ink-2);text-wrap:balance}
	html:root body .gc-mcard .gc-tag{justify-self:start;margin:8px 6px 0;min-height:24px;font-size:.75rem;padding:0 8px}
	html:root body .gc-menu-foot{display:block;font-size:.9375rem;color:var(--gc-on-dark-2)}
	html:root body .gc-menu-foot b{color:#fff;font-weight:700}
	html:root body .gc-menu-live{order:0;display:grid;grid-template-columns:none;gap:12px;align-content:start;padding:18px 18px 20px}
	html:root body .gc-menu-live .gc-live{--gc-bs:100px;grid-row:auto;justify-self:start;margin:-2px 0 10px -2px;position:relative}
	html:root body .gc-menu-live .gc-holtape{left:50%;top:88%;bottom:auto;transform:translateX(-50%)}
	html:root body.gc-is-holiday .gc-menu-live{padding-bottom:20px;margin-bottom:0}
	html:root body .gc-ml-status{font-size:.9375rem}
	html:root body .gc-ml-addr{font-size:.9375rem}
	html:root body .gc-ml-ctas{display:grid;gap:10px;margin-top:4px}
	html:root body .gc-ml-ctas .gc-btn:where(:not(.elementor-widget)){width:100%;min-height:48px}
	html:root body .gc-ml-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
	html:root body .gc-ml-pills a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:var(--gc-r-s);background:rgba(255,255,255,.08);color:#fff;font-weight:600;font-size:.8125rem;text-decoration:none}
	html:root body .gc-ml-pills a:hover{background:var(--gc-neon);color:var(--gc-nacht)}
	@media (prefers-reduced-motion:no-preference){
		html:root body .gc-menu.gc-is-shown .gc-mcard{animation:gc-cardIn .35s var(--gc-ease) backwards}
		html:root body .gc-menu.gc-is-shown .gc-mcard-img img{animation:gc-lightOn .7s ease-out backwards}
		html:root body .gc-menu.gc-is-shown li:nth-child(2) .gc-mcard{animation-delay:.03s}
		html:root body .gc-menu.gc-is-shown li:nth-child(3) .gc-mcard{animation-delay:.06s}
		html:root body .gc-menu.gc-is-shown li:nth-child(4) .gc-mcard{animation-delay:.09s}
		html:root body .gc-menu.gc-is-shown li:nth-child(5) .gc-mcard{animation-delay:.12s}
		html:root body .gc-menu.gc-is-shown li:nth-child(6) .gc-mcard{animation-delay:.15s}
		html:root body .gc-menu.gc-is-shown li:nth-child(7) .gc-mcard{animation-delay:.18s}
		html:root body .gc-menu.gc-is-shown li:nth-child(8) .gc-mcard{animation-delay:.21s}
	}
}
@keyframes gc-cardIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes gc-lightOn{0%{filter:brightness(.3) saturate(.4)}60%{filter:brightness(1.1)}100%{filter:none}}
@media (min-width:1440px){
	html:root body .gc-logo img{height:42px}
	html:root body :is(.gc-hdr-status,.gc-chip){margin-left:8px}
	html:root body .gc-hdr-route{margin-left:4px}
	html:root body .gc-hdr-in{gap:12px}
	html:root body .gc-nav-link{padding:0 13px;font-size:.96875rem}
	html:root body .gc-menu-toggle{padding:0 11px 0 14px;font-size:.96875rem}
	html:root body :is(.gc-hdr-status,.gc-chip){font-size:.875rem;padding:0 14px 0 12px}
	html:root body .gc-hdr-route{padding:0 1.3em}
	html:root body .gc-menu-body{grid-template-columns:minmax(0,1fr) 312px}
}
/* reale Laptop-Höhen: Mega-Menü passt komplett in den Viewport */
@media (min-width:1024px) and (max-height:800px){
	html:root body .gc-menu-body{padding-top:20px;padding-bottom:22px}
	html:root body .gc-menu-main{gap:12px}
	html:root body .gc-mcard-img{aspect-ratio:2/1}
	html:root body .gc-menu-live{padding:14px 16px 16px;gap:10px}
	html:root body .gc-menu-live .gc-live{--gc-bs:88px;margin-bottom:6px}
}
@media (min-width:1024px) and (max-height:720px){
	html:root body .gc-mcard-img{aspect-ratio:5/2;margin-bottom:6px}
	html:root body .gc-mcard .gc-tag{margin-top:6px}
	html:root body .gc-menu-live .gc-live{--gc-bs:80px}
	html:root body .gc-ml-pills{display:none}
	html:root body .gc-graphic b{font-size:1.5rem}
	html:root body .gc-graphic.gc-shop svg{width:32px;height:32px}
}
/* ---------- Hero ---------- */
html:root body .gc-hero{position:relative;container-type:inline-size;background:#EDF6F1}
html:root body .gc-hero-frame{position:relative;max-width:var(--gc-frame);margin-inline:auto;isolation:isolate}
html:root body .gc-hero-frame::before{content:"";position:absolute;inset:0;z-index:-2;background: radial-gradient(60% 55% at 6% 10%,#FFF9EA 0%,rgba(255,249,234,0) 70%), radial-gradient(55% 60% at 45% 100%,#E1EFE0 0%,rgba(225,239,224,0) 72%)}
/* Blatt-Deko: genau eine Stelle (mobil oben rechts, ab 721 oben links), ohne Streu-Samen */
html:root body .gc-hero-frame::after{content:"";position:absolute;top:0;right:0;z-index:-1;width:clamp(120px,34vw,160px);aspect-ratio:615/645;background:url("/wp-content/uploads/2023/01/tgjt.png") 100% 0/624% auto no-repeat;opacity:.9;pointer-events:none}
html:root body .gc-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);row-gap:var(--gc-s2);padding-top:clamp(20px,2.4vw,40px)}
html:root body .gc-hero-head{position:relative;z-index:2;display:grid;gap:10px;justify-items:start}
html:root body .gc-hero-body{position:relative;z-index:2;display:grid;gap:18px;justify-items:start}
html:root body .gc-hero-status{display:none;align-items:center;gap:10px;min-height:40px;padding:6px 14px 6px 12px;border-radius:var(--gc-r-s);background:#fff;border:1.5px solid var(--gc-salbei);font-weight:700;font-size:.875rem;line-height:1.3;text-wrap:balance}
html:root body.gc-is-hint .gc-hero-status{display:inline-flex}
@media (min-width:1024px){
	html:root body.gc-is-hint .gc-hero-status{display:none}
}
html:root body :is(.gc-h1,.gc-h1-sticker){font-weight:900;font-size:var(--gc-fs-h1);line-height:.92;letter-spacing:-.045em;color:var(--gc-gruen)}
html:root body :is(.gc-h1,.gc-h1-sticker) span{display:block;overflow-wrap:anywhere}
html:root body .gc-hero-echo{font:italic 400 clamp(1.2rem,.95rem + 1vw,2rem)/1.25 var(--gc-serif);color:var(--gc-gruen)}
html:root body .gc-hero .gc-lead{max-width:40ch;color:var(--gc-ink)}
html:root body .gc-hero .gc-cta-row{width:100%;gap:10px}
html:root body .gc-hero .gc-cta-row .gc-btn:where(:not(.elementor-widget)){flex:1 1 auto;padding:0 1em}
html:root body .gc-hero-hint{display:none;align-items:center;gap:10px;font-weight:600;font-size:.9375rem;line-height:1.4;color:var(--gc-ink-2)}
html:root body .gc-hero-hint svg{width:22px;height:22px;flex:none;color:var(--gc-gruen)}
/* Foto: mobil randlos, ab 721 bis an die Rahmenkante angeschnitten */
html:root body .gc-hero-visual{position:relative;z-index:1;margin:var(--gc-s3) calc(-1*var(--gc-gut)) 0;--gc-bleed:calc((min(100cqw,var(--gc-frame)) - min(100cqw,var(--gc-wrap)))/2 + var(--gc-gut))}
html:root body .gc-hero-photo{position:relative;margin:0;overflow:hidden;background:var(--gc-salbei)}
html:root body .gc-hero-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 40%}
html:root body .gc-hero .gc-live{position:absolute;left:var(--gc-gut);top:-30px;z-index:4;--gc-bs:100px}
html:root body .gc-hero .gc-live .gc-badge{--gc-rot:-3deg}
html:root body .gc-hero .gc-holtape{top:auto;bottom:-6px;left:calc(100% - 8px);transform:none}
html:root body .gc-hero .gc-arrow{position:absolute;right:var(--gc-gut);bottom:calc(var(--gc-sky-h)*.867 + 14px);z-index:4;--gc-aw:150px;--gc-rot:-2deg}
html:root body .gc-sky-hero-wrap{margin-top:calc(-.867*var(--gc-sky-h))}
@media (min-width:481px){
	html:root body .gc-hero .gc-cta-row .gc-btn:where(:not(.elementor-widget)){flex:0 0 auto}
}
@media (min-width:721px){
	html:root body .gc-hero-frame::after{left:0;right:auto;width:clamp(170px,15vw,300px);background-position:0 0}
	html:root body .gc-hero-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap);row-gap:var(--gc-s3);padding-bottom:calc(var(--gc-sky-h)*.45 + 16px)}
	html:root body .gc-hero-head{grid-column:1/-1}
	html:root body .gc-hero-body{grid-column:1/7;grid-row:2;align-self:start}
	html:root body .gc-hero-hint{display:flex}
	html:root body .gc-hero .gc-cta-row .gc-btn:where(:not(.elementor-widget)){flex:1 1 auto}
	html:root body .gc-hero-visual{grid-column:7/-1;grid-row:2;margin:0 calc(-1*var(--gc-bleed)) calc(-1*(var(--gc-sky-h)*.45 + 16px)) 0}
	html:root body .gc-hero-photo{height:100%;min-height:340px;border-radius:var(--gc-r-l) 0 0 0}
	html:root body .gc-hero-photo img{position:absolute;inset:0;height:100%;aspect-ratio:auto;object-position:46% 50%}
	html:root body .gc-hero .gc-live{left:-14px;top:calc(var(--gc-bs)*-.42);bottom:auto;--gc-bs:clamp(104px,11vw,176px)}
	html:root body .gc-hero .gc-holtape{left:50%;top:88%;bottom:auto;transform:translateX(-50%)}
	html:root body .gc-hero .gc-arrow{right:auto;left:54%;top:38%;bottom:auto;--gc-aw:clamp(150px,13vw,210px)}
}
@media (min-width:1024px){
	html:root body .gc-hero-grid{row-gap:var(--gc-s3);padding-top:clamp(28px,4.4vh,64px);padding-bottom:calc(var(--gc-sky-h)*.45 + 20px)}
	html:root body .gc-hero-head{grid-column:1/8;grid-row:1;align-self:end}
	html:root body .gc-hero-body{grid-column:1/8;grid-row:2}
	html:root body .gc-hero-visual{grid-column:8/-1;grid-row:1/3;margin-bottom:calc(-1*(var(--gc-sky-h)*.45 + 20px))}
	html:root body .gc-hero .gc-cta-row .gc-btn:where(:not(.elementor-widget)){flex:0 0 auto}
	html:root body .gc-hero .gc-arrow{top:50%}
	html:root body .gc-hero .gc-live{left:calc(var(--gc-bs)*-.5);top:auto;bottom:calc(var(--gc-sky-h)*.88 + 20px)}
}
@media (min-width:2001px){
	html:root body .gc-hero-frame::before{-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
	html:root body .gc-hero-frame::after{-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%);mask-image:linear-gradient(90deg,transparent,#000 45%)}
	html:root body .gc-hero-photo{border-radius:var(--gc-r-l) var(--gc-r-l) 0 0}
}
/* Laptop-Höhen: Hero passt in den ersten Screen */
@media (min-width:1024px) and (max-height:800px){
	html:root body .gc-hero-grid{padding-top:22px;row-gap:18px}
	html:root body .gc-hero-head{gap:6px}
	html:root body .gc-hero-body{gap:14px}
	html:root body .gc-hero .gc-lead{max-width:44ch}
	html:root body .gc-hero-echo{font-size:clamp(1.15rem,.9rem + .8vw,1.6rem)}
}
@media (min-width:1024px) and (max-height:720px){
	html:root body .gc-hero-grid{padding-top:18px;row-gap:14px}
}
@media (prefers-reduced-motion:no-preference){
	html:root body .gc-hero .gc-live .gc-badge{animation:gc-slapBadge .5s var(--gc-ease) .35s backwards}
	html:root body .gc-hero .gc-arrow{animation:gc-slapIn .45s var(--gc-ease) .7s backwards}
}
html:root body .gc-hero.gc-is-settled .gc-badge,html:root body .gc-hero.gc-is-settled .gc-arrow{animation:none}
@keyframes gc-slapBadge{from{opacity:0;transform:rotate(-14deg) scale(1.25)}to{opacity:1;transform:rotate(var(--gc-rot,-3deg)) scale(1)}}
@keyframes gc-slapIn{from{opacity:0;transform:rotate(calc(var(--gc-rot,0deg) - 5deg)) scale(1.12)}to{opacity:1;transform:rotate(var(--gc-rot,0deg)) scale(1)}}
/* ---------- Abschnitte ---------- */
/* Foto mit weißer Sticker-Kante (gerade) */
html:root body :is(.gc-ps,.gc-photo-sticker){position:relative;display:block;margin:0;padding:5px;background:#fff;border-radius:var(--gc-r-l);box-shadow:var(--gc-sh-lg)}
html:root body :is(.gc-ps,.gc-photo-sticker) img{width:100%;height:100%;object-fit:cover;border-radius:var(--gc-r-s);background:var(--gc-salbei)}
html:root body .gc-ps-in{position:relative;display:block}
/* 3 · Laden-Bento (Regalgrün) */
html:root body .gc-growroom{background:var(--gc-nacht);padding-top:clamp(36px,3vw,64px)}
/* Startseite: Textlink auf den Laden-Hub, sitzt im unteren Rand des Abschnitts darüber (gleiche Fläche) */
html:root body .gc-growroom-more{position:relative;margin-top:calc(var(--gc-sec)*-.6);padding-bottom:max(0px,calc(var(--gc-sec)*.6 - 44px));background:var(--gc-nacht)}
html:root body .gc-growroom-more.e-con-boxed{padding-inline:var(--gc-gut)}
html:root body .gc-growroom-more.e-con-boxed>.e-con-inner{max-width:calc(var(--gc-wrap) - 2*var(--gc-gut))}
html:root body .gc-more-line{font:400 var(--gc-fs-body)/1.6 var(--gc-sans);letter-spacing:normal}
html:root body .gc-growroom-more .gc-txt-link{color:#fff}
html:root body .gc-growroom-more .gc-txt-link:hover{color:var(--gc-neon)}
html:root body .gc-bento{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"a" "b" "c" "d" "e";gap:var(--gc-gap)}
html:root body .gc-tile{position:relative;min-width:0;display:flex}
html:root body .gc-t-rat{grid-area:a}
html:root body .gc-t-box{grid-area:b}
html:root body .gc-t-led{grid-area:c}
html:root body .gc-t-termin{grid-area:d}
html:root body .gc-t-mit{grid-area:e}
html:root body .gc-tile-in{position:relative;flex:1;display:flex;flex-direction:column;justify-content:flex-end;border-radius:var(--gc-r-m);overflow:hidden;border:4px solid #fff;background:var(--gc-nacht-2);isolation:isolate}
html:root body .gc-tile-in>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
html:root body .gc-tile-cap{padding:96px 16px 16px;background:linear-gradient(to top,rgba(4,30,24,.96) 0%,rgba(4,30,24,.86) 58%,rgba(4,30,24,0) 100%)}
html:root body .gc-tile h3{font-weight:800;font-size:var(--gc-fs-h3);line-height:1.1;letter-spacing:-.022em;color:#fff;text-wrap:balance;hyphens:auto}
html:root body .gc-tile p{margin-top:8px;font-size:.9375rem;line-height:1.5;color:var(--gc-on-dark);max-width:38ch;text-wrap:pretty}
html:root body .gc-tile-label{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:var(--gc-r-xs);background:var(--gc-neon);color:var(--gc-nacht);font:800 .875rem/1 var(--gc-sans)}
html:root body .gc-t-rat .gc-tile-in{min-height:220px}
html:root body .gc-t-rat .gc-tile-in>img{top:auto;bottom:0;height:135%;object-position:50% 100%}
html:root body .gc-t-box .gc-tile-in{min-height:380px}
html:root body .gc-t-box .gc-tile-in>img{object-position:50% 50%}
html:root body .gc-t-led .gc-tile-in{min-height:340px}
html:root body .gc-t-led .gc-tile-in>img{object-position:50% 38%}
html:root body .gc-t-mit .gc-tile-in{min-height:240px}
html:root body .gc-t-termin .gc-tile-in{background:var(--gc-gruen);justify-content:space-between;gap:18px;padding:20px 18px 18px}
html:root body .gc-t-termin .gc-tile-cap{padding:0;background:none}
html:root body .gc-tile.gc-t-termin h3{font-weight:900;font-size:clamp(2.25rem,1.4rem + 2.2vw,3.75rem);line-height:.92;letter-spacing:-.045em}
html:root body .gc-t-termin .gc-slots{display:flex;flex-wrap:wrap;gap:6px}
html:root body .gc-t-termin .gc-slot{padding:4px 10px;border-radius:var(--gc-r-xs);background:var(--gc-nacht);color:#fff;font-weight:700;font-size:.8125rem}
html:root body .gc-ledbar{position:absolute;left:16%;right:16%;top:18px;height:7px;border-radius:var(--gc-r-xs);background:#33514A;z-index:2;transition:background .4s,box-shadow .4s}
html:root body .gc-t-led .gc-tile-in::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(75% 48% at 50% 0%,rgba(236,132,250,.55),rgba(236,132,250,0) 72%);opacity:0;transition:opacity .4s}
html:root body.gc-shop-open .gc-ledbar{background:linear-gradient(90deg,#F5B4F7,#FFF0FF 50%,#F5B4F7);box-shadow:0 0 12px 3px var(--gc-led-a),0 0 46px 12px var(--gc-led-b)}
html:root body.gc-shop-open .gc-t-led .gc-tile-in::before{opacity:1}
@media (min-width:721px){
	html:root body .gc-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"a a" "b c" "d e"}
	html:root body .gc-t-rat .gc-tile-in{min-height:260px}
	html:root body .gc-t-termin .gc-tile-in{padding:24px 22px 22px}
	html:root body .gc-tile-cap{padding:96px 20px 20px}
}
@media (min-width:1024px){
	html:root body .gc-bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(clamp(250px,19vw,360px),auto));grid-template-areas:"a a b c" "d e b c"}
	html:root body .gc-tile .gc-tile-in{min-height:0}
	html:root body .gc-t-box .gc-tile-in>img{object-position:50% 62%}
}
/* Laufband: gerade, Text endet im 2000er-Rahmen, pausierbar */
html:root body .gc-tape-wrap{position:relative;background:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-tape{display:flex;align-items:center;height:52px;overflow:hidden}
html:root body .gc-tape-track{display:flex;flex:none;white-space:nowrap;will-change:transform}
html:root body .gc-tape-item{display:inline-flex;align-items:center;gap:18px;padding-right:18px;font:800 1.0625rem/1 var(--gc-sans);letter-spacing:-.01em}
html:root body .gc-tape-item svg{width:20px;height:20px;color:var(--gc-gruen)}
html:root body .gc-tape-ctl{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;pointer-events:none}
html:root body .gc-tape-btn{pointer-events:auto;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:var(--gc-r-s);background:var(--gc-nacht);color:#fff;cursor:pointer;box-shadow:-14px 0 14px var(--gc-neon)}
html:root body .gc-tape-btn svg{width:18px;height:18px}
html:root body .gc-tape-btn .gc-i-play{display:none}
html:root body .gc-tape-wrap.gc-is-paused .gc-tape-btn .gc-i-play{display:block}
html:root body .gc-tape-wrap.gc-is-paused .gc-tape-btn .gc-i-pause{display:none}
@media (min-width:721px){
	html:root body .gc-tape{height:56px}
	html:root body .gc-tape-item{font-size:1.1875rem;gap:22px;padding-right:22px}
}
@media (min-width:1024px){
	html:root body .gc-tape{height:60px}
	html:root body .gc-tape-item{font-size:1.3125rem}
}
@media (min-width:2001px){
	html:root body .gc-tape{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
}
@media (prefers-reduced-motion:no-preference){
	html:root body .gc-tape-track{animation:gc-tape 50s linear infinite}
	html:root body .gc-tape-wrap.gc-is-paused .gc-tape-track{animation-play-state:paused}
}
@media (prefers-reduced-motion:reduce){
	html:root body .gc-tape-btn{display:none}
	html:root body .gc-tape-track{padding-left:var(--gc-gut)}
}
@keyframes gc-tape{to{transform:translateX(-50%)}}
/* 4 · Sortiment */
html:root body .gc-legend{display:grid;gap:10px;padding:16px;border-radius:var(--gc-r-l);background:#fff;box-shadow:inset 0 0 0 1.5px var(--gc-line)}
html:root body .gc-legend li{display:grid;grid-template-columns:136px minmax(0,1fr);gap:10px;align-items:center;font-size:.875rem;line-height:1.4;color:var(--gc-ink-2)}
html:root body .gc-legend .gc-tag{justify-self:start}
html:root body :is(.gc-drops,.gc-shelf){display:grid;gap:var(--gc-cgap)}
html:root body .gc-drop-list{display:grid;gap:10px}
html:root body .gc-drop{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-areas:"thumb name" "thumb line" "thumb tag";column-gap:14px;align-items:center;height:100%;padding:12px 14px 14px 12px;border-radius:var(--gc-r-m);background:#fff;color:var(--gc-ink);text-decoration:none;overflow:hidden;isolation:isolate;box-shadow:inset 0 0 0 1.5px var(--gc-line);transition:background-color .2s,color .2s,box-shadow .2s}
html:root body .gc-drop-thumb{grid-area:thumb;align-self:start;display:block;width:56px;height:56px;border-radius:var(--gc-r-s);overflow:hidden;background:var(--gc-salbei)}
html:root body .gc-drop-thumb img{width:100%;height:100%;object-fit:cover}
html:root body .gc-drop-thumb.gc-led{position:relative;background:var(--gc-nacht)}
html:root body .gc-drop-thumb.gc-led::before{content:"";position:absolute;left:18%;right:18%;top:22%;height:5px;border-radius:2px;background:#F5B4F7;box-shadow:0 0 8px 3px var(--gc-led-a),0 0 24px 8px var(--gc-led-b)}
html:root body .gc-drop-thumb.gc-seed{display:grid;place-items:center;background:var(--gc-neon);color:var(--gc-nacht);font-weight:900;font-size:1rem;letter-spacing:-.04em}
html:root body .gc-drop-name{grid-area:name;font-weight:800;font-size:clamp(1.25rem,1rem + .8vw,1.75rem);line-height:1.08;letter-spacing:-.028em}
html:root body .gc-drop-line{grid-area:line;margin-top:4px;font-size:.9375rem;line-height:1.4;color:var(--gc-ink-2);text-wrap:pretty;transition:color .2s}
html:root body .gc-drop .gc-tag{grid-area:tag;justify-self:start;margin-top:8px}
html:root body .gc-drop:hover,html:root body .gc-drop:focus-visible{background:var(--gc-nacht);color:#fff;box-shadow:inset 5px 0 0 var(--gc-neon)}
html:root body .gc-drop:hover .gc-drop-line,html:root body .gc-drop:focus-visible .gc-drop-line{color:#CFE7DE}
html:root body .gc-drop:hover .gc-tag-laden,html:root body .gc-drop:focus-visible .gc-tag-laden{background:var(--gc-neon)}
html:root body .gc-drop:hover .gc-tag-both,html:root body .gc-drop:focus-visible .gc-tag-both{background:#fff;color:var(--gc-nacht)}
html:root body .gc-drop:focus-visible{outline-color:var(--gc-gruen)}
html:root body .gc-drop-led::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(46% 170% at 16% -40%,rgba(236,132,250,.95),rgba(176,38,184,.42) 45%,rgba(176,38,184,0) 76%);opacity:0;transition:opacity .3s}
html:root body .gc-drop-led:hover::after,html:root body .gc-drop-led:focus-visible::after{opacity:1}
html:root body .gc-drop-preview{display:none}
html:root body .gc-sort-note{margin-top:var(--gc-s4);color:var(--gc-ink-2);max-width:70ch}
html:root body .gc-sort-note a{font-weight:700;color:var(--gc-gruen)}
html:root body .gc-sort-note a,html:root body .gc-faq-side a,html:root body .gc-faq-a a{display:inline-block;padding:11px;margin:-11px}
html:root body .gc-sort-note a:focus-visible,html:root body .gc-faq-side a:focus-visible,html:root body .gc-faq-a a:focus-visible{outline-offset:-10px}
@media (min-width:721px){
	html:root body .gc-drop-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gc-gap)}
	html:root body .gc-drop-list li:last-child{grid-column:1/-1}
	html:root body .gc-legend{padding:18px 20px}
	html:root body .gc-legend li{grid-template-columns:150px minmax(0,1fr)}
}
@media (min-width:1024px){
	html:root body :is(.gc-drops,.gc-shelf){grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 150px;column-gap:var(--gc-cgap);row-gap:0;margin-bottom:-150px}
	html:root body .gc-drop-list{grid-column:1/8;grid-row:1;grid-template-columns:minmax(0,1fr);gap:10px}
	html:root body .gc-drop-list li:last-child{grid-column:auto}
	html:root body .gc-drop{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name tag" "line tag";column-gap:18px;min-height:84px;padding:14px 20px 14px 24px}
	html:root body .gc-drop .gc-drop-thumb{display:none}
	html:root body .gc-drop .gc-tag{margin-top:0;justify-self:end}
	html:root body .gc-drop.gc-is-active{background:var(--gc-nacht);color:#fff;box-shadow:inset 5px 0 0 var(--gc-neon)}
	html:root body .gc-drop.gc-is-active .gc-drop-line{color:#CFE7DE}
	html:root body .gc-drop.gc-is-active .gc-tag-laden{background:var(--gc-neon)}
	html:root body .gc-drop.gc-is-active .gc-tag-both{background:#fff;color:var(--gc-nacht)}
	html:root body .gc-drop-led.gc-is-active::after{opacity:1}
	html:root body .gc-drop-preview{display:block;grid-column:8/-1;grid-row:1/span 2;position:sticky;top:calc(var(--gc-hdr) + 28px);aspect-ratio:1/1;max-height:calc(100vh - var(--gc-hdr) - 160px);width:100%}
	html:root body .gc-sort-note{max-width:min(70ch,calc((100% - var(--gc-cgap))*7/12))}
}
html:root body .gc-pv{position:absolute;inset:0;opacity:0;transform:translateY(-12px);transition:opacity .3s ease,transform .45s var(--gc-ease);pointer-events:none}
html:root body .gc-pv.gc-is-active{opacity:1;transform:none}
html:root body .gc-pv :is(.gc-ps,.gc-photo-sticker){height:100%}
html:root body .gc-pv :is(.gc-ps,.gc-photo-sticker) img{height:100%}
/* früher runder Stempel → flaches Label oben links */
html:root body .gc-stamp{position:absolute;left:18px;top:18px;z-index:2;display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 12px;border-radius:var(--gc-r-xs);background:#fff;color:var(--gc-nacht);font:700 .875rem/1 var(--gc-sans);box-shadow:var(--gc-sh)}
html:root body .gc-stamp::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
html:root body .gc-stamp.gc-both{background:var(--gc-nacht);color:#fff}
html:root body .gc-stamp.gc-both::before{background:var(--gc-neon)}
html:root body .gc-stamp.gc-web{background:var(--gc-beige)}
html:root body .gc-pv-cap{position:absolute;left:18px;right:18px;bottom:18px;display:flex;align-items:center;min-height:46px;padding:10px 16px;border-radius:var(--gc-r-s);background:rgba(255,255,255,.95);color:var(--gc-nacht);font-weight:700;font-size:.9375rem;line-height:1.25}
html:root body .gc-pv-tile{position:relative;display:grid;place-items:center;align-content:center;gap:12px;height:100%;padding:34px;border-radius:var(--gc-r-l);border:5px solid #fff;text-align:center;box-shadow:var(--gc-sh-lg);overflow:hidden;isolation:isolate}
html:root body .gc-pv-led{background:var(--gc-nacht);color:#fff}
html:root body .gc-pv-led::before{content:"";position:absolute;left:14%;right:14%;top:12%;height:8px;border-radius:var(--gc-r-xs);background:linear-gradient(90deg,#F5B4F7,#FFF0FF 50%,#F5B4F7);box-shadow:0 0 14px 4px var(--gc-led-a),0 0 70px 26px var(--gc-led-b)}
html:root body .gc-pv-led::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(80% 60% at 50% 8%,rgba(236,132,250,.5),rgba(236,132,250,0) 70%)}
html:root body .gc-pv-tile b{font-weight:900;font-size:clamp(2.6rem,1.6rem + 2.4vw,4rem);line-height:.95;letter-spacing:-.045em}
html:root body .gc-pv-tile span{font-size:1.0625rem;font-weight:500;max-width:24ch}
html:root body .gc-pv-seed{background:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-pv-seed b{font-size:clamp(3.4rem,2rem + 3.6vw,5.4rem)}
/* 5 · Samen */
html:root body .gc-samen{background:var(--gc-gruen)}
html:root body .gc-samen .gc-h2{color:#fff;margin-bottom:clamp(28px,1.4rem + 2.4vw,64px)}
html:root body .gc-samen-grid{display:grid;gap:var(--gc-s5)}
html:root body .gc-samen-copy{display:grid;gap:var(--gc-s3);justify-items:start}
html:root body .gc-packets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px var(--gc-gap);padding-top:10px}
html:root body .gc-packet{position:relative;display:grid;gap:2px;padding:22px 16px 18px;border-radius:2px 2px var(--gc-r-xs) var(--gc-r-xs);background:var(--gc-beige);color:var(--gc-nacht)}
html:root body .gc-packet::before{content:"";position:absolute;left:0;right:0;top:-8px;height:9px;background:inherit;clip-path:polygon(0 100%,0 30%,4% 0,8% 30%,12% 0,16% 30%,20% 0,24% 30%,28% 0,32% 30%,36% 0,40% 30%,44% 0,48% 30%,52% 0,56% 30%,60% 0,64% 30%,68% 0,72% 30%,76% 0,80% 30%,84% 0,88% 30%,92% 0,96% 30%,100% 0,100% 100%)}
html:root body .gc-packet:nth-child(2),html:root body .gc-packet:nth-child(6){background:var(--gc-neon)}
html:root body .gc-packet:nth-child(3),html:root body .gc-packet:nth-child(4){background:#fff}
html:root body .gc-packet-n{font-weight:900;font-size:clamp(2.2rem,1.6rem + 1.8vw,3.4rem);line-height:1;letter-spacing:-.045em}
html:root body .gc-packet-unit{font-weight:600;font-size:.875rem;line-height:1.2;color:var(--gc-ink-2)}
html:root body .gc-packet-name{margin-top:10px;padding-top:10px;border-top:1.5px solid rgba(7,59,46,.18);font-weight:700;font-size:.96875rem;line-height:1.2}
html:root body .gc-packets-fig figcaption{margin-top:18px;color:var(--gc-on-dark);font-size:.9375rem}
@media (min-width:481px){
	html:root body .gc-packets{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1024px){
	html:root body .gc-samen-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap);align-items:center}
	html:root body .gc-samen-copy{grid-column:1/6}
	html:root body .gc-packets-fig{grid-column:6/-1}
}
/* 6 · Marken: Raster statt Streuung */
html:root body .gc-marken{background:#fff}
html:root body .gc-marken-grid{display:grid;gap:var(--gc-s5)}
html:root body .gc-marken-copy{display:grid;gap:var(--gc-s3);align-content:start}
html:root body .gc-marken-photo{margin-top:var(--gc-s1)}
html:root body .gc-marken-photo img{aspect-ratio:3/2}
html:root body .gc-marken-wall{display:grid;gap:var(--gc-gap);align-content:start}
html:root body :is(.gc-brand-wall,.gc-brand){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gc-gap)}
html:root body .gc-bs{display:grid;place-items:center;min-height:clamp(76px,2.6rem + 3vw,120px);padding:12px 16px;border-radius:var(--gc-r-m);background:#fff;box-shadow:inset 0 0 0 1.5px var(--gc-line);text-align:center}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(1),
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(4),
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(7){grid-column:span 2}
html:root body .gc-bs img{height:clamp(30px,1.4rem + .8vw,40px);width:auto}
html:root body .gc-bs img.gc-wide{height:clamp(24px,1.1rem + .6vw,32px)}
html:root body .gc-bs-name{font-weight:900;font-size:clamp(1.3rem,1rem + .8vw,1.85rem);letter-spacing:-.035em;line-height:1;color:var(--gc-nacht)}
html:root body .gc-bs-name.gc-g{background:var(--gc-gruen);color:#fff;box-shadow:none}
html:root body .gc-bs-name.gc-n{background:var(--gc-neon);box-shadow:none}
html:root body .gc-bs-name.gc-b{background:var(--gc-beige);box-shadow:none}
html:root body .gc-bs-name.gc-d{background:var(--gc-nacht);color:#fff;box-shadow:none}
html:root body .gc-partners{display:grid;gap:12px;justify-items:center;padding:16px 18px 18px;border-radius:var(--gc-r-l);background:var(--gc-mint)}
html:root body .gc-partners-label{text-align:center;font-weight:700;font-size:.875rem;color:var(--gc-ink-2)}
html:root body .gc-partners ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 22px;max-width:380px}
html:root body .gc-partners img{height:22px;width:auto}
html:root body .gc-partners img.gc-sq{height:32px}
@media (min-width:481px){
	html:root body :is(.gc-brand-wall,.gc-brand){grid-template-columns:repeat(3,minmax(0,1fr))}
	html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(7){grid-column:auto}
	html:root body .gc-partners ul{max-width:none}
	html:root body .gc-partners img{height:26px}
	html:root body .gc-partners img.gc-sq{height:38px}
}
@media (min-width:1024px){
	html:root body .gc-marken-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap);align-items:stretch}
	html:root body .gc-marken-copy{grid-column:1/6;grid-template-rows:auto auto 1fr}
	html:root body .gc-marken-photo{margin-top:var(--gc-s2);min-height:180px}
	html:root body .gc-marken-photo img{position:absolute;inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);aspect-ratio:auto}
	html:root body .gc-marken-wall{display:contents}
	html:root body .gc-bs img{height:clamp(38px,1.2rem + 1.6vw,52px)}
	html:root body .gc-bs img.gc-wide{height:clamp(30px,1rem + 1.2vw,40px)}
	html:root body .gc-bs-name{font-size:clamp(1.35rem,.6rem + 1.3vw,2.25rem);white-space:nowrap}
	html:root body :is(.gc-brand-wall,.gc-brand){grid-column:6/-1;grid-row:1;grid-auto-rows:1fr;align-self:stretch}
	html:root body .gc-partners{grid-column:1/-1;grid-row:2;grid-template-columns:auto minmax(0,1fr);justify-items:start;align-items:center;gap:var(--gc-cgap);padding:20px 32px}
	html:root body .gc-partners ul{justify-content:space-between;width:100%;gap:16px 32px}
}
/* 7 · Bewertungen */
html:root body .gc-reviews{background:var(--gc-gruen)}
html:root body .gc-reviews-grid{display:grid;gap:var(--gc-s4)}
html:root body .gc-otone{display:flex;flex-direction:column;justify-content:space-between;gap:var(--gc-s4);padding:clamp(24px,1rem + 2vw,52px);border-radius:var(--gc-r-l);background:var(--gc-nacht)}
html:root body .gc-otone blockquote p{font-weight:700;font-size:clamp(1.5rem,1rem + 2vw,2.9rem);line-height:1.22;letter-spacing:-.022em;color:#fff;text-wrap:balance}
html:root body .gc-otone figcaption{color:var(--gc-on-dark);font-size:.9375rem;line-height:1.4;padding-top:var(--gc-s2);border-top:1.5px solid var(--gc-line-d)}
html:root body .gc-otone figcaption b{display:block;color:var(--gc-neon);font-weight:800;font-size:1.0625rem}
html:root body .gc-quotes{display:grid;gap:var(--gc-s4);align-content:start}
html:root body .gc-quote{display:grid;gap:18px}
html:root body .gc-bubble{position:relative;padding:20px 22px;border-radius:var(--gc-r-m);background:#fff;color:var(--gc-nacht)}
html:root body .gc-bubble::after{content:"";position:absolute;left:28px;bottom:-14px;width:22px;height:15px;background:inherit;clip-path:polygon(0 0,100% 0,0 100%)}
html:root body .gc-quote:nth-child(2) .gc-bubble{background:var(--gc-neon)}
html:root body .gc-quote:nth-child(3) .gc-bubble{background:var(--gc-beige)}
html:root body .gc-bubble p{font-weight:600;font-size:1rem;line-height:1.5;text-wrap:pretty}
html:root body .gc-q-meta{padding-left:4px;color:var(--gc-on-dark);font-size:.9375rem;line-height:1.4}
html:root body .gc-q-meta b{display:block;color:#fff;font-weight:800;font-size:1rem}
html:root body .gc-reviews .gc-txt-link{color:#fff}
@media (min-width:721px){
	html:root body .gc-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gc-cgap);align-items:stretch}
}
/* 8 · Beratung (echte Reihenfolge → Nummern) */
html:root body .gc-beratung{background:var(--gc-salbei)}
html:root body .gc-steps{--gc-g:var(--gc-s4);display:grid;gap:var(--gc-g)}
html:root body .gc-step{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:var(--gc-s2);row-gap:6px;align-content:start}
html:root body .gc-step-n{grid-row:span 2;display:grid;place-items:center;width:56px;height:56px;border-radius:var(--gc-r-s);background:var(--gc-gruen);color:#fff;font:900 1.5rem/1 var(--gc-sans)}
html:root body .gc-step:not(:last-child)::before{content:"";position:absolute;left:27px;top:64px;bottom:calc(-1*var(--gc-g) + 8px);border-left:2px solid rgba(7,59,46,.28)}
html:root body .gc-step h3{margin-top:12px;font-weight:800;font-size:var(--gc-fs-h3);line-height:1.15;letter-spacing:-.02em}
html:root body .gc-step p{grid-column:2;color:var(--gc-ink-2);max-width:38ch;text-wrap:pretty}
@media (min-width:721px){
	html:root body .gc-steps{--gc-g:var(--gc-cgap);grid-template-columns:repeat(3,minmax(0,1fr))}
	html:root body .gc-step{grid-template-columns:minmax(0,1fr);row-gap:10px}
	html:root body .gc-step-n{grid-row:auto;width:64px;height:64px;font-size:1.75rem}
	html:root body .gc-step:not(:last-child)::before{left:80px;right:calc(-1*var(--gc-g) + 16px);top:31px;bottom:auto;border-left:0;border-top:2px solid rgba(7,59,46,.28)}
	html:root body .gc-step h3{margin-top:10px}
	html:root body .gc-step p{grid-column:auto}
}
/* 9 · Besuch */
html:root body :is(.gc-besuch,.gc-visit){background:var(--gc-nacht)}
html:root body .gc-h-besuch{margin-bottom:clamp(28px,1.4rem + 2.4vw,64px)}
html:root body .gc-besuch-grid{display:grid;gap:var(--gc-s5)}
html:root body .gc-besuch-visual{position:relative}
html:root body .gc-hof-photo img{aspect-ratio:3/2}
html:root body .gc-hof-photo{container-type:inline-size;box-shadow:none}
html:root body .gc-pin{position:absolute;left:var(--gc-x);top:var(--gc-y);z-index:2;width:0;height:0}
html:root body .gc-pin::before{content:"";position:absolute;left:-10px;top:-10px;width:20px;height:20px;border-radius:50%;background:var(--gc-neon);box-shadow:0 0 0 4px #fff,0 6px 14px rgba(0,0,0,.4)}
html:root body .gc-pin span{position:absolute;top:20px;left:-14px;white-space:nowrap;padding:7px 11px;border-radius:var(--gc-r-s);background:#fff;color:var(--gc-nacht);font-weight:800;font-size:.8125rem;line-height:1.1;box-shadow:0 10px 18px -8px rgba(0,0,0,.5)}
html:root body .gc-pin-r span{left:auto;right:-14px}
html:root body .gc-pin i{font-style:normal}
@container (max-width:620px){
	html:root body .gc-pin .gc-d{display:none}
}
@container (min-width:621px){
	html:root body .gc-pin span{font-size:.9375rem;padding:8px 13px}
}
html:root body .gc-wayfind{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gc-s1);margin-top:var(--gc-s3)}
html:root body .gc-wayfind li{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px 8px 8px;border-radius:var(--gc-r-s);background:rgba(255,255,255,.08);font-weight:700;font-size:.9375rem;line-height:1.2}
html:root body .gc-wayfind b{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:var(--gc-r-xs);background:var(--gc-neon);color:var(--gc-nacht);font-weight:900}
html:root body .gc-hof-cap{margin-top:var(--gc-s2);color:var(--gc-on-dark);max-width:58ch;text-wrap:pretty}
html:root body .gc-besuch-info{display:grid;gap:var(--gc-s3);align-content:start}
html:root body .gc-addr{font-size:1.0625rem;line-height:1.5;color:var(--gc-on-dark)}
html:root body .gc-addr strong{display:block;color:#fff;font-weight:800;font-size:1.375rem;letter-spacing:-.015em}
html:root body .gc-addr a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--gc-neon)}
html:root body .gc-hours-card{display:grid;gap:12px;padding:20px 18px 18px;border-radius:var(--gc-r-l);background:#fff;color:var(--gc-nacht)}
html:root body .gc-hours-card h3{font-weight:800;font-size:1.125rem;letter-spacing:-.01em}
html:root body .gc-hours-status{display:flex;align-items:flex-start;gap:10px;font-weight:700;line-height:1.35;text-wrap:balance}
html:root body .gc-hours-status .gc-dot{margin-top:6px}
html:root body .gc-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
html:root body .gc-week li{display:grid;justify-items:center;gap:1px;padding:8px 0 7px;border-radius:var(--gc-r-s);background:#fff;border:1.5px solid var(--gc-salbei);font-size:.75rem;line-height:1.2;text-align:center}
html:root body .gc-week b{font-weight:800;font-size:.9375rem}
html:root body .gc-week span{white-space:normal;letter-spacing:-.02em}
html:root body .gc-week li.gc-is-off{background:var(--gc-mint);color:var(--gc-ink-2)}
html:root body .gc-week li.gc-is-hol{background:var(--gc-beige);border-color:var(--gc-beige);color:var(--gc-nacht)}
html:root body .gc-week li.gc-is-today{background:var(--gc-gruen);border-color:var(--gc-gruen);color:#fff;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--gc-gruen)}
html:root body .gc-week li.gc-is-today.gc-is-off{background:var(--gc-beige);border-color:var(--gc-beige);color:var(--gc-nacht);box-shadow:0 0 0 2px #fff,0 0 0 4px #B9A57E}
html:root body .gc-hours-hol{padding:8px 12px 9px;border-radius:var(--gc-r-s);background:var(--gc-beige);color:var(--gc-nacht);font-weight:700;font-size:.9375rem;line-height:1.35}
html:root body .gc-hours-note{font-size:.9375rem;color:var(--gc-ink-2)}
html:root body .gc-ways{display:grid;gap:12px}
html:root body .gc-ways li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;line-height:1.35}
html:root body .gc-ways .gc-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--gc-r-s);background:rgba(255,255,255,.1);color:var(--gc-neon)}
html:root body .gc-ways .gc-ic svg{width:22px;height:22px}
html:root body .gc-ways b{display:block;font-weight:700;color:#fff}
html:root body .gc-ways span span{color:var(--gc-on-dark-2);font-size:.9375rem}
@media (min-width:481px){
	html:root body .gc-hours-card{padding:22px 22px 20px}
	html:root body .gc-week{gap:6px}
	html:root body .gc-week li{font-size:.8125rem;padding:9px 2px 8px}
	html:root body .gc-week b{font-size:1rem}
}
@media (min-width:721px){
	html:root body .gc-wayfind li{font-size:1rem}
}
@media (min-width:1024px){
	html:root body .gc-besuch-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap);align-items:start}
	html:root body .gc-besuch-visual{grid-column:1/8}
	html:root body .gc-besuch-info{grid-column:8/-1}
}
@media (min-width:1024px) and (min-height:765px){
	html:root body .gc-besuch-visual{position:sticky;top:calc(var(--gc-hdr) + 32px)}
}
/* 10 · Online / Click & Collect */
html:root body :is(.gc-cc-strip,.gc-cc){background:var(--gc-neon);color:var(--gc-nacht);padding-block:clamp(32px,1.6rem + 2vw,64px)}
html:root body .gc-online-in{display:grid;gap:var(--gc-s2);justify-items:start}
html:root body .gc-cc-label{display:inline-flex;white-space:nowrap;align-items:center;min-height:32px;padding:0 12px;border-radius:var(--gc-r-xs);background:#fff;font-weight:800;font-size:.9375rem;line-height:1}
html:root body .gc-online-copy{display:grid;gap:6px}
html:root body .gc-online-copy p{text-wrap:pretty;max-width:60ch}
html:root body .gc-h-online{font-weight:800;font-size:clamp(1.6rem,1.1rem + 1.5vw,2.6rem);line-height:1.05;letter-spacing:-.032em}
@media (min-width:721px){
	html:root body .gc-online-in{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--gc-cgap)}
	html:root body .gc-cc-label{grid-column:1/-1}
}
@media (min-width:1024px){
	html:root body .gc-online-in{grid-template-columns:repeat(12,minmax(0,1fr));row-gap:12px}
	html:root body .gc-cc-label{grid-column:1/9;grid-row:1}
	html:root body .gc-online-copy{grid-column:1/9;grid-row:2}
	html:root body .gc-online-in>.gc-btn:where(:not(.elementor-widget)){grid-column:9/-1;grid-row:1/3;justify-self:end}
}
/* 11 · FAQ */
html:root body .gc-faq-grid{display:grid;gap:var(--gc-s4)}
html:root body .gc-faq-side{display:grid;gap:var(--gc-s2);align-content:start}
html:root body .gc-faq-side a{font-weight:700;color:var(--gc-gruen)}
html:root body .gc-faq-list{display:grid;gap:10px}
html:root body .gc-faq-item{border-radius:var(--gc-r-m);background:#fff;box-shadow:inset 0 0 0 1.5px var(--gc-line);transition:box-shadow .2s}
html:root body .gc-faq-item[open]{box-shadow:inset 0 0 0 2px var(--gc-gruen)}
html:root body .gc-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:10px 12px 10px 18px;cursor:pointer;list-style:none;font-weight:700;font-size:1rem;line-height:1.35;text-wrap:balance}
html:root body .gc-faq-item summary::-webkit-details-marker{display:none}
html:root body .gc-faq-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--gc-r-s);background:var(--gc-salbei);color:var(--gc-nacht);transition:transform .25s var(--gc-ease),background-color .2s}
html:root body .gc-faq-ic svg{width:18px;height:18px}
html:root body .gc-faq-item[open] .gc-faq-ic{transform:rotate(45deg);background:var(--gc-gruen);color:#fff}
html:root body .gc-faq-a{max-width:66ch;margin:0 12px 14px 18px;padding:14px 16px 15px;border-radius:var(--gc-r-s);background:var(--gc-nacht);color:var(--gc-on-dark)}
html:root body .gc-faq-a a{color:var(--gc-neon);font-weight:700}
@media (min-width:721px){
	html:root body .gc-faq-item summary{font-size:1.0625rem;padding-left:22px}
	html:root body .gc-faq-a{margin-left:22px;padding:16px 20px 17px}
}
@media (min-width:1024px){
	html:root body .gc-faq-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap);align-items:start}
	html:root body .gc-faq-side{grid-column:1/6;position:sticky;top:calc(var(--gc-hdr) + 32px)}
	html:root body .gc-faq-list{grid-column:6/-1}
}
/* 12 · Footer mit Skyline-Krone (Skyline im 2000er-Rahmen, Sockel voll durch) */
html:root body :is(.gc-ftr,.gc-footer){color:var(--gc-on-dark)}
html:root body .gc-ftr-body{background:var(--gc-nacht);padding:clamp(16px,2vw,36px) 0 28px}
html:root body :is(.gc-ftr,.gc-footer) .gc-ftr-claim{margin:0 0 clamp(28px,1.4rem + 2.4vw,64px);font-weight:900;font-size:clamp(3.1rem,1rem + 9vw,11rem);line-height:.88;letter-spacing:-.05em;color:var(--gc-neon);overflow-wrap:anywhere}
html:root body .gc-ftr-grid{display:grid;gap:24px}
html:root body :is(.gc-ftr,.gc-footer) h2{margin-bottom:10px;font-weight:800;font-size:1.0625rem;letter-spacing:-.01em;color:#fff}
html:root body :is(.gc-ftr,.gc-footer) p{font-size:.96875rem;line-height:1.6}
html:root body :is(.gc-ftr,.gc-footer) .gc-ftr-off{margin-top:8px;max-width:24ch;text-wrap:balance}
html:root body :is(.gc-ftr,.gc-footer) a{color:#fff}
html:root body .gc-ftr-brand{display:grid;gap:16px;justify-items:start;align-content:start}
html:root body .gc-ftr-list a{display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;text-decoration:none;font-size:.96875rem}
html:root body .gc-ftr-list a:hover{text-decoration:underline}
html:root body .gc-ftr-list svg{width:22px;height:22px}
html:root body .gc-legal{display:flex;flex-wrap:wrap;align-items:center;gap:0 22px;margin-top:30px;padding-top:14px;border-top:1px solid var(--gc-line-d);font-size:.90625rem}
html:root body .gc-legal a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;text-decoration:none;color:var(--gc-on-dark)}
html:root body .gc-legal a:hover{color:#fff;text-decoration:underline}
html:root body .gc-legal .gc-copy{color:var(--gc-on-dark-2)}
/* Social-Links in der Marken-Spalte nebeneinander */
html:root body .gc-ftr-social{display:flex;flex-wrap:wrap;gap:0 20px}
/* Link-Spalten Laden · Sortiment · Onlineshop · Rechtliches (17 §3.3) */
html:root body .gc-ftr-nav{display:grid;gap:24px;margin-top:clamp(28px,1.4rem + 1.6vw,48px);padding-top:clamp(22px,1rem + 1vw,32px);border-top:1px solid var(--gc-line-d)}
html:root body .gc-ftr-nav .gc-ftr-list a{color:var(--gc-on-dark)}
html:root body .gc-ftr-nav .gc-ftr-list a:hover{color:#fff}
/* Copyright-Zeile allein ([gc_menu style="copy"]): die Rechts-Links stehen in der Spalte darüber */
html:root body .gc-legal-copy{margin-top:22px}
@media (min-width:481px){
	html:root body .gc-ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
	html:root body .gc-ftr-brand{grid-column:1/-1}
	html:root body .gc-ftr-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
}
@media (min-width:1024px){
	html:root body .gc-ftr-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gc-cgap)}
	html:root body .gc-ftr-brand{grid-column:1/6}
	html:root body .gc-ftr-grid>:nth-child(2){grid-column:7/10}
	html:root body .gc-ftr-grid>:nth-child(3){grid-column:10/-1}
	html:root body .gc-ftr-nav{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gc-cgap)}
	html:root body .gc-ftr-nav .gc-ftr-list a{min-height:36px}
	html:root body .gc-legal .gc-copy{margin-left:auto}
}
/* Handy-/Tablet-Aktionsleiste (< 1024) */
/* Tastaturfokus und Sprungziele nicht unter die Leiste scrollen (QA S7: Footer-Links lagen verdeckt). */
@media (max-width:1023px){
	html:root{scroll-padding-bottom:96px}
}
html:root body .gc-actionbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr);gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--gc-nacht);box-shadow:0 -12px 30px -14px rgba(7,59,46,.6)}
html:root body .gc-ab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;min-height:56px;padding:4px 6px;text-align:center;border:0;border-radius:var(--gc-r-s);background:rgba(255,255,255,.1);color:#fff;text-decoration:none;font:700 .875rem/1.15 var(--gc-sans);cursor:pointer}
html:root body .gc-ab svg{width:22px;height:22px}
/* .gc-actionbar davor: im Footer gewinnt sonst `:is(.gc-ftr,.gc-footer) a{color:#fff}` (Weiß auf Neon) */
html:root body .gc-actionbar .gc-ab-route{background:var(--gc-neon);color:var(--gc-nacht)}
@media (min-width:721px){
	html:root body .gc-actionbar{padding-inline:var(--gc-gut);gap:12px}
}
@media (min-width:1024px){
	html:root body .gc-actionbar{display:none}
}
/* =====================================================================
   3 · Verspielte Sticker-Schicht (Stil v3) auf dem K2-Layout
   Layout, Raster und Viewports bleiben K2 (1440er-Container, Gutter 22/32, Rahmen 2000).
   ===================================================================== */
html:root body .gc-btn:where(:not(.elementor-widget)),
html:root body .gc-nav-link,
html:root body :is(.gc-hdr-status,.gc-chip),
html:root body .gc-hero-status,
html:root body .gc-ml-chips a,
html:root body .gc-ml-pills a,
html:root body .gc-menu-toggle,
html:root body .gc-menu-close,
html:root body .gc-tape-btn{border-radius:999px}
/* H1 mit weißer Sticker-Kontur wie der Logo-Schriftzug */
html:root body :is(.gc-h1,.gc-h1-sticker){-webkit-text-stroke:clamp(9px,1.05vw,15px) #fff;paint-order:stroke fill;filter:drop-shadow(0 .055em 0 rgba(7,59,46,.17))}
@media (max-width:720px){
	html:root body :is(.gc-h1,.gc-h1-sticker){-webkit-text-stroke:8px #fff}
}
/* Sticker kräftiger gedreht */
html:root body .gc-badge{transform:rotate(var(--gc-rot,-8deg))}
html:root body .gc-hero .gc-live .gc-badge{--gc-rot:-9deg}
html:root body .gc-hero .gc-arrow{--gc-rot:-4deg}
html:root body .gc-logo-sticker{transform:rotate(-2.5deg)}
html:root body .gc-week li.gc-is-today{transform:rotate(-4deg) scale(1.08)}
/* Slap-Labels */
html:root body .gc-slap{display:inline-block;padding:.42em .78em .48em;border-radius:14px;border:5px solid #fff;background:var(--gc-neon);color:var(--gc-nacht);font:400 1.45rem/1 var(--gc-hand);box-shadow:var(--gc-sh);transform:rotate(var(--gc-rot,-4deg));white-space:nowrap}
html:root body .gc-hero .gc-slap{position:absolute;right:calc(var(--gc-gut) + 10px);top:22px;z-index:4;--gc-rot:5deg;font-size:clamp(1.1rem,.8rem + 1vw,1.7rem)}
html:root body :is(.gc-cc-strip,.gc-cc) .gc-slap{--gc-rot:-6deg;background:#fff;font-size:1.3rem;justify-self:start}
/* Foto-Sticker mit dickem weißem Rand, leicht schräg */
html:root body :is(.gc-ps,.gc-photo-sticker){padding:10px;border-radius:calc(var(--gc-r-l) + 10px);transform:rotate(var(--gc-rot,0deg))}
html:root body .gc-hof-photo{--gc-rot:-1.4deg}
html:root body .gc-marken-photo{--gc-rot:-2deg}
html:root body .gc-tile-in{border-width:5px}
html:root body .gc-tile:nth-child(odd) .gc-tile-in{transform:rotate(-.8deg)}
html:root body .gc-tile:nth-child(even) .gc-tile-in{transform:rotate(.8deg)}
/* Samentüten, Marken, Sprechblasen wie in v3 */
html:root body .gc-packet{border-radius:4px 4px 18px 18px;transform:rotate(var(--gc-rot,0deg));box-shadow:var(--gc-sh)}
html:root body .gc-packet:nth-child(1){--gc-rot:-1.6deg}
html:root body .gc-packet:nth-child(2){--gc-rot:1.2deg}
html:root body .gc-packet:nth-child(3){--gc-rot:-.8deg}
html:root body .gc-packet:nth-child(4){--gc-rot:1.4deg}
html:root body .gc-packet:nth-child(5){--gc-rot:-1.2deg}
html:root body .gc-packet:nth-child(6){--gc-rot:.8deg}
html:root body .gc-bs{border:5px solid #fff;box-shadow:var(--gc-sh);transform:rotate(var(--gc-rot,0deg))}
html:root body .gc-bs-name.gc-g,
html:root body .gc-bs-name.gc-n,
html:root body .gc-bs-name.gc-b,
html:root body .gc-bs-name.gc-d{box-shadow:var(--gc-sh)}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(1){--gc-rot:-2.5deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(2){--gc-rot:1.8deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(3){--gc-rot:-1deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(4){--gc-rot:2.6deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(5){--gc-rot:-2deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(6){--gc-rot:1.4deg}
html:root body :is(.gc-brand-wall,.gc-brand) li:nth-child(7){--gc-rot:-1.6deg}
html:root body .gc-bubble{border-radius:28px;box-shadow:var(--gc-sh-lg);transform:rotate(var(--gc-rot,0deg))}
html:root body .gc-quote:nth-child(1) .gc-bubble{--gc-rot:-1.2deg}
html:root body .gc-quote:nth-child(2) .gc-bubble{--gc-rot:1deg}
html:root body .gc-quote:nth-child(3) .gc-bubble{--gc-rot:-.6deg}
/* Pinsel-Badges: Seit 2002, Beratungsschritte, Schäl Sick */
html:root body .gc-t-rat .gc-badge{position:absolute;right:-16px;top:-30px;z-index:3;--gc-bs:130px;--gc-rot:9deg}
html:root body .gc-t-rat .gc-badge .gc-badge-big{font-size:calc(var(--gc-bs)*.3)}
html:root body .gc-step .gc-badge{--gc-bs:120px;margin-left:-8px}
html:root body .gc-step:nth-child(1) .gc-badge{--gc-rot:-8deg}
html:root body .gc-step:nth-child(2) .gc-badge{--gc-rot:6deg}
html:root body .gc-step:nth-child(3) .gc-badge{--gc-rot:-4deg}
html:root body .gc-step .gc-badge-big{font-size:calc(var(--gc-bs)*.46)}
html:root body .gc-schael{position:absolute;right:-2%;top:-6%;z-index:3;--gc-bs:clamp(104px,10vw,142px);--gc-rot:10deg}
html:root body .gc-schael .gc-badge-big{font-size:calc(var(--gc-bs)*.2)}
html:root body .gc-schael .gc-badge-txt{padding:0 6%}
@media (max-width:720px){
	html:root body .gc-t-rat .gc-badge{--gc-bs:104px;right:-6px;top:-22px}
	html:root body .gc-step .gc-badge{--gc-bs:96px;margin:0}
	html:root body .gc-schael{right:-4px;top:-26px}
}
/* Laufband leicht schräg */
html:root body .gc-tape{transform:rotate(-1.6deg)}
/* Slap im Hero: über die linke obere Fotoecke, Ladenschild bleibt frei; mobil aus */
html:root body .gc-hero .gc-slap{left:-34px;right:auto;top:-20px;--gc-rot:-5deg}
@media (max-width:1023px){
	html:root body .gc-hero .gc-slap{display:none}
}

/* =====================================================================
   4 · Ergänzungen zum Dummy
   ===================================================================== */
/* Überschrift-Stufe 3 als eigene Klasse (im Dummy nur als `.step h3` / `.tile h3`) */
html:root body .gc-h3{font-weight:800;font-size:var(--gc-fs-h3);line-height:1.15;letter-spacing:-.02em;text-wrap:balance}
/* WhatsApp ist jetzt ein echter Link (https://wa.me/4922198623624): im Dummy gestrichelt/inaktiv („Nummer folgt“),
   hier normale Schaltflächen. .gc-btn-wa = Linien-Button auf dunklem Grund, .gc-ab-wa = normales Aktionsfeld. */
html:root body :is(.gc-btn-wa,.gc-btn--wa):where(:not(.elementor-widget)){background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
html:root body .gc-ab small{font-weight:500;font-size:.75rem}
/* Bausteine, die im Dummy ihre Textfarbe vom <body> bzw. vom dunklen Menü erben, einzeln (Shortcode) platzierbar machen */
html:root body :is(.gc-hdr-status,.gc-chip),
html:root body .gc-hero-status{color:var(--gc-ink)}
html:root body .gc-menu-live{color:#fff}
/* Logo-Link: keine Kit-Hover-Farbe erben lassen (Alt-Text bei fehlendem Bild) */
html:root body .gc-logo{color:inherit}
/* Sprite des MU-Plugins (<svg class="gc-sprite">): nimmt keinen Platz ein, auch ohne eigene Attribute */
html:root body .gc-sprite{position:absolute;width:0;height:0;overflow:hidden}
/* Badge-Töne als Zusatzklasse ([gc_badge tone="neon|paper"]). Im Dummy tragen zwei Badges diese Klassen ohne Regel
   (beide grün); der Status-Zustand .gc-is-closed hat Vorrang. */
html:root body .gc-badge.gc-neon:where(:not(.gc-is-closed)){--gc-b-bg:var(--gc-neon);color:var(--gc-nacht)}
html:root body .gc-badge.gc-paper:where(:not(.gc-is-closed)){--gc-b-bg:var(--gc-beige);color:var(--gc-nacht)}
/* Adresse ([gc_nap]): im Dummy nur auf Regalgrün. Grundfarben jetzt für helle Abschnitte, die Dummy-Farben
   gelten in .gc-dark. Route-Link mit Icon aus dem Sprite. */
html:root body .gc-addr{color:var(--gc-ink-2)}
html:root body .gc-addr strong{color:var(--gc-ink)}
html:root body .gc-addr a{color:var(--gc-gruen)}
html:root body .gc-addr a svg{flex:none;width:22px;height:22px;margin-right:10px}
html:root body .gc-dark .gc-addr{color:var(--gc-on-dark)}
html:root body .gc-dark .gc-addr strong{color:#fff}
html:root body .gc-dark .gc-addr a{color:var(--gc-neon)}
/* Öffnungszeiten als Liste ([gc_hours layout="list"], Footer): wie `.gc-ftr p` / `.gc-ftr .gc-ftr-off`, aber ohne Footer-Vorfahr */
html:root body .gc-hours-list p{font-size:.96875rem;line-height:1.6}
html:root body .gc-hours-list .gc-ftr-off{margin-top:8px;max-width:24ch;text-wrap:balance}
/* Menü-Inhalt ohne die Dummy-Hülle .gc-menu (z. B. im Elementor-Off-Canvas): die Kronen-Höhe der Skyline-Fußleiste
   kommt im Dummy von .gc-menu – hier auch am Inhalt selbst, sonst fehlt die Variable. */
html:root body .gc-menu-body{--gc-crown:max(15vw,72px)}
@media (max-height:639px) and (max-width:1023px){
	html:root body .gc-menu-body{--gc-crown:0px}
}
/* Status ohne body-Klasse: gc-status.js kann `data-state` setzen (open | before | after | sunday | holiday) –
   am Element selbst oder an einem Vorfahren (auch <body>). Gleiche Optik wie body.gc-shop-open. */
html:root [data-state="open"] .gc-dot,
html:root body .gc-dot[data-state="open"]{background:var(--gc-gruen);box-shadow:0 0 0 3px rgba(1,120,92,.22)}
html:root [data-state="open"] :is(.gc-dark,.gc-topbar) .gc-dot,
html:root body :is(.gc-dark,.gc-topbar) .gc-dot[data-state="open"]{background:var(--gc-neon);box-shadow:0 0 0 3px rgba(94,234,212,.28)}
html:root [data-state="open"] .gc-hours-card .gc-dot,
html:root body .gc-hours-card .gc-dot[data-state="open"]{background:var(--gc-gruen);box-shadow:0 0 0 3px rgba(1,120,92,.22)}
html:root [data-state="open"] .gc-ledbar{background:linear-gradient(90deg,#F5B4F7,#FFF0FF 50%,#F5B4F7);box-shadow:0 0 12px 3px var(--gc-led-a),0 0 46px 12px var(--gc-led-b)}
html:root [data-state="open"] .gc-t-led .gc-tile-in::before{opacity:1}
html:root body .gc-badge[data-state]:not([data-state="open"]){--gc-b-bg:var(--gc-beige);color:var(--gc-nacht)}
/* Bewegung reduzieren: wie im Dummy, aber nur im Geltungsbereich. `!important` hier nicht gegen Healfio,
   sondern weil die Nutzereinstellung jede Animation/Transition der Bausteine schlagen muss. */
@media (prefers-reduced-motion:reduce){
	html:root body :where([class*="gc-"],[class*="gc-"] *),
	html:root body :where([class*="gc-"],[class*="gc-"] *)::before,
	html:root body :where([class*="gc-"],[class*="gc-"] *)::after{animation:none!important;transition:none!important}
}

/* =====================================================================
   5 · Elementor-Brücke: Widgets
   Eine CSS-Klasse am Widget landet auf dem Widget-WRAPPER (`.elementor-widget-…`), nicht auf dem
   inneren Element. Die Bausteine oben gelten für handgebautes Markup (Klasse direkt am Element);
   dieser Teil überträgt sie auf die innere Elementor-Struktur. Container: siehe layout.css.
   Selektoren mit Elementor-Klassen sind hier Absicht. Stand: Elementor 4.3 / Pro 4.3.1
   (Mega-Menü und Off-Canvas gegen die Pro-CSS geschrieben, Überschrift/Button/Akkordeon nach
   der bekannten Core-Struktur) – nicht in echtem Elementor geprüft (P5).
   ===================================================================== */

/* ---------- Überschriften und Text: innerer Titel erbt vom Wrapper ---------- */
/* Gegen Kit (`.elementor-kit-N h2`), Elementor-Standard (`.elementor-widget-heading .elementor-heading-title`
   mit Primärfarbe und line-height:1) und Healfio (`h2{font-size:48px;line-height:61px}`). */
html:root body :is(.gc-h1,.gc-h1-sticker,.gc-h2,.gc-h3,.gc-h-online,.gc-hero-echo,.gc-lead,.gc-ftr-claim,.gc-menu-label,.gc-menu-title,.gc-menu-foot,.gc-mcard-name,.gc-mcard-line) .elementor-heading-title{margin:0;font:inherit;letter-spacing:inherit;word-spacing:inherit;color:inherit}
/* Fließtext/Lead am Text-Editor-Widget: Absatzabstände von Healfio (p{margin-bottom:1rem}) ordnen */
html:root body .gc-lead p{margin:0}
html:root body .gc-lead p+p{margin-top:.75em}
/* Dunkle Abschnitte: Widget-Standardfarben (Primär/Text aus dem Kit) wären auf Regalgrün unlesbar */
html:root body .gc-dark .elementor-heading-title{color:inherit}
html:root body .gc-dark .elementor-widget-text-editor{color:var(--gc-on-dark)}
html:root body .gc-dark .elementor-widget-text-editor a{color:var(--gc-neon)}

/* ---------- Buttons: `.gc-btn` oder nur die Variante am Button-Widget ---------- */
/* Gegen Healfio (`body .elementor-button.elementor-size-sm`: Fläche, Schatten, Radius 20px, :hover) und den Kit-Button. */
html:root body :is(.gc-btn,.gc-btn-primary,.gc-btn--primary,.gc-btn-ghost,.gc-btn--ghost,.gc-btn-neon,.gc-btn--neon,.gc-btn-light,.gc-btn--light,.gc-btn-line,.gc-btn--line,.gc-btn-deep,.gc-btn--deep,.gc-btn-wa,.gc-btn--wa) .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-width:0;min-height:52px;padding:0 1.35em;border:2px solid transparent;border-radius:999px;background:var(--gc-gruen);color:#fff;fill:currentColor;font:700 1rem/1.15 var(--gc-sans);letter-spacing:normal;text-decoration:none;text-align:center;box-shadow:none;transition:transform .18s var(--gc-ease),box-shadow .18s var(--gc-ease),background-color .18s}
html:root body :is(.gc-btn,.gc-btn-primary,.gc-btn--primary,.gc-btn-ghost,.gc-btn--ghost,.gc-btn-neon,.gc-btn--neon,.gc-btn-light,.gc-btn--light,.gc-btn-line,.gc-btn--line,.gc-btn-deep,.gc-btn--deep,.gc-btn-wa,.gc-btn--wa) .elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 20px -12px rgba(7,59,46,.6)}
html:root body :is(.gc-btn-primary,.gc-btn--primary) .elementor-button:hover{background:var(--gc-gruen-d)}
html:root body :is(.gc-btn-ghost,.gc-btn--ghost) .elementor-button{background:#fff;color:var(--gc-gruen);border-color:var(--gc-gruen)}
html:root body :is(.gc-btn-neon,.gc-btn--neon) .elementor-button{background:var(--gc-neon);color:var(--gc-nacht)}
html:root body :is(.gc-btn-light,.gc-btn--light) .elementor-button{background:#fff;color:var(--gc-nacht)}
html:root body :is(.gc-btn-line,.gc-btn--line,.gc-btn-wa,.gc-btn--wa) .elementor-button{background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
html:root body :is(.gc-btn-deep,.gc-btn--deep) .elementor-button{background:var(--gc-nacht);color:#fff}
html:root body :is(.gc-btn,.gc-btn-primary,.gc-btn--primary,.gc-btn-ghost,.gc-btn--ghost,.gc-btn-neon,.gc-btn--neon,.gc-btn-light,.gc-btn--light,.gc-btn-line,.gc-btn--line,.gc-btn-deep,.gc-btn--deep,.gc-btn-wa,.gc-btn--wa) .elementor-button-content-wrapper{display:flex;align-items:center;justify-content:center;gap:.6em}
html:root body :is(.gc-btn,.gc-btn-primary,.gc-btn--primary,.gc-btn-ghost,.gc-btn--ghost,.gc-btn-neon,.gc-btn--neon,.gc-btn-light,.gc-btn--light,.gc-btn-line,.gc-btn--line,.gc-btn-deep,.gc-btn--deep,.gc-btn-wa,.gc-btn--wa) .elementor-button-icon svg{width:20px;height:20px}

/* ---------- Bilder: Klasse am Image-Widget, <img> liegt innen ---------- */
/* Elementor setzt `.elementor-widget-image img{display:inline-block}` → Lücke unter dem Bild */
html:root body :is(.gc-ps,.gc-photo-sticker,.gc-hero-photo,.gc-mcard-img,.gc-skyline,.gc-logo,.gc-logo-sticker).elementor-widget img{display:block}
/* Skyline als Image-Widget (assets/img/skyline.svg): unten angeschlagen, seitlich beschnitten wie im SVG-Sprite */
html:root body .gc-skyline.elementor-widget img{width:100%;height:100%;object-fit:cover;object-position:50% 100%}

/* ---------- FAQ auf dem verschachtelten Akkordeon (<details>/<summary>) ---------- */
html:root body .gc-faq .e-n-accordion{display:grid;gap:10px}
html:root body .gc-faq .e-n-accordion-item{border-radius:var(--gc-r-m);background:#fff;box-shadow:inset 0 0 0 1.5px var(--gc-line);transition:box-shadow .2s}
html:root body .gc-faq .e-n-accordion-item[open]{box-shadow:inset 0 0 0 2px var(--gc-gruen)}
html:root body .gc-faq .e-n-accordion-item-title{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:10px 12px 10px 18px;border:0;cursor:pointer;list-style:none;color:var(--gc-ink);font:700 1rem/1.35 var(--gc-sans);text-wrap:balance}
html:root body .gc-faq .e-n-accordion-item-title::-webkit-details-marker{display:none}
/* Reihenfolge wie im Dummy: Frage links, Plus-Zeichen rechts (Elementor setzt das Icon je nach Einstellung davor) */
html:root body .gc-faq .e-n-accordion-item-title-header{order:1;flex:1 1 auto;text-align:left}
html:root body .gc-faq .e-n-accordion-item-title-icon{order:2}
html:root body .gc-faq .e-n-accordion-item-title-header,
html:root body .gc-faq .e-n-accordion-item-title-text{margin:0;font:inherit;letter-spacing:inherit;color:inherit}
html:root body .gc-faq .e-n-accordion-item-title-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--gc-r-s);background:var(--gc-salbei);color:var(--gc-nacht);transition:background-color .2s}
html:root body .gc-faq .e-n-accordion-item-title-icon svg{width:18px;height:18px;fill:currentColor}
html:root body .gc-faq .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon{background:var(--gc-gruen);color:#fff}
html:root body .gc-faq .e-n-accordion-item>.e-con{width:auto;max-width:66ch;margin:0 12px 14px 18px;padding:14px 16px 15px;border:0;border-radius:var(--gc-r-s);background:var(--gc-nacht);color:var(--gc-on-dark)}
html:root body .gc-faq .e-n-accordion-item>.e-con .elementor-widget-text-editor{color:inherit}
html:root body .gc-faq .e-n-accordion-item>.e-con a{color:var(--gc-neon);font-weight:700}
@media (min-width:721px){
	html:root body .gc-faq .e-n-accordion-item-title{font-size:1.0625rem;padding-left:22px}
	html:root body .gc-faq .e-n-accordion-item>.e-con{margin-left:22px;padding:16px 20px 17px}
}

/* ---------- Mega-Menü: `.gc-nav` am Menu-Widget (.elementor-widget-n-menu), Spike S4 ---------- */
/* Titel wie .gc-nav-link. Variablen mit einer Klasse (0,2,2) → Einstellungen am Widget (0,3,0) gewinnen. */
html:root body .gc-nav{--n-menu-title-color-normal:var(--gc-ink);--n-menu-title-color-hover:var(--gc-ink);--n-menu-title-color-active:#fff;--n-menu-title-font-size:.9375rem;--n-menu-title-line-height:1.15;--n-menu-title-padding:0 8px;--n-menu-title-space-between:2px;--n-menu-title-transition:.15s;--n-menu-open-animation-duration:.25s}
html:root body .gc-nav .e-n-menu-title{min-height:44px;border-radius:999px;font-weight:600;transition:background-color .15s}
html:root body .gc-nav .e-n-menu-title:hover{background:var(--gc-salbei)}
html:root body .gc-nav .e-n-menu-title.e-current{background:var(--gc-nacht)}
/* Panel: Regalgrün, nie höher als der Viewport (Topbar + Header abgezogen; --gc-mtop kann ein Skript genauer setzen),
   scrollt in sich, die Seite dahinter nicht. */
html:root body .gc-nav .e-n-menu-content>.e-con{max-height:calc(100vh - var(--gc-mtop,calc(var(--gc-tb) + var(--gc-hdr))));max-height:calc(100dvh - var(--gc-mtop,calc(var(--gc-tb) + var(--gc-hdr))));overflow-y:auto;overscroll-behavior:contain;background-color:var(--gc-nacht);color:#fff;border-bottom:4px solid var(--gc-neon)}
/* Abdunklung hinter dem offenen Panel ohne Zusatz-Element: Riesenschatten, nach oben abgeschnitten */
html:root body .gc-nav .e-n-menu-content>.e-con.e-active{box-shadow:0 0 0 100vmax rgba(4,30,24,.55);clip-path:inset(0 -100vmax -100vmax -100vmax)}
/* Hover-Absicht: das Panel öffnet nativ sofort, wird aber erst nach 180 ms sichtbar (kein Aufblitzen beim Überfahren) */
@media (prefers-reduced-motion:no-preference){
	html:root body .gc-nav .e-n-menu-content>.e-con.e-active{animation:gc-megaIn .25s ease .18s backwards}
}
@keyframes gc-megaIn{from{opacity:0}to{opacity:1}}
/* `.gc-mega` (Doku-Name): Panel-Container außerhalb von .gc-nav bzw. als eigener Container */
html:root body .gc-mega{background-color:var(--gc-nacht);color:#fff}

/* ---------- Onlineshop-Panel: `[gc_shop_menu]` (inc/woocommerce.php), Gruppen aus dem Kategoriebaum ----------
   Text statt Fotos – der Unterschied zum Sortiment-Panel („im Laden ansehen“) ist gewollt. Vier Spalten,
   bei sieben Gruppen zwei Reihen; rechts die Box mit „Alle Produkte“ und Warenkorb (Maße wie .gc-menu-body). */
html:root body .gc-shopmenu{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:20px var(--gc-cgap);align-items:start;max-width:var(--gc-wrap);margin:0 auto;padding:28px var(--gc-gut) 30px;font:400 var(--gc-fs-body)/1.6 var(--gc-sans);letter-spacing:normal}
html:root body .gc-sm-main{display:grid;gap:16px}
html:root body .gc-sm-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px var(--gc-gap)}
html:root body .gc-sm-group{min-width:0}
html:root body .gc-sm-head{display:flex;align-items:center;min-height:40px;padding-bottom:4px;border-bottom:2px solid rgba(205,239,224,.3);color:#fff;font-weight:800;font-size:1.0625rem;line-height:1.2;letter-spacing:-.015em;text-decoration:none;transition:border-color .15s,color .15s}
html:root body .gc-sm-head:hover{border-bottom-color:var(--gc-neon);color:var(--gc-neon)}
html:root body .gc-sm-links{padding-top:6px}
html:root body .gc-sm-links a{display:flex;align-items:center;min-height:32px;color:var(--gc-on-dark);font-size:.9375rem;line-height:1.25;text-decoration:none}
html:root body .gc-sm-links a:hover{color:var(--gc-neon);text-decoration:underline}
html:root body .gc-sm-links .gc-sm-more{color:var(--gc-neon);font-weight:700}
html:root body .gc-shopmenu :is(.gc-sm-head,.gc-sm-links a):focus-visible{outline:3px solid var(--gc-neon);outline-offset:2px}
html:root body .gc-sm-side{display:grid;gap:12px;align-content:start;padding:18px 18px 20px;border-radius:var(--gc-r-l);background:var(--gc-nacht-2)}
html:root body .gc-sm-side .gc-ml-ctas{margin-top:0}
@media (min-width:1440px){
	html:root body .gc-shopmenu{grid-template-columns:minmax(0,1fr) 312px}
}
@media (min-width:1024px) and (max-height:800px){
	html:root body .gc-shopmenu{padding-top:20px;padding-bottom:22px}
	html:root body .gc-sm-groups{row-gap:14px}
	html:root body .gc-sm-links a{min-height:28px}
}

/* ---------- Off-Canvas: `.gc-offcanvas` am Off-Canvas-Widget (Vollbild-Menü mobil), Spike S4 ---------- */
html:root body .gc-offcanvas .e-off-canvas__content{width:100%;height:100vh;height:100dvh;background-color:var(--gc-nacht);color:#fff;box-shadow:none;overscroll-behavior:contain}
html:root body .gc-offcanvas .e-off-canvas__overlay{background-color:rgba(4,30,24,.55)}
html:root body .gc-offcanvas .elementor-heading-title{color:inherit}

/* ---------- Klebender Header: Wrapper der Theme-Builder-Vorlage, Spike S4 ---------- */
/* Nicht Pro-„Sticky“ (klont den Header → doppelte IDs). Mit Topbar im Header-Template rutscht der Wrapper um die
   Topbar-Höhe nach oben: die Topbar scrollt weg, der Header bleibt (wie im Dummy). */
html:root body .elementor-location-header{position:sticky;top:0;z-index:60}
html:root body .elementor-location-header:has(.gc-topbar){top:calc(-1*var(--gc-tb))}

/* =====================================================================
   6 · Elementor-Brücke: Vorlagen und Seiten aus scripts/relaunch/build-elementor.php (P5/P6a)
   In echtem Elementor geprüft (Staging, Elementor 4.3.3 / Pro 4.3.1).
   ===================================================================== */

/* ---------- `.gc-x`: Container ohne Elementor-Abstände ---------- */
/* Elementor gibt jedem Container 10px Innenabstand und 20px Lücke. Die Bausteine bringen Abstand und
   Raster selbst mit. Ohne Präfix und mit :where(): Spezifität (0,1,0) wie `.e-con`, später geladen –
   ein im Editor gesetzter Abstand (0,3,0) gewinnt weiterhin. */
/* `--flex-wrap-mobile`: Elementor lässt Container bis 767px umbrechen. In einer umbrechenden Spalte wird ein Kind so
   breit wie sein Inhalt (Laufband: 2000px) statt so breit wie der Container. */
:where(.e-con).gc-x{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--row-gap:0px;--column-gap:0px;--flex-wrap-mobile:nowrap}

/* ---------- `.gc-raw`: HTML-/Shortcode-Widget ohne eigene Box ---------- */
/* Das Markup im Widget wird direktes Raster-/Flex-Kind des Containers (wie im Dummy). Nicht im Editor:
   dort braucht Elementor die Hülle zum Anfassen. Spezifität unter den „Ausblenden auf …“-Regeln in layout.css. */
html:root body:not(.elementor-editor-active) .elementor-widget.gc-raw,
html:root body:not(.elementor-editor-active) .elementor-widget.gc-raw>.elementor-widget-container,
html:root body:not(.elementor-editor-active) .elementor-widget.gc-raw>.elementor-widget-container>.elementor-shortcode{display:contents}

/* ---------- Kopfleiste: `.gc-hdr` am Boxed-Container der Vorlage „GC Header“ ---------- */
html:root body .gc-hdr.e-con-boxed{padding-inline:var(--gc-gut)}
html:root body .gc-hdr.e-con-boxed>.e-con-inner{max-width:calc(var(--gc-wrap) - 2*var(--gc-gut));min-height:var(--gc-hdr);gap:12px}
html:root body .gc-logo.elementor-widget a{display:flex;align-items:center}
/* Sprungziel hinter der Kopfleiste, ohne Höhe */
html:root body .gc-main-anchor{display:block;height:0;outline:0}
@media (min-width:1024px){
	html:root body .gc-hdr.e-con-boxed>.e-con-inner{gap:6px}
}
@media (min-width:1440px){
	html:root body .gc-hdr.e-con-boxed>.e-con-inner{gap:12px}
}

/* ---------- Off-Canvas: Inhalt wie das Mobil-Menü des Dummys (`.gc-menu`) ---------- */
html:root body .gc-offcanvas .e-off-canvas__content{overflow-y:auto;scroll-padding-top:86px;scroll-padding-bottom:calc(150px + max(15vw,72px))}
html:root body .gc-oc.e-con{display:flex;flex-direction:column;flex-wrap:nowrap;min-height:100%}
/* „Sortiment“ als <details>: ohne Skript auf- und zuklappbar */
html:root body .gc-ml-details>summary{list-style:none}
html:root body .gc-ml-details>summary::-webkit-details-marker{display:none}
html:root body .gc-ml-details[open]>summary .gc-ml-pm{transform:rotate(180deg)}

/* ---------- Menüleiste (Menu-Widget mit `.gc-nav`) wie die Dummy-Leiste ---------- */
/* Das Widget füllt den freien Platz; die Einträge stehen rechts am Status-Chip. */
html:root body .gc-nav{--n-menu-heading-justify-content:flex-end}
/* Mega-Eintrag fett; Pfeil als gezeichneter Winkel statt Icon-Schrift */
html:root body .gc-nav .e-n-menu-title:has(.e-n-menu-dropdown-icon){font-weight:700}
html:root body .gc-nav .e-n-menu-title-text{font-weight:inherit}
/* Icon als Schrift (<i>) oder als Inline-SVG (Elementor-Funktion „Inline-Schrift-Icons“) */
html:root body .gc-nav .e-n-menu-dropdown-icon :is(i,svg){display:none}
/* Fokus in der Leiste und am Logo (Elementor-Widgets: der Reset in Teil 1 nimmt sie aus) */
html:root body .gc-nav .e-n-menu-title :is(a,button):focus-visible,
html:root body .gc-logo a:focus-visible{outline:3px solid var(--gc-nacht);outline-offset:3px}
html:root body .gc-nav .e-n-menu-title.e-current :is(a,button):focus-visible{outline-color:var(--gc-gruen)}
html:root body .gc-nav .e-n-menu-dropdown-icon :is(.e-n-menu-dropdown-icon-opened,.e-n-menu-dropdown-icon-closed)::before{content:"";display:block;width:8px;height:8px;border-right:2.6px solid currentColor;border-bottom:2.6px solid currentColor;border-radius:1px;transform:translateY(-2px) rotate(45deg)}
html:root body .gc-nav .e-n-menu-dropdown-icon .e-n-menu-dropdown-icon-opened::before{transform:translateY(2px) rotate(225deg)}
@media (min-width:1440px){
	html:root body .gc-nav{--n-menu-title-font-size:.96875rem;--n-menu-title-padding:0 13px}
}
/* Vier Einträge (Sortiment, Onlineshop, Growshop Köln, Kontakt & Anfahrt) bleiben in einer Zeile.
   1024–1279: Route-Knopf in der kurzen Fassung, Titel enger – sonst bricht der vierte Eintrag um. */
html:root body .gc-nav .e-n-menu-heading{flex-wrap:nowrap}
html:root body .gc-nav .e-n-menu-title{white-space:nowrap}
@media (min-width:1024px) and (max-width:1279px){
	html:root body .gc-nav{--n-menu-title-padding:0 6px;--n-menu-title-space-between:0px}
	html:root body .gc-hdr-route{padding:0 .8em}
	html:root body .gc-hdr-route .gc-long{display:none}
	html:root body .gc-hdr-route .gc-short{display:inline}
}
/* Mit dem Warenkorb-Symbol (S8) reicht der Platz unter 1160 px auch dafür nicht mehr: Der Route-Knopf
   zeigt nur noch die Nadel, das Wort bleibt für Screenreader. */
@media (min-width:1024px) and (max-width:1159px){
	html:root body .gc-hdr-route{justify-content:center;width:46px;padding:0;gap:0}
	html:root body .gc-hdr-route .gc-short{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}

/* ---------- Warenkorb-Symbol der Kopfleiste (`header/cart`): alle Breiten, mobil links neben dem Burger.
   Die Zahl bleibt versteckt, bis das Skript sie füllt (Seiten-Cache) – der Platz des Symbols steht fest. ---------- */
html:root body .gc-hdr-cart{position:relative;flex:none;display:inline-grid;place-items:center;width:48px;height:48px;border-radius:var(--gc-r-s);background:#fff;border:1.5px solid var(--gc-salbei);color:var(--gc-ink);text-decoration:none;transition:border-color .15s}
html:root body .gc-hdr-cart:hover{border-color:var(--gc-gruen)}
html:root body .gc-hdr-cart:focus-visible{outline:3px solid var(--gc-nacht);outline-offset:3px}
html:root body .gc-hdr-cart svg{width:22px;height:22px}
html:root body .gc-hdr-cart-n{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--gc-gruen);color:#fff;font:700 .75rem/1 var(--gc-sans);letter-spacing:normal}
html:root body .gc-hdr-cart-n[hidden]{display:none}
@media (min-width:1024px){
	html:root body .gc-hdr-cart{width:44px;height:44px;margin-left:2px}
}

/* ---------- Vorspann am Text-Widget: Zeilenlänge ---------- */
/* Elementor begrenzt Widgets mit `.elementor.elementor .e-con>.elementor-widget{max-width:100%}` (0,4,0) –
   das schlägt `.gc-lead{max-width:52ch}` am Wrapper. Die Länge gilt deshalb am inneren Element. */
html:root body .gc-lead.elementor-widget>.elementor-widget-container{max-width:52ch}
html:root body .gc-hero .gc-lead.elementor-widget>.elementor-widget-container{max-width:40ch}
@media (min-width:1024px) and (max-height:800px){
	html:root body .gc-hero .gc-lead.elementor-widget>.elementor-widget-container{max-width:44ch}
}

/* =====================================================================
   7 · Seitenkopf der Unterseiten und Vorlagen (P6b–d, P7): Brotkrumen, H1, Vorspann
   Gemeinsamer Baustein beider Spuren – `$gc_page_head()` in scripts/relaunch/build-elementor.php.
   Die H1 der Unterseiten ist kleiner als die Sticker-H1 der Startseite (`.gc-h1`): `.gc-page-h1`.
   Abschnitts-Stile der Seiten stehen in pages.css, Produktkarte in card.css, Shop in woo.css.
   ===================================================================== */
html:root body .gc-page-head{padding-block:clamp(20px,1rem + 1.6vw,40px) clamp(28px,1.2rem + 2.4vw,64px);color:var(--gc-ink);font:400 var(--gc-fs-body)/1.6 var(--gc-sans);letter-spacing:normal;overflow-x:clip}
html:root body .gc-page-head.e-con-boxed{padding-inline:var(--gc-gut)}
html:root body .gc-page-head.e-con-boxed>.e-con-inner{max-width:calc(var(--gc-wrap) - 2*var(--gc-gut));gap:var(--gc-s2)}
html:root body .gc-page-h1{font-weight:900;font-size:clamp(2.25rem,1.35rem + 3.6vw,5rem);line-height:.98;letter-spacing:-.04em;color:var(--gc-gruen);text-wrap:balance;overflow-wrap:anywhere;hyphens:auto}
html:root body .gc-page-h1 .elementor-heading-title{margin:0;font:inherit;letter-spacing:inherit;word-spacing:inherit;color:inherit}
html:root body .gc-page-head.gc-dark .gc-page-h1{color:#fff}
/* Lange Titel (Produkt, Beitrag, Rechtstext): eine Stufe kleiner */
html:root body .gc-page-h1.gc-page-h1-s{font-weight:800;font-size:clamp(1.75rem,1.2rem + 2vw,3.25rem);line-height:1.06;letter-spacing:-.03em}
/* Brotkrumen */
html:root body .gc-crumbs{font:500 .875rem/1.4 var(--gc-sans);letter-spacing:normal;color:var(--gc-ink-2)}
html:root body .gc-crumbs p{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:0}
html:root body .gc-crumbs a{display:inline-flex;align-items:center;min-height:32px;color:inherit;text-decoration:underline;text-underline-offset:.18em}
html:root body .gc-crumbs a:hover{color:var(--gc-gruen)}
html:root body .gc-crumbs .last{color:var(--gc-ink);font-weight:600}
html:root body .gc-crumbs-sep{color:var(--gc-ink-2);opacity:.7}
html:root body .gc-dark .gc-crumbs,html:root body .gc-dark .gc-crumbs .last{color:var(--gc-on-dark)}
html:root body .gc-dark .gc-crumbs a:hover{color:var(--gc-neon)}
/* Rank Math setzt sein eigenes Trennzeichen in `.separator` (Einstellung „Trennzeichen“); hier als Winkel gezeichnet */
html:root body .gc-crumbs .separator{font-size:0;opacity:.7}
html:root body .gc-crumbs .separator::before{content:"›";font-size:.875rem}
/* Mega-Panel: Link zur Übersicht /sortiment/ in der Fußzeile (P6c) */
html:root body .gc-menu-foot .gc-menu-all{margin-left:.5em;color:var(--gc-neon);font-weight:700;white-space:nowrap}
