/* Main Street homepage0.1.8. Fonts are bundled under their included OFL licences. */
@font-face{font-family:"MSMC V4 Sans";src:url("fonts/DMSans-variable.woff2") format("woff2");font-style:normal;font-weight:100 1000;font-display:swap}
@font-face{font-family:"MSMC V4 Serif";src:url("fonts/DMSerifDisplay-Regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"MSMC V4 Serif";src:url("fonts/DMSerifDisplay-Italic.woff2") format("woff2");font-style:italic;font-weight:400;font-display:swap}

/* Existing navy/emerald/cream retained. Only the new homepage root is styled. */
#msmc-v4-home#msmc-v4-home{font-family:"MSMC V4 Sans","DM Sans",Arial,sans-serif;--d-paper:#faf8f5;--d-surface:#fff;--d-ink:#0B1F3A;--d-muted:#475569;--d-line:#dbe4e5;--d-soft:#f0fdfa;--d-green:#065f46;--d-teal:#0f766e;--d-navy:#0B1F3A;--d-on-navy:#fff;--d-navy-muted:#dbe4e5;max-width:1280px;width:100%;margin-inline:auto;color:var(--d-ink)}
#msmc-v4-home#msmc-v4-home .d-page{font-size:18px;line-height:1.6}
#msmc-v4-home#msmc-v4-home :is(h1,h2){font-family:"MSMC V4 Serif","DM Serif Display",Georgia,serif;font-weight:400;text-wrap:balance}
#msmc-v4-home#msmc-v4-home h3{font-family:"MSMC V4 Sans","DM Sans",Arial,sans-serif;font-weight:600;line-height:1.25;text-wrap:balance}
#msmc-v4-home#msmc-v4-home :is(a,button,summary):focus-visible{outline:3px solid #467ff7;outline-offset:4px}
#msmc-v4-home#msmc-v4-home [id]{scroll-margin-top:125px}
#msmc-v4-home#msmc-v4-home .d-hero{padding:40px 5.5%;gap:40px;align-items:start}
#msmc-v4-home#msmc-v4-home .d-hero-copy h1{font-size:clamp(34px,4.3vw,54px);line-height:1.08;letter-spacing:-.025em;max-width:12.5em}
#msmc-v4-home#msmc-v4-home .d-hero-copy h1 span{font-family:inherit;font-style:italic}
#msmc-v4-home#msmc-v4-home .d-hero .d-kicker{font-size:15px;line-height:1.4;letter-spacing:.035em;margin-bottom:14px}
#msmc-v4-home#msmc-v4-home .d-hero .d-intro{font-size:18px;line-height:1.55;margin-top:18px;max-width:36em;color:#e2e8f0}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button{width:100%;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;padding:12px 16px;font-size:16px;white-space:normal}
#msmc-v4-home#msmc-v4-home .d-hero .d-note{font-family:inherit;font-size:15px;line-height:1.45;margin:10px 0 0;color:#e2e8f0;max-width:36em;opacity:1}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing{display:block;margin:18px 0 0;padding:14px 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.24);border-radius:8px;color:#fff}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing p{font-size:16px;line-height:1.5;color:#fff;max-width:38em}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing strong{display:inline;color:inherit}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing .d-link{display:inline-block;margin-top:5px;color:#fff;font-size:15px;line-height:1.4;text-decoration:underline}
#msmc-v4-home#msmc-v4-home .v4-opening-location{font-size:15px;line-height:1.4;margin:12px 0 0}
#msmc-v4-home#msmc-v4-home .v4-opening-location a{color:#fff;text-decoration:underline;text-underline-offset:3px}
#msmc-v4-home#msmc-v4-home .d-hero-photo{align-self:start;display:flex;flex-direction:column;margin:0;min-width:0}
#msmc-v4-home#msmc-v4-home .d-hero-photo>img{width:100%;height:520px;min-height:360px;max-height:520px;object-fit:cover;object-position:center}
#msmc-v4-home#msmc-v4-home .d-caption-row{font-size:15px;line-height:1.4}
#msmc-v4-home#msmc-v4-home .d-section{padding-block:clamp(38px,5vw,64px)}
#msmc-v4-home#msmc-v4-home .d-kicker{font-size:15px;line-height:1.4}
#msmc-v4-home#msmc-v4-home :is(.d-note,.d-assessment-note,.d-doctor span){font-size:15px;line-height:1.5}
#msmc-v4-home#msmc-v4-home :is(.d-service p,.d-copy>p,.d-faq details p){font-size:18px;line-height:1.6}
#msmc-v4-home#msmc-v4-home :is(.d-link,figcaption,.d-caption-row strong,.d-assurance,.d-more-services a,.d-feature-links a,.d-doctor small,.d-team-bottom p,.d-member,.d-visit dl,.d-footer p,.d-footer-links .d-link,.d-optima-price span,.d-optima-price small,.d-optima-fee,.d-mobile-actions .d-button){font-size:15px;line-height:1.5}
#msmc-v4-home#msmc-v4-home .d-assessment-description{font-size:18px;line-height:1.6}
/* Keep this original bottom action row in document flow; the site provides its own phone booking bar. */
#msmc-v4-home#msmc-v4-home .d-mobile-actions{position:static;bottom:auto;z-index:auto}
#msmc-v4-home#msmc-v4-home .v4-team-recap{padding:18px 5.5% 24px;background:var(--d-paper)}
#msmc-v4-home#msmc-v4-home .v4-team-recap .d-hero-team{justify-content:center;margin:0}
#msmc-v4-home#msmc-v4-home .v4-team-recap .d-link{font-size:15px;line-height:1.4;color:var(--d-green)}

@media(max-width:767px){
 #msmc-v4-home#msmc-v4-home .d-hero{grid-template-columns:1fr;padding:24px 22px;gap:22px}
 #msmc-v4-home#msmc-v4-home .d-hero-copy h1{font-size:34px;line-height:1.08;max-width:12.5em}
 #msmc-v4-home#msmc-v4-home .d-hero .d-kicker{font-size:15px;margin-bottom:10px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-intro{margin-top:14px;font-size:18px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{gap:9px;margin-top:16px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button{padding:11px 10px;font-size:15px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-billing{margin-top:14px;padding:12px}
 #msmc-v4-home#msmc-v4-home .d-hero-photo>img{height:190px;min-height:190px;max-height:190px;object-position:center 52%}
 #msmc-v4-home#msmc-v4-home .d-hero-photo figcaption{padding:10px 0 0;font-size:15px}
 #msmc-v4-home#msmc-v4-home .d-assurance{padding:18px 22px;font-size:15px;gap:12px}
 #msmc-v4-home#msmc-v4-home .d-section{padding:36px 22px}
 #msmc-v4-home#msmc-v4-home .v4-team-recap{padding:16px 22px 24px}
}
@media(max-width:359px){
 #msmc-v4-home#msmc-v4-home .d-hero{padding-inline:18px}
 #msmc-v4-home#msmc-v4-home .d-hero-copy h1{font-size:34px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){#msmc-v4-home#msmc-v4-home *{scroll-behavior:auto!important;transition:none!important}}

/* The real installed equipment is portrait; retain the entire photograph. */
#msmc-v4-home#msmc-v4-home .d-optima-photo{display:block;width:auto;max-width:100%;height:auto;aspect-ratio:9/16;max-height:560px;object-fit:contain;object-position:center;margin-inline:auto}
@media(max-width:767px){#msmc-v4-home#msmc-v4-home .d-optima-photo{max-height:420px}}

/* Cream opening0.1.6: colour-only overrides, retaining all existing layout and typography. */
#msmc-v4-home#msmc-v4-home .d-hero{background:#faf8f5;color:#0B1F3A}
#msmc-v4-home#msmc-v4-home .d-hero h1{color:#0B1F3A}
#msmc-v4-home#msmc-v4-home .d-hero h1 span{color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .d-kicker{color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero :is(.d-intro,.d-note){color:#475569}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button{background:#065f46;color:#ffffff;border-color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button:hover{background:#084c3a;color:#ffffff;border-color:#084c3a}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button.secondary{background:#ffffff;color:#065f46;border-color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button.secondary:hover{background:#f0fdfa;color:#065f46;border-color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing{background:#ffffff;color:#0B1F3A;border-color:#64748b}
#msmc-v4-home#msmc-v4-home .d-hero .d-billing :is(p,strong){color:#0B1F3A}
#msmc-v4-home#msmc-v4-home .d-hero :is(.d-link,.d-billing .d-link,.v4-opening-location a){color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .v4-opening-location{color:#0B1F3A}
#msmc-v4-home#msmc-v4-home .d-hero :is(a,button,summary):focus-visible{outline-color:#065f46}
#msmc-v4-home#msmc-v4-home .d-hero .d-hero-photo figcaption{color:#475569;border-color:#64748b}
#msmc-v4-home#msmc-v4-home .d-hero .d-caption-row strong{color:#0B1F3A}

/* Clearer booking journey0.1.8. Preserve comfortable reading and touch targets. */
#msmc-v4-home#msmc-v4-home .d-hero{align-items:center}
#msmc-v4-home#msmc-v4-home .d-hero-copy h1{max-width:12em}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button{text-align:center;white-space:normal;overflow-wrap:anywhere}
#msmc-v4-home#msmc-v4-home .d-hero-photo{align-self:center}
#msmc-v4-home#msmc-v4-home .d-hero-photo>img{height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:contain}
#msmc-v4-home#msmc-v4-home .d-faq details p a{color:#065f46;text-decoration:underline;text-underline-offset:3px}
#msmc-v4-home#msmc-v4-home .d-faq summary{min-height:44px;display:list-item;font-size:18px;line-height:1.5;cursor:pointer}
#msmc-v4-home#msmc-v4-home .d-footer-top h2{font-size:clamp(29px,3.4cqw,39px);line-height:1.16}
#msmc-v4-home#msmc-v4-home .d-footer-top p a{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px) and (min-width:768px){
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:1fr}
}
@media(max-width:767px){
 #msmc-v4-home#msmc-v4-home .d-hero{gap:20px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:1fr;gap:8px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions .d-button{font-size:16px;min-height:48px}
 #msmc-v4-home#msmc-v4-home .d-hero-photo>img{height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:contain}
 #msmc-v4-home#msmc-v4-home .d-footer-top{align-items:stretch}
 #msmc-v4-home#msmc-v4-home .d-footer-top .d-button{width:100%}
}
/* Navy introduction panel only; booking, billing and care links retain the light surface. */
#msmc-v4-home#msmc-v4-home .d-hero{align-items:start}
#msmc-v4-home#msmc-v4-home .d-hero-photo{align-self:start}
#msmc-v4-home#msmc-v4-home .v4-hero-introduction{
  min-width:0;padding:24px;background:#0B1F3A;color:#ffffff;border-radius:8px;
}
#msmc-v4-home#msmc-v4-home .d-hero .v4-hero-introduction :is(.d-kicker,h1,h1 span,.d-intro){color:#ffffff}
#msmc-v4-home#msmc-v4-home .d-hero .v4-hero-introduction .d-intro{margin-bottom:0}
@media(max-width:767px){
  #msmc-v4-home#msmc-v4-home .d-hero{padding-top:0}
  #msmc-v4-home#msmc-v4-home .v4-hero-introduction{margin-inline:-22px;padding:18px 22px;border-radius:0}
}
@media(max-width:359px){
  #msmc-v4-home#msmc-v4-home .v4-hero-introduction{margin-inline:-18px;padding-inline:18px}
}

/* Homepage care navigation 0.1.14. Service choices support the primary booking action. */
#msmc-v4-home#msmc-v4-home .d-hero{column-gap:40px;row-gap:28px;grid-template-areas:"copy photo" "care care"}
#msmc-v4-home#msmc-v4-home .d-hero-copy{grid-area:copy;min-width:0}
#msmc-v4-home#msmc-v4-home .d-hero-photo{grid-area:photo}
#msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
#msmc-v4-home#msmc-v4-home .v4-care-choices{grid-area:care;min-width:0;margin:0;padding:24px 0 0;border-top:1px solid #dbe4e5;background:transparent}
#msmc-v4-home#msmc-v4-home .v4-care-choices h2{margin:0 0 14px;font-family:"MSMC V4 Sans","DM Sans",Arial,sans-serif;font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-.01em;color:#0B1F3A;text-wrap:initial}
#msmc-v4-home#msmc-v4-home .v4-care-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#msmc-v4-home#msmc-v4-home .v4-care-grid a{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;min-width:0;min-height:142px;padding:18px;background:#ffffff;color:#0B1F3A;border:1px solid #c3d1cb;border-top:3px solid #065f46;border-radius:10px;text-decoration:none;overflow-wrap:normal;transition:background-color .15s,border-color .15s,box-shadow .15s}
#msmc-v4-home#msmc-v4-home .v4-care-title{display:block;font-family:inherit;font-size:18px;font-weight:600;line-height:1.3;color:#0B1F3A}
#msmc-v4-home#msmc-v4-home .v4-care-description{display:block;font-size:15px;font-weight:400;line-height:1.45;color:#475569}
#msmc-v4-home#msmc-v4-home .v4-care-status{display:block;margin-top:auto;padding-top:2px;font-size:14px;font-weight:600;line-height:1.4;color:#065f46}
#msmc-v4-home#msmc-v4-home .v4-care-status time{white-space:nowrap}
#msmc-v4-home#msmc-v4-home .v4-care-grid a:hover{background:#f0fdfa;border-color:#065f46;box-shadow:0 3px 12px #0B1F3A0d}
#msmc-v4-home#msmc-v4-home .v4-care-grid a:is(:hover,:focus-visible) .v4-care-title{text-decoration:underline;text-underline-offset:3px}
#msmc-v4-home#msmc-v4-home .v4-care-grid a:focus-visible{outline:3px solid #065f46;outline-offset:4px}
@media(max-width:1100px) and (min-width:768px){
 #msmc-v4-home#msmc-v4-home .d-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"intro photo" "actions actions" "note note" "billing billing" "location location" "care care";gap:16px 24px}
 #msmc-v4-home#msmc-v4-home .d-hero-copy{display:contents}
 #msmc-v4-home#msmc-v4-home .v4-hero-introduction{grid-area:intro;padding:22px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-kicker{font-size:14px}
 #msmc-v4-home#msmc-v4-home .d-hero-copy h1{font-size:36px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-intro{font-size:17px;line-height:1.5}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-area:actions;margin-top:2px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-note{grid-area:note;margin:0}
 #msmc-v4-home#msmc-v4-home .d-hero .d-billing{grid-area:billing;margin:0}
 #msmc-v4-home#msmc-v4-home .v4-opening-location{grid-area:location;margin:0}
}
@media(max-width:960px){#msmc-v4-home#msmc-v4-home .v4-care-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 #msmc-v4-home#msmc-v4-home .d-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "care" "photo";gap:24px}
 #msmc-v4-home#msmc-v4-home .d-hero .d-actions{grid-template-columns:1fr}
 #msmc-v4-home#msmc-v4-home .v4-care-choices{padding-top:20px}
 #msmc-v4-home#msmc-v4-home .v4-care-grid{gap:10px}
 #msmc-v4-home#msmc-v4-home .v4-care-grid a{min-height:160px;padding:14px 12px;gap:7px}
 #msmc-v4-home#msmc-v4-home .v4-care-title{font-size:17px}
 #msmc-v4-home#msmc-v4-home .v4-care-description{font-size:15px}
 #msmc-v4-home#msmc-v4-home .v4-care-status{font-size:14px}
 #msmc-v4-home#msmc-v4-home .v4-care-status time{white-space:normal}
}
@media(max-width:359px){
 #msmc-v4-home#msmc-v4-home .v4-care-grid{grid-template-columns:minmax(0,1fr)}
 #msmc-v4-home#msmc-v4-home .v4-care-grid a{min-height:106px;padding:16px;gap:6px}
}
