/* Verbindliche Gestaltungsvorgabe: leichter, ohne zusätzliche Claims. */
body{color:#383E42;font-weight:400;line-height:1.65}
body *{letter-spacing:normal}
h1,h2,h3{font-weight:400!important;line-height:1.2}
p,small,.note,.muted,.booking-footnote,.counter-label,.option-name small,.pitch-name small,.visual-steps li,.price-breakdown summary,.power-choice small,.receipt-line>span:last-child{color:var(--ink)}
b,strong,.brand,.footer-brand{font-weight:400}
.section-label,.eyebrow,.booking-label{font-weight:500}
.pitch-name>span,.visual-booking-bar strong,.price-breakdown b{font-weight:600}
.pitch-name small{font-weight:400}
.hero h1,.hero h1 span,.journey-number,.status{color:var(--ink)}
.header{height:auto;min-height:100px;padding:24px 48px;gap:36px}
.brand-original{width:138px;height:47px}
.header nav{display:flex;gap:32px;font-size:18px;font-weight:400}
.header nav a{display:flex;align-items:center;min-height:44px}
.header .button,.hero-book,.closing .button,.visual-booking-bar .button,.button{min-height:46px;height:auto;padding:10px 18px;font-size:16px;font-weight:500;gap:20px;background:transparent;color:var(--ink);border:1px solid var(--ink);min-width:0}
.button:hover{background:var(--sand)}
a.button[href^="/buchen"]{background:var(--ink);color:#fff;border-color:var(--ink)}
a.button[href^="/buchen"]:hover{background:#464d52}
.hero-book{width:auto;margin:0}.hero-book>span{font-size:20px}
.hero{padding-top:32px}.hero .eyebrow{margin-bottom:24px;font-size:12px}
.hero-actions{display:flex;justify-content:flex-end;padding-top:24px}
.hero-image figcaption{font-weight:400}
.section{padding-top:112px;padding-bottom:112px}
.section-head{margin-bottom:52px}
.visual-benefits{padding-top:88px;padding-bottom:88px}
.visual-benefits h2{font-size:20px}
.dark{background:var(--sand);color:var(--ink)}
.dark p,.dark .section-label{color:var(--ink)}
.compact-location h2{font-size:44px}.location-symbol b{font-size:64px;font-weight:400}
.closing{padding:88px 0;background:transparent;border-top:1px solid var(--line)}
.closing h2{font-size:36px;margin:0 0 28px}
.visual-pitch-option:has(input:checked){background:transparent;border-color:var(--olive)}
.visual-steps li.active{color:var(--ink)}
.selection-check{color:var(--ink)}
.power-choice input{accent-color:var(--ink)}
.visual-booking{padding-top:40px;padding-bottom:80px}
.booking-brand-image{background:transparent;margin-bottom:48px}
.booking-heading{margin-bottom:36px}
.booking-heading h1{font-size:34px}
.visual-booking-bar{padding-top:24px;margin-top:24px}
.visual-booking-bar .button{min-height:46px}
.footer-brand{font-size:16px;font-weight:400}
.footer{padding-top:40px;padding-bottom:40px}
.visual-confirmation h1{font-size:40px}
.confirm-icon{background:transparent;border:1px solid var(--olive);color:var(--ink)}
@media(max-width:1000px){.header{gap:24px;padding-left:32px;padding-right:32px}.header nav{gap:20px;font-size:16px}}
@media(max-width:760px){
 .header{padding:20px;min-height:0;flex-wrap:wrap;gap:16px 20px}
 .brand-original{width:112px;height:38px}
 .header>.button{flex:0 0 auto;width:auto;max-width:none;margin-left:auto;font-size:14px;padding:10px 14px;min-height:46px}
 .header nav{display:flex;order:3;width:100%;gap:12px 24px;flex-wrap:wrap;font-size:16px}
 .header:has(.back-home){flex-wrap:wrap}.header .back-home{margin-left:auto;font-size:14px}.header:has(.back-home) nav{width:auto;order:0;display:none}
 .hero{padding-top:28px}.hero .eyebrow{margin-bottom:20px}
 .hero-actions{justify-content:flex-start;padding-top:20px}
 .hero-book{width:auto;min-height:46px;font-size:16px}
 .section{padding-top:76px;padding-bottom:76px}
 .visual-benefits{padding-top:56px;padding-bottom:56px;gap:16px}
 .visual-benefits h2{font-size:14px}
 .section-head{margin-bottom:36px}.section-label{font-size:12px}
 .visual-booking{padding-top:28px;padding-bottom:64px}
 .booking-brand-image{margin-bottom:36px}.booking-heading h1{font-size:28px}
 .visual-booking-bar .button{font-size:16px;padding:10px 16px;min-height:46px}
 .compact-location h2{font-size:34px}.closing{padding:64px 0}.closing h2{font-size:30px}
 .closing .button{min-height:46px;font-size:16px}
 .pitch-name h3{font-size:24px}.option-name{font-weight:400}
}

/* Aktueller Markenstand: B100, Original-Vektoren und Montserrat. */
@font-face{font-family:Montserrat;src:url('/assets/Montserrat.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
.brand-original{width:200px;height:auto;flex-shrink:0}.brand-logo{display:block;width:100%;height:auto}.footer-brand img{display:block;width:230px;max-width:100%;height:auto}.footer{gap:24px;flex-wrap:wrap}
@media(max-width:760px){.brand-original{width:160px}.header{gap:16px 12px}.header>.button{font-size:13px;padding:10px 12px;gap:8px}.footer-brand img{width:200px}}
@media(max-width:360px){.brand-original{width:142px}.header{padding-left:16px;padding-right:16px}.header>.button{font-size:12px;padding:10px;gap:4px}}
