.contact-page{max-width:1200px;margin:0 auto;padding:clamp(3.5rem,8vw,6rem) clamp(1.25rem,4vw,3rem);display:grid;grid-template-columns:1fr;gap:clamp(2.5rem,6vw,4rem);min-height:70vh}@media (min-width:900px){.contact-page{grid-template-columns:1fr 1.1fr;align-items:start}}.contact-page__info{position:sticky;top:6rem}.contact-page__eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--navy-text);font-weight:700;margin:0 0 .9rem}.contact-page__headline{font-size:clamp(2.1rem,4.5vw,3rem);line-height:1.1;margin:0 0 1.1rem;text-wrap:balance}.contact-page__sub{color:var(--muted);line-height:1.6;max-width:42ch;margin:0 0 2.5rem}.contact-page__nap{padding-top:1.75rem;border-top:1px solid var(--line)}.contact-page__nap-label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin:0 0 .6rem}.contact-page__nap address{font-style:normal;color:var(--muted);line-height:1.7}.contact-page__form{background:var(--surface);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:clamp(1.75rem,4vw,2.75rem)}.contact-page__form-title{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin:0 0 1.75rem}.contact-form{display:grid;grid-template-columns:1fr;gap:0 1.5rem}@media (min-width:560px){.contact-form{grid-template-columns:1fr 1fr}}.contact-form__field--full{grid-column:1/-1}.contact-form__group-title{font-family:inherit;font-size:.95rem;font-weight:600;color:var(--navy-text);margin:2rem 0 1rem}.contact-form__group-title:first-child{margin-top:0}.contact-form__field{margin-bottom:1.1rem}.contact-form input,.contact-form textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);color:var(--ink);font-family:inherit;font-size:.95rem;padding:.6rem .1rem;transition:border-color .15s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-bottom-color:var(--navy-bright)}.contact-form textarea{resize:vertical;min-height:100px}.contact-form .btn{margin-top:1.5rem}.contact-form__error{color:var(--danger);font-size:.85rem;margin:0 0 1rem}.contact-form__sent{text-align:center;padding:2.5rem 1rem}.contact-form__sent h3{font-family:var(--font-display),Georgia,serif;font-size:1.5rem;margin:0 0 .75rem}.contact-form__sent p{color:var(--muted);line-height:1.6}