/* ==========================================================
   Global Responsive Fixes – Laboratorios Vargas
   Resuelve: overflow horizontal en zoom/resize + footer
   ========================================================== */

/* ── 1. Raíz: evitar scroll horizontal a nivel html ─────── */
html {
  overflow-x: hidden;
  max-width: 100%;
}

/* El wrapper principal no debe desbordarse */
#page,
.site,
.site_wrapper,
.body-bg-1 {
  max-width: 100%;
  overflow-x: hidden;
}

/* ── 2. Hero-7: contener el vídeo 100vw ─────────────────── */
/* El elemento padre ya tiene overflow:hidden en SCSS pero
   aseguramos que el wrapper del vídeo también lo tenga */
.mc-hero7-sec,
.mc-hero7-item,
.mc-hr7-bg--video,
.mc-hr7-video-wrapper {
  overflow: hidden;
}

/* ── 3. Secciones Elementor – evitar desborde lateral ───── */
.elementor-section,
.elementor-top-section,
.e-con,
.e-con-inner {
  max-width: 100%;
  overflow-x: hidden;
}

/* ── 4. Imágenes y embeds – nunca más anchos que contenedor */
img,
video,
iframe,
embed,
object {
  max-width: 100%;
}

/* ── 4b. Protección contra zoom (Ctrl+/Ctrl-) ──────────── */
/* El zoom del navegador NO cambia el viewport CSS, solo     */
/* escala los píxeles. Elementos con ancho fijo en px se     */
/* desbordan al hacer zoom in. Forzamos max-width: 100%      */
/* para que nunca excedan su contenedor.                     */
.mc-ser7-item {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.mc-ser7-item .item-img {
  max-width: 100% !important;
}

.mc-cta9-wrap {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.mc-appoint7-schedule,
.mc-appoint7-req {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.mc-testi7-text,
.mc-testi7-slider-wrap {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.mc-commit-gallery {
  max-width: 100% !important;
}

.mc-cont7-text {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Contenedores Elementor — nunca más anchos que viewport    */
.elementor-widget-container,
.elementor-column-wrap,
.elementor-widget-wrap {
  max-width: 100% !important;
  overflow: hidden;
}

/* Secciones con margen lateral — box-sizing correcto        */
.mc-hero7-sec,
.mc-footer7-sec,
.mc-tm7-sec,
.mc-service7-sec,
.mc-testi7-sec,
.mc-cta9-sec,
.mc-appoint7-sec {
  box-sizing: border-box !important;
  max-width: 100vw !important;
}

/* ── 5. Footer responsive ────────────────────────────────── */
/* Figma: 4 columnas (logo | menú | badge V | horario)       */
/* Bottom: email+tel | dirección | redes sociales             */

/* -- Desktop ≥1600px (Figma reference) -------------------- */
/* Proporciones Figma: logo ~35%, menú ~22%, badge ~8%, horario ~20% */
@media only screen and (min-width: 1600px) {
  .mc-footer7-content {
    align-items: flex-start;
  }

  .mc-ftr7-widget {
    flex: 0 0 35%;
    max-width: 35%;
  }

  .mc-footer7-content>.mc-ftr6-widget:nth-child(2) {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .mc-ftr7-logo-col {
    flex: 0 0 auto;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child {
    flex: 0 0 22%;
    max-width: 22%;
    margin-left: -40px;
  }
}

/* $xxl: 1400–1599px */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mc-footer7-content {
    gap: 24px;
    align-items: flex-start;
  }

  .mc-ftr7-widget {
    flex: 0 0 32%;
    max-width: 32%;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 360px;
  }

  .mc-footer7-content>.mc-ftr6-widget:nth-child(2) {
    flex: 0 0 18%;
    max-width: 18%;
  }

  .mc-ftr7-logo-col {
    flex: 0 0 auto;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child {
    flex: 0 0 20%;
    max-width: 20%;
    margin-left: -40px;
  }
}

/* $xl: 1200–1399px */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mc-footer7-content {
    gap: 20px;
    align-items: flex-start;
  }

  .mc-ftr7-widget {
    flex: 0 0 28%;
    max-width: 28%;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 280px;
  }

  .mc-footer7-content>.mc-ftr6-widget:nth-child(2) {
    flex: 0 0 18%;
    max-width: 18%;
  }

  .mc-ftr7-logo-col {
    flex: 0 0 auto;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child {
    flex: 0 0 20%;
    max-width: 20%;
    margin-left: -30px;
  }

  .mc-ftr7-bottom {
    gap: 20px;
  }
}

/* $lg: 992–1199px — 2 filas: logo arriba, resto abajo */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-footer7-content {
    flex-wrap: wrap;
    gap: 24px;
    align-items: flex-start;
  }

  .mc-ftr7-widget {
    flex: 0 0 100%;
    width: 100%;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 320px;
  }

  .mc-footer7-content>.mc-ftr6-widget,
  .mc-footer7-content>.mc-ftr7-logo-col {
    flex: 1 1 auto;
  }

  .mc-ftr7-bottom {
    gap: 16px;
    flex-wrap: wrap;
    justify-content: flex-start !important;
  }

  .mc-ftr7-bottom .info-address {
    flex: 1;
  }
}

/* $md: 768–991px — logo arriba, menú + badge + horario abajo */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-footer7-content {
    flex-wrap: wrap;
    gap: 24px 30px;
    justify-content: center !important;
    align-items: flex-start;
  }

  /* Logo centrado, ancho completo */
  .mc-ftr7-widget {
    flex: 0 0 100%;
    width: 100%;
    text-align: center;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 280px;
    margin: 0 auto;
  }

  /* Badge V visible al lado de horario */
  .mc-ftr7-logo-col {
    display: flex !important;
    align-items: flex-start;
    flex: 0 0 auto;
  }

  .mc-ftr7-logo-col img.mc-ftr7-logo-badge {
    width: 140px;
    max-height: none;
    height: auto;
  }

  /* Menú y horario lado a lado */
  .mc-footer7-content>.mc-ftr6-widget {
    flex: 0 0 auto;
  }

  .mc-ftr7-bottom {
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center !important;
  }

  .mc-ftr7-bottom .info-cta {
    text-align: center;
    flex: 0 0 100%;
  }

  .mc-ftr7-bottom .info-cta a {
    display: block;
    text-align: center;
  }

  .mc-ftr7-bottom .info-address {
    text-align: center;
  }

  .mc-ftr7-bottom .info-address p {
    max-width: 100%;
    text-align: center;
  }

  .mc-ftr7-copyright {
    text-align: center;
  }
}

/* $sm: 576–767px — todo centrado, badge V + horario en fila */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mc-footer7-sec {
    border-radius: 14px;
  }

  .mc-footer7-content {
    display: grid !important;
    grid-template-columns: auto auto;
    grid-template-areas:
      "logo    logo"
      "menu    menu"
      "badge   horario";
    gap: 28px 20px;
    justify-content: center;
    align-items: start;
  }

  /* 1. Logo */
  .mc-ftr7-widget {
    grid-area: logo;
    text-align: center;
    width: 100%;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 300px;
    margin: 0 auto;
  }

  /* 2. Menú centrado */
  .mc-footer7-content>.mc-ftr6-widget:nth-child(2) {
    grid-area: menu;
    text-align: center;
  }

  .mc-ftr6-widget .menu-widget {
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  .mc-ftr6-widget .menu-widget .menulist-item {
    justify-content: center !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .mc-ftr6-widget .menu-widget ul {
    text-align: center !important;
    padding-left: 0 !important;
    list-style: none !important;
    width: 100% !important;
  }

  .mc-ftr6-widget .menu-widget li {
    text-align: center !important;
  }

  .mc-ftr6-widget .menu-widget li a {
    display: block !important;
    text-align: center !important;
  }

  /* 3. Badge V a la izquierda */
  .mc-ftr7-logo-col {
    display: flex !important;
    grid-area: badge;
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 4px;
  }

  .mc-ftr7-logo-col img.mc-ftr7-logo-badge {
    width: 120px;
    height: auto;
  }

  /* 4. Horario a la derecha */
  .mc-footer7-content>.mc-ftr6-widget:last-child {
    grid-area: horario;
    text-align: left;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .widget-title {
    text-align: left;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .widget-title::before {
    left: 0 !important;
    transform: none !important;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .work-widget {
    text-align: left;
  }

  .mc-ftr7-bottom {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }

  .mc-ftr7-bottom .info-cta {
    text-align: center;
  }

  .mc-ftr7-bottom .info-cta a {
    display: block;
    text-align: center;
  }

  .mc-ftr7-bottom .info-address p {
    max-width: 100%;
    text-align: center;
  }

  .mc-ftr7-bottom .info-social {
    justify-content: center;
  }

  .mc-ftr7-copyright {
    text-align: center;
  }
}

/* ≤575px — móvil, todo centrado, badge V + horario en fila */
@media only screen and (max-width: 575px) {
  .mc-footer7-sec {
    border-radius: 10px;
  }

  /* Grid: filas logo, menú, [badge+horario] */
  .mc-footer7-content {
    display: grid !important;
    grid-template-columns: auto auto;
    grid-template-areas:
      "logo    logo"
      "menu    menu"
      "badge   horario";
    gap: 24px 16px;
    justify-content: center;
    align-items: start;
  }

  /* 1. Logo principal — más grande */
  .mc-ftr7-widget {
    grid-area: logo;
    text-align: center;
    width: 100%;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 280px;
    margin: 0 auto;
  }

  .mc-ftr7-widget .logo-widget .item-shape {
    display: flex;
    justify-content: center;
  }

  /* 2. Menú centrado */
  .mc-footer7-content>.mc-ftr6-widget:nth-child(2) {
    grid-area: menu;
    text-align: center;
    width: 100%;
  }

  .mc-ftr6-widget {
    text-align: center;
  }

  .mc-ftr6-widget .menu-widget {
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  .mc-ftr6-widget .menu-widget .menulist-item {
    justify-content: center !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .mc-ftr6-widget .menu-widget ul {
    text-align: center !important;
    padding-left: 0 !important;
    list-style: none !important;
    width: 100% !important;
  }

  .mc-ftr6-widget .menu-widget li {
    text-align: center !important;
    margin-bottom: 12px;
    width: 100% !important;
  }

  .mc-ftr6-widget .menu-widget li a {
    font-size: 15px;
    display: block !important;
    text-align: center !important;
  }

  /* 3. Badge V a la izquierda */
  .mc-ftr7-logo-col {
    display: flex !important;
    grid-area: badge;
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 4px;
  }

  .mc-ftr7-logo-col img.mc-ftr7-logo-badge {
    width: 100px;
    height: auto;
  }

  /* 4. Horario a la derecha del badge */
  .mc-footer7-content>.mc-ftr6-widget:last-child {
    grid-area: horario;
    text-align: left;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .widget-title {
    text-align: left;
    margin-bottom: 8px;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .widget-title::before {
    left: 0 !important;
    transform: none !important;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .work-widget {
    text-align: left;
  }

  .mc-footer7-content>.mc-ftr6-widget:last-child .work-widget p {
    font-size: 14px;
    line-height: 1.5;
  }

  /* Bottom centrado */
  .mc-ftr7-bottom {
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px;
    padding: 20px 0;
  }

  .mc-ftr7-bottom .info-cta {
    text-align: center;
  }

  .mc-ftr7-bottom .info-cta a {
    display: block;
    text-align: center;
    margin-bottom: 4px;
  }

  .mc-ftr7-bottom .info-address p {
    max-width: 100%;
    text-align: center;
    padding: 0 16px;
  }

  .mc-ftr7-bottom .info-social {
    justify-content: center;
  }

  .mc-ftr7-copyright {
    text-align: center;
    padding: 16px 0;
    font-size: 14px;
  }
}

/* ≤480px — sin bordes redondeados */
@media (max-width: 480px) {
  .mc-footer7-sec {
    border-radius: 0;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .mc-ftr7-widget .logo-widget {
    max-width: 260px;
  }
}

/* ≤390px — ajustes finos */
@media (max-width: 390px) {
  .mc-ftr7-widget .logo-widget {
    max-width: 240px;
  }

  .mc-ftr7-bottom .info-social a {
    width: 36px;
    height: 36px;
  }

  .mc-ftr6-widget .menu-widget li a {
    font-size: 14px;
  }

  .mc-ftr7-logo-col img.mc-ftr7-logo-badge {
    width: 80px;
  }
}

/* ── 5b. Footer 7 – línea debajo de títulos (Horario, etc.) */
/* Figma: línea #2D3F65, sin verde #C4FDA0                   */
.mc-ftr6-widget .widget-title:is(.ver_2) {
  position: relative !important;
  text-align: left !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
}

.mc-ftr6-widget .widget-title:is(.ver_2):before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 60px !important;
  height: 1px !important;
  background-color: #4F5E7E !important;
}

/* ── 6. Cuadros / About section — corrección de desborde ── */
@media only screen and (max-width: 767px) {
  .mc-hero7-sec {
    overflow: hidden;
  }
}

/* ── 7. Secciones con margen lateral — no desbordar ─────── */
/* Protege hero y footer cuando el viewport es intermedio */
.mc-hero7-sec,
.mc-footer7-sec {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* ── 8. Blog page – banner en single post/archive ───────── */
/* Evitar que el banner cause overflow horizontal */
.lv-blog-detail-banner,
.lv-blog-detail-banner__overlay {
  max-width: 100%;
}

/* ==========================================================
   9. HOME – Responsive overrides
   Corrige reglas inline de Elementor que usan !important
   con anchos/fuentes fijas que rompen en móvil.
   ========================================================== */

/* ── 9a. Sección Medicox visible (6fa6e5b6) – ocultar ───── */
/* Contenido legacy en inglés que no pertenece al diseño     */
.elementor-element-6fa6e5b6 {
  display: none !important;
}

/* ── 9b. Hero – max-width del título ─────────────────────── */
/* El título tiene max-width: 605px que desborda en $sm      */
@media only screen and (max-width: 767px) {

  .mc-hr7-textarea .hr7-title,
  .mc-hr7-textarea p {
    max-width: 100% !important;
  }
}

/* ── 9c. Cuadros (mc-appoint7) – fuentes demasiado grandes  */
/* El inline CSS fuerza 36px en h3 y lista; escalar p/móvil  */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-appoint7-schedule h3 {
    font-size: 28px !important;
  }

  .mc-appoint7-schedule .info-schedule li {
    font-size: 28px !important;
    line-height: 34px !important;
  }

  .mc-appoint7-req h3 {
    font-size: 28px !important;
  }

  .mc-appoint7-req .pera-content p {
    font-size: 28px !important;
    line-height: 34px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-appoint7-schedule h3 {
    font-size: 26px !important;
  }

  .mc-appoint7-schedule .info-schedule li {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .mc-appoint7-req h3 {
    font-size: 26px !important;
  }

  .mc-appoint7-req .pera-content p {
    font-size: 26px !important;
    line-height: 32px !important;
  }
}

@media only screen and (max-width: 767px) {
  .mc-appoint7-schedule h3 {
    font-size: 22px !important;
  }

  .mc-appoint7-schedule .info-schedule li {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .mc-appoint7-req h3 {
    font-size: 22px !important;
  }

  .mc-appoint7-req .pera-content p {
    font-size: 22px !important;
    line-height: 28px !important;
  }
}

@media only screen and (max-width: 480px) {
  .mc-appoint7-schedule h3 {
    font-size: 20px !important;
  }

  .mc-appoint7-schedule .info-schedule li {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .mc-appoint7-req h3 {
    font-size: 20px !important;
  }

  .mc-appoint7-req .pera-content p {
    font-size: 20px !important;
    line-height: 26px !important;
  }
}

/* ── 9d. Títulos de sección – escalar en móvil ───────────── */
/* Inline CSS fuerza 48-64px en títulos y subtítulos         */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .sec_title.tx-split-text.split-in-up {
    font-size: 40px !important;
    line-height: 46px !important;
  }

  .mc-sec-title7 .subtitle {
    font-size: 40px !important;
    line-height: 46px !important;
  }

  .mc-sec-title7 .sec_title {
    font-size: 30px !important;
    line-height: 36px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .sec_title.tx-split-text.split-in-up {
    font-size: 36px !important;
    line-height: 42px !important;
  }

  .mc-sec-title7 .subtitle {
    font-size: 36px !important;
    line-height: 42px !important;
  }

  .mc-sec-title7 .sec_title {
    font-size: 28px !important;
    line-height: 34px !important;
  }
}

@media only screen and (max-width: 767px) {
  .sec_title.tx-split-text.split-in-up {
    font-size: 30px !important;
    line-height: 36px !important;
    padding-bottom: 30px !important;
  }

  .mc-sec-title7 .subtitle {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  .mc-sec-title7 .sec_title {
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .mc-sec-title7.headline-6.pera-content h1 {
    font-size: 24px !important;
    line-height: 30px !important;
  }
}

@media only screen and (max-width: 480px) {
  .sec_title.tx-split-text.split-in-up {
    font-size: 26px !important;
    line-height: 32px !important;
    padding-bottom: 24px !important;
  }

  .mc-sec-title7 .subtitle {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .mc-sec-title7 .sec_title {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .mc-sec-title7.headline-6.pera-content h1 {
    font-size: 22px !important;
    line-height: 28px !important;
  }
}

@media only screen and (max-width: 375px) {
  .sec_title.tx-split-text.split-in-up {
    font-size: 24px !important;
    line-height: 30px !important;
    padding-bottom: 20px !important;
  }

  .mc-sec-title7 .subtitle {
    font-size: 24px !important;
    line-height: 30px !important;
  }
}

/* ── 9e. Farmacovigilancia (mc-cta9-wrap) ────────────────── */
/* Figma: caja azul #98B0E5 a la derecha, r20                */
/* H1 36px/40px Montserrat 400, color #2D3F65                */
/* Inline Elementor fuerza: width 35%, padding, font 36px     */
/* Usamos #mc-cta9 (ID) para ganar especificidad.             */

/* -- Base (todas las resoluciones) ------------------------- */
#mc-cta9 .mc-cta9-wrap {
  background-color: #98B0E5 !important;
  border-radius: 20px !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  width: 38% !important;
  padding: 40px 40px 80px !important;
}

#mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 36px !important;
  line-height: 40px !important;
  color: #2D3F65 !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  word-spacing: normal !important;
  white-space: normal !important;
  max-width: 100% !important;
}

/* Override split-line fixed height from wp-custom-css (ALL breakpoints) */
#mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title .split-line {
  height: auto !important;
  overflow: visible !important;
  padding: 0 !important;
  line-height: inherit !important;
}

/* Desktop: <br> visible → quiebres de línea exactos (Figma) */
/* Móvil ≤991px: ocultar <br> → texto fluye con espacios     */
@media only screen and (max-width: 991px) {
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title br {
    display: none !important;
  }
}

/* Botón: pill blanco con flecha oscura */
#mc-cta9 .mc-btn-4 a {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  background-color: #fff !important;
  color: #2D3F65 !important;
  border-radius: 100px !important;
  padding: 10px 10px 10px 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#mc-cta9 .mc-btn-4 a::before {
  display: none !important;
}

#mc-cta9 .mc-btn-4 a i {
  width: 34px !important;
  height: 34px !important;
  border-radius: 100% !important;
  background-color: #2D3F65 !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  transform: rotate(-45deg) !important;
  transition: transform 300ms ease, background-color 300ms ease !important;
  flex-shrink: 0 !important;
}

#mc-cta9 .mc-btn-4 a:hover {
  background-color: #F5C84C !important;
  color: #2D3F65 !important;
}

#mc-cta9 .mc-btn-4 a:hover i {
  transform: rotate(0deg) !important;
}

/* Forma decorativa (pastilla) — posicionar fuera de la caja  */
#mc-cta9 .mc-cta9-shape {
  bottom: -30px !important;
  right: -50px !important;
  z-index: 2 !important;
}

#mc-cta9 .mc-cta9-shape img {
  width: 110px !important;
  height: auto !important;
}

/* -- $xxl: 1400–1599px ------------------------------------- */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  #mc-cta9 .mc-cta9-wrap {
    width: 40% !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 34px !important;
    line-height: 38px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 100px !important;
  }
}

/* -- $xl: 1200–1399px -------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  #mc-cta9 .mc-cta9-wrap {
    width: 42% !important;
    padding: 36px 36px 70px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 32px !important;
    line-height: 36px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -24px !important;
    right: -20px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 85px !important;
  }
}

/* -- $lg: 992–1199px --------------------------------------- */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  #mc-cta9 .mc-cta9-wrap {
    width: 48% !important;
    padding: 32px 32px 60px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 26px !important;
    line-height: 30px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 15px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -20px !important;
    right: -12px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 72px !important;
  }
}

/* -- $md: 768–991px ---------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  #mc-cta9 .mc-cta9-content {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }

  #mc-cta9 .mc-cta9-wrap {
    width: 55% !important;
    padding: 28px 28px 50px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 22px !important;
    line-height: 26px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 14px !important;
    padding: 8px 8px 8px 20px !important;
    gap: 8px !important;
  }

  #mc-cta9 .mc-btn-4 a i {
    width: 30px !important;
    height: 30px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -16px !important;
    right: -8px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 62px !important;
  }
}

/* -- $sm: 576–767px ---------------------------------------- */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  #mc-cta9 .mc-cta9-content {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }

  #mc-cta9 .mc-cta9-text {
    justify-content: center !important;
  }

  #mc-cta9 .mc-cta9-wrap {
    width: 85% !important;
    padding: 28px 24px 44px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 22px !important;
    line-height: 26px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 14px !important;
    padding: 8px 8px 8px 20px !important;
    gap: 8px !important;
  }

  #mc-cta9 .mc-btn-4 a i {
    width: 30px !important;
    height: 30px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -12px !important;
    right: -5px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 52px !important;
  }
}

/* -- $xs: 481–575px ---------------------------------------- */
@media only screen and (min-width: 481px) and (max-width: 575px) {
  #mc-cta9 .mc-cta9-content {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  #mc-cta9 .mc-cta9-text {
    justify-content: center !important;
  }

  #mc-cta9 .mc-cta9-wrap {
    width: 90% !important;
    padding: 24px 20px 40px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 13px !important;
    padding: 8px 8px 8px 18px !important;
    gap: 8px !important;
  }

  #mc-cta9 .mc-btn-4 a i {
    width: 28px !important;
    height: 28px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -10px !important;
    right: -3px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 44px !important;
  }
}

/* -- $xxs: ≤480px (móviles) -------------------------------- */
@media only screen and (max-width: 480px) {
  #mc-cta9 .mc-cta9-sec {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #mc-cta9 .mc-cta9-content {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }

  #mc-cta9 .mc-cta9-text {
    justify-content: center !important;
  }

  #mc-cta9 .mc-cta9-wrap {
    width: 92% !important;
    padding: 24px 20px 36px !important;
    border-radius: 16px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 13px !important;
    padding: 8px 8px 8px 16px !important;
    gap: 6px !important;
  }

  #mc-cta9 .mc-btn-4 a i {
    width: 26px !important;
    height: 26px !important;
    font-size: 12px !important;
  }

  #mc-cta9 .mc-cta9-shape {
    bottom: -8px !important;
    right: 0px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 38px !important;
  }
}

/* -- ≤375px (móviles pequeños) ----------------------------- */
@media only screen and (max-width: 375px) {
  #mc-cta9 .mc-cta9-wrap {
    width: 94% !important;
    padding: 20px 16px 32px !important;
    border-radius: 14px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 17px !important;
    line-height: 21px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 12px !important;
  }

  #mc-cta9 .mc-cta9-shape img {
    width: 34px !important;
  }
}

/* -- ≤320px (mínimo) --------------------------------------- */
@media only screen and (max-width: 320px) {
  #mc-cta9 .mc-cta9-wrap {
    width: 96% !important;
    padding: 18px 14px 28px !important;
  }

  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title,
  #mc-cta9 .mc-cta9-wrap .mc-sec-title7 h1.sec_title.tx-split-text.split-in-up {
    font-size: 16px !important;
    line-height: 20px !important;
  }

  #mc-cta9 .mc-btn-4 a {
    font-size: 12px !important;
  }
}

/* ── 9f. Blog / Testimonial (mc-testi7) — Figma 31:16 ──── */
/* Figma desktop (1512px):                                    */
/*   Contenedor: fondo #2D3F65, r20, padding ~16px            */
/*   Izq: 529×760, r20, #98B0E5 (Elementor inline maneja bg) */
/*   Der: 873×760, r20, foto Dr. Vargas (abs) + card blog    */
/*   Card: 547×357, r10, #CBD7F2, bottom-right sobre imagen  */
/*   Card thumb: 130×309, r10 (llena altura del card)         */
/*   Card title: 24px Montserrat Regular, #000                */
/*   Card excerpt: 16px/20px Montserrat Regular, #2D3F65      */

/* ── Igualar altura de ambas columnas ─────────────────────── */
/* Cadena flex stretch: container → col → widget-wrap →        */
/* widget → widget-container → contenido                       */

.mc-testi7-sec>.elementor-container {
  display: flex !important;
  align-items: stretch !important;
}

.mc-testi7-sec .elementor-col-50 {
  display: flex !important;
  flex-direction: column !important;
}

.mc-testi7-sec .elementor-col-50>.elementor-widget-wrap {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.mc-testi7-sec .elementor-col-50>.elementor-widget-wrap>.elementor-widget {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.mc-testi7-sec .elementor-col-50>.elementor-widget-wrap>.elementor-widget>.elementor-widget-container {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Contenido izq y der: llenar toda la altura disponible      */
.mc-testi7-text {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

.mc-testi7-slider-wrap {
  flex: 1 !important;
}

/* ── Columna izquierda: alineación izquierda ─────────────── */
/* HTML tiene class="text-center" — Figma muestra left-align. */

.mc-testi7-text {
  text-align: left !important;
  border-radius: 20px !important;
}

/* Subtítulo "Blog": 48px Regular (Figma)                          */
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
  font-size: 48px !important;
  line-height: 50px !important;
  font-weight: 400 !important;
  color: #2D3F65 !important;
  margin-bottom: 8px !important;
}

/* Título "Medicina y vida con el Dr. Vargas": 48px Bold, lh 50px   */
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title,
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 48px !important;
  font-weight: 700 !important;
  line-height: 50px !important;
  color: #2D3F65 !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
  padding: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  line-height: 50px !important;
  overflow: visible !important;
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
}

/* Forzar que estilos inline de GSAP no generen espacio extra */
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title div,
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up div {
  padding: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  margin-bottom: 0 !important;
  line-height: inherit !important;
}

/* Línea divisoria entre título y párrafo (Figma node 31:8)        */
.mc-testi7-sec .mc-testi7-text .mc-sec-title7 {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  text-align: left !important;
  padding-bottom: 20px !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid #2D3F65 !important;
}

/* Párrafo: 24px/28px Regular, max-width 423px (Figma)             */
.mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 24px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  color: #2D3F65 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 423px !important;
  white-space: normal !important;
  word-spacing: normal !important;
  text-align: left !important;
}

/* Móvil ≤991px: ocultar <br> del título → texto fluye natural */
@media only screen and (max-width: 991px) {

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title br {
    display: none !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    max-width: 100% !important;
  }
}

/* ── Columna derecha: imagen + card ──────────────────────── */
/* El padding-top se ajusta para empujar la card hacia abajo; */
/* la imagen (position:absolute) llena todo el contenedor.    */

.mc-testi7-slider-wrap {
  border-radius: 20px !important;
  overflow: visible !important;
  padding: 31px !important;
}

/* Permitir que la card sobresalga del widget container       */
.mc-testi7-sec .elementor-col-50:last-child {
  overflow: visible !important;
}

.mc-testi7-sec .elementor-col-50:last-child .elementor-widget-container {
  overflow: visible !important;
}

/* Imagen de fondo — sin overlay oscuro (Figma: foto limpia) */
.mc-testi7-slider-wrap .item-img-bg {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.mc-testi7-slider-wrap .item-img-bg:before {
  display: none !important;
}

/* Card blog — #CBD7F2, r10, alineada a la derecha           */
.mc-testi7-slider {
  background-color: #CBD7F2 !important;
  border-radius: 10px !important;
  border-bottom: none !important;
  padding: 24px !important;
  max-width: 547px !important;
  z-index: 3 !important;
  margin-left: auto !important;
}

/* Ocultar paginación del slider */
.mc-testi7-pagi {
  display: none !important;
}

/* Items blog: forzar visibilidad (SCSS base tiene opacity:0  */
/* que depende de .swiper-slide-active, puede fallar)         */
.mc-testi7-item--blog .item-text,
.mc-testi7-item--blog .item-img {
  opacity: 1 !important;
  transform: none !important;
}

/* Items dentro de la card: texto + thumbnail lado a lado     */
.mc-testi7-item {
  gap: 20px !important;
}

.mc-testi7-item .item-text {
  max-width: 100% !important;
  flex: 1 !important;
  min-width: 0 !important;
}

/* Card título: 24px Regular, color negro (Figma)             */
.mc-testi7-item .item-text h3,
.mc-testi7-blog-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 28px !important;
  color: #000 !important;
  padding-bottom: 12px !important;
}

/* Link del título: hereda color negro (no azul de <a>)       */
.mc-testi7-item .item-text a {
  color: inherit !important;
  text-decoration: none !important;
}

/* Card excerpt: 16px/20px, #2D3F65 (Figma)                   */
/* Usa .pera-content para ganar a la regla global 36px         */
.mc-testi7-item .item-text.pera-content .mc-testi7-blog-excerpt p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  color: #2D3F65 !important;
}

/* Card excerpt: ocultar <br> para flujo natural del texto    */
.mc-testi7-blog-excerpt br {
  display: none !important;
}

/* Card thumbnail: 130px ancho, llena altura del card         */
.mc-testi7-item .item-img,
.mc-testi7-blog-img {
  width: 130px !important;
  min-width: 130px !important;
  height: auto !important;
  min-height: 200px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  align-self: stretch !important;
}

.mc-testi7-item .item-img img,
.mc-testi7-blog-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* ── Responsive ──────────────────────────────────────────── */

/* -- $xxl: 1400–1599px ------------------------------------ */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mc-testi7-slider {
    max-width: 480px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 42px !important;
    line-height: 44px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 42px !important;
    line-height: 44px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 44px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 22px !important;
    line-height: 26px !important;
  }
}

/* -- $xl: 1200–1399px ------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mc-testi7-slider {
    max-width: 420px !important;
    padding: 20px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 36px !important;
    line-height: 38px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 36px !important;
    line-height: 38px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 38px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  .mc-testi7-blog-title,
  .mc-testi7-item .item-text h3 {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    width: 100px !important;
    min-width: 100px !important;
    min-height: 160px !important;
  }
}

/* -- $lg: 992–1199px -------------------------------------- */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-testi7-slider {
    max-width: 360px !important;
    padding: 16px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 30px !important;
    line-height: 32px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 30px !important;
    line-height: 32px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 32px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 18px !important;
    line-height: 22px !important;
  }

  .mc-testi7-blog-title,
  .mc-testi7-item .item-text h3 {
    font-size: 18px !important;
    line-height: 22px !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    width: 90px !important;
    min-width: 90px !important;
    min-height: 140px !important;
  }
}

/* -- $md: 768–991px --------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-testi7-sec .elementor-col-50 {
    width: 100% !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 28px !important;
    line-height: 30px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 28px !important;
    line-height: 30px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 30px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 18px !important;
    line-height: 22px !important;
  }

  .mc-testi7-slider {
    max-width: 100% !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    min-height: 160px !important;
  }
}

/* -- $sm: 576–767px --------------------------------------- */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mc-testi7-sec .elementor-col-50 {
    width: 100% !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 26px !important;
    line-height: 28px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 26px !important;
    line-height: 28px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 28px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 16px !important;
    line-height: 20px !important;
  }

  .mc-testi7-slider {
    max-width: 100% !important;
    padding: 18px !important;
  }

  .mc-testi7-item {
    flex-wrap: wrap !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    width: 100% !important;
    min-width: 0 !important;
    height: 180px !important;
    min-height: auto !important;
    align-self: auto !important;
  }
}

/* -- ≤575px (móviles) ------------------------------------- */
@media only screen and (max-width: 575px) {
  .mc-testi7-sec .elementor-col-50 {
    width: 100% !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 24px !important;
    line-height: 26px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 24px !important;
    line-height: 26px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 26px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 15px !important;
    line-height: 19px !important;
  }

  .mc-testi7-slider-wrap {
    border-radius: 14px !important;
  }

  .mc-testi7-slider-wrap .item-img-bg {
    border-radius: 14px !important;
  }

  .mc-testi7-slider {
    max-width: 100% !important;
    padding: 16px !important;
  }

  .mc-testi7-item {
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    width: 100% !important;
    min-width: 0 !important;
    height: 160px !important;
    min-height: auto !important;
    align-self: auto !important;
  }

  .mc-testi7-blog-title,
  .mc-testi7-item .item-text h3 {
    font-size: 18px !important;
    line-height: 22px !important;
  }
}

/* -- ≤480px ----------------------------------------------- */
@media only screen and (max-width: 480px) {
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 22px !important;
    line-height: 24px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 22px !important;
    line-height: 24px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 24px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 14px !important;
    line-height: 18px !important;
  }

  .mc-testi7-slider-wrap {
    border-radius: 12px !important;
  }

  .mc-testi7-slider-wrap .item-img-bg {
    border-radius: 12px !important;
  }

  .mc-testi7-slider {
    padding: 12px !important;
    border-radius: 8px !important;
  }

  .mc-testi7-blog-title,
  .mc-testi7-item .item-text h3 {
    font-size: 16px !important;
    line-height: 20px !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    height: 140px !important;
  }

  .mc-testi7-item {
    gap: 10px !important;
  }
}

/* -- ≤375px ----------------------------------------------- */
@media only screen and (max-width: 375px) {
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .subtitle {
    font-size: 20px !important;
    line-height: 22px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up {
    font-size: 20px !important;
    line-height: 22px !important;
  }

  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 .sec_title .split-line,
  .mc-testi7-sec .mc-testi7-text .mc-sec-title7 h2.sec_title.tx-split-text.split-in-up .split-line {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 22px !important;
    overflow: visible !important;
  }

  .mc-testi7-sec .mc-testi7-text.pera-content.text-center .item-text>p {
    font-size: 13px !important;
    line-height: 17px !important;
  }

  .mc-testi7-slider-wrap {
    border-radius: 10px !important;
  }

  .mc-testi7-slider-wrap .item-img-bg {
    border-radius: 10px !important;
  }

  .mc-testi7-slider {
    padding: 10px !important;
  }

  .mc-testi7-blog-title,
  .mc-testi7-item .item-text h3 {
    font-size: 15px !important;
    line-height: 19px !important;
  }

  .mc-testi7-item .item-img,
  .mc-testi7-blog-img {
    height: 120px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* ── 9g. Únete al equipo (mc-service7) — Figma 30:3 ────── */
/* Estructura: mc-service7-content                           */
/*   ├─ mc-service7-text  (título "Únete a nuestro equipo") */
/*   ├─ mc-ser7-side      (foto grande del equipo)          */
/*   └─ mc-service7-item-wrap                               */
/*       └─ mc-ser7-item  (tarjeta "Forma parte")           */
/*           └─ item-img-text (imagen lab + texto)           */

/* -- Base: todas las resoluciones ------------------------- */

/* Background sección: #2D3F65, border-radius 20px (Figma)   */
.mc-service7-sec {
  background-color: #2D3F65 !important;
  border-radius: 20px !important;
}

/* Contenedor: min-height para que la foto absolute quepa     */
/* Inline fuerza height:900px — lo dejamos pero con overflow  */
.mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
  overflow: visible !important;
}

/* Tarjeta wrap: absolute desde el bottom, así se alinea      */
/* con la foto del equipo que también usa bottom               */
.mc-service7-item-wrap {
  position: absolute !important;
  bottom: 60px !important;
  left: 0 !important;
  width: 55% !important;
  padding-left: 52px !important;
  padding-top: 0 !important;
}

/* Tarjeta: fondo #CBD7F2, r10, 688px max-width (Figma)       */
.mc-ser7-item {
  background-color: #CBD7F2 !important;
  border-radius: 10px !important;
  width: 100% !important;
  max-width: 688px !important;
}

.mc-ser7-item.ver_2,
.mc-ser7-item.ver_3 {
  background-color: #CBD7F2 !important;
}

/* h3 tarjeta: Montserrat Bold 24px #2D3F65 (Figma)          */
.mc-ser7-item h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #2D3F65 !important;
  line-height: 28px !important;
}

.mc-ser7-item h3 a {
  color: inherit !important;
  text-decoration: none !important;
}

/* Texto tarjeta: Montserrat Regular 16px/20px #2D3F65        */
.mc-ser7-item .item-text p,
.mc-ser7-item .item-text .p-cte {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  color: #2D3F65 !important;
}

/* Gap entre imagen y texto: Figma ~47px                      */
.mc-ser7-item .item-img-text {
  gap: 40px !important;
}

/* Imagen dentro de tarjeta: 187×253px r10 (Figma)            */
.mc-ser7-item .item-img {
  width: 187px !important;
  min-width: 187px !important;
  height: 253px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.mc-ser7-item .item-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Título h2: Montserrat Bold 64px, line-height 52px (Figma)  */
.mc-service7-text {
  padding-top: 80px !important;
  margin-bottom: 20px !important;
}

.mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 64px !important;
  line-height: 52px !important;
  color: #fff !important;
}

/* Foto equipo: 570×549, r20, alineada por bottom con card    */
/* Ambos usan bottom:60px → misma línea inferior               */
/* Especificidad alta para ganar al inline                     */
.mc-service7-content .mc-ser7-side.img-cover.position-absolute {
  max-width: 570px !important;
  max-height: 700px !important;
  border-radius: 20px !important;
  top: auto !important;
  bottom: 60px !important;
  right: 52px !important;
  margin-top: 0 !important;
}

/* Ocultar flecha y su fila contenedora (no están en Figma)   */
.mc-ser7-arrow {
  display: none !important;
}

.mc-service7-items-2 {
  display: none !important;
}

.mc-service7-items-1 {
  margin-bottom: 0 !important;
}

/* -- $xxl: 1400–1599px ------------------------------------ */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 48px !important;
    line-height: 44px !important;
    margin-left: 30px !important;
  }

  .mc-service7-item-wrap {
    width: 50% !important;
    padding-left: 30px !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 560px !important;
  }

  .mc-ser7-item .item-img {
    width: 160px !important;
    min-width: 160px !important;
    height: 220px !important;
  }

  .mc-ser7-item .item-img-text {
    gap: 30px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 480px !important;
    max-height: 600px !important;
    right: 40px !important;
  }
}

/* -- $xl: 1200–1399px ------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 42px !important;
    line-height: 40px !important;
    margin-left: 30px !important;
  }

  .mc-service7-item-wrap {
    width: 50% !important;
    padding-left: 30px !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 480px !important;
  }

  .mc-ser7-item .item-img {
    width: 150px !important;
    min-width: 150px !important;
    height: 210px !important;
  }

  .mc-ser7-item .item-img-text {
    gap: 24px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 420px !important;
    max-height: 560px !important;
    right: 30px !important;
  }
}

/* -- $lg: 992–1199px --------------------------------------- */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 42px !important;
    line-height: 40px !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 460px !important;
  }

  .mc-ser7-item .item-img {
    width: 130px !important;
    min-width: 130px !important;
    height: 190px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 380px !important;
    max-height: 380px !important;
  }
}

/* -- $md: 768–991px ---------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
    height: auto !important;
    min-height: auto !important;
  }

  .mc-service7-item-wrap {
    position: static !important;
    width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .mc-service7-text {
    text-align: center !important;
    margin-bottom: 24px !important;
  }

  .mc-service7-text .split-line {
    text-align: center !important;
    justify-content: center !important;
  }

  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 40px !important;
    line-height: 38px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 100% !important;
    max-height: 400px !important;
    border-radius: 16px !important;
    margin-bottom: 24px !important;
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    margin-top: 0 !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 100% !important;
  }

  .mc-ser7-item .item-img {
    width: 160px !important;
    min-width: 160px !important;
    height: 220px !important;
  }
}

/* -- $sm: 576–767px ---------------------------------------- */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
    height: auto !important;
    min-height: auto !important;
  }

  .mc-service7-item-wrap {
    position: static !important;
    width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .mc-service7-text {
    text-align: center !important;
    margin-bottom: 20px !important;
  }

  .mc-service7-text .split-line {
    text-align: center !important;
    justify-content: center !important;
  }

  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 34px !important;
    line-height: 32px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 100% !important;
    max-height: 350px !important;
    border-radius: 14px !important;
    margin-bottom: 20px !important;
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    margin-top: 0 !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px !important;
  }

  .mc-ser7-item .item-img-text {
    flex-direction: column !important;
    align-items: center !important;
  }

  .mc-ser7-item .item-img {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 280px !important;
    height: 200px !important;
    margin-bottom: 16px !important;
  }

  .mc-ser7-item .item-content {
    text-align: center !important;
  }
}

/* -- ≤575px (móviles) ------------------------------------- */
@media only screen and (max-width: 575px) {
  .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
    height: auto !important;
    min-height: auto !important;
  }

  .mc-service7-item-wrap {
    position: static !important;
    width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .mc-service7-text {
    text-align: center !important;
    margin-bottom: 16px !important;
  }

  .mc-service7-text .split-line {
    text-align: center !important;
    justify-content: center !important;
  }

  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 30px !important;
    line-height: 28px !important;
    margin-bottom: -37px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-width: 100% !important;
    max-height: 280px !important;
    border-radius: 12px !important;
    margin-bottom: 16px !important;
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    margin-top: 0 !important;
  }

  .mc-ser7-item {
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px !important;
  }

  .mc-ser7-item .item-img-text {
    flex-direction: column !important;
    align-items: center !important;
  }

  .mc-ser7-item .item-img {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 180px !important;
    margin-bottom: 16px !important;
    border-radius: 10px !important;
  }

  .mc-ser7-item .item-content {
    text-align: center !important;
  }

  .mc-ser7-item h3 {
    font-size: 20px !important;
    margin-bottom: 8px !important;
  }
}

/* -- ≤480px ------------------------------------------------ */
@media only screen and (max-width: 480px) {
  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 26px !important;
    line-height: 26px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 240px !important;
  }

  .mc-ser7-item .item-img {
    height: 160px !important;
  }
}

/* -- ≤375px ------------------------------------------------ */
@media only screen and (max-width: 375px) {
  .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 24px !important;
    line-height: 24px !important;
  }

  .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 200px !important;
  }

  .mc-ser7-item .item-img {
    height: 140px !important;
  }

  .mc-ser7-item h3 {
    font-size: 18px !important;
  }
}

/* ── 9g-fix. Únete — Specificity boost vs wp-custom-css ──── */
/* wp-custom-css (inline <style>) loads AFTER our linked CSS  */
/* and forces font-size:64px + height:900px at same spec.     */
/* Prefix with body.page-id-2270 to win cascade.              */

/* -- Base: override container height for ALL breakpoints --- */
body.page-id-2270 .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
  overflow: visible !important;
}

/* -- ≤991px: switch to stacked mobile layout --------------- */
@media only screen and (max-width: 991px) {
  body.page-id-2270 .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
    height: auto !important;
    min-height: auto !important;
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  body.page-id-2270 .mc-service7-item-wrap {
    position: static !important;
    width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    bottom: auto !important;
  }

  body.page-id-2270 .mc-service7-text {
    text-align: center !important;
    padding-top: 0 !important;
    margin-bottom: 16px !important;
  }

  body.page-id-2270 .mc-service7-text .split-line {
    text-align: center !important;
    justify-content: center !important;
    overflow: visible !important;
    height: auto !important;
    padding-top: 0 !important;
  }

  /* Title h2: tighten line-height so split-lines don't gap */
  body.page-id-2270 .mc-service7-text .sec_title.tx-split-text.split-in-up .split-line {
    height: auto !important;
    padding-top: 0 !important;
    line-height: 1.15 !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    right: auto !important;
    max-width: 100% !important;
    max-height: 320px !important;
    border-radius: 14px !important;
    margin: -8px auto 10px !important;
  }

  /* Reduce margin-top on .mc-ser7-side from wp-custom-css 50px */
  body.page-id-2270 .mc-ser7-side.img-cover.position-absolute {
    margin-top: 0 !important;
  }

  /* Reduce internal card text spacing */
  body.page-id-2270 .mc-ser7-item .item-text.pera-content {
    margin-top: 8px !important;
  }

  body.page-id-2270 .mc-service7-items-1.d-flex {
    padding-left: 0 !important;
  }

  body.page-id-2270 .mc-ser7-item {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* -- ≤767px ------------------------------------------------ */
@media only screen and (max-width: 767px) {
  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 32px !important;
    line-height: 34px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 280px !important;
  }
}

/* -- ≤575px ------------------------------------------------ */
@media only screen and (max-width: 575px) {
  body.page-id-2270 .mc-service7-sec {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }

  body.page-id-2270 .mc-service7-content.over-hidden.position-relative.pt-50.pb-60 {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 28px !important;
    line-height: 30px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 240px !important;
    border-radius: 12px !important;
  }

  body.page-id-2270 .mc-ser7-item {
    padding: 16px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-img-text {
    flex-direction: column !important;
    align-items: center !important;
  }

  body.page-id-2270 .mc-ser7-item .item-img {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 170px !important;
    margin-bottom: 8px !important;
    border-radius: 10px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-content {
    text-align: center !important;
  }

  body.page-id-2270 .mc-ser7-item h3 {
    font-size: 18px !important;
    line-height: 22px !important;
    padding-bottom: 6px !important;
  }

  body.page-id-2270 .item-content {
    margin-top: 0px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-text p,
  body.page-id-2270 .mc-ser7-item .item-text .p-cte {
    font-size: 16px !important;
    line-height: 19px !important;
    font-weight: 400 !important;
    color: #2D3F65 !important;
  }

  body.page-id-2270 .mc-ser7-item .item-text .p-cte {
    margin-top: 6px !important;
    display: block !important;
  }
}

/* -- ≤480px ------------------------------------------------ */
@media only screen and (max-width: 480px) {
  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 24px !important;
    line-height: 26px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 200px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-img {
    height: 150px !important;
  }
}

/* -- ≤414px ------------------------------------------------ */
@media only screen and (max-width: 414px) {
  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 22px !important;
    line-height: 24px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 180px !important;
  }
}

/* -- ≤375px ------------------------------------------------ */
@media only screen and (max-width: 375px) {
  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 20px !important;
    line-height: 22px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 160px !important;
  }

  body.page-id-2270 .mc-ser7-item h3 {
    font-size: 18px !important;
    line-height: 22px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-img {
    height: 130px !important;
  }
}

/* -- ≤320px ------------------------------------------------ */
@media only screen and (max-width: 320px) {
  body.page-id-2270 .mc-service7-text .mc-sec-title7.headline-6.pera-content h2 {
    font-size: 18px !important;
    line-height: 20px !important;
  }

  body.page-id-2270 .mc-service7-content .mc-ser7-side.img-cover.position-absolute {
    max-height: 140px !important;
  }

  body.page-id-2270 .mc-ser7-item .item-img {
    height: 110px !important;
  }

  body.page-id-2270 .mc-ser7-item h3 {
    font-size: 16px !important;
  }
}

/* ── 9h. Productos – título h2 de 64-68px ────────────────── */
/* El heading de la sección productos (Elementor widget)      */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .elementor-2270 .elementor-element-86cb0de .elementor-gt-heading {
    font-size: 52px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .elementor-2270 .elementor-element-86cb0de .elementor-gt-heading {
    font-size: 44px !important;
  }
}

@media only screen and (max-width: 767px) {
  .elementor-2270 .elementor-element-86cb0de .elementor-gt-heading {
    font-size: 36px !important;
  }

  .elementor-2270 .elementor-element-86cb0de>.elementor-widget-container {
    padding: 40px 0 40px 0 !important;
  }
}

@media only screen and (max-width: 480px) {
  .elementor-2270 .elementor-element-86cb0de .elementor-gt-heading {
    font-size: 30px !important;
  }

  .elementor-2270 .elementor-element-86cb0de>.elementor-widget-container {
    padding: 30px 0 30px 0 !important;
  }
}

@media only screen and (max-width: 375px) {
  .elementor-2270 .elementor-element-86cb0de .elementor-gt-heading {
    font-size: 26px !important;
  }
}

/* ── 9i. .pera-content p global – limitar alcance ────────── */
/* Inline CSS fuerza 36px en TODOS los .pera-content p.       */
/* Reducimos en móvil sin romper desktop.                     */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .pera-content p {
    font-size: 28px !important;
    line-height: 34px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .pera-content p {
    font-size: 24px !important;
    line-height: 30px !important;
  }
}

@media only screen and (max-width: 767px) {
  .pera-content p {
    font-size: 20px !important;
    line-height: 26px !important;
  }
}

@media only screen and (max-width: 480px) {
  .pera-content p {
    font-size: 18px !important;
    line-height: 24px !important;
  }
}

/* Restaurar tamaños específicos que el override global       */
/* podría afectar negativamente (textos que ya tienen su      */
/* propio font-size inline más pequeño)                       */
.mc-testi7-blog-excerpt p {
  font-size: 16px !important;
  line-height: 20px !important;
}

.mc-service7-items-1.d-flex .item-text.pera-content p {
  font-size: 16px !important;
  line-height: 20px !important;
}

.mc-cta9-wrap.position-relative .mc-sec-title7.headline-6.pera-content p {
  font-size: 16px !important;
  line-height: 20px !important;
}

.mc-cont7-text.headline-6.pera-content .item-text.top_view.position-relative p {
  font-size: 16px !important;
  line-height: 19px !important;
}

/* ── 9j. Categorías – logos responsive (Figma: 208×180, gap 39, r30) ── */

/* Base: items flexibles, mantienen proporciones del Figma */
.mc-partner-item1 {
  gap: 39px !important;
  margin-bottom: 39px !important;
  flex-wrap: nowrap !important;
}

.mc-partner-item1 .mc-sp-img {
  flex: 0 1 208px !important;
  min-width: 0 !important;
}

.mc-partner-item1 .mc-sp-img .item-img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 208 / 180 !important;
  border-radius: 30px !important;
  background-color: #fff !important;
  padding: 20px !important;
}

.mc-partner-item1 .mc-sp-img .item-img img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}

/* Fila 2: offset ~101px a la derecha (Figma) */
.mc-partner-item1:last-child {
  margin-left: 101px !important;
}

/* $xxl: 1400–1599px – reducir gap proporcionalmente */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mc-partner-item1 {
    gap: 30px !important;
    margin-bottom: 30px !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 80px !important;
  }
}

/* $xl: 1200–1399px */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .mc-partner-item1 {
    gap: 22px !important;
    margin-bottom: 22px !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 60px !important;
  }
}

/* $lg: 992–1199px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-partner-item1 {
    gap: 16px !important;
    margin-bottom: 16px !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 40px !important;
  }

  .mc-partner-item1 .mc-sp-img .item-img {
    border-radius: 22px !important;
    padding: 14px !important;
  }
}

/* $md: 768–991px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-partner-item1 {
    gap: 12px !important;
    margin-bottom: 12px !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 24px !important;
  }

  .mc-partner-item1 .mc-sp-img .item-img {
    border-radius: 18px !important;
    padding: 10px !important;
  }
}

/* $sm: 576–767px */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .mc-partner-item1 {
    gap: 10px !important;
    margin-bottom: 10px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  .mc-partner-item1 .mc-sp-img {
    flex: 0 0 calc(33.333% - 8px) !important;
    max-width: calc(33.333% - 8px) !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 0 !important;
  }

  .mc-partner-item1 .mc-sp-img .item-img {
    border-radius: 16px !important;
    padding: 10px !important;
  }
}

/* $xs+$xxs: ≤575px – 3 por fila */
@media only screen and (max-width: 575px) {
  .mc-partner-item1 {
    gap: 10px !important;
    margin-bottom: 10px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  .mc-partner-item1 .mc-sp-img {
    flex: 0 0 calc(33.333% - 8px) !important;
    max-width: calc(33.333% - 8px) !important;
  }

  .mc-partner-item1:last-child {
    margin-left: 0 !important;
  }

  .mc-partner-item1 .mc-sp-img .item-img {
    border-radius: 14px !important;
    padding: 8px !important;
  }
}

/* ≤ 375px – más compacto */
@media only screen and (max-width: 375px) {
  .mc-partner-item1 {
    gap: 8px !important;
    margin-bottom: 8px !important;
  }

  .mc-partner-item1 .mc-sp-img {
    flex: 0 0 calc(33.333% - 6px) !important;
    max-width: calc(33.333% - 6px) !important;
  }

  .mc-partner-item1 .mc-sp-img .item-img {
    border-radius: 12px !important;
    padding: 6px !important;
  }
}

/* ── 9k. Secciones – márgenes laterales en móvil ────────── */
/* Asegurar que todas las secciones home_7 respeten el       */
/* viewport en pantallas ≤480px                               */

@media only screen and (max-width: 480px) {

  .mc-service7-sec,
  .mc-testi7-sec,
  .mc-cta9-sec {
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 0 !important;
  }

  .mc-appoint7-sec {
    margin-left: 8px !important;
    margin-right: 8px !important;
  }
}

/* ── 9l. Productos – carrusel móvil (Swiper) ────────────── */
/* Sólo se activa ≤991px vía JS (lv-product-carousel.js)     */

.lv-product-swiper {
  overflow: hidden !important;
  width: 100% !important;
}

.lv-product-swiper .swiper-slide {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.lv-product-swiper .mc-cg-img {
  width: 100% !important;
  max-width: 100% !important;
}

.lv-product-swiper .mc-cg-img .item-img {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}

.lv-product-swiper .mc-cg-img .item-img img {
  max-width: 280px !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Pagination dots */
.lv-product-pagination {
  text-align: center !important;
  margin-top: 16px !important;
  position: relative !important;
}

.lv-product-pagination .swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
  background-color: #CBD7F2 !important;
  opacity: 1 !important;
  margin: 0 5px !important;
}

.lv-product-pagination .swiper-pagination-bullet-active {
  background-color: #2D3F65 !important;
}

@media only screen and (max-width: 480px) {
  .lv-product-swiper .mc-cg-img .item-img img {
    max-width: 220px !important;
  }
}

@media only screen and (max-width: 375px) {
  .lv-product-swiper .mc-cg-img .item-img img {
    max-width: 180px !important;
  }
}

/* ── 9m. Sección "Siete décadas" – imagen sin tinte azul ── */
/* Figma muestra la foto con colores naturales, sin overlay   */
.mc-appoint7-img {
  background-color: transparent !important;
}

.mc-appoint7-img img {
  mix-blend-mode: normal !important;
}

/* ── 10. Página «Servicios a terceros» (page 50) ──────────── */
/* Ajusta anchos y tipografía para coincidir con diseño Figma  */

/* Desktop: ≥1200px */
@media only screen and (min-width: 1200px) {

  /* Layout flex — cerrar gap entre imágenes y texto */
  .elementor-50 .mc-about5-content {
    justify-content: center !important;
    gap: 100px;
  }

  /* Columna de texto — Figma: 532px */
  .elementor-50 .mc-about5-text-wrap {
    max-width: 532px !important;
  }

  /* Párrafo descriptivo — 532px, 16px según Figma */
  .elementor-50 .mc-about5-text-wrap .mc-sec-title5 p {
    max-width: 532px !important;
    font-size: 16px !important;
    line-height: 20px !important;
  }

  /* Heading "Fabricamos para ti" — Figma: 2 líneas, 360px ancho */
  /* SplitText (GSAP) elimina el <br>, así que usamos max-width  */
  /* + overflow:visible para forzar el quiebre sin cortar texto  */
  .elementor-50 .mc-sec-title5 .sec_title {
    max-width: 400px !important;
    overflow: visible !important;
    font-size: 48px !important;
    line-height: 50px !important;
    font-weight: 700 !important;
  }

  .elementor-50 .mc-sec-title5 .sec_title .split-line,
  .elementor-50 .mc-sec-title5 .sec_title div {
    overflow: visible !important;
  }

  /* Lista de servicios — 16px según Figma (era 20px) */
  .elementor-50 .mc-about5-list {
    max-width: 532px !important;
  }

  .elementor-50 .mc-about5-list li {
    font-size: 16px !important;
    line-height: 20px !important;
    margin-bottom: 0 !important;
    padding-left: 24px !important;
    color: #2d3f65 !important;
  }

  /* Viñeta: punto pequeño estilo Figma (≈5px) */
  .elementor-50 .mc-about5-list li:before {
    width: 5px !important;
    height: 5px !important;
    top: 8px !important;
    background-color: #2d3f65 !important;
  }
}

/* ═══════════════════════════════════════════════════════════ */
/* 12. Contacto – Sección "Únete a nuestro equipo" (Figma)   */
/*     La foto ocupa ~70% inferior; formulario y texto se     */
/*     superponen sobre ella desde arriba.                    */
/* ═══════════════════════════════════════════════════════════ */

/* Sección general */
.mc-cont7-sec {
  padding-bottom: 380px !important;
}

/* Imagen de fondo: la foto debe cubrir la zona inferior y
   superponerse con el contenido, como en Figma               */
.mc-cont7-sec .mc-cont7-img {
  max-height: 550px !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  border-radius: 20px !important;
  z-index: 0 !important;
}

/* Contenido (formulario + texto) por encima de la imagen */
.mc-cont7-content {
  gap: 30px 50px !important;
  align-items: flex-start !important;
  position: relative !important;
  z-index: 2 !important;
  justify-content: center !important;
}

/* ── Formulario (card azul) ─────────────────────────────── */
.mc-contact6-form-area.ver_2 {
  background-color: #98b0e5 !important;
  border-radius: 20px !important;
  padding: 28px 30px 32px !important;
  max-width: 400px !important;
  min-width: 330px !important;
  flex-shrink: 0 !important;
}

/* Título del formulario */
.mc-contact6-form-area.ver_2 h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  font-family: "Montserrat", sans-serif !important;
  color: #2d3f65 !important;
  padding-bottom: 18px !important;
  line-height: 22px !important;
  text-align: left !important;
}

/* Campos del formulario: compactos como Figma (~33px entre cada uno) */
.mc-contact6-form-area.ver_2 .input-field {
  margin-bottom: 4px !important;
}

.mc-contact6-form-area.ver_2 .input-field label {
  font-size: 13px !important;
  font-weight: 400 !important;
  font-family: "Montserrat", sans-serif !important;
  color: #2d3f65 !important;
  letter-spacing: 0 !important;
  line-height: 20px !important;
}

.mc-contact6-form-area.ver_2 .input-field input,
.mc-contact6-form-area.ver_2 .input-field textarea {
  height: 24px !important;
  border: none !important;
  border-bottom: 1px solid rgba(45, 63, 101, 0.45) !important;
  color: #2d3f65 !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 13px !important;
  background-color: transparent !important;
}

/* ── Input file: ocultar botón nativo gris, mostrar solo texto + línea ── */
.mc-contact6-form-area.ver_2 .input-field input[type="file"] {
  border: none !important;
  border-bottom: 1px solid rgba(45, 63, 101, 0.45) !important;
  background: transparent !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: #2d3f65 !important;
  cursor: pointer !important;
  height: 24px !important;
}

.mc-contact6-form-area.ver_2 .input-field input[type="file"]::-webkit-file-upload-button {
  display: none !important;
}

.mc-contact6-form-area.ver_2 .input-field input[type="file"]::file-selector-button {
  display: none !important;
}

/* Botón ENVIAR */
.mc-contact6-form-area.ver_2 button {
  background-color: #6488d6 !important;
  border-radius: 30px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: "Montserrat", sans-serif !important;
  padding: 10px 12px 10px 24px !important;
  margin-top: 14px !important;
  color: #fff !important;
}

.mc-contact6-form-area.ver_2 button:hover {
  background-color: #506fa8 !important;
  color: #fff !important;
}

.mc-contact6-form-area.ver_2 button i {
  width: 28px !important;
  height: 28px !important;
  background-color: #fff !important;
  color: #6488d6 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  margin-left: 10px !important;
}

/* ── Texto derecho: título + descripción ────────────────── */
.mc-cont7-text {
  max-width: 100% !important;
  flex: 1 !important;
  position: relative !important;
  z-index: 2 !important;
}

.mc-cont7-text .item-text {
  position: relative !important;
}

.mc-cont7-text h3 {
  font-size: 36px !important;
  font-weight: 700 !important;
  font-family: "Montserrat", sans-serif !important;
  color: #2d3f65 !important;
  opacity: 1 !important;
  line-height: 40px !important;
  padding-bottom: 8px !important;
}

.mc-cont7-text p {
  font-size: 16px !important;
  font-weight: 400 !important;
  font-family: "Montserrat", sans-serif !important;
  color: #2d3f65 !important;
  line-height: 19px !important;
  width: 621px !important;
  max-width: 100% !important;
  position: static !important;
}

/* Alta especificidad: sobreescribir reglas del theme */
.mc-cont7-text.headline-6.pera-content .item-text.top_view.position-relative h3 {
  font-size: 36px !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  line-height: 40px !important;
  color: #2d3f65 !important;
}

.mc-cont7-text.headline-6.pera-content .item-text.top_view.position-relative p {
  font-size: 16px !important;
  line-height: 19px !important;
  position: static !important;
  width: 621px !important;
  max-width: 100% !important;
}

/* ── Responsive: $xxl, $xl (1200–1599px) ── */
@media only screen and (min-width: 1200px) and (max-width: 1599px) {
  .mc-cont7-sec .mc-cont7-img {
    max-height: 500px !important;
  }

  .mc-cont7-sec {
    padding-bottom: 340px !important;
  }

  .mc-contact6-form-area.ver_2 {
    max-width: 370px !important;
    min-width: 310px !important;
  }

  .mc-cont7-text h3 {
    font-size: 32px !important;
    line-height: 38px !important;
  }
}

/* ── Responsive: $lg (992–1199px) ── */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mc-cont7-sec {
    padding-bottom: 280px !important;
  }

  .mc-cont7-sec .mc-cont7-img {
    max-height: 420px !important;
  }

  .mc-contact6-form-area.ver_2 {
    max-width: 340px !important;
    min-width: 290px !important;
    padding: 24px 22px 28px !important;
  }

  .mc-cont7-content {
    gap: 24px 30px !important;
  }

  .mc-cont7-text h3 {
    font-size: 28px !important;
    line-height: 34px !important;
  }

  .mc-cont7-text p {
    max-width: 100% !important;
  }
}

/* ── Responsive: $md tablet (768–991px) ── */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .mc-cont7-sec {
    padding-bottom: 80px !important;
  }

  .mc-cont7-sec .mc-cont7-img {
    position: static !important;
    max-height: 400px !important;
    margin-top: 30px !important;
  }

  .mc-contact6-form-area.ver_2 {
    max-width: 100% !important;
    min-width: unset !important;
  }

  .mc-cont7-content {
    gap: 24px !important;
    flex-wrap: wrap !important;
  }

  .mc-cont7-text h3 {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .mc-cont7-text p {
    max-width: 100% !important;
  }
}

/* ── Responsive: mobile (≤767px) ── */
@media only screen and (max-width: 767px) {
  .mc-cont7-sec {
    padding-bottom: 60px !important;
  }

  .mc-cont7-sec .mc-cont7-img {
    position: static !important;
    max-height: 350px !important;
    margin-top: 24px !important;
  }

  .mc-contact6-form-area.ver_2 {
    max-width: 100% !important;
    min-width: unset !important;
    padding: 28px 24px 32px !important;
  }

  .mc-cont7-content {
    gap: 24px 0 !important;
    flex-direction: column-reverse !important;
    flex-wrap: wrap !important;
  }

  .mc-cont7-text h3 {
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .mc-cont7-text p {
    max-width: 100% !important;
    line-height: 22px !important;
  }
}

/* ── Responsive: móviles pequeños (≤480px) ── */
@media only screen and (max-width: 480px) {
  .mc-contact6-form-area.ver_2 {
    padding: 24px 18px 28px !important;
  }

  .mc-contact6-form-area.ver_2 h3 {
    font-size: 15px !important;
  }

  .mc-cont7-text h3 {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .mc-cont7-text p {
    font-size: 15px !important;
    line-height: 21px !important;
  }
}

/* ═══════════════════════════════════════════════════════════ */
/* 13. Nosotros (page 48) – Viñetas con check azul (Figma)   */
/* ═══════════════════════════════════════════════════════════ */

/* Los dos párrafos descriptivos ya tienen padding-left:60px inline.
   Agregamos un círculo azul con ✔ como pseudo-elemento ::before.
   Selector: el heading widget 84bea7d contiene spans con padding-left:60px */

.elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
  position: relative !important;
  display: block !important;
  margin-top: 20px !important;
}

/* Colapsar los <br> entre viñetas (dentro del h2 de 48px generan gaps enormes) */
.elementor-48 .elementor-element-84bea7d .elementor-heading-title br {
  display: none !important;
}

/* Separación entre título y primera viñeta */
.elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
  margin-bottom: 15px !important;
}

.elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"]::before {
  content: "✔" !important;
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;
  width: 26px !important;
  height: 26px !important;
  background-color: #6488d6 !important;
  color: #fff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  font-family: "Montserrat", sans-serif !important;
}

/* ═══════════════════════════════════════════════════════════ */
/* 14. Nosotros – Sección 2: "LV Brindando Salud y Bienestar" */
/* ═══════════════════════════════════════════════════════════ */

/* Column proportions: Figma ~55% left / 45% right (default is 50/50) */
.elementor-48 .elementor-element-2699cb1.elementor-col-50 {
  width: 56%;
}

.elementor-48 .elementor-element-a730089.elementor-col-50 {
  width: 44%;
}

/* Heading line-height (Figma: 50px) */
.elementor-48 .elementor-element-486f9ba .elementor-heading-title,
.elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
  line-height: 50px !important;
}

/* Body text: Figma 16px / 20px line-height */
.elementor-48 .elementor-element-dd390c6 {
  font-size: 16px !important;
  line-height: 20px !important;
}

/* Left image: 100% ancho de la columna + border-radius (Figma: 10px) */
.elementor-48 .elementor-element-ec5b3aa img {
  width: 100% !important;
  height: auto;
  border-radius: 10px;
  object-fit: cover;
}

/* Sección contenedora: columnas misma altura */
.elementor-48 .elementor-element-e6877f7>.elementor-container {
  align-items: stretch !important;
}

/* Columna derecha: quitar margin-top negativo que pega con el banner */
.elementor-48 .elementor-element-a730089>.elementor-element-populated {
  position: relative !important;
  margin-top: 0 !important;
  margin-left: 30px !important;
}

/* Gallery: llenar toda la columna derecha con posición absoluta */
.elementor-48 .elementor-element-7db610d {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
}

.elementor-48 .elementor-element-7db610d>.elementor-widget-container {
  height: 100%;
}

.elementor-48 .elementor-element-7db610d .mc-ab7-img-slide {
  border-radius: 10px !important;
  max-width: 100% !important;
  margin: 0 !important;
  height: 100% !important;
  overflow: hidden;
}

.elementor-48 .elementor-element-7db610d .mc-ab7-img-active,
.elementor-48 .elementor-element-7db610d .swiper-wrapper,
.elementor-48 .elementor-element-7db610d .swiper-slide,
.elementor-48 .elementor-element-7db610d .mc-ab7-img {
  height: 100% !important;
}

.elementor-48 .elementor-element-7db610d .mc-ab7-img img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  transform: none !important;
}

/* — Tablet (≤991px): stack columns — */
@media (max-width: 991px) {

  .elementor-48 .elementor-element-2699cb1.elementor-col-50,
  .elementor-48 .elementor-element-a730089.elementor-col-50 {
    width: 100%;
  }

  .elementor-48 .elementor-element-a730089>.elementor-element-populated {
    margin: 30px 0 0 0 !important;
  }

  .elementor-48 .elementor-element-7db610d {
    position: relative !important;
    inset: auto !important;
  }

  .elementor-48 .elementor-element-7db610d .mc-ab7-img-slide {
    height: auto !important;
    max-height: 500px;
  }
}

/* — $lg ≤1199px — */
@media (max-width: 1199px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 40px !important;
    line-height: 46px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  /* Heading "Salud es Vida" — especificidad 4 clases para ganar a wp-custom-css */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 42px !important;
    line-height: 48px !important;
  }

  /* Texto descriptivo "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 15px !important;
    line-height: 20px !important;
  }
}

/* — $md ≤991px — */
@media (max-width: 991px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 36px !important;
    line-height: 42px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .elementor-48 .elementor-element-e6877f7 {
    padding: 80px 20px !important;
  }

  /* Heading "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 36px !important;
    line-height: 42px !important;
  }

  /* Texto descriptivo "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 15px !important;
    line-height: 20px !important;
  }
}

/* — $sm ≤767px — */
@media (max-width: 767px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 28px !important;
    line-height: 34px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 14px !important;
    line-height: 20px !important;
  }

  .elementor-48 .elementor-element-e6877f7 {
    padding: 60px 15px !important;
  }

  /* Heading "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  /* Reducir espacio superior del heading */
  .elementor-48 .elementor-element.elementor-element-e99f3bd {
    margin-top: 10px !important;
    margin-left: 10px !important;
    margin-right: 10px !important;
    padding: 8px 15px 0 15px !important;
  }

  /* Texto descriptivo "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 14px !important;
    line-height: 20px !important;
    margin-left: 10px !important;
  }
}

/* — $xs ≤575px — */
@media (max-width: 575px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .elementor-48 .elementor-element-e6877f7 {
    padding: 40px 15px !important;
  }

  /* Heading "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 28px !important;
    line-height: 34px !important;
  }

  /* Reducir espacio superior del heading */
  .elementor-48 .elementor-element.elementor-element-e99f3bd {
    margin-top: 5px !important;
    margin-left: 5px !important;
    margin-right: 5px !important;
    padding: 5px 12px 0 12px !important;
  }

  /* Texto descriptivo "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 14px !important;
    line-height: 19px !important;
    margin-left: 5px !important;
  }

  /* "Nuestros valores": reducir padding sección */
  .elementor-48 .elementor-element-2de3854 {
    padding: 25px 12px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e742d9a>.elementor-element-populated {
    margin-top: 10px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 13px !important;
    line-height: 19px !important;
    max-width: 100% !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 {
    overflow: visible !important;
    height: auto !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 .split-line {
    overflow: visible !important;
  }

  /* "Estamos comprometidos" */
  .elementor-48 .elementor-element.elementor-element-3c745c0 {
    --margin-top: 5px !important;
    margin-top: 5px !important;
    padding: 8px 12px 0 12px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  /* Video: padding simétrico */
  .elementor-48 .elementor-element.elementor-element-e91d0f8 {
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* — $xxs ≤480px — */
@media (max-width: 480px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .elementor-48 .elementor-element-e6877f7 {
    padding: 35px 10px !important;
  }

  /* Heading "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  /* Texto descriptivo "Salud es Vida" */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 13px !important;
    line-height: 18px !important;
  }
}

/* ═══════════════════════════════════════════════════════════ */
/* 15. Nosotros – Sección 5: Industrialización + viñetas     */
/*     Container 6388b71, Heading 84bea7d                    */
/* ═══════════════════════════════════════════════════════════ */

/* Desktop: line-height del título (Figma: 52px) */
.elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
  line-height: 52px !important;
}

/* Párrafos con viñetas: line-height (Figma: 20px) */
.elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
  line-height: 20px !important;
}

/* — $xl ≤1399px — */
@media (max-width: 1399px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 38px !important;
    line-height: 44px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 15px !important;
  }
}

/* — $lg ≤1199px — */
@media (max-width: 1199px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 34px !important;
    line-height: 40px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 14px !important;
    line-height: 19px !important;
  }

  .elementor-48 .elementor-element-6388b71 {
    --min-height: 700px !important;
    min-height: 700px !important;
  }
}

/* — $md ≤991px — */
@media (max-width: 991px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 14px !important;
    line-height: 19px !important;
  }

  .elementor-48 .elementor-element-84bea7d {
    max-width: 100% !important;
    width: 100% !important;
  }

  .elementor-48 .elementor-element-b354508 {
    --width: 100% !important;
    width: 100% !important;
  }

  .elementor-48 .elementor-element-6388b71 {
    --flex-direction: column !important;
    flex-direction: column !important;
    --min-height: auto !important;
    min-height: auto !important;
  }

  .elementor-48 .elementor-element-7c896eb {
    display: none !important;
  }
}

/* — $sm ≤767px — */
@media (max-width: 767px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 13px !important;
    line-height: 18px !important;
    padding-left: 40px !important;
  }

  .elementor-48 .elementor-element-84bea7d {
    margin: 10px !important;
    padding: 10px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"]::before {
    width: 22px !important;
    height: 22px !important;
    font-size: 11px !important;
  }
}

/* — $xs ≤575px — */
@media (max-width: 575px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 23px !important;
    line-height: 29px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 13px !important;
    line-height: 18px !important;
    padding-left: 35px !important;
  }
}

/* — $xxs ≤480px — */
@media (max-width: 480px) {
  .elementor-48 .elementor-element-84bea7d .elementor-heading-title>span:first-child {
    font-size: 21px !important;
    line-height: 27px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"] {
    font-size: 12px !important;
    line-height: 17px !important;
    padding-left: 32px !important;
  }

  .elementor-48 .elementor-element-84bea7d .elementor-heading-title span[style*="padding-left"]::before {
    width: 20px !important;
    height: 20px !important;
    font-size: 10px !important;
  }
}

/* ═══════════════════════════════════════════════════════════ */
/* 16. Nosotros – Sección 6: "Nuestros valores"              */
/*     Section 2de3854, widget 79eb048, FAQ 73746f0           */
/* ═══════════════════════════════════════════════════════════ */

/* Imagen izquierda: estirar altura al nivel del acordeón */
.elementor-48 .mc-ab7-mission.d-flex {
  align-items: stretch !important;
}

.elementor-48 .mc-ab7-mission .item-img.img-cover {
  flex: 0 0 280px !important;
  max-width: 280px !important;
  overflow: hidden !important;
  border-radius: 16px !important;
}

.elementor-48 .mc-ab7-mission .item-img.img-cover img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.elementor-48 .mc-ab7-mission .item-ab7-accordion {
  flex: 1 !important;
  min-width: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════ */
/* PÁGINA 50 – Servicios a Terceros                               */
/* ═══════════════════════════════════════════════════════════════ */

/* ——————————————————————————————————————————————————————————————— */
/* 17. Sección "Fabricamos para ti" (widget dc3f95c)              */
/* ——————————————————————————————————————————————————————————————— */

/* Título: Figma 48px / line-height 50px (tema pone 60px / 1) */
.elementor-50 .mc-sec-title5 .sec_title {
  font-size: 44px !important;
  line-height: 48px !important;
  margin-bottom: 16px !important;
}

/* Forzar "Fabricamos" en línea 1 y "para ti" en línea 2.
   SplitText (GSAP) destruye el <br>, así que usamos max-width
   para que el word-wrap genere el quiebre correcto.
   "Fabricamos" ≈ 6.3em, "Fabricamos para" ≈ 8.5em → 7.2em fuerza el salto */
.elementor-50 .mc-sec-title5 .sec_title .mc-bold-color-blue {
  max-width: 7.2em !important;
}

/* Descripción: Figma 16px / 20px + separación clara del título */
.elementor-50 .mc-sec-title5 p,
.elementor-50 .mc-about5-text-wrap .elementor-gt-desc {
  font-size: 16px !important;
  line-height: 20px !important;
  padding-top: 20px !important;
}

/* Lista de servicios */
.elementor-50 .mc-about5-list li {
  font-size: 16px !important;
  line-height: 20px !important;
  margin-bottom: 0 !important;
  padding-left: 24px !important;
  color: #2d3f65 !important;
}

/* Viñeta: punto pequeño estilo Figma */
.elementor-50 .mc-about5-list li:before {
  width: 5px !important;
  height: 5px !important;
  top: 8px !important;
  background-color: #2d3f65 !important;
}

/* — $xl ≤1399px — */
@media (max-width: 1399px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 38px !important;
    line-height: 42px !important;
  }

  .elementor-50 .mc-sec-title5 p,
  .elementor-50 .mc-about5-text-wrap .elementor-gt-desc {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .elementor-50 .mc-about5-list li {
    font-size: 15px !important;
    line-height: 20px !important;
    margin-bottom: 0 !important;
    padding-left: 22px !important;
    color: #2d3f65 !important;
  }

  .elementor-50 .mc-about5-list li:before {
    width: 5px !important;
    height: 5px !important;
    top: 8px !important;
    background-color: #2d3f65 !important;
  }
}

/* — $lg ≤1199px — */
@media (max-width: 1199px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 36px !important;
    line-height: 40px !important;
  }

  .elementor-50 .mc-sec-title5 p,
  .elementor-50 .mc-about5-text-wrap .elementor-gt-desc {
    font-size: 14px !important;
    line-height: 19px !important;
  }

  .elementor-50 .mc-about5-list li {
    font-size: 14px !important;
    line-height: 19px !important;
    margin-bottom: 0 !important;
    padding-left: 20px !important;
    color: #2d3f65 !important;
  }

  .elementor-50 .mc-about5-list li:before {
    width: 4px !important;
    height: 4px !important;
    top: 7px !important;
    background-color: #2d3f65 !important;
  }
}

/* — $md ≤991px — */
@media (max-width: 991px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 32px !important;
    line-height: 36px !important;
  }

  .elementor-50 .mc-sec-title5 p,
  .elementor-50 .mc-about5-text-wrap .elementor-gt-desc {
    font-size: 14px !important;
    line-height: 19px !important;
  }

  .elementor-50 .mc-about5-list li {
    font-size: 14px !important;
    line-height: 19px !important;
    margin-bottom: 0 !important;
    padding-left: 20px !important;
    color: #2d3f65 !important;
  }

  .elementor-50 .mc-about5-list li:before {
    width: 4px !important;
    height: 4px !important;
    top: 7px !important;
    background-color: #2d3f65 !important;
  }
}

/* — $sm ≤767px — */
@media (max-width: 767px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 28px !important;
    line-height: 33px !important;
  }

  .elementor-50 .mc-sec-title5 p,
  .elementor-50 .mc-about5-text-wrap .elementor-gt-desc {
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .elementor-50 .mc-about5-list li {
    font-size: 13px !important;
    line-height: 18px !important;
    margin-bottom: 0 !important;
    padding-left: 18px !important;
    color: #2d3f65 !important;
  }

  .elementor-50 .mc-about5-list li:before {
    width: 4px !important;
    height: 4px !important;
    top: 7px !important;
    background-color: #2d3f65 !important;
  }
}

/* — $xs ≤575px — */
@media (max-width: 575px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 26px !important;
    line-height: 30px !important;
  }
}

/* — $xxs ≤480px — */
@media (max-width: 480px) {
  .elementor-50 .mc-sec-title5 .sec_title {
    font-size: 24px !important;
    line-height: 28px !important;
  }
}


/* ═══════════════════════════════════════════════════════════════ */
/* PÁGINA 5 – Farmacovigilancia                                   */
/* ═══════════════════════════════════════════════════════════════ */

/* ——————————————————————————————————————————————————————————————— */
/* 18. Sección "Qué es?" – comercializamos productos (55a19f8)     */
/*     NOTA: body.page-id-5 para ganar especificidad a los         */
/*     estilos inline de Elementor Custom CSS que cargan después.   */
/* ——————————————————————————————————————————————————————————————— */

/* --- RESET: anular reglas inline dañinas de Elementor Custom CSS --- */
body.page-id-5 .mc-wc-list-wrap.d-flex.align-items-end.justify-content-between {
  padding-right: 0 !important;
  line-height: normal !important;
}

body.page-id-5 .mc-wc1-img1.right_view.position-absolute {
  padding-right: 0 !important;
}

body.page-id-5 .mc-wc1-img2.left_view.position-absolute {
  padding-left: 0 !important;
}

body.page-id-5 .mc-wc1-sec .sec_title.tx-split-text.split-in-up .split-line {
  height: auto !important;
  padding-top: 0 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  max-width: none !important;
}

/* --- Sección: reducir padding vertical --- */
body.page-id-5 .mc-wc1-sec.pt-175 {
  padding-top: 120px !important;
  padding-bottom: 80px !important;
}

/* --- Contenido de texto sobre las imágenes decorativas --- */
body.page-id-5 .mc-wc1-content {
  position: relative !important;
  z-index: 2 !important;
}

/* --- Subtítulo: sin borde inferior --- */
body.page-id-5 .mc-sec-title1 .subtitle {
  border-bottom: none !important;
  padding-bottom: 8px !important;
  margin-bottom: 14px !important;
}

/* --- Título: Figma 48px / 52px (tema: 70px / 1) --- */
body.page-id-5 .mc-sec-title1 .sec_title {
  font-size: 48px !important;
  line-height: 52px !important;
  font-weight: 700 !important;
  max-width: 49vw !important;
  color: #2D3F65 !important;
}

/* --- Reducir gap título → texto (tema: mb-140) --- */
body.page-id-5 .mc-sec-title1.mb-140 {
  margin-bottom: 50px !important;
}

/* --- Texto descriptivo: Figma 16px / 20px --- */
body.page-id-5 .mc-wc-list-text p {
  font-size: 16px !important;
  line-height: 20px !important;
  color: #2D3F65 !important;
  max-width: 400px !important;
  padding-bottom: 20px !important;
}

/* --- Imagen derecha: altura completa de la sección --- */
body.page-id-5 .mc-wc1-sec .mc-wc1-img1 {
  display: block !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  z-index: 1 !important;
  width: 30.5vw !important;
  max-width: 461px !important;
  overflow: hidden !important;
}

body.page-id-5 .mc-wc1-sec .mc-wc1-img1 img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* --- Imagen izquierda: mitad inferior de la sección --- */
body.page-id-5 .mc-wc1-sec .mc-wc1-img2 {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  right: auto !important;
  z-index: 1 !important;
  width: 28.7vw !important;
  max-width: 434px !important;
  height: 50% !important;
  overflow: hidden !important;
}

body.page-id-5 .mc-wc1-sec .mc-wc1-img2 img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* --- $xxl ≤1599px --- */
@media (max-width: 1599px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 100px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 44px !important;
    line-height: 48px !important;
  }
}

/* --- $xl ≤1399px --- */
@media (max-width: 1399px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 90px !important;
    padding-bottom: 70px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 40px !important;
    line-height: 44px !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 40px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 15px !important;
    line-height: 20px !important;
  }
}

/* --- $lg ≤1199px (tema oculta imágenes aquí) --- */
@media (max-width: 1199px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 70px !important;
    padding-bottom: 60px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 36px !important;
    line-height: 40px !important;
    max-width: 100% !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 35px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 15px !important;
    line-height: 20px !important;
    max-width: 100% !important;
  }
}

/* --- $md ≤991px --- */
@media (max-width: 991px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 60px !important;
    padding-bottom: 50px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 34px !important;
    line-height: 38px !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 30px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 14px !important;
    line-height: 19px !important;
    padding-bottom: 15px !important;
  }

  body.page-id-5 .mc-sec-title1 .subtitle span {
    font-size: 18px !important;
  }
}

/* --- $sm ≤767px --- */
@media (max-width: 767px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 50px !important;
    padding-bottom: 40px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 30px !important;
    line-height: 34px !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 25px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 14px !important;
    line-height: 19px !important;
  }

  body.page-id-5 .mc-sec-title1 .subtitle span {
    font-size: 16px !important;
  }
}

/* --- $xs ≤575px --- */
@media (max-width: 575px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 40px !important;
    padding-bottom: 35px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 26px !important;
    line-height: 30px !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 20px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 13px !important;
    line-height: 18px !important;
  }

  body.page-id-5 .mc-sec-title1 .subtitle span {
    font-size: 15px !important;
  }
}

/* --- $xxs ≤480px --- */
@media (max-width: 480px) {
  body.page-id-5 .mc-wc1-sec.pt-175 {
    padding-top: 32px !important;
    padding-bottom: 30px !important;
  }

  body.page-id-5 .mc-sec-title1 .sec_title {
    font-size: 24px !important;
    line-height: 28px !important;
  }

  body.page-id-5 .mc-sec-title1.mb-140 {
    margin-bottom: 16px !important;
  }

  body.page-id-5 .mc-wc-list-text p {
    font-size: 13px !important;
    line-height: 18px !important;
  }

  body.page-id-5 .mc-sec-title1 .subtitle span {
    font-size: 14px !important;
  }
}

/* ——————————————————————————————————————————————————————————————— */
/* 19. Formulario – ícono del campo date separado del borde        */
/* ——————————————————————————————————————————————————————————————— */
body.page-id-5 input.wpcf7-date[type="date"],
body.page-id-46 input.wpcf7-date[type="date"] {
  padding-right: 12px !important;
}

body.page-id-5 input.wpcf7-date[type="date"]::-webkit-calendar-picker-indicator,
body.page-id-46 input.wpcf7-date[type="date"]::-webkit-calendar-picker-indicator {
  margin-right: 4px !important;
}

/* ═══════════════════════════════════════════════════════════════ */
/* 20. Nosotros (48) & Contacto (46) – Banner igual al Blog      */
/*     Replica body.blog breadcrumb de blog-page.css              */
/* ═══════════════════════════════════════════════════════════════ */

/* ── Background ────────────────────────────────────────────── */
.page-id-48 .mc-breadcrumb-sec,
.page-id-46 .mc-breadcrumb-sec {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* ── Container: misma altura y layout que Blog ─────────────── */
.page-id-48 .mc-breadcrumb-sec>.container,
.page-id-46 .mc-breadcrumb-sec>.container {
  max-width: 100% !important;
  padding-left: 87px !important;
  padding-right: 0 !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
  min-height: max(280px, 25.6vw) !important;
}

/* ── Content: padding superior como Blog ───────────────────── */
.page-id-48 .mc-breadcrumb-content,
.page-id-46 .mc-breadcrumb-content {
  padding: max(100px, 14.5vw) 0 0 !important;
  width: 100% !important;
}

/* ── H2: tipografía idéntica a Blog ────────────────────────── */
.page-id-48 .mc-breadcrumb-content h2,
.page-id-46 .mc-breadcrumb-content h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: clamp(32px, 6.3vw, 96px) !important;
  font-weight: 700 !important;
  color: #fff !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* ── Breadcrumb list: oculta (igual que Blog) ──────────────── */
.page-id-48 .breadcrumb-list,
.page-id-46 .breadcrumb-list {
  display: none !important;
}

/* ── Responsive: $xxl 1400–1599px ──────────────────────────── */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 70px !important;
  }
}

/* ── Responsive: $xl 1200–1399px ───────────────────────────── */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 60px !important;
  }
}

/* ── Responsive: $lg 992–1199px ────────────────────────────── */
@media only screen and (min-width: 992px) and (max-width: 1199px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 50px !important;
  }
}

/* ── Responsive: $md 768–991px ─────────────────────────────── */
@media only screen and (min-width: 768px) and (max-width: 991px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 40px !important;
    min-height: 260px !important;
  }
}

/* ── Responsive: $sm 576–767px ─────────────────────────────── */
@media only screen and (min-width: 576px) and (max-width: 767px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 30px !important;
    min-height: 220px !important;
  }
}

/* ── Responsive: $xs 481–575px ─────────────────────────────── */
@media only screen and (min-width: 481px) and (max-width: 575px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 24px !important;
    min-height: 200px !important;
  }
}

/* ── Responsive: $xxs ≤480px ───────────────────────────────── */
@media (max-width: 480px) {

  .page-id-48 .mc-breadcrumb-sec>.container,
  .page-id-46 .mc-breadcrumb-sec>.container {
    padding-left: 20px !important;
    min-height: 180px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* 21. Nosotros (48) – "Sistema de Gestión de la Calidad"         */
/*     Interlineado unificado según Figma 84:33                   */
/*     Títulos: Montserrat Bold 20px / lh 20px                    */
/*     Descripciones: Montserrat Regular 16px / lh 20px           */
/* ═══════════════════════════════════════════════════════════════ */

/* Títulos de tarjeta (.txt-image1) — ya correcto en wp-custom-css,
   reforzamos con !important para ganar a cualquier inline */
.mc-calidad figcaption .txt-image1 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  color: #2D3F65 !important;
  display: block !important;
  padding-bottom: 8px !important;
}

/* Descripciones de tarjeta — override inline inconsistentes
   (16px, 16.8px, 17px, 18.5px → todo a 16px / 20px)           */
.mc-calidad figcaption span:not(.txt-image1) {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 23px !important;
  color: #2D3F65 !important;
}

/* ── Cards de igual altura ─────────────────────────────────── */

/* Grid items (los widget wrappers) → stretch */
.mc-calidad>.e-con-inner>.elementor-widget-image {
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Figure → llena todo el widget */
.mc-calidad .elementor-widget-image>.wp-caption {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}

/* Imagen: altura fija, sin encogerse */
.mc-calidad .wp-caption>img {
  flex: 0 0 auto !important;
}

/* Figcaption: crece para llenar el espacio restante */
.mc-calidad figcaption {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding-bottom: 20px !important;
}

/* Eliminar <br> sobrantes al final del figcaption que crean espacio extra */
.mc-calidad figcaption br {
  display: none !important;
}

/* Separación entre título y descripción sin usar <br> */
.mc-calidad figcaption .txt-image1 {
  margin-bottom: 10px !important;
}

/* ═══════════════════════════════════════════════════════════════ */
/* 22. Nosotros (48) – Línea separadora debajo del título         */
/*     "Estamos comprometidos con la calidad y la innovación"     */
/*     Ancho ≈ 450px centrado, igual que en Figma                 */
/* ═══════════════════════════════════════════════════════════════ */
.elementor-element-3c745c0 .elementor-heading-title {
  text-align: center !important;
  position: relative !important;
  padding-bottom: 25px !important;
}

.elementor-element-3c745c0 .elementor-heading-title::after {
  content: '' !important;
  display: block !important;
  width: 100% !important;
  max-width: 90% !important;
  height: 1px !important;
  background-color: #DEDEDE !important;
  margin: 40px auto 0 auto !important;
}

/* ═══════════════════════════════════════════════════════════════ */
/* Galería: quitar padding-right de .mc-ab7-img.img-cover en móvil */
/* ═══════════════════════════════════════════════════════════════ */
@media only screen and (max-width: 767px) {
  .mc-ab7-img.img-cover {
    padding-right: 0 !important;
  }

  /* "Nuestros valores": reducir padding sección (Elementor: 115px) */
  .elementor-48 .elementor-element-2de3854 {
    padding: 40px 15px !important;
  }

  /* Eliminar margin-top columna (Elementor: 77px) */
  .elementor-48 .elementor-element.elementor-element-e742d9a>.elementor-element-populated {
    margin-top: 15px !important;
  }

  /* Título "Nuestros valores" */
  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 32px !important;
    line-height: 38px !important;
  }

  /* Texto descriptivo (inline span line-height:1 + max-width:650px) */
  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 14px !important;
    line-height: 20px !important;
    max-width: 100% !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 {
    overflow: visible !important;
  }

  /* Fix .split-line overflow:hidden del tema que corta el texto */
  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 .split-line {
    overflow: visible !important;
  }

  /* Video hero: centrar (Elementor: margin-left 23px) */
  .elementor-48 .elementor-element.elementor-element-c2f8567 {
    --margin-left: 0px !important;
    --margin-right: 0px !important;
    margin: 0 !important;
  }

  /* Reducir padding inferior de la sección Nuestros valores */
  .elementor-48 .elementor-element-2de3854>.elementor-container {
    margin-bottom: 0 !important;
  }

  /* "Estamos comprometidos": reducir margin-top (Elementor: 37px) y padding-bottom */
  .elementor-48 .elementor-element.elementor-element-3c745c0 {
    --margin-top: 10px !important;
    margin-top: 10px !important;
    padding: 15px 15px 5px 15px !important;
  }

  .elementor-element-3c745c0 .elementor-heading-title {
    padding-bottom: 10px !important;
  }

  .elementor-element-3c745c0 .elementor-heading-title::after {
    margin-top: 15px !important;
    margin-bottom: 0 !important;
  }

  /* Título "Estamos comprometidos" */
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 34px !important;
    line-height: 40px !important;
  }

  /* Video: padding simétrico para que no se pegue al borde */
  .elementor-48 .elementor-element.elementor-element-e91d0f8 {
    padding: 0 15px !important;
    box-sizing: border-box !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* 23. Nosotros (48) – Responsive móvil ≤440px                   */
/*     Ajustes de texto, interlineado, imágenes y centrado        */
/*     Resoluciones: 320–440px                                    */
/* ═══════════════════════════════════════════════════════════════ */

/* ── 23a. Título "Brindando Salud y Bienestar" — font-size      */
/*         e interlineado proporcional al dispositivo ──────────── */
@media only screen and (max-width: 440px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  /* Párrafo descriptivo bajo el título */
  .elementor-48 .elementor-element-dd390c6 {
    font-size: 12px !important;
    line-height: 17px !important;
  }

  /* Sección contenedora: padding reducido */
  .elementor-48 .elementor-element-e6877f7 {
    padding: 30px 12px !important;
  }

  /* Slider/galería derecha: altura controlada */
  .elementor-48 .elementor-element-7db610d .mc-ab7-img-slide {
    max-height: 300px !important;
  }
}

/* ── 23b. Sección CTA equipo (parallax) — imagen NO cortada ── */
@media only screen and (max-width: 440px) {

  /* Fondo parallax: desactivar parallax, posicionar centrado */
  .page-id-48 #mc-cta9 .mc-cta9-bg.img-parallax {
    background-attachment: scroll !important;
  }

  .page-id-48 #mc-cta9 .mc-cta9-bg img {
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
  }

  /* Menos padding vertical para no desperdiciar espacio */
  .page-id-48 #mc-cta9 .mc-cta9-content {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    min-height: 280px !important;
  }
}

/* ── 23c. Sección "Laboratorios Vargas, Salud es Vida" ──────── */
/*    Reducir espacios blancos, font proporcional ─────────────── */
@media only screen and (max-width: 440px) {

  /* Heading "Salud es Vida" — especificidad 4 clases */
  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 26px !important;
    line-height: 32px !important;
    text-align: center !important;
  }

  /* Reducir espacio superior del heading (Elementor: margin 77px + padding 25px) */
  .elementor-48 .elementor-element.elementor-element-e99f3bd {
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 12px 0 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Texto descriptivo */
  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 13px !important;
    line-height: 18px !important;
    margin-left: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* Columnas: full width en móvil */
  .elementor-48 .elementor-element-425c2b2.elementor-col-50,
  .elementor-48 .elementor-element-982ce1f.elementor-col-50 {
    width: 100% !important;
  }

  /* Imagen screenshot izquierda: sin exceso de espacio blanco */
  .elementor-48 .elementor-element-64da7f6 img {
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
  }

  .elementor-48 .elementor-element-64da7f6 {
    width: 100% !important;
    margin-bottom: 10px !important;
  }

  /* Imagen derecha Nosotros-3: tamaño controlado */
  .elementor-48 .elementor-element-aadc669 img {
    width: 100% !important;
    height: auto !important;
    max-height: 350px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
  }

  /* Spacer: reducir en móvil */
  .elementor-48 .elementor-element-8b66e52 {
    height: 20px !important;
  }

  .elementor-48 .elementor-element-8b66e52 .elementor-spacer-inner {
    height: 20px !important;
  }

  /* Sección: padding reducido */
  .elementor-48 .elementor-element-449cd37 {
    padding: 5px 0 !important;
  }
}

/* ── 23d. Sección "Nuestros valores" — imagen doctor no cortada  */
@media only screen and (max-width: 440px) {

  /* Columnas apiladas */
  .elementor-48 .elementor-element-e742d9a.elementor-col-50,
  .elementor-48 .elementor-element-9efa6d1.elementor-col-50 {
    width: 100% !important;
  }

  /* Eliminar margin-top de columna (Elementor: 77px) */
  .elementor-48 .elementor-element.elementor-element-e742d9a>.elementor-element-populated {
    margin-top: 0 !important;
  }

  /* Título "Nuestros valores" — especificidad 4 clases */
  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  /* Texto descriptivo (inline span font-size: 16px, line-height: 1, max-width: 650px) */
  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1,
  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 13px !important;
    line-height: 19px !important;
    max-width: 100% !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 {
    overflow: visible !important;
    height: auto !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 .split-line {
    overflow: visible !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .subtitle {
    font-size: 22px !important;
  }

  /* Imagen doctor: no cortada, width completo */
  .elementor-48 .mc-ab7-mission {
    flex-direction: column !important;
    gap: 20px !important;
  }

  .elementor-48 .mc-ab7-mission .item-img.img-cover {
    flex: none !important;
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    max-height: 280px !important;
  }

  .elementor-48 .mc-ab7-mission .item-img.img-cover img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  /* Acordeón */
  .elementor-48 .item-ab7-accordion {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Galería slider derecha */
  .elementor-48 .elementor-element-3525fe1 .mc-ab7-img-slide {
    margin-top: 20px !important;
    max-height: 300px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
  }

  .elementor-48 .elementor-element-3525fe1 .mc-ab7-img img {
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
  }

  /* Padding sección: eliminar márgenes excesivos (Elementor: 115px 0) */
  .elementor-48 .elementor-element-2de3854 {
    padding: 15px 12px !important;
  }
}

/* ── 23e. "Estamos comprometidos con la calidad y la innovación" */
/*    Texto centrado y font-size proporcional ──────────────────── */
@media only screen and (max-width: 440px) {
  .elementor-48 .elementor-element.elementor-element-3c745c0 {
    padding: 5px 12px 0 12px !important;
    --margin-top: 0px !important;
    margin-top: 0 !important;
    --margin-bottom: 0px !important;
    margin-bottom: 0 !important;
  }

  .elementor-element-3c745c0 .elementor-heading-title {
    padding-bottom: 5px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title {
    text-align: center !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .elementor-element-3c745c0 .elementor-heading-title::after {
    margin-top: 15px !important;
  }

  /* Video completo con padding simétrico */
  .elementor-48 .elementor-element.elementor-element-e91d0f8 {
    padding: 0 12px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 {
    width: 100% !important;
    border-radius: 10px !important;
    overflow: hidden !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 .elementor-wrapper {
    width: 100% !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 .elementor-video {
    width: 100% !important;
  }

  .elementor-48 .elementor-element.elementor-element-3887f85 iframe {
    width: 100% !important;
  }
}

/* ── 23f. Grid de calidad e innovación — cards responsivas ───── */
@media only screen and (max-width: 440px) {
  .elementor-element-e27623a {
    padding: 0 12px !important;
  }

  .elementor-element-e27623a .elementor-widget-image {
    margin: 8px 0 !important;
    padding: 8px !important;
  }

  .mc-calidad figcaption .txt-image1 {
    font-size: 16px !important;
  }

  .mc-calidad figcaption span:not(.txt-image1) {
    font-size: 13px !important;
    line-height: 18px !important;
  }
}

/* ── 23g. ≤414px ─────────────────────────────────────────────── */
@media only screen and (max-width: 414px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 19px !important;
    line-height: 25px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 12px !important;
    line-height: 17px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 12px !important;
    line-height: 17px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 12px !important;
    line-height: 17px !important;
  }
}

/* ── 23h. ≤393px ─────────────────────────────────────────────── */
@media only screen and (max-width: 393px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 18px !important;
    line-height: 24px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 11px !important;
    line-height: 16px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 19px !important;
    line-height: 24px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 19px !important;
    line-height: 24px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 12px !important;
    line-height: 17px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 12px !important;
    line-height: 17px !important;
  }
}

/* ── 23i. ≤375px (móviles pequeños) ──────────────────────────── */
@media only screen and (max-width: 375px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 17px !important;
    line-height: 23px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 11px !important;
    line-height: 16px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 11px !important;
    line-height: 16px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 21px !important;
    line-height: 26px !important;
  }

  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 11px !important;
    line-height: 16px !important;
  }

  .page-id-48 #mc-cta9 .mc-cta9-content {
    min-height: 240px !important;
  }

  .elementor-48 .mc-ab7-mission .item-img.img-cover {
    max-height: 220px !important;
  }
}

/* ── 23j. ≤360px ─────────────────────────────────────────────── */
@media only screen and (max-width: 360px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 16px !important;
    line-height: 22px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 11px !important;
    line-height: 15px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 11px !important;
    line-height: 15px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 19px !important;
    line-height: 24px !important;
  }

  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 11px !important;
    line-height: 15px !important;
  }
}

/* ── 23k. ≤320px (móviles muy pequeños) ──────────────────────── */
@media only screen and (max-width: 320px) {

  .elementor-48 .elementor-element-486f9ba .elementor-heading-title,
  .elementor-48 .elementor-element-486f9ba .elementor-heading-title span {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .elementor-48 .elementor-element-dd390c6 {
    font-size: 10px !important;
    line-height: 14px !important;
  }

  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title,
  .elementor-48 .elementor-element.elementor-element-fa11360 .elementor-heading-title span {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .elementor-medicox-sub {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .elementor-48 .elementor-element.elementor-element-79eb048 .mc-sec-title7 h1 span {
    font-size: 10px !important;
    line-height: 14px !important;
  }

  .elementor-48 .elementor-element.elementor-element-e99f3bd .elementor-heading-title {
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .elementor-48 .elementor-element.elementor-element-a5d37c0 {
    font-size: 10px !important;
    line-height: 14px !important;
  }

  .page-id-48 #mc-cta9 .mc-cta9-content {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
    min-height: 200px !important;
  }

  .elementor-48 .elementor-element-e6877f7 {
    padding: 25px 8px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* 24. HOME (2270) – Responsive móvil                             */
/* ═══════════════════════════════════════════════════════════════ */

/* ── 24a. Farmacovigilancia: reducir interlineado del h1 ─────── */
@media only screen and (max-width: 767px) {

  /* Texto "Medicamentos de calidad..." — reducir line-height */
  .farmaco .mc-sec-title7.headline-6.pera-content h1 {
    line-height: 1.4 !important;
  }

  /* Override .split-line height fijo de wp-custom-css (45px) */
  .farmaco .sec_title.tx-split-text.split-in-up .split-line {
    height: auto !important;
  }

  /* Blog: "Dr." en línea separada con "Vargas" */
  .page-id-2270 .mc-testi7-sec .mc-sec-title7 .sec_title {
    max-width: 10em !important;
  }
}

@media only screen and (max-width: 440px) {

  .farmaco .mc-sec-title7.headline-6.pera-content h1 {
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .farmaco .sec_title.tx-split-text.split-in-up .split-line {
    height: auto !important;
  }

  .page-id-2270 .mc-testi7-sec .mc-sec-title7 .sec_title {
    max-width: 9em !important;
  }
}

@media only screen and (max-width: 375px) {

  .farmaco .mc-sec-title7.headline-6.pera-content h1 {
    font-size: 18px !important;
    line-height: 24px !important;
  }

  .page-id-2270 .mc-testi7-sec .mc-sec-title7 .sec_title {
    max-width: 8em !important;
  }
}

@media only screen and (max-width: 320px) {

  .farmaco .mc-sec-title7.headline-6.pera-content h1 {
    font-size: 16px !important;
    line-height: 22px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* 23. Servicios a Terceros (50) – Carrusel móvil de servicios    */
/*     Swiper activado solo ≤440px (lv-services-carousel.js)      */
/*     Replica el estilo del carrusel de productos del Home       */
/* ═══════════════════════════════════════════════════════════════ */

/* --- Container Swiper --- */
.lv-services-swiper {
  overflow: hidden !important;
  width: 100% !important;
}

/* --- Slide wrapper (dedicated div, card lives inside) --- */
.lv-services-swiper .swiper-slide {
  display: flex !important;
  justify-content: center !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
}

/* --- Card inside Swiper slide --- */
.lv-services-swiper .mc-service-feed-item {
  width: 100% !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
  padding: 20px !important;
  border: 1px solid #D9D9D9 !important;
  box-shadow: 0px 5px 23px -5px rgba(18, 18, 18, 0.05) !important;
  background: #fff !important;
  border-radius: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* --- Image block --- */
.lv-services-swiper .mc-service-feed-item .item-img {
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  border-radius: 7px !important;
  margin-bottom: 15px !important;
}

.lv-services-swiper .mc-service-feed-item .item-img img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: 7px !important;
  display: block !important;
}

/* --- Text block --- */
.lv-services-swiper .mc-service-feed-item .item-text {
  width: 100% !important;
  text-align: center !important;
  overflow: visible !important;
}

.lv-services-swiper .mc-service-feed-item .item-text h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  padding-bottom: 0 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  text-overflow: unset !important;
}

.lv-services-swiper .mc-service-feed-item .item-text h3 a {
  font-size: 16px !important;
  white-space: normal !important;
  overflow: visible !important;
  display: inline !important;
  text-overflow: unset !important;
}

/* Override the WP Customizer .txt-image1 styles inside carousel */
.lv-services-swiper .mc-service-feed-item .txt-image1 {
  font-size: 16px !important;
  line-height: 1.4 !important;
  text-align: center !important;
  padding-left: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  display: inline !important;
}

/* --- Pagination dots (mismo estilo que productos del Home) --- */
.lv-services-pagination {
  text-align: center !important;
  margin-top: 16px !important;
  position: relative !important;
}

.lv-services-pagination .swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
  background-color: #CBD7F2 !important;
  opacity: 1 !important;
  margin: 0 5px !important;
}

.lv-services-pagination .swiper-pagination-bullet-active {
  background-color: #2D3F65 !important;
}

/* --- Textos encima de la sección de servicios (mobile ≤440px) --- */


/* ── Banner CTA "Contáctenos" — desactivar parallax en escritorio ── */
@media (min-width: 441px) {
  .page-id-50 .mc-cta6-content {
    overflow: hidden !important;
  }

  .page-id-50 .mc-cta6-bg.img-parallax,
  .page-id-50 .mc-cta6-bg.img-parallax img {
    transform: none !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}

/* ── Banner CTA "Contáctenos" — márgenes laterales en resoluciones intermedias ── */
@media (min-width: 992px) and (max-width: 1599px) {
  .page-id-50 .mc-cta6-sec {
    margin: 0 50px !important;
  }
}

@media (max-width: 440px) {

  /* ── Banner CTA "Contáctenos" — sin border-radius en móvil ── */
  .page-id-50 .mc-cta6-sec {
    border-radius: 0 !important;
  }

  /* ── Banner CTA — imagen expandida para cubrir con parallax ── */
  .page-id-50 .mc-cta6-bg.img-parallax {
    top: -30% !important;
    left: 0 !important;
    width: 100% !important;
    height: 160% !important;
  }

  .page-id-50 .mc-cta6-bg.img-parallax img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  /* ── Sección "Fabricamos para ti" ── */

  /* Sección principal: agregar padding lateral */
  .page-id-50 .elementor-element-aed9a7f {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Widget "Fabricamos para ti": corregir padding excesivo y ancho */
  .page-id-50 .elementor-element-dc3f95c {
    width: 100% !important;
    max-width: 100% !important;
  }

  .page-id-50 .elementor-element-dc3f95c>.elementor-widget-container {
    padding: 30px 0px 30px 0px !important;
  }

  /* Layout flex de la sección about → columna en móvil */
  .page-id-50 .mc-about5-content {
    flex-direction: column !important;
  }

  /* Imágenes: ancho completo arriba del texto */
  .page-id-50 .mc-about5-img-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
  }

  .page-id-50 .mc-about5-img-wrap .item-img1,
  .page-id-50 .mc-about5-img-wrap .item-img2 {
    width: 100% !important;
    max-width: 100% !important;
  }

  .page-id-50 .mc-about5-img-wrap img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
  }

  /* Texto principal de la sección */
  .page-id-50 .mc-about5-text-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Heading "Fabricamos para ti" */
  .page-id-50 .mc-sec-title5 h1 {
    font-size: 45px !important;
    line-height: 1.2 !important;
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

  /* Párrafo descriptivo */
  .page-id-50 .mc-sec-title5 p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  /* Lista de servicios generales */
  .page-id-50 .mc-about5-list {
    margin-top: 15px !important;
  }

  .page-id-50 .mc-about5-list ul {
    padding-left: 20px !important;
    margin: 0 !important;
  }

  .page-id-50 .mc-about5-list ul li {
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin-bottom: 8px !important;
  }

  /* ── Sección "Nuestra gama de servicios" (carousel) ── */

  /* Contenedor padre: reducir padding lateral enorme (103px) en móvil */
  .page-id-50 .elementor-element-7e25e4a {
    --padding-left: 20px !important;
    --padding-right: 20px !important;
    --padding-top: 40px !important;
    --padding-bottom: 40px !important;
  }

  /* "Colaboraciones estratégicas con socios" → 2 líneas centradas */
  .page-id-50 .elementor-element-d1a2aec {
    text-align: left !important;
    --align-self: flex-start !important;
    align-self: flex-start !important;
    width: 100% !important;
  }

  .page-id-50 .elementor-element-d1a2aec p {
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  /* "Nuestra gama de servicios" → reducido, 2 líneas centradas */
  .page-id-50 .elementor-element-653fe95 {
    text-align: left !important;
  }

  .page-id-50 .elementor-element-653fe95 .elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }
}

/* ==========================================================
   Mobile Drawer – Fondo blanco, textos azul oscuro,
   buscador mantiene estilo original (azul oscuro)
   ========================================================== */

/* Fondo del drawer: blanco */
.mobile_menu_content {
  background-color: #ffffff !important;
}

/* Scrollbar adaptada al fondo claro */
.mobile_menu_content::-webkit-scrollbar-thumb {
  background: #1B3865 !important;
}

/* Links del menú: color azul oscuro */
.mobile_menu_content .mobile-main-navigation .navbar-nav li a {
  color: #1B3865 !important;
}

/* Bordes entre items: azul oscuro sutil */
.mobile_menu_content .mobile-main-navigation .navbar-nav li {
  border-bottom-color: rgba(27, 56, 101, 0.12) !important;
}

/* Dropdown sub-menú links */
.mobile_menu .mobile_menu_content .mobile-main-navigation .navbar-nav .dropdown-menu li a {
  color: #1B3865 !important;
}

/* Dropdown sub-menú hover */
.mobile_menu .mobile_menu_content .mobile-main-navigation .navbar-nav .dropdown-menu li a:hover {
  color: #002D74 !important;
}

/* Flecha/botón dropdown */
.mobile_menu .dropdown .dropdown-btn {
  color: #1B3865 !important;
}

/* Botón cerrar (X) mantiene rojo */
.mobile_menu .mobile_menu_close {
  color: #d60606 !important;
}

/* ── Buscador: mantener estilo original (fondo azul oscuro) ── */
.mobile_menu .mobile-search-bar {
  background-color: rgba(27, 56, 101, 1);
  border-radius: 5px;
}

.mobile_menu .mobile-search-bar input {
  color: #fff !important;
  background-color: rgba(255, 255, 255, 0.15) !important;
}

.mobile_menu .mobile-search-bar input::placeholder {
  color: #fff !important;
}

.mobile_menu .mobile-search-bar input::-webkit-input-placeholder {
  color: #fff !important;
}

.mobile_menu .mobile-search-bar input::-moz-placeholder {
  color: #fff !important;
}

.mobile_menu .mobile-search-bar input:-ms-input-placeholder {
  color: #fff !important;
}

.mobile_menu .mobile-search-bar button {
  color: #fff !important;
}

/* Social icons en drawer */
.mobile_menu .mc-mobile-header-social a {
  color: #1B3865 !important;
}

.mobile_menu .mc-mobile-header-social a:hover {
  color: #002D74 !important;
}

/* ==========================================================
   Category Archive – Extender estilos de body.blog a body.category
   ========================================================== */

/* Banner / Breadcrumb – mismos estilos que blog */
body.category .mc-breadcrumb-sec {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

body.category .mc-breadcrumb-sec>.container {
  max-width: 100%;
  padding-left: 87px;
  padding-right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  min-height: max(280px, 25.6vw);
}

body.category .mc-breadcrumb-content {
  padding: max(100px, 14.5vw) 0 0 !important;
  width: 100%;
}

body.category .mc-breadcrumb-content h2 {
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(32px, 6.3vw, 96px);
  font-weight: 700;
  color: #fff;
  line-height: 1;
  margin: 0;
}

body.category .breadcrumb-list {
  display: none;
}

/* Categoría activa en sidebar */
.lv-cat-item--active {
  background-color: #6488d6 !important;
  border-color: #6488d6 !important;
  color: #fff !important;
}

/* ── Responsive para breadcrumb en categorías ── */

/* $xxl: 1400–1599px */
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 70px;
  }
}

/* $xl: 1200–1399px */
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 60px;
  }
}

/* $lg: 992–1199px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 50px;
  }
}

/* $md: 768–991px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 40px;
    min-height: 260px;
  }
}

/* $sm: 576–767px */
@media only screen and (min-width: 576px) and (max-width: 767px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 30px;
    min-height: 220px;
  }
}

/* $xs: 481–575px */
@media only screen and (min-width: 481px) and (max-width: 575px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 24px;
    min-height: 200px;
  }
}

/* $xxs: max-width 480px */
@media (max-width: 480px) {
  body.category .mc-breadcrumb-sec>.container {
    padding-left: 20px;
    min-height: 180px;
  }
}