.contact-page { --contact-navy:#102a43; --contact-red:#c62828; color:#253b50; font-family:"Open Sans",sans-serif; }
.contact-page .contact_section { background:#f6f8fa; padding:64px 0 80px; }
.contact-page .contact-intro { max-width:720px; margin-bottom:36px; }
.contact-page .contact-intro .eyebrow { color:var(--contact-red); font-size:13px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:10px; }
.contact-page .contact-intro h1 { font-size:clamp(30px,4vw,42px); font-weight:700; line-height:1.2; color:var(--contact-navy); margin-bottom:14px; }
.contact-page .contact-intro h1 span { color:var(--contact-red); }
.contact-page .contact-intro p { font-size:16px; line-height:1.75; margin:0; }
.contact-page .contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:28px; align-items:start; }
.contact-page .contact-card { background:white; border:1px solid #dfe6ed; border-radius:14px; padding:28px; box-shadow:0 6px 24px #102a4308; }
.contact-page .contact-card h2 { font-size:23px; font-weight:700; color:var(--contact-navy); margin:0 0 10px; line-height:1.4; }
.contact-page .contact-card h3 { font-size:21px; font-weight:700; line-height:1.4; color:var(--contact-navy); margin:12px 0 20px; }
.contact-page .contact-form-intro { font-size:14px; line-height:1.65; margin-bottom:24px; }
.contact-page .field { margin-bottom:18px; }
.contact-page label { display:block; font-size:14px; font-weight:600; margin:0 0 7px; color:var(--contact-navy); }
.contact-page .field input, .contact-page .field textarea { display:block; width:100%; min-width:0; border:1px solid #c7d2dd; border-radius:7px; padding:12px 14px; color:var(--contact-navy); font:inherit; font-size:15px; background:white; box-shadow:none; margin:0; height:auto; }
.contact-page .field textarea { min-height:150px; resize:vertical; }
.contact-page .field input:focus, .contact-page .field textarea:focus { outline:3px solid #c6282825; border-color:var(--contact-red); }
.contact-page .contact-submit { background:var(--contact-red); border:0; border-radius:7px; color:white; padding:13px 22px; font-family:inherit;font-size:14px;font-weight:700;line-height:1.5; cursor:pointer; }
.contact-page .contact-submit:hover { background:#a51f1f; }
.contact-page .contact-form-note { font-size:13px; line-height:1.6; color:#56697b; margin:14px 0 0; }
.contact-page .contact-businesses { display:grid; gap:22px; }
.contact-page .contact-tag { display:inline-block; background:#fff0ef; color:#a51f1f; padding:6px 10px; border-radius:5px; font-size:12px; font-weight:700; letter-spacing:.8px; }
.contact-page .contact-details { margin:0; }
.contact-page .contact-row { display:grid; grid-template-columns:90px minmax(0,1fr); gap:14px; padding:13px 0; border-top:1px solid #edf0f4; font-size:14px; line-height:1.65; }
.contact-page dt { color:#52667b; font-weight:600; } .contact-page dd { margin:0; overflow-wrap:anywhere; }
.contact-page .contact-card a { color:#a51f1f; text-decoration:none; } .contact-page .contact-card a:hover { text-decoration:underline; }
.contact-page .contact-card a:focus-visible,.contact-page .contact-submit:focus-visible { outline:3px solid #c62828; outline-offset:3px; }
@media(max-width:991px) { .contact-page .contact-grid { grid-template-columns:1fr; } }
@media(max-width:575px) { .contact-page .contact_section{padding:38px 0 48px;} .contact-page .contact-card{padding:22px 18px;} .contact-page .contact-row{grid-template-columns:76px minmax(0,1fr);gap:10px;} }
.contact-page .shared-office address{font-style:normal;line-height:1.8;margin-bottom:16px}.contact-page .contact-social{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.contact-page .contact-social a{display:flex;align-items:center;gap:8px;background:#fff0ef;padding:10px 14px;border-radius:7px;font-size:14px}.contact-page .contact-social i{font-size:20px}.enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-page .enquiry-status{font-size:14px;margin:14px 0 0;line-height:1.7}.contact-page .contact-submit:disabled{opacity:.65;cursor:wait}
