/* Contact page only. Shared headers, footers and navigation keep their design. */
.mx-contact { color:#101114; }
.mx-contact .wrap { max-width:1300px; }
.mx-contact-hero { padding:84px 0 56px; border-bottom:1px solid #dedfe2; }
.mx-contact .editorial-breadcrumb { margin:0 0 44px; }
.mx-contact-kicker { display:block; font:500 11px/1.5 var(--font,sans-serif); letter-spacing:.02em; color:#64666b; margin-bottom:18px; }
.mx-contact h1 { font:500 clamp(46px,5.2vw,76px)/1.02 var(--font-d,var(--font,sans-serif)); letter-spacing:-.055em; margin:0 0 26px; max-width:850px; }
.mx-contact-hero>p { max-width:570px; font-size:17px; line-height:1.65; color:#62646a; margin:0; }
.mx-contact .mx-contact-reading { max-width:none; width:100%; margin:0; padding:0; }
.mx-contact-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:clamp(50px,7vw,120px); padding:64px 0 76px; }
.mx-contact .editorial-section { margin:0; padding:0; border:0; scroll-margin-top:125px; }
.mx-contact h2 { font:500 clamp(26px,2.7vw,38px)/1.12 var(--font-d,var(--font,sans-serif)); letter-spacing:-.04em; margin:0 0 22px; }
.mx-contact .editorial-section>p { font-size:15px; line-height:1.7; color:#62646a; }
.mx-contact-direct>p { max-width:36ch; }
.mx-contact-method { border-top:1px solid #dedfe2; padding:18px 0; }
.mx-contact-method:first-of-type { margin-top:32px; }
.mx-contact-method>span { display:block; font-size:11px; color:#6b6e73; margin-bottom:8px; }
.mx-contact-method a { display:flex; gap:18px; justify-content:space-between; font-size:clamp(17px,1.8vw,23px); letter-spacing:-.02em; text-decoration:none; color:inherit; }
.mx-contact .mx-contact-note { font-size:12px; margin-top:22px; }
.mx-contact form { margin-top:26px; }
.mx-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 22px; }
.mx-contact label { display:block; font:500 12px/1.5 var(--font,sans-serif); margin:0 0 23px; }
.mx-contact label>span { font-weight:400; color:#7b7e84; }
.mx-contact :is(input,select,textarea) { display:block; box-sizing:border-box; width:100%; border:1px solid #d8dade; border-radius:0; background:#fff; color:#101114; padding:12px 13px; font:400 15px/1.6 var(--font,sans-serif); margin-top:8px; box-shadow:none; }
.mx-contact input { min-height:48px; }
.mx-contact textarea { resize:vertical; min-height:130px; }
.mx-contact :is(input,select,textarea):focus-visible { outline:2px solid #101114; outline-offset:2px; }
.navy-mode .mx-contact :is(input,select,textarea):focus-visible { outline-color:#1f4eaa; }
.mx-form-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.mx-form-bottom>p { font-size:11px; color:#71747b; line-height:1.6; max-width:220px; margin:0; }
.mx-contact .btn-pill { font:500 13px/1.4 var(--font,sans-serif); flex-shrink:0; }
.mx-contact-draft { border-top:1px solid #dedfe2; padding-top:25px; margin-top:30px; }
.mx-contact-draft[hidden] { display:none; }
.mx-contact-draft h3 { font:500 23px/1.2 var(--font-d,var(--font,sans-serif)); letter-spacing:-.03em; margin:0 0 16px; }
.mx-contact-draft p { font-size:13px; color:#62646a; }
.mx-contact-draft pre { white-space:pre-wrap; overflow-wrap:anywhere; font:400 13px/1.7 var(--font,sans-serif); padding:20px; background:#f6f6f7; margin:20px 0; }
.mx-draft-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.mx-contact-text-button { padding:8px 0; border:0; border-bottom:1px solid #b8bbc0; background:none; font:500 12px var(--font,sans-serif); cursor:pointer; color:inherit; }
.mx-contact-locations { border-top:1px solid #dedfe2; padding:58px 0; }
.mx-contact-section-title { margin-bottom:40px; }
.mx-location-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.mx-location-grid>.editorial-section { border-top:1px solid #dedfe2; padding-top:24px; }
.mx-location-grid h2 { font-size:27px; }
.mx-contact .mx-contact-brief { padding:48px 0 80px; max-width:700px; }
.mx-contact .v4-text-link { display:inline-flex; gap:12px; align-items:center; font-size:13px; color:inherit; text-decoration:none; }
@media(max-width:800px) { .mx-contact-hero { padding:48px 0 36px; } .mx-contact .editorial-breadcrumb { margin-bottom:30px; } .mx-contact-grid { grid-template-columns:1fr; gap:48px; padding:38px 0 48px; } .mx-contact h1 { font-size:clamp(42px,8vw,60px); } .mx-contact-direct>p { max-width:none; } .mx-contact-method { max-width:500px; } .mx-location-grid { gap:28px; } }
@media(max-width:500px) { .mx-form-grid,.mx-location-grid { grid-template-columns:1fr; } .mx-form-bottom { align-items:flex-start; flex-direction:column-reverse; } .mx-form-bottom>p { max-width:none; } .mx-contact :is(input,select,textarea) { font-size:16px; } .mx-contact-hero>p { font-size:16px; } .mx-contact .mx-contact-brief { padding-bottom:48px; } }

/* Refined contact layout: the enquiry starts beside the introduction. */
.mx-contact-hero { padding:42px 0 0; border:0; }
.mx-contact .editorial-breadcrumb { margin:0; }
.mx-contact-grid { padding:48px 0 72px; gap:clamp(60px,8vw,132px); grid-template-columns:1fr 1.25fr; }
.mx-contact-direct h1 { font-size:clamp(42px,4.7vw,64px); line-height:1.04; margin:0 0 25px; letter-spacing:-.05em; }
.mx-contact-direct>p { font-size:16px !important; max-width:32ch; }
.mx-contact-method:first-of-type { margin-top:44px; }
.mx-contact-method a { font-size:21px; }
.mx-contact .mx-contact-note { max-width:34ch; font-size:12px !important; margin-top:27px; }
.mx-contact-form-section h2 { font-size:32px; margin-bottom:13px; }
.mx-contact-form-section>p { font-size:13px !important; margin-bottom:30px; }
.mx-contact form { margin-top:0; }
.mx-contact label { color:#55585f; font-size:11px; margin-bottom:25px; }
.mx-contact :is(input,select,textarea) { border:0; border-bottom:1px solid #c9ccd1; padding:9px 0 12px; margin-top:2px; border-radius:0; background:transparent; min-height:44px; font-size:16px; color:#101114; transition:border-color .2s; }
.mx-contact :is(input,select,textarea)::placeholder { color:#8b8e94; opacity:1; }
.mx-contact :is(input,select,textarea):focus { outline:0; border-bottom-color:#101114; box-shadow:0 1px 0 #101114; }
.mx-contact textarea { min-height:96px; }
.mx-form-grid { gap:0 28px; }
.mx-form-bottom { margin-top:5px; }
.mx-form-bottom>p { font-size:10px; max-width:210px; }
.mx-contact .mx-contact-draft { border-top:1px solid #dedfe2; }
@media(min-width:1000px) { .mx-contact-direct { align-self:start; position:sticky; top:124px; } }
@media(max-width:800px) { .mx-contact-hero { padding-top:28px; } .mx-contact-grid { padding-top:34px; grid-template-columns:1fr; gap:46px; } .mx-contact-direct h1 { font-size:50px; } .mx-contact-direct>p { max-width:44ch; } .mx-contact-method:first-of-type { margin-top:30px; } .mx-contact-form-section { border-top:1px solid #dedfe2 !important; padding-top:32px !important; } }
@media(max-width:500px) { .mx-contact-direct h1 { font-size:44px; } .mx-contact-form-section h2 { font-size:30px; } .mx-contact label { margin-bottom:22px; } .mx-form-grid { grid-template-columns:1fr 1fr; gap:0 18px; } .mx-contact-method a { font-size:20px; } }
@media(prefers-reduced-motion:reduce) { .mx-contact :is(input,select,textarea) { transition:none; } }

/* Keep form helper copy compact inside the editorial reading styles. */
.mx-contact .mx-contact-reading .mx-form-bottom>p { font-size:11px; line-height:1.6; margin:0; }
.mx-contact .mx-contact-reading .mx-contact-draft p { font-size:13px; line-height:1.7; }

/* Submission feedback retains the existing contact layout. */
.mx-contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.mx-contact .mx-contact-status { font-size:13px; line-height:1.65; margin:18px 0 0; min-height:22px; overflow-wrap:anywhere; }
.mx-contact .mx-contact-status[data-state="error"] { color:#9b2626; }
.mx-contact .mx-contact-status[data-state="success"] { color:#244c39; }
.mx-contact [aria-busy="true"] [type="submit"] { opacity:.65; cursor:wait; }

/* A quieter form surface and clearer contact destinations. */
.mx-contact { --contact-accent:#101114; --contact-line:#dedfe2; }
.navy-mode .mx-contact { --contact-accent:#1f4eaa; }
.mx-contact-grid { align-items:start; gap:clamp(40px,5.5vw,88px); padding-bottom:88px; }
.mx-contact-direct { padding-top:22px !important; }
.mx-contact-direct h1 { max-width:9em; font-size:clamp(44px,5.1vw,68px); }
.mx-contact-direct>p { max-width:36ch; }
.mx-contact-method { padding:20px 0; }
.mx-contact-method a { align-items:center; gap:12px; }
.mx-contact-method a>span[aria-hidden] { display:grid; place-items:center; flex:0 0 36px; height:36px; border:1px solid var(--contact-line); border-radius:50%; font-size:19px; transition:background .2s,color .2s,border-color .2s; }
.mx-contact-method a:is(:hover,:focus-visible)>span[aria-hidden] { background:var(--contact-accent); border-color:var(--contact-accent); color:#fff; }
.mx-contact .mx-contact-form-section { background:#f5f5f5; border:1px solid #e7e7e8; border-radius:18px; padding:clamp(24px,3vw,42px); }
.mx-contact-form-section h2 { font-size:clamp(30px,2.8vw,38px); }
.mx-contact-form-section>p { max-width:46ch; line-height:1.7; }
.mx-contact .mx-contact-form-section .mx-contact-kicker { margin-bottom:18px; }
.mx-contact label { color:#3e4147; font-size:12px; line-height:1.5; margin-bottom:22px; }
.mx-contact label>span { font-size:11px; color:#73767c; }
.mx-contact :is(input,select,textarea) { background:#fff; border:1px solid #dcdde0; border-radius:7px; padding:12px 13px; margin-top:8px; min-height:48px; font-size:15px; transition:border-color .2s,box-shadow .2s; }
.mx-contact :is(input,select,textarea)::placeholder { color:#797d84; }
.mx-contact :is(input,select,textarea):focus { outline:0; border-color:var(--contact-accent); box-shadow:0 0 0 1px var(--contact-accent); }
.mx-contact select { padding-right:28px; }
.mx-contact textarea { min-height:132px; }
.mx-form-grid { gap:0 20px; }
.mx-form-bottom { gap:24px; margin-top:8px; }
.mx-contact .mx-form-bottom .btn-pill { min-height:48px; padding:14px 22px; }
.mx-contact .mx-contact-status { margin-top:16px; }
.mx-contact .mx-contact-status:empty { display:none; }
.mx-form-feedback { display:grid; flex:1 1 0; min-width:0; max-width:240px; min-height:6.4em; font-size:12px; line-height:1.6; }
.mx-contact .mx-contact-reading .mx-form-feedback>p { grid-area:1 / 1; align-self:start; margin:0; font-size:12px; line-height:1.6; }
.mx-contact .mx-form-feedback #contactNote { color:#71747b; font-size:11px; }
.mx-form-feedback [hidden] { display:none !important; }
.mx-contact-announcement { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.mx-contact-word { opacity:1; transition:opacity .14s ease-out; }
.mx-contact-word:last-child { white-space:nowrap; }
.mx-contact-status:focus { outline:none; }
#footer .v3-footer-intro { scroll-margin-top:112px; }
#footer.v3-clean-footer .ft-cols { border-top:1px solid var(--hair); }
.mx-contact-status.is-revealing .mx-contact-word { opacity:0; }
.mx-contact-status.is-revealing .mx-contact-word.is-visible { opacity:1; }
.mx-contact-locations { padding:64px 0; }
.mx-contact-section-title h2 { font-size:clamp(32px,3.4vw,46px); max-width:14em; }
.mx-location-grid { gap:24px; }
.mx-contact .mx-location-grid>.editorial-section { position:relative; border:1px solid var(--contact-line); border-radius:16px; padding:32px; }
.mx-location-grid .mx-contact-kicker { padding-right:66px; }
.mx-location-grid h2 { font-size:clamp(24px,2.4vw,32px); margin-bottom:16px; }
.mx-location-grid .v4-text-link { margin-top:16px; }
.mx-location-mark { position:absolute; top:25px; right:28px; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#f3f3f4; color:var(--contact-accent); font-size:12px; font-weight:700; letter-spacing:.02em; }
.mx-contact .mx-contact-brief { max-width:none; padding:48px 0 80px; border-top:1px solid var(--contact-line); }
.mx-contact-brief>p { max-width:56ch; }
.mx-contact-brief .editorial-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; padding:0; margin:32px 0; counter-reset:brief; }
.mx-contact-brief .editorial-list li { margin:0; padding:0; font-size:14px; line-height:1.7; counter-increment:brief; }
.mx-contact-brief .editorial-list li::before { content:'0' counter(brief); display:block; position:static; width:auto; height:auto; background:none; border:0; color:var(--contact-accent); font-size:12px; font-weight:600; line-height:1.5; margin-bottom:14px; }
@media(max-width:1000px) and (min-width:801px) {
  .mx-contact-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr); gap:32px; }
  .mx-form-grid { grid-template-columns:1fr; }
  .mx-form-bottom { flex-direction:column-reverse; align-items:flex-start; }
  .mx-form-feedback { flex:none; max-width:none; width:100%; }
}
@media(max-width:800px) {
  .mx-contact-grid { gap:40px; padding-bottom:56px; }
  .mx-contact-direct { padding-top:0 !important; }
  .mx-contact-direct h1 { font-size:clamp(42px,8vw,60px); max-width:none; }
  .mx-contact .mx-contact-form-section { border:1px solid #e7e7e8 !important; padding:28px !important; }
  .mx-contact-locations { padding:48px 0; }
  .mx-contact .mx-location-grid>.editorial-section { padding:26px; }
  .mx-contact .mx-contact-brief { padding:40px 0 56px; }
  .mx-contact-brief .editorial-list { gap:22px; }
}
@media(max-width:500px) {
  .mx-contact .mx-contact-form-section { padding:24px 20px !important; border-radius:14px; }
  .mx-contact-form-section h2 { font-size:30px; }
  .mx-contact label { margin-bottom:20px; }
  .mx-form-grid { grid-template-columns:1fr; }
  .mx-contact :is(input,select,textarea) { font-size:16px; }
  .mx-form-bottom { gap:18px; }
  .mx-form-feedback { flex:none; max-width:none; width:100%; min-height:4.8em; }
  .mx-form-bottom .btn-pill { width:100%; justify-content:space-between; }
  .mx-location-grid { gap:18px; }
  .mx-location-mark { top:20px; right:22px; width:38px; height:38px; }
  .mx-location-grid h2 { max-width:12em; }
  .mx-contact-brief .editorial-list { grid-template-columns:1fr; gap:20px; margin:28px 0; }
  .mx-contact-brief .editorial-list li { display:grid; grid-template-columns:24px 1fr; gap:14px; }
  .mx-contact-brief .editorial-list li::before { margin:3px 0 0; }
}
@media(prefers-reduced-motion:reduce) {
  .mx-contact :is(input,select,textarea),.mx-contact-method a>span[aria-hidden],.mx-contact-word { transition:none; }
}
