:root{--night:#121b29;--red:#781828;--gold:#e4bd79;--paper:#fffdf8;--ink:#172333;--muted:#5c6470}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button,summary{cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b68b43;outline-offset:4px}img{max-width:100%;height:auto}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.035em;overflow-wrap:anywhere}h1{font-size:clamp(40px,6vw,78px);margin:12px 0 25px}h2{font-size:clamp(30px,4vw,52px);margin:12px 0 24px}h3{font-size:27px}p{margin:0 0 1.3em}header{background:var(--night);color:white;padding:22px 5%;display:flex;align-items:center;gap:24px;justify-content:space-between}.brand{font:24px/1.1 Georgia,serif;text-decoration:none;letter-spacing:1px}.brand span{display:block;font:11px Arial,sans-serif;letter-spacing:5px;color:var(--gold);margin-bottom:5px}.brand small{display:block;font:10px Arial,sans-serif;letter-spacing:2px;margin-top:8px}.desktop{display:flex;justify-content:center;gap:24px;padding:13px 3%;border-bottom:1px solid #ddd;background:var(--paper);flex-wrap:wrap}.desktop a{font-size:14px;text-decoration:none}.desktop a[aria-current]{color:var(--red);text-decoration:underline}.menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--red);color:white;text-decoration:none;font-weight:600;padding:13px 24px;border:1px solid var(--red);border-radius:3px;font-size:15px}.top-ticket{background:var(--gold);color:var(--night);border-color:var(--gold)}.button.outline{background:transparent;border-color:#ffffff90}.button.secondary{background:transparent;color:var(--red)}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero{position:relative;min-height:640px;height:75vh;max-height:850px;display:flex;align-items:center;color:white;background:var(--night);isolation:isolate}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:60% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07111be8 0%,#07111b99 40%,#07111b10 100%);z-index:-1}.hero-content{max-width:780px;padding:55px 7vw}.hero h1{font-size:clamp(43px,5.6vw,82px);line-height:1.05}.hero p:not(.eyebrow){font-size:22px}.eyebrow{font:12px/1.7 Arial,sans-serif;text-transform:uppercase;letter-spacing:2.6px;color:var(--red);margin-bottom:18px}.hero .eyebrow{color:var(--gold)}.hero-caption{position:absolute;bottom:24px;right:5%;font-size:12px}.welcome{max-width:810px;margin:0 auto;text-align:center;padding:95px 30px 65px}.welcome p:last-child{max-width:600px;margin:auto;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:1250px;padding:0 40px;margin:0 auto 90px}.feature-grid>a{position:relative;min-height:440px;overflow:hidden;isolation:isolate;color:white;text-decoration:none;display:flex;align-items:end}.feature-grid img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2}.feature-grid a:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,#07111be8);z-index:-1}.feature-grid a>div{padding:35px}.feature-grid span{font-size:12px;letter-spacing:1.5px;text-transform:uppercase}.feature-grid h2{margin-bottom:12px}.feature-grid p{margin:0}.visit{background:var(--red);color:white;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:70px max(6%,calc((100vw - 1120px)/2));align-items:center}.visit .eyebrow{color:var(--gold)}.visit a{padding:22px 0;border-bottom:1px solid #ffffff50;display:flex;justify-content:space-between;gap:20px;text-decoration:none;font-size:19px}.family{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;max-width:1200px;padding:90px 40px;margin:auto}.family img{width:100%;min-height:320px;object-fit:cover}.text-link{font-weight:600}.page-title{max-width:1160px;margin:auto;padding:70px 30px 35px}.intro{max-width:700px;font-size:20px;color:var(--muted)}.panel,.section{max-width:1100px;margin:25px auto 55px;padding:35px}.panel{background:#eee9df;border-left:3px solid var(--gold)}.panel h2{font-size:36px}.link-grid{max-width:1160px;margin:20px auto 65px;padding:0 30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.link-card{padding:30px;border:1px solid #d9d4c8;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;min-height:170px;background:white}.link-card span{font-size:14px;color:var(--red)}.link-card h3{margin:0 0 25px}.notice{max-width:1100px;margin:0 auto 35px;padding:20px 25px;background:#eee9df;font-size:15px}.source{max-width:1100px;margin:0 auto 70px;padding:0 25px;overflow-wrap:anywhere}.source h2{font-size:34px;margin:50px 0 25px}.source h3{font-size:27px}.source p{max-width:820px}.source figure{margin:30px auto}.source figure img{display:block;margin:auto;max-height:1000px;object-fit:contain}.source figcaption{font-size:14px;color:var(--muted);margin-top:10px}.source ul{padding-left:22px}.source table{width:100%;table-layout:fixed;border-collapse:collapse}.source td,.source th{padding:8px;overflow-wrap:anywhere}.source video{width:100%;max-height:75vh}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0!important;list-style:none}.gallery img{width:100%;height:auto}.gallery li{min-width:0}.gallery figure{margin:0}.source .sqrpara{margin-bottom:25px}.video-links{margin-top:45px}.video-card{display:flex;justify-content:space-between;padding:20px;border-bottom:1px solid #ddd;text-decoration:none}.faq{border-bottom:1px solid #ccc;padding:20px 0}.faq summary{font-size:20px}.faq p{padding-top:15px;max-width:780px}footer{background:var(--night);color:white;padding:55px 6%;display:flex;justify-content:space-between;gap:35px;flex-wrap:wrap;font-size:14px}.footer-brand{font:25px Georgia,serif}.footer-brand small{display:block;font:13px Arial,sans-serif;margin-top:14px;color:#b8c0cd}footer a{margin-right:18px}.mobile-ticket{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:30;background:white;padding:10px}dialog{border:0;padding:50px 20px 20px;max-width:94vw;max-height:94dvh;background:var(--paper)}dialog::backdrop{background:#000d}dialog img{display:block;max-height:77dvh;max-width:86vw;object-fit:contain}dialog button{position:absolute;right:15px;top:12px;padding:6px 12px;border:0;background:transparent;font-size:16px}.menu:not([open]) nav{display:none}@media(max-width:950px){.desktop{display:none}.menu{display:block}.menu summary{padding:12px}.menu[open] nav{position:absolute;top:115px;left:0;right:0;background:var(--night);z-index:20;display:grid;grid-template-columns:1fr 1fr;padding:20px 6%;gap:6px 22px;max-height:calc(100dvh - 115px);overflow:auto}.menu nav a{padding:10px 0;text-decoration:none}.link-grid{grid-template-columns:1fr 1fr}.top-ticket{margin-left:auto}.hero{min-height:580px;height:70vh}.visit{gap:35px}.family{gap:35px}.gallery{grid-template-columns:1fr 1fr}}@media(max-width:600px){body{font-size:16px}header{padding:19px 6%;gap:12px}.brand{font-size:20px}.brand small{font-size:9px}.top-ticket{display:none}.hero{min-height:600px;height:calc(90svh - 100px);align-items:end}.hero>img{object-position:63% center}.hero:after{background:linear-gradient(0deg,#07111bf5 0%,#07111baa 50%,#07111b10)}.hero-content{padding:40px 6% 58px}.hero h1{font-size:47px}.hero p:not(.eyebrow){font-size:19px}.hero .actions{gap:10px}.hero .button{padding:12px 15px;font-size:14px}.hero-caption{font-size:11px;bottom:15px}.welcome{padding:55px 6% 40px}.feature-grid{grid-template-columns:1fr;padding:0 6%;gap:22px;margin-bottom:50px}.feature-grid>a{min-height:390px}.visit,.family{grid-template-columns:1fr;padding:45px 6%;gap:25px}.family img{min-height:230px}.page-title{padding:42px 6% 20px}.page-title h1{font-size:43px}.intro{font-size:18px}.panel,.section{margin:20px 6% 40px;padding:25px 20px}.panel h2{font-size:30px}.link-grid{padding:0 6%;grid-template-columns:1fr;margin-bottom:40px}.link-card{min-height:130px;padding:25px}.source{padding:0 6%}.source h2{font-size:29px}.notice{margin:0 6% 30px;padding:18px}.source td{padding:4px}.gallery{grid-template-columns:1fr}.menu[open] nav{top:100px}.mobile-ticket{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--red);color:white;text-align:center;padding:14px 10px calc(14px + env(safe-area-inset-bottom));text-decoration:none;font-weight:bold;z-index:15;box-shadow:0 -1px 8px #0003}footer{padding-bottom:100px;flex-direction:column}h1,h2,h3,a,p{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Kompaktere Informationsseiten und gut lesbare Ticketpreise. */
.page-title{padding-top:42px;padding-bottom:20px}.page-title h1{font-size:clamp(32px,4.2vw,52px)}.page-title .intro{font-size:18px}.panel,.section{margin-top:18px;margin-bottom:30px;padding:26px}.source h2{font-size:28px;margin:28px 0 16px}.source h3{font-size:23px}.source .sqrpara{margin-bottom:18px}.source figure{margin:18px auto}.source .gallery{gap:16px}.source .gallery figure{margin:0}.source .gallery figure img{width:100%;max-height:380px;object-fit:contain}.source ul{padding-left:18px}.feature-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-box{font-size:16px}.feature-box h3{font-size:22px}.welcome{padding:48px 25px 38px}.welcome h2{font-size:clamp(30px,4vw,45px)}.welcome .text-link{display:inline-block;margin-top:20px}.feature-grid{margin-bottom:45px}.visit{padding-top:42px;padding-bottom:42px}.link-grid{gap:16px;margin-bottom:35px}.link-card{min-height:135px;padding:22px}.link-card h3{font-size:24px;margin-bottom:15px}.event-date{font-family:Georgia,serif;font-size:clamp(38px,5vw,60px);line-height:1.2;color:var(--red);margin-bottom:14px}.announcement h2{font-size:28px}.announcement .actions{margin-top:20px}.prices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.price{background:white;border:1px solid #d9d4c8;padding:20px}.price h3{font-size:24px;margin:0 0 18px}.price dl{margin:0}.price dl>div{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin:12px 0;flex-wrap:wrap}.price dt{font-size:15px}.price dd{margin:0;font-size:23px;font-weight:bold;color:var(--red)}.special-days{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid #d9d4c8;padding-top:20px}.faq{padding:14px 0}.faq summary{font-size:18px}.faq p{margin-bottom:8px}.archive-fold{border-top:1px solid #d9d4c8;padding:15px 0}.archive-fold>summary{font-weight:bold;font-size:18px}.archive-fold>div{padding-top:18px}.compact-archive .page-title{padding-top:32px}.compact-archive .notice{padding:14px 20px;font-size:15px}.compact-archive .source h2{font-size:23px;margin-top:20px}.compact-archive .source h3{font-size:21px}.archive-end{padding-top:25px}.compact-archive .video-links h2{font-size:23px}.compact-archive .video-card{padding:12px 0}#reservieren p{margin:16px 0 0}.source svg{display:none}
@media(max-width:950px){.prices{grid-template-columns:1fr 1fr}.feature-container{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.page-title{padding-top:30px;padding-bottom:12px}.page-title h1{font-size:35px}.panel,.section{padding:20px 16px;margin-bottom:24px}.prices{grid-template-columns:1fr;gap:12px}.price{padding:18px}.price dl>div{flex-wrap:nowrap}.special-days{grid-template-columns:1fr;gap:0}.source .gallery{grid-template-columns:1fr 1fr;gap:12px}.source .gallery figcaption{font-size:13px}.source .gallery figure img{max-height:260px}.feature-grid>a{min-height:310px}.compact-archive footer{padding-bottom:35px}.compact-archive .source{margin-bottom:35px}.announcement .button{width:100%}.archive-fold>summary{font-size:17px}.source h2{font-size:25px}}

.news-poster{max-width:760px;margin:28px auto 0}.news-poster a{display:block}.news-poster img{display:block;width:100%;height:auto}
.organizer-note{font-size:14px;line-height:1.6;color:var(--muted);max-width:1100px;margin:24px auto;padding:0 26px}.announcement .organizer-note,#preise .organizer-note,#reservieren .organizer-note{padding:0;margin-bottom:0}footer{display:grid;grid-template-columns:2fr 1fr;gap:18px 35px;padding-top:32px;padding-bottom:32px}.footer-identity strong{font:23px/1.3 Georgia,serif}.footer-identity p{margin:10px 0 0;font-size:14px;color:#d0d6e0}.footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;align-content:start}.footer-links a{margin:0}.operator-description{grid-column:1/-1;max-width:1000px;font-size:13px;color:#d0d6e0;margin:0}.top-ticket{max-width:370px;text-align:center}.map-shell{border:1px solid #d9d4c8;background:#eee9df;margin:22px 0 16px}.map-consent{padding:24px}.map-consent h3{margin-top:0;font-size:26px}.map-consent p{font-size:15px;max-width:780px}.map-frame iframe{width:100%;height:380px;border:0;display:block}.map-frame:empty{display:none}.map-reset{font:inherit;color:var(--red);background:transparent;border:0;text-decoration:underline;padding:12px 20px}.route-button{margin-bottom:16px}.legal-source summary{font-size:18px;cursor:pointer}.legal-source .source{padding:20px 0;margin-bottom:0}.operator-contact h2{font-size:28px}.hero .actions a{max-width:340px;text-align:center}.announcement .button{max-width:100%}[hidden]{display:none!important}@media(max-width:600px){footer{grid-template-columns:1fr;padding-bottom:120px}.operator-description{grid-column:auto}.footer-identity strong{font-size:21px}.organizer-note{padding:0 6%;font-size:14px}.map-consent{padding:18px}.map-frame iframe{height:320px}.mobile-ticket{font-size:14px;padding-left:16px;padding-right:16px}.hero .actions{display:grid}.hero{height:auto;min-height:640px}.hero-content{padding-top:45px}.compact-archive footer{padding-bottom:35px}}
.event-date{font-size:clamp(27px,3.6vw,43px);max-width:820px}.news-poster{max-width:620px}.contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-columns h2,.legal-details h2{font-size:27px;margin:24px 0 14px}.contact-columns p,.legal-details p{max-width:790px}.contact-columns .button{white-space:normal;text-align:center}.legal-details{max-width:1000px}.hero strong{font-size:inherit}@media(max-width:700px){.contact-columns{grid-template-columns:1fr;gap:12px}.event-date{font-size:29px}.hero h1{font-size:40px}.hero-content{padding-top:34px;padding-bottom:48px}.hero p:not(.eyebrow){font-size:18px}.news-poster{max-width:100%}}
.jubilee-intro{padding-top:8px}.jubilee-years{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.jubilee-years a{display:flex;flex-direction:column;padding:18px;border:1px solid #d9d4c8;text-decoration:none}.jubilee-years strong{font:28px Georgia,serif;color:var(--red);margin-bottom:8px}.jubilee-years span{font-size:15px}.jubilee-posters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.jubilee-posters figure{margin:0;min-width:0}.jubilee-posters img{display:block;width:100%;height:300px;object-fit:contain;background:#eee9df}.jubilee-posters figcaption{font-size:14px;margin:10px 0 16px}.jubilee-thanks{max-width:430px;margin:22px auto}.jubilee-thanks img{width:100%;height:auto}@media(max-width:700px){.jubilee-years{grid-template-columns:1fr 1fr}.jubilee-posters{grid-template-columns:1fr;gap:18px}.jubilee-posters img{height:auto;max-height:410px}.jubilee-years a{padding:14px}.jubilee-years strong{font-size:25px}}
/* Ausschließlich der neue Startseiten-Hero. */
.hero-emotional{min-height:680px;height:calc(100svh - 160px);max-height:850px;background:#071024;align-items:center}.hero-emotional>img{width:77%;left:auto;right:0;object-position:55% center}.hero-emotional:after{background:linear-gradient(90deg,#071024 3%,#071024f0 23%,#07102485 46%,#07102410 76%),linear-gradient(0deg,#07102470,transparent 35%)}.hero-emotional .hero-content{width:100%;max-width:720px;padding:45px 0 45px 6vw}.hero-emotional .eyebrow{font-size:13px;letter-spacing:2px;margin:0 0 20px}.hero-emotional h1{font-size:clamp(60px,6.7vw,96px);line-height:.99;letter-spacing:-2px;margin:0 0 27px}.hero-emotional h1 em{color:var(--gold);font-weight:400}.hero-emotional .hero-date{font-size:20px!important;line-height:1.5;margin:0 0 6px;max-width:540px}.hero-emotional .hero-program{font-size:18px!important;margin:0 0 25px}.hero-emotional .actions{display:flex;gap:12px;max-width:560px}.hero-emotional .actions .button{max-width:none;min-height:52px;padding:13px 18px;font-size:14px}.hero-emotional .actions .button:first-child{background:var(--gold);border-color:var(--gold);color:#071024}.hero-emotional .actions .outline{max-width:285px;background:#07102480;border-color:#ffffffb0}.hero-emotional .hero-place{font-size:14px!important;letter-spacing:.5px;margin:20px 0 0;color:#e0e5ef}@media(max-width:700px){.hero-emotional{height:auto;min-height:0;max-height:none;align-items:end}.hero-emotional>img{width:100%;height:350px;left:0;right:0;object-position:52% center}.hero-emotional:after{background:linear-gradient(180deg,transparent 130px,#07102455 235px,#071024 340px)}.hero-emotional .hero-content{padding:275px 6% 35px;max-width:none}.hero-emotional .eyebrow{font-size:12px;line-height:1.6;letter-spacing:1.6px;margin-bottom:14px}.hero-emotional h1{font-size:clamp(49px,13vw,72px);letter-spacing:-1px;margin-bottom:20px}.hero-emotional .hero-date{font-size:18px!important;max-width:350px}.hero-emotional .hero-program{font-size:17px!important;margin-bottom:20px}.hero-emotional .actions{display:grid;grid-template-columns:1fr;width:100%;max-width:410px;gap:10px}.hero-emotional .actions .button,.hero-emotional .actions .outline{max-width:none;width:100%;font-size:15px;padding:13px 15px}.hero-emotional .hero-place{margin-top:17px}}

/* Current poster: complete artwork, never cropped. */
.hero.hero-poster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);padding:40px max(5%,calc((100vw - 1320px)/2));height:auto;max-height:none;min-height:0;background:#121b29}
.hero.hero-poster:after{display:none}.hero-poster .hero-content{padding:20px 0;max-width:none;min-width:0}.hero-poster .hero-poster-art{display:block;width:100%;max-width:490px;justify-self:center;line-height:0}.hero-poster .hero-poster-art img{display:block;position:static;width:100%;height:auto;max-height:none;object-fit:contain}.hero-poster .actions .button{max-width:100%;text-align:center}.hero-poster h1{font-size:clamp(44px,5.4vw,80px)}
@media(max-width:760px){.hero.hero-poster{grid-template-columns:minmax(0,1fr);padding:26px 20px 36px;gap:24px}.hero-poster .hero-content{padding:0}.hero-poster .hero-poster-art{max-width:440px}.hero-poster .actions{display:grid}.hero-poster h1{font-size:clamp(43px,10vw,66px)}.hero.hero-poster .hero-date{font-size:21px}}

/* Final responsive spacing. */
@media(min-width:951px){.hero.hero-poster{padding-right:max(7%,calc((100vw - 1280px)/2))}}
@media(max-width:950px){.hero.hero-poster{grid-template-columns:minmax(0,1fr);padding:30px 6% 40px;gap:28px}.hero-poster .hero-content{padding:0}.hero-poster .hero-poster-art{max-width:440px}.hero-poster .actions{display:grid;grid-template-columns:1fr;max-width:440px}.hero-poster .actions .button,.hero-poster .actions .outline{width:100%;max-width:none}.hero-poster .hero-content{max-width:none}}
@media(max-width:600px){.compact-archive footer{padding-bottom:120px}}

/* Einheitlicher Footer und bereinigte Bildraster. */
footer{grid-template-columns:minmax(0,2fr) minmax(0,1fr) 180px;align-items:start}
.footer-logo{display:block;width:180px;max-width:100%;height:auto;justify-self:end}
.footer-identity,.footer-links{min-width:0}.official-site a{overflow-wrap:anywhere}
.source .flying-artist{display:inline-block;width:calc(50% - 16px);max-width:340px;height:auto;max-height:380px;object-fit:contain;vertical-align:middle}
@media(max-width:950px){footer{grid-template-columns:minmax(0,1fr) 180px}.footer-links{grid-column:1}.footer-logo{grid-column:2;grid-row:1 / span 2}}
@media(max-width:600px){footer{grid-template-columns:minmax(0,1fr)}.footer-links,.footer-logo,.operator-description{grid-column:1;grid-row:auto}.footer-logo{justify-self:start;width:150px}.source .flying-artist{width:calc(50% - 10px);max-height:240px}}
