/**
 * Clínica Dental Centro — V7 impact pass.
 *
 * Loaded last. It strengthens art direction and fixes verified contrast and
 * mobile-layout defects without replacing the approved Divi content.
 */

body.cdc-v7 {
  --cdc-v7-radius-organic: 42px 18px 42px 18px;
  --cdc-v7-shadow: 0 26px 68px rgba(18, 60, 70, .14);
  --cdc-v7-shadow-hover: 0 32px 78px rgba(18, 60, 70, .2);
}

/* -------------------------------------------------------------------------
 * Header: make the existing mark cleaner and more deliberate.
 * ---------------------------------------------------------------------- */

body.cdc-v7 #main-header #logo {
  filter: none !important;
  opacity: 1 !important;
  object-fit: contain;
  image-rendering: auto;
}

body.cdc-v7 #main-header .cdc-v6-brand-lockup__name {
  letter-spacing: -.035em;
}

@media (min-width: 981px) {
  body.cdc-v7 #main-header #logo {
    max-width: 74px !important;
    max-height: 72px !important;
  }
}

/* -------------------------------------------------------------------------
 * Home hero: three coherent clinical scenes and a proof-led composition.
 * ---------------------------------------------------------------------- */

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero {
  min-height: clamp(620px, 72vh, 720px) !important;
  padding-top: clamp(66px, 6vw, 84px) !important;
  padding-bottom: clamp(58px, 5.5vw, 76px) !important;
  border-radius: 0 0 clamp(54px, 7vw, 90px) 0 !important;
}

body.cdc-v7.cdc-v4-home #page-container
  .cdc-home-hero-slideshow__image[data-slide="1"] {
  background-image: url("../images/hero-consulta-diagnostico-v7.webp") !important;
  background-position: center center !important;
}

body.cdc-v7.cdc-v4-home #page-container
  .cdc-home-hero-slideshow__image[data-slide="2"] {
  background-image: url("../images/hero-revision-cercana-v7.webp") !important;
  background-position: center center !important;
}

body.cdc-v7.cdc-v4-home #page-container
  .cdc-home-hero-slideshow__image[data-slide="3"] {
  background-image: url("../images/hero-familia-la-roda-v7.webp") !important;
  background-position: center center !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-home-hero-slideshow::after {
  background:
    linear-gradient(90deg,
      rgba(8, 43, 58, .97) 0%,
      rgba(10, 52, 72, .94) 32%,
      rgba(25, 94, 128, .72) 52%,
      rgba(25, 94, 128, .18) 75%,
      rgba(18, 60, 70, .06) 100%),
    linear-gradient(180deg, rgba(18, 60, 70, .04), rgba(18, 60, 70, .26)) !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero > .et_pb_row {
  display: grid !important;
  grid-template-columns: minmax(0, 760px) minmax(160px, 1fr);
  width: min(calc(100% - 72px), 1180px) !important;
  max-width: 1180px !important;
  gap: 16px 32px;
  align-items: center;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero
  > .et_pb_row > .et_pb_column {
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  float: none !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_column_0,
body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_column_1 {
  grid-column: 1;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_column_1 {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: flex-start;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero
  :is(.et_pb_button_0_wrapper, .et_pb_button_1_wrapper) {
  width: auto !important;
  margin: 0 !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_text_0 {
  max-width: 700px !important;
  margin-bottom: 2px !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_text_0 h1 {
  max-width: 11.8ch !important;
  font-size: clamp(3.35rem, 5vw, 4.7rem) !important;
  line-height: .98 !important;
  text-shadow: 0 8px 32px rgba(4, 28, 35, .26);
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_text_0 p {
  color: rgba(255, 255, 255, .94) !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_button_0 {
  background: var(--cdc-v4-primary) !important;
  color: var(--cdc-v4-ink) !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_button_1 {
  border-color: rgba(255, 255, 255, .84) !important;
  background: rgba(9, 47, 62, .36) !important;
  color: #ffffff !important;
  backdrop-filter: blur(10px);
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof {
  display: grid;
  width: min(100%, 760px);
  margin: 12px 0 0;
  padding: 10px;
  grid-column: 1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 22px;
  background: rgba(7, 43, 57, .48);
  box-shadow: 0 18px 48px rgba(4, 28, 35, .2);
  list-style: none;
  backdrop-filter: blur(14px);
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof li {
  position: relative;
  display: grid;
  min-width: 0;
  margin: 0;
  padding: 10px 12px 10px 29px;
  gap: 2px;
  border-radius: 14px;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof li::before {
  position: absolute;
  top: 15px;
  left: 11px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--cdc-v4-primary);
  box-shadow: 0 0 0 5px rgba(103, 192, 193, .15);
  content: "";
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof strong,
body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof span {
  color: #ffffff !important;
  line-height: 1.25;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof strong {
  font-size: .82rem;
  letter-spacing: .015em;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof span {
  color: rgba(255, 255, 255, .78) !important;
  font-size: .72rem;
}

/* -------------------------------------------------------------------------
 * Home intro: remove the empty upper half and attach the disclosure to its
 * photograph instead of making it part of the primary sales message.
 * ---------------------------------------------------------------------- */

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro {
  position: relative;
  z-index: 4;
  margin-top: -34px;
  padding-top: 0 !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro > .et_pb_row {
  gap: 28px !important;
  align-items: start !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_column_2 {
  display: grid !important;
  gap: 14px;
  align-content: start !important;
  align-self: start !important;
  padding-top: 34px;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_blurb_0 {
  margin: 0 !important;
  padding: 22px 24px !important;
  border: 1px solid rgba(25, 94, 128, .14);
  border-radius: 28px 14px 28px 14px;
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 16px 40px rgba(18, 60, 70, .09);
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_button_2_wrapper {
  margin: 0 !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_image_0,
body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_image_0 .et_pb_image_wrap {
  height: clamp(250px, 23vw, 320px) !important;
  margin-top: 2px !important;
  border-radius: 18px 46px 18px 46px !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_row_inner_0 {
  border-radius: 18px 46px 18px 46px !important;
  box-shadow: var(--cdc-v7-shadow) !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .cdc-v7-image-note {
  margin: -2px 4px 0 !important;
  color: #567078 !important;
  font-size: .74rem !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_row_inner_1 {
  border-radius: 24px 12px 24px 12px;
}

/* -------------------------------------------------------------------------
 * Home treatments: four photographic priorities, then four compact options.
 * ---------------------------------------------------------------------- */

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card {
  position: relative;
  display: flex !important;
  min-width: 0;
  min-height: 166px !important;
  padding: 18px 17px 48px !important;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(25, 94, 128, .14);
  border-radius: 20px 10px 20px 10px !important;
  background: rgba(255, 255, 255, .92) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card:hover,
body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card:focus-within {
  z-index: 2;
  border-color: rgba(25, 94, 128, .32);
  box-shadow: 0 20px 44px rgba(18, 60, 70, .14);
  transform: translateY(-4px);
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card--featured {
  min-height: 300px !important;
  padding: 160px 22px 52px !important;
  order: 1;
  background: #ffffff !important;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
  .cdc-v7-treatment-card:not(.cdc-v7-treatment-card--featured) {
  display: none !important;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
  .cdc-v7-treatment-card--featured::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 142px;
  background:
    linear-gradient(180deg, transparent 56%, rgba(18, 60, 70, .28)),
    var(--cdc-v7-card-image) center / cover no-repeat;
  content: "";
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card h3 {
  position: relative;
  z-index: 1;
  margin-bottom: 7px !important;
  color: var(--cdc-v4-ink) !important;
  font-size: 1.05rem !important;
  line-height: 1.23 !important;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .cdc-v7-treatment-card p {
  position: relative;
  z-index: 1;
  color: var(--cdc-v4-muted) !important;
  font-size: .92rem !important;
  line-height: 1.5 !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-treatment-card__link {
  position: absolute;
  z-index: 3;
  right: 17px;
  bottom: 15px;
  left: 17px;
  color: var(--cdc-v4-deep) !important;
  font-size: .78rem;
  font-weight: 820;
  line-height: 1.3;
  text-decoration: none !important;
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-treatment-card__link::after {
  margin-left: 5px;
  content: "→";
}

body.cdc-v7.cdc-v4-home #page-container .cdc-v7-treatment-card__link:focus-visible {
  border-radius: 6px;
  outline: 3px solid var(--cdc-v4-deep) !important;
  outline-offset: 3px;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
  .cdc-v7-treatment-card--featured .cdc-v7-treatment-card__link {
  right: 22px;
  left: 22px;
}

body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .et_pb_row_inner_3 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

/* Keep the first-visit steps readable; their icon gutter needs real width. */
body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .et_pb_column_9 {
  background-position: center !important;
}

/* -------------------------------------------------------------------------
 * Treatments hub and individual landing pages.
 * ---------------------------------------------------------------------- */

body.cdc-v7.cdc-v4-treatments #page-container#page-container .et_pb_section_2
  .cdc-v7-treatment-hub-card--featured {
  min-height: 350px !important;
  padding: 150px 26px 66px !important;
  overflow: hidden;
}

body.cdc-v7.cdc-v4-treatments #page-container#page-container .et_pb_section_2
  .cdc-v7-treatment-hub-card--featured::after {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  left: 0;
  height: 132px;
  background:
    linear-gradient(180deg, transparent 50%, rgba(18, 60, 70, .3)),
    var(--cdc-v7-card-image) center / cover no-repeat;
  content: "";
  pointer-events: none;
}

body.cdc-v7.cdc-v4-treatments #page-container
  .cdc-v7-treatment-hub-card--featured :is(.et_pb_text_inner, h3, p, .cdc-treatment-card__link) {
  position: relative;
  z-index: 2;
}

/* Verified contrast repair: this CTA panel is dark on all 12 landings even
 * though Divi labels the module as a light text layout. */
html body.cdc-v7.cdc-v4-treatment #page-container#page-container .et_pb_section_1
  .et_pb_text_12,
html body.cdc-v7.cdc-v4-treatment #page-container#page-container .et_pb_section_1
  .et_pb_text_12 :is(.et_pb_text_inner, h1, h2, h3, h4, h5, p, li, strong) {
  color: #ffffff !important;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container .et_pb_section_1
  .et_pb_text_12 a:not(.et_pb_button) {
  color: #ffffff !important;
  text-decoration-color: rgba(255, 255, 255, .72);
}

/* Contact consent links need a full AA contrast ratio on white. */
body.cdc-v7 .cdc-appointment-form__consent a {
  color: #195e80 !important;
  font-weight: 760;
  text-decoration-thickness: .1em;
  text-underline-offset: .16em;
}

/* A compact revisit control keeps cookie preferences available without
 * obscuring nearby calls to action. Its full text remains in the DOM. */
body.cdc-v7 > #cookie-law-info-again {
  width: auto !important;
  min-width: 0 !important;
  max-width: 86px !important;
  padding: 9px 13px !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

body.cdc-v7 > #cookie-law-info-again #cookie_hdr_showagain {
  font-size: 0 !important;
}

body.cdc-v7 > #cookie-law-info-again #cookie_hdr_showagain::after {
  content: "Cookies";
  font-size: .8125rem;
  font-weight: 780;
}

/* -------------------------------------------------------------------------
 * Mobile: show photography early, fix clipped copy and reserve safe areas for
 * WhatsApp/cookie controls.
 * ---------------------------------------------------------------------- */

@media (max-width: 767px) {
  body.cdc-v7 #main-header #logo {
    max-width: 60px !important;
    max-height: 60px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero {
    min-height: 760px !important;
    padding: 42px 0 238px !important;
    border-radius: 0 0 40px 0 !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero > .et_pb_row {
    display: grid !important;
    width: calc(100% - 36px) !important;
    grid-template-columns: 1fr;
    gap: 13px;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero
    :is(.et_pb_column_0, .et_pb_column_1, .cdc-v7-hero-proof) {
    grid-column: 1;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_text_0 h1 {
    max-width: 12ch !important;
    font-size: clamp(2.25rem, 10.6vw, 3rem) !important;
    line-height: 1 !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_text_0 p {
    font-size: .94rem !important;
    line-height: 1.5 !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero .et_pb_column_1 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero
    :is(.et_pb_button_0_wrapper, .et_pb_button_1_wrapper, .et_pb_button_0, .et_pb_button_1) {
    width: 100% !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero
    :is(.et_pb_button_0, .et_pb_button_1) {
    min-height: 48px;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: .84rem !important;
    white-space: normal;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof {
    width: 100%;
    margin-top: 64px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Keep the two fixed utilities clear of the hero's primary actions. */
  body.cdc-v7.cdc-v7-hero-top
    :is(#qlwapp, .qlwapp, #cookie-law-info-again) {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(12px) !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof li {
    padding: 8px 8px 8px 25px;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof li:last-child {
    grid-column: 1 / -1;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-hero-proof li::before {
    top: 13px;
    left: 8px;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-home-hero-slideshow::after {
    background:
      linear-gradient(180deg,
        rgba(8, 43, 58, .98) 0%,
        rgba(10, 52, 72, .96) 54%,
        rgba(25, 94, 128, .62) 72%,
        rgba(18, 60, 70, .08) 100%),
      linear-gradient(90deg, rgba(18, 60, 70, .18), transparent 76%) !important;
  }

  body.cdc-v7.cdc-v4-home #page-container
    .cdc-home-hero-slideshow__image[data-slide="1"] {
    background-position: 68% bottom !important;
  }

  body.cdc-v7.cdc-v4-home #page-container
    .cdc-home-hero-slideshow__image[data-slide="2"] {
    background-position: 67% bottom !important;
  }

  body.cdc-v7.cdc-v4-home #page-container
    .cdc-home-hero-slideshow__image[data-slide="3"] {
    background-position: 63% bottom !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro {
    margin-top: -18px;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_column_2 {
    padding-top: 0;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_row_inner_0,
  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_image_0,
  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-intro .et_pb_image_0 .et_pb_image_wrap {
    border-radius: 16px 34px 16px 34px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured {
    min-height: 270px !important;
    padding: 136px 18px 50px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured .cdc-v7-treatment-card__link {
    right: 18px;
    left: 18px;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured::before {
    height: 118px;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .et_pb_column_9 {
    display: block !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    :is(.et_pb_blurb_4, .et_pb_blurb_5, .et_pb_blurb_6, .et_pb_blurb_7) {
    width: 100% !important;
    min-height: 0 !important;
    padding: 14px 0 14px 42px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_6 .et_pb_text_29 {
    overflow: visible !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_6 .et_pb_text_29 p {
    font-size: clamp(1.05rem, 6.1vw, 1.35rem) !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  /* Put the hub photograph before its copy on phones. */
  body.cdc-v7.cdc-v4-treatments #page-container .et_pb_section_0 > .et_pb_row {
    display: flex !important;
    padding-bottom: 0 !important;
    flex-direction: column;
  }

  body.cdc-v7.cdc-v4-treatments #page-container .et_pb_section_0 > .et_pb_row::before {
    position: relative;
    display: block !important;
    width: 100%;
    height: 238px;
    flex: 0 0 238px;
    order: -2;
    inset: auto;
    background:
      linear-gradient(180deg, rgba(18, 60, 70, .02) 45%, rgba(18, 60, 70, .42)),
      url("../images/consulta-implantes-la-roda-v5.webp") center 38% / cover no-repeat;
  }

  body.cdc-v7.cdc-v4-treatments #page-container .et_pb_section_0 > .et_pb_row::after {
    display: none !important;
  }

  body.cdc-v7.cdc-v4-treatments #page-container .et_pb_section_0 .et_pb_row_inner_0 {
    padding: 28px 22px 30px !important;
  }

  body.cdc-v7.cdc-v4-treatments #page-container#page-container .et_pb_section_2
    .cdc-v7-treatment-hub-card--featured {
    min-height: 310px !important;
    padding: 134px 22px 62px !important;
  }

  body.cdc-v7.cdc-v4-treatments #page-container#page-container .et_pb_section_2
    .cdc-v7-treatment-hub-card--featured::after {
    height: 116px;
  }

  /* A wrapped filter is clearer than a clipped horizontal carousel. */
  body.cdc-v7.cdc-v4-treatments .cdc-v6-treatment-filters__controls {
    display: grid;
    padding: 0 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    gap: 7px;
  }

  body.cdc-v7.cdc-v4-treatments
    :is(.cdc-v6-filter, .cdc-v6-treatment-filter) {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: 8px 10px;
    white-space: normal;
  }

  /* Let the treatment photo lead on mobile, then present the copy. */
  body.cdc-v7.cdc-v4-treatment #page-container
    .et_builder_inner_content > .et_pb_section:first-child > .et_pb_row {
    display: flex !important;
    flex-direction: column;
  }

  body.cdc-v7.cdc-v4-treatment #page-container
    .et_builder_inner_content > .et_pb_section:first-child
    > .et_pb_row > .et_pb_column:last-child {
    order: -1;
  }

  body.cdc-v7.cdc-v4-treatment #page-container
    .et_builder_inner_content > .et_pb_section:first-child
    > .et_pb_row > .et_pb_column:last-child
    :is(.et_pb_image, .et_pb_image_wrap, img) {
    min-height: 230px;
    height: 230px !important;
  }

  body.cdc-v7.cdc-v4-clinic #page-container .et_pb_section_0 > .et_pb_row {
    gap: 22px !important;
  }

  body.cdc-v7 .cdc-v4-legal-note {
    font-size: .75rem !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 480px) {
  /* Four fully visible, keyboard-friendly anchors instead of a clipped strip. */
  body.cdc-v7.cdc-v4-treatment .cdc-v6-anchor-nav {
    padding: 10px 14px;
    overflow: visible;
  }

  body.cdc-v7.cdc-v4-treatment .cdc-v6-anchor-nav__list {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  body.cdc-v7.cdc-v4-treatment .cdc-v6-anchor-nav__link {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: 8px 10px;
  }

  /* Floating controls stay in their own corners and no longer cover CTAs. */
  body.cdc-v7 #qlwapp .qlwapp__container,
  body.cdc-v7 #qlwapp .qlwapp__container--bottom-right {
    right: 12px !important;
    bottom: max(14px, env(safe-area-inset-bottom)) !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.cdc-v7 #qlwapp :is(.qlwapp-toggle, .qlwapp-toggle-link) {
    display: flex !important;
    width: 50px !important;
    min-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 !important;
    align-items: center;
    justify-content: center;
    border-radius: 50% !important;
    background: #25d366 !important;
  }

  body.cdc-v7 #qlwapp :is(.qlwapp-text, .qlwapp-toggle-text) {
    display: none !important;
  }

  body.cdc-v7 > #cookie-law-info-again {
    right: auto !important;
    bottom: max(14px, env(safe-area-inset-bottom)) !important;
    left: 10px !important;
    min-height: 44px !important;
    padding: 8px 11px !important;
  }

  body.cdc-v7 .cdc-site-footer {
    padding-bottom: 68px;
  }
}

@media (max-width: 390px) {
  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-home-hero {
    min-height: 748px !important;
    padding-right: 0 !important;
    padding-bottom: 226px !important;
    padding-left: 0 !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-treatment-card {
    padding-right: 13px !important;
    padding-left: 13px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .cdc-v7-treatment-card__link {
    right: 13px;
    left: 13px;
  }
}

@media (max-width: 767px) {
  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4 .et_pb_row_inner_3 {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured {
    min-height: 190px !important;
    padding: 20px 18px 50px 146px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured .cdc-v7-treatment-card__link {
    right: 18px;
    left: 146px;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured::before {
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    width: 126px;
    height: auto;
    background-position: center !important;
  }
}

@media (max-width: 390px) {
  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured {
    min-height: 196px !important;
    padding: 18px 13px 48px 126px !important;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured .cdc-v7-treatment-card__link {
    right: 13px;
    left: 126px;
  }

  body.cdc-v7.cdc-v4-home #page-container .et_pb_section_4
    .cdc-v7-treatment-card--featured::before {
    width: 108px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.cdc-v7 .cdc-v7-treatment-card,
  body.cdc-v7 .cdc-v7-treatment-hub-card--featured {
    transition: none !important;
  }
}

/* -------------------------------------------------------------------------
 * 1.13.7 — stable finishing layer for the three user-reported modules.
 * These semantic classes deliberately outrank Divi/V6 index-based presets.
 * ---------------------------------------------------------------------- */

/* Home: preserve a true image header and keep every link in normal flow. */
html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-card--featured {
  display: flex !important;
  min-height: 300px !important;
  padding: 160px 22px 20px !important;
  flex-direction: column !important;
  background: #ffffff !important;
}

html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-card:not(.cdc-v7-treatment-card--featured) {
  display: none !important;
}

html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-card--featured::before {
  top: 0 !important;
  right: 0 !important;
  bottom: auto !important;
  left: 0 !important;
  width: auto !important;
  height: 142px !important;
}

html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-card :is(h3, p) {
  position: relative !important;
  z-index: 2 !important;
}

html body.cdc-v7.cdc-v4-home #page-container#page-container
  .cdc-v7-treatment-card__link {
  position: static !important;
  inset: auto !important;
  display: block !important;
  margin-top: auto !important;
  padding-top: 13px !important;
}

/* La Clínica: the rounded photographic CTA needs breathing room inside the
 * panel itself, not only around its containing section. */
html body.cdc-v7.cdc-v4-clinic #page-container#page-container
  .et_pb_section_6 > .et_pb_row_7 {
  padding: clamp(52px, 4.5vw, 68px) clamp(48px, 7vw, 96px)
    clamp(58px, 5vw, 74px) !important;
}

/* All treatment landings: a semantic, high-contrast final step with a real
 * appointment action. */
html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel {
  position: relative !important;
  display: grid !important;
  min-height: 0 !important;
  padding: clamp(30px, 3.4vw, 42px) clamp(28px, 3.8vw, 48px) !important;
  grid-column: 1 / -1 !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 24px 38px !important;
  overflow: hidden !important;
  cursor: default !important;
  border: 1px solid rgba(103, 192, 193, .42) !important;
  border-radius: 28px 12px 28px 12px !important;
  background:
    radial-gradient(circle at 96% 8%, rgba(103, 192, 193, .36), transparent 34%),
    linear-gradient(135deg, #195e80 0%, #123c46 100%) !important;
  box-shadow: 0 22px 48px rgba(18, 60, 70, .2) !important;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .cdc-v7-contrast-panel .et_pb_text_inner {
  position: relative !important;
  z-index: 2 !important;
  min-width: 0;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .cdc-v7-contrast-panel
  :is(.et_pb_text_inner, h1, h2, h3, h4, h5, p, li, strong, span) {
  color: #ffffff !important;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .cdc-v7-contrast-panel h3 {
  margin-bottom: 10px !important;
  font-size: clamp(1.5rem, 2.3vw, 2rem) !important;
  line-height: 1.12 !important;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .cdc-v7-contrast-panel p {
  max-width: 62ch;
  margin: 0 !important;
  color: rgba(255, 255, 255, .88) !important;
  font-size: clamp(.98rem, 1.35vw, 1.08rem) !important;
  line-height: 1.55 !important;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
  .cdc-v7-contrast-panel__eyebrow {
  display: block;
  margin-bottom: 10px;
  color: #aee9e8 !important;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .14em;
  line-height: 1.2;
  text-transform: uppercase;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
  a.cdc-v7-contrast-panel__button:not(.et_pb_button) {
  position: relative;
  z-index: 3;
  display: inline-flex;
  min-width: 176px;
  min-height: 50px;
  padding: 12px 24px;
  align-items: center;
  justify-content: center;
  border: 2px solid #8ed9d8;
  border-radius: 999px;
  background: #8ed9d8;
  box-shadow: 0 12px 26px rgba(8, 43, 58, .22);
  color: #123c46 !important;
  font-size: .9rem;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
  a.cdc-v7-contrast-panel__button:not(.et_pb_button):hover,
html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
  a.cdc-v7-contrast-panel__button:not(.et_pb_button):focus-visible {
  border-color: #ffffff;
  background: #ffffff;
  color: #123c46 !important;
  transform: translateY(-2px);
}

html body.cdc-v7.cdc-v4-treatment #page-container#page-container
  .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
  a.cdc-v7-contrast-panel__button:not(.et_pb_button):focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 4px;
}

@media (max-width: 767px) {
  html body.cdc-v7.cdc-v4-home #page-container#page-container
    .cdc-v7-treatment-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.cdc-v7.cdc-v4-home #page-container#page-container
    .cdc-v7-treatment-card--featured {
    min-height: 190px !important;
    padding: 20px 18px 18px 146px !important;
  }

  html body.cdc-v7.cdc-v4-home #page-container#page-container
    .cdc-v7-treatment-card--featured::before {
    top: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 126px !important;
    height: auto !important;
  }

  html body.cdc-v7.cdc-v4-clinic #page-container#page-container
    .et_pb_section_6 > .et_pb_row_7 {
    padding: 38px 24px 44px !important;
  }

  html body.cdc-v7.cdc-v4-treatment #page-container#page-container
    .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel {
    padding: 28px 24px 26px !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  html body.cdc-v7.cdc-v4-treatment #page-container#page-container
    .et_pb_section_1 .et_pb_text_12.cdc-v7-contrast-panel
    a.cdc-v7-contrast-panel__button:not(.et_pb_button) {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 390px) {
  html body.cdc-v7.cdc-v4-home #page-container#page-container
    .cdc-v7-treatment-card--featured {
    min-height: 196px !important;
    padding: 18px 13px 18px 126px !important;
  }

  html body.cdc-v7.cdc-v4-home #page-container#page-container
    .cdc-v7-treatment-card--featured::before {
    width: 108px !important;
  }
}
