/*
Theme Name: Gruben Grooves 2027 Starter
Theme URI: https://example.invalid/gruben-grooves-2027
Author: OpenAI
Description: Eigenständiges, Gutenberg-editierbares Starter-Theme im Look der Gruben-Grooves-2027-Vorlage. Keine Laufzeit-Abhängigkeit von der Referenzseite.
Version: 3.0.0
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: gruben-grooves-2027
License: GPL-2.0-or-later
*/

:root {
  --gg-ink:#11110f;
  --gg-ink-soft:#1a1a17;
  --gg-paper:#f2efe7;
  --gg-paper-2:#e5e0d4;
  --gg-white:#fffdf8;
  --gg-accent:#e55f3e;
  --gg-accent-dark:#b84028;
  --gg-lime:#d9e86d;
  --gg-line:rgba(17,17,15,.18);
  --gg-line-light:rgba(255,253,248,.22);
  --gg-max:1240px;
  --gg-radius:0px;
  --gg-shadow:0 16px 50px rgba(0,0,0,.16);
  --gg-header-bg:#11110f;
  --gg-header-text:#fffdf8;
  --gg-header-hover:#d9e86d;
  --gg-header-height:74px;
  --gg-header-max-width:1240px;
  --gg-header-padding:24px;
  --gg-header-border:#3c3c39;
  --gg-header-border-width:1px;
  --gg-header-blur:10px;
  --gg-brand-font:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --gg-brand-size:20px;
  --gg-brand-primary-font:var(--gg-brand-font);
  --gg-brand-secondary-font:var(--gg-brand-font);
  --gg-brand-primary-size:var(--gg-brand-size);
  --gg-brand-secondary-size:var(--gg-brand-size);
  --gg-brand-primary-color:#fffdf8;
  --gg-brand-secondary-color:#fffdf8;
  --gg-brand-primary-weight:900;
  --gg-brand-secondary-weight:300;
  --gg-brand-primary-stroke:0px;
  --gg-brand-secondary-stroke:0px;
  --gg-brand-letter-spacing:-.8px;
  --gg-brand-primary-letter-spacing:var(--gg-brand-letter-spacing);
  --gg-brand-secondary-letter-spacing:var(--gg-brand-letter-spacing);
  --gg-brand-primary-line-height:1;
  --gg-brand-secondary-line-height:1;
  --gg-brand-primary-style:normal;
  --gg-brand-secondary-style:normal;
  --gg-brand-primary-transform:none;
  --gg-brand-secondary-transform:none;
  --gg-brand-primary-offset-y:0px;
  --gg-brand-secondary-offset-y:0px;
  --gg-brand-word-gap:5px;
  --gg-brand-gap:9px;
  --gg-brand-direction:row;
  --gg-brand-mark-color:#fffdf8;
  --gg-brand-mark-size:27px;
  --gg-brand-mark-font-size:16px;
  --gg-brand-mark-border:2px;
  --gg-logo-max-height:52px;
  --gg-logo-max-width:400px;
  --gg-menu-font:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --gg-menu-size:13px;
  --gg-menu-weight:800;
  --gg-menu-letter-spacing:1.56px;
  --gg-menu-gap:28px;
  --gg-menu-padding-y:10px;
  --gg-menu-color:#fffdf8;
  --gg-menu-hover:#d9e86d;
  --gg-menu-transform:uppercase;
  --gg-mobile-menu-bg:#11110f;
  --gg-mobile-menu-color:#fffdf8;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--gg-paper);color:var(--gg-ink);font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
img{max-width:100%;height:auto;display:block}
::selection{background:var(--gg-accent);color:var(--gg-white)}

.gg-skip-link{position:fixed;left:12px;top:-100px;z-index:9999;background:var(--gg-white);color:var(--gg-ink);padding:10px 14px;text-decoration:none}.gg-skip-link:focus{top:12px}

/* Header */
.gg-site-header{position:sticky;top:0;z-index:50;background:var(--gg-header-bg);color:var(--gg-header-text);border-bottom:var(--gg-header-border-width) solid var(--gg-header-border);backdrop-filter:blur(var(--gg-header-blur))}
.gg-site-header.gg-header-static{position:relative;top:auto}
.gg-header-inner{max-width:var(--gg-header-max-width);margin:0 auto;min-height:var(--gg-header-height);padding:0 var(--gg-header-padding);display:flex;align-items:center;justify-content:space-between;gap:28px}
.gg-brand{display:inline-flex;flex-direction:var(--gg-brand-direction);align-items:center;gap:var(--gg-brand-gap);color:var(--gg-header-text);text-decoration:none;font-family:var(--gg-brand-font);font-size:var(--gg-brand-size);font-weight:var(--gg-brand-primary-weight);letter-spacing:var(--gg-brand-letter-spacing);line-height:1;flex:0 1 auto;min-width:0}.gg-brand-mark{width:var(--gg-brand-mark-size);height:var(--gg-brand-mark-size);border:var(--gg-brand-mark-border) solid currentColor;border-radius:50%;display:inline-grid;place-items:center;font-size:var(--gg-brand-mark-font-size);color:var(--gg-brand-mark-color);flex:0 0 auto}.gg-brand-text{display:inline-flex;gap:var(--gg-brand-word-gap);align-items:baseline;white-space:nowrap}.gg-brand-primary,.gg-brand-secondary{display:inline-block;position:relative}.gg-brand-primary{font-family:var(--gg-brand-primary-font);font-size:var(--gg-brand-primary-size);font-weight:var(--gg-brand-primary-weight);letter-spacing:var(--gg-brand-primary-letter-spacing);line-height:var(--gg-brand-primary-line-height);font-style:var(--gg-brand-primary-style);text-transform:var(--gg-brand-primary-transform);top:var(--gg-brand-primary-offset-y);color:var(--gg-brand-primary-color);-webkit-text-stroke-width:var(--gg-brand-primary-stroke);-webkit-text-stroke-color:var(--gg-brand-primary-color);paint-order:stroke fill}.gg-brand-secondary{font-family:var(--gg-brand-secondary-font);font-size:var(--gg-brand-secondary-size);font-weight:var(--gg-brand-secondary-weight);letter-spacing:var(--gg-brand-secondary-letter-spacing);line-height:var(--gg-brand-secondary-line-height);font-style:var(--gg-brand-secondary-style);text-transform:var(--gg-brand-secondary-transform);top:var(--gg-brand-secondary-offset-y);color:var(--gg-brand-secondary-color);-webkit-text-stroke-width:var(--gg-brand-secondary-stroke);-webkit-text-stroke-color:var(--gg-brand-secondary-color);paint-order:stroke fill}
.gg-custom-logo{max-height:min(var(--gg-logo-max-height),calc(var(--gg-header-height) - 8px));max-width:var(--gg-logo-max-width);width:auto;object-fit:contain}
.gg-nav-toggle{display:none;border:1px solid var(--gg-header-border);background:transparent;color:var(--gg-menu-color);font-family:var(--gg-menu-font);font-size:var(--gg-menu-size);font-weight:var(--gg-menu-weight);letter-spacing:var(--gg-menu-letter-spacing);text-transform:var(--gg-menu-transform);padding:8px 12px;cursor:pointer}
.gg-primary-nav ul{display:flex;align-items:center;gap:var(--gg-menu-gap);list-style:none;padding:0;margin:0}.gg-primary-nav a{display:block;color:var(--gg-menu-color);text-decoration:none;text-transform:var(--gg-menu-transform);font-family:var(--gg-menu-font);font-size:var(--gg-menu-size);font-weight:var(--gg-menu-weight);letter-spacing:var(--gg-menu-letter-spacing);padding-block:var(--gg-menu-padding-y);line-height:1.2}.gg-primary-nav a:hover,.gg-primary-nav a:focus{color:var(--gg-menu-hover)}

/* WordPress content */
.gg-main{overflow:hidden}.gg-main > .wp-block-group,.gg-main > .wp-block-cover,.gg-main > .wp-block-columns{margin-block-start:0;margin-block-end:0}

/*
 * Gutenberg adds the global blockGap as a top margin to every flow-layout
 * child after the first. In custom grid/flex containers this shifts columns
 * vertically. These containers manage their own spacing, so reset that margin.
 */
.gg-main :where(
  .gg-facts .gg-container,
  .gg-hero-status,
  .gg-hero-meta,
  .gg-section-head,
  .gg-intro-grid,
  .gg-gallery,
  .gg-gallery-wide,
  .gg-timeline,
  .gg-band-list,
  .gg-band-card,
  .gg-meta-row,
  .gg-ticket-grid,
  .gg-ticket-note,
  .gg-feature-grid,
  .gg-date-section,
  .gg-shuttle-grid,
  .gg-schedule,
  .gg-schedule-row
) > *{
  margin-block-start:0!important;
  margin-block-end:0!important;
}
.gg-container{width:min(calc(100% - 48px),var(--gg-max));margin-inline:auto}
.gg-kicker{font-size:12px!important;line-height:1.2!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.16em;margin:0 0 18px!important}
.gg-kicker-light{color:rgba(255,253,248,.72)}
.gg-display,.gg-main h1,.gg-main h2,.gg-main h3{font-family:Impact,"Arial Black","Helvetica Neue",Arial,sans-serif;font-weight:900;letter-spacing:-.045em;line-height:.92}
.gg-main p{margin-top:0}
.gg-main .wp-block-button__link{border-radius:0;padding:14px 20px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:13px;transition:transform .18s ease,background .18s ease,color .18s ease}.gg-main .wp-block-button__link:hover{transform:translateY(-2px)}

/* Hero */
.gg-hero{position:relative;background:var(--gg-ink);color:var(--gg-white);min-height:760px;padding:88px 0 30px;display:flex;align-items:stretch}.gg-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 20%,rgba(229,95,62,.32),transparent 31%),linear-gradient(105deg,transparent 0 58%,rgba(217,232,109,.07) 58% 59%,transparent 59% 100%);pointer-events:none}.gg-hero:after{content:"47°24′N";position:absolute;right:-12px;bottom:8px;font:900 clamp(64px,13vw,200px)/.8 Impact,"Arial Black",sans-serif;letter-spacing:-.06em;color:rgba(255,255,255,.035);white-space:nowrap}
.gg-hero .gg-container{position:relative;z-index:2;display:grid;grid-template-rows:auto 1fr auto}.gg-hero-status{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-top:1px solid var(--gg-line-light);padding-top:14px}.gg-status-pill{font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;border:1px solid rgba(217,232,109,.55);color:var(--gg-lime);padding:8px 10px}.gg-hero-main{display:flex;flex-direction:column;justify-content:center;padding:56px 0}.gg-hero-eyebrow{font-size:clamp(17px,2vw,28px);font-weight:700;letter-spacing:-.02em;margin:0 0 18px;color:rgba(255,253,248,.75)}.gg-hero-title{font-size:clamp(92px,16vw,230px)!important;margin:0!important;text-transform:none;line-height:.73!important;max-width:1050px}.gg-hero-title .gg-thin{font-family:"Helvetica Neue",Arial,sans-serif;font-weight:200;letter-spacing:-.085em}.gg-hero-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-top:1px solid var(--gg-line-light);padding-top:18px}.gg-hero-meta strong{font-size:clamp(20px,2.2vw,31px);line-height:1.15}.gg-hero-meta .wp-block-buttons{margin:0}

.gg-facts{background:var(--gg-paper);border-bottom:1px solid var(--gg-line)}.gg-facts .gg-container{display:grid;grid-template-columns:repeat(4,1fr)}.gg-fact{padding:22px 20px;border-left:1px solid var(--gg-line)}.gg-fact:last-child{border-right:1px solid var(--gg-line)}.gg-fact small{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:900;opacity:.55;margin-bottom:5px}.gg-fact strong{display:block;font-size:16px;line-height:1.25}

/* Section bases */
.gg-section{padding:110px 0}.gg-section-dark{background:var(--gg-ink);color:var(--gg-white)}.gg-section-paper{background:var(--gg-paper)}.gg-section-accent{background:var(--gg-accent);color:var(--gg-ink)}
.gg-section-no-top{padding-top:0}.gg-section-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:64px;align-items:end;margin-bottom:64px}.gg-section-number{font:900 14px/1 "Arial Narrow",Arial,sans-serif;letter-spacing:.16em}.gg-section-title{font-size:clamp(54px,7vw,108px)!important;margin:0!important;max-width:900px}.gg-section-copy{font-size:clamp(18px,1.7vw,24px);line-height:1.42;max-width:800px}.gg-rule{border-top:1px solid currentColor;opacity:.22;margin:34px 0}

/* Intro */
.gg-intro-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:80px}.gg-intro-lead{font-size:clamp(29px,3.2vw,48px);line-height:1.12;letter-spacing:-.035em;font-weight:700}.gg-intro-copy{columns:2;column-gap:46px}.gg-intro-copy p{break-inside:avoid;margin-bottom:1.2em}.gg-statement{margin-top:56px!important;border-top:1px solid var(--gg-line);padding-top:18px;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.13em}

/* Gallery */
.gg-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.gg-gallery figure{margin:0;position:relative;overflow:hidden;background:#222}.gg-gallery img{width:100%;height:100%;object-fit:cover;min-height:520px;transition:transform .5s ease}.gg-gallery figure:nth-child(2) img{min-height:520px}.gg-gallery figure:hover img{transform:scale(1.015)}.gg-image-caption{position:absolute;left:18px;bottom:18px;margin:0!important;background:var(--gg-ink);color:var(--gg-white);font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:800;padding:8px 10px}
.gg-gallery-wide{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gg-gallery-wide img{width:100%;height:420px;object-fit:cover}

/* Program */
.gg-program-intro{max-width:860px;margin-bottom:50px}.gg-timeline{display:flex;gap:0;margin:40px 0 70px;border-top:1px solid var(--gg-line-light);border-bottom:1px solid var(--gg-line-light)}.gg-time{flex:1;padding:18px 18px 16px;border-right:1px solid var(--gg-line-light)}.gg-time:first-child{border-left:1px solid var(--gg-line-light)}.gg-time strong{display:block;font-size:24px}.gg-time span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;opacity:.65}
.gg-band-list{display:grid;gap:0;border-top:1px solid var(--gg-line-light)}.gg-band-card{display:grid;grid-template-columns:150px minmax(0,.75fr) minmax(300px,1.25fr);gap:34px;padding:52px 0;border-bottom:1px solid var(--gg-line-light);align-items:start}.gg-band-index{font:900 14px/1.2 "Arial Narrow",Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;color:var(--gg-lime)}.gg-band-name{font-size:clamp(42px,5vw,74px)!important;margin:0!important;text-transform:uppercase}.gg-band-copy p{color:rgba(255,253,248,.78)}.gg-band-copy strong{color:var(--gg-white)}.gg-meta-row{display:grid;grid-template-columns:125px 1fr;gap:15px;border-top:1px solid rgba(255,255,255,.12);padding:13px 0}.gg-meta-row:last-of-type{border-bottom:1px solid rgba(255,255,255,.12)}.gg-meta-row b{font-size:10px;text-transform:uppercase;letter-spacing:.12em;opacity:.6}.gg-band-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.gg-band-actions a{display:inline-block;border:1px solid rgba(255,255,255,.28);padding:9px 11px;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.gg-band-actions a:hover{border-color:var(--gg-lime);color:var(--gg-lime)}

/* Tickets */
.gg-ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--gg-line);border-left:1px solid var(--gg-line);margin-top:50px}.gg-ticket-card{padding:30px;min-height:290px;border-right:1px solid var(--gg-line);border-bottom:1px solid var(--gg-line);display:flex;flex-direction:column}.gg-ticket-card h3{font-size:30px!important;margin:0 0 16px!important}.gg-price{font:900 clamp(45px,5vw,70px)/.9 Impact,"Arial Black",sans-serif;letter-spacing:-.04em;margin:auto 0 18px}.gg-ticket-card p:last-child{font-size:14px;opacity:.75;margin-bottom:0}.gg-ticket-note{display:flex;justify-content:space-between;gap:28px;border-bottom:1px solid var(--gg-line);padding:18px 0;font-weight:700}

/* Feature grid */
.gg-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--gg-line);border-left:1px solid var(--gg-line)}.gg-feature{min-height:250px;padding:28px;border-right:1px solid var(--gg-line);border-bottom:1px solid var(--gg-line)}.gg-feature small{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:900;opacity:.55;margin-bottom:46px}.gg-feature h3{font-size:31px!important;margin:0 0 14px!important}.gg-feature p{font-size:16px;max-width:30em}

/* Date poster */
.gg-date-section{position:relative;background:var(--gg-accent);min-height:720px;display:grid;grid-template-columns:1fr 1fr}.gg-date-image{min-height:720px;background:var(--gg-accent-dark);overflow:hidden}.gg-date-image img{width:100%;height:100%;object-fit:cover}.gg-date-copy{padding:75px max(30px,calc((100vw - var(--gg-max))/2)) 70px 65px;display:flex;flex-direction:column;justify-content:center}.gg-date-copy h2{font-size:clamp(86px,10vw,160px)!important;margin:0!important;line-height:.72!important}.gg-date-copy h2 span{display:block}.gg-date-copy p{max-width:520px;font-size:21px;margin-top:46px}

/* Shuttle */
.gg-shuttle-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.gg-shuttle-image img{width:100%;min-height:480px;object-fit:cover}.gg-shuttle-title{font-size:clamp(58px,6vw,90px)!important;margin:0 0 28px!important}.gg-schedule{margin-top:34px;border-top:1px solid var(--gg-line-light)}.gg-schedule-row{display:grid;grid-template-columns:145px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--gg-line-light)}.gg-schedule-row b{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--gg-lime)}.gg-schedule-row span{font-weight:800;letter-spacing:.02em}.gg-small-note{font-size:13px;opacity:.65;margin-top:18px!important}

/* Standard pages */
.gg-standard-page{width:min(calc(100% - 48px),900px);margin:0 auto;padding:90px 0 120px}.gg-standard-page h1{font-size:clamp(56px,8vw,110px);margin:0 0 40px}.gg-standard-page h2{font-size:42px;margin-top:48px}

/* Footer */
.gg-site-footer{background:#090908;color:var(--gg-white);padding:55px 0 28px}.gg-footer-inner{width:min(calc(100% - 48px),var(--gg-max));margin:auto}.gg-footer-top{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;padding-bottom:44px;border-bottom:1px solid var(--gg-line-light)}.gg-footer-brand{font:900 clamp(48px,8vw,120px)/.8 Impact,"Arial Black",sans-serif;letter-spacing:-.05em}.gg-footer-meta{text-align:right;font-size:14px}.gg-footer-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center;padding-top:22px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.7}.gg-footer-links{display:flex;flex-wrap:wrap;gap:18px}.gg-footer-links a{text-decoration:none}

/* Editor / core fixes */
.gg-main .alignwide{width:min(calc(100% - 48px),var(--gg-max));margin-inline:auto}.gg-main .alignfull{width:100%;margin-inline:0}.gg-main ul,.gg-main ol{padding-left:1.2em}.gg-main blockquote{border-left:3px solid var(--gg-lime);margin:25px 0;padding:0 0 0 18px;color:rgba(255,255,255,.8)}

@media (max-width:980px){
  /* Header dimensions remain controlled by the Customizer at every viewport width. */
  .gg-header-inner{min-height:var(--gg-header-height)}.gg-nav-toggle{display:block}.gg-primary-nav{position:absolute;left:0;right:0;top:100%;background:var(--gg-mobile-menu-bg);color:var(--gg-mobile-menu-color);border-top:1px solid var(--gg-header-border);display:none}.gg-primary-nav.is-open{display:block}.gg-primary-nav ul{display:block;padding:10px 24px 22px}.gg-primary-nav li{border-bottom:1px solid rgba(255,255,255,.1)}.gg-primary-nav a{display:block;padding:14px 0;color:var(--gg-mobile-menu-color)}
  .gg-hero{min-height:700px;padding-top:60px}.gg-hero-status{display:block}.gg-status-pill{display:inline-block;margin-top:12px}.gg-hero-meta{align-items:flex-start;flex-direction:column}
  .gg-facts .gg-container{grid-template-columns:1fr 1fr}.gg-fact:nth-child(2){border-right:1px solid var(--gg-line)}.gg-fact:nth-child(n+3){border-top:1px solid var(--gg-line)}
  .gg-section{padding:80px 0}.gg-section-head,.gg-intro-grid,.gg-shuttle-grid{grid-template-columns:1fr;gap:35px}.gg-intro-copy{columns:1}.gg-band-card{grid-template-columns:110px 1fr}.gg-band-copy{grid-column:2}.gg-ticket-grid,.gg-feature-grid{grid-template-columns:1fr 1fr}.gg-date-section{grid-template-columns:1fr}.gg-date-image{min-height:560px}.gg-date-copy{padding:65px 24px 75px}.gg-shuttle-image img{min-height:360px}
}
@media (max-width:640px){
  body{font-size:16px}.gg-header-inner{width:100%;min-height:var(--gg-header-height);padding-left:var(--gg-header-padding);padding-right:var(--gg-header-padding)}.gg-container,.gg-footer-inner,.gg-main .alignwide,.gg-standard-page{width:min(calc(100% - 32px),var(--gg-max));padding-left:0;padding-right:0}
  .gg-hero{min-height:650px;padding-top:42px}.gg-hero-title{font-size:clamp(75px,25vw,125px)!important}.gg-hero-main{padding:45px 0}.gg-hero-meta strong{font-size:20px}
  .gg-facts .gg-container{width:100%;grid-template-columns:1fr 1fr}.gg-fact{padding:17px 16px}.gg-fact:first-child,.gg-fact:nth-child(3){border-left:0}.gg-fact:nth-child(2),.gg-fact:nth-child(4){border-right:0}
  .gg-section{padding:65px 0}.gg-section-title{font-size:50px!important}.gg-gallery,.gg-gallery-wide{grid-template-columns:1fr}.gg-gallery img,.gg-gallery figure:nth-child(2) img,.gg-gallery-wide img{min-height:0;height:340px}.gg-band-card{grid-template-columns:1fr;gap:12px;padding:38px 0}.gg-band-copy{grid-column:auto}.gg-band-name{font-size:44px!important}.gg-timeline{display:grid;grid-template-columns:1fr 1fr}.gg-time{border-bottom:1px solid var(--gg-line-light)}.gg-ticket-grid,.gg-feature-grid{grid-template-columns:1fr}.gg-ticket-card{min-height:240px}.gg-date-image{min-height:420px}.gg-date-copy h2{font-size:84px!important}.gg-schedule-row{grid-template-columns:1fr;gap:5px}.gg-footer-top{grid-template-columns:1fr}.gg-footer-meta{text-align:left}.gg-footer-bottom{align-items:flex-start;flex-direction:column}.gg-footer-brand{font-size:70px}
}


/* Background images and slideshows */
.gg-bg-slides{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.gg-bg-slide{position:absolute;inset:0;background-size:cover;background-position:center center;background-repeat:no-repeat;opacity:0;transition:opacity 1.1s ease;will-change:opacity}
.gg-bg-slide.is-active{opacity:1}

.gg-header-background{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.gg-header-background__overlay{position:absolute;inset:0;z-index:1;pointer-events:none}
.gg-site-header.gg-header-has-bg{background:var(--gg-header-bg);isolation:isolate}
.gg-site-header .gg-header-inner{position:relative;z-index:2}

.gg-page-background{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.gg-page-background__overlay{position:absolute;inset:0;z-index:1;pointer-events:none}
.gg-main,.gg-standard-page,.gg-site-footer{position:relative;z-index:1}

/* Gutenberg block: GG Hintergrund / Slideshow */
.gg-bg-slider{position:relative;isolation:isolate;overflow:hidden;min-height:420px;color:var(--gg-white);display:flex;align-items:stretch}
.gg-bg-slider>.gg-bg-slides{z-index:-3}
.gg-bg-slider__overlay{position:absolute;inset:0;z-index:-2;pointer-events:none}
.gg-bg-slider__content{position:relative;z-index:1;width:100%;padding:clamp(42px,7vw,100px) max(24px,calc((100% - var(--gg-max))/2));display:flex;flex-direction:column;justify-content:center}
.gg-bg-slider__content>.wp-block-group:first-child{margin-block-start:0}
.gg-bg-slider.alignwide{width:min(calc(100% - 48px),var(--gg-max));margin-inline:auto}
.gg-bg-slider.alignfull{width:100%;margin-inline:0}

@media (prefers-reduced-motion:reduce){
  .gg-bg-slide{transition:none}
}
