.contact-hero{min-height:100dvh;padding:7.2rem 0 clamp(5rem,8vw,8rem)}.contact-hero-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(34rem,1.22fr);align-items:start;gap:clamp(3rem,7vw,8rem)}.contact-intro{position:sticky;top:8.5rem;padding-top:1.5rem}.contact-intro .marketing-kicker{margin-bottom:1.5rem}.contact-intro h1{margin:0;font-size:clamp(3.7rem,7vw,7rem);font-weight:600;letter-spacing:-.082em;line-height:.94}.contact-intro>p{max-width:31rem;margin:1.7rem 0 2.2rem;color:var(--v2-muted);font-size:clamp(1.02rem,1.4vw,1.16rem);line-height:1.65}.contact-intro>p a{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}.contact-form-wrap{overflow:hidden;border:1px solid var(--line-strong);border-top:.45rem solid var(--accent-deep);border-radius:1.4rem;background:var(--paper-raised);box-shadow:0 38px 90px rgba(37,39,31,.09)}.contact-form{padding:clamp(1.5rem,4vw,3.4rem)}.contact-form-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:2.2rem}.contact-form-heading h2{margin:0;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:600;letter-spacing:-.055em;line-height:1.1}.contact-form-heading p{margin:0;color:var(--v2-muted);font-family:var(--font-landing-mono),monospace;font-size:.65rem;text-transform:uppercase}.contact-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-field{display:grid;align-content:start;margin-bottom:1.25rem}.contact-field label{margin-bottom:.55rem;color:#3f413a;font-size:.76rem;font-weight:700}.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid rgba(20,21,18,.23);border-radius:.8rem;background:#fff;color:var(--ink);outline:0;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.contact-field input,.contact-field select{min-height:3.35rem;padding:0 1rem}.contact-field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:3rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%23141512' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.15rem center;background-size:.75rem auto;cursor:pointer}.contact-field select:has(option[value=""]:checked){color:#777a6f}.contact-field select option{color:var(--ink)}.contact-field textarea{min-height:10.5rem;padding:.9rem 1rem;resize:vertical}.contact-field input::-moz-placeholder,.contact-field textarea::-moz-placeholder{color:#777a6f}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#777a6f}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(215,255,67,.7)}.contact-field [aria-invalid=true]{border-color:#a62d2d;box-shadow:0 0 0 3px rgba(166,45,45,.12)}.contact-error{min-height:1.15rem;padding-top:.3rem;color:#902626;font-size:.71rem}.contact-field-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--v2-muted);font-family:var(--font-landing-mono),monospace;font-size:.64rem}.contact-submit{display:inline-flex;min-height:3.25rem;align-items:center;justify-content:space-between;gap:1.5rem;padding:.35rem .35rem .35rem 1.35rem;border:0;border-radius:999px;background:var(--ink);color:var(--white);font-size:.83rem;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .3s ease}.contact-submit:hover{background:#2a2c26;transform:translateY(-2px)}.contact-submit:active{transform:scale(.98)}.contact-submit:hover .cta-orb{transform:translate(.15rem,-.12rem)}.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-submit:disabled{opacity:.6;cursor:progress;transform:none}.contact-sent>p{margin:0 0 2rem;color:var(--v2-muted);font-size:1rem;line-height:1.6}.contact-status{min-height:1.5rem;margin:1rem 0 0;color:var(--v2-muted);font-size:.78rem}@media (max-width:980px){.contact-hero-grid{grid-template-columns:minmax(0,.7fr) minmax(28rem,1.3fr);gap:3rem}}@media (max-width:760px){.contact-hero{min-height:0;padding-top:6.5rem}.contact-hero-grid{grid-template-columns:1fr}.contact-intro{position:static;padding-top:0}.contact-intro h1{font-size:clamp(3.4rem,14vw,5rem)}.contact-field-pair{grid-template-columns:1fr;gap:0}.contact-form-heading{align-items:flex-start;flex-direction:column;gap:.55rem}}@media (prefers-reduced-motion:reduce){.contact-submit,.contact-submit .cta-orb{transition:none}}