.op-contact-page {
    .op-contact-intro { padding:clamp(3rem,6vw,5rem) 1.5rem 0; text-align:center; max-inline-size:58rem; margin-inline:auto;
        h1 { font-size:clamp(2.5rem,5vw,4.5rem); font-weight:400; line-height:1.15; letter-spacing:.06em; margin:0 0 2rem; }
        p { margin:0; font-size:.95rem; } a { color:var(--op-clay); }
    }
    .op-inquiry { max-inline-size:43rem; inline-size:auto; box-shadow:none; margin:2.5rem auto 4rem; padding:0 1.5rem;
        .op-inquiry-intro h2 { font-size:1.5rem; margin-block-end:1.5rem; }
        input:not([type=hidden]):not([type=checkbox]),textarea,select { background:white; font:inherit; border:1px solid #aaa; border-radius:.15rem; padding:.65rem .85rem; color:#242424; inline-size:100%; min-inline-size:0; margin-block-start:.45rem; }
        select { display:block; }
        .op-contact-consent { font-size:.8rem; color:#626262; p { margin:0 0 1rem; } }
        .op-consent-option { display:flex; align-items:start; gap:.75rem; font-size:.85rem; margin-block-end:1rem; input { inline-size:1.15em; block-size:1.15em; padding:0; margin:.2em 0 0; flex-shrink:0; accent-color:var(--op-clay); } }
        button { background:var(--op-clay); color:white; &:hover { background:#87351d; } }
    }
}
.op-contact-details { max-inline-size:70rem; padding:0 1.5rem 5rem; margin-inline:auto;
    >h2 { text-align:center; }
    .op-contact-methods { display:grid; gap:2rem; padding:2rem 0 3rem; text-align:center;
        >div { min-inline-size:0; }
        h3 { font-size:.8rem; font-weight:400; text-transform:uppercase; letter-spacing:.12em; color:#626262; margin:0 0 .75rem; }
        a { overflow-wrap:anywhere; } address { font-style:normal; margin-block-end:.4rem; }
    }
    .op-office-map { display:block; inline-size:100%; aspect-ratio:1; border:0; background:#e7e4dc; }
}
@media (min-width:640px) {
    .op-contact-details .op-office-map { aspect-ratio:2/1; }
}
@media (min-width:900px) {
    .op-contact-details .op-contact-methods { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
