.contact-page{background:#fff;min-height:calc(100vh - 68px);padding:clamp(7rem,11vw,10rem) 0 clamp(4.5rem,7vw,7rem)}.contact-page__body{display:grid;gap:clamp(1.5rem,3vw,3rem)}.contact-page__body>*,.contact-page__info-panel>*{min-width:0}.contact-form-shell,.contact-page__info-panel{border:1px solid rgba(15,15,16,.09);border-radius:20px;padding:clamp(1.6rem,2.3vw,2.2rem)}.contact-page__info-panel{display:grid;gap:2rem;grid-template-columns:1fr minmax(260px,.72fr)}.contact-page__lead{align-content:start;display:grid;gap:1rem}.contact-page__lead h1{font-size:clamp(2rem,3.2vw,3.2rem);line-height:.96;margin:0;max-width:11ch}.contact-page__lead>p:last-child{color:var(--muted);line-height:1.65;margin:0;max-width:38ch}.contact-page__locations{align-content:start;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.contact-page__locations article{border:1px solid rgba(15,15,16,.09);border-radius:16px;display:grid;gap:.65rem;padding:1.15rem 1.05rem}.contact-page__locations h2{font-size:1.25rem;line-height:1;margin:0}.contact-page__locations p{color:var(--muted);font-size:.9rem;line-height:1.4;margin:0}.contact-page__locations a{color:var(--cosmo-red);font-size:.9rem;font-weight:800;text-decoration:none}.contact-form{display:grid;gap:1.5rem}.contact-form h2{font-size:clamp(1.35rem,1.8vw,1.9rem);line-height:1;margin:0}.contact-form__grid{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.contact-form label{display:grid;gap:.5rem}.contact-form input,.contact-form select,.contact-form textarea{background:#fff;border:1px solid rgba(15,15,16,.14);border-radius:14px;color:var(--cosmo-ink);min-height:54px;padding:.75rem .9rem}.contact-form textarea{min-height:168px;resize:vertical}.contact-form__foot{align-items:end;display:flex;gap:1.25rem;justify-content:space-between}.contact-form__foot>span{color:var(--muted);font-size:.82rem;line-height:1.5;max-width:36ch}.contact-form__foot .button{min-width:190px;width:auto}@media (max-width:900px){.contact-page__info-panel{grid-template-columns:1fr}.contact-page__locations{grid-template-columns:1fr 1fr}}@media (max-width:560px){.contact-form-shell,.contact-page__info-panel{border-radius:24px;padding:1.25rem}.contact-form__grid,.contact-page__locations{grid-template-columns:1fr}.contact-form__foot{align-items:stretch;flex-direction:column}.contact-form__foot .button{width:100%}}
