#basemsp-accessible-homepage.bm-contact-page { overflow:hidden; color:var(--bm-body-on-light); background:#fff; font-family:"Manrope","Segoe UI",sans-serif; }
#basemsp-accessible-homepage.bm-contact-page * { box-sizing:border-box; }
#basemsp-accessible-homepage .bm-shell { width:min(1180px,calc(100% - 48px)); margin:0 auto; }

#basemsp-accessible-homepage .bm-contact-top { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:var(--bm-deep-blue); }
#basemsp-accessible-homepage .bm-contact-top::before { content:""; position:absolute; z-index:-1; top:-315px; right:-170px; width:690px; height:690px; border-radius:50%; background:radial-gradient(circle,rgba(1,159,219,.22),transparent 68%); pointer-events:none; }
#basemsp-accessible-homepage .bm-contact-hero { padding:31px 0 54px; text-align:center; }
#basemsp-accessible-homepage .bm-contact-breadcrumb { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:27px; color:#9fb3ba; font-size:14px; line-height:1.5; }
#basemsp-accessible-homepage .bm-contact-breadcrumb a { color:#fff; text-decoration:none; }
#basemsp-accessible-homepage .bm-contact-breadcrumb a:hover,#basemsp-accessible-homepage .bm-contact-breadcrumb a:focus-visible { color:var(--bm-accent-on-dark); }
#basemsp-accessible-homepage .bm-contact-hero-copy { max-width:1010px; margin:0 auto; text-align:center; }
#basemsp-accessible-homepage .bm-contact-hero h1 { max-width:980px; margin:0 auto; color:#fff; font-size:clamp(42px,4.8vw,64px); font-weight:500; line-height:1.05; letter-spacing:-.048em; }
#basemsp-accessible-homepage .bm-contact-hero h1 em { color:var(--bm-primary-blue); font-style:normal; }
#basemsp-accessible-homepage .bm-contact-hero .bm-lead { max-width:830px; margin:27px auto 0; color:var(--bm-body-on-dark); font-size:18px; line-height:1.72; }
#basemsp-accessible-homepage .bm-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:23px; margin-top:34px; }
#basemsp-accessible-homepage .bm-button { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:50px; padding:14px 21px; overflow:hidden; color:#fff; background:var(--bm-primary-blue); border:0; border-radius:999px; box-shadow:0 14px 38px rgba(1,159,219,.24),inset 0 1px 0 rgba(255,255,255,.28); font:inherit; font-weight:500; text-decoration:none; cursor:pointer; transform:none; transition:background-color .25s ease,box-shadow .25s ease; }
#basemsp-accessible-homepage .bm-button::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent); transform:translateX(-115%) skewX(-20deg); transition:transform .6s ease; }
#basemsp-accessible-homepage .bm-button:hover,#basemsp-accessible-homepage .bm-button:focus-visible { color:#fff; background:var(--bm-link-on-light); box-shadow:0 16px 42px rgba(1,159,219,.3),inset 0 1px 0 rgba(255,255,255,.28); transform:none; }
#basemsp-accessible-homepage .bm-button:hover::before,#basemsp-accessible-homepage .bm-button:focus-visible::before { transform:translateX(115%) skewX(-20deg); }
#basemsp-accessible-homepage .bm-text-link { display:inline-flex; align-items:center; gap:9px; color:#fff; text-decoration:none; transform:none; transition:color .22s ease; }
#basemsp-accessible-homepage .bm-text-link:hover,#basemsp-accessible-homepage .bm-text-link:focus-visible { color:var(--bm-accent-on-dark); transform:none; }
#basemsp-accessible-homepage .bm-contact-signals { display:flex; justify-content:center; flex-wrap:wrap; gap:10px 24px; margin-top:38px; padding-top:21px; border-top:1px solid rgba(255,255,255,.12); color:#a9bbc1; font-size:14px; line-height:1.5; }
#basemsp-accessible-homepage .bm-contact-signals span { display:inline-flex; align-items:center; gap:9px; }
#basemsp-accessible-homepage .bm-contact-signals span::before { content:""; width:5px; height:5px; border-radius:50%; background:var(--bm-primary-blue); box-shadow:0 0 10px rgba(1,159,219,.75); }

#basemsp-accessible-homepage .bm-eyebrow { margin:0 0 18px; color:var(--bm-link-on-light); font-size:12px; font-weight:500; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
#basemsp-accessible-homepage .bm-contact-enquiry-section { padding:82px 0 112px; background:#fff; }
#basemsp-accessible-homepage .bm-contact-enquiry-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); align-items:start; gap:48px; }
#basemsp-accessible-homepage .bm-contact-form-panel,#basemsp-accessible-homepage .bm-contact-details { padding:44px; border:1px solid #dce8ed; border-radius:25px; background:#fff; box-shadow:0 20px 55px rgba(5,30,41,.08); }
#basemsp-accessible-homepage .bm-contact-form-panel h2,#basemsp-accessible-homepage .bm-contact-details h2,#basemsp-accessible-homepage .bm-contact-section-heading h2 { margin:0; color:var(--bm-heading-on-light); font-size:clamp(34px,4vw,50px); font-weight:500; line-height:1.1; letter-spacing:-.04em; }
#basemsp-accessible-homepage .bm-contact-form-panel>p:not(.bm-eyebrow),#basemsp-accessible-homepage .bm-contact-details>p:not(.bm-eyebrow),#basemsp-accessible-homepage .bm-contact-section-heading>p:not(.bm-eyebrow) { margin:21px 0 0; font-size:16px; line-height:1.72; }

#basemsp-accessible-homepage .bm-contact-form { display:grid; gap:22px; margin-top:34px; }
#basemsp-accessible-homepage .bm-contact-field-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
#basemsp-accessible-homepage .bm-contact-field { display:grid; gap:9px; }
#basemsp-accessible-homepage .bm-contact-field label { color:var(--bm-heading-on-light); font-size:14px; font-weight:500; line-height:1.45; }
#basemsp-accessible-homepage .bm-contact-field label>span { margin-left:5px; color:#708991; font-size:12px; font-weight:400; }
#basemsp-accessible-homepage .bm-contact-field input,#basemsp-accessible-homepage .bm-contact-field select,#basemsp-accessible-homepage .bm-contact-field textarea { width:100%; min-height:50px; margin:0; padding:13px 15px; color:var(--bm-heading-on-light); background:#f7fafb; border:1px solid #cddde3; border-radius:11px; font:inherit; font-size:16px; line-height:1.45; outline:0; transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease; }
#basemsp-accessible-homepage .bm-contact-field textarea { min-height:148px; resize:vertical; }
#basemsp-accessible-homepage .bm-contact-field input:focus,#basemsp-accessible-homepage .bm-contact-field select:focus,#basemsp-accessible-homepage .bm-contact-field textarea:focus { background:#fff; border-color:var(--bm-primary-blue); box-shadow:0 0 0 3px rgba(1,159,219,.13); }
#basemsp-accessible-homepage .bm-contact-consent { display:grid; grid-template-columns:20px 1fr; align-items:start; gap:11px; color:var(--bm-body-on-light); font-size:13px; line-height:1.62; cursor:pointer; }
#basemsp-accessible-homepage .bm-contact-consent input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--bm-primary-blue); }
#basemsp-accessible-homepage .bm-contact-consent a { color:var(--bm-link-on-light); text-underline-offset:3px; }
#basemsp-accessible-homepage .bm-contact-submit { justify-self:start; }
#basemsp-accessible-homepage .bm-contact-required { margin:-10px 0 0; color:#708991; font-size:12px; }
#basemsp-accessible-homepage .bm-contact-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
#basemsp-accessible-homepage .bm-contact-notice { display:grid; gap:5px; margin-top:28px; padding:17px 18px; border-radius:12px; font-size:14px; line-height:1.55; }
#basemsp-accessible-homepage .bm-contact-notice-success { color:#164e37; background:#ecfdf5; border:1px solid #a7f3d0; }
#basemsp-accessible-homepage .bm-contact-notice-error { color:#7f1d1d; background:#fef2f2; border:1px solid #fecaca; }
#basemsp-accessible-homepage .bm-contact-notice a { color:inherit; }

#basemsp-accessible-homepage .bm-contact-details { position:sticky; top:128px; color:#fff; border-color:rgba(255,255,255,.08); background:radial-gradient(circle at 88% 0%,rgba(53,202,238,.18),transparent 35%),var(--bm-deep-blue); box-shadow:0 22px 58px rgba(5,30,41,.16); }
#basemsp-accessible-homepage .bm-contact-details .bm-eyebrow { color:var(--bm-accent-on-dark); }
#basemsp-accessible-homepage .bm-contact-details h2 { color:#fff; }
#basemsp-accessible-homepage .bm-contact-details>p:not(.bm-eyebrow) { color:var(--bm-body-on-dark); }
#basemsp-accessible-homepage .bm-contact-detail-list { display:grid; gap:0; margin-top:31px; border-top:1px solid rgba(255,255,255,.1); }
#basemsp-accessible-homepage .bm-contact-detail-list>a,#basemsp-accessible-homepage .bm-contact-detail-list>div { display:grid; grid-template-columns:46px 1fr; align-items:start; gap:15px; padding:21px 0; color:#fff; border-bottom:1px solid rgba(255,255,255,.1); text-decoration:none; transform:none; transition:color .22s ease; }
#basemsp-accessible-homepage .bm-contact-detail-list>a:hover,#basemsp-accessible-homepage .bm-contact-detail-list>a:focus-visible { color:var(--bm-accent-on-dark); transform:none; }
#basemsp-accessible-homepage .bm-contact-detail-icon,#basemsp-accessible-homepage .bm-contact-card-icon { display:inline-flex; flex:0 0 46px; align-items:center; justify-content:center; width:46px; height:46px; color:#fff; background:linear-gradient(145deg,#16bfea,var(--bm-primary-blue)); border-radius:50%; box-shadow:0 12px 26px rgba(1,159,219,.22),inset 0 1px 0 rgba(255,255,255,.32); }
#basemsp-accessible-homepage .bm-contact-detail-icon svg,#basemsp-accessible-homepage .bm-contact-card-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
#basemsp-accessible-homepage .bm-contact-detail-list small { display:block; margin-bottom:5px; color:#a9bbc1; font-size:12px; line-height:1.4; }
#basemsp-accessible-homepage .bm-contact-detail-list strong { display:block; color:inherit; font-size:15px; font-weight:500; line-height:1.55; overflow-wrap:anywhere; }
#basemsp-accessible-homepage .bm-contact-response-note { margin-top:28px; padding:23px; border:1px solid rgba(103,216,243,.18); border-radius:16px; background:rgba(255,255,255,.045); }
#basemsp-accessible-homepage .bm-contact-response-note strong { color:#fff; font-size:16px; }
#basemsp-accessible-homepage .bm-contact-response-note p { margin:10px 0 0; color:var(--bm-body-on-dark); font-size:14px; line-height:1.68; }

#basemsp-accessible-homepage .bm-contact-routes-section { padding:112px 0; background:#f3f8fa; }
#basemsp-accessible-homepage .bm-contact-section-heading { max-width:850px; margin:0 auto; text-align:center; }
#basemsp-accessible-homepage .bm-contact-route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:50px; }
#basemsp-accessible-homepage .bm-contact-route-grid article { display:flex; flex-direction:column; min-height:300px; padding:28px; border:1px solid #dce8ed; border-radius:21px; background:#fff; box-shadow:0 15px 38px rgba(5,30,41,.05); }
#basemsp-accessible-homepage .bm-contact-card-heading { display:grid; grid-template-columns:46px 1fr; align-items:start; gap:15px; }
#basemsp-accessible-homepage .bm-contact-card-heading h3 { align-self:center; margin:0; color:var(--bm-heading-on-light); font-size:21px; font-weight:500; line-height:1.3; }
#basemsp-accessible-homepage .bm-contact-route-grid article>p { flex:1; margin:23px 0 0; font-size:15px; line-height:1.72; }
#basemsp-accessible-homepage .bm-contact-route-grid article>a { display:inline-flex; align-items:center; gap:8px; margin-top:25px; color:var(--bm-link-on-light); font-size:14px; font-weight:500; text-decoration:none; transform:none; transition:color .22s ease; }
#basemsp-accessible-homepage .bm-contact-route-grid article>a:hover,#basemsp-accessible-homepage .bm-contact-route-grid article>a:focus-visible { color:var(--bm-heading-on-light); transform:none; }

#basemsp-accessible-homepage .bm-reveal-ready { opacity:0; transform:translateY(24px); transition:opacity .62s ease,transform .62s ease; }
#basemsp-accessible-homepage .bm-reveal-ready.bm-reveal-visible { opacity:1; transform:none; }

@media (max-width:940px) {
  #basemsp-accessible-homepage .bm-contact-enquiry-layout { grid-template-columns:1fr; gap:34px; }
  #basemsp-accessible-homepage .bm-contact-details { position:static; }
  #basemsp-accessible-homepage .bm-contact-route-grid { grid-template-columns:1fr; }
  #basemsp-accessible-homepage .bm-contact-route-grid article { min-height:0; }
}

@media (max-width:760px) {
  #basemsp-accessible-homepage .bm-shell { width:min(100% - 32px,1180px); }
  #basemsp-accessible-homepage .bm-contact-hero { padding:23px 0 43px; }
  #basemsp-accessible-homepage .bm-contact-breadcrumb { margin-bottom:20px; }
  #basemsp-accessible-homepage .bm-contact-hero h1 { font-size:clamp(39px,11vw,54px); line-height:1.07; letter-spacing:-.043em; }
  #basemsp-accessible-homepage .bm-contact-hero .bm-lead { font-size:16px; line-height:1.7; }
  #basemsp-accessible-homepage .bm-contact-signals { display:none; }
  #basemsp-accessible-homepage .bm-contact-enquiry-section { padding:62px 0 78px; }
  #basemsp-accessible-homepage .bm-contact-routes-section { padding:78px 0; }
  #basemsp-accessible-homepage .bm-contact-form-panel,#basemsp-accessible-homepage .bm-contact-details { padding:27px 22px; border-radius:20px; }
  #basemsp-accessible-homepage .bm-contact-form-panel>p,#basemsp-accessible-homepage .bm-contact-details>p,#basemsp-accessible-homepage .bm-contact-section-heading>p { text-align:center; }
  #basemsp-accessible-homepage .bm-contact-form-panel>.bm-eyebrow,#basemsp-accessible-homepage .bm-contact-details>.bm-eyebrow { text-align:center; }
  #basemsp-accessible-homepage .bm-contact-form-panel h2,#basemsp-accessible-homepage .bm-contact-details h2 { text-align:center; }
  #basemsp-accessible-homepage .bm-contact-field-row { grid-template-columns:1fr; gap:22px; }
  #basemsp-accessible-homepage .bm-contact-submit { justify-self:stretch; }
  #basemsp-accessible-homepage .bm-contact-route-grid { display:flex; gap:16px; margin-right:-16px; padding-right:16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; }
  #basemsp-accessible-homepage .bm-contact-route-grid::-webkit-scrollbar { display:none; }
  #basemsp-accessible-homepage .bm-contact-route-grid article { flex:0 0 min(86%,350px); text-align:left; scroll-snap-align:start; }
}

@media (prefers-reduced-motion:reduce) {
  #basemsp-accessible-homepage .bm-button::before { transition:none; }
  #basemsp-accessible-homepage .bm-reveal-ready { opacity:1; transform:none; transition:none; }
}
