.contact-page{background:var(--paper)}.desktop-nav a.active{color:var(--orange)}
.contact-hero{min-height:100svh;position:relative;overflow:hidden;padding:calc(var(--announcement-h) + 10rem) var(--pad) 3rem;color:var(--white);background:var(--ink);isolation:isolate}.contact-grid{position:absolute;inset:var(--announcement-h) 0 0;z-index:-2;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.24) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.24) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}.contact-hero::before{content:"";position:absolute;z-index:-1;width:min(70vw,980px);aspect-ratio:1;right:-20%;top:-30%;border:1px solid rgba(255,95,0,.3);border-radius:50%;box-shadow:0 0 0 100px rgba(108,55,255,.045),0 0 0 220px rgba(108,55,255,.03)}
.contact-hero-copy{max-width:var(--max);margin:0 auto}.contact-hero h1{max-width:1250px;margin:1.4rem 0 0;font-size:clamp(4rem,8.5vw,9.3rem);line-height:.84;letter-spacing:-.075em}.contact-hero-bottom{max-width:var(--max);margin:4rem auto 0;display:flex;justify-content:flex-end;align-items:center;gap:3rem}.contact-hero-bottom p{max-width:600px;margin:0;color:rgba(255,255,255,.67);font-size:1.08rem;line-height:1.7}.round-down{width:84px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);border-radius:50%;color:var(--orange);font-size:1.6rem;transition:.25s ease}.round-down:hover{color:var(--ink);background:var(--orange);transform:translateY(5px)}
.contact-orbit{position:absolute;right:7%;top:26%;width:clamp(210px,23vw,370px);aspect-ratio:1;border:1px solid rgba(255,255,255,.22);border-radius:50%}.contact-orbit i{position:absolute;inset:20%;border:1px solid rgba(255,255,255,.2);border-radius:50%}.contact-orbit img{position:absolute;inset:35%;width:30%;height:auto;aspect-ratio:1;border-radius:50%;animation:contact-float 5s ease-in-out infinite}.contact-orbit span{position:absolute;padding:.45rem .7rem;border:1px solid rgba(255,255,255,.25);border-radius:99px;background:rgba(18,5,31,.75);font-size:.55rem;font-weight:900;letter-spacing:.13em}.contact-orbit span:nth-of-type(1){left:-5%;top:14%}.contact-orbit span:nth-of-type(2){right:-8%;top:48%}.contact-orbit span:nth-of-type(3){left:13%;bottom:2%}
.project-section{background:var(--white);display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(4rem,8vw,9rem);align-items:start}.form-intro{position:sticky;top:calc(var(--announcement-h) + 120px)}.form-intro h2{font-size:clamp(3.3rem,5.5vw,6.2rem)}.form-intro>p:not(.kicker){max-width:460px;color:#695f6e;line-height:1.7}.direct-contact{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem}.direct-contact span{color:#7a7080;font-size:.72rem}.direct-contact a{font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:700}
.project-form{display:grid;gap:2.2rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem 1.4rem}.project-form label>span,.project-form legend{display:block;margin-bottom:.65rem;font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.project-form input,.project-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);padding:.8rem 0 1rem;background:transparent;color:var(--ink);font:inherit;border-radius:0;outline:0}.project-form textarea{resize:vertical;min-height:150px;line-height:1.6}.project-form input:focus,.project-form textarea:focus{border-color:var(--orange);box-shadow:0 2px 0 var(--orange)}.project-form input::placeholder,.project-form textarea::placeholder{color:#9a919d}.project-form fieldset{border:0;padding:0;margin:0}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.choice-grid label{position:relative}.choice-grid input{position:absolute;opacity:0;pointer-events:none}.choice-grid span{min-height:64px;margin:0!important;padding:1rem 1.2rem;display:flex!important;align-items:center!important;border:1px solid var(--line);border-radius:99px;font-size:.82rem!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;transition:.2s ease}.choice-grid input:checked+span{color:white;border-color:var(--purple);background:var(--purple)}.choice-grid input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.consent{display:grid!important;grid-template-columns:22px 1fr;gap:.8rem;align-items:start}.consent input{width:18px;height:18px;margin:.1rem 0 0;accent-color:var(--purple)}.consent span{margin:0!important;color:#6b6170;font-size:.76rem!important;line-height:1.5;letter-spacing:0!important;text-transform:none!important}.form-actions{display:flex;align-items:center;gap:1.5rem}.form-actions button{border:0;cursor:pointer}.form-actions button:disabled{cursor:wait;opacity:.68;transform:none}.form-actions p{max-width:340px;margin:0;color:#7c7281;font-size:.72rem;line-height:1.5}.form-status{min-height:1.3em;margin:0;color:var(--purple);font-size:.82rem;font-weight:700}.form-status.is-success{color:#177447}.form-status.is-error{color:#b01f2e}.project-form .invalid{border-color:#c62525;box-shadow:0 2px 0 #c62525}
.contact-channels{background:var(--paper)}.channel-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.channel-card{min-height:220px;padding:2rem;display:grid;grid-template-columns:1fr auto;align-content:space-between;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .25s ease,color .25s ease}.channel-card:nth-child(even){border-right:0}.channel-card:hover{color:white;background:var(--purple)}.channel-card>span{grid-column:1/-1;color:var(--orange);font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em}.channel-card strong{align-self:end;font-size:clamp(1.25rem,2.3vw,2.3rem);letter-spacing:-.04em;word-break:break-word}.channel-card b{align-self:end;color:var(--orange);font-size:1.4rem}
.contact-locations{color:var(--ink);background:var(--cream)}.location-heading{max-width:var(--max);margin:0 auto}.location-heading h2{font-size:clamp(3.4rem,6.6vw,7.3rem)}.office-grid{max-width:var(--max);margin:5rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.office-card{position:relative;min-height:310px;padding:clamp(1.6rem,3vw,2.6rem);display:flex;flex-direction:column;overflow:hidden;border-radius:1.35rem;color:white;background:var(--ink);box-shadow:0 16px 38px rgba(18,5,31,.12);transition:transform .35s ease,box-shadow .35s ease}.office-card-accent{color:var(--ink);background:var(--orange)}.office-card::before{content:attr(data-office);position:absolute;right:-.04em;bottom:-.25em;color:rgba(255,255,255,.075);font-size:clamp(8rem,14vw,12rem);font-weight:900;line-height:1;letter-spacing:-.09em;pointer-events:none}.office-card-accent::before{color:rgba(18,5,31,.08)}.office-card::after{content:"";position:absolute;right:-18%;top:-42%;width:58%;aspect-ratio:1;border:1px solid rgba(255,255,255,.18);border-radius:50%;pointer-events:none}.office-card-accent::after{border-color:rgba(18,5,31,.16)}.office-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(18,5,31,.2)}.office-card-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:1rem}.office-card-top span{color:var(--orange);font-size:.61rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.office-card-accent .office-card-top span{color:var(--ink)}.office-card-top i{width:38px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:50%;color:var(--orange);font-size:1rem;font-style:normal}.office-card-accent .office-card-top i{border-color:rgba(18,5,31,.35);color:var(--ink)}.office-card h3{position:relative;z-index:1;margin:auto 0 .9rem;font-size:clamp(2.8rem,5vw,5.2rem);line-height:.86;letter-spacing:-.06em}.office-card address{position:relative;z-index:1;color:rgba(255,255,255,.7);font-size:.92rem;font-style:normal;line-height:1.55}.office-card-accent address{color:rgba(18,5,31,.7)}.office-card address strong{color:inherit;font-weight:500}.office-card a{position:relative;z-index:1;align-self:flex-start;margin-top:1.4rem;padding-bottom:.35rem;border-bottom:1px solid currentColor;font-size:.72rem;font-weight:900}.office-card a b{margin-left:.25rem;color:var(--orange)}.office-card-accent a b{color:var(--ink)}
.contact-close{min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--white)}.contact-close h2{max-width:1100px;font-size:clamp(3.3rem,7vw,7.6rem)}.contact-close-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:2rem}.contact-close-tags span{padding:.75rem 1.1rem;border:1px solid var(--line);border-radius:99px;font-size:.76rem;font-weight:700}
.project-form{scroll-margin-top:calc(var(--announcement-h) + 110px)}
.choice-grid.invalid{padding:.5rem;border:1px solid #c62525;border-radius:1rem}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
@keyframes contact-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}
@media(max-width:1280px) and (min-width:1001px){.contact-hero h1{max-width:1080px;font-size:clamp(4rem,7.7vw,6.8rem)}.contact-orbit{right:4%;top:48%;width:clamp(220px,22vw,290px);opacity:.58}.contact-hero-bottom{margin:4rem auto 0;justify-content:flex-start}.contact-hero-bottom p{max-width:620px}}
@media(max-width:1000px){.contact-hero{padding-top:calc(var(--announcement-h) + 8rem)}.contact-hero-bottom{justify-content:flex-start}.contact-orbit{width:220px;opacity:.3;right:-10%;top:52%}.project-section{grid-template-columns:1fr}.form-intro{position:static}.form-intro h2{max-width:650px}.direct-contact{max-width:520px}.office-card{min-height:290px}}
@media(max-width:680px){.contact-hero{min-height:850px;padding-top:calc(var(--announcement-h) + 7rem)}.contact-hero h1{font-size:clamp(3.25rem,15.5vw,5rem)}.contact-hero-bottom{margin-top:3rem;flex-direction:column;align-items:flex-start;gap:1.5rem}.round-down{width:64px}.contact-orbit{display:none}.field-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.form-actions{align-items:flex-start;flex-direction:column}.channel-grid{grid-template-columns:1fr}.channel-card,.channel-card:nth-child(even){min-height:180px;border-right:0}.office-grid{grid-template-columns:1fr}.office-card{min-height:270px}.contact-close{min-height:560px}}
@media(prefers-reduced-motion:reduce){.contact-orbit img{animation:none}.office-card{transition:none}}
.contact-hero{min-height:88svh;padding-top:calc(var(--announcement-h) + 8.5rem)}
.project-form input,.project-form textarea,.project-form select{width:100%;border:0;border-bottom:1px solid var(--line);padding:.8rem 0 1rem;background:transparent;color:var(--ink);font:inherit;border-radius:0;outline:0}.project-form select{cursor:pointer;padding-right:1.5rem}.project-form input:focus,.project-form textarea:focus,.project-form select:focus{border-color:var(--orange);box-shadow:0 2px 0 var(--orange)}
@media(max-width:1000px){.contact-hero{padding-top:calc(var(--announcement-h) + 7.2rem)}}
@media(max-width:680px){.contact-hero{min-height:740px;padding-top:calc(var(--announcement-h) + 6.5rem)}}
