/* =========================================================
   Maggie Dixon Homeopathy — LIFE ROWS ONLY
   Emergency clean reset, loaded AFTER homeopathy.css
   This deliberately ignores all previous flex width rules.
   ========================================================= */

@media (min-width: 1000px) {

  /* ADULTS: direct columns */
  body.page-id-424 .wpb_row:has(.mh-adults-copy) > .row_col_wrap_12,

  /* CHILDREN: works whether columns are direct OR still inside an inner row */
  body.page-id-424 .wpb_row:has(.mh-children-copy) > .row_col_wrap_12,
  body.page-id-424 .wpb_row:has(.mh-children-copy) .row_col_wrap_12_inner {
    box-sizing: border-box !important;
  }

  /* If Children still has the old outer 12/12 wrapper, remove its effect */
  body.page-id-424 .wpb_row:has(.mh-children-copy) > .row_col_wrap_12 > .vc_col-sm-12 {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /*
   * THE ACTUAL LAYOUT:
   * Use CSS Grid rather than Salient's flex widths.
   * This prevents the support card from becoming a narrow strip.
   */
  body.page-id-424 .wpb_row:has(.mh-adults-copy) > .row_col_wrap_12,
  body.page-id-424 .wpb_row:has(.mh-children-copy) .row_col_wrap_12_inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.24fr) minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 42px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 1780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 42px 6.3vw !important;
  }

  /* If v9 has Children as direct top-level columns, grid the outer row instead. */
  body.page-id-424 .wpb_row:has(> .row_col_wrap_12 > .mh-children-copy) > .row_col_wrap_12 {
    display: grid !important;
    grid-template-columns: minmax(0, 1.24fr) minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 42px !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 1780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 42px 6.3vw !important;
  }

  /* Completely neutralise every old width/flex declaration. */
  body.page-id-424 .mh-life-copy,
  body.page-id-424 .mh-life-image-col,
  body.page-id-424 .mh-life-support {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ---------------- Text column ---------------- */

  body.page-id-424 .mh-life-copy > .vc_column-inner {
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
  }

  body.page-id-424 .mh-life-copy .wpb_wrapper {
    width: 100% !important;
  }

  body.page-id-424 .mh-life-copy-inner,
  body.page-id-424 .mh-life-copy .wpb_text_column {
    max-width: 610px !important;
  }

  body.page-id-424 .mh-life-copy .mh-eyebrow {
    font-size: 12px !important;
    margin: 0 0 13px !important;
  }

  body.page-id-424 .mh-life-copy h2 {
    color: #0E6F73 !important;
    font-size: clamp(42px, 3vw, 58px) !important;
    line-height: 1.04 !important;
    margin: 0 0 23px !important;
  }

  body.page-id-424 .mh-life-copy p {
    font-size: 16px !important;
    line-height: 1.58 !important;
    margin: 0 0 21px !important;
    max-width: 610px !important;
  }

  body.page-id-424 .mh-life-button-row {
    margin-top: 27px !important;
  }

  /* ---------------- Image column ---------------- */

  body.page-id-424 .mh-life-image-col {
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    align-self: center !important;
  }

  body.page-id-424 .mh-life-image-col > .vc_column-inner,
  body.page-id-424 .mh-life-image-col .column-image-bg-wrap,
  body.page-id-424 .mh-life-image-col .column-image-bg-wrap .inner-wrap,
  body.page-id-424 .mh-life-image-col .column-image-bg,
  body.page-id-424 .mh-life-photo-space {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
  }

  body.page-id-424 .mh-life-image-col .column-image-bg {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }

  /* ---------------- Support card ---------------- */

  body.page-id-424 .mh-life-support {
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
  }

  body.page-id-424 .mh-life-support > .vc_column-inner {
    width: 100% !important;
    padding: 0 !important;
  }

  body.page-id-424 .mh-life-support .wpb_wrapper,
  body.page-id-424 .mh-life-support .wpb_text_column,
  body.page-id-424 .mh-support-wrap {
    width: 100% !important;
    height: 100% !important;
  }

  body.page-id-424 .mh-support-box {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 100% !important;
    height: 100% !important;
    padding: 34px 34px !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    box-shadow: 0 10px 30px rgba(35,45,43,.07) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  body.page-id-424 .mh-small-title {
    font-size: 12px !important;
    line-height: 1.4 !important;
    margin: 0 0 21px !important;
  }

  body.page-id-424 .mh-support-box ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.page-id-424 .mh-support-box li {
    position: relative !important;
    list-style: none !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    margin: 0 0 10px !important;
    padding-left: 25px !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.page-id-424 .mh-support-box li::marker {
    content: "" !important;
    font-size: 0 !important;
  }

  body.page-id-424 .mh-support-box li:before {
    content: "⌁" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #D8995C !important;
  }

  /* Strip colours */
  body.page-id-424 .wpb_row:has(.mh-adults-copy) {
    background: #FBF9F4 !important;
  }

  body.page-id-424 .wpb_row:has(.mh-children-copy) {
    background: #EEF7F7 !important;
  }
}

/* Tablet */
@media (min-width: 691px) and (max-width: 999px) {
  body.page-id-424 .wpb_row:has(.mh-adults-copy) > .row_col_wrap_12,
  body.page-id-424 .wpb_row:has(.mh-children-copy) .row_col_wrap_12_inner,
  body.page-id-424 .wpb_row:has(> .row_col_wrap_12 > .mh-children-copy) > .row_col_wrap_12 {
    padding: 38px 5vw !important;
  }
}

/* Mobile: stack cleanly */
@media (max-width: 690px) {
  body.page-id-424 .mh-life-copy,
  body.page-id-424 .mh-life-image-col,
  body.page-id-424 .mh-life-support {
    width: 100% !important;
  }

  body.page-id-424 .mh-life-image-col {
    min-height: 340px !important;
    height: 340px !important;
    margin: 26px 0 !important;
  }

  body.page-id-424 .mh-life-support {
    margin-top: 26px !important;
  }

  body.page-id-424 .mh-support-box {
    height: auto !important;
    min-height: 0 !important;
  }
}

/* =========================================================
   v1.1 — restore Adults background image
   The Adults image column exists, but Salient's lazy-loaded
   background layer needs an explicit pixel height/visibility.
   ========================================================= */

@media (min-width: 1000px) {

  body.page-id-424 .mh-adults-image,
  body.page-id-424 .mh-children-image,
  body.page-id-424 .mh-life-image-col {
    aspect-ratio: auto !important;
    height: 390px !important;
    min-height: 390px !important;
  }

  body.page-id-424 .mh-life-image-col > .vc_column-inner,
  body.page-id-424 .mh-life-image-col .column-image-bg-wrap,
  body.page-id-424 .mh-life-image-col .column-image-bg-wrap .inner-wrap,
  body.page-id-424 .mh-life-image-col .column-image-bg,
  body.page-id-424 .mh-life-photo-space {
    display: block !important;
    width: 100% !important;
    height: 390px !important;
    min-height: 390px !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.page-id-424 .mh-life-image-col .column-image-bg-wrap {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
  }

  body.page-id-424 .mh-life-image-col > .vc_column-inner {
    position: relative !important;
    overflow: hidden !important;
  }

  body.page-id-424 .mh-life-image-col .column-image-bg {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }

  body.page-id-424 .mh-life-image-col .wpb_wrapper {
    position: relative !important;
    z-index: 2 !important;
    background: transparent !important;
  }
}

/* =========================================================
   v1.2 — Final CTA button only
   ========================================================= */

body.page-id-424 .mh-cta-inner a,
body.page-id-424 .mh-cta-inner a:link,
body.page-id-424 .mh-cta-inner a:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 0 27px !important;
  margin-top: 18px !important;

  background: #0E6F73 !important;
  border: 1px solid #0E6F73 !important;
  border-radius: 999px !important;

  color: #FFFFFF !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

body.page-id-424 .mh-cta-inner a:hover,
body.page-id-424 .mh-cta-inner a:focus {
  background: #095e61 !important;
  border-color: #095e61 !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
}