:root,:root[data-theme=light]{color-scheme:light;--color-bg: #f7f5ef;--color-surface: #fffdf8;--color-surface-strong: #101820;--color-text: #172129;--color-muted: #5c656b;--color-border: #d9d3c5;--color-brand: #9b2148;--color-brand-strong: #701532;--color-on-brand: #fff;--color-accent: #ebe1b5;--color-event-section: #ebe1b5;--color-on-dark: #fffaf0;--color-notice: #fff2ca;--shadow: 0 24px 70px rgb(16 24 32 / 12%);--radius-sm: .4rem;--radius: 1rem;--radius-lg: 1.75rem;--container: 74rem;--font-body: system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: georgia, "Times New Roman", serif}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-bg: #0c1217;--color-surface: #151e25;--color-surface-strong: #05090c;--color-text: #f4efe5;--color-muted: #bdc5c9;--color-border: #36434b;--color-brand: #d5a154;--color-brand-strong: #f0c776;--color-on-brand: #101820;--color-accent: #332c1f;--color-event-section: #05090c;--color-notice: #382f18;--shadow: 0 24px 70px rgb(0 0 0 / 35%)}}:root[data-theme=dark]{color-scheme:dark;--color-bg: #0c1217;--color-surface: #151e25;--color-surface-strong: #05090c;--color-text: #f4efe5;--color-muted: #bdc5c9;--color-border: #36434b;--color-brand: #d5a154;--color-brand-strong: #f0c776;--color-on-brand: #101820;--color-accent: #332c1f;--color-event-section: #05090c;--color-notice: #382f18;--shadow: 0 24px 70px rgb(0 0 0 / 35%)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{min-width:20rem;margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:1rem;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--color-brand-strong);text-decoration-thickness:.09em;text-underline-offset:.2em}button,a{-webkit-tap-highlight-color:transparent}a:hover{color:var(--color-brand)}:focus-visible{outline:3px solid var(--color-brand);outline-offset:4px}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.025em;line-height:1.08}h1{max-width:13ch;margin-bottom:1.5rem;font-size:clamp(2.7rem,8vw,5.8rem);font-weight:500}h2{margin-bottom:1rem;font-size:clamp(2rem,5vw,3.8rem);font-weight:500}h3{margin-bottom:.75rem;font-size:clamp(1.35rem,3vw,1.8rem)}address{font-style:normal}.container{width:min(100% - 2rem,var(--container));margin-inline:auto}.narrow{max-width:48rem}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:20;transform:translateY(-160%);border-radius:var(--radius-sm);padding:.75rem 1rem;background:var(--color-surface-strong);color:var(--color-on-dark)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 92%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-layout{display:grid;grid-template-areas:"brand menu" "nav nav" "theme theme";grid-template-columns:1fr auto;gap:.75rem;align-items:center;min-height:4.75rem;padding-block:.55rem}.brand{grid-area:brand;display:inline-flex;align-items:center;gap:.75rem;color:var(--color-text);text-decoration:none}.brand>span:last-child{display:grid;line-height:1.2}.brand strong{font-family:var(--font-display);font-size:1.1rem}.brand small{color:var(--color-muted);font-size:.76rem}.brand-logo{position:relative;display:block;width:4rem;height:2.9rem;flex:0 0 4rem}.brand-logo-color{display:block;width:100%;height:100%;object-fit:contain}.brand-logo-dark{position:absolute;inset:0;display:none;background:var(--color-brand);-webkit-mask:url(../images/logo-goerlitzer-fass-schwarz.svg) center / contain no-repeat;mask:url(../images/logo-goerlitzer-fass-schwarz.svg) center / contain no-repeat}:root[data-theme=dark] .brand-logo-color{display:none}:root[data-theme=dark] .brand-logo-dark{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme]) .brand-logo-color{display:none}:root:not([data-theme]) .brand-logo-dark{display:block}}.nav-toggle{grid-area:menu;min-height:2.75rem;border:1px solid var(--color-border);border-radius:999px;padding:.55rem .85rem;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.site-nav{grid-area:nav;display:none}.site-nav.is-open{display:grid;gap:.25rem;padding-block:.25rem}.site-nav a{min-height:2.75rem;align-content:center;color:var(--color-text);font-weight:700;text-decoration:none;white-space:nowrap}.site-nav a[aria-current=page]{color:var(--color-brand-strong);text-decoration:underline;text-decoration-thickness:.12em;text-underline-offset:.35em}.nav-legal{display:grid}.theme-switcher{display:inline-flex;grid-area:theme;justify-self:end;border:1px solid var(--color-border);border-radius:999px;padding:.2rem;background:var(--color-surface);box-shadow:0 .25rem 1rem #10182014}.theme-switcher button{min-height:2.75rem;border:0;border-radius:999px;padding:.45rem .7rem;background:transparent;color:var(--color-muted);font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.theme-switcher button[aria-pressed=true]{background:var(--color-brand);color:var(--color-on-brand)}.hero{overflow:hidden;padding-block:clamp(3.5rem,8vw,7.5rem);background:radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--color-brand) 22%,transparent),transparent 28rem),var(--color-bg)}.hero-grid{display:grid;gap:2.5rem;align-items:center}.hero-copy{position:relative;z-index:1}.eyebrow,.card-kicker,.event-date{margin-bottom:.65rem;color:var(--color-brand-strong);font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.lead{max-width:41rem;color:var(--color-muted);font-size:clamp(1.08rem,2vw,1.3rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.button{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;border:1px solid var(--color-brand);border-radius:999px;padding:.7rem 1.15rem;color:var(--color-brand-strong);font-weight:800;text-align:center;text-decoration:none}.button-primary{background:var(--color-brand);color:#101820}.button-primary:hover{background:var(--color-brand-strong);color:var(--color-bg)}.hero-logo{display:grid;aspect-ratio:1417.3 / 1021.3;place-items:center;margin:0;padding:clamp(1rem,3vw,2rem)}.hero-logo img,.hero-logo-dark{display:block;width:100%;height:100%;object-fit:contain}.hero-logo-dark{display:none;background:var(--color-brand);-webkit-mask:url(../images/logo-goerlitzer-fass-schwarz.svg) center / contain no-repeat;mask:url(../images/logo-goerlitzer-fass-schwarz.svg) center / contain no-repeat}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}:root[data-theme=dark] .hero-logo{background:transparent}:root[data-theme=dark] .hero-logo-color{display:none}:root[data-theme=dark] .hero-logo-dark{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme]) .hero-logo{background:transparent}:root:not([data-theme]) .hero-logo-color{display:none}:root:not([data-theme]) .hero-logo-dark{display:block}}.section{padding-block:clamp(4rem,8vw,7rem)}.section-heading{max-width:42rem;margin-bottom:2.25rem}.section-heading>:last-child{margin-bottom:0;color:var(--color-muted);font-size:1.08rem}.card-grid{display:grid;gap:1rem}.offers-grid{margin-top:1rem}.offer-placeholder{border-style:dashed}.card{border:1px solid var(--color-border);border-radius:var(--radius);padding:clamp(1.4rem,4vw,2.2rem);background:var(--color-surface)}.content-image{display:block;width:100%;aspect-ratio:16 / 9;margin-bottom:1.25rem;border-radius:calc(var(--radius) * .65);object-fit:cover}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.gallery-item{position:relative;display:block;overflow:hidden;width:100%;aspect-ratio:4 / 3;padding:0;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:#fff;cursor:zoom-in;text-align:left;box-shadow:var(--shadow);font:inherit}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}.gallery-item img[src$="/team.webp"]{object-position:center 18%}.gallery-grid .gallery-item span{position:absolute;inset:auto 0 0;padding:2.5rem 1rem .9rem;background:linear-gradient(transparent,#000000c7);color:#fff;font-weight:750;line-height:1.3}.gallery-item:hover img{transform:scale(1.035)}.gallery-item:focus-visible{outline:3px solid var(--color-brand-strong);outline-offset:4px}.gallery-lightbox{width:min(92vw,88rem);max-width:none;height:min(92vh,64rem);max-height:none;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(1rem,3vw,2rem);background:var(--color-surface-strong);color:var(--color-on-dark);box-shadow:var(--shadow)}.gallery-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:center;gap:.75rem}.gallery-lightbox::backdrop{background:#04080cdb}.gallery-close{justify-self:end;border:1px solid var(--color-border);border-radius:999px;padding:.55rem 1rem;background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:700;cursor:pointer}.gallery-lightbox img[data-gallery-dialog-image]{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.gallery-lightbox p{margin:0;color:var(--color-on-dark);text-align:center}.card p:not(.card-kicker){color:var(--color-muted)}.card a,.text-link{font-weight:800}.section-dark{background:var(--color-event-section);color:var(--color-text)}.section-dark .eyebrow,.section-dark .event-date,.section-dark a{color:var(--color-brand-strong)}.section-dark .section-heading>:last-child{color:var(--color-muted)}.event-layout,.split-layout,.contact-layout{display:grid;gap:2rem}.event-placeholder{border:1px solid color-mix(in srgb,var(--color-brand) 45%,var(--color-border));border-radius:var(--radius);padding:clamp(1.5rem,4vw,2.5rem);background:color-mix(in srgb,var(--color-surface) 82%,transparent)}[data-events]{display:grid;gap:1rem}.event-placeholder p:not(.event-date){color:var(--color-muted)}.prose{max-width:44rem;font-size:1.08rem}.notice{border-left:4px solid var(--color-brand);padding:.9rem 1rem;background:var(--color-notice);color:var(--color-text)}.section-accent{background:var(--color-accent)}.contact-details{display:grid;align-content:start;gap:2rem}.contact-card{display:grid;gap:.6rem;border:1px solid var(--color-border);border-radius:var(--radius);padding:clamp(1.5rem,4vw,2.4rem);background:var(--color-surface);box-shadow:var(--shadow)}.contact-card strong{font-family:var(--font-display);font-size:1.5rem}.opening-hours{display:grid;gap:.65rem;max-width:30rem;margin:1.5rem 0 0}.opening-hours div{display:flex;gap:1rem;justify-content:space-between;border-bottom:1px solid color-mix(in srgb,var(--color-text) 22%,transparent);padding-bottom:.45rem}.opening-hours dt{font-weight:800}.opening-hours dd{margin:0;text-align:right}.contact-card span{color:var(--color-muted)}.contact-form{display:grid;align-content:start;gap:1rem;border:1px solid var(--color-border);border-radius:var(--radius);padding:clamp(1.5rem,4vw,2.4rem);background:var(--color-surface);box-shadow:var(--shadow)}.contact-form h3{font-family:var(--font-display);font-size:1.5rem}.contact-form-intro,.contact-privacy,.contact-form-status{margin:0}.contact-form-fields,.contact-form-fields label{display:grid;gap:.5rem}.contact-form-fields{gap:1rem}.contact-form-fields label{font-weight:700}.contact-form-fields input,.contact-form-fields textarea{width:100%;min-height:3rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.7rem .85rem;background:var(--color-bg);color:var(--color-text);font:inherit}.contact-form-fields textarea{min-height:10rem;resize:vertical}.contact-form .contact-privacy{font-size:.9rem}.contact-form button{justify-self:start;font:inherit;font-weight:800;cursor:pointer}.contact-form button:disabled{cursor:wait;opacity:.6}.contact-form-status{min-height:1.5rem}.site-footer{border-top:1px solid var(--color-border);background:var(--color-bg)}.footer-layout{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;padding-block:2rem}.footer-layout p{margin-bottom:0}.footer-layout nav{display:flex;flex-wrap:wrap;gap:1rem}.legal-page,.not-found{min-height:calc(100vh - 9rem);padding-block:clamp(3rem,8vw,6rem)}.legal-page h1,.not-found h1{font-size:clamp(2.5rem,7vw,4.5rem)}.legal-page h2{margin-top:2.5rem;font-size:1.6rem}@media(min-width:48rem){.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(20rem,.92fr)}.card-grid,.event-layout,.contact-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.split-layout{grid-template-columns:minmax(14rem,.65fr) minmax(0,1.35fr)}}@media(min-width:68rem){.header-layout{grid-template-areas:"brand nav theme";grid-template-columns:auto minmax(0,1fr) auto;padding-block:0}.nav-toggle{display:none}.site-nav,.site-nav.is-open{display:flex;flex-wrap:wrap;justify-content:center;gap:0 clamp(.65rem,1.15vw,1.25rem);padding:0}.nav-legal{display:flex;column-gap:clamp(.65rem,1.15vw,1.25rem)}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
