.contact-layout { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 8vw, 7rem); }
.contact-details { padding: 2rem; background: var(--surface); }
.contact-details h2, .contact-form h2 { font-size: 1.8rem; }
.contact-details > p { color: var(--muted); }
.contact-details dl { margin: 2rem 0 0; }
.contact-details dl div { padding: .9rem 0; border-top: 1px solid var(--line); }
.contact-details dt { color: var(--muted); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.contact-details dd { margin: .2rem 0 0; }
.contact-form { display: grid; gap: 1rem; }
.contact-form .button { justify-self: start; }
@media (max-width: 720px) { .contact-layout { grid-template-columns: 1fr; }.contact-details { padding: 1.5rem; } }
