.s-contact .contact-top{justify-content:flex-start}
.s-contact .booking-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;margin-top:28px;gap:48px}
.s-contact h2{font-size:clamp(56px,6.8vw,96px);margin:0 0 32px;max-width:620px}
.s-contact .contact-phone{font-size:clamp(29px,3.5vw,47px)}
.contact-location{min-width:0;padding-top:10px}
.contact-map-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}
.booking-grid .contact-map-heading address{font-size:clamp(23px,2.3vw,31px);margin:0;letter-spacing:-.025em}
.contact-map-arrow{display:flex;align-items:flex-start;gap:7px;flex-shrink:0;padding:0 0 4px;min-height:90px}
.contact-map-arrow span{font-size:12px;line-height:1.4;max-width:68px;padding-top:4px}
.contact-map-arrow svg{width:76px;height:90px;display:block;transition:transform .2s}
.contact-map-arrow:hover svg{transform:translateY(5px)}
.contact-map{height:410px;background:var(--ice);border:1px solid var(--line);border-radius:18px;overflow:hidden;scroll-margin-top:28px}
.contact-map iframe{display:block;width:100%;height:100%;border:0}
.contact-map-open{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:50px;padding:16px 0 8px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
.contact-map-open span{font-size:24px;line-height:1}
.contact-map:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.booking-grid .contact-hours{margin-top:28px}
@media(max-width:1000px){.s-contact .booking-grid{gap:30px}.contact-map-heading{flex-wrap:wrap;gap:10px}.contact-map-arrow{margin-left:auto}.contact-map{height:380px}}
@media(max-width:760px){
  .s-contact .booking-grid{grid-template-columns:1fr;gap:38px;margin-top:28px}
  .s-contact h2{font-size:clamp(53px,13vw,80px);margin-bottom:26px}
  .s-contact .contact-phone{font-size:clamp(28px,8.3vw,43px)}
  .contact-location{padding-top:0}
  .contact-map-heading{flex-wrap:nowrap;align-items:start;margin-bottom:12px}
  .contact-map-arrow{min-height:76px;gap:0}
  .contact-map-arrow svg{width:62px;height:76px}
  .contact-map-arrow span{max-width:60px;font-size:11px}
  .contact-map{height:340px;border-radius:14px}
  .booking-grid .contact-map-heading address{font-size:24px}
}
@media(max-width:360px){.contact-map-arrow span{display:none}.contact-map{height:300px}.booking-grid .contact-map-heading address{font-size:23px}}
