/* ClinicaMOB v255 — final visual geometry lock.
   Governing last-cascade layer after legacy v225/v247/v252/v254 rules.
   Purpose: eliminate surviving left-anchored centered components caused by
   higher-specificity legacy !important rules. No functional behavior changes. */
:root{--cm255-grid:1160px;--cm255-gutter:48px;--cm255-mobile-gutter:28px}

/* Deal Notes are centered cards, never viewport-left bands. Specificity is
   deliberately high enough to beat the legacy v225 direct-section rule. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-deal-note{
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),var(--cm255-grid))!important;
  max-width:var(--cm255-grid)!important;
  margin:28px auto 32px!important;
  padding:18px 22px!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}

/* Question-set cards use the same centered geometry instead of inheriting
   margin:0 from v225. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-question-set{
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),980px)!important;
  max-width:980px!important;
  margin:24px auto!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}

/* Review/experience sections are full-width bands with their content on the
   same 1160px site grid. Constraining the outer section itself caused the
   half-page background seen live. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-client-proof,
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-experience-band{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-client-proof>.container,
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-experience-band>.container{
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),var(--cm255-grid))!important;
  max-width:var(--cm255-grid)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Any direct content-card that is not intentionally a hero is a centered
   design object. This is the final catch-all for legacy alignment drift. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-v219-content-card:not(.page-hero):not(.soft):not(.band):not(.cm-compact-band):not(.cm-question-set){
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),var(--cm255-grid))!important;
  max-width:var(--cm255-grid)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}

/* Full-width content bands keep their background across the viewport, while
   their internal container always aligns to the governing grid. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.soft>.container,
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.band>.container,
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section:not([class])>.container,
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-compact-band>.container{
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),var(--cm255-grid))!important;
  max-width:var(--cm255-grid)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Preserve the intentionally smaller homepage Deal Notes treatment. */
body.cm-v255-final.cm-fixed-home.cm-fixed-target main>section.cm-deal-note-home{
  width:min(calc(100% - var(--cm255-gutter)),900px)!important;
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Prevent accidental duplicated width behavior and horizontal escape. */
body.cm-v255-final main [class*="grid"]>*,
body.cm-v255-final main .two>*,
body.cm-v255-final main .three>*,
body.cm-v255-final main .four>*,
body.cm-v255-final main .cards>*{min-width:0!important}
body.cm-v255-final main img,
body.cm-v255-final main svg,
body.cm-v255-final main video,
body.cm-v255-final main iframe,
body.cm-v255-final main canvas{max-width:100%!important}

@media(max-width:760px){
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-deal-note,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-question-set{
    width:min(calc(100% - var(--cm255-mobile-gutter)),var(--cm255-grid))!important;
    margin:18px auto 24px!important;
    padding:16px 18px!important;
  }
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-client-proof>.container,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-experience-band>.container,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.soft>.container,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.band>.container,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section:not([class])>.container,
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.cm-compact-band>.container{
    width:min(calc(100% - var(--cm255-mobile-gutter)),var(--cm255-grid))!important;
  }
}

/* Interior page heroes that are themselves content cards must also be centered.
   v225's higher-specificity margin:0 rule otherwise leaves some resource,
   hospital, specialty and checklist heroes pinned to the viewport left. */
body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.page-hero.cm-v219-content-card{
  box-sizing:border-box!important;
  width:min(calc(100% - var(--cm255-gutter)),var(--cm255-grid))!important;
  max-width:var(--cm255-grid)!important;
  margin:22px auto!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
@media(max-width:760px){
  body.cm-v255-final.cm-fixed-interior.cm-fixed-target main>section.page-hero.cm-v219-content-card{
    width:min(calc(100% - var(--cm255-mobile-gutter)),var(--cm255-grid))!important;
    margin:14px auto!important;
  }
}
