.contact-page{--field-padding:clamp(24px, 2.222vw, 32px) clamp(0px, 4.444vw, 64px);background-color:#d4d4d8;flex-direction:column;align-items:stretch;width:100%;display:flex;overflow-x:clip}.contact-section{padding:calc(var(--header-height) + clamp(48px, 6.944vw, 100px)) var(--side-margin) clamp(80px, 10.833vw, 156px);background-color:#d4d4d8}.contact-content{flex-direction:column;gap:clamp(56px,6.944vw,100px);display:flex}.contact-intro{flex-direction:column;align-items:flex-start;gap:clamp(20px,2.5vw,36px);padding:clamp(0px,2.5vw,36px) clamp(0px,4.444vw,64px);display:flex}.contact-title{font-family:var(--font-sans);letter-spacing:-.035em;color:#18181b;text-wrap:balance;font-size:clamp(40px,5vw,72px);font-weight:700;line-height:1.097}.contact-subtitle{max-width:665px;font-family:var(--font-sans);letter-spacing:-1px;color:#18181b;text-wrap:pretty;font-size:clamp(18px,1.667vw,30px);font-weight:225;line-height:1.083}.contact-body{justify-content:center;align-items:flex-start;gap:24px;display:flex}.contact-form{flex-direction:column;flex:0 792px;min-width:0;padding:0 clamp(0px,4.444vw,64px);display:flex}.form-field{padding:var(--field-padding);cursor:text;border:0 solid #18181b80;border-top-width:1px;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;transition:border-color .3s;display:flex}.form-field:focus-within{border-color:#00f}.form-field-label{font-family:var(--font-mono);letter-spacing:-.083em;text-transform:uppercase;color:#18181b;white-space:nowrap;font-size:clamp(28px,3.333vw,48px);font-weight:300;transition:opacity .3s}.form-field:has(.form-field-input:not(:placeholder-shown)) .form-field-label{opacity:.5}.form-field-input{width:100%;font-family:var(--font-sans);letter-spacing:-1px;color:#00f;outline:none;font-size:16px;font-weight:300;line-height:1.35}.form-field-input::placeholder{color:#00f;opacity:.5}textarea.form-field-input{resize:none;field-sizing:content;min-height:1.35em}.form-submit{padding:var(--field-padding);border:0 solid #18181b80;border-top-width:1px}.send-button{isolation:isolate;font-family:var(--font-sans);letter-spacing:-1px;color:#fff;background-color:#00f;border-radius:100px;align-items:center;padding:18px 40px;font-size:18px;font-weight:400;transition:background-color;display:inline-flex;position:relative;overflow:hidden}.send-button:before{content:"";transition:transform .5s var(--ease-out);z-index:-1;background-color:#18181b;position:absolute;inset:0;transform:translateY(101%)}.send-button:hover,.send-button:focus-visible{background-color:#18181b;transition:background-color 0s .5s}.send-button:hover:before,.send-button:focus-visible:before{transform:translateY(0)}.send-button:focus-visible{outline-offset:4px;outline:2px solid #00f}.send-button-label{clip-path:inset(0 -100vw);height:1.2em;line-height:1.2;display:block}.send-button-text{text-shadow:0 1.2em;transition:transform .5s var(--ease-out);display:block}.send-button:hover .send-button-text,.send-button:focus-visible .send-button-text{transform:translateY(-1.2em)}@media (prefers-reduced-motion:reduce){.send-button:before,.send-button-text{transition:none}}.contact-details{flex-direction:column;flex:0 384px;align-items:flex-start;gap:24px;min-width:0;padding:0 16px;display:flex}.profile-badge{min-width:100px;height:40px;font-family:var(--font-sans);letter-spacing:-1px;text-transform:uppercase;color:#fff;white-space:nowrap;transition:background-color .3s ease, scale .45s var(--ease-bounce);background-color:#00f;border-radius:54px;justify-content:center;align-items:center;padding:0 24px;font-size:13px;font-weight:600;display:inline-flex}.profile-badge:hover,.profile-badge:focus-visible{background-color:#18181b;scale:1.06}.contact-group{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.contact-group-label{font-family:var(--font-mono);letter-spacing:-1px;color:#00f;white-space:nowrap;font-size:12px;font-weight:300}.contact-list{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.contact-link{font-family:var(--font-sans);letter-spacing:-1px;color:#18181b;white-space:nowrap;transition:background-size .35s var(--ease-out), color .3s ease;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;font-size:16px;font-weight:400}.contact-link:hover,.contact-link:focus-visible{color:#00f;background-size:100% 1px}@media (width<=1024px){.contact-body{flex-direction:column;align-items:stretch;gap:56px}.contact-form,.contact-details{flex-basis:auto}.contact-details{flex-flow:wrap;align-items:flex-start;gap:32px 72px;padding:0 clamp(0px,8.889vw,128px)}}@media (width<=560px){.form-field-label{white-space:normal}.contact-details{flex-direction:column;gap:28px}}
