:root{
  --paper:#f5f0e7;
  --paper-2:#fbf8f2;
  --ink:#161412;
  --muted:#746d63;
  --dark:#080808;
  --dark-2:#11100f;
  --gold:#b48938;
  --gold-soft:#d1ae67;
  --line:rgba(22,20,18,.15);
  --line-light:rgba(255,255,255,.14);
  --serif:Georgia,'Times New Roman',serif;
  --sans:Arial,Helvetica,sans-serif;
  --shadow:0 24px 70px rgba(0,0,0,.22);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
body.no-scroll{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
img{display:block;max-width:100%}
button{cursor:pointer}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.eyebrow{margin:0 0 .9rem;font-size:.66rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.eyebrow.light{color:var(--gold-soft)}
.eyebrow.dark{color:#896a32}
.gold-line{display:block;width:42px;height:1px;background:var(--gold);margin:0 auto 1rem}

.button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:50px;padding:0 1.35rem;border:1px solid currentColor;background:transparent;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;transition:background .25s,color .25s,border-color .25s,transform .25s}
.button:hover{transform:translateY(-1px)}
.button-gold{border-color:var(--gold);color:#f6ead0;background:rgba(0,0,0,.18)}
.button-gold:hover{background:var(--gold);color:#111}
.button-ghost{border-color:var(--gold-soft);color:#fff;background:rgba(0,0,0,.17)}
.button-ghost:hover{background:rgba(180,137,56,.92);color:#111}

/* Password gate */
.site-locked{background:#030303;color:#fff}
.gate{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:6rem 1rem 5rem;overflow:hidden;isolation:isolate}
.gate-bg{position:absolute;inset:-3%;width:106%;height:106%;object-fit:cover;filter:saturate(1.15) contrast(1.06) blur(2px);z-index:-3}
.gate-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(0,0,0,.28),rgba(0,0,0,.78) 72%),linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.65));z-index:-2}
.gate-brand{position:absolute;left:1.25rem;top:1.25rem;display:flex;flex-direction:column;gap:.25rem}
.gate-name{font-family:var(--serif);font-size:1.25rem;letter-spacing:.22em}
.gate-tagline{font-size:.48rem;letter-spacing:.34em;color:#bbb3a5}
.gate-panel{width:100%;max-width:650px;text-align:center;padding:2.3rem 1.2rem;background:rgba(5,5,5,.46);border:1px solid rgba(255,255,255,.13);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 24px 80px rgba(0,0,0,.28)}
.gate-panel h1{font-family:var(--serif);font-size:clamp(2rem,8vw,4.3rem);font-weight:400;line-height:1.02;margin:.15rem auto 1rem;max-width:12ch}
.gate-mantra{font-family:var(--serif);font-style:italic;color:#e8dfd0;font-size:clamp(.88rem,3.5vw,1.12rem);letter-spacing:.08em;margin:0 0 1.8rem}
.gate-form{width:100%;max-width:460px;margin:0 auto;display:grid;gap:.8rem}
.password-field{display:flex;border:1px solid rgba(255,255,255,.32);background:rgba(0,0,0,.24)}
.password-field input{min-width:0;flex:1;background:transparent;border:0;outline:0;padding:1rem 1rem;color:#fff;font-family:var(--serif);font-style:italic;font-size:1rem}
.password-field input::placeholder{color:#bdb6aa}
.reveal-password{border:0;background:transparent;color:#cdb98e;padding:0 .9rem;font-size:.56rem;letter-spacing:.14em}
.gate-note{margin:1.2rem 0 0;color:#c8c0b2;font-family:var(--serif);font-style:italic;font-size:.9rem}
.gate-footer{position:absolute;bottom:1.1rem;margin:0;font-size:.48rem;letter-spacing:.3em;color:#9e978c}
.form-error,.form-success{margin:.3rem 0 0;font-size:.74rem;line-height:1.45}
.form-error{color:#efb7b2}.form-success{color:#cfe7c5}

/* Header */
.topbar{position:sticky;top:0;z-index:50;height:74px;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;background:rgba(250,247,241,.96);border-bottom:1px solid rgba(22,20,18,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.logo{display:flex;flex-direction:column;gap:.12rem;line-height:1}
.logo>span{font-family:var(--serif);font-size:1.12rem;letter-spacing:.22em;color:#8c6725}
.logo small{font-size:.42rem;letter-spacing:.35em;color:#6f675d}
.menu-button{display:flex;align-items:center;gap:.7rem;background:transparent;border:1px solid rgba(22,20,18,.34);padding:.7rem .8rem;font-size:.62rem;letter-spacing:.16em}
.menu-button i,.menu-button i:before,.menu-button i:after{display:block;width:18px;height:1px;background:#222;content:"";transition:.25s}
.menu-button i{position:relative}.menu-button i:before{position:absolute;top:-5px}.menu-button i:after{position:absolute;top:5px}
.main-nav{position:fixed;top:74px;left:0;right:0;padding:1.1rem;background:rgba(250,247,241,.98);display:flex;flex-direction:column;gap:0;border-bottom:1px solid rgba(22,20,18,.1);transform:translateY(-130%);transition:transform .28s ease;z-index:45}
.main-nav a{padding:1rem .3rem;border-bottom:1px solid rgba(22,20,18,.08);font-size:.66rem;letter-spacing:.2em}
.nav-open .main-nav{transform:translateY(0)}
.nav-open .menu-button i{background:transparent}.nav-open .menu-button i:before{transform:rotate(45deg);top:0}.nav-open .menu-button i:after{transform:rotate(-45deg);top:0}

/* Hero */
.hero{position:relative;min-height:calc(100vh - 74px);min-height:calc(100svh - 74px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#18120b}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% center;filter:saturate(1.02) contrast(1.01)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.72) 100%),linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.06) 68%)}
.hero-copy{position:relative;z-index:2;width:100%;padding:6rem 1rem 2.7rem}
.hero-copy h1{font-family:var(--serif);font-weight:400;font-size:clamp(3.15rem,14vw,8.8rem);line-height:.82;letter-spacing:-.035em;margin:.2rem 0 .8rem;white-space:nowrap;max-width:100%}
.hero-subtitle{font-family:var(--serif);font-size:clamp(1rem,4.7vw,1.55rem);letter-spacing:.12em;margin:0 0 1.5rem;line-height:1.2}
.hero blockquote{margin:0 0 .8rem;padding-left:1rem;border-left:1px solid rgba(255,255,255,.9);font-family:var(--serif);font-style:italic;font-size:clamp(1rem,4.1vw,1.35rem);line-height:1.45;max-width:680px}
.hero-byline{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:#ddd3c4;margin:0 0 1.4rem}
.hero-side-note{display:none!important}

/* Mantra */
.mantra{background:var(--paper-2);padding:2.4rem 1rem 2.2rem;text-align:center;border-bottom:1px solid var(--line)}
.mantra p{font-family:var(--serif);font-size:clamp(1rem,4.7vw,1.7rem);letter-spacing:.15em;margin:0;color:#29241e}
.mantra span{display:block;margin:.7rem 0 0;color:#81786c;font-family:var(--serif);font-style:italic;font-size:.86rem}

/* Common sections */
.gallery-section,.works-section{padding:4rem 1rem;background:var(--paper-2)}
.section-title{text-align:center;margin:0 auto 2.2rem}
.section-title h2{font-family:var(--serif);font-size:clamp(2rem,8vw,4rem);font-weight:400;letter-spacing:.08em;text-transform:uppercase;line-height:1;margin:0}
.section-title p{font-family:var(--serif);font-style:italic;font-size:1rem;letter-spacing:.08em;color:#655f57;margin:.7rem 0 0}

.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;max-width:1220px;margin:0 auto}
.editorial-card{margin:0;min-width:0}
.editorial-image{display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in;overflow:hidden}
.editorial-card img{display:block;width:100%;aspect-ratio:1/1.13;object-fit:cover;box-shadow:0 1px 0 rgba(0,0,0,.05);transition:transform .35s ease}
.editorial-image:hover img{transform:scale(1.012)}
.editorial-image:focus-visible{outline:1px solid var(--gold);outline-offset:4px}
.editorial-card figcaption{font-family:var(--serif);font-size:.62rem;letter-spacing:.03em;color:#625b52;margin:.55rem 0 0;line-height:1.3}
.gallery-footnote{max-width:1000px;margin:2.2rem auto 0;padding-top:1rem;border-top:1px solid var(--line);text-align:center;font-size:.48rem;letter-spacing:.3em;color:#7a7268}

/* Works */
.works-section{padding-top:2rem}
.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem .8rem;max-width:1280px;margin:0 auto}
.work-card{min-width:0}
.work-image{display:block;width:100%;border:0;padding:0;background:#e9e2d8;overflow:hidden;cursor:zoom-in}
.work-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain;background:#e9e2d8;transition:transform .45s ease}
.work-image:hover img{transform:scale(1.018)}
.work-copy{padding:.65rem 0 0}
.work-availability{margin:0 0 .3rem;font:600 .49rem/1.2 var(--sans);letter-spacing:.19em;color:#9a7437;text-transform:uppercase}
.work-copy h3{font-family:var(--serif);font-size:.82rem;font-weight:400;letter-spacing:.08em;margin:0 0 .2rem}
.work-copy p{font-family:var(--serif);font-style:italic;font-size:.66rem;color:#766e64;margin:0 0 .45rem}
.work-copy a{font-size:.52rem;letter-spacing:.15em;color:#936d27;border-bottom:1px solid rgba(147,109,39,.45);padding-bottom:.15rem}

/* Event */
.event-band{position:relative;overflow:hidden;background:radial-gradient(circle at 0 20%,rgba(54,74,35,.38),transparent 28%),linear-gradient(135deg,#0c0b09,#16130e 60%,#080808);color:#fff;padding:4.8rem 1rem}
.event-band:before{content:"";position:absolute;inset:0;background:url('../images/gate-art.jpg') left center/46% auto no-repeat;opacity:.05;mix-blend-mode:screen;pointer-events:none}
.event-inner{position:relative;max-width:970px;margin:0 auto;text-align:center}
.event-inner h2{font-family:var(--serif);font-weight:400;color:var(--gold-soft);font-size:clamp(2rem,8.2vw,4.8rem);line-height:1.02;margin:.2rem 0 1.3rem}
.event-inner>p:not(.eyebrow){max-width:780px;margin:0 auto 1.4rem;font-family:var(--serif);font-size:1rem;line-height:1.7;color:#ddd4c6}
.event-inner strong{display:block;font-family:var(--serif);font-size:.78rem;letter-spacing:.16em;font-weight:400;color:#fff}

/* Story */
.story-section{display:grid;gap:2rem;padding:4.5rem 1rem;background:var(--paper)}
.story-heading h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,9vw,5rem);line-height:.95;margin:.2rem 0 0}
.story-copy{font-family:var(--serif);font-size:1.02rem;line-height:1.72;color:#4e473f}
.story-copy p{margin:0 0 1.1rem}
.story-copy .story-emphasis{font-weight:600;color:#403a33}
.story-copy em{font-weight:400;font-style:italic;color:#544c43}
.story-copy .story-closing{margin-top:1.65rem;font-size:1.08em;line-height:1.62;font-style:italic;color:#403a33}
.story-copy blockquote{margin:0;padding:0;border:0;font-size:1.25rem;font-style:italic;color:#201c18;transition:opacity .18s ease,transform .18s ease}
.quote-gallery{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:.65rem;margin:2rem 0 0;padding:1.15rem 0 1.7rem;border-top:1px solid var(--line)}
.quote-arrow{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;background:transparent;color:#6f6458;font-family:var(--serif);font-size:1.35rem;line-height:1;cursor:pointer;transition:color .2s ease,transform .2s ease}
.quote-arrow:hover,.quote-arrow:focus-visible{color:#201c18;transform:translateX(2px);outline:none}
.quote-arrow-prev:hover,.quote-arrow-prev:focus-visible{transform:translateX(-2px)}
.quote-counter{position:absolute;right:0;bottom:0;font:500 .5rem/1 var(--sans);letter-spacing:.18em;color:#9a9084}
.quote-changing{opacity:0;transform:translateY(3px)}
@media (max-width:639px){
  .quote-gallery{grid-template-columns:30px minmax(0,1fr) 30px;gap:.45rem}
  .quote-arrow{width:30px;height:36px}
  .story-copy .quote-gallery blockquote{font-size:1.12rem}
}

/* Contact */
.contact-section{display:grid;gap:2.5rem;background:#0b0b0a;color:#fff;padding:4.8rem 1rem}
.contact-intro h2{font-family:var(--serif);font-size:clamp(2.5rem,9vw,5rem);font-weight:400;line-height:.98;margin:.25rem 0 1rem}
.contact-intro>p:not(.eyebrow){font-family:var(--serif);font-size:1rem;line-height:1.65;color:#cfc6b9;max-width:580px}
.contact-intro>a{display:inline-block;margin-top:1rem;color:var(--gold-soft);font-family:var(--serif);font-style:italic;border-bottom:1px solid rgba(209,174,103,.45)}
.contact-form{display:grid;gap:1rem}
.contact-form label{display:grid;gap:.45rem}
.contact-form label>span{font-size:.58rem;letter-spacing:.18em;color:#b8afa2;text-transform:uppercase}
.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.035);padding:.9rem 1rem;outline:0;color:#fff;border-radius:0}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}
.contact-form textarea{resize:vertical;min-height:140px}
.honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none}

/* Footer */
.footer{display:grid;gap:.7rem;text-align:center;padding:2rem 1rem;background:#050505;color:#928a7f;border-top:1px solid rgba(255,255,255,.08)}
.footer-brand{font-family:var(--serif);letter-spacing:.22em;color:#d8c59f}
.footer p{margin:0;font-size:.5rem;letter-spacing:.2em}

/* Lightbox */
.lightbox[hidden]{display:none}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(4,4,4,.96);display:grid;place-items:center;padding:4rem 3.5rem 1rem;touch-action:pan-y}
.lightbox figure{margin:0;width:min(88vw,1100px);display:grid;place-items:center}
.lightbox img{max-height:80vh;max-width:100%;object-fit:contain;box-shadow:var(--shadow);user-select:none;-webkit-user-drag:none}
.lightbox-meta{padding-top:.85rem;display:flex;align-items:center;justify-content:center;gap:.85rem;font-family:var(--serif);letter-spacing:.1em;color:#ddd4c6}
.lightbox-meta small{font-family:var(--sans);font-size:.52rem;letter-spacing:.18em;color:#8f887e}
.lightbox-close,.lightbox-nav{position:absolute;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.18);color:#fff;backdrop-filter:blur(4px);transition:border-color .2s ease,background .2s ease,transform .2s ease}
.lightbox-close{top:1rem;right:1rem;width:44px;height:44px;font-size:1.7rem;line-height:1}
.lightbox-nav{top:50%;transform:translateY(-50%);width:52px;height:68px;font-family:var(--serif);font-size:3rem;font-weight:300;line-height:.8}
.lightbox-prev{left:1rem}
.lightbox-next{right:1rem}
.lightbox-close:hover,.lightbox-nav:hover,.lightbox-close:focus-visible,.lightbox-nav:focus-visible{border-color:var(--gold);background:rgba(209,174,103,.12);outline:none}
.lightbox-nav:hover{transform:translateY(-50%) scale(1.04)}
@media (max-width:639px){
  .lightbox{padding:4.25rem .75rem 5.25rem}
  .lightbox figure{width:96vw}
  .lightbox img{max-height:72vh}
  .lightbox-nav{top:auto;bottom:1rem;transform:none;width:54px;height:48px;font-size:2.5rem}
  .lightbox-nav:hover{transform:none}
  .lightbox-prev{left:calc(50% - 64px)}
  .lightbox-next{right:calc(50% - 64px)}
  .lightbox-meta{padding-top:.65rem}
}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

@media (min-width:640px){
  .gate-brand{left:2rem;top:2rem}.gate-panel{padding:3rem 2.8rem}
  .topbar{padding:0 2rem}
  .hero-copy{padding-left:3.5vw;padding-right:3.5vw}
  .gallery-section,.works-section,.story-section,.contact-section{padding-left:4vw;padding-right:4vw}
  .editorial-grid{gap:1rem}
  .editorial-card figcaption{font-size:.72rem}
  .works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.15rem}
  .story-section{grid-template-columns:.8fr 1.2fr;align-items:start}
  .contact-section{grid-template-columns:.85fr 1.15fr;align-items:start}
}

@media (min-width:960px){
  .topbar{height:82px;padding:0 4vw}
  .logo>span{font-size:1.35rem}.logo small{font-size:.46rem}
  .menu-button{display:none}
  .main-nav{position:static;transform:none;background:transparent;border:0;padding:0;display:flex;flex-direction:row;gap:2.1rem}
  .main-nav a{border:0;padding:0;font-size:.56rem;letter-spacing:.22em}
  .hero{min-height:calc(100vh - 82px);min-height:calc(100svh - 82px);align-items:center}
  .hero-bg{object-position:center center}
  .hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.18) 48%,rgba(0,0,0,.03) 76%),linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.14))}
  .hero-copy{width:68vw;max-width:980px;padding:5.5rem 0 5rem 6.5vw;transform:translateY(-1.2rem)}
  .hero-copy h1{font-size:clamp(6.5rem,10.5vw,11rem);line-height:.82;letter-spacing:-.045em}
  .hero-subtitle{font-size:clamp(1.2rem,1.8vw,1.7rem);letter-spacing:.13em;margin-bottom:1.65rem}
  .hero-side-note{display:none!important}
  .hero .eyebrow{font-size:.78rem;letter-spacing:.26em;margin-bottom:1.05rem}
  .hero blockquote{font-size:clamp(1.15rem,1.45vw,1.55rem);line-height:1.5;max-width:760px;margin-bottom:1rem}
  .hero-byline{font-size:.7rem;letter-spacing:.22em;margin-bottom:1.6rem}
  .hero .button{min-height:54px;padding:0 1.55rem;font-size:.72rem}
  .mantra{padding:2.7rem 3vw}.mantra p{font-size:1.45rem}
  .gallery-section,.works-section{padding:5.5rem 4vw}
  .section-title{margin-bottom:2.7rem}
  .editorial-grid{gap:1.2rem}.editorial-card img{aspect-ratio:1.35/1}
  .works-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.4rem}
  .work-copy h3{font-size:.84rem}.work-copy p{font-size:.68rem}
  .event-band{padding:6rem 4vw}
  .story-section{padding:6rem 7vw;gap:7vw}
  .contact-section{padding:6rem 7vw;gap:8vw}
  .footer{grid-template-columns:1fr auto 1fr;text-align:left;align-items:center;padding:2.2rem 4vw}.footer p:nth-of-type(1){justify-self:center}.footer p:nth-of-type(2){justify-self:end}
}

@media (min-width:1300px){
  .topbar{padding-left:5vw;padding-right:5vw}
  .hero-copy{padding-left:7vw}
  .gallery-section,.works-section{padding-left:6vw;padding-right:6vw}
  .editorial-grid,.works-grid{max-width:1400px}
}

@media (max-width:430px){
  .topbar{height:68px}
  .main-nav{top:68px}
  .logo>span{font-size:.94rem;letter-spacing:.18em}.logo small{font-size:.36rem;letter-spacing:.28em}
  .menu-button{padding:.58rem .66rem;font-size:.56rem}
  .hero{min-height:calc(100svh - 68px)}
  .hero-copy{padding:5.2rem 1rem 2.2rem}
  .hero-copy h1{font-size:clamp(3rem,13.5vw,3.7rem);letter-spacing:-.045em}
  .hero-subtitle{font-size:.92rem;letter-spacing:.09em}
  .hero blockquote{font-size:.96rem;max-width:93%}
  .button{min-height:46px;font-size:.59rem;gap:.9rem}
  .mantra p{font-size:.93rem;letter-spacing:.11em}
  .gallery-section{padding-top:3.6rem}.section-title h2{font-size:1.85rem;letter-spacing:.07em}.section-title p{font-size:.88rem}
  .editorial-grid{gap:.42rem}.editorial-card figcaption{font-size:.54rem}.gallery-footnote{font-size:.42rem;letter-spacing:.23em}
  .works-grid{gap:1.3rem .65rem}.work-copy h3{font-size:.72rem}.work-copy p{font-size:.58rem}.work-copy a{font-size:.46rem}
  .event-band{padding:4.1rem 1rem}.event-inner h2{font-size:2.2rem}.event-inner>p:not(.eyebrow){font-size:.93rem}
  .story-section,.contact-section{padding-top:4rem;padding-bottom:4rem}
}

@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}


/* Event teaser – erscheint einmal pro Browser-Sitzung */
.event-popup[hidden]{display:none!important}
.event-popup{
  position:fixed;
  z-index:1300;
  right:clamp(1rem,2.4vw,2.25rem);
  bottom:clamp(1rem,2.4vw,2.25rem);
  width:min(390px,calc(100vw - 2rem));
  padding:2rem 2rem 1.85rem;
  color:#f7f0e5;
  background:rgba(17,16,15,.96);
  border:1px solid rgba(201,166,96,.52);
  box-shadow:0 22px 70px rgba(0,0,0,.36);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  opacity:0;
  transform:translate3d(0,calc(100% + 2.5rem),0) scale(.985);
  transition:opacity .48s ease,transform .48s cubic-bezier(.2,.72,.2,1);
}
.event-popup.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}
.event-popup-line{display:block;width:52px;height:1px;background:#c9a660;margin:0 0 1.25rem}
.event-popup-kicker{margin:0 2.4rem .7rem 0;font-size:.55rem;letter-spacing:.27em;color:#c9a660}
.event-popup h2{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(1.55rem,2.1vw,2rem);line-height:1.03;letter-spacing:.035em}
.event-popup-intro{margin:.5rem 0 1.25rem;font-family:var(--serif);font-style:italic;font-size:1rem;color:#d8cdbd}
.event-popup-copy{display:grid;gap:.7rem;font-size:.84rem;line-height:1.62;color:#e8dfd3}
.event-popup-copy p{margin:0}
.event-popup-copy strong{display:block;font-size:.76rem;line-height:1.5;letter-spacing:.095em;color:#fff;font-weight:600;text-transform:uppercase}
.event-popup-date{margin:1.45rem 0 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.12);font-size:.58rem;letter-spacing:.22em;color:#c9a660;font-weight:700}
.event-popup-close{position:absolute;top:.8rem;right:.8rem;width:2.3rem;height:2.3rem;border:0;background:transparent;color:#f7f0e5;font-size:1.55rem;line-height:1;cursor:pointer;opacity:.72;transition:opacity .2s ease,transform .2s ease}
.event-popup-close:hover,.event-popup-close:focus-visible{opacity:1;transform:rotate(4deg)}

@media (max-width:600px){
  .event-popup{
    right:1rem;
    left:1rem;
    bottom:max(1rem,env(safe-area-inset-bottom));
    width:auto;
    padding:1.65rem 1.4rem 1.45rem;
  }
  .event-popup h2{font-size:1.52rem}
  .event-popup-intro{font-size:.94rem}
  .event-popup-copy{font-size:.8rem}
  .event-popup-date{font-size:.52rem;letter-spacing:.18em}
}

@media (prefers-reduced-motion:reduce){
  .event-popup{transition:none}
}

/* Contact UX v6 */
.field-hint,.field-error{display:block;font-size:.64rem;line-height:1.4;letter-spacing:.04em;margin-top:-.15rem}
.field-hint{color:#8f877c}
.field-error{color:#efb7b2;min-height:.9rem}
.contact-form textarea.is-invalid{border-color:#efb7b2}
.contact-form .button[disabled]{opacity:.62;cursor:wait;pointer-events:none}
.contact-success-card{align-self:start;border:1px solid rgba(182,146,80,.5);background:rgba(255,255,255,.035);padding:2rem;max-width:620px}
.contact-success-card h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.15;margin:.45rem 0 1rem;color:#f6f1e8}
.contact-success-card>p:not(.eyebrow){color:#d9d0c4;line-height:1.7;margin:.4rem 0}
.contact-success-card .contact-success-note{color:#c8ad78!important}
.contact-success-card .button{margin-top:1.35rem}


/* Event schedule – Hommage an Eckenheim */
.event-schedule{
  max-width:860px;
  margin:2.3rem auto 2rem;
  display:grid;
  grid-template-columns:1fr;
  gap:.8rem;
  text-align:left;
}
.event-schedule-item{
  display:grid;
  grid-template-columns:76px 1fr;
  gap:1rem;
  align-items:start;
  padding:1rem 0;
  border-top:1px solid rgba(255,255,255,.14);
}
.event-schedule-item:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.event-schedule-item time{
  font-family:var(--serif);
  color:var(--gold-soft);
  font-size:1.25rem;
  line-height:1.15;
}
.event-schedule-item div{display:grid;gap:.26rem}
.event-schedule-item b{
  font-size:.62rem;
  letter-spacing:.18em;
  font-weight:700;
  color:#fff;
}
.event-schedule-item span{
  font-family:var(--serif);
  color:#d8cfc2;
  font-size:.94rem;
  line-height:1.5;
}
.event-inner>strong{margin-top:.6rem}

.event-popup-schedule{
  display:grid;
  gap:.42rem;
  margin:.2rem 0 .35rem;
  padding:.8rem 0;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.event-popup-schedule p{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:.7rem;
  align-items:baseline;
  margin:0!important;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.event-popup-schedule span{
  color:#c9a660;
  font-family:var(--serif);
  font-size:.9rem;
  letter-spacing:.02em;
}

@media (min-width:760px){
  .event-schedule{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
  }
  .event-schedule-item{
    grid-template-columns:1fr;
    gap:.7rem;
    padding:1.1rem 1.5rem;
    border-top:1px solid rgba(255,255,255,.14);
    border-bottom:1px solid rgba(255,255,255,.14);
    border-right:1px solid rgba(255,255,255,.14);
  }
  .event-schedule-item:first-child{border-left:1px solid rgba(255,255,255,.14)}
  .event-schedule-item time{font-size:1.55rem}
}

/* V7 · Finale Hommage / ruhigere Veranstaltung */
.editorial-grid{grid-template-columns:1fr;gap:1.15rem;max-width:1220px}
.editorial-card img{aspect-ratio:16/10;object-fit:cover}

.event-band{padding:4.4rem 1rem}
.event-inner{max-width:1040px}
.event-inner h2{font-size:clamp(1.8rem,5.2vw,3.15rem);line-height:1.08;margin:.25rem 0 1rem;letter-spacing:.015em}
.event-inner>p:not(.eyebrow){max-width:760px;font-size:.98rem;line-height:1.65;margin-bottom:1.8rem}
.event-inner>strong{font-size:.68rem;letter-spacing:.18em;margin-top:1.15rem}
.event-schedule{max-width:960px;margin:2rem auto 1.6rem}
.event-schedule-item{min-width:0}
.event-schedule-item b{display:block;font-size:.64rem;line-height:1.35;margin-bottom:.2rem;overflow-wrap:anywhere}
.event-schedule-item span{display:block;font-size:.89rem;line-height:1.5;overflow-wrap:anywhere}

.event-popup{max-height:min(80vh,650px);overflow:auto}
.event-popup-dismiss{width:100%;margin-top:1rem;border:1px solid rgba(201,166,96,.65);background:transparent;color:#f7f0e5;padding:.82rem 1rem;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.event-popup-dismiss:hover,.event-popup-dismiss:focus-visible{background:#c9a660;color:#171614}
.footer-counter{color:#b99a60!important}

@media (min-width:640px){
  .editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
}
@media (min-width:960px){
  .event-band{padding:4.8rem 4vw}
  .event-schedule{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
  .event-schedule-item{padding:1.15rem 1.35rem}
  .event-schedule-item time{font-size:1.35rem}
  .event-inner h2{font-size:clamp(2.25rem,3.8vw,3.35rem)}
}
@media (max-width:430px){
  .editorial-grid{grid-template-columns:1fr;gap:1rem}
  .event-inner h2{font-size:1.9rem}
  .event-schedule-item{grid-template-columns:64px 1fr;gap:.8rem}
  .event-schedule-item time{font-size:1.05rem}
  .event-schedule-item b{font-size:.58rem;letter-spacing:.14em}
  .event-schedule-item span{font-size:.84rem}
}

.contact-success-card[hidden], .contact-form[hidden]{display:none!important}


/* Rechtliche Hinweise */
.footer-legal{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.footer-legal a{font-size:.52rem;letter-spacing:.16em;text-decoration:none;color:#b8afa2;text-transform:uppercase}
.footer-legal a:hover,.footer-legal a:focus-visible{color:#d8c59f}
.contact-privacy-note{margin:.8rem 0 0!important;font-size:.72rem!important;line-height:1.5!important;color:#aaa397!important;letter-spacing:0!important}
.contact-privacy-note a{color:#d8c59f;text-decoration:underline;text-underline-offset:3px}
.legal-page{min-height:100vh;background:#f4efe5;color:#26231f}
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem max(1.2rem,4vw);background:#11110f;color:#f4efe5;border-bottom:1px solid #2f2c27}
.legal-top a{text-decoration:none;color:inherit}
.legal-top .legal-brand{font-family:var(--serif);font-size:1.15rem;letter-spacing:.18em}
.legal-top .legal-back{font-size:.68rem;letter-spacing:.14em;color:#d8c59f}
.legal-wrap{width:min(850px,calc(100% - 2rem));margin:0 auto;padding:4rem 0 5rem}
.legal-kicker{margin:0 0 .8rem;font-size:.68rem;letter-spacing:.2em;color:#9a7436;text-transform:uppercase}
.legal-wrap h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.3rem,6vw,4.6rem);line-height:.98;margin:0 0 2.5rem}
.legal-wrap h2{font-family:var(--serif);font-weight:400;font-size:1.55rem;margin:2.7rem 0 .8rem}
.legal-wrap h3{font-family:var(--serif);font-weight:400;font-size:1.1rem;margin:1.8rem 0 .55rem}
.legal-wrap p,.legal-wrap li{font-size:.96rem;line-height:1.75;color:#4d463d}
.legal-wrap a{color:#745625;text-underline-offset:3px}
.legal-card{padding:1.4rem 1.5rem;border:1px solid #d6cdbf;background:#faf7f1}
.legal-note{margin-top:3rem;padding-top:1.3rem;border-top:1px solid #d6cdbf;font-size:.78rem!important;color:#7e7467!important}
@media(min-width:900px){.footer{grid-template-columns:1fr auto auto 1fr}.footer-legal{justify-self:center}.footer p:nth-of-type(1){justify-self:center}.footer p:nth-of-type(2){justify-self:end}}
@media(max-width:760px){.legal-wrap{padding:2.8rem 0 4rem}.legal-top{align-items:flex-start}.footer-legal{margin:.2rem 0}}

.gate-legal{margin:.8rem 0 0;font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:#aaa297}.gate-legal a{text-decoration:underline;text-underline-offset:3px}


/* V12.3 Preisvorschläge */
.work-offer-button{appearance:none;border:0;border-bottom:1px solid rgba(154,116,54,.45);padding:0 0 .15rem;background:transparent;color:#8d682e;font:600 .58rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.work-offer-button:hover,.work-offer-button:focus-visible{color:#5f451f;border-color:#8d682e;outline:none}
.offer-status-card{margin:0 auto 2rem;max-width:760px;border:1px solid rgba(154,116,54,.35);padding:1rem 1.2rem;display:flex;gap:.6rem 1rem;align-items:baseline;justify-content:center;flex-wrap:wrap;text-align:center;background:#f0e9dd}
.offer-status-card strong{font-size:.62rem;letter-spacing:.16em;color:#795923}.offer-status-card span{font-family:var(--serif);font-size:.95rem;color:#4b443b}.offer-status-card.error{border-color:#b9827b}.offer-status-card.error strong{color:#8d4d45}
.offer-modal[hidden]{display:none!important}.offer-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:1rem}.offer-modal-backdrop{position:absolute;inset:0;background:rgba(5,5,5,.86);backdrop-filter:blur(3px)}
.offer-dialog{position:relative;z-index:1;width:min(620px,100%);max-height:calc(100svh - 2rem);overflow:auto;background:#f3ede3;color:#211f1b;border:1px solid rgba(197,164,100,.55);padding:clamp(1.4rem,4vw,2.6rem);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.offer-close{position:absolute;right:.8rem;top:.8rem;width:42px;height:42px;border:1px solid rgba(0,0,0,.18);background:transparent;color:#211f1b;font-size:1.7rem;line-height:1;cursor:pointer}.offer-close:hover,.offer-close:focus-visible{border-color:#9a7436;color:#9a7436;outline:none}
.offer-dialog h2{font-family:var(--serif);font-size:clamp(2.1rem,7vw,3.7rem);font-weight:400;line-height:.98;margin:.3rem 0 .5rem}.offer-work-title{font-family:var(--serif);font-size:1.25rem;color:#9a7436;margin:.2rem 0 1rem}.offer-intro{font-family:var(--serif);line-height:1.6;color:#61594f;margin:0 0 1.5rem}
.offer-form{display:grid;gap:1rem}.offer-form label{display:grid;gap:.42rem}.offer-form label>span{font:600 .56rem/1.4 var(--sans);letter-spacing:.16em;color:#70665b}.offer-form label>span em{font-style:normal;color:#9d958b;letter-spacing:.09em}.offer-form input,.offer-form textarea{width:100%;border:1px solid #c9c0b2;background:#fbf8f2;color:#211f1b;padding:.88rem .95rem;border-radius:0;font:inherit;outline:none}.offer-form input:focus,.offer-form textarea:focus{border-color:#9a7436}.offer-form textarea{resize:vertical}.offer-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.offer-amount-field{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #c9c0b2;background:#fbf8f2}.offer-amount-field input{border:0;background:transparent;font-family:var(--serif);font-size:1.65rem}.offer-amount-field:focus-within{border-color:#9a7436}.offer-amount-field b{padding:0 1rem;font-family:var(--serif);font-size:1.5rem;font-weight:400;color:#9a7436}.offer-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.offer-ack{grid-template-columns:auto 1fr!important;align-items:flex-start;gap:.7rem!important;padding:.8rem 0}.offer-ack input{width:auto!important;margin:.18rem 0 0}.offer-ack span{letter-spacing:0!important;font-size:.74rem!important;font-weight:400!important;line-height:1.5!important;color:#5f574d!important}.offer-privacy{margin:.15rem 0 0;font-size:.7rem;line-height:1.5;color:#81786d}.offer-privacy a{text-decoration:underline;text-underline-offset:3px}.offer-form .button{justify-self:start;border:0;cursor:pointer}.offer-form .button[disabled]{opacity:.62;cursor:wait}
@media(max-width:639px){.offer-modal{padding:.55rem}.offer-dialog{max-height:calc(100svh - 1.1rem);padding:1.4rem 1rem 1.2rem}.offer-two-col{grid-template-columns:1fr}.offer-dialog h2{padding-right:2.8rem}.offer-form .button{width:100%}}


.offer-minimum{display:block;margin-top:.15rem;font:500 .58rem/1.45 var(--sans);letter-spacing:.06em;color:#8f8579}

.work-auction-link{display:inline-block;text-decoration:none;text-align:center}


/* Charity-Auktion auf der Startseite */
.home-auction-teaser{display:grid;gap:1.25rem;padding:2rem 1rem;background:#171512;color:#f5efe4;border-top:1px solid rgba(209,174,103,.32);border-bottom:1px solid rgba(209,174,103,.32)}
.home-auction-copy{max-width:720px}
.home-auction-kicker{margin:0 0 .65rem;font-size:.56rem;font-weight:700;letter-spacing:.22em;color:var(--gold-soft)}
.home-auction-copy h2{margin:0 0 .8rem;font-family:var(--serif);font-weight:400;font-size:clamp(1.55rem,6vw,2.65rem);line-height:1.08}
.home-auction-copy>p:not(.home-auction-kicker){margin:0;color:#d7cec1;font-family:var(--serif);font-size:.93rem;line-height:1.55}
.home-auction-status{display:grid;gap:.2rem;align-content:center;padding:1rem 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.home-auction-status>span{font-size:.5rem;letter-spacing:.19em;color:#aaa094}
.home-auction-status>strong{font-family:var(--serif);font-size:2.4rem;font-weight:400;color:#fff;line-height:1}
.home-auction-status small{margin-top:.35rem;font-size:.6rem;line-height:1.5;color:#bbb1a4}
.home-auction-status small b{font-weight:600;color:#eee4d5}
.home-auction-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:50px;padding:0 1rem;background:var(--gold);color:#14110d;font-size:.62rem;font-weight:700;letter-spacing:.17em;transition:background .2s ease,transform .2s ease}
.home-auction-cta:hover,.home-auction-cta:focus-visible{background:var(--gold-soft);transform:translateY(-1px);outline:none}

/* Kleiner wiederkehrender Auktionshinweis */
.auction-reminder[hidden]{display:none!important}
.auction-reminder{position:fixed;z-index:1280;left:clamp(1rem,2.2vw,2rem);bottom:clamp(1rem,2.2vw,2rem);width:min(330px,calc(100vw - 2rem));padding:1rem 1rem .95rem;background:rgba(18,16,13,.96);color:#f6eee1;border:1px solid rgba(209,174,103,.48);box-shadow:0 18px 55px rgba(0,0,0,.28);backdrop-filter:blur(12px);opacity:0;transform:translateY(calc(100% + 2rem));transition:opacity .38s ease,transform .38s ease}
.auction-reminder.is-visible{opacity:1;transform:none}
.auction-reminder p{margin:0 2rem .45rem 0;color:var(--gold-soft);font-size:.5rem;font-weight:700;letter-spacing:.18em}
.auction-reminder div{display:flex;align-items:baseline;gap:.45rem;margin-bottom:.7rem;font-family:var(--serif)}
.auction-reminder div span{font-size:.75rem;color:#cfc5b6}
.auction-reminder div strong{font-size:1.45rem;font-weight:400;color:#fff}
.auction-reminder a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding-top:.7rem;font-size:.55rem;font-weight:700;letter-spacing:.14em;color:#fff}
.auction-reminder-close{position:absolute;right:.35rem;top:.25rem;width:2rem;height:2rem;border:0;background:transparent;color:#d8cdbd;font-size:1.25rem;line-height:1}

@media (min-width:760px){
  .home-auction-teaser{grid-template-columns:minmax(0,1.7fr) minmax(230px,.65fr) minmax(190px,.45fr);align-items:center;padding:2.2rem 4vw;gap:2.5rem}
  .home-auction-status{padding:0 1.8rem;border-top:0;border-bottom:0;border-left:1px solid rgba(255,255,255,.13);border-right:1px solid rgba(255,255,255,.13)}
  .home-auction-cta{min-height:56px}
}
@media (max-width:600px){
  .auction-reminder{left:1rem;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:auto}
}
@media (prefers-reduced-motion:reduce){.auction-reminder{transition:none}.home-auction-cta{transition:none}}


/* Vernissage-Anmeldung im Event-Popup */
.event-rsvp-panel[hidden]{display:none!important}
.event-rsvp-panel{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.12)}
.event-rsvp-form{display:grid;gap:.65rem}
.event-rsvp-form label>span{display:block;margin-bottom:.45rem;font-size:.54rem;letter-spacing:.18em;color:#c9a660;font-weight:700}
.event-rsvp-row{display:grid;grid-template-columns:minmax(0,1fr) auto}
.event-rsvp-row input{min-width:0;border:1px solid rgba(201,166,96,.46);border-right:0;background:#11100f;color:#f7f0e5;padding:.8rem .85rem;font:500 .76rem/1.2 var(--sans);outline:none}
.event-rsvp-row input::placeholder{color:#776f66}
.event-rsvp-row input:focus{border-color:#c9a660}
.event-rsvp-row button{border:1px solid #c9a660;background:#c9a660;color:#171614;padding:.8rem 1rem;font-size:.58rem;letter-spacing:.12em;font-weight:700;cursor:pointer}
.event-rsvp-note{margin:0!important;color:#8f877e!important;font-size:.58rem!important;line-height:1.5!important}
.event-rsvp-note a{color:#bca168}
.event-rsvp-error{margin:.1rem 0 0!important;color:#efb7b2!important;font-size:.66rem!important}
.event-rsvp-skip{margin-top:.75rem;border:0;background:transparent;color:#a99f93;padding:.35rem 0;font-size:.55rem;letter-spacing:.1em;cursor:pointer}
.event-rsvp-skip:hover,.event-rsvp-skip:focus-visible{color:#f7f0e5}
.event-rsvp-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.event-rsvp-success{margin-top:1rem;padding:1rem;border:1px solid rgba(201,166,96,.42);background:rgba(201,166,96,.06)}
.event-rsvp-success span{display:block;color:#c9a660;font-size:.52rem;letter-spacing:.18em;font-weight:700}
.event-rsvp-success strong{display:block;margin:.4rem 0 .3rem;font:400 1.35rem/1.1 var(--serif);color:#fff}
.event-rsvp-success p{margin:0;color:#d8cdbd;font-size:.72rem;line-height:1.5}
@media(max-width:430px){
  .event-rsvp-row{grid-template-columns:1fr}
  .event-rsvp-row input{border-right:1px solid rgba(201,166,96,.46);border-bottom:0}
  .event-rsvp-row button{width:100%}
}


/* V12.24 Smartphone-Bildoptimierung */
@media (max-width: 760px){
  .editorial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.85rem;
  }
  .editorial-card img{
    aspect-ratio:4/5;
    object-fit:cover;
  }
  .works-grid{
    grid-template-columns:1fr;
    gap:1.6rem;
    max-width:620px;
  }
  .work-card{
    width:100%;
    margin:0 auto;
  }
  .work-image{
    background:#eee7db;
    padding:.35rem;
  }
  .work-image img{
    aspect-ratio:auto;
    max-height:70svh;
    object-fit:contain;
    margin:0 auto;
  }
  .work-copy{
    padding:.8rem .15rem 0;
  }
  .work-copy h3{
    font-size:1rem;
  }
  .work-copy p{
    font-size:.78rem;
    line-height:1.45;
  }
  .work-copy a,
  .work-offer-button{
    font-size:.58rem;
    letter-spacing:.14em;
  }
}

@media (max-width: 520px){
  .editorial-grid{
    grid-template-columns:1fr;
    gap:1rem;
    max-width:560px;
  }
  .editorial-card{
    width:100%;
    margin:0 auto;
  }
  .editorial-card img{
    aspect-ratio:auto;
    max-height:68svh;
    object-fit:cover;
  }
  .editorial-card figcaption{
    font-size:.68rem;
    margin:.65rem 0 0;
  }
  .works-section,
  .gallery-section{
    padding-left:.9rem;
    padding-right:.9rem;
  }
  .section-title{
    margin-bottom:1.7rem;
  }
  .section-title h2{
    line-height:1.05;
  }
  .gallery-footnote{
    font-size:.46rem;
    letter-spacing:.2em;
  }
}

@media (max-width: 380px){
  .work-image img{
    max-height:60svh;
  }
}



/* V12.30 Werkansicht */
.work-modal[hidden]{display:none!important}.work-modal{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:clamp(.6rem,2vw,1.5rem)}.work-modal-backdrop{position:absolute;inset:0;background:rgba(4,4,4,.91);backdrop-filter:blur(4px)}.work-dialog{position:relative;z-index:1;width:min(1180px,100%);max-height:calc(100svh - 2rem);overflow:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);background:#eee6da;color:#211f1b;border:1px solid rgba(209,174,103,.5);box-shadow:0 30px 90px rgba(0,0,0,.5)}.work-modal-close{position:absolute;z-index:4;right:.9rem;top:.9rem;width:44px;height:44px;border:1px solid rgba(0,0,0,.2);background:rgba(238,230,218,.88);color:#211f1b;font-size:1.8rem;line-height:1;cursor:pointer}.work-viewer{background:#171612;padding:clamp(1rem,2.2vw,2rem);display:flex;flex-direction:column;justify-content:center;min-height:620px}.work-main-image-wrap{position:relative;display:grid;place-items:center;min-height:0}.work-main-image{display:block;max-width:100%;max-height:70vh;object-fit:contain;box-shadow:0 14px 45px rgba(0,0,0,.3)}.work-viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:58px;border:1px solid rgba(255,255,255,.26);background:rgba(0,0,0,.34);color:#fff;font:2.6rem/1 Georgia,serif;cursor:pointer}.work-viewer-prev{left:.25rem}.work-viewer-next{right:.25rem}.work-thumbs{display:flex;gap:.55rem;justify-content:center;overflow:auto;padding-top:1rem}.work-thumb{flex:0 0 66px;width:66px;height:58px;padding:3px;border:1px solid transparent;background:transparent;cursor:pointer}.work-thumb.active{border-color:var(--gold)}.work-thumb img{display:block;width:100%;height:100%;object-fit:cover}.work-detail-copy{padding:clamp(2rem,4vw,4.2rem);display:flex;flex-direction:column;justify-content:center}.work-detail-kicker{margin:0 0 .75rem;font:600 .58rem/1.3 var(--sans);letter-spacing:.18em;color:#9a7437}.work-detail-copy h2{font-family:var(--serif);font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:.95;margin:0 0 1.8rem}.work-facts{margin:0 0 2rem;border-top:1px solid rgba(36,31,25,.2)}.work-facts div{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(36,31,25,.14)}.work-facts dt{font:600 .52rem/1.4 var(--sans);letter-spacing:.16em;color:#8d682e}.work-facts dd{margin:0;font:1rem/1.45 var(--serif);color:#38322c}.work-detail-actions{display:grid;gap:.6rem}.button-ghost-dark{border:1px solid rgba(36,31,25,.28);background:transparent;color:#211f1b}.button-ghost-dark:hover,.button-ghost-dark:focus-visible{border-color:#9a7437;color:#795923;outline:none}.work-detail-actions .button{width:100%;justify-content:center;cursor:pointer}.work-detail-offer{display:block;margin-top:.25rem;padding:.7rem 0 0;border:0;border-top:1px solid rgba(154,116,55,.32);background:transparent;color:#8d682e;text-align:left;font:600 .56rem/1.4 var(--sans);letter-spacing:.15em;text-decoration:none;cursor:pointer}.work-detail-note{margin:1.8rem 0 0;font:italic .86rem/1.5 var(--serif);color:#71685d}.work-image{cursor:pointer}
@media(max-width:820px){.work-modal{padding:0}.work-dialog{width:100%;height:100svh;max-height:none;grid-template-columns:1fr;overflow:auto}.work-viewer{min-height:auto;padding:4.4rem .8rem 1rem}.work-main-image{max-height:55svh}.work-detail-copy{padding:1.5rem 1rem 2.2rem}.work-detail-copy h2{font-size:clamp(2.4rem,13vw,4rem);margin-bottom:1.35rem}.work-facts div{grid-template-columns:88px 1fr}.work-modal-close{position:fixed;right:.7rem;top:.7rem}.work-thumbs{justify-content:flex-start}.work-detail-actions .button{min-height:48px}.work-detail-offer{text-align:center;padding-top:1rem}}

/* V12.41 · Working Arts – Besuchshinweis im hellen Hommage-Bereich */
.working-arts-note{
  grid-column:1/-1;
  width:100%;
  margin-top:1.2rem;
  padding:2rem 0 0;
  border-top:1px solid var(--line);
}
.working-arts-kicker{
  margin:0 0 1.15rem;
  font:700 .58rem/1.3 var(--sans);
  letter-spacing:.24em;
  color:#896a32;
  text-transform:uppercase;
}
.working-arts-grid{
  display:grid;
  gap:1.35rem;
}
.working-arts-grid h3{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(1.85rem,6vw,3.35rem);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.015em;
  color:#211d19;
}
.working-arts-copy{
  max-width:760px;
  font-family:var(--serif);
  color:#514941;
}
.working-arts-copy p{
  margin:0 0 1rem;
  font-size:1rem;
  line-height:1.65;
}
.working-arts-copy .working-arts-important{
  margin:1.25rem 0;
  padding:1rem 1.1rem;
  border-left:2px solid var(--gold);
  background:rgba(180,137,56,.055);
  color:#332d27;
}
.working-arts-important strong{
  font-weight:600;
}
.working-arts-copy .working-arts-statists{
  margin:1.35rem 0 0;
  font-style:italic;
  color:#756b60;
}

@media (min-width:760px){
  .working-arts-note{
    margin-top:2rem;
    padding-top:2.2rem;
  }
  .working-arts-grid{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:7vw;
    align-items:start;
  }
}

@media (max-width:430px){
  .working-arts-note{
    margin-top:.7rem;
    padding-top:1.6rem;
  }
  .working-arts-grid h3{
    font-size:2rem;
  }
  .working-arts-copy p{
    font-size:.94rem;
  }
  .working-arts-copy .working-arts-important{
    padding:.9rem .95rem;
  }
}

/* V12.50 · Vernissage-Reiter · Chrome/Mobile cache-safe */
.event-reopen-tab[hidden]{display:none!important}
.event-reopen-tab{
  position:fixed;
  right:clamp(.8rem,2.2vw,1.5rem);
  bottom:max(.8rem,env(safe-area-inset-bottom));
  z-index:1270;
  display:flex;
  align-items:center;
  gap:.55rem;
  min-height:44px;
  padding:.7rem .85rem;
  border:1px solid rgba(201,166,96,.62);
  background:rgba(17,16,15,.96);
  color:#f7f0e5;
  box-shadow:0 14px 38px rgba(0,0,0,.24);
  opacity:0;
  transform:translateY(10px);
  transition:opacity .24s ease,transform .24s ease,background .2s ease;
}
.event-reopen-tab.is-visible{opacity:1;transform:none}
.event-reopen-tab:hover,.event-reopen-tab:focus-visible{background:#c9a660;color:#171614;outline:none}
.event-reopen-tab span{font:700 .5rem/1 var(--sans);letter-spacing:.15em}
.event-reopen-tab strong{font:400 1rem/1 var(--serif)}
.event-reopen-tab i{font-style:normal}


@media (max-width:600px){
  .event-reopen-tab{
    right:.7rem;
    bottom:max(.7rem,env(safe-area-inset-bottom));
  }
}


@media (prefers-reduced-motion:reduce){
  .event-reopen-tab{transition:none}
}


/* V13.0 · ruhiges Nachladen großer Werkansichten */
.work-main-image{transition:opacity .18s ease}
.work-main-image.is-loading{opacity:.55}
.legal-page .footer,.auction-page .footer{margin-top:0}
@media (prefers-reduced-motion:reduce){.work-main-image{transition:none}}

/* V14.0 · Working Arts Live-Auktionen */
.works-auction-intro{
  margin:clamp(1.4rem,3vw,2.6rem) 0 clamp(2rem,4vw,3.5rem);
  padding:clamp(1.4rem,3vw,2.4rem);
  border:1px solid rgba(180,137,56,.32);
  background:rgba(180,137,56,.055);
}
.works-auction-intro h3{margin:.25rem 0 .8rem;font:400 clamp(1.8rem,4vw,3.2rem)/1.02 var(--serif);color:#211d19}
.works-auction-intro>p:not(.eyebrow){max-width:820px;margin:0;color:#62594f;font:1rem/1.65 var(--serif)}
.works-auction-rules{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.1rem}
.works-auction-rules span{padding:.48rem .62rem;border:1px solid rgba(139,103,43,.24);font:700 .5rem/1.15 var(--sans);letter-spacing:.12em;color:#765827;background:rgba(255,255,255,.48)}
.work-auction-mini{margin:.8rem 0 0;padding:.75rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:.45rem .8rem}
.work-auction-mini div{display:flex;flex-direction:column;gap:.15rem}.work-auction-mini span{font:700 .47rem/1.2 var(--sans);letter-spacing:.12em;color:#8b6a35}.work-auction-mini strong{font:400 1.05rem/1.2 var(--serif);color:#302a24}.work-auction-mini small{grid-column:1/-1;color:#786f65;font:.72rem/1.45 var(--sans)}
.work-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin-top:.65rem}.work-card-actions .work-offer-button{margin:0;text-align:center;padding:.72rem .45rem;display:flex;align-items:center;justify-content:center;min-height:42px}
.work-auction-link{background:#171512!important;color:#f4eadb!important;border-color:#171512!important}.work-auction-link:hover,.work-auction-link:focus-visible{background:#a9813b!important;border-color:#a9813b!important;color:#fff!important}
.work-price-offer{background:transparent!important}
.work-gallery-text{margin:0 0 1.25rem;color:#575047;font:400 1rem/1.65 var(--serif)}
.work-quote{margin:0 0 1.4rem;padding:1rem 1.1rem;border-left:2px solid #b48a3a;background:rgba(180,138,58,.06)}.work-quote p{margin:0;color:#3b342d;font:italic 1.08rem/1.5 var(--serif)}.work-quote cite{display:block;margin-top:.55rem;color:#8b6a35;font:700 .52rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.work-detail-auction{margin:0 0 1.25rem;padding:1rem;border:1px solid rgba(180,138,58,.28);background:rgba(255,255,255,.44);display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.work-detail-auction div{display:flex;flex-direction:column;gap:.18rem}.work-detail-auction span{font:700 .48rem/1.2 var(--sans);letter-spacing:.13em;color:#8b6a35}.work-detail-auction strong{font:400 1.25rem/1.2 var(--serif);color:#2e2924}.work-detail-auction p{grid-column:1/-1;margin:.1rem 0 0;color:#6b6259;font:.74rem/1.5 var(--sans)}
@media(max-width:620px){.work-card-actions{grid-template-columns:1fr}.work-detail-auction{grid-template-columns:1fr 1fr}.works-auction-rules{display:grid;grid-template-columns:1fr 1fr}.works-auction-rules span{text-align:center}.work-gallery-text{font-size:.96rem}}

/* V14.1 · Work-in-Progress-Hinweis */
body.wip-open{overflow:hidden}
.wip-overlay[hidden],.wip-tab[hidden]{display:none!important}
.wip-overlay{
  position:fixed;
  inset:0;
  z-index:2200;
  display:grid;
  place-items:center;
  padding:clamp(.8rem,2vw,1.5rem);
  opacity:0;
  transition:opacity .26s ease;
}
.wip-overlay.is-visible{opacity:1}
.wip-backdrop{
  position:absolute;
  inset:0;
  background:rgba(10,9,8,.78);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
.wip-card{
  position:relative;
  z-index:1;
  width:min(720px,100%);
  max-height:calc(100svh - 1.6rem);
  overflow:auto;
  padding:clamp(1.7rem,4vw,3.4rem);
  color:#211f1b;
  background:#f5efe5;
  border:1px solid rgba(180,138,58,.72);
  box-shadow:0 34px 100px rgba(0,0,0,.48);
  transform:translateY(18px) scale(.99);
  transition:transform .3s cubic-bezier(.2,.72,.2,1);
}
.wip-overlay.is-visible .wip-card{transform:none}
.wip-line{display:block;width:62px;height:1px;margin:0 0 1.15rem;background:#a67a34}
.wip-kicker{margin:0 3rem .9rem 0;font:700 .56rem/1.3 var(--sans);letter-spacing:.22em;color:#8b6529}
.wip-card h2{margin:0;font:400 clamp(2.25rem,7vw,5.1rem)/.9 var(--serif);letter-spacing:-.035em;color:#171512}
.wip-card h2 em{font-style:italic;font-weight:400;color:#9a7335}
.wip-copy{max-width:610px;margin:1.45rem 0 0;font:400 clamp(.98rem,2vw,1.16rem)/1.62 var(--serif);color:#524b43}
.wip-room{max-width:610px;margin:1.2rem 0 0;padding:1.1rem 0;border-top:1px solid rgba(84,70,48,.2);border-bottom:1px solid rgba(84,70,48,.2);font:400 .91rem/1.6 var(--sans);color:#62594f}
.wip-room strong{display:inline-block;margin-bottom:.15rem;color:#2b2722;font-weight:700}
.wip-final{margin:1.35rem 0 1.3rem;font:italic 400 clamp(1.7rem,4vw,2.6rem)/1 var(--serif);color:#171512}
.wip-continue{width:100%;min-height:52px;padding:.9rem 1rem;border:1px solid #171512;background:#171512;color:#f6efe4;display:flex;align-items:center;justify-content:space-between;gap:1rem;font:700 .6rem/1.2 var(--sans);letter-spacing:.16em;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
.wip-continue:hover,.wip-continue:focus-visible{background:#a47b37;border-color:#a47b37;color:#fff;outline:none}
.wip-close{position:absolute;right:.75rem;top:.7rem;width:2.5rem;height:2.5rem;border:0;background:transparent;color:#3b352e;font-size:1.65rem;line-height:1;cursor:pointer;opacity:.72}
.wip-close:hover,.wip-close:focus-visible{opacity:1;color:#8b6529;outline:none}
.wip-tab{
  position:fixed;
  z-index:1260;
  left:clamp(.75rem,2vw,1.35rem);
  top:calc(76px + clamp(.7rem,1.8vw,1.15rem));
  display:flex;
  align-items:center;
  gap:.65rem;
  min-height:40px;
  padding:.66rem .78rem;
  border:1px solid rgba(154,116,54,.5);
  background:rgba(246,241,232,.96);
  color:#2b2722;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
  opacity:0;
  transform:translateY(-8px);
  transition:opacity .22s ease,transform .22s ease,background .2s ease,color .2s ease;
  cursor:pointer;
}
.wip-tab.is-visible{opacity:1;transform:none}
.wip-tab:hover,.wip-tab:focus-visible{background:#171512;color:#f6efe4;outline:none}
.wip-tab span{font:700 .49rem/1 var(--sans);letter-spacing:.15em}
.wip-tab i{font-style:normal;font-size:.9rem}
@media(max-width:600px){
  .wip-overlay{padding:.55rem}
  .wip-card{max-height:calc(100svh - 1.1rem);padding:1.6rem 1.15rem 1.25rem}
  .wip-card h2{font-size:clamp(2.35rem,12vw,3.5rem)}
  .wip-copy{font-size:.98rem;line-height:1.55}
  .wip-room{font-size:.82rem;line-height:1.55}
  .wip-final{font-size:1.85rem}
  .wip-tab{left:.65rem;top:76px;min-height:38px;padding:.62rem .7rem}
}
@media(prefers-reduced-motion:reduce){.wip-overlay,.wip-card,.wip-tab{transition:none}}


/* V14.2 · wechselnde Werktitel im Hero */
.hero-copy h1.hero-title-rotator{
  --hero-title-size:clamp(5rem,8.5vw,9.2rem);
  min-height:.86em;
  display:flex;
  align-items:flex-end;
  overflow:visible;
  font-size:var(--hero-title-size);
  line-height:.82;
  white-space:nowrap;
}
.hero-title-link{
  display:inline-block;
  max-width:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  text-align:left;
  white-space:inherit;
  cursor:pointer;
}
.hero-title-link:focus-visible{outline:1px solid rgba(246,217,158,.95);outline-offset:.08em}
@media(hover:hover){
  .hero-title-link:hover .hero-title-word{opacity:.88}
}
.hero-copy h1.hero-title-rotator[data-title-size="short"]{--hero-title-size:clamp(6.5rem,10.5vw,11rem)}
.hero-copy h1.hero-title-rotator[data-title-size="medium"]{--hero-title-size:clamp(5.5rem,8.8vw,9.6rem)}
.hero-copy h1.hero-title-rotator[data-title-size="long"]{--hero-title-size:clamp(4.6rem,7.25vw,8rem)}
.hero-title-word{
  display:block;
  max-width:100%;
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
  transition:opacity .43s ease,transform .43s cubic-bezier(.2,.72,.2,1),filter .43s ease;
}
.hero-title-rotator.is-changing .hero-title-word{
  opacity:0;
  transform:translateY(.09em);
  filter:blur(2px);
}
@media(max-width:900px){
  .hero-copy h1.hero-title-rotator[data-title-size="short"]{--hero-title-size:clamp(3rem,13.5vw,3.9rem)}
  .hero-copy h1.hero-title-rotator[data-title-size="medium"]{--hero-title-size:clamp(2.65rem,11.2vw,3.55rem)}
  .hero-copy h1.hero-title-rotator[data-title-size="long"]{--hero-title-size:clamp(2.25rem,9.2vw,3.05rem)}
}
@media(prefers-reduced-motion:reduce){
  .hero-title-word{transition:none}
}

/* V14.8 · Einzelner Uhrzeiger im Zentrum des gerahmten Kunstwerks.
   Der Hintergrund ist vollstaendig durchsichtig, die bisherige gruene Uhr entfaellt.
   Die Groesse folgt per JS exakt der Skalierung des Hero-Fotos (object-fit:cover). */
.hero-wall-clock{
  position:absolute;
  z-index:4;
  left:50%;
  top:22%;
  width:100px; /* Fallback, wird mit Bildskalierung gesetzt */
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
}
.hero-wall-clock.is-positioned{opacity:1}
.hero-artwork-hitbox{
  position:absolute;
  z-index:3;
  display:block;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  pointer-events:none;
  -webkit-tap-highlight-color:transparent;
}
.hero-artwork-hitbox.is-positioned{pointer-events:auto}
.hero-artwork-hitbox:focus-visible{outline:1px solid rgba(246,217,158,.95);outline-offset:4px}
.hero-wall-clock-face{
  position:absolute;
  inset:0;
  display:block;
  border:0;
  background:none;
  box-shadow:none;
}
.hero-wall-clock-hand{
  --hero-clock-angle:0deg;
  position:absolute;
  left:50%;
  bottom:50%;
  width:2.6px;
  height:44%;
  border-radius:90% 90% 1px 1px;
  background:linear-gradient(90deg,#faf2db 0%,#fff8e9 55%,#d3af77 100%);
  transform-origin:50% 100%;
  transform:translateX(-50%) rotate(var(--hero-clock-angle));
  box-shadow:0 0 0 0.55px rgba(49,30,28,.66),0 1px 5px rgba(0,0,0,.27);
  will-change:transform;
}
.hero-wall-clock-pin{
  position:absolute;
  left:50%;
  top:50%;
  width:7px;
  height:7px;
  border-radius:50%;
  border:1px solid rgba(56,34,26,.55);
  background:radial-gradient(circle at 32% 28%,#fffaf0 0%,#d9bb88 75%);
  box-shadow:0 0 3px rgba(0,0,0,.26);
  transform:translate(-50%,-50%);
}
@media(max-width:600px){
  .hero-wall-clock-hand{width:2.4px}
  .hero-wall-clock-pin{width:6px;height:6px}
}
@media(prefers-reduced-motion:reduce){
  .hero-wall-clock{transition:none}
  .hero-wall-clock-hand{transition:none!important;will-change:auto}
}
.logo[data-scroll-top]{cursor:pointer}
