.contact-page{background:var(--graphite);min-height:100svh;color:var(--white);overflow:clip}.contact-hero{isolation:isolate;align-items:end;min-height:82svh;display:grid;position:relative}.contact-hero-image{z-index:-3;object-fit:cover;object-position:56% center;filter:brightness(1.02)saturate(1.03);animation:1.5s cubic-bezier(.2,.75,.25,1) both contact-hero-scale}.contact-hero-grade{z-index:-2;background:linear-gradient(90deg,#150409f0 0%,#150409ad 40%,#0c080924 76%),linear-gradient(#0000 52%,#0d0708bf);position:absolute;inset:0}.contact-hero-copy{width:min(100%,88rem);padding:calc(var(--header-height) + 5rem) var(--gutter) clamp(4rem, 7vw, 7rem)}.contact-kicker{color:var(--gold);letter-spacing:.19em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.65rem;font-weight:700;animation:.8s .12s both contact-reveal-up}.contact-hero h1{max-width:10ch;font-family:var(--display);letter-spacing:-.06em;margin:0;font-size:clamp(4.3rem,8vw,8.3rem);font-weight:650;line-height:.89;animation:.9s .2s both contact-reveal-up}.contact-hero-intro{max-width:34rem;color:var(--muted-light);margin:1.8rem 0 0;font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.65;animation:.8s .32s both contact-reveal-up}.contact-hero-index{right:var(--gutter);color:#ffffff9e;letter-spacing:.14em;text-transform:uppercase;grid-template-columns:auto minmax(7rem,12rem);align-items:center;gap:.8rem;font-size:.55rem;font-weight:700;display:grid;position:absolute;bottom:clamp(4rem,7vw,7rem)}.contact-hero-index:before{content:"";background:#ffffff59;height:1px}.contact-form-section{padding:clamp(6rem, 10vw, 10rem) var(--gutter);background:var(--ivory);color:var(--ink);grid-template-columns:minmax(0,4fr) minmax(26rem,6fr);gap:clamp(3rem,7vw,8rem);display:grid}.contact-form-intro{align-self:start;position:sticky;top:3rem}.contact-form-intro .contact-kicker{animation:none}.contact-form-intro h2,.contact-map-copy h2,.contact-connect-heading h2{font-family:var(--display);letter-spacing:-.05em;margin:0;font-weight:650;line-height:.94}.contact-form-intro h2{max-width:9ch;font-size:clamp(3rem,5.5vw,6rem)}.contact-form-intro>p:last-child{max-width:27rem;color:color-mix(in oklch, var(--ink) 70%, transparent);margin:1.6rem 0 0;line-height:1.65}.contact-form{grid-template-columns:repeat(2,minmax(0,1fr));align-self:start;gap:1.5rem 2rem;display:grid}.contact-field{gap:.55rem;display:grid;position:relative}.contact-field>span{color:color-mix(in oklch, var(--ink) 66%, transparent);letter-spacing:.14em;text-transform:uppercase;font-size:.6rem;font-weight:800}.contact-field>span small{font-size:inherit;font-weight:inherit}.contact-field input,.contact-field textarea{border:0;border-bottom:1px solid color-mix(in oklch, var(--ink) 28%, transparent);width:100%;color:var(--ink);resize:vertical;background:0 0;border-radius:0;outline:0;padding:.95rem 0;transition:border-color .25s}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--burgundy)}.contact-field input[aria-invalid=true]{border-color:#a52c38}.contact-message-field,.contact-submit,.contact-consent,.contact-success,.contact-form-error{grid-column:1/-1}.contact-field-error{color:#a52c38;font-size:.66rem;line-height:1.35}.contact-honeypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.contact-submit{background:var(--burgundy);min-height:4rem;color:var(--white);letter-spacing:.11em;text-transform:uppercase;cursor:pointer;border:0;justify-content:space-between;align-items:center;margin-top:.5rem;padding:0 1.35rem;font-size:.7rem;font-weight:800;transition:background .25s,transform .25s;display:flex}.contact-submit:hover{background:var(--graphite);transform:translateY(-2px)}.contact-submit:disabled{cursor:wait;opacity:.68}.contact-submit span:last-child{color:var(--gold);font-size:1.15rem}.contact-consent,.contact-success,.contact-form-error{margin:-.5rem 0 0;font-size:.68rem;line-height:1.5}.contact-consent{color:color-mix(in oklch, var(--ink) 55%, transparent)}.contact-success{color:#37673e;font-weight:700}.contact-form-error{color:#a52c38}.contact-map-section{background:var(--burgundy);grid-template-columns:minmax(20rem,4fr) minmax(0,8fr);min-height:78svh;display:grid}.contact-map-copy{padding:clamp(4rem, 8vw, 8rem) var(--gutter);align-self:center}.contact-map-copy h2{max-width:8ch;font-size:clamp(3rem,5.6vw,6rem)}.contact-map-copy>p:not(.contact-kicker){max-width:25rem;color:var(--muted-light);margin:1.5rem 0 0;line-height:1.65}.contact-map-link{background:var(--gold);width:min(100%,20rem);color:var(--graphite);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:2rem;padding:1.1rem 1.2rem;font-size:.68rem;font-weight:800;transition:transform .25s;display:flex}.contact-map-link:hover{transform:translate(.35rem)}.contact-map-frame{background:var(--ivory-deep);min-height:38rem;position:relative;overflow:hidden}.contact-map-frame iframe{width:100%;height:100%;min-height:inherit;filter:grayscale(.28)sepia(.08)saturate(.8)contrast(1.04);border:0;transition:filter .45s,transform .8s}.contact-map-frame:hover iframe{filter:grayscale(0)saturate(.95);transform:scale(1.008)}.contact-connect{padding:clamp(6rem, 9vw, 9rem) var(--gutter);background:var(--graphite)}.contact-connect-heading{grid-template-columns:minmax(0,8fr) minmax(18rem,4fr);align-items:end;gap:2rem;margin-bottom:clamp(3rem,5vw,5rem);display:grid}.contact-connect-heading h2{max-width:10ch;font-size:clamp(3.5rem,6.7vw,7rem)}.contact-connect-heading>p{max-width:28rem;color:var(--muted-light);margin:0 0 .4rem;line-height:1.65}.contact-rail{border-top:1px solid #ffffff38}.contact-rail a{border-bottom:1px solid #ffffff2b;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:clamp(5.5rem,9vw,8.5rem);transition:background .3s,padding .3s;display:grid}.contact-rail a:hover{background:color-mix(in oklch, var(--burgundy) 34%, transparent);padding-inline:1rem}.contact-rail small{color:var(--gold);letter-spacing:.14em;font-size:.58rem;font-weight:800}.contact-rail strong{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(1.55rem,3.2vw,3.6rem);font-weight:600}.contact-rail b{color:var(--gold);font-size:1.4rem}.contact-footer{padding:1.5rem var(--gutter);background:var(--graphite);color:var(--muted-light);letter-spacing:.09em;text-transform:uppercase;border-top:1px solid #ffffff26;justify-content:space-between;gap:1rem;font-size:.58rem;display:flex}.contact-footer a{color:var(--gold)}@keyframes contact-reveal-up{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes contact-hero-scale{0%{opacity:.75;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@media (max-width:900px){.contact-form-section,.contact-map-section,.contact-connect-heading{grid-template-columns:1fr}.contact-form-intro{position:static}.contact-map-frame{min-height:32rem}.contact-connect-heading{align-items:start}}@media (max-width:600px){.contact-hero{min-height:78svh}.contact-hero-image{object-position:62% center}.contact-hero-grade{background:linear-gradient(#0c08091f 15%,#15040994 52%,#150409f0 100%),linear-gradient(90deg,#15040973,#0000)}.contact-hero-copy{padding-bottom:3.4rem}.contact-hero h1{font-size:clamp(3.5rem,16vw,5rem)}.contact-hero-index{display:none}.contact-form-section{gap:3rem;padding-block:5rem}.contact-form{grid-template-columns:1fr;gap:1.1rem}.contact-message-field,.contact-submit,.contact-consent,.contact-success,.contact-form-error{grid-column:1}.contact-map-copy{padding-block:5rem}.contact-map-frame{min-height:27rem}.contact-connect{padding-block:5rem}.contact-connect-heading{margin-bottom:2.5rem}.contact-connect-heading h2{font-size:clamp(3.1rem,13vw,4.5rem)}.contact-rail a{grid-template-columns:2rem minmax(0,1fr) auto;min-height:6rem}.contact-rail strong{font-size:clamp(1.3rem,6.2vw,2rem)}.contact-footer{display:block}.contact-footer p{margin:.35rem 0}}@media (prefers-reduced-motion:reduce){.contact-hero-image,.contact-kicker,.contact-hero h1,.contact-hero-intro{animation:none}}
