:root{--blue:#176AA6;--ice:#E6F2FA;--navy:#143C5B;--ink:#143C5B;--muted:#617B90;--off:#F6FAFD}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1160px,calc(100% - 56px));margin:auto}.site-header{width:min(1160px,calc(100% - 56px));margin:auto;display:flex;align-items:center;justify-content:space-between;height:90px}.logo{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.8px;position:relative}.logo span{color:var(--blue)}.logo i{position:absolute;bottom:-8px;left:0;width:42px;height:3px;background:var(--blue);border-radius:8px}.site-header nav{display:flex;gap:34px;font-size:14px;font-weight:600}.site-header nav a{transition:color .25s}.site-header nav a:hover{color:var(--blue)}.menu-button{display:none}.hero{padding:96px 0 140px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;color:var(--blue);margin:0 0 30px}.hero h1,.closing h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(48px,6.3vw,88px);line-height:1.13;letter-spacing:-.065em;font-weight:800;margin:0;max-width:1060px}.hero h1 span,.section-heading h2 span,.closing h2 span{color:var(--blue)}.hero-video{margin-top:62px;background:var(--ice);padding:14px;border-radius:28px}.video-placeholder{height:auto;aspect-ratio:16/8.3;background:linear-gradient(140deg,#dceefa,#bcdcf1);border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.play{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:#fff;color:var(--blue);font-size:28px;padding-left:5px;box-shadow:0 12px 36px #143c5b15}.video-placeholder p{margin:10px 0 0;font-size:16px;font-weight:700}.video-placeholder small{color:var(--muted)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:20px 26px;border-radius:100px;font-weight:700;font-size:16px;transition:transform .3s ease,background .3s ease,box-shadow .3s ease}.button span{font-size:22px}.button.primary{background:var(--blue);color:white}.button:hover{transform:translateY(-3px);background:#115887;box-shadow:0 12px 28px #176aa627}.hero-button{margin-top:20px;min-width:390px}.visits{background:var(--off);padding:130px 0 140px}.section-heading{margin-bottom:58px}.accent-line{width:52px;height:4px;background:var(--blue);border-radius:8px;margin-bottom:28px}.section-heading h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(40px,5.1vw,68px);line-height:1.13;letter-spacing:-.055em;margin:0 0 18px;font-weight:800}.section-heading p{font-size:19px;color:var(--muted);margin:0}.visit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.visit-card{min-height:365px;background:#fff;border-radius:22px;padding:26px;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease,background .35s ease}.visit-card.featured{background:var(--ice)}.visit-card:hover{transform:translateY(-8px);box-shadow:0 20px 45px #143c5b12}.card-top{display:flex;justify-content:space-between;align-items:center;color:#799bb3;font-size:11px;font-weight:800;letter-spacing:.08em}.card-icon{color:var(--blue);font-size:22px}.card-art{font-size:55px;color:var(--blue);font-weight:400;line-height:1;margin:40px 0 22px}.card-copy{flex:1}.card-copy h3{font-family:Arial,Helvetica,sans-serif;font-size:25px;letter-spacing:-.045em;margin:0 0 9px}.card-copy p{font-size:15px;line-height:1.5;color:var(--muted);margin:0}.card-link{font-size:13px;color:var(--blue);font-weight:800;display:flex;justify-content:space-between;margin-top:25px}.notice{color:#71889a;font-size:12px;margin:25px 0 0}.steps{padding:150px 0}.step-list{max-width:930px}.step{display:flex;gap:36px;align-items:center;border-top:1px solid #dce7ef;padding:32px 0}.step:last-child{border-bottom:1px solid #dce7ef}.step-number{font-family:Arial,Helvetica,sans-serif;color:var(--blue);font-size:23px;font-weight:800;min-width:65px}.step-content{flex:1}.step h3{font-family:Arial,Helvetica,sans-serif;font-size:29px;letter-spacing:-.04em;margin:0 0 5px}.step p{margin:0;color:var(--muted);font-size:17px}.step-symbol{font-size:30px;color:var(--blue)}.closing{background:var(--ice);padding:135px 0 145px}.closing h2{font-size:clamp(45px,5.9vw,80px)}.closing-copy{font-size:19px;line-height:1.6;max-width:570px;color:#536f85;margin:32px 0}.contact-note{font-size:12px;color:#617b90;margin-top:15px}.footer{background:var(--navy);color:#fff;padding:62px 0 34px}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:42px}.footer strong{font-family:Arial,Helvetica,sans-serif;font-size:22px;letter-spacing:-.04em}.footer p{color:#c8dfef;font-size:14px}.footer-links{display:flex;gap:22px;align-items:start;font-size:13px}.footer-links a:hover{text-decoration:underline}.footer small{color:#afc7d9;font-size:12px;grid-column:1/-1;border-top:1px solid #42637e;padding-top:25px}.reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .8s cubic-bezier(.2,.65,.2,1),transform .8s cubic-bezier(.2,.65,.2,1);will-change:opacity,transform}.reveal.in-view{opacity:1;transform:translate3d(0,0,0)}.visit-card:nth-child(2){transition-delay:90ms}.visit-card:nth-child(3){transition-delay:170ms}.visit-card:nth-child(4){transition-delay:250ms}@media(max-width:950px){.visit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-card{min-height:320px}.hero{padding-top:75px}.footer-inner{grid-template-columns:1fr}.footer small{grid-column:1}}@media(max-width:600px){.wrap,.site-header{width:calc(100% - 40px)}.site-header{height:75px}.logo{font-size:16px}.site-header nav{display:none;position:absolute;top:68px;right:20px;left:20px;background:#fff;z-index:5;padding:25px;border-radius:15px;box-shadow:0 12px 35px #143c5b22;flex-direction:column;gap:18px}.site-header nav.open{display:flex}.menu-button{display:block;border:0;background:var(--ice);border-radius:12px;width:42px;height:42px;color:var(--navy);font-size:23px}.hero{padding:72px 0 96px}.eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:22px}.hero h1{font-size:clamp(35px,9.1vw,44px);line-height:1.17;letter-spacing:-.055em}.desktop-only{display:none}.hero-video{margin-top:36px;padding:8px;border-radius:19px}.video-placeholder{border-radius:13px;aspect-ratio:16/10}.play{width:62px;height:62px;font-size:22px}.video-placeholder p{font-size:13px}.video-placeholder small{font-size:11px}.button{width:100%;min-width:0;font-size:13px;padding:17px 18px;gap:10px}.hero-button{margin-top:15px}.visits{padding:95px 0}.section-heading{margin-bottom:35px}.section-heading h2{font-size:38px}.section-heading p{font-size:16px}.visit-grid{gap:12px}.visit-card{min-height:265px;padding:17px;border-radius:17px}.card-top{font-size:9px}.card-art{font-size:38px;margin:24px 0 16px}.card-copy h3{font-size:20px}.card-copy p{font-size:13px}.card-link{font-size:11px;margin-top:20px}.steps{padding:105px 0}.step{gap:15px;padding:26px 0}.step-number{font-size:18px;min-width:35px}.step h3{font-size:22px}.step p{font-size:14px}.step-symbol{font-size:20px}.closing{padding:95px 0 105px}.closing h2{font-size:clamp(35px,9vw,45px)}.closing-copy{font-size:16px;margin:25px 0}.footer{padding:45px 0 28px}.footer-links{flex-wrap:wrap;gap:18px}.footer strong{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important;transition:none!important}.visit-card,.button{transition:none!important}}

.card-art svg{display:block;width:100px;max-width:100%;height:90px;overflow:visible}.card-art{height:90px;display:flex;align-items:center;margin:26px 0 18px}@media(max-width:600px){.card-art{height:72px;margin:16px 0 12px}.card-art svg{width:80px;height:72px}}

/* Terminbuchung: sichtbarer, bis zur finalen Link-Einbindung deaktivierter CTA */
.booking-cta{margin:20px 0 16px}.booking-btn:disabled{opacity:.62;cursor:not-allowed;filter:saturate(.65)}.booking-note{font-size:13px;color:#58768b;margin:8px 0 0}

/* Compact homepage hero — approved mobile proportions. Scoped to homepage only. */
@media(max-width:600px){
.site-header{height:72px}
.logo{font-size:16px;letter-spacing:-.7px}
.logo i{bottom:-7px;width:37px}
.menu-button{width:39px;height:39px;font-size:21px}
.hero{padding-top:32px;padding-bottom:64px}
.hero .eyebrow{font-size:10px;letter-spacing:.105em;line-height:1.5;margin-bottom:18px}
.hero h1{font-size:clamp(28px,7.4vw,35px);line-height:1.15;letter-spacing:-.052em}
.hero-video{margin-top:29px;padding:5px;border-radius:15px}
.hero .video-placeholder{aspect-ratio:16/9;border-radius:11px;gap:5px}
.hero .play{width:56px;height:56px;font-size:21px}
.hero .video-placeholder p{font-size:12px;margin-top:5px}
.hero .video-placeholder small{font-size:10px}
.hero .hero-button{margin-top:17px;min-width:0;width:100%;padding:15px 19px;font-size:13px;gap:12px}
.hero .hero-button span{font-size:18px}
.visits{padding-top:75px}
}
@media(min-width:601px) and (max-width:950px){.hero{padding-top:60px;padding-bottom:90px}.hero h1{font-size:clamp(43px,5.9vw,65px)}.hero-video{margin-top:40px}}

/* Homepage v5: compact visit choices and clear three-step explanation */
@media(min-width:951px){.visits{padding:96px 0 104px}.visit-card{min-height:318px;padding:22px}.card-art{height:76px;margin:19px 0 12px}.card-art svg{height:76px;width:88px}.card-copy h3{font-size:23px}.card-link{margin-top:18px}.steps{padding:105px 0}.step{padding:26px 0}}
@media(max-width:600px){.visits{padding:72px 0 78px}.visits .section-heading{margin-bottom:27px}.visits .section-heading h2{font-size:34px}.visit-grid{gap:10px}.visit-card{min-height:249px;padding:14px}.card-art{height:58px;margin:12px 0 10px}.card-art svg{height:58px;width:66px}.card-copy h3{font-size:18px}.card-copy p{font-size:12px;line-height:1.42}.card-link{font-size:11px;margin-top:14px}.steps{padding:76px 0}.step{padding:21px 0}.step h3{font-size:20px}.step p{line-height:1.5}.step-symbol{font-size:17px}}
.visit-card:focus-visible{outline:3px solid #176aa6;outline-offset:4px}
