.contact-intro,.contact-message-heading{--font-body:var(--font-geist,"Inter"), "Helvetica Neue", Arial, sans-serif;--font-action:var(--font-body);font-family:var(--font-body)}.subpage-hero.contact-intro{isolation:isolate;background:radial-gradient(ellipse at 83% 48%, #e4bc3312, transparent 46%), var(--ink);padding-block:clamp(64px,7vw,108px);position:relative}.contact-intro:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#f5f4f008 1px,#0000 1px),linear-gradient(90deg,#f5f4f008 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 25%,#000);mask-image:linear-gradient(90deg,#0000 25%,#000)}.contact-intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(48px,7vw,112px);display:grid}.contact-intro-copy .eyebrow{font-size:.875rem}.subpage-hero.contact-intro h1{font-family:var(--font-body);letter-spacing:-.05em;text-transform:none;margin:30px 0 0;font-size:clamp(3rem,5.4vw,5.7rem);font-weight:420;line-height:1.04}.contact-intro h1 em{color:var(--gold);font-style:normal}.contact-intro-description{max-width:31rem;color:var(--mist);margin:28px 0 0;font-size:1.0625rem;line-height:1.75}.contact-intro-actions{flex-direction:column;align-items:flex-start;gap:16px;margin-top:30px;display:flex}.contact-intro-actions .button{text-transform:none;letter-spacing:0;font-weight:500}.contact-intro-actions>span{color:var(--mist);font-size:.875rem;line-height:1.6}.contact-dialogue{border-block:1px solid var(--line-dark);min-width:0;margin:0;padding:clamp(22px,3vw,44px) 0}.contact-dialogue-heading{color:var(--mist);font:400 .875rem/1.5 var(--font-plex-mono);justify-content:space-between;align-items:center;gap:20px;display:flex}.contact-dialogue-heading svg{width:24px;height:24px;color:var(--gold);stroke-width:1.25px}.contact-dialogue-diagram{grid-template-columns:max-content minmax(0,1fr);align-items:stretch;gap:18px;margin-block:38px 24px;display:grid}.contact-dialogue-inputs{color:var(--mist);grid-template-rows:repeat(3,1fr);align-items:center;margin:0;padding:0;font-size:.875rem;line-height:1.5;list-style:none;display:grid}.contact-dialogue-traces{align-self:center;width:100%;height:auto;display:block;overflow:visible}.contact-guide{stroke:#f5f4f01f;stroke-width:1px}.contact-input-trace{stroke:#777971;stroke-width:1.3px}.contact-direction-trace,.contact-direction-tip{stroke:var(--gold);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.contact-direction-trace{stroke-dasharray:1;animation:2.2s ease-out .18s both contact-draw-direction}.contact-conversation-node{fill:var(--ink);stroke:var(--gold);stroke-width:1.5px}.contact-dialogue-result>span{color:var(--gold);font:400 .875rem/1.5 var(--font-plex-mono)}.contact-dialogue-result p{color:var(--mist);letter-spacing:-.035em;margin:14px 0 0;font-size:clamp(1.6rem,2.5vw,2.6rem);font-weight:400;line-height:1.25}.contact-dialogue-result em{color:var(--warm-white);font-style:normal}.contact-message-section{scroll-margin-top:100px}.contact-message-heading{width:min(860px, calc(100% - 2 * var(--gutter)));margin-bottom:30px}.contact-message-heading h2{font:400 clamp(1.8rem, 3vw, 2.8rem)/1.15 var(--font-body);letter-spacing:-.035em;text-transform:none}.contact-message-heading p{max-width:39rem;color:var(--graphite);margin:16px 0 0;font-size:1rem;line-height:1.7}@keyframes contact-draw-direction{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@media (max-width:860px){.contact-intro-grid{grid-template-columns:minmax(0,1fr);gap:48px}.contact-dialogue{width:100%;max-width:620px}.contact-dialogue-diagram{margin-block:26px 20px}}@media (max-width:560px){.subpage-hero.contact-intro{padding-block:52px 62px}.contact-intro-grid{gap:40px}.subpage-hero.contact-intro h1{margin-top:22px;font-size:clamp(2.65rem,13vw,3.8rem);line-height:1}.contact-intro-description{margin-top:22px;font-size:.975rem;line-height:1.68}.contact-intro-actions{align-items:stretch;margin-top:26px}.contact-intro-actions .button{width:100%}.contact-dialogue{padding-block:24px}.contact-dialogue-heading,.contact-dialogue-result>span,.contact-dialogue-inputs{font-size:.75rem}.contact-dialogue-diagram{grid-template-columns:minmax(72px,max-content) minmax(0,1fr);gap:10px}.contact-dialogue-result p{margin-top:11px;font-size:clamp(1.4rem,7.5vw,1.9rem)}}@media (prefers-reduced-motion:reduce){.contact-direction-trace{animation:none}}
