@font-face{font-family:"Archivo";src:url(/fonts/archivo.woff2) format("woff2-variations");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Martian Mono";src:url(/fonts/martian-mono.woff2) format("woff2-variations");font-weight:100 800;font-stretch:75% 112.5%;font-display:swap}
:root{--blue:#2A33E8;--blue-deep:#1B22B8;--paper:#FCFCFA;--ink:#000;--pink:#FF5CA8;--roll:#D9DAE0;--mist:#C9CDFF;--sans:"Archivo",system-ui,sans-serif;--mono:"Martian Mono",ui-monospace,monospace;--ease-out:cubic-bezier(.23,1,.32,1);--ease-expo:cubic-bezier(.16,1,.3,1);--gutter:clamp(20px,4vw,56px);--max:1280px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:clamp(17px,1.05vw + 12px,19px);line-height:1.55;font-stretch:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1.5px}
img,svg{display:block}
:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:2px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;z-index:50;background:var(--ink);color:#fff;padding:10px 14px}
.skip:focus{left:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px var(--gutter);background:var(--blue);color:#fff}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-stretch:118%;font-size:19px;letter-spacing:-.01em}
.brand svg{width:26px;height:26px;color:#fff}
.bar nav{display:flex;align-items:center;gap:clamp(14px,2vw,30px);font-size:15px;font-weight:500}
.bar nav a{text-decoration:none;opacity:.86;transition:opacity .2s var(--ease-out)}
.bar nav a:hover{opacity:1}
.bar .nav-cta{opacity:1;background:#fff;color:var(--blue);padding:9px 16px;border-radius:999px;font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:999px;font:700 16px/1 var(--sans);font-stretch:108%;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .16s var(--ease-out),background-color .2s var(--ease-out),color .2s var(--ease-out)}
.btn:active{transform:scale(.97)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:#fff;color:var(--ink)}
.btn-line{border-color:rgba(255,255,255,.55);color:#fff}
.btn-line:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-pink{background:var(--pink);color:var(--ink)}
.btn-pink:hover{background:#fff}
.btn[disabled]{opacity:.6;pointer-events:none}
.btn-sm{min-height:42px;padding:0 16px;font-size:14.5px;white-space:nowrap}
.ticket .btn-ink:hover{background:var(--blue);color:#fff}
.hero{position:relative;background:var(--blue);color:#fff;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(32px,5vw,80px);padding:clamp(40px,7vw,96px) var(--gutter) 0;max-width:none;overflow:hidden}
.hero-copy{align-self:center;padding-bottom:clamp(48px,7vw,104px);max-width:820px;justify-self:end;width:100%}
.kicker{margin:0 0 22px;font-size:16px;font-weight:600;color:var(--mist)}
.hero h1{margin:0 0 28px;font-weight:850;line-height:.9;letter-spacing:-.02em;font-size:clamp(46px,7.2vw,118px)}
.hero h1 span{display:block}
.hero h1 .w1{font-stretch:125%;font-weight:800;font-size:.62em;letter-spacing:-.01em;line-height:1}
.hero h1 .w2{font-stretch:108%;font-size:.88em;white-space:nowrap;line-height:.95}
.hero h1 .w3{font-stretch:62%;font-weight:900;font-size:1.12em;line-height:.88;color:#fff;margin-top:.08em;white-space:nowrap}
.lead{font-size:clamp(18px,1.2vw + 10px,22px);line-height:1.5;max-width:34em;color:#E7E9FF;margin:0 0 36px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.printer{position:relative;align-self:start;justify-self:start;width:min(380px,100%);padding-top:6px}
.slot{height:22px;border-radius:12px;background:var(--blue-deep);box-shadow:inset 0 6px 10px rgba(0,0,0,.35)}
.slot::after{content:"";display:block;height:4px;margin:9px 14px 0;border-radius:4px;background:#000}
.paper-clip{margin:-10px 18px 0;overflow:hidden;padding-bottom:40px}
.receipt{position:relative;background:var(--paper);color:var(--ink);font-family:var(--mono);font-stretch:88%;font-size:12.5px;line-height:1.55;padding:26px 22px 22px;transform:rotate(-1.2deg);transform-origin:top center;box-shadow:0 30px 60px -20px rgba(0,0,40,.45)}
.receipt::after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:12px;background:linear-gradient(-45deg,transparent 8px,var(--paper) 0) 0 0/16px 12px,linear-gradient(45deg,transparent 8px,var(--paper) 0) 0 0/16px 12px}
.r-head{display:grid;gap:2px;text-align:center}
.r-head strong{font-size:15px;font-weight:800;font-stretch:112%;letter-spacing:.04em}
.r-rule{border-top:1.5px dashed #000;margin:12px 0}
.r-rule.double{border-top:4px double #000}
.r-sec{margin:0 0 4px;font-weight:700}
.r-line,.r-total{display:flex;justify-content:space-between;gap:12px}
.r-line span:last-child,.r-total span:last-child{font-variant-numeric:tabular-nums}
.r-total{font-size:22px;font-weight:800;font-stretch:112%;align-items:baseline}
.r-total b{font-weight:800}
.r-foot{margin:4px 0 14px;text-align:center}
.barcode{height:44px;background:repeating-linear-gradient(90deg,#000 0 2px,transparent 2px 4px,#000 4px 5px,transparent 5px 9px,#000 9px 12px,transparent 12px 13px,#000 13px 14px,transparent 14px 17px)}
section{padding:clamp(72px,10vw,140px) 0}
h2{font-weight:800;font-stretch:112%;font-size:clamp(34px,4.6vw,68px);line-height:.98;letter-spacing:-.02em;margin:0 0 24px;max-width:18em;text-wrap:balance;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.intro{max-width:36em;margin:0 0 56px;font-size:clamp(18px,1vw + 11px,21px);color:#26262B}
.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,96px);align-items:start}
.facts{padding:0;background:#fff;border-bottom:2px solid var(--ink)}
.facts-grid{margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.facts-grid div{padding:26px 22px 28px;border-left:1.5px solid var(--roll)}
.facts-grid div:first-child{border-left:0;padding-left:0}
.facts-grid dt{font-family:var(--mono);font-stretch:90%;font-size:13px;font-weight:700;margin-bottom:6px}
.facts-grid dd{margin:0;font-size:16px;line-height:1.45}
.prinzip h2{max-width:14em}
.rules{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,80px)}
.rules div{padding:28px 0 32px;border-top:2px solid var(--ink)}
.rules dt{font-weight:800;font-stretch:100%;font-size:clamp(22px,1.4vw + 12px,30px);line-height:1.12;letter-spacing:-.01em;margin-bottom:12px}
.rules dd{margin:0;color:#2b2b31;max-width:30em}
.themen{background:var(--ink);color:#fff;padding:clamp(64px,8vw,120px) 0}
.themen-lead{margin:0 0 24px;color:#B9BBC6;font-size:18px}
.topic-flow{margin:0;font-weight:800;font-size:clamp(32px,5vw,78px);line-height:1.04;letter-spacing:-.015em}
.topic-flow span{white-space:nowrap}
.t-w{font-stretch:125%}
.t-n{font-stretch:62%;font-weight:900}
.t-m{font-stretch:100%;font-weight:300;font-style:normal;color:var(--pink)}
.tickets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
.ticket{--tk-bg:#fff;--tk-fg:var(--ink);position:relative;display:grid;grid-template-columns:minmax(0,1fr) 172px;background:var(--tk-bg);color:var(--tk-fg);border-radius:18px;-webkit-mask:radial-gradient(circle 14px at calc(100% - 172px) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 14px at calc(100% - 172px) 100%,#0000 98%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle 14px at calc(100% - 172px) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 14px at calc(100% - 172px) 100%,#0000 98%,#000) bottom/100% 51% no-repeat;box-shadow:inset 0 0 0 2px var(--ink)}
.ticket-blue{--tk-bg:var(--blue);--tk-fg:#fff;box-shadow:none}
.t-main{padding:clamp(26px,3vw,40px)}
.t-kind{margin:0 0 6px;font-family:var(--mono);font-stretch:90%;font-size:13px;font-weight:600}
.ticket h3{margin:0 0 20px;font-weight:900;font-stretch:62%;font-size:clamp(48px,5vw,76px);line-height:.9;letter-spacing:-.01em}
.ticket ul{margin:0;padding:0;list-style:none;display:grid;gap:10px;font-size:17px}
.ticket li{padding-left:22px;position:relative}
.ticket li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;background:currentColor}
.t-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 16px;border-left:2px dashed currentColor}
.sticker{display:grid;place-content:center;text-align:center;width:116px;height:116px;border-radius:50%;background:var(--pink);color:var(--ink);transform:rotate(-12deg);box-shadow:0 2px 0 rgba(0,0,0,.18)}
.sticker b{font-weight:900;font-stretch:80%;font-size:34px;line-height:1}
.sticker small{font-family:var(--mono);font-size:12px;font-weight:600;margin-top:2px}
.t-note{margin:0;text-align:center;font-family:var(--mono);font-stretch:85%;font-size:11.5px;line-height:1.5}
.abend{background:#fff;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.agenda{list-style:none;margin:0;padding:0}
.agenda li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1.5px dashed var(--roll);align-items:baseline}
.agenda li:first-child{padding-top:0}
.agenda time{font-family:var(--mono);font-weight:700;font-size:16px;font-variant-numeric:tabular-nums}
.agenda span{font-size:clamp(18px,.8vw + 12px,21px)}
.dates{width:100%;border-collapse:collapse;font-size:clamp(17px,.6vw + 13px,20px)}
.dates th{text-align:left;font-size:14px;font-weight:600;color:#55555E;padding:0 0 12px;border-bottom:2px solid var(--ink)}
.dates td{padding:20px 0;border-bottom:1.5px solid var(--roll);vertical-align:baseline}
.dates td:first-child{font-family:var(--mono);font-weight:700;font-variant-numeric:tabular-nums;width:9.5em;white-space:nowrap}
.dates td:nth-child(3),.dates th:nth-child(3){text-align:right;white-space:nowrap}
.dates td:last-child{width:1%;padding-left:20px;text-align:right}
.dates tr.first td:nth-child(2){font-weight:800}
.dates tr.dd td{background:linear-gradient(var(--blue),var(--blue)) no-repeat 0 50%/100% calc(100% - 10px);color:#fff}
.dates tr.dd td:first-child{padding-left:14px}
.dates tr.dd td:last-child{padding-right:14px}
.pill{display:inline-block;padding:4px 12px;border-radius:999px;font-size:15px;font-weight:700}
.pill-pink{background:var(--pink)}
.row-cta{font:700 14px/1 var(--sans);font-stretch:108%;padding:10px 14px;border-radius:999px;border:2px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;white-space:nowrap;transition:background-color .15s var(--ease-out),color .15s var(--ease-out),transform .16s var(--ease-out)}
.row-cta:hover{background:var(--ink);color:#fff}
.row-cta:active{transform:scale(.97)}
.dates tr.dd .row-cta{border-color:#fff;color:#fff}
.dates tr.dd .row-cta:hover{background:#fff;color:var(--blue)}
.faq details{border-top:2px solid var(--ink)}
.faq details:last-child{border-bottom:2px solid var(--ink)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:22px 0;font-weight:700;font-size:clamp(18px,.7vw + 13px,21px)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:18px;height:18px;margin-top:4px;background:linear-gradient(currentColor,currentColor) center/100% 2.5px no-repeat,linear-gradient(currentColor,currentColor) center/2.5px 100% no-repeat;transition:transform .25s var(--ease-out)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 24px;max-width:36em;color:#2b2b31}
.kasse{background:var(--blue);color:#fff}
.kasse h2{color:#fff}
.kasse-copy p{color:#E7E9FF;max-width:30em;font-size:clamp(18px,1vw + 11px,21px)}
.steps{margin:36px 0 0;padding:0;list-style:none;counter-reset:s;display:grid;gap:14px}
.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;align-items:center;font-weight:600}
.steps li::before{content:counter(s);display:grid;place-content:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--blue);font-family:var(--mono);font-weight:800;font-size:14px}
.checkout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:var(--paper);color:var(--ink);padding:clamp(24px,3vw,40px);border-radius:6px;position:relative}
.checkout::before{content:"";position:absolute;left:0;right:0;top:-11px;height:12px;background:linear-gradient(135deg,transparent 8px,var(--paper) 0) 0 0/16px 12px,linear-gradient(-135deg,transparent 8px,var(--paper) 0) 0 0/16px 12px}
.f{display:flex;flex-direction:column;gap:7px;min-width:0;border:0;margin:0;padding:0}
.full{grid-column:1/-1}
.checkout label,.checkout legend{font-size:15px;font-weight:700;padding:0}
.checkout em{font-style:normal;font-weight:500;color:#6A6A74;font-size:13px;margin-left:4px}
input,select,textarea{font:inherit;font-size:16px;width:100%;padding:13px 14px;border:2px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);transition:box-shadow .15s var(--ease-out)}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 4px var(--pink)}
textarea{min-height:104px;resize:vertical}
.checks{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.checks label{position:relative;cursor:pointer;font-weight:600}
.checks input{position:absolute;opacity:0;width:1px;height:1px}
.checks span{display:inline-block;padding:10px 16px;border:2px solid var(--ink);border-radius:999px;font-size:15px;transition:background-color .15s var(--ease-out),color .15s var(--ease-out),transform .16s var(--ease-out)}
.checks label:active span{transform:scale(.97)}
.checks input:checked+span{background:var(--ink);color:#fff}
.checks input:focus-visible+span{box-shadow:0 0 0 4px var(--pink)}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px!important;font-weight:400!important;line-height:1.5;color:#33333A}
.consent input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--ink)}
.hp{position:absolute;left:-9999px}
.submit{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.msg{margin:0;font-size:15px;font-weight:600}
.msg.ok{color:#0B6B3A}.msg.err{color:#B00045}
.foot{background:var(--ink);color:#B9BBC6;font-size:15px;padding:40px 0}
.foot-in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px}
.foot p{margin:0}
.foot a{color:#fff;margin-right:18px}
.foot p:last-child a:last-child{margin-right:0}
.book{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 40px 80px -20px rgba(0,0,40,.5);overflow:auto;overscroll-behavior:contain}
.book::backdrop{background:rgba(16,18,90,.55)}
.book[open]{animation:book-in .24s var(--ease-out)}
.book[open]::backdrop{animation:fade .24s var(--ease-out)}
@keyframes book-in{from{opacity:0;transform:translateY(12px) scale(.97)}}
@keyframes fade{from{opacity:0}}
@keyframes sheet-in{from{transform:translateY(40px);opacity:0}}
.book-in{position:relative;display:grid;gap:18px;padding:clamp(24px,4vw,40px)}
.book h2{font-size:clamp(32px,4vw,48px);margin:0;max-width:none;padding-right:44px}
.book .t-kind{margin:0}
.book-sub{margin:-6px 0 0;color:#33333A}
.book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.book label,.book legend{font-size:15px;font-weight:700;padding:0}
.book em{font-style:normal;font-weight:500;color:#6A6A74;font-size:13px;margin-left:4px}
.book-note{margin:0;font-size:14px;color:#55555E}
.book-x{position:absolute;top:16px;right:16px;width:44px;height:44px;display:grid;place-content:center;border:2px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;transition:transform .16s var(--ease-out)}
.book-x svg{width:16px;height:16px}
.book-x:active{transform:scale(.94)}
@media (prefers-reduced-motion:no-preference){.js .receipt{transform:translateY(-104%) rotate(0deg)}.js .hero-copy>*{opacity:0}}
@media (prefers-reduced-motion:reduce){.book[open],.book[open]::backdrop{animation:none}}
@media (max-width:980px){.hero{grid-template-columns:1fr;padding-top:48px}.hero-copy{justify-self:start;padding-bottom:12px}.printer{justify-self:center;width:min(360px,100%)}.split,.rules,.tickets{grid-template-columns:1fr}.bar nav a:not(.nav-cta){display:none}.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facts-grid div,.facts-grid div:first-child{padding:18px 0;border-left:0;border-top:1.5px solid var(--roll)}.facts-grid div:nth-child(-n+2){border-top:0}.facts-grid div:nth-child(even){padding-left:20px}}
@media (max-width:560px){.ticket{grid-template-columns:1fr;-webkit-mask:none;mask:none}.t-stub{border-left:0;border-top:2px dashed currentColor;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;gap:12px 18px}.sticker{width:96px;height:96px;flex:none}.sticker b{font-size:28px}.t-note{text-align:left}.t-stub .btn-sm{flex-basis:100%}.checkout{grid-template-columns:1fr}.dates,.dates tbody{display:block}.dates thead{display:none}.dates tr{display:grid;grid-template-columns:1fr auto auto;column-gap:12px;align-items:center;padding:14px 0;border-bottom:1.5px solid var(--roll)}.dates td{border:0;padding:2px 0}.dates td:first-child{width:auto}.dates td:last-child{width:auto;padding-left:0}.dates td:nth-child(2){grid-column:1/-1;order:3}.dates tr.dd{background:var(--blue);color:#fff;padding:14px}.dates tr.dd td,.dates tr.dd td:first-child,.dates tr.dd td:last-child{background:none;padding-left:0;padding-right:0}.row-cta{padding:9px 12px}.agenda li{grid-template-columns:72px 1fr}.book{width:100vw;max-width:100vw;max-height:92dvh;margin:auto 0 0;border-radius:16px 16px 0 0}.book[open]{animation-name:sheet-in}.book-grid{grid-template-columns:1fr}.facts-grid{grid-template-columns:1fr}.facts-grid div:nth-child(2){border-top:1.5px solid var(--roll)}.facts-grid div:nth-child(even){padding-left:0}}
@media (max-width:400px){.topic-flow span{white-space:normal}}
