#basemsp-accessible-homepage.bm-location-page {
  --bm-location-navy: #051e29;
  --bm-location-ink: #082f3e;
  --bm-location-blue: #019fdb;
  --bm-location-link: #007eae;
  --bm-location-muted: #496871;
  --bm-location-line: #d8e5e9;
}

#basemsp-accessible-homepage .bm-location-top { color: #fff; }
#basemsp-accessible-homepage .bm-location-hero { min-height:650px; padding:28px 0 74px; }
#basemsp-accessible-homepage .bm-location-breadcrumb { display:flex; align-items:center; gap:10px; margin-bottom:52px; color:#91acb5; font-size:12px; }
#basemsp-accessible-homepage .bm-location-breadcrumb a { color:#d2e1e5; text-decoration:none; }
#basemsp-accessible-homepage .bm-location-breadcrumb a:hover,
#basemsp-accessible-homepage .bm-location-breadcrumb a:focus-visible { color:#019fdb; }
#basemsp-accessible-homepage .bm-location-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:100px; align-items:end; }
#basemsp-accessible-homepage .bm-location-hero-copy { max-width:850px; }
#basemsp-accessible-homepage .bm-location-place { display:flex; align-items:center; gap:10px; margin:0 0 20px; color:#6ed0f1; font-size:12px; font-weight:500; letter-spacing:.11em; text-transform:uppercase; }
#basemsp-accessible-homepage .bm-location-place span { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:1px solid rgba(110,208,241,.42); border-radius:50%; }
#basemsp-accessible-homepage .bm-location-place svg { width:16px; height:16px; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#basemsp-accessible-homepage .bm-location-hero h1 { max-width:850px; margin:0; color:#fff; font-size:clamp(50px,5.7vw,79px); font-weight:400; line-height:1.02; letter-spacing:-.055em; }
#basemsp-accessible-homepage .bm-location-hero h1 em { color:var(--bm-location-blue); font-style:normal; }
#basemsp-accessible-homepage .bm-location-hero .bm-lead { max-width:720px; margin:27px 0 0; color:#c4d4d9; font-size:18px; line-height:1.72; }
#basemsp-accessible-homepage .bm-location-hero .bm-text-link { color:#fff; }
#basemsp-accessible-homepage .bm-location-hero .bm-text-link:hover,
#basemsp-accessible-homepage .bm-location-hero .bm-text-link:focus-visible { color:#6ed0f1; }
#basemsp-accessible-homepage .bm-location-marker { position:relative; padding:70px 28px 27px; border:1px solid rgba(110,208,241,.24); border-radius:22px; background:rgba(5,30,41,.72); box-shadow:0 23px 58px rgba(0,0,0,.2); backdrop-filter:blur(7px); }
#basemsp-accessible-homepage .bm-location-marker-pin { position:absolute; top:-29px; left:27px; display:inline-flex; align-items:center; justify-content:center; width:58px; height:58px; border-radius:50%; color:#fff; background:linear-gradient(145deg,#02b8e9,#007eae); box-shadow:0 14px 30px rgba(1,159,219,.3); }
#basemsp-accessible-homepage .bm-location-marker-pin svg { width:27px; height:27px; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
#basemsp-accessible-homepage .bm-location-marker small { display:block; color:#6ed0f1; font-size:10px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; }
#basemsp-accessible-homepage .bm-location-marker strong { display:block; margin-top:4px; color:#fff; font-size:32px; font-weight:500; letter-spacing:-.04em; }
#basemsp-accessible-homepage .bm-location-marker p { margin:14px 0 0; color:#aec3c9; font-size:13px; line-height:1.65; }

#basemsp-accessible-homepage .bm-location-main h2 { margin:0; color:var(--bm-location-ink); font-size:clamp(38px,4vw,58px); font-weight:400; line-height:1.1; letter-spacing:-.047em; }
#basemsp-accessible-homepage .bm-eyebrow { margin:0 0 18px; color:var(--bm-location-link); font-size:12px; font-weight:500; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
#basemsp-accessible-homepage .bm-location-local-intro,
#basemsp-accessible-homepage .bm-location-support,
#basemsp-accessible-homepage .bm-location-fit,
#basemsp-accessible-homepage .bm-location-review,
#basemsp-accessible-homepage .bm-location-faq { padding:118px 0; }
#basemsp-accessible-homepage .bm-location-local-proof { border-bottom:1px solid var(--bm-location-line); background:#fff; }
#basemsp-accessible-homepage .bm-location-local-proof-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
#basemsp-accessible-homepage .bm-location-local-proof-grid > div { display:grid; grid-template-columns:42px minmax(0,1fr); gap:17px; align-items:start; padding:31px 34px; border-right:1px solid var(--bm-location-line); }
#basemsp-accessible-homepage .bm-location-local-proof-grid > div:first-child { padding-left:0; }
#basemsp-accessible-homepage .bm-location-local-proof-grid > div:last-child { padding-right:0; border-right:0; }
#basemsp-accessible-homepage .bm-location-local-proof-grid > div > span { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; color:#fff; background:linear-gradient(145deg,#02b8e9,#007eae); font-size:11px; }
#basemsp-accessible-homepage .bm-location-local-proof-grid p { margin:0; }
#basemsp-accessible-homepage .bm-location-local-proof-grid strong { display:block; color:var(--bm-location-ink); font-size:15px; font-weight:500; line-height:1.45; }
#basemsp-accessible-homepage .bm-location-local-proof-grid small { display:block; margin-top:5px; color:var(--bm-location-muted); font-size:12px; line-height:1.58; }
#basemsp-accessible-homepage .bm-location-local-intro { background:#fff; }
#basemsp-accessible-homepage .bm-location-local-intro-layout { max-width:930px; margin:0 auto; text-align:center; }
#basemsp-accessible-homepage .bm-location-local-intro-layout > p:last-child { max-width:790px; margin:25px auto 0; color:var(--bm-location-muted); font-size:17px; line-height:1.78; }

#basemsp-accessible-homepage .bm-location-support { background:#f5f9fa; }
#basemsp-accessible-homepage .bm-location-section-heading { max-width:870px; margin:0 auto; text-align:center; }
#basemsp-accessible-homepage .bm-location-section-heading > p:last-child { max-width:750px; margin:24px auto 0; color:var(--bm-location-muted); font-size:17px; line-height:1.74; }
#basemsp-accessible-homepage .bm-location-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:62px; }
#basemsp-accessible-homepage .bm-location-service-grid article { display:flex; flex-direction:column; min-height:330px; padding:34px 31px; border:1px solid var(--bm-location-line); border-radius:23px; background:#fff; box-shadow:0 16px 45px rgba(5,30,41,.055); }
#basemsp-accessible-homepage .bm-location-card-title { display:grid; grid-template-columns:58px minmax(0,1fr); gap:18px; align-items:center; }
#basemsp-accessible-homepage .bm-location-icon,
#basemsp-accessible-homepage .bm-location-review-icon { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; flex:0 0 auto; border-radius:50%; color:#fff; background:linear-gradient(145deg,#02b8e9,#007eae); box-shadow:0 12px 24px rgba(1,159,219,.18); }
#basemsp-accessible-homepage .bm-location-icon svg,
#basemsp-accessible-homepage .bm-location-review-icon svg { width:25px; height:25px; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
#basemsp-accessible-homepage .bm-location-card-title h3 { margin:0; color:var(--bm-location-ink); font-size:24px; font-weight:500; line-height:1.25; letter-spacing:-.03em; }
#basemsp-accessible-homepage .bm-location-service-grid article > p { margin:26px 0 0; color:var(--bm-location-muted); font-size:15px; line-height:1.74; }
#basemsp-accessible-homepage .bm-location-service-grid .bm-section-link { margin-top:auto; padding-top:24px; }

#basemsp-accessible-homepage .bm-location-fit { color:#fff; background:radial-gradient(circle at 87% 8%,rgba(1,159,219,.15),transparent 34%),linear-gradient(135deg,#073a4d,#051e29 72%); }
#basemsp-accessible-homepage .bm-location-fit-layout,
#basemsp-accessible-homepage .bm-location-review-layout { display:grid; grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr); gap:92px; align-items:center; }
#basemsp-accessible-homepage .bm-location-fit .bm-eyebrow { color:#6ed0f1; }
#basemsp-accessible-homepage .bm-location-fit h2 { color:#fff; }
#basemsp-accessible-homepage .bm-location-fit-copy > p:not(.bm-eyebrow) { margin:25px 0 0; color:#c2d2d7; font-size:17px; line-height:1.76; }
#basemsp-accessible-homepage .bm-location-fit .bm-section-link { margin-top:27px; color:#6ed0f1; }
#basemsp-accessible-homepage .bm-location-fit .bm-section-link:hover,
#basemsp-accessible-homepage .bm-location-fit .bm-section-link:focus-visible { color:#fff; }
#basemsp-accessible-homepage .bm-location-fit-points { overflow:hidden; border:1px solid rgba(110,208,241,.2); border-radius:24px; background:rgba(255,255,255,.045); box-shadow:0 22px 55px rgba(0,0,0,.14); }
#basemsp-accessible-homepage .bm-location-fit-points > div { display:grid; grid-template-columns:49px minmax(0,1fr); gap:18px; padding:27px 29px; border-bottom:1px solid rgba(255,255,255,.1); }
#basemsp-accessible-homepage .bm-location-fit-points > div:last-child { border-bottom:0; }
#basemsp-accessible-homepage .bm-location-fit-points span { display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:50%; color:#fff; background:var(--bm-location-blue); font-size:12px; }
#basemsp-accessible-homepage .bm-location-fit-points p { margin:1px 0 0; }
#basemsp-accessible-homepage .bm-location-fit-points strong { display:block; color:#fff; font-size:16px; font-weight:500; line-height:1.45; }
#basemsp-accessible-homepage .bm-location-fit-points small { display:block; margin-top:6px; color:#aec4ca; font-size:14px; line-height:1.62; }

#basemsp-accessible-homepage .bm-location-review { color:var(--bm-location-ink); background:#fff; }
#basemsp-accessible-homepage .bm-location-review .bm-eyebrow { color:var(--bm-location-link); }
#basemsp-accessible-homepage .bm-location-review h2 { color:var(--bm-location-ink); }
#basemsp-accessible-homepage .bm-location-review-layout > div:first-child > p:not(.bm-eyebrow) { margin:25px 0 0; color:var(--bm-location-muted); font-size:17px; line-height:1.76; }
#basemsp-accessible-homepage .bm-location-review .bm-actions { margin-top:30px; }
#basemsp-accessible-homepage .bm-location-review .bm-text-link { color:var(--bm-location-link); }
#basemsp-accessible-homepage .bm-location-review-card { display:grid; grid-template-columns:58px minmax(0,1fr); gap:0 20px; padding:32px; border:1px solid var(--bm-location-line); border-radius:25px; background:#f5f9fa; box-shadow:0 18px 46px rgba(5,30,41,.07); }
#basemsp-accessible-homepage .bm-location-review-icon { grid-row:1 / span 3; }
#basemsp-accessible-homepage .bm-location-review-card > div { padding:0 0 22px; margin-bottom:22px; border-bottom:1px solid var(--bm-location-line); }
#basemsp-accessible-homepage .bm-location-review-card > div:last-child { margin:0; padding:0; border:0; }
#basemsp-accessible-homepage .bm-location-review-card small { display:block; color:var(--bm-location-link); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
#basemsp-accessible-homepage .bm-location-review-card strong { display:block; margin-top:5px; color:var(--bm-location-ink); font-size:18px; font-weight:500; }
#basemsp-accessible-homepage .bm-location-review-card p { margin:8px 0 0; color:var(--bm-location-muted); font-size:14px; line-height:1.65; }

#basemsp-accessible-homepage .bm-location-faq { border-top:1px solid var(--bm-location-line); background:#f8fbfc; }
#basemsp-accessible-homepage .bm-location-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:58px; }
#basemsp-accessible-homepage .bm-location-faq-grid details { overflow:hidden; border:1px solid var(--bm-location-line); border-radius:18px; background:#fff; }
#basemsp-accessible-homepage .bm-location-faq-grid summary { position:relative; padding:23px 57px 23px 24px; color:var(--bm-location-ink); cursor:pointer; list-style:none; font-size:16px; font-weight:500; line-height:1.45; }
#basemsp-accessible-homepage .bm-location-faq-grid summary::-webkit-details-marker { display:none; }
#basemsp-accessible-homepage .bm-location-faq-grid summary::after { content:"+"; position:absolute; top:50%; right:23px; transform:translateY(-50%); color:var(--bm-location-blue); font-size:24px; }
#basemsp-accessible-homepage .bm-location-faq-grid details[open] summary::after { content:"-"; }
#basemsp-accessible-homepage .bm-location-faq-grid details p { margin:0; padding:0 24px 24px; color:var(--bm-location-muted); font-size:15px; line-height:1.72; }

#basemsp-accessible-homepage .bm-location-final { padding:100px 0; color:#fff; background:radial-gradient(circle at 80% 0%,rgba(53,202,238,.18),transparent 32%),var(--bm-location-navy); }
#basemsp-accessible-homepage .bm-location-final-inner { display:flex; justify-content:space-between; align-items:center; gap:70px; }
#basemsp-accessible-homepage .bm-location-final .bm-eyebrow { color:#6ed0f1; }
#basemsp-accessible-homepage .bm-location-final h2 { max-width:820px; color:#fff; }
#basemsp-accessible-homepage .bm-location-final-inner > div:first-child > p:last-child { max-width:740px; margin:24px 0 0; color:#c2d2d7; font-size:17px; line-height:1.72; }
#basemsp-accessible-homepage .bm-location-final .bm-actions { flex:0 0 auto; flex-direction:column; align-items:stretch; margin:0; }

#basemsp-accessible-homepage.bm-motion [data-reveal] { opacity:0; transform:translateY(18px); transition:opacity .65s ease,transform .65s ease; }
#basemsp-accessible-homepage.bm-motion [data-reveal].bm-visible { opacity:1; transform:none; }

@media (max-width:980px) {
  #basemsp-accessible-homepage .bm-location-hero-layout { grid-template-columns:1fr; gap:80px; }
  #basemsp-accessible-homepage .bm-location-marker { width:min(100%,420px); }
  #basemsp-accessible-homepage .bm-location-fit-layout,
  #basemsp-accessible-homepage .bm-location-review-layout { grid-template-columns:1fr; gap:58px; }
  #basemsp-accessible-homepage .bm-location-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #basemsp-accessible-homepage .bm-location-service-grid article:last-child { grid-column:1 / -1; }
  #basemsp-accessible-homepage .bm-location-final-inner { align-items:flex-start; flex-direction:column; gap:42px; }
  #basemsp-accessible-homepage .bm-location-final .bm-actions { align-items:flex-start; flex-direction:row; }
}

@media (max-width:760px) {
  #basemsp-accessible-homepage .bm-location-hero { min-height:0; padding:24px 0 76px; }
  #basemsp-accessible-homepage .bm-location-breadcrumb { justify-content:center; flex-wrap:wrap; margin-bottom:39px; font-size:12px; }
  #basemsp-accessible-homepage .bm-location-hero-layout { gap:0; text-align:center; }
  #basemsp-accessible-homepage .bm-location-place { justify-content:center; }
  #basemsp-accessible-homepage .bm-location-hero h1 { font-size:clamp(39px,11.3vw,52px); line-height:1.05; }
  #basemsp-accessible-homepage .bm-location-hero .bm-lead { margin-right:auto; margin-left:auto; font-size:17px; line-height:1.66; }
  #basemsp-accessible-homepage .bm-location-hero .bm-actions { flex-direction:column; gap:18px; }
  #basemsp-accessible-homepage .bm-location-marker { display:none; }
  #basemsp-accessible-homepage .bm-location-local-proof-grid { display:flex; gap:0; margin:0 -16px; padding:0 16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; }
  #basemsp-accessible-homepage .bm-location-local-proof-grid::-webkit-scrollbar { display:none; }
  #basemsp-accessible-homepage .bm-location-local-proof-grid > div { flex:0 0 min(85%,320px); padding:29px 25px; border-right:1px solid var(--bm-location-line); scroll-snap-align:start; }
  #basemsp-accessible-homepage .bm-location-local-proof-grid > div:first-child { padding-left:25px; }
  #basemsp-accessible-homepage .bm-location-local-proof-grid > div:last-child { padding-right:25px; border-right:0; }
  #basemsp-accessible-homepage .bm-location-local-intro,
  #basemsp-accessible-homepage .bm-location-support,
  #basemsp-accessible-homepage .bm-location-fit,
  #basemsp-accessible-homepage .bm-location-review,
  #basemsp-accessible-homepage .bm-location-faq { padding:80px 0; }
  #basemsp-accessible-homepage .bm-location-local-intro-layout,
  #basemsp-accessible-homepage .bm-location-section-heading,
  #basemsp-accessible-homepage .bm-location-fit-copy,
  #basemsp-accessible-homepage .bm-location-review-layout > div:first-child,
  #basemsp-accessible-homepage .bm-location-final-inner { text-align:center; }
  #basemsp-accessible-homepage .bm-location-main h2 { font-size:clamp(32px,9.5vw,43px); line-height:1.11; }
  #basemsp-accessible-homepage .bm-location-service-grid { display:flex; gap:16px; margin-right:-24px; padding-right:24px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; }
  #basemsp-accessible-homepage .bm-location-service-grid { margin-top:45px; }
  #basemsp-accessible-homepage .bm-location-service-grid::-webkit-scrollbar { display:none; }
  #basemsp-accessible-homepage .bm-location-service-grid article { flex:0 0 min(86%,340px); min-height:auto; scroll-snap-align:start; }
  #basemsp-accessible-homepage .bm-location-service-grid article:last-child { grid-column:auto; }
  #basemsp-accessible-homepage .bm-location-fit-points { text-align:left; }
  #basemsp-accessible-homepage .bm-location-review .bm-actions { align-items:center; flex-direction:column; }
  #basemsp-accessible-homepage .bm-location-review-card { grid-template-columns:1fr; gap:22px; text-align:center; }
  #basemsp-accessible-homepage .bm-location-review-icon { grid-row:auto; margin:0 auto; }
  #basemsp-accessible-homepage .bm-location-faq-grid { grid-template-columns:1fr; margin-top:45px; }
  #basemsp-accessible-homepage .bm-location-final { padding:80px 0; }
  #basemsp-accessible-homepage .bm-location-final .bm-actions { align-items:center; flex-direction:column; }
}

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