/* Shared overrides load synchronously after the legacy inline styles. */
@media (max-width:768px){
 .header__inner{gap:8px;min-width:0}
 .header__logo{flex:1 1 auto;min-width:0;max-width:calc(100% - 52px);white-space:normal;font-size:clamp(1rem,4.5vw,1.5rem);line-height:1.15;gap:8px}
 .header__logo img,.header__logo svg{height:auto;width:clamp(48px,18vw,80px);max-height:80px;object-fit:contain}
 .hamburger{flex:0 0 44px;margin-left:auto;min-height:44px;position:relative}
 .nav{inset:0 auto auto 0;width:100vw;max-width:100%;height:100vh;height:100dvh;box-sizing:border-box;transform:none;transition:none;visibility:hidden;pointer-events:none;overscroll-behavior:contain}
 .nav.open{left:0;right:auto;visibility:visible;pointer-events:auto}
 .nav__list>li{width:100%;min-width:0}
 .nav__link,.nav__dropdown-link{white-space:normal;overflow-wrap:anywhere}
 .nav__dropdown-content{min-width:0;width:100%;max-height:none}
 .nav__dropdown:not(.open):hover .nav__dropdown-content{display:none}
 .header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
 /* Keep the backdrop below the header's stacking context so the close button receives taps. */
 .nav-overlay{z-index:999}
}
.privacy-map,.map-container:has(.privacy-map){height:auto;min-height:300px}
.privacy-map{background:linear-gradient(135deg,#e5edf0,#f4f7f8);border:1px solid #cbd5df;border-radius:16px;overflow:hidden}
.privacy-map__placeholder{min-height:300px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;padding:28px}
.privacy-map__placeholder p{max-width:650px;margin:0}
.privacy-map iframe{display:block;width:100%;height:300px;border:0}
.privacy-map__revoke{display:block;margin:12px auto;padding:8px 16px;cursor:pointer}
.district-content{max-width:900px;margin:auto;overflow-wrap:anywhere}
.district-content p{line-height:1.8;margin:1rem 0}
.district-content h2{margin-top:2rem}
.district-editorial{padding:3rem 0 4rem}
.district-editorial .district-content{max-width:980px}
.content-intro{padding:0 0 2rem;border-bottom:1px solid #d8dfe7}
.content-intro h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.2;margin:.6rem 0 1.2rem}
.content-intro>p:not(.section__overline){max-width:76ch}
.content-disclosure{font-size:.9rem;color:#475569;border-left:3px solid #c98b23;padding-left:1rem}
.content-topic{padding:1rem 0;scroll-margin-top:140px}
.content-topic h2,.content-navigation h2{font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.3}
.content-topic>p,.content-topic>ul,.content-topic>ol{max-width:78ch}
.content-topic ul,.content-topic ol{padding-left:1.5rem;line-height:1.8}
.content-topic li{padding-left:.35rem;margin:.7rem 0}
.content-service-grid,.content-related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.content-service-card,.content-related>div{padding:1.25rem;border:1px solid #d8dfe7;border-radius:12px;background:#f5f7fa;min-width:0}
.content-service-card h3,.content-related h3{font-size:1.08rem;line-height:1.4;margin:0}
.district-content .content-service-card p,.district-content .content-related p{font-size:.95rem;line-height:1.65;margin:.65rem 0 0}
.district-editorial a:not(.btn){text-decoration:underline;text-underline-offset:3px;color:var(--c-primary,#163450)}
.district-editorial a:focus-visible,.content-faq summary:focus-visible{outline:3px solid #b66a00;outline-offset:4px}
.content-source{font-size:.85rem;color:#475569}
.content-faq{border:1px solid #d8dfe7;border-radius:10px;margin:.75rem 0;padding:1rem 1.25rem}
.content-faq summary{font-weight:700;cursor:pointer;line-height:1.5}
.content-faq[open] summary{margin-bottom:.5rem}
.content-navigation{padding:1.5rem 0;border-top:1px solid #d8dfe7;margin-top:1.5rem}
.content-links{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;line-height:1.6}
@media(max-width:600px){.content-service-grid,.content-related{grid-template-columns:1fr}.district-editorial{padding-top:2rem}.content-faq{padding:1rem}.content-topic{scroll-margin-top:120px}}
#berlin-districts{scroll-margin-top:140px}
#berlin-districts .radius-card__name{overflow-wrap:anywhere}
#resetGoogleMaps{padding:8px 12px;margin:8px 0;cursor:pointer}
#resetGoogleMaps:disabled{cursor:default;opacity:.6}
.footer-company{min-width:0}
.footer-business-map{width:100%;max-width:380px;box-sizing:border-box;margin-top:1.25rem;background:#fff;color:var(--c-primary);border:1px solid #d8dfe7;border-radius:12px;overflow:hidden;text-align:left}
.footer-business-map__profile{display:flex;gap:12px;align-items:center;padding:16px 16px 8px}
.footer-business-map__profile>div{min-width:0}
.footer-business-map__profile img{width:44px;height:56px;object-fit:contain;flex:none}
.footer-business-map__profile h3{font-size:15px;line-height:1.35;color:var(--c-primary);margin:0 0 3px;overflow-wrap:anywhere}
.footer-business-map__brand{font-size:12px;line-height:1.4;color:#526174;margin:0}
.footer-business-map__rating{font-size:12px;font-weight:700;line-height:1.5;margin:5px 0 0}
.footer-business-map__rating span{color:#966b00}
.footer-business-map__summary{font-size:13px;line-height:1.6;margin:0;padding:0 16px 12px}
.footer-business-map .privacy-map--footer{height:auto;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.footer-business-map .privacy-map__placeholder{height:180px;min-height:180px;padding:16px;gap:12px;background:#edf1f5;font-size:13px;line-height:1.5}
.footer-business-map .privacy-map__placeholder .btn{padding:10px 16px;font-size:13px;min-height:40px}
.footer-business-map .privacy-map--footer iframe{height:180px}
.footer-business-map .privacy-map__revoke{display:block;width:auto;max-width:calc(100% - 32px);margin:6px 16px 0;padding:4px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--c-primary);font:inherit;font-size:12px;line-height:1.5;text-decoration:underline;cursor:pointer}
.footer-business-map__details{padding:10px 16px 14px;font-size:11px;line-height:1.5;color:#526174}
.footer-business-map__details p{margin:0 0 6px}
.footer-business-map__details a{color:var(--c-primary);text-decoration:underline}
.footer-business-map__external{display:inline-block;font-size:12px;font-weight:600}
@media(max-width:768px){.footer-business-map{max-width:100%}}
