.map-page{background:#fff}
.map-consent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:600px;max-width:100%;margin-top:24px}
.map-consent-actions .button{margin:0;min-height:52px;line-height:1.3;white-space:normal}
.map-consent .map-consent-actions #load-map{margin-top:0}
.map-frame:has(iframe[hidden]){height:auto;min-height:480px}
.map-frame:has(iframe[hidden]) .map-consent{min-height:480px;height:auto}
@media(max-width:600px){.map-consent-actions{grid-template-columns:1fr;width:100%}.map-frame:has(iframe[hidden]),.map-frame:has(iframe[hidden]) .map-consent{min-height:440px}}
.map-page nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.map-page-intro{padding:44px 0 29px;display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:60px}
.map-page-intro .eyebrow{margin-bottom:13px}
.map-page-intro h1{font-size:clamp(34px,3.5vw,49px);line-height:1.06;font-weight:750;letter-spacing:-.045em}
.map-page-intro>p{font-size:15px;line-height:1.75;max-width:490px;justify-self:end;padding-bottom:2px}
.map-page-figure{margin:0}
.map-frame{width:100%;height:clamp(480px,calc(100svh - 280px),760px);border:1px solid var(--line);background:var(--paper)}
.map-frame iframe{display:block;border:0;width:100%;height:100%}
.map-frame iframe[hidden]{display:none}
.map-page-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0 0}
.map-page-caption p{font-size:12px;line-height:1.6}
.map-page-caption a{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:35px;font-size:12px}
.map-page-caption a svg{width:14px;height:14px}
.map-page-contact{margin:43px auto 65px;padding:29px 34px;background:#f2f0f7;display:flex;justify-content:space-between;align-items:center;gap:30px;border-left:3px solid var(--yellow)}
.map-page-contact h2{font-size:27px;line-height:1.2;letter-spacing:-.035em;margin-bottom:9px}
.map-page-contact p{max-width:660px;font-size:14px;line-height:1.7}
.map-page-contact .button{flex:none;min-width:215px}
.map-page .site-footer{padding-top:53px}
@media(max-width:820px){.map-page-intro{padding:31px 0 24px;display:block}.map-page-intro h1{font-size:40px}.map-page-intro>p{max-width:610px;margin-top:16px;font-size:15px}.map-frame{height:clamp(440px,62svh,620px)}.map-page-contact{padding:26px;margin-top:29px;margin-bottom:48px}.map-page-contact h2{font-size:25px}.map-page-contact .button{min-width:0}.map-page-caption{align-items:flex-start}.map-page-caption p{max-width:350px}.map-page .site-footer{padding-bottom:28px}}
@media(max-width:600px){.map-page-intro{padding-top:27px}.map-page-intro .eyebrow{font-size:10px;letter-spacing:.07em;margin-bottom:13px}.map-page-intro h1{font-size:clamp(32px,8.9vw,40px);max-width:420px}.map-page-intro>p{font-size:14px;line-height:1.7;margin-top:14px}.map-frame{height:clamp(440px,65svh,610px)}.map-page-caption{display:block;padding-top:12px}.map-page-caption p{font-size:11px;max-width:none}.map-page-caption a{margin-top:4px;font-size:12px;min-height:40px}.map-page-contact{display:block;padding:25px 23px;margin-top:24px;margin-bottom:40px}.map-page-contact h2{font-size:27px}.map-page-contact p{font-size:14px}.map-page-contact .button{width:100%;margin-top:20px;font-size:13px}.map-page .footer-main{gap:24px}}

.map-consent{min-height:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#f3f2fa;padding:42px 24px}.map-consent>p{max-width:590px}.map-consent h2{margin:18px 0;font-size:clamp(26px,4vw,40px)}.map-consent-icon{font-size:52px;color:#36348e;margin-bottom:20px}.map-consent-help{font-size:13px;margin-top:18px!important;color:#66657b}.map-consent .button{border:0;font:inherit;cursor:pointer}.map-page-caption button{border:0;background:transparent;padding:0;cursor:pointer;font:inherit}.map-consent[hidden]{display:none}
.map-frame:has(.map-consent:not([hidden])){height:auto}.map-consent{min-height:480px}
.map-consent .map-consent-privacy{font-size:13px;margin:12px 0 0}
.map-consent #load-map{margin-top:18px}
@media(max-width:600px){.map-consent{padding:26px 20px}.map-consent>p{font-size:14px}.map-consent-icon{margin-bottom:4px}.map-consent .button{width:100%;font-size:14px}}
