.me-contact-page { --contact-ink:#14233b; --contact-muted:#536176; --contact-border:#dce3ec; color:var(--contact-ink); max-width:1240px; padding:24px 24px 64px; }
.me-contact-page * { box-sizing:border-box; }
.me-contact-page.container { max-width:1120px!important; }
.me-contact-shell { display:flex; gap:24px; align-items:start; }
.me-contact-main { flex:1; min-width:0; }
.me-contact-managed-sidebar { flex:0 0 220px; }
.me-contact-managed-sidebar>div { width:100%; }
.me-contact-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; align-items:center; color:var(--contact-muted); font-size:13px; margin:0 0 28px; }
.me-contact-page a { color:#725013; text-underline-offset:3px; overflow-wrap:anywhere; }
.me-contact-page a:hover { color:#49320a; }
.me-contact-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); gap:36px; align-items:start; }
.me-contact-details { min-width:0; }
.me-contact-card { min-width:0; padding:32px; background:#fff; border:1px solid var(--contact-border); border-radius:16px; }
.me-contact-card h2 { font-size:20px; font-weight:700; line-height:1.35; color:var(--contact-ink); margin:0 0 12px; letter-spacing:-.02em; }
.me-contact-card h3 { font-size:14px; line-height:1.5; font-weight:700; color:var(--contact-ink); margin:0 0 6px; }
.me-contact-card p,.me-contact-card address { font-size:14px; line-height:1.75; }
.me-contact-muted,.me-contact-card address { color:var(--contact-muted); }
.me-contact-support { padding:36px 30px; background:#091e35; border-color:#091e35; color:#f8fafc; }
.me-contact-support .me-contact-eyebrow { font-size:12px; letter-spacing:.13em; font-weight:700; color:#f8c337; margin:0 0 18px; }
.me-contact-support h2 { font-size:clamp(32px,3.1vw,44px); line-height:1.14; letter-spacing:-.035em; color:#fff; margin:0 0 24px; }
.me-contact-support .me-contact-intro { color:#e2e8f0; font-size:16px; line-height:1.65; margin:0 0 28px; }
.me-contact-channels { border-top:1px solid #526176; padding-top:12px; }
.me-contact-channel { display:flex; gap:18px; align-items:flex-start; padding:18px 0; text-decoration:none; color:#f8fafc!important; }
.me-contact-channel[href]:hover strong { text-decoration:underline; text-underline-offset:4px; }
.me-contact-icon { width:32px; flex:0 0 32px; color:#f8c337; font-size:28px; line-height:1.3; text-align:center; margin-top:2px; }
.me-contact-channel>span { flex:1; min-width:0; }
.me-contact-channel strong,.me-contact-channel>span>span { display:block; }
.me-contact-channel strong { font-size:15px; margin-bottom:5px; line-height:1.5; }
.me-contact-channel>span>span { font-size:16px; line-height:1.7; color:#e2e8f0; overflow-wrap:anywhere; }
.me-contact-form-card { border:0; border-radius:0; padding:28px 0 0; background:transparent; }
.me-contact-form-card h1 { font-size:clamp(32px,3.3vw,44px); line-height:1.2; letter-spacing:-.035em; font-weight:750; color:var(--contact-ink); margin:0 0 14px; }
.me-contact-form-card>p { margin:0 0 32px; font-size:16px; }
.me-contact-field-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.me-contact-field { min-width:0; margin-bottom:24px; }
.me-contact-field label,.me-contact-captcha label { display:block; color:var(--contact-ink); font-size:14px; font-weight:600; margin:0 0 8px; }
.me-contact-field label>span { color:#b42318; }
.me-contact-page .form-control { display:block; width:100%; min-height:48px; padding:12px 14px; background:#fff; border:1px solid #c7d0dd; border-radius:8px; font:inherit; font-size:15px; line-height:1.5; color:var(--contact-ink); box-shadow:none; }
.me-contact-page textarea.form-control { min-height:176px; resize:vertical; }
.me-contact-page .form-control:focus { border-color:#98701d; outline:3px solid #c5952c30; outline-offset:1px; }
.me-contact-help { color:var(--contact-muted); font-size:12px!important; margin:8px 0 0; }
.me-contact-captcha { background:#f4f7fa; border-radius:10px; padding:22px; margin-top:4px; }
.me-contact-captcha fieldset { margin:0; padding:0; border:0; min-width:0; }
.me-contact-captcha legend { float:none; width:auto; padding:0; font-size:15px; font-weight:700; border:0; margin-bottom:12px; }
.me-contact-captcha #input-captcha { margin-bottom:12px!important; }
.me-contact-captcha #captcha img { display:block; width:150px; height:35px; border-radius:4px; border:1px solid #b9c4d3; }
.me-contact-captcha .mb-3 { margin-bottom:0!important; }
.me-contact-form-footer { display:flex; flex-direction:column; gap:12px; align-items:stretch; margin-top:24px; }
.me-contact-form-footer p { margin:0; color:var(--contact-muted); font-size:12px; }
.me-contact-submit { display:flex; align-items:center; justify-content:center; position:relative; gap:24px; width:100%; min-height:48px; border:1px solid #dba400; border-radius:8px; background:#f5bc24; color:#14233b; padding:12px 44px; font-size:15px; font-weight:700; cursor:pointer; }
.me-contact-submit>i { position:absolute; right:20px; }
.me-contact-submit:hover { background:#edb114; }
.me-contact-page :is(a,button):focus-visible { outline:3px solid #916618; outline-offset:4px; }
.me-contact-support a:focus-visible { outline-color:#f8c337; }
.me-contact-submit:disabled { opacity:.65; cursor:wait; }
.me-contact-page .me-contact-error,.me-contact-page .invalid-feedback { font-size:13px; color:#a51d15; margin:6px 0 0; line-height:1.5; }
.me-contact-page .me-contact-error:not([hidden]),.me-contact-page .invalid-feedback:not(:empty) { display:block; }
.me-contact-page .is-invalid { border-color:#b42318; }
.me-contact-page [hidden] { display:none!important; }
.me-contact-status { padding:14px 16px; border-radius:10px; border:1px solid #e7a6a1; background:#fff4f2; color:#8c2119; margin-bottom:20px; font-size:14px; }
.me-contact-business-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:24px; }
.me-contact-locations { margin-top:32px; }
.me-contact-locations img { max-width:100%; height:auto; }
/* Correct the footer contrast on this page without changing other routes. */
body:has(#me-contact-page) { background:#fff; }
body:has(#me-contact-page) footer :is(p,.text-muted,.service-info,.service-description) { color:#cbd5e1; }
body:has(#me-contact-page) footer :is(h4,h5,h6) { color:#f8fafc; }
body:has(#me-contact-page) footer :is(.text-muted,.text-secondary) { color:#cbd5e1!important; }
@media(max-width:991px) { .me-contact-grid { grid-template-columns:minmax(0,1fr); gap:28px; } .me-contact-form-card { padding-top:0; } .me-contact-support h2 br { display:none; } }
@media(max-width:600px) { .me-contact-page { padding:20px 16px 32px; } .me-contact-breadcrumb { margin-bottom:20px; } .me-contact-card { padding:24px 20px; border-radius:14px; } .me-contact-form-card { padding:0; border-radius:0; } .me-contact-support h2 { font-size:32px; margin-bottom:16px; } .me-contact-support .me-contact-intro { margin-bottom:20px; } .me-contact-channel { padding:12px 0; } .me-contact-field-row,.me-contact-business-grid { grid-template-columns:1fr; gap:0; } .me-contact-business-grid { gap:16px; } .me-contact-captcha { padding:18px; } .me-contact-page .form-control { font-size:16px; } }
@media(max-width:767px) { .me-contact-shell { flex-direction:column; } .me-contact-managed-sidebar { flex-basis:auto; width:100%; } .me-contact-managed-sidebar>div { display:block!important; } .me-contact-main { width:100%; } }
