.contact-page{padding:88px 0 104px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:80px;align-items:start}
.contact-intro{padding-top:6px}
.contact-intro h1{font-size:clamp(2.8rem,4.5vw,4.1rem);line-height:1.08;letter-spacing:-.055em;font-weight:530;max-width:540px}
.contact-intro h1 span{color:var(--color-798596)}
.contact-description{font-size:1.0625rem;line-height:1.8;max-width:455px;margin:28px 0 0}
.contact-details{font-style:normal;margin-top:44px;max-width:440px}
.contact-detail{border-top:1px solid var(--line);padding:22px 0}
.contact-detail-label{display:block;color:var(--muted);font-family:var(--mono);font-size:.75rem;letter-spacing:.055em;text-transform:uppercase;margin-bottom:10px}
.contact-detail a{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:clamp(1.15rem,2vw,1.5rem);letter-spacing:-.035em;line-height:1.4}
.contact-detail a .arrow{color:var(--primary-text);font-size:1.2rem}
.contact-detail a:hover{color:var(--primary-text)}
.contact-location{font-size:.875rem;margin-top:12px;color:var(--muted)}
.contact-form-panel{padding:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.contact-form-heading>.mono{color:var(--primary-text);font-size:.75rem}
.contact-form-heading h2{font-size:clamp(1.5rem,2.5vw,1.875rem);letter-spacing:-.035em;line-height:1.2;margin:14px 0 12px}
.contact-form-heading p{font-size:1rem;line-height:1.6;margin:0}
.contact-form{display:grid;gap:22px;margin-top:30px}
.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-field{display:grid;gap:8px;min-width:0}
.contact-field label{font-size:.875rem;font-weight:500;color:var(--text)}
.contact-field label span{color:var(--muted);font-weight:400}
.contact-field input,.contact-field textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;background:var(--background);color:var(--text);font:inherit;font-size:1rem;line-height:1.5;padding:12px 13px;transition:border-color .2s}
.contact-field textarea{resize:vertical;min-height:144px;max-height:500px}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--muted);opacity:1}
.contact-field input:hover,.contact-field textarea:hover{border-color:var(--color-344057)}
.contact-field input:focus,.contact-field textarea:focus{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:3px}
.contact-form-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.contact-form-actions .primary-button{font-size:.875rem;min-height:48px}
.contact-form-actions p{font-size:.875rem;line-height:1.65;margin:0;color:var(--muted)}
.contact-form-actions .primary-button:disabled{opacity:.65;cursor:wait}
.contact-form-status{margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:5px;font-size:.875rem;line-height:1.65;color:var(--text)}
.contact-form-status[data-state="success"]{border-color:var(--primary)}
.contact-form-status[data-state="error"]{border-color:#dc3545}
.contact-form-status:focus{outline:2px solid var(--primary);outline-offset:3px}
.contact-form-status[hidden],.contact-honeypot[hidden]{display:none}
@media(max-width:1100px){.contact-layout{gap:42px}.contact-form-panel{padding:28px}.contact-field-row{grid-template-columns:1fr}.contact-intro h1{font-size:clamp(2.65rem,4.5vw,3.5rem)}}
@media(max-width:760px){.contact-page{padding:52px 0 64px}.contact-layout{grid-template-columns:1fr;gap:42px}.contact-intro{padding:0}.contact-intro h1{font-size:clamp(2.7rem,7vw,3.5rem);max-width:600px}.contact-description{max-width:570px;margin-top:22px}.contact-details{max-width:none;margin-top:30px}.contact-form-panel{padding:28px}.contact-field-row{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.contact-form-panel{padding:24px 20px}.contact-field-row{grid-template-columns:1fr}.contact-form-actions .primary-button{width:100%}.contact-intro h1{font-size:2.7rem}}
