.contact-hero{position:relative;overflow:hidden;padding:clamp(72px,9vw,126px) clamp(24px,10vw,160px);background:linear-gradient(115deg,#102e50,#1d4f7f);color:#fff}.contact-hero:after{position:absolute;right:-5vw;top:-18vw;width:48vw;height:48vw;border:1px solid rgba(255,255,255,.12);border-radius:50%;content:"";box-shadow:0 0 0 5vw rgba(255,255,255,.025),0 0 0 10vw rgba(255,255,255,.02)}.contact-hero>*{position:relative;z-index:1}.contact-hero h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(3.6rem,7vw,6.4rem);line-height:.98;letter-spacing:-.04em}.contact-hero h1 em{color:#bcd5eb;font-weight:400}.contact-hero>p:last-child{max-width:510px;margin:24px 0 0;color:#dce6ef;font-size:1.05rem}.contact-layout{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:clamp(44px,8vw,120px);align-items:stretch;background:var(--pale)}.contact-section-title{margin-bottom:36px}.contact-section-title .eyebrow{margin-bottom:12px}.contact-section-title h2{margin:0;color:var(--navy);font-family:var(--serif);font-size:clamp(2.6rem,4vw,4.1rem);font-weight:400;line-height:1.02;letter-spacing:-.035em}.contact-detail-list{display:grid;gap:26px}.contact-detail{display:grid;grid-template-columns:40px 1fr;gap:15px;align-items:start}.contact-symbol{display:grid;place-items:center;width:36px;height:36px;border:1px solid #b8cad9;border-radius:50%;color:var(--blue);font-size:1.15rem}.contact-detail h3{margin:0 0 5px;color:var(--navy);font-size:.94rem}.contact-detail address,.contact-detail p,.contact-detail a:not(.text-link){margin:0;color:var(--muted);font-style:normal;font-size:.92rem;line-height:1.7}.contact-detail a:not(.text-link):hover{color:var(--blue);text-decoration:underline}.contact-detail .text-link{margin-top:8px;font-size:.8rem}.contact-note{margin:31px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-family:var(--serif);font-size:1.12rem;font-style:italic}.contact-map-card{min-width:0;min-height:0;padding:clamp(20px,2vw,28px);display:flex;flex-direction:column;align-items:flex-start;background:#fff;box-shadow:0 15px 42px rgba(21,46,70,.08)}.map-heading{margin-bottom:16px}.map-heading .eyebrow{margin-bottom:8px}.map-heading h2{margin:0;color:var(--navy);font-family:var(--serif);font-size:clamp(2rem,3vw,2.75rem);font-weight:400;line-height:1.08;letter-spacing:-.03em}.map-image-link{position:relative;display:block;overflow:hidden;width:min(100%,440px);margin:0;background:#e3e9ee;outline-offset:4px}.map-image-link img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .35s ease}.map-image-link:hover img,.map-image-link:focus-visible img{transform:scale(1.025)}.map-open-label{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:16px;padding:12px 15px;background:#fff;color:var(--navy);font-size:.82rem;font-weight:700;box-shadow:0 4px 16px rgba(15,36,55,.15)}.map-open-label span{color:var(--blue);font-size:1.05rem}.map-external-note{margin:11px 0 0;color:var(--muted);font-size:.76rem;line-height:1.5}
@media(max-width:760px){.contact-hero{padding:78px 24px}.contact-layout{grid-template-columns:1fr;gap:44px;padding:62px 22px}.contact-section-title{margin-bottom:25px}.contact-section-title h2{font-size:3.1rem}.contact-detail-list{gap:21px}.contact-map-card{padding:24px 20px}.map-heading h2{font-size:2.6rem}.map-image-link{width:min(100%,420px)}}
@media(max-width:480px){.contact-hero h1{font-size:3.8rem}.map-open-label{right:9px;bottom:9px;padding:10px 12px;font-size:.74rem}}

/* Einheitliche, kompaktere Überschriften für beide Kontaktspalten */
.contact-section-title h2,.map-heading h2{font-size:clamp(2rem,2.6vw,2.4rem)}
@media(max-width:760px){.contact-section-title h2,.map-heading h2{font-size:2.35rem}}
