.contact-page{overflow:hidden}.contact-hero{padding:clamp(10rem,12vw,12.5rem) 0 clamp(4rem,6vw,6.5rem);color:var(--off-white);background:radial-gradient(circle at 12% 15%,rgba(226,214,194,.09),transparent 34rem),var(--anthracite)}.contact-hero-grid,.contact-details-layout{width:min(100% - 40px,var(--container));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3.5rem,6vw,6rem)}.contact-hero-grid{align-items:center}.contact-intro{max-width:620px}.contact-intro>.eyebrow{color:color-mix(in oklch,var(--beige) 82%,transparent)}.contact-intro h1{margin-top:1.35rem;font-size:clamp(3.2rem,4.55vw,5.05rem);line-height:.94;letter-spacing:-.025em}.contact-intro h1>span{display:block;white-space:nowrap}.contact-intro h1 em{display:block;margin-top:.3em;color:var(--beige);font-size:.78em;font-weight:400;line-height:.93}.contact-zone-copy{max-width:510px;margin-top:2.25rem;color:#ffffffb3;font-size:clamp(.96rem,1.1vw,1.08rem);line-height:1.7}.contact-hero-phone{margin-top:clamp(2.25rem,3.4vw,3rem);display:inline-flex;align-items:center;gap:1rem}.contact-hero-phone>span{width:3.2rem;height:3.2rem;display:grid;place-items:center;color:var(--anthracite);border-radius:50%;background:var(--beige)}.contact-hero-phone strong{font-size:clamp(1.55rem,2.15vw,2.05rem);font-weight:500;letter-spacing:-.02em}.contact-hours{max-width:510px;margin-top:clamp(2rem,3.4vw,2.75rem);padding-top:1.4rem;display:grid;grid-template-columns:1.75rem 1fr;gap:.8rem;border-top:1px solid rgba(255,255,255,.15)}.contact-hours>span{color:var(--beige)}.contact-hours p{color:#ffffffb8;font-size:.9rem;line-height:1.65}.contact-hours p+p{margin-top:.5rem;color:#ffffff80}.contact-form-panel{position:relative;width:100%;justify-self:stretch;padding:clamp(2rem,3.2vw,3rem);color:var(--anthracite);background:color-mix(in oklch,var(--off-white) 94%,var(--beige));border:1px solid rgba(255,255,255,.16);border-radius:1px;box-shadow:0 22px 50px #0000001f}.contact-form-heading{display:block}.contact-form-heading .eyebrow{color:color-mix(in oklch,var(--anthracite) 58%,transparent)}.contact-form-heading h2{margin-top:.65rem;font-size:clamp(2.25rem,3vw,3.1rem);line-height:1}.contact-form-switcher{margin-top:1.45rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.contact-form-switcher button{position:relative;min-width:0;min-height:3.35rem;padding:.85rem 1rem;overflow:hidden;border:1px solid color-mix(in oklch,var(--anthracite) 10%,transparent);border-radius:1px;color:var(--anthracite);background:var(--off-white);font-size:.7rem;font-weight:700;line-height:1.25;letter-spacing:.065em;text-align:center;text-transform:uppercase;cursor:pointer;transition:border-color .25s ease,box-shadow .25s ease,transform .3s var(--ease)}.contact-form-switcher button:nth-child(2){background:var(--beige)}.contact-form-switcher button:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.contact-form-switcher button[aria-selected=true]{border-color:color-mix(in oklch,var(--orange) 38%,transparent);box-shadow:0 10px 24px #373a3c14}.contact-form-switcher button[aria-selected=true]:after{transform:scaleX(1);transform-origin:left}.contact-form-switcher button:hover{border-color:color-mix(in oklch,var(--anthracite) 24%,transparent);transform:translateY(-1px)}.contact-form-stage{display:grid;overflow-anchor:none}.contact-form-view{min-width:0;grid-area:1 / 1}.contact-form-view[hidden]{display:block;visibility:hidden;pointer-events:none}.contact-form{position:relative;margin-top:1.85rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.7rem 1.6rem}.contact-form .form-field{min-width:0;display:flex;flex-direction:column;gap:.35rem}.contact-form .form-field--wide,.contact-form .form-consent,.contact-form .form-status,.contact-form>button{grid-column:1 / -1}.contact-form .form-field label{color:color-mix(in oklch,var(--anthracite) 62%,transparent);font-size:.63rem;font-weight:700;letter-spacing:.105em;text-transform:uppercase}.contact-form .form-field label span{color:var(--orange)}.contact-form .form-field input,.contact-form .form-field select,.contact-form .form-field textarea{width:100%;min-height:2rem;padding:0 0 .48rem;border:0;border-bottom:1px solid color-mix(in oklch,var(--anthracite) 20%,transparent);border-radius:0;outline:0;color:var(--anthracite);background:transparent;font:400 .86rem/1.35 var(--sans)}.contact-form .form-field textarea{min-height:3.55rem;resize:vertical}.contact-form .form-field textarea::placeholder{color:color-mix(in oklch,var(--anthracite) 43%,transparent)}.contact-form .form-field input:focus,.contact-form .form-field select:focus,.contact-form .form-field textarea:focus{border-color:var(--orange)}.contact-form .form-consent{display:flex;align-items:flex-start;gap:.7rem;color:color-mix(in oklch,var(--anthracite) 58%,transparent);font-size:.68rem;line-height:1.5}.contact-form .form-consent input{flex:0 0 auto;margin-top:.15rem;accent-color:var(--orange)}.contact-form .form-consent a{color:var(--anthracite);text-decoration:underline;text-underline-offset:.16em}.contact-form .form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.contact-form .form-status{margin:0;padding:.8rem .9rem;border:1px solid var(--border);color:var(--anthracite);background:var(--muted);font-size:.75rem;line-height:1.45}.contact-form .form-status[data-state=success]{color:#285f34;border-color:#498b5766;background:#edf8ef}.contact-form .form-status[data-state=error]{color:#8c321f;border-color:#b54d3566;background:#fff0ed}.contact-form>button{min-width:250px;justify-self:start;border:0;font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.contact-form>button:disabled{cursor:wait;opacity:.65}.contact-details{background:var(--off-white)}.contact-details-layout{align-items:start}.contact-details-heading{position:sticky;top:8rem}.contact-details-heading .eyebrow{color:color-mix(in oklch,var(--anthracite) 55%,transparent)}.contact-details-heading h2{max-width:510px;margin-top:1.2rem;font-size:clamp(3.4rem,5vw,5.4rem);line-height:.92}.contact-details-location{margin-top:1.6rem;color:var(--muted-text);font-size:.86rem;line-height:1.6}.contact-details-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid color-mix(in oklch,var(--anthracite) 15%,transparent)}.contact-detail{min-height:11rem;padding:1.8rem clamp(1.25rem,2.2vw,2rem);display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;align-items:start;border-bottom:1px solid color-mix(in oklch,var(--anthracite) 15%,transparent)}.contact-detail:nth-child(odd){padding-left:0;border-right:1px solid color-mix(in oklch,var(--anthracite) 15%,transparent)}.contact-detail:nth-child(2n){padding-right:0}.contact-detail-icon{width:3rem;height:3rem;display:grid;place-items:center;color:var(--anthracite);border:1px solid color-mix(in oklch,var(--anthracite) 18%,transparent);border-radius:50%;transition:color .2s ease,background .2s ease,border-color .2s ease}.contact-detail small{display:block;margin-bottom:.45rem;color:color-mix(in oklch,var(--anthracite) 52%,transparent);font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-detail strong,.contact-detail address{margin:0;color:var(--anthracite);font:500 clamp(1.1rem,1.3vw,1.34rem)/1.3 var(--serif);font-style:normal}a.contact-detail strong{transition:color .2s ease}a.contact-detail:hover strong{color:var(--orange)}a.contact-detail:hover .contact-detail-icon{color:var(--off-white);background:var(--orange);border-color:var(--orange)}.contact-socials{margin-top:clamp(2.75rem,5vw,4.5rem);display:flex;align-items:flex-start;flex-direction:column;gap:1rem}.contact-socials>p{color:color-mix(in oklch,var(--anthracite) 55%,transparent);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-socials>div{display:flex;gap:.65rem}.contact-socials a{width:3rem;height:3rem;display:grid;place-items:center;border:1px solid color-mix(in oklch,var(--anthracite) 18%,transparent);border-radius:50%;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .25s var(--ease)}.contact-socials a:hover{color:var(--off-white);background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}.contact-map{min-height:720px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:color-mix(in oklch,var(--beige) 32%,var(--off-white))}.contact-map-frame{min-height:720px;background:var(--muted)}.contact-map-frame iframe{width:100%;height:100%;min-height:720px;display:block;border:0;filter:saturate(.72) contrast(.95)}.contact-map-copy{min-width:0;padding:clamp(4rem,7vw,7rem) clamp(2rem,4.5vw,5rem);display:flex;flex-direction:column;justify-content:center}.contact-map-copy>.eyebrow{color:color-mix(in oklch,var(--anthracite) 55%,transparent)}.contact-map-copy h2{margin-top:1rem;font-size:clamp(2.8rem,3.9vw,4.25rem);line-height:.95}.contact-map-copy>p:not(.eyebrow){margin-top:1.5rem;color:var(--muted-text);line-height:1.72}.contact-cities{margin-top:2rem}.contact-cities h3{font:700 .68rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase}.contact-cities .cities{margin-top:1rem;justify-content:flex-start}@media(max-width:1100px){.contact-hero-grid,.contact-details-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem}.contact-intro h1{font-size:clamp(3rem,4.7vw,4.35rem)}.contact-map{grid-template-columns:1fr 1fr}}@media(max-width:900px){.contact-hero{padding-top:clamp(8rem,15vw,9.5rem)}.contact-hero-grid,.contact-details-layout,.contact-map{grid-template-columns:1fr}.contact-intro{max-width:720px;padding-top:0}.contact-form-panel{width:100%;max-width:760px;justify-self:start}.contact-details-heading{position:static}.contact-details-heading h2{max-width:620px}.contact-socials{margin-top:2.5rem}.contact-map-copy{order:-1}.contact-map,.contact-map-frame,.contact-map-frame iframe{min-height:540px}}@media(max-width:620px){.contact-hero{padding:7rem 0 3rem}.contact-hero-grid{gap:2.5rem}.contact-intro h1{font-size:clamp(2.75rem,13.5vw,3.7rem)}.contact-intro h1>span{white-space:normal}.contact-intro h1 em{font-size:.82em}.contact-zone-copy{margin-top:1.5rem}.contact-hero-phone{margin-top:2rem}.contact-hero-phone>span{width:3rem;height:3rem}.contact-hero-phone strong{font-size:clamp(1.5rem,7vw,1.9rem)}.contact-form-panel{padding:1.35rem 1.1rem 1.5rem}.contact-form-heading{display:block}.contact-form-heading h2{margin-top:.7rem}.contact-form{grid-template-columns:1fr;gap:1.5rem}.contact-form-switcher{gap:.5rem}.contact-form-switcher button{min-height:3.2rem;padding:.75rem .55rem;font-size:.62rem}.contact-form .form-field--wide,.contact-form .form-consent,.contact-form .form-status,.contact-form>button{grid-column:auto}.contact-form>button{width:100%}.contact-details-layout{gap:2.5rem}.contact-details-heading h2{font-size:clamp(2.9rem,13vw,3.9rem)}.contact-details-list{grid-template-columns:1fr}.contact-detail:nth-child(odd),.contact-detail:nth-child(2n){min-height:0;padding:1.5rem 0;border-right:0}.contact-detail strong,.contact-detail address{overflow-wrap:anywhere;font-size:1.22rem}.contact-map-copy{padding:4rem 1.25rem}.contact-map-copy h2{font-size:clamp(2.65rem,13vw,3.8rem)}.contact-map,.contact-map-frame,.contact-map-frame iframe{min-height:420px}}@media(prefers-reduced-motion:reduce){.contact-socials a{transition:none}}
