:root{
  --bg:#f7f4ee;--paper:#fffdf9;--ink:#171513;--muted:#6e6860;--gold:#b57a34;--line:#e7dfd4;--max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif;font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;width:100%;height:auto}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:1.02;margin:0}
h1{font-size:clamp(3.15rem,5.8vw,6rem);letter-spacing:-.035em}
h2{font-size:clamp(2.35rem,3.8vw,4rem);letter-spacing:-.025em}
h3{font-size:1.7rem}p{margin:0 0 1.2rem}a{color:inherit;text-decoration:none}
.site-header{height:92px;background:rgba(255,253,249,.96);display:flex;align-items:center;gap:32px;padding:0 max(30px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:14px;margin-right:auto;min-width:max-content}.brand strong,.footer-brand strong{font-family:"Cormorant Garamond";letter-spacing:.16em;font-size:1.08rem}.brand small,.footer-brand small{display:block;font-size:.52rem;letter-spacing:.16em}.monogram{font-family:"Cormorant Garamond";font-size:2.95rem;color:var(--gold);line-height:1}
.site-header nav{display:flex;gap:27px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.site-header nav a:hover{color:var(--gold)}
.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--gold);background:var(--gold);color:#fff;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;padding:14px 24px;cursor:pointer;transition:.2s ease}.btn:hover{filter:brightness(.94);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--ink)}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem}
/* Fixed image architecture: source assets are pre-cropped to their final ratios. Browser only scales; it never crops. */
.hero{display:grid;grid-template-columns:minmax(420px,44%) minmax(0,1fr);background:var(--paper);max-width:1600px;margin:0 auto;min-height:0}
.hero-copy{padding:104px 7vw 88px max(34px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center;min-width:0}
.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy>p:not(.eyebrow){font-size:1.03rem;max-width:500px;margin:30px 0 32px;color:#49443e}.hero-copy .btn{align-self:flex-start}
.hero-media{margin:0;align-self:center;overflow:hidden;background:#ede7de}.hero-media img{aspect-ratio:3/2;object-fit:fill}
.eyebrow{font-size:.7rem;font-weight:500;letter-spacing:.15em;color:var(--gold);margin-bottom:18px}
.split,.about,.contact{display:grid;max-width:var(--max);margin:0 auto;background:var(--paper);border-bottom:1px solid var(--line)}
.split{grid-template-columns:minmax(0,44%) minmax(0,56%);align-items:center}.split>img{aspect-ratio:3/2;object-fit:fill;background:#f1ece4}
.section-copy{padding:90px 72px;display:flex;flex-direction:column;justify-content:center}.section-copy p:last-child{max-width:390px;color:var(--muted)}.rule{width:42px;height:1px;background:var(--gold);display:block;margin:30px 0}
.section{padding:100px max(30px,calc((100vw - var(--max))/2));background:var(--paper)}.section-heading{text-align:center;margin-bottom:46px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.cards article{border:1px solid var(--line);background:#fbf8f2;text-align:center;padding-bottom:32px;overflow:hidden;display:flex;flex-direction:column}.cards img{aspect-ratio:4/3;object-fit:fill;flex:0 0 auto}.cards h3{margin:24px 10px 8px;text-transform:uppercase;font-family:Inter;font-weight:400;letter-spacing:.08em;font-size:.95rem}.cards p{padding:0 24px;color:var(--muted);font-size:.88rem;max-width:330px;margin:0 auto}
.gallery-section{padding:108px max(30px,calc((100vw - var(--max))/2)) 120px;background:var(--bg)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-item{position:relative;padding:0;border:0;background:#eee7dd;overflow:hidden;cursor:zoom-in;min-width:0}.gallery-item img{aspect-ratio:6/5;object-fit:fill;transition:transform .35s ease,filter .35s ease}.gallery-item::after{content:"Vergrößern";position:absolute;right:14px;bottom:12px;background:rgba(255,253,249,.92);color:var(--ink);font-size:.62rem;letter-spacing:.09em;text-transform:uppercase;padding:8px 10px;opacity:0;transform:translateY(6px);transition:.25s ease}.gallery-item:hover img{transform:scale(1.012);filter:brightness(.97)}.gallery-item:hover::after{opacity:1;transform:translateY(0)}
.about{grid-template-columns:minmax(300px,38%) minmax(0,62%);align-items:center;padding:68px 0}.about>img{width:min(72%,360px);aspect-ratio:4/5;object-fit:fill;margin:0 auto}.about div{padding:68px 82px 68px 24px;display:flex;flex-direction:column;justify-content:center}.about p{max-width:560px;color:#4f4a44}
.contact{grid-template-columns:.82fr 1.18fr;padding:94px 72px;gap:72px}.contact h2{margin-bottom:34px}.contact a{color:var(--gold)}form{display:flex;flex-direction:column;gap:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;padding:14px 15px;font:inherit;margin-top:7px;color:var(--ink);border-radius:0}input:focus,select:focus,textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}textarea{resize:vertical;min-height:150px}form .btn{width:100%;margin-top:4px}.form-note{font-size:.85rem;color:var(--gold)}
footer{max-width:var(--max);margin:auto;padding:74px 42px 30px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px;background:var(--bg);border-top:1px solid var(--line)}footer h4{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--gold)}footer a{display:block;margin:9px 0;font-size:.88rem}.footer-brand{margin-right:0;align-self:start}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;font-size:.75rem;color:var(--muted)}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(12,11,10,.94);display:none;align-items:center;justify-content:center;padding:48px 78px}.lightbox.open{display:flex}.lightbox img{max-width:min(1200px,88vw);max-height:86vh;width:auto;height:auto;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.35)}.lightbox-close,.lightbox-nav{position:absolute;border:0;background:rgba(255,255,255,.08);color:white;cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox-close{top:22px;right:26px;width:48px;height:48px;font-size:2rem}.lightbox-nav{top:50%;transform:translateY(-50%);width:52px;height:76px;font-size:2.4rem}.lightbox-prev{left:18px}.lightbox-next{right:18px}body.lightbox-open{overflow:hidden}
@media(max-width:1050px){.site-header nav{gap:18px}.header-cta{display:none}.hero{grid-template-columns:46% 54%}.hero-copy{padding:82px 44px}.section-copy{padding:70px 48px}.about div{padding:56px 48px 56px 22px}.contact{padding:74px 48px;gap:48px}}
@media(max-width:900px){html{scroll-padding-top:88px}.site-header{height:88px;padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.site-header nav,.header-cta{display:none}.menu-toggle{display:block}.site-header.open nav{display:flex;position:absolute;left:0;right:0;top:88px;background:white;flex-direction:column;padding:25px 30px;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr}.hero-copy{padding:72px 32px 52px}.hero-media{width:100%}.split,.about,.contact{grid-template-columns:1fr}.split>img{order:-1;width:100%}.section-copy{padding:68px 32px}.cards{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.about{padding:0}.about>img{width:min(58%,360px);order:-1;margin:54px auto 0}.about div{padding:64px 32px}.contact{padding:68px 32px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}.lightbox{padding:44px 56px}}
@media(max-width:560px){html{scroll-padding-top:82px}.brand strong{font-size:.84rem}.brand small{font-size:.46rem}.monogram{font-size:2.25rem}.site-header{height:82px;padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.site-header.open nav{top:82px}.hero-copy{padding:60px 22px 42px}h1{font-size:clamp(2.7rem,14vw,4rem)}h2{font-size:clamp(2.2rem,11vw,3.2rem)}.section-copy,.about div{padding:56px 24px}.section{padding:68px 20px}.gallery-section{padding:68px 20px}.gallery{grid-template-columns:1fr}.about>img{width:min(72%,320px);margin-top:48px}.contact{gap:32px;padding:60px 22px}footer{grid-template-columns:1fr;padding:54px 24px 24px}.lightbox{padding:68px 16px 28px}.lightbox-nav{width:42px;height:58px;font-size:2rem}.lightbox-prev{left:6px}.lightbox-next{right:6px}}

/* Events extension v6 */
.events-section{background:#11100f;color:#f7f2ea;padding-bottom:88px;border-top:1px solid #2b2825;border-bottom:1px solid #2b2825}
.events-hero{position:relative;max-width:1600px;margin:0 auto;min-height:560px;overflow:hidden;background:#0d0c0b}
.events-hero>img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:center}
.events-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,9,8,.96) 0%,rgba(10,9,8,.74) 34%,rgba(10,9,8,.18) 70%,rgba(10,9,8,.05) 100%)}
.events-overlay{position:absolute;z-index:2;left:max(34px,calc((100vw - var(--max))/2));top:50%;transform:translateY(-50%);max-width:540px;padding-right:30px}
.events-overlay h2{font-size:clamp(3.2rem,5vw,5.4rem);color:#fff}.events-overlay>p:last-child{max-width:500px;color:#ddd4c8;font-size:1rem}.events-overlay .rule{background:#d58b31}
.event-cards{max-width:var(--max);margin:0 auto;padding:34px 30px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.event-cards article{background:#191715;border:1px solid #302c28;overflow:hidden;min-width:0}.event-cards img{aspect-ratio:4/3;object-fit:cover}.event-cards article>div{padding:25px 26px 29px}.event-cards h3{color:#fff;font-size:1.75rem;margin-bottom:8px}.event-cards p{color:#c9c0b5;font-size:.9rem;margin:0}
.events-section blockquote{max-width:980px;margin:48px auto 22px;padding:0 30px;text-align:center;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.7rem,2.6vw,2.5rem);font-style:italic;color:#f1e9df}.events-section blockquote cite{display:block;margin-top:8px;color:#d58b31;font-size:1.35rem;font-weight:400}
.event-cta{display:flex;width:max-content;margin:0 auto;background:transparent;border-color:#d58b31;color:#fff}
.event-cta:hover{background:#d58b31}

/* denser, editorial gallery for the expanded image set */
.gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gallery-item:nth-child(1){grid-column:span 2}.gallery-item:nth-child(1) img{aspect-ratio:12/5}.gallery-item img{object-fit:cover}

@media(max-width:1050px){.site-header nav{gap:14px;font-size:.7rem}.events-hero,.events-hero>img{min-height:500px}.events-overlay{left:48px}.event-cards{padding-left:28px;padding-right:28px}}
@media(max-width:900px){.events-hero,.events-hero>img{min-height:580px}.events-hero::after{background:linear-gradient(180deg,rgba(10,9,8,.24),rgba(10,9,8,.82) 58%,rgba(10,9,8,.98))}.events-overlay{left:32px;right:32px;top:auto;bottom:46px;transform:none;max-width:620px}.event-cards{grid-template-columns:1fr;max-width:720px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item:nth-child(1){grid-column:span 2}}
@media(max-width:560px){.events-section{padding-bottom:64px}.events-hero,.events-hero>img{min-height:540px}.events-overlay{left:22px;right:22px;bottom:34px}.events-overlay h2{font-size:clamp(2.8rem,13vw,4rem)}.event-cards{padding:22px 18px 0;gap:16px}.event-cards article>div{padding:22px}.events-section blockquote{margin-top:38px;padding:0 22px}.gallery{grid-template-columns:1fr}.gallery-item:nth-child(1),.gallery-item:nth-child(7){grid-column:span 1}.gallery-item:nth-child(1) img,.gallery-item:nth-child(7) img{aspect-ratio:6/5}}

/* Final Gallery UX pass */
.gallery-item{border-radius:0;isolation:isolate;outline-offset:4px}
.gallery-item:focus-visible{outline:2px solid var(--gold)}
.gallery-item img{display:block;width:100%;height:100%;aspect-ratio:6/5;object-fit:cover;object-position:center}
.gallery-item:nth-child(1){grid-column:span 2}
.gallery-item:nth-child(1) img{aspect-ratio:12/5}
.lightbox{overscroll-behavior:contain;touch-action:pan-y}
.lightbox img{background:#111;user-select:none;-webkit-user-drag:none}
.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:900px){.gallery-item:nth-child(1){grid-column:span 2}}
@media(max-width:560px){.gallery-item:nth-child(1){grid-column:span 1}.gallery-item:nth-child(1) img{aspect-ratio:6/5}}
