.contact-page{--contact-secondary:#aaa}
.contact-container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:40px}
.contact-main{padding-top:126px}
.contact-crumbs{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--contact-secondary)}
.contact-crumbs a{display:inline-flex;align-items:center;min-height:44px}
.contact-crumbs a:hover{color:var(--ink)}
.contact-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-top:24px;padding-bottom:42px;border-bottom:1px solid var(--line)}
.contact-heading h1{font-size:clamp(56px,8vw,112px);line-height:1;letter-spacing:-.065em;font-weight:600}
.contact-heading h1>span{color:var(--red)}
.contact-heading>p{padding-bottom:6px;color:var(--contact-secondary);font-size:17px;line-height:1.5}
.contact-hero-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:64px;margin-top:48px;align-items:stretch}
.contact-conversation{padding-top:6px;min-width:0}
.contact-conversation h2{font-size:clamp(32px,3.1vw,44px);line-height:1.14;letter-spacing:-.04em}
.contact-phone-block{margin-top:34px}
.contact-phone-block p{font-size:15px;color:var(--contact-secondary);line-height:1.5}
.contact-phone{display:inline-flex;align-items:center;min-height:52px;margin-block:6px;font:500 clamp(25px,2.7vw,37px)/1.3 Montserrat,sans-serif;letter-spacing:-.04em;white-space:nowrap}
.contact-phone:hover,.contact-details a:hover{color:#ff9ca3}
.contact-phone-block p:last-child{font-size:14px}
.contact-details{margin:28px 0 0}
.contact-details>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;border-top:1px solid var(--line);padding-block:19px}
.contact-details dt{font-size:15px;color:var(--contact-secondary)}
.contact-details dd{margin:0;font-size:17px}
.contact-details dd>span{display:block;margin-top:4px;font-size:14px;color:var(--contact-secondary)}
.contact-details a{display:inline-flex;align-items:center;min-height:28px;overflow-wrap:anywhere}
.contact-primary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:20px}
.contact-primary-actions .button,.contact-map-links .button{min-height:50px;font-size:12px}
.contact-save{display:inline-flex;gap:12px;align-items:center;min-height:48px;font-size:14px;color:var(--contact-secondary)}
.contact-save:hover{color:var(--ink)}
.contact-parking{scroll-margin-top:100px;position:relative;isolation:isolate;display:flex;flex-direction:column;width:100%;min-width:0;height:auto;min-height:620px;margin:0;overflow:hidden;border:1px solid #ffffff20;border-radius:3px;background:#101115}
.contact-parking-heading{position:relative;z-index:1;padding:28px 30px 0}
.contact-parking-heading>span{display:block;color:#bbb;font-size:15px}
.contact-parking-heading>strong{display:block;margin-top:5px;font:500 38px/1.2 Montserrat,sans-serif;letter-spacing:-.045em}
.contact-parking-heading>strong>span{color:#f05b65}

.contact-parking figcaption{position:relative;z-index:1;padding:0 30px 24px}
.contact-parking figcaption>a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-size:18px}
.contact-parking figcaption>a svg{width:21px;height:21px;flex-shrink:0;color:#ef7a83}
.contact-parking figcaption>span{display:block;margin-top:4px;font-size:12px;color:#aaa}
.contact-location{margin-top:112px;scroll-margin-top:108px}
.contact-location-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.contact-location h2,.contact-final h2{font-size:clamp(32px,3.5vw,48px);line-height:1.12;letter-spacing:-.045em}
.contact-location address{margin-top:16px;color:#c4c4c4;font-style:normal;font-size:18px;line-height:1.6}
.contact-map-links{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;justify-content:flex-end}
.contact-secondary-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;font-size:14px;white-space:nowrap}
.contact-secondary-link:hover{color:#ff9ca3}
.contact-map-frame{position:relative;isolation:isolate;margin-top:32px;height:460px;background:#151518;overflow:hidden;border:1px solid #ffffff2b;border-radius:3px}
.contact-map-frame iframe{position:relative;display:block;width:100%;height:100%;border:0;color-scheme:light}
.contact-map-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:18px;padding:24px;color:#ccc}
.contact-map-fallback>svg{width:36px;height:36px;color:var(--red);flex-shrink:0}
.contact-map-fallback p{font:500 24px/1.5 Montserrat,sans-serif}
.contact-map-fallback span{display:block;color:var(--contact-secondary);font:400 16px/1.6 'Nunito Sans',sans-serif}
.contact-arrival-note{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:18px;color:var(--contact-secondary);font-size:15px;line-height:1.65}
.contact-arrival-note>p{max-width:53ch}

.contact-final{display:grid;grid-template-columns:1fr .65fr;gap:60px;margin-top:112px;margin-bottom:112px;padding-top:60px;border-top:1px solid var(--line)}
.contact-final>div>p{max-width:48ch;margin-top:24px;font-size:17px;line-height:1.7;color:var(--contact-secondary)}
.contact-final-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px}
.contact-final-actions>a{display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:50px;width:100%;max-width:320px;font-size:17px}
.contact-final-actions>a.contact-final-phone{font:500 32px/1.5 Montserrat,sans-serif;letter-spacing:-.04em}
.contact-final-actions>a>span{color:var(--red)}
.contact-final-actions>a:hover{color:#ff9ca3}
.contact-page .footer{border-top:1px solid var(--line)}
@media(max-width:1023px){.contact-hero-grid{gap:32px;grid-template-columns:1fr 1fr}.contact-details>div{grid-template-columns:1fr;gap:6px}.contact-location-heading{align-items:flex-start;flex-direction:column;gap:20px}.contact-map-links{justify-content:flex-start}.contact-heading>p{font-size:16px}}
@media(max-width:767px){.contact-container{padding-inline:24px}.contact-main{padding-top:112px}.contact-crumbs{font-size:13px}.contact-heading{display:block;margin-top:12px;padding-bottom:28px}.contact-heading h1{font-size:clamp(44px,12vw,76px);letter-spacing:-.065em}.contact-heading>p{margin-top:16px;font-size:15px}.contact-heading>p br{display:none}.contact-heading>p br::after{content:" "}.contact-hero-grid{grid-template-columns:1fr;gap:34px;margin-top:30px}.contact-conversation{padding-top:0}.contact-conversation h2{font-size:34px}.contact-phone-block{margin-top:26px}.contact-phone{font-size:clamp(24px,7.4vw,33px);letter-spacing:-.045em}.contact-phone-block p{font-size:14px}.contact-phone-block p:last-child{font-size:13px}.contact-details{margin-top:22px}.contact-details>div{grid-template-columns:1fr;gap:6px;padding-block:17px}.contact-details dt{font-size:14px}.contact-details dd{font-size:18px}.contact-details a{min-height:44px;margin-block:-8px}.contact-primary-actions{gap:8px 20px;margin-top:16px}.contact-primary-actions .button{flex:1;min-width:160px;font-size:12px}.contact-save{font-size:13px}.contact-location{margin-top:76px}.contact-location h2,.contact-final h2{font-size:33px}.contact-location address{font-size:17px;margin-top:14px;max-width:28ch}.contact-map-links{gap:6px 20px}.contact-map-links .button{font-size:11px}.contact-secondary-link{font-size:13px}.contact-map-frame{height:350px;margin-top:26px}.contact-map-fallback{gap:12px;padding:20px}.contact-map-fallback p{font-size:20px}.contact-map-fallback span{font-size:14px}.contact-arrival-note{grid-template-columns:1fr;gap:12px;font-size:14px;padding-top:16px}.contact-final{grid-template-columns:1fr;gap:28px;margin-top:72px;margin-bottom:72px;padding-top:40px}.contact-final>div>p{font-size:16px;margin-top:18px}.contact-final-actions{gap:8px}.contact-final-actions>a{max-width:none}.contact-final-actions>a.contact-final-phone{font-size:29px}}
@media(max-width:359px){.contact-container{padding-inline:20px}.contact-primary-actions{align-items:flex-start;flex-direction:column}.contact-primary-actions .button{flex:none;width:100%}.contact-map-links{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.contact-page{scroll-behavior:auto}.contact-page *, .contact-page *::before, .contact-page *::after{scroll-behavior:auto}}
@media(max-width:1023px){.contact-parking-heading{padding:26px 22px 0}.contact-parking-heading>strong{font-size:31px}.contact-parking figcaption{padding-inline:22px}.contact-parking figcaption>a{font-size:16px}}
@media(max-width:767px){.contact-parking{height:auto;min-height:440px}.contact-parking-heading{padding:24px 22px 0}.contact-parking-heading>span{font-size:14px}.contact-parking-heading>strong{font-size:33px}.contact-parking figcaption{padding:0 22px 22px}.contact-parking figcaption>a{font-size:16px}.contact-parking figcaption>span{font-size:11px}}
@media(max-width:359px){.contact-parking{min-height:410px}.contact-parking-heading{padding-inline:18px}.contact-parking-heading>strong{font-size:30px}.contact-parking figcaption{padding-inline:18px}.contact-parking figcaption>a{font-size:14px}.contact-parking figcaption>span{font-size:10px}}

/* Photo-grounded, controllable parking animation. SVG never inherits the global icon stroke. */
.parking-tabs{display:flex;gap:4px;margin:20px 24px 0;padding:4px;background:#08090b;border:1px solid #ffffff1c;border-radius:30px}
.parking-tabs button{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:44px;padding:6px 9px;background:transparent;color:#aaa;border:1px solid transparent;border-radius:24px;font:500 12px/1.2 Montserrat,sans-serif}
.parking-tabs button[aria-selected="true"]{background:#25272c;border-color:#ffffff28;color:#fff}
.parking-tabs button:hover{color:#fff}
.parking-tabs[hidden],.parking-controls[hidden],.parking-panel[hidden]{display:none}
.parking-panels{height:350px;min-height:0;margin:12px 12px 0;overflow:hidden}
.parking-panel{width:100%;height:100%}
.parking-building{display:block;width:100%;height:100%;fill:none;stroke:none;stroke-linecap:butt;stroke-linejoin:miter}
.parking-building text{stroke:none}
.parking-photo{background:#08090b;border-radius:2px}
.parking-photo>a{display:block;width:100%;height:100%}
.parking-photo img{width:100%;height:100%;object-fit:contain}
.parking-motion-message{min-height:44px;margin:8px 28px 0;display:flex;align-items:center;color:#ddd;font-size:15px;line-height:1.5}
.parking-controls{display:flex;align-items:center;gap:12px;margin:2px 24px 16px}
.parking-controls button{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:74px;padding:8px 10px;border:1px solid #ffffff30;border-radius:22px;background:#191b20;color:#eee;font:500 11px/1.3 Montserrat,sans-serif;flex-shrink:0}
.parking-controls button:first-child{min-width:127px}
.parking-controls input{min-width:0;flex:1;width:100%;height:44px;accent-color:#e55765;touch-action:pan-y}
.contact-parking figcaption .parking-access{padding-top:15px;border-top:1px solid var(--line);margin-bottom:10px;font-size:15px;line-height:1.6;color:#ddd}
@media(max-width:1023px){.parking-tabs{margin-inline:16px}.parking-panels{height:330px;margin-inline:8px}.parking-controls{gap:8px;margin-inline:16px}.parking-controls button:first-child{min-width:108px;font-size:10px}.parking-controls button{min-width:61px;font-size:10px}.parking-motion-message{margin-inline:22px;font-size:14px}}
@media(max-width:767px){.contact-parking{min-height:0}.parking-tabs{margin:18px 16px 0}.parking-tabs button{padding-inline:4px;font-size:11px}.parking-panels{height:300px;margin-top:14px}.parking-motion-message{min-height:44px;margin:8px 22px 4px;font-size:14px}.parking-controls{margin:0 16px 16px;gap:8px}.parking-controls button:first-child{min-width:108px}.parking-controls button{min-width:58px}.contact-parking figcaption .parking-access{font-size:14px}.contact-parking figcaption{padding-bottom:22px}}
@media(max-width:359px){.parking-tabs{margin-inline:10px}.parking-tabs button{font-size:10px}.parking-panels{height:270px;margin-inline:4px}.parking-controls{gap:6px;margin-inline:12px}.parking-controls button:first-child{min-width:94px;font-size:9px}.parking-controls button{min-width:51px;padding-inline:7px;font-size:9px}.parking-motion-message{margin-inline:18px;font-size:13px}.contact-parking figcaption .parking-access{font-size:13px}}
