@font-face{font-family:Poppins;src:url('fonts/poppins-v12-latin-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('fonts/poppins-v12-latin-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('fonts/poppins-v12-latin-900.woff2') format('woff2');font-style:normal;font-weight:900;font-display:swap}
:root{--navy:#1e306c;--red:#891b1a;--red-hover:#a42625;--text:#494949;--light:#f5f5f5;--line:#dedede}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--text);font:400 16px/1.65 Poppins,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{color:var(--navy);font-weight:900;line-height:1.15}p{line-height:1.65}
.site-header{height:112px;padding:20px clamp(22px,4vw,65px);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;background:#fff}.brand{display:flex;align-items:center}.brand img{height:76px;width:76px;object-fit:contain}.brand span{display:none}.site-header nav{display:flex;align-items:center;gap:30px;padding:15px 29px;background:#fff;border-radius:36px;box-shadow:0 4px 16px #00000017}.site-header nav a{font-weight:600;font-size:13px;line-height:1.2;white-space:nowrap;color:#4b4b4b}.site-header nav a:hover,.site-header nav a[aria-current=page]{border-bottom:1px solid var(--red)}.ticket-home .site-header{position:absolute;top:0;left:0;right:0;background:transparent}.ticket-home .brand img{height:150px;width:150px;filter:drop-shadow(0 3px 3px #0004)}
.hero{min-height:660px;background:linear-gradient(90deg,rgba(25,5,7,.65),rgba(25,5,7,.15) 65%),url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/headervis-gala-champaign.webp') center/cover;color:#fff;display:flex;align-items:end}.hero-inner{padding:175px clamp(28px,7vw,110px) 80px;max-width:820px}.eyebrow{font-size:13px;letter-spacing:.04em;font-weight:600;color:var(--red);text-transform:uppercase}.eyebrow.light{color:#fff}.hero h1{font-size:clamp(58px,7.7vw,110px);line-height:1.02;letter-spacing:-.035em;color:#fff;margin:23px 0 18px}.hero-copy{font-size:20px;line-height:1.6;max-width:620px;margin-bottom:27px}.button{border:0;border-radius:30px;background:var(--red);color:#fff;padding:13px 25px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-size:14px;font-weight:600;line-height:1.4}.button:hover{background:var(--red-hover)}.button:disabled{background:#898989;cursor:not-allowed}.button span{font-size:19px;line-height:1}
.section{padding:100px clamp(28px,7vw,110px)}.intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,6vw,90px)}.intro-copy{max-width:590px}.intro h2,.event-heading h2,.closing h2{font-size:clamp(38px,4.5vw,65px);letter-spacing:-.035em;margin:10px 0 30px}.intro p:not(.eyebrow){font-size:17px}.gala-photo{display:block;width:100%;height:460px;object-fit:cover}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--red);font-weight:600;font-size:15px;border-bottom:1px solid var(--red);padding:5px 0}.text-link:hover{color:var(--navy)}
.event-card{background:var(--light)}.event-heading{text-align:center;margin-bottom:45px}.event-heading h2{margin-bottom:15px}.event-heading>p:last-child{color:var(--text)}.event-grid{max-width:1120px;margin:auto;display:grid;grid-template-columns:.82fr 1.18fr;background:#fff;box-shadow:0 10px 35px #00000012}.event-facts{padding:54px;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:28px}.event-facts div{border-bottom:1px solid #ffffff60;padding-bottom:22px}.event-facts div:last-child{border-bottom:0}.event-facts span{display:block;color:#dce3fc;font-size:13px;font-weight:600;margin-bottom:9px}.event-facts strong{font-size:22px;font-weight:600;line-height:1.35}.order-panel{padding:52px}.order-panel h3{font-size:36px;color:var(--navy);font-weight:900;line-height:1.2;margin:10px 0 16px}.order-panel>p:not(.eyebrow){font-size:15px}.price{font-size:23px;color:var(--navy);font-weight:600;margin:22px 0}.order-panel form{display:grid;gap:9px}.order-panel label{font-size:13px;font-weight:600;margin-top:9px}.order-panel input,.order-panel select{width:100%;background:#fff;border:1px solid #bfbfbf;border-radius:3px;padding:13px 15px;outline-color:var(--navy)}.total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:19px;margin-top:16px;font-weight:600}.total strong{font-size:23px;color:var(--navy)}.order-panel button{width:100%;margin-top:10px}.small{font-size:12px!important;line-height:1.6!important;margin:3px 0!important;color:#666!important}.small a{color:var(--red);text-decoration:underline}#form-error{color:#a52322;font-size:13px}
.closing{text-align:center}.closing h2{margin:14px 0 32px}.outline{background:transparent;color:var(--red);border:1px solid var(--red)}.outline:hover{color:#fff}footer{background:#3b3b3b;color:#fff;padding:55px clamp(28px,7vw,110px) 24px;display:grid;grid-template-columns:1fr 1fr;gap:30px}footer div:first-child{display:flex;align-items:center;gap:15px;font-size:13px}footer div:first-child p{margin:0}footer img{width:70px;height:70px;object-fit:contain}footer div:nth-child(2){display:flex;align-items:center;justify-content:flex-end;gap:25px;font-size:13px}footer div:nth-child(2) a:hover{text-decoration:underline}footer small{grid-column:1/-1;border-top:1px solid #777;padding-top:22px;color:#ddd}
.ticket-paper{background:#fff;max-width:560px;margin:40px auto;padding:45px;text-align:center;box-shadow:0 5px 30px #0002;border:1px solid var(--line)}.ticket-paper h1{font-size:60px}.ticket-logo{width:95px}.ticket-line{border-top:1px solid var(--line);padding:15px 0;display:flex;justify-content:space-between;text-align:left;gap:15px}.ticket-line span{color:#777}.qr{width:260px;margin:20px auto;display:block}.ticket-paper button{background:var(--red);color:#fff;border:0;border-radius:30px;padding:13px 20px}
@media(max-width:820px){.ticket-home .site-header{padding:15px 22px}.ticket-home .brand img{height:90px;width:90px}.site-header nav{gap:14px;padding:12px 18px}.site-header nav a{font-size:11px}.hero{min-height:590px}.hero-inner{padding:150px 28px 60px}.section{padding:70px 25px}.intro,.event-grid{grid-template-columns:1fr}.intro{gap:30px}.gala-photo{height:350px}.event-facts,.order-panel{padding:35px 28px}.event-facts{gap:10px}.event-facts strong{font-size:20px}footer{grid-template-columns:1fr;padding:45px 25px 24px}footer div:nth-child(2){justify-content:flex-start;flex-wrap:wrap}.ticket-paper{margin:10px;padding:25px}.ticket-paper h1{font-size:48px}}
@media(max-width:530px){.site-header{height:75px;padding:10px 17px}.brand img{height:55px;width:55px}.ticket-home .site-header{gap:8px;padding:12px 16px}.ticket-home .brand{flex:0 0 58px}.ticket-home .brand img{height:58px;width:58px}.site-header nav{gap:10px;padding:10px 12px;box-shadow:0 3px 12px #0002;min-width:0}.site-header nav a{font-size:10px}.site-header nav a:first-child{display:none}.hero{min-height:700px;background-color:#370607;background-image:linear-gradient(180deg,rgba(35,2,4,.08) 0%,rgba(35,2,4,.05) 230px,#370607 390px),url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/headervis-gala-champaign.webp');background-size:100% 100%,auto 300px;background-position:center,right 78px;background-repeat:no-repeat}.hero-inner{padding:360px 25px 48px;max-width:100%}.hero h1{font-size:clamp(48px,12vw,65px)}.hero-copy{font-size:16px}.gala-photo{height:260px}.intro h2,.event-heading h2,.closing h2{font-size:38px}.order-panel h3{font-size:31px}.event-facts{padding:29px 25px}.order-panel{padding:31px 25px}}
.order-panel .terms-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:400;line-height:1.5;margin-top:14px}.order-panel .terms-consent input{width:18px;height:18px;flex:0 0 18px;padding:0;margin:1px 0 0;accent-color:var(--red)}.terms-consent a{color:var(--red);text-decoration:underline}
.attendee-fields{display:grid;gap:12px;margin:12px 0}.attendee-card{border:1px solid var(--line);padding:14px 16px 18px;margin:0;display:grid;gap:5px;min-width:0}.attendee-card legend{font-size:13px;font-weight:600;color:var(--navy);padding:0 5px}.attendee-card label{display:grid;gap:5px}.attendee-card input{max-width:100%}
.attendee-card .attendee-self-label{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy);cursor:pointer}.attendee-self-label input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--red)}.attendee-card .guest-fields{display:grid;gap:12px;margin-top:8px}.attendee-card .guest-fields[hidden],.attendee-card .self-summary[hidden]{display:none}.attendee-card .self-summary{margin:4px 0 0;color:#555;font-size:12px;line-height:1.5}
@media print{body{background:#fff}.ticket-paper{box-shadow:none;margin:0 auto}.ticket-paper button{display:none}}
.ticket-home .brand img{background:#fff;border-radius:50%;padding:8px}
footer img{background:#fff;border-radius:50%;padding:5px;flex:none}
.custom-types{display:grid;gap:10px;margin:12px 0 16px}.custom-type-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #ddd;background:#fff}.custom-type-row span{display:grid;gap:4px}.custom-type-row strong{color:#1e306c}.custom-type-row small{font-size:12px;color:#5c5c5c;line-height:1.4}.custom-type-row select{width:75px;min-width:75px;padding:9px;border:1px solid #aaa}.terms-consent strong{color:#941f21}

/* Gala 2027: editorial entrance and a calmer, guided checkout. */
.ticket-home{background:#fbf9f5}.ticket-home .hero{position:relative;isolation:isolate;overflow:hidden;min-height:min(820px,90vh);background:#280809}.ticket-home .hero::before{content:"";position:absolute;z-index:-2;inset:-3%;background:url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/headervis-gala-champaign.webp') center/cover no-repeat;animation:gala-pan 26s ease-in-out infinite alternate}.ticket-home .hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(22,3,7,.84) 0%,rgba(25,4,7,.7) 36%,rgba(35,5,7,.12) 78%),linear-gradient(0deg,rgba(20,5,8,.28),transparent 45%)}.hero-inner{position:relative;z-index:1}.hero .eyebrow{letter-spacing:.18em;font-size:12px}.hero h1{max-width:760px;text-shadow:0 12px 45px #18050855}.hero-copy{max-width:540px}.hero-button{box-shadow:0 16px 38px #25020555;transition:transform .25s ease,background .25s ease}.hero-button:hover{transform:translateY(-3px)}@keyframes gala-pan{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-1%,0,0)}}
.event-card{background:linear-gradient(180deg,#f8f5ef,#f2eee8);padding-top:110px;padding-bottom:125px}.event-heading{max-width:780px;margin:0 auto 52px}.event-heading .eyebrow{letter-spacing:.16em;font-size:11px}.event-heading h2{margin:12px 0 16px;font-size:clamp(42px,5vw,72px)}.event-heading>p:last-child{font-size:17px}.event-grid{max-width:1240px;grid-template-columns:.78fr 1.22fr;box-shadow:0 30px 75px #1f17321a;background:#fff}.event-facts{position:relative;isolation:isolate;overflow:hidden;min-height:720px;padding:62px 54px 52px;background:#171e42;justify-content:space-between;gap:38px}.event-facts::before{content:"";position:absolute;inset:0;z-index:-2;background:url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/headervis-gala-champaign.webp') 68% center/cover no-repeat;filter:saturate(.6) brightness(.7)}.event-facts::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,25,61,.78),rgba(22,31,73,.94) 52%,#1e306c)}.event-facts-top .eyebrow{font-size:11px;letter-spacing:.16em;color:#dfc9a2}.event-facts h3{color:#fff;font-size:clamp(34px,3vw,48px);font-weight:900;line-height:1.12;letter-spacing:-.025em;margin:18px 0}.event-facts-top>p:last-child{color:#edf0fa;font-size:15px}.event-facts-list{border-top:1px solid #c8a779;padding-top:9px}.event-facts-list div{padding:18px 0;border-bottom:1px solid #ffffff40}.event-facts-list span{color:#d8c198;font-size:10px;letter-spacing:.14em;margin-bottom:5px}.event-facts-list strong{font-size:18px;line-height:1.4}.event-facts-note{color:#d9deee;font-size:12px;line-height:1.7;max-width:340px;margin:0}.order-panel{padding:62px clamp(32px,5vw,72px) 64px;border-top:5px solid #ad8657}.order-panel>.eyebrow{letter-spacing:.14em;font-size:11px}.order-panel h3{font-size:clamp(38px,4vw,53px);margin:12px 0 8px}.order-panel .order-intro{font-size:16px!important;color:#666;margin-bottom:10px}.order-panel form{display:block}.booking-step{padding:35px 0 36px;border-top:1px solid #e7e2da}.booking-step:first-child{border-top:0}.step-heading{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px}.step-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid #bb9a6c;border-radius:50%;font-size:11px;letter-spacing:.06em;font-weight:700;color:#805f37}.step-heading h4{margin:0;color:#1e306c;font-weight:900;font-size:20px;line-height:1.25}.step-heading p{margin:5px 0 0;color:#696969;font-size:12px;line-height:1.5}.booking-step>.price{display:inline-block;margin:4px 0 8px;color:#1e306c;font-weight:900;font-size:24px;line-height:1.4}.booking-step>label,.contact-grid label{display:grid;gap:8px;margin-top:18px;font-size:12px;font-weight:700;color:#313958}.order-panel input,.order-panel select{border-color:#d6d2cc;border-radius:0;padding:14px 15px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.order-panel input:focus,.order-panel select:focus{outline:0;border-color:#9d784e;box-shadow:0 0 0 3px #b7935726}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px 15px}.contact-grid label.wide{grid-column:1/-1}.contact-grid label{min-width:0}.contact-grid input{min-width:0}.custom-types{margin:14px 0}.custom-type-row{border-color:#e2ddd6;padding:16px 18px}.attendee-fields{gap:14px}.attendee-card{border-color:#e1dbd1;background:#fdfbf8;padding:18px 20px 20px}.attendee-card:has(.attendee-self:checked){border-color:#b59a75;background:#fbf8f2}.attendee-card legend{font-weight:900;font-size:13px}.attendee-card .attendee-self-label{color:#26396d;font-size:13px}.attendee-card .self-summary{font-size:12px}.checkout-step{padding-bottom:0}.checkout-step .total{margin:18px 0 4px;border-top:2px solid #1e306c;padding-top:20px;align-items:baseline}.checkout-step .total strong{font-size:31px;font-weight:900}.checkout-step .terms-consent{margin-top:20px;font-size:12px}.checkout-step #pay-button{margin-top:26px;min-height:54px;font-size:14px;transition:transform .25s ease,background .25s ease}.checkout-step #pay-button:not(:disabled):hover{transform:translateY(-2px)}.ticket-home footer{background:#192244}
@media(max-width:900px){.event-grid{grid-template-columns:1fr}.event-facts{min-height:auto;display:grid;grid-template-columns:1fr 1fr;padding:42px;gap:24px}.event-facts-top{grid-column:1/-1}.event-facts-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.event-facts-list div{padding:12px 0}.event-facts-note{grid-column:1/-1}.event-facts h3{font-size:39px}}
@media(max-width:600px){.ticket-home .hero{min-height:700px}.ticket-home .hero::before{background-size:auto 350px;background-position:78% 80px;inset:0;animation:gala-mobile-pan 25s ease-in-out infinite alternate}.ticket-home .hero::after{background:linear-gradient(180deg,rgba(32,3,6,.08) 0%,rgba(32,3,6,.12) 290px,#30080b 390px)}.hero-inner{padding-top:365px}.event-card{padding:76px 18px 90px}.event-heading{margin-bottom:34px}.event-heading h2{font-size:42px}.event-facts{display:block;padding:34px 28px}.event-facts h3{font-size:34px}.event-facts-list{display:block;margin:25px 0}.event-facts-list div{padding:13px 0}.event-facts-list strong{font-size:17px}.order-panel{padding:38px 24px 42px}.order-panel h3{font-size:39px}.booking-step{padding:30px 0}.contact-grid{grid-template-columns:1fr}.contact-grid label.wide{grid-column:auto}.step-heading{gap:13px}.step-heading h4{font-size:18px}.booking-step>.price{font-size:21px}.checkout-step .total strong{font-size:27px}@keyframes gala-mobile-pan{from{transform:scale(1) translateX(0)}to{transform:scale(1.05) translateX(-1%)}}}
@media(prefers-reduced-motion:reduce){.ticket-home .hero::before{animation:none}.hero-button,.checkout-step #pay-button{transition:none}.hero-button:hover,.checkout-step #pay-button:not(:disabled):hover{transform:none}}
@media(min-width:901px){.event-grid{align-items:start;background:transparent;box-shadow:none}.event-facts{position:sticky;top:0;height:min(850px,100vh);min-height:700px}.event-facts::before{background-image:url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/Spendengala_Kinderkrebshilfe_Seevetal_2023_0734-scaled.jpg');background-position:48% center}.event-facts::after{background:linear-gradient(180deg,rgba(19,27,66,.88),rgba(24,34,79,.6) 50%,rgba(24,34,79,.97))}.order-panel{background:#fff;box-shadow:15px 28px 65px #1f17321a}}

/* The invitation and the checkout are separate compositions. */
.ticket-home .hero::before{inset:-8%;animation:gala-drift 12s ease-in-out infinite alternate;will-change:transform}
.hero-shimmer{position:absolute;z-index:0;pointer-events:none;width:42vw;height:42vw;min-width:480px;min-height:480px;right:-9vw;top:8%;border-radius:50%;background:radial-gradient(circle,#efad4561 0%,#b8332040 25%,transparent 65%);filter:blur(24px);mix-blend-mode:screen;animation:gala-shimmer 7s ease-in-out infinite alternate}
.ticket-home .hero-inner{animation:gala-entrance 1.2s cubic-bezier(.2,.8,.2,1) both}
.ticket-home .hero h1{font-size:clamp(66px,8.5vw,128px);line-height:.94;letter-spacing:-.055em}
.hero-dateline{display:flex;align-items:center;gap:13px;margin:34px 0 0;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#f3d8b0}
.hero-dateline span{display:block;width:55px;height:1px;background:#e7bd7e;transform-origin:left;animation:gala-line 3.5s ease-in-out infinite alternate}
@keyframes gala-drift{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.12) translate3d(-2.5%,1%,0)}}
@keyframes gala-shimmer{from{opacity:.22;transform:translate3d(0,0,0) scale(.9)}to{opacity:.66;transform:translate3d(-9%,7%,0) scale(1.22)}}
@keyframes gala-entrance{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes gala-line{from{transform:scaleX(.55)}to{transform:scaleX(1.25)}}
.event-card{padding:112px clamp(28px,7vw,110px) 125px;background:radial-gradient(circle at 96% 8%,#f6e9d7 0,transparent 36%),#f8f5ef}
.event-heading{max-width:1220px;text-align:left;margin:0 auto 44px;display:grid;grid-template-columns:minmax(0,1fr) 390px;column-gap:48px;align-items:end}
.event-heading .eyebrow{grid-column:1/-1;color:#9a3224}
.event-heading h2{font-size:clamp(50px,5.4vw,82px);max-width:780px;margin:10px 0 0}
.event-heading>p:last-child{font-size:17px;line-height:1.6;margin:0 0 10px;color:#5e5b58}
.event-grid{max-width:1220px;display:block;background:none;box-shadow:none}
.event-facts{position:relative;top:auto;height:auto;min-height:410px;padding:0;display:grid;grid-template-columns:1.15fr .85fr;gap:0;background:#172754;overflow:hidden;box-shadow:0 23px 65px #1d1e2e22}
.event-facts::before,.event-facts::after{content:none}
.event-facts-visual{position:relative;min-height:410px;background:linear-gradient(180deg,#11152225,#09152fbd),url('https://kinderkrebshilfe-seevetal.de/wp-content/uploads/Spendengala_Kinderkrebshilfe_Seevetal_2023_0323-scaled.jpg') 50% center/cover;display:flex;flex-direction:column;justify-content:space-between;padding:38px 46px}
.event-facts-visual::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff40}
.visual-kicker{color:#fff;font-size:10px;letter-spacing:.19em;font-weight:600;max-width:270px}
.event-facts-visual p{color:#fff;font-size:clamp(42px,4vw,64px);font-weight:900;letter-spacing:-.045em;line-height:1.03;margin:0;text-shadow:0 8px 35px #050c21bb}
.event-facts-body{padding:40px clamp(30px,4vw,62px);display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 95% 0,#384975 0,transparent 42%),#1d2d5e}
.event-facts-body .eyebrow{font-size:11px;color:#d7bc8c;letter-spacing:.18em;margin:0}
.event-facts-body h3{font-size:clamp(27px,2.2vw,38px);line-height:1.12;margin:15px 0 25px;color:#fff}
.event-facts-list{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.event-facts-list div,.event-facts-list div:last-child{padding:11px 0;border-top:1px solid #ffffff55;border-bottom:0}
.event-facts-list div:last-child{grid-column:1/-1}
.event-facts-list span{margin:0 0 3px;font-size:10px;letter-spacing:.16em;color:#dcc394}
.event-facts-list strong{font-size:16px;color:#fff;line-height:1.35}
.event-facts-note{font-size:11px;letter-spacing:.02em;color:#e3e6f0;margin:18px 0 0;max-width:none}
.order-panel{max-width:960px;margin:48px auto 0;padding:0;background:transparent;border:0;box-shadow:none}
.order-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 24px;padding:0 8px}
.order-head .eyebrow{font-size:11px;letter-spacing:.17em;margin:0}
.order-head h3{font-size:clamp(38px,4vw,56px);margin:9px 0 5px}
.order-head .order-intro{font-size:15px;margin:0;color:#5a5a5a}
.order-head-mark{font-size:58px;line-height:1;color:#b38b56}
.order-panel form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.booking-step{min-width:0;background:#fff;padding:32px 35px 36px;border:1px solid #e4ded4;box-shadow:0 10px 30px #30251b0c}
.booking-step:first-child{border:1px solid #e4ded4}
.booking-step:nth-child(2){grid-column:2;grid-row:1/3}
.booking-step:nth-child(3){grid-column:1;grid-row:2;align-self:start}
.booking-step:nth-child(4){grid-column:1/-1;padding:38px 45px 44px}
.step-heading{margin-bottom:22px}
.booking-step>.price{display:block;margin:4px 0 10px}
.booking-step>.small{font-size:12px!important}
.booking-step>label{margin-top:19px}
.contact-grid{grid-template-columns:1fr 1fr;gap:6px 13px}
.contact-grid label{font-size:11px}
.attendee-card{background:#faf8f4}
.checkout-step .total{margin-top:10px}
.checkout-step .terms-consent{max-width:740px}
@media(max-width:1000px){.event-heading{grid-template-columns:1fr}.event-heading>p:last-child{max-width:650px;margin-top:18px}.event-facts{grid-template-columns:1fr 1fr}.event-facts-body{padding:34px}.event-facts-visual{padding:32px}.event-facts-list{grid-template-columns:1fr}.event-facts-list div:last-child{grid-column:auto}.order-panel form{grid-template-columns:1fr}.booking-step:nth-child(2),.booking-step:nth-child(3),.booking-step:nth-child(4){grid-column:1;grid-row:auto}}
@media(max-width:700px){.event-card{padding:75px 18px 90px}.event-heading{margin-bottom:28px}.event-heading h2{font-size:46px}.event-heading>p:last-child{font-size:15px}.event-facts{display:block;min-height:0}.event-facts-visual{min-height:245px;padding:24px}.event-facts-visual p{font-size:39px}.event-facts-body{padding:28px 26px 30px}.event-facts-body h3{font-size:30px}.event-facts-list{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.event-facts-list div:last-child{grid-column:1/-1}.order-panel{margin-top:38px}.order-head{padding:0 4px;margin-bottom:18px}.order-head h3{font-size:38px}.order-head-mark{display:none}.booking-step,.booking-step:nth-child(4){padding:28px 24px}.ticket-home .hero::before{animation:gala-mobile-drift 11s ease-in-out infinite alternate}.hero-shimmer{min-width:260px;min-height:260px;right:-24vw;top:55px}.hero-dateline{font-size:10px;letter-spacing:.11em}.ticket-home .hero h1{font-size:clamp(53px,12vw,73px)}@keyframes gala-mobile-drift{from{transform:scale(1) translateX(0)}to{transform:scale(1.14) translateX(-3%)}}
}
@media(max-width:520px){.contact-grid{grid-template-columns:1fr}.contact-grid label.wide{grid-column:1}.event-facts-visual p{font-size:34px}.event-heading h2{font-size:41px}.order-head h3{font-size:36px}}
@media(prefers-reduced-motion:reduce){.ticket-home .hero::before,.ticket-home .hero-inner,.hero-shimmer,.hero-dateline span{animation:none}}
.waitlist-panel[hidden]{display:none!important}.waitlist-panel{max-width:1240px;margin:24px auto 0;padding:clamp(28px,5vw,55px);background:#1b254f;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:45px;box-shadow:0 18px 50px #17204421}.waitlist-panel .eyebrow{color:#d8ba82;letter-spacing:.18em}.waitlist-panel h3{color:#fff;font-size:clamp(34px,3.4vw,52px);line-height:1.07;margin:12px 0 16px}.waitlist-panel p{line-height:1.6}.waitlist-panel form{display:grid;align-content:center;gap:16px}.waitlist-panel form>label:first-child{display:grid;gap:8px;font-weight:700}.waitlist-panel input[type=email]{width:100%;min-height:50px;padding:12px 14px;background:#fff;border:1px solid #b8a179;border-radius:0;color:#1b254f;font:inherit}.waitlist-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}.waitlist-consent input{flex:none;margin:3px 0 0}.waitlist-panel a{color:#fff;text-decoration:underline}.waitlist-panel button{justify-self:start}.waitlist-panel #waitlist-status{margin:0;font-size:14px}@media(max-width:700px){.waitlist-panel{grid-template-columns:1fr;gap:20px}.waitlist-panel button{width:100%}}

/* Legal documents: long German headings and links must fit narrow screens. */
.legal-page .legal-title{font-size:clamp(40px,6vw,76px);max-width:100%;hyphens:auto;overflow-wrap:anywhere;text-wrap:balance}
.legal-page main{min-width:0}
.legal-page main h2,.legal-page main p{hyphens:auto;overflow-wrap:anywhere}
.legal-page footer{overflow-wrap:anywhere}
@media(max-width:600px){.legal-page .section{padding:46px 22px 70px}.legal-page .site-header{height:84px;padding:12px 22px}.legal-page .legal-title{font-size:clamp(30px,8vw,38px);line-height:1.12;margin:14px 0 26px}.legal-page main h2{font-size:21px!important;line-height:1.25}.legal-page main p{font-size:15px!important;line-height:1.65!important}.legal-page footer{display:block}.legal-page footer div:nth-child(2){justify-content:flex-start;margin-top:26px}}
.contact-grid textarea{width:100%;min-width:0;resize:vertical;min-height:96px;padding:14px 15px;border:1px solid #d6d2cc;border-radius:0;background:#fff;color:#313958;font:inherit;line-height:1.55;transition:border-color .2s ease,box-shadow .2s ease}
.contact-grid textarea:focus{outline:0;border-color:#9d784e;box-shadow:0 0 0 3px #b7935726}
.contact-grid .optional-label{font-weight:400;color:#727272}
.contact-grid .wide.group-choice{grid-column:1/-1;margin-top:24px;padding:20px 22px;background:#f8f5ef;border:1px solid #e5d9c8;color:#313958}.group-choice>strong{display:block;color:#1e306c;font-size:16px;line-height:1.4}.group-choice p{margin:10px 0 0;font-size:14px;line-height:1.65;color:#50505a}.group-choice details{margin-top:16px}.group-choice summary{cursor:pointer;display:block;padding:13px 15px;border:1px solid #a58356;background:#fff;color:#1e306c;font-size:14px;font-weight:800;line-height:1.5;list-style:none}.group-choice summary::-webkit-details-marker{display:none}.group-choice summary::after{content:'+';float:right;font-size:20px;line-height:1}.group-choice details[open] summary::after{content:'−'}.group-choice details label{display:grid;gap:8px;margin-top:14px;font-size:13px;font-weight:700}.group-choice input{width:100%;font-size:16px}.group-choice .group-note{font-size:12px;color:#696969}.group-choice summary:focus-visible{outline:3px solid #a58356;outline-offset:3px}@media(max-width:600px){.contact-grid .wide.group-choice{padding:18px}.group-choice summary{font-size:14px}}
.order-panel .followup-consent[hidden]{display:none!important}
.order-panel .news-consent[hidden]{display:none!important}
.coupon-entry{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.coupon-entry label{flex:1 1 220px}.coupon-entry input{display:block;width:100%;margin-top:8px}.coupon-entry button{flex:0 0 auto}@media(max-width:600px){.coupon-entry button{width:100%}}

/* Gala impressions gallery */
.gala-gallery{min-width:0;width:100%}.gala-gallery-stage{position:relative;width:100%;aspect-ratio:1.85;max-height:490px;min-height:310px;overflow:hidden;background:#1b1f3f;box-shadow:0 24px 55px #1a22412b}.gala-gallery-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s}.gala-gallery-slide.is-active{opacity:1;visibility:visible;z-index:1}.gala-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover}.gala-gallery-controls{display:flex;align-items:center;gap:18px;padding:17px 2px 0;color:#203367}.gala-gallery-count{font-size:12px;letter-spacing:.16em;font-weight:800;white-space:nowrap}.gala-gallery-dots{display:flex;align-items:center;justify-content:center;gap:8px;flex:1}.gala-gallery-dot{width:8px;height:8px;min-width:8px;padding:0;border:0;border-radius:50%;background:#c7c0b5;cursor:pointer;transition:width .25s ease,background .25s ease}.gala-gallery-dot.is-active{width:27px;border-radius:6px;background:#8d191a}.gala-gallery-actions{display:flex;gap:7px}.gala-gallery-arrow,.gala-gallery-pause{display:grid;place-items:center;width:37px;height:37px;border:1px solid #d4c4ab;border-radius:50%;background:#fff;color:#1d3065;font:inherit;font-size:18px;font-weight:700;line-height:1;cursor:pointer;transition:background .2s ease,color .2s ease}.gala-gallery-pause{font-size:13px}.gala-gallery-arrow:hover,.gala-gallery-pause:hover{background:#1d3065;color:#fff}.gala-gallery button:focus-visible{outline:3px solid #a7834d;outline-offset:3px}
@media(max-width:820px){.gala-gallery-stage{min-height:0;aspect-ratio:1.6}}
@media(max-width:530px){.gala-gallery-stage{aspect-ratio:1.18}.gala-gallery-controls{gap:9px}.gala-gallery-arrow,.gala-gallery-pause{width:33px;height:33px}.gala-gallery-dots{gap:6px}}
@media(prefers-reduced-motion:reduce){.gala-gallery-slide,.gala-gallery-dot,.gala-gallery-arrow,.gala-gallery-pause{transition:none}}
