/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi/
Template: Divi
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Version: 5.0.1.1775730398
Updated: 2026-04-09 10:26:38
*/

/*----- GENERAL -------*/

:root {
  --negro: #000000;
  --blanco: #FFFFFF;
  --azul-petroleo: #2F6380;
  --cobre: #E6AB83;
}

body.single .et_pb_title_meta_container{
  display: block;
}

body {
  overflow-x: hidden !important;
}

.texto-azul-petroleo {
  color: var(--azul-petroleo);
}

.texto-degradado p,
.texto-degradado h1 {
  display: inline-block;
  background: linear-gradient(90deg, #2F6380 0%, #699AB5 50%, #2F6380 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.texto-degradado-azul2 p {
  display: inline-block;
  background: linear-gradient(90deg, #2F6380 0%, #699AB5 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.texto-degradado-2 span {
  display: inline-block;
  background: linear-gradient(90deg, #805F49 0%, #E6AB83 80%, #E6AB83 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.ico-marca-registrada-h1 {
  font-size: 24px !important;
  position: relative !important;
  top: -40px !important;
}

.ico-marca-registrada-h2 {
  font-size: 18px !important;
  position: relative !important;
  top: -18px !important;
}

.ico-marca-registrada-p {
  font-size: 12px !important;
  position: relative;
  top: -6px;
}

/* Marca registrada en botones */

.ico-marca-registrada-btn {
    display: inline-block !important;

    position: relative !important;
    top: -6px !important;

    margin-left: 2px !important;

    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: inherit !important;
    line-height: 1 !important;

    vertical-align: baseline !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  padding-bottom: 0px !important;
  margin-bottom: 0px !important;
  margin-block-end: 0px !important;
}

.et_pb_scroll_top.et-pb-icon {
  background: #2F6380BD !important;
  border: solid 1px white !important;
}

/* =========================================================
   HEADER
   ========================================================= */

.header-web {
    position: relative;

    /* efecto vidrio */
    -webkit-backdrop-filter: blur(12px) saturate(120%);
    backdrop-filter: blur(12px) saturate(120%);

    border-radius: 0 0 40px 40px;
    isolation: isolate;

    /* transición suave */
    transition:
        background-color 0.45s ease,
        background-image 0.45s ease,
        -webkit-backdrop-filter 0.45s ease,
        backdrop-filter 0.45s ease;
}

.header-web .elemento-topbar .et-pb-icon {
    width: 12px !important;
    height: 0px !important;
    margin-top: 2px !important;
}


/* ---- BORDE DEGRADADO ---- */

.header-web::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: inherit;

    background: linear-gradient(
        90deg,
        #699AB5,
        #E6AB83
    );

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite: xor;
    mask-composite: exclude;

    /* elimina el borde superior */
    clip-path: inset(2px 0 0 0);

    pointer-events: none;
}


/* ---- LÍNEA INTERIOR ---- */

.header-web .et_pb_row:first-child {
    border-image: linear-gradient(
        90deg,
        #699AB5,
        #E6AB83
    ) 1;
}


/* ---- HEADER FIJO ---- */

.et-l--header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 90px;
    z-index: 9999;
}


/* ---- FILAS ---- */

.et-l--header .et_pb_row {
    display: flex;
    align-items: center;
}


/* ---- ICONOS ---- */

.header-web svg,
.header-web .et-pb-icon {
    width: 18px !important;
    height: 18px !important;
}


/* ---- LOGO / IMÁGENES ---- */

.et-l--header img {
    max-width: 100%;
    height: auto;
}


/* ---- BOX SIZING ---- */

header,
.et-l--header,
.et_builder_inner_content,
.et_pb_section,
.et_pb_row {
    box-sizing: border-box;
}


/* ---- HOVER FONDO BLANCO ---- */

.et-l--header > .et_builder_inner_content > .header-web.et_pb_section:hover {
    background-color: #ffffff !important;
    background-image: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}


/* =========================================================
   TUTOR LMS
   ========================================================= */


/* ---- HEADER ---- */

body.page-id-11 .et-l--header {
  position: sticky !important;
  top: 0;
  left: auto;
  width: 100%;
  z-index: 9999;
}


/* ---- PÁGINA DE ACCESO ---- */

body.page-id-11 .tutor-template-segment.tutor-login-wrap {
  margin-top: 7em !important;
}


/* ---- PÁGINA DE CURSOS ---- */

body.post-type-archive-courses .tutor-wrap {
  margin-top: 12em !important;
}


/* ---- PÁGINA DEL CARRITO ---- */

body.page-id-14 .tutor-cart-page {
  margin-top: 9em !important;
}


/* ---- LIMPIEZA ---- */

body.page-id-11 .tutor-wrap {
  margin-top: 0 !important;
}


/* =========================================================
   ACCESO PROFESIONALES
   ========================================================= */


/* ---- ESTADO INICIAL ---- */

.boton-acceso-profesionales {
  display: block !important;
}

.boton-panel-profesionales {
  display: none !important;
}


/* ---- FALLBACK WORDPRESS ---- */

body.logged-in .boton-acceso-profesionales {
  display: none !important;
}

body.logged-in .boton-panel-profesionales {
  display: block !important;
}


/* ---- ESTADO COMPROBADO POR AJAX ---- */

body.sinvarix-usuario-logueado .boton-acceso-profesionales {
  display: none !important;
}

body.sinvarix-usuario-logueado .boton-panel-profesionales {
  display: block !important;
}


/* =========================================================
   ACCESO PROFESIONAL
   ========================================================= */


/* ---- SOLICITUD DE ACCESO ---- */

.sinvarix-solicitud-acceso {
  margin-top: 24px;
  text-align: center;
}

.sinvarix-solicitud-acceso p {
  margin-bottom: 12px;
  font-size: 14px;
}


/* ---- BOTÓN SOLICITUD ---- */

.sinvarix-boton-solicitud {
  display: block;
  width: 100%;
  padding: 4px 20px;

  border: 1px solid #316C8A;
  border-radius: 5px;

  background: transparent;

  color: #316C8A !important;

  font-size: 14px;
  font-weight: 500;

  text-align: center;

  transition:
    background-color 0.3s ease,
    color 0.3s ease;
}

.sinvarix-boton-solicitud:hover {
  background-color: #316C8A;
  color: #ffffff !important;
}


/* ---- OCULTAR ICONO DE COOKIES ---- */

body.tutor-screen-frontend-dashboard .btnpref {
  display: none !important;
}


/* =========================================================
   MENU
   ========================================================= */


/* ---- MENÚ DESKTOP ---- */

@media (min-width: 981px) {

  .header-web .et_pb_menu__wrap,
  .header-web .et_pb_menu__menu,
  .header-web .et-menu-nav,
  .header-web .et-menu-nav #menu-principal {
    width: 100%;
    max-width: 1440px;
    justify-content: space-evenly;
  }

  .header-web .et-menu-nav #menu-principal {
    font-size: 18px;
  }

  /* elemento activo */
  .header-web .et-menu-nav #menu-principal li.current-menu-item {
    position: relative;
  }

  .header-web .et-menu-nav #menu-principal li.current-menu-item::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;

    background-image: linear-gradient(
      90deg,
      #E6AB83,
      #805F49
    );
  }

  /* elemento activo dentro del submenú */
  .header-web .et-menu-nav #menu-principal .sub-menu li.current-menu-item::after {
    width: 80% !important;
    left: 10% !important;
  }

}

.sub-menu {
  border-radius: 20px;
}


/* ---- TABLET / MOBILE ---- */

@media (max-width: 980px) {

  .et-l--header {
    min-height: 70px;
  }

}


/* ---- MENÚ MOBILE ---- */

.et-l--header .et_mobile_menu {
  display: none;
}

.mobile_nav.opened .et_mobile_menu {
  display: block;
}


/* ---- ELEMENTOS SOLO MOBILE ---- */

/* ocultos en escritorio */

@media (min-width: 981px) {

  .header-web .menu-solo-mobile {
    display: none !important;
  }

}


/* ---- BOTONES MENÚ MOBILE ---- */

@media (max-width: 980px) {

  .header-web .et_mobile_menu .menu-solo-mobile {
    display: block !important;
    margin: 10px 20px;
  }

  .header-web .et_mobile_menu .menu-solo-mobile>a {
    display: flex !important;
    align-items: center;
    justify-content: center;

    min-height: 46px;

    padding: 10px 18px !important;

    border: 1px solid #2F6380;
    border-radius: 12px;

    color: #2F6380 !important;

    text-align: center;
    font-weight: 600;

    transition:
      color 0.3s ease,
      border-color 0.3s ease,
      background 0.3s ease;
  }


  /* acceso privado */

  .header-web .et_mobile_menu .menu-acceso-mobile>a {
    background: transparent;
  }


  /* contacto */

  .header-web .et_mobile_menu .menu-contacto-mobile>a {
    background: linear-gradient(
      90deg,
      #19384A 0%,
      #63AED8 100%
    );

    border-color: transparent;

    color: #ffffff !important;
  }

}


/* =========================================================
   HOME
   ========================================================= */

.img-con-deco .deco-flotante span {
  box-shadow: none !important;
}

.et_pb_group.gservicio:hover {
  box-shadow: 2px 2px 0.715em rgba(0, 0, 0, 0.3);
}

@media (min-width: 1279px) {

  body #page-container .paraquienh .et_pb_group.gservicio:hover .et_pb_group .et_pb_button_module_wrapper a.bgrups.et_pb_button {
    font-size: 1.1em !important;
  }

  body #page-container .paraquienh .et_pb_group.gservicio .et_pb_group .et_pb_button_module_wrapper a.bgrups.et_pb_button:hover {
    text-decoration: none !important;
  }

}


/* SLIDER MÉTODO HOME */

#section-slider-metodo-home {
  overflow: hidden;
}


/* ---- FILA / TRACK ---- */

#section-slider-metodo-home .row-slider-metodo-home {
  position: relative !important;

  display: block !important;

  width: 100% !important;
  max-width: none !important;

  height: 35em !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: visible;
}


/* ---- CARDS ---- */

#section-slider-metodo-home .column-card-slider {
  position: absolute !important;

  top: 50%;
  left: 50%;

  width: 315px !important;
  max-width: 315px !important;
  min-width: 315px !important;

  margin: 0 !important;
  float: none !important;

  opacity: 0;

  transform:
    translate(-50%, -50%) scale(0.64);

  transform-origin: center center;

  transition:
    left 0.9s cubic-bezier(0.65, 0, 0.35, 1),
    transform 0.9s cubic-bezier(0.65, 0, 0.35, 1),
    opacity 0.9s ease;

  will-change:
    left,
    transform,
    opacity;
}


/* slider preparado */

#section-slider-metodo-home .row-slider-metodo-home.slider-ready .column-card-slider {
  visibility: visible;
}


/* salto invisible del loop */

#section-slider-metodo-home .row-slider-metodo-home.slider-no-transition .column-card-slider {
  transition: none !important;
}


/* ---- IMÁGENES ---- */

#section-slider-metodo-home .column-card-slider .et_pb_image {
  margin-left: auto;
  margin-right: auto;
}

#section-slider-metodo-home .column-card-slider .et_pb_image img {
  display: block;

  width: 100%;
  height: auto;
}


/* ---- PAGINADOR ---- */

#section-slider-metodo-home .slider-metodo-pagination {
  display: none;

  position: absolute;

  left: 50%;
  bottom: -24px;

  transform: translateX(-50%);

  align-items: center;
  justify-content: center;

  gap: 7px;

  z-index: 20;
}

#section-slider-metodo-home .slider-metodo-dot {
  width: 7px;
  height: 7px;

  padding: 0;

  border: 0;
  border-radius: 50%;

  background: rgba(47, 99, 128, 0.25);

  cursor: pointer;

  transition:
    width 0.3s ease,
    background-color 0.3s ease,
    transform 0.3s ease;
}

#section-slider-metodo-home .slider-metodo-dot.is-active {
  width: 20px;

  border-radius: 20px;

  background: #2F6380;
}


/* ---- TABLET ---- */

@media (max-width: 980px) {

  #section-slider-metodo-home .column-card-slider {
    width: 270px !important;
    max-width: 270px !important;
    min-width: 270px !important;
  }

}


/* ---- MOBILE ---- */

@media (max-width: 767px) {

  #section-slider-metodo-home .row-slider-metodo-home {
    height: 35em !important;
    touch-action: pan-y;
  }

  #section-slider-metodo-home .column-card-slider {
    width: 68vw !important;
    max-width: 270px !important;
    min-width: 230px !important;
  }

  #section-slider-metodo-home .slider-metodo-pagination {
    display: flex;
  }

}

/* FIN - Slider metodo */


/* home Adiós a las varices sin cirugía */

/* Elimina la sombra del contenedor */

.et_pb_image_3 .et_pb_image_wrap {
  box-shadow: none !important;
}


/* Ancho fijo para escritorio Nosotrso */

.btn-nosotros {
  width: auto !important;

  /* Ajusta al contenido */
  min-width: 120px;

  /* Opcional: evitar que sea demasiado pequeño */
  padding-left: 1.5em !important;
  padding-right: 1.5em !important;

  white-space: nowrap;

  /* Evita que el texto se parta en varias líneas */
  text-align: center;
}


/* En móvil, si el texto es muy largo, permitir wrap para que no se salga */

@media (max-width: 480px) {

  .btn-nosotros {
    white-space: normal;

    /* Permite salto de línea */
    padding-left: 1em !important;
    padding-right: 1em !important;

    width: 100% !important;

    /* O auto, pero 100% ayuda a que no se desborde si el texto es largo */
    max-width: 250px;

    /* Limita el ancho máximo */
  }

}


/* =========================================================
   VARICES
   ========================================================= */


/* ---- TÍTULO CARD SLIDER ---- */

.row-slider-metodos .slider-metodos .dica-item {
  position: relative;
}


/* pastilla efecto vidrio */

.row-slider-metodos .slider-metodos.dica_divi_carousel .dica_divi_carouselitem .dica-item-content .item-title {
  position: absolute;

  top: 6%;
  left: 12%;
  right: 12%;

  width: auto;
  max-width: 90%;

  padding: 0px 6px;

  height: 60px;

  align-items: center;
  display: flex;
  justify-content: center;

  margin: 0;

  /* fondo blanco con transparencia */
  background-color: rgba(255, 255, 255, 0.75) !important;

  /* efecto vidrio suave */
  -webkit-backdrop-filter: blur(6px) saturate(110%);
  backdrop-filter: blur(6px) saturate(110%);

  border-radius: 10px;

  box-sizing: border-box;

  opacity: 1 !important;
  visibility: visible !important;

  z-index: 10;
}


/* texto degradado */

.row-slider-metodos .slider-metodos .item-title .item-title-gradient {
  display: inline-block;

  background: linear-gradient(
    90deg,
    #19384A 35%,
    #63AED8 100%
  ) !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  color: transparent !important;
}


/* mismo aspecto al hacer hover */

.row-slider-metodos .slider-metodos.dica_divi_carousel .dica_divi_carouselitem:hover .dica-item-content .item-title {
  background-color: rgba(255, 255, 255, 0.85) !important;

  -webkit-backdrop-filter: blur(6px) saturate(110%);
  backdrop-filter: blur(6px) saturate(110%);
}

.row-slider-metodos .slider-metodos .dica_divi_carouselitem:hover .item-title .item-title-gradient {
  background: linear-gradient(
    90deg,
    #2F6380 85%,
    #699AB5 100%
  ) !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  color: transparent !important;
}


/* ---- TEXTO RECUPERACIÓN DEGRADADO ---- */

.texto-degradado-3 h2 span {
  background: linear-gradient(
    to right,
    #805F49,
    #E6AB83
  );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  background-clip: text;

  display: inline-block;
}


/*
.subtitle-nomostrar .item-subtitle {
  opacity: 0% !important;
}
*/


/* =========================================================
   POPUPS
   ========================================================= */


/* contenido por encima del header cuando hay popup */

body.popup-sinvarix-abierto .et-l--post {
  position: relative !important;
  z-index: 100000 !important;
}

body.popup-sinvarix-abierto .et-l--post>.et_builder_inner_content {
  position: relative !important;
  z-index: 100000 !important;
}


/* header por debajo del popup */

body.popup-sinvarix-abierto .et-l--header {
  z-index: 1 !important;
}


/* ---- POPUP ---- */

.popup-sinvarix {
  position: fixed !important;

  top: 50% !important;
  left: 50% !important;

  transform: translate(-50%, -50%) !important;

  width: 92vw !important;
  max-width: 1200px !important;

  max-height: calc(100dvh - 40px) !important;

  margin: 0 !important;

  overflow: hidden !important;

  z-index: 1000001 !important;

  border-radius: 32px !important;

  /* sombra + oscurecimiento de toda la página */
  box-shadow:
    0 20px 60px rgba(25, 56, 74, 0.20),
    0 0 0 100vmax rgba(15, 25, 32, 0.32);
}


/* ---- CONTENIDO CON SCROLL ---- */

.popup-sinvarix-contenido {
  max-height: calc(100dvh - 40px) !important;

  overflow-y: auto !important;
  overflow-x: hidden !important;

  overscroll-behavior: contain;

  scrollbar-width: thin;

  scrollbar-color:
    rgba(255, 255, 255, 0.40) transparent;
}


/* scroll webkit */

.popup-sinvarix-contenido::-webkit-scrollbar {
  width: 7px;
}

.popup-sinvarix-contenido::-webkit-scrollbar-track {
  background: transparent;
}

.popup-sinvarix-contenido::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.40);

  border-radius: 10px;

  border: 2px solid transparent;

  background-clip: padding-box;
}

.popup-sinvarix-contenido::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.60);

  border: 2px solid transparent;

  background-clip: padding-box;
}


/* ---- BOTÓN CERRAR ---- */

.popup-cerrar {
  position: absolute !important;

  top: 20px;
  right: 22px;

  z-index: 1000002 !important;

  cursor: pointer;
}


/* ---- TABLET ---- */

@media (max-width: 980px) {

  .popup-sinvarix {
    width: 94vw !important;

    max-height: calc(100dvh - 24px) !important;

    border-radius: 24px !important;
  }

  .popup-sinvarix-contenido {
    max-height: calc(100dvh - 24px) !important;
  }

  .popup-cerrar {
    top: 16px;
    right: 16px;
  }

}


/* ---- MOBILE ---- */

@media (max-width: 767px) {

  .popup-sinvarix {
    width: 96vw !important;

    max-height: calc(100dvh - 16px) !important;

    border-radius: 20px !important;
  }

  .popup-sinvarix-contenido {
    max-height: calc(100dvh - 16px) !important;
  }

  .popup-cerrar {
    top: 12px;
    right: 12px;
  }

}


/* =========================================================
   TRATAMIENTO LIPEDEMA
   ========================================================= */

.tratamiento-lipedema .circulo-lipederma {
  animation: flotar 2s ease-in-out infinite alternate;
}

@keyframes flotar {

  0% {
    transform: translateY(0px);
  }

  100% {
    transform: translateY(-18px);
  }

}


/* =========================================================
   IMPLANTAR SINVARIX
   ========================================================= */


/* Versión ultra sutil */

.seccion-aporte .aporte-sinvarix .et_pb_text {
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.seccion-aporte .aporte-sinvarix .et_pb_text:hover {
  transform: translateY(-3px);

  box-shadow:
    0 8px 25px -6px rgba(0, 0, 0, 0.08);
}


/* Ajuste para móviles */

@media (max-width: 767px) {

  .row-slider-metodos .slider-metodos .dica-item .dica-item-content .item-title {
    top: 15px;

    font-size: 1em;

    padding: 6px 12px;

    border-radius: 10px;
  }

}


/* . El contenedor del botón se empuja hacia abajo */

.slider-metodos .dica-item .dica_elements {
  text-align: center !important;

  width: 100% !important;

  padding-bottom: 10px !important;

  /* Separación inferior opcional */
}

.dica_divi_carousel .dica_divi_carouselitem .dica-item-content {
  height: 230px;

  flex-direction: column;

  justify-content: space-between;
}


/* =========================================================
   METODO SINVARIX
   ========================================================= */


/* ===== EFECTO HOVER PARA TARJETAS "quien1" (laterales) ===== */

.quien-metodo .quien1 {
  transition: all 0.3s ease;

  border: 2px solid transparent;
}

.quien-metodo .quien1:hover {
  background-color: #E8F5FF !important;

  color: #2F6380 !important;

  box-shadow:
    0 4px 15px rgba(47, 99, 128, 0.2);

  /* sombra suave */
}


/* Forzar que los textos internos hereden el color azul en hover */

.quien-metodo .quien1:hover .et_pb_text_inner,
.quien-metodo .quien1:hover .et_pb_text_inner * {
  color: #2F6380 !important;
}


/* ===== EFECTO HOVER PARA TARJETA "quien2" (central) ===== */

.quien-metodo .quien2 {
  transition: all 0.3s ease;

  border: 1px solid #2F6380 !important;

  /* borde fino de 1px desde el inicio */
}

.quien-metodo .quien2:hover {
  background-color: #2F6380 !important;

  color: #ffffff !important;

  border-color: #2F6380 !important;

  box-shadow:
    0 4px 15px rgba(47, 99, 128, 0.2);

  /* sombra suave (opcional) */
}


/* Forzar que los textos internos hereden el color blanco en hover */

.quien-metodo .quien2:hover .et_pb_text_inner,
.quien-metodo .quien2:hover .et_pb_text_inner * {
  color: #ffffff !important;
}


/* PREGUNTAS FRECUENTES CARDS */

.preguntas-frecuentes .pre1 {
  transition: all 0.25s ease-in-out;

  cursor: pointer;
}

.preguntas-frecuentes .pre1:hover {
  transform: translateY(-4px);

  box-shadow:
    0 8px 20px rgba(0, 0, 0, 0.08);
}


/* BOTON VARICES */

.slider-metodos .dica-item .dica_elements .et_pb_button.btn-metodo:hover {
  background-color: #fafdff !important;

  border-color: #E6AB83 !important;
}

.slider-metodos .dica-item .dica_elements .btn-metodo:after {
  -webkit-text-stroke:
    1.5px currentColor;
}


/* Degradado solo en el texto al hacer hover, la flecha conserva su color */

.slider-metodos .dica-item .dica_elements .btn-metodo:hover {
  background:
    linear-gradient(
      90deg,
      #2a3135 0%,
      #4eb1e6 75%
    ) !important;

  -webkit-background-clip:
    text !important;

  background-clip:
    text !important;

  color:
    transparent !important;
}

.slider-metodos .dica-item .dica_elements .btn-metodo:hover::after {
  color:
    #2F6380 !important;

  /* Color de la flecha en estado normal, ajusta según necesidad */

  -webkit-text-fill-color:
    #2F6380 !important;
}


/* BOTON VARICES RECUPEACION */

.btn-4 {
  width: 55px !important;
  height: 55px !important;

  border-radius: 50% !important;

  padding: 0 !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  text-align: center !important;

  line-height: 1 !important;

  transition: all 0.3s ease;

  /* para suavizar */

  /* Opcional: añadir borde normal si quieres que siempre tenga borde */

  border: 2px solid transparent;

  /* o el color que prefieras */
}

.btn-4:hover {
  background: #ffffff !important;

  color: #2F6380 !important;

  border-color: #2F6380 !important;

  /* eliminado transform: scale */

  box-shadow:
    0 0 15px rgba(47, 99, 128, 0.4);
}


/* Asegura que el número (y cualquier hijo) herede el color en hover */

.btn-4:hover * {
  color: #2F6380 !important;
}


/* Línea con flecha al final */

.linea-varice {
  position: relative;

  width: 100%;

  height: 1px;

  background:
    linear-gradient(
      90deg,
      #2f6380,
      #e6ab83
    );

  margin: 30px 0;

  border-radius: 2px;

  top: auto !important;
}


/* Punto inicial */

.linea-varice::before {
  content: '';

  position: absolute;

  left: 0;
  top: 50%;

  transform:
    translate(-50%, -50%);

  width: 14px;
  height: 14px;

  background: #2f6380;

  border-radius: 50%;

  box-shadow:
    0 0 0 4px rgba(47, 99, 128, 0.15);
}


/* Flecha final */

.linea-varice::after {
  content: '';

  position: absolute;

  right: 0;
  top: 50%;

  transform:
    translate(50%, -50%);

  width: 0;
  height: 0;

  border-top:
    10px solid transparent;

  border-bottom:
    10px solid transparent;

  border-left:
    16px solid #e6ab83;
}


/* =========================================================
   IMPLANTAR SINVARIX
   ========================================================= */

.cards-programas .et_pb_blurb_content .et_pb_blurb_container .et_pb_module_header {
  margin-bottom: 4% !important;
}


/* =========================================================
   CONTACT FORM
   ========================================================= */


/* ---- CAMPOS DEL FORMULARIO ---- */

.et_pb_contact_form_7_0 .wpcf7 input[type="text"],
.et_pb_contact_form_7_0 .wpcf7 input[type="tel"],
.et_pb_contact_form_7_0 .wpcf7 input[type="email"],
.et_pb_contact_form_7_0 .wpcf7 select,
.et_pb_contact_form_7_0 .wpcf7 textarea {
  width: 100%;

  padding: 14px 15px;

  /* fondo muy sutil */
  background:
    rgba(25, 56, 74, 0.01) !important;

  border: 0 !important;

  border-bottom:
    1px solid rgba(25, 56, 74, 0.247) !important;

  color: #19384A;

  font-size: 14px;

  line-height: 1.4;

  box-sizing: border-box;

  outline: none;

  transition:
    background-color 0.25s ease,
    border-color 0.25s ease;
}


/* placeholders */

.et_pb_contact_form_7_0 .wpcf7 input::placeholder,
.et_pb_contact_form_7_0 .wpcf7 textarea::placeholder {
  color:
    rgba(25, 56, 74, 0.72);

  opacity: 1;
}


/* focus */

.et_pb_contact_form_7_0 .wpcf7 input[type="text"]:focus,
.et_pb_contact_form_7_0 .wpcf7 input[type="tel"]:focus,
.et_pb_contact_form_7_0 .wpcf7 input[type="email"]:focus,
.et_pb_contact_form_7_0 .wpcf7 select:focus,
.et_pb_contact_form_7_0 .wpcf7 textarea:focus {
  background:
    rgba(25, 56, 74, 0.055) !important;

  border-bottom-color:
    #63AED8 !important;
}


/* ---- SELECTOR ---- */

.et_pb_contact_form_7_0 .wpcf7 select {
  min-height: 48px;

  cursor: pointer;

  color:
    rgba(25, 56, 74, 0.82);

  -webkit-appearance: auto;

  appearance: auto;
}


/* ---- TEXTAREA ---- */

.et_pb_contact_form_7_0 .wpcf7 textarea {
  min-height: 150px;

  resize: vertical;
}


/* ---- POLÍTICA DE PRIVACIDAD ---- */

.et_pb_contact_form_7_0 .wpcf7 .wpcf7-acceptance {
  font-size: 14px;

  line-height: 1.4;
}

.et_pb_contact_form_7_0 .wpcf7 .wpcf7-acceptance a {
  color: #2F6380;

  text-decoration: underline;

  text-underline-offset: 2px;
}


/* ---- MENSAJES DE VALIDACIÓN ---- */

.et_pb_contact_form_7_0 .wpcf7 .wpcf7-not-valid-tip {
  margin-top: 6px;

  font-size: 13px;
}


/* ---- BOTÓN ---- */

body #page-container .et_pb_contact_form_7_0 .wpcf7-form button.wpcf7-submit.et_pb_button.et_pb_module {
  min-height: 48px;

  padding: 10px 24px !important;

  background: transparent !important;

  border:
    1px solid #2F6380 !important;

  border-radius:
    12px !important;

  color:
    #2F6380 !important;

  font-size:
    16px !important;

  font-weight:
    600 !important;

  line-height:
    1.2 !important;

  letter-spacing:
    0 !important;

  cursor:
    pointer;

  transition:
    color 0.3s ease,
    border-color 0.3s ease,
    background 0.3s ease,
    transform 0.3s ease !important;
}


/* eliminar iconos/pseudo-elementos que añade Divi */

body #page-container .et_pb_contact_form_7_0 .wpcf7-form button.wpcf7-submit.et_pb_button::before,
body #page-container .et_pb_contact_form_7_0 .wpcf7-form button.wpcf7-submit.et_pb_button::after {
  display:
    none !important;

  content:
    none !important;
}


/* hover botón */

body #page-container .et_pb_contact_form_7_0 .wpcf7-form button.wpcf7-submit.et_pb_button.et_pb_module:not(:disabled):hover {
  background:
    linear-gradient(
      90deg,
      #19384A 0%,
      #63AED8 100%
    ) !important;

  border-color:
    transparent !important;

  color:
    #ffffff !important;

  font-size:
    16px !important;

  transform:
    translateY(-1px);
}


/* botón deshabilitado hasta aceptar privacidad */

body #page-container .et_pb_contact_form_7_0 .wpcf7-form button.wpcf7-submit.et_pb_button.et_pb_module:disabled {
  opacity: 0.45;

  font-size:
    18px !important;

  cursor:
    not-allowed;
}


/* =========================================================
   BANNER COOKIES
   ========================================================= */

.btnpref {
  position: fixed;

  z-index: 999;

  bottom: 15px;
  left: 15px;

  max-width: 72px;

  font-size: 14px;

  padding: 5px;

  border-radius: 8px;

  background-color: white;

  box-shadow:
    1px -1px 1px 0px rgba(0, 0, 0, 0.3);

  border:
    1px solid black;
}

.btnpref img {
  max-width: 40px;

  transition:
    transform 0.3s ease-in-out;
}

.btnpref img:hover {
  transform:
    scale(1.1);

  animation:
    bounce 0.5s ease;
}


/* animacion efecto rebote */

@keyframes bounce {

  0% {
    transform: scale(1);
  }

  30% {
    transform: scale(1.2);
  }

  50% {
    transform: scale(1);
  }

  70% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }

}

.btnpref:hover {
  cursor: pointer;
}

#firma {
  background: #2F6380;

  color: #ffffff;

  font-size: 10px;

  text-align: center;
}

#firma a {
  color: #ffffff;
}


/* ---- RESPONSIVE 1280PX a 1520PX ---- */

@media (min-width: 1279px) and (max-width:1520px) {

  #menu-principal li a {
    font-size: 16px !important;
  }

  .section-hero {
    padding-top: 14% !important;
  }

  #row-hero {
    width: 90% !important;
  }

  #row-ancho-completo {
    width: 100% !important;
  }

  .slogan-hero h1,
  .slogan-hero p {
    font-size: 50px !important;

    line-height: 1.2em;
  }

  .eyebrow h1,
  .eyebrow p {
    font-size: 14px !important;
  }

  #section-img-flotante {
    background-image: none !important;

    background-color:
      var(--azul-petroleo) !important;
  }

  .ico-marca-registrada-h1 {
    top: -18px !important;
  }

  html body #page-container .et_pb_section .et_pb_button_module_wrapper a.et_pb_button {
    font-size: 14px !important;
  }

  h3 {
    font-size: 20px !important;
  }


  /* párrafos generales, excepto popups */

  :where(p:not(.popup-sinvarix p)) {
    font-size: 16px !important;
  }

  .percent p {
    font-size: 52px !important;
  }

  #section-faqs .et_pb_row .et_pb_column .et_pb_button_module_wrapper .btn-faqs::after {
    margin-left: 1em !important;
  }

  #section-faqs .et_pb_toggle_title,
  #section-faqs .et_pb_toggle .et_pb_column .et_pb_toggle_title,
  #section-faqs .et_pb_column .et_pb_toggle .et_pb_toggle_content p {
    font-size: 14px !important;
  }

  #section-tratamientos-varices .row-slider-metodos {
    width: 90% !important;
  }

  #section-tratamientos-varices .row-slider-metodos h3,
  #section-tratamientos-varices .row-slider-metodos .content p {
    font-size: 14px !important;
  }

  .row-slider-metodos .slider-metodos.dica_divi_carousel .dica_divi_carouselitem .dica-item-content .item-title {
    height: 50px !important;
  }

  #section-tratamientos-varices .swiper-buttton-container .swiper-button-prev,
  #section-tratamientos-varices .swiper-buttton-container .swiper-button-next {
    font-size: 28px !important;
  }

  #section-tratamientos-varices .row-slider-metodos .slider-metodos .dica_elements .et_pb_button {
    height: 38px !important;
  }

  .cards-programas .et_pb_blurb_content .et_pb_blurb_container .et_pb_module_header {
    font-size: 18px !important;
  }

  .cards-programas .et_pb_blurb_content .et_pb_blurb_container .et_pb_blurb_description p {
    font-size: 14px !important;
  }

}


/* ---- RESPONSIVE HASTA 1024PX ---- */

@media (max-width: 1024px) {

  /* menu */

  #menu-principal li a {
    padding-bottom: 12px !important;
  }

  .et_pb_menu--with-logo .et_pb_menu__menu>nav>ul>li>a::after {
    top: 66% !important;
  }


  /* cards pacientes-clinicas */

  #section-pacientes-clinicas .row-pacientes-clinicas {
    width: 90% !important;
  }

  #section-pacientes-clinicas .card-pacientes-clinicas {
    width: 100% !important;

    max-width: 100% !important;

    overflow: hidden;

    flex-direction:
      column !important;
  }


  /* imagen */

  #section-pacientes-clinicas .card-pacientes-clinicas .et_pb_image {
    width: 100% !important;

    max-width: 100% !important;

    margin: 0 !important;
  }

  #section-pacientes-clinicas .card-pacientes-clinicas .et_pb_image_wrap {
    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    aspect-ratio:
      4 / 3;

    overflow:
      hidden;
  }

  #section-pacientes-clinicas .card-pacientes-clinicas .et_pb_image img {
    display: block !important;

    width: 100% !important;

    height: 100% !important;

    max-width: none !important;

    object-fit:
      cover;

    object-position:
      center;
  }

  .section-hero {
    padding-top:
      18% !important;

    height:
      auto !important;
  }

  #row-hero {
    width:
      90% !important;
  }

  #row-ancho-completo {
    width:
      100% !important;
  }

  .slogan-hero h1,
  .slogan-hero p {
    font-size:
      36px !important;

    line-height:
      1.2em;
  }

  .eyebrow h1,
  .eyebrow p {
    font-size:
      14px !important;
  }

  #section-img-flotante {
    background-image:
      none !important;

    background-color:
      var(--azul-petroleo) !important;
  }

  .ico-marca-registrada-h1 {
    font-size:
      20px !important;

    top:
      -8px !important;
  }

  html body #page-container .et_pb_section .et_pb_button_module_wrapper a.et_pb_button {
    font-size:
      14px !important;
  }

  h3 {
    font-size:
      20px !important;
  }


  /* párrafos generales, excepto popups */

  :where(p:not(.popup-sinvarix p)) {
    font-size:
      16px !important;
  }

  .percent p {
    font-size:
      52px !important;
  }

  #section-faqs .et_pb_row .et_pb_column .et_pb_button_module_wrapper .btn-faqs::after {
    margin-left:
      1em !important;
  }

  #section-faqs .et_pb_toggle_title,
  #section-faqs .et_pb_toggle .et_pb_column .et_pb_toggle_title,
  #section-faqs .et_pb_column .et_pb_toggle .et_pb_toggle_content p {
    font-size:
      14px !important;
  }

  #section-tratamientos-varices .row-slider-metodos {
    width:
      90% !important;
  }

  #section-tratamientos-varices .row-slider-metodos h3,
  #section-tratamientos-varices .row-slider-metodos .content p {
    font-size:
      14px !important;
  }

  .row-slider-metodos .slider-metodos.dica_divi_carousel .dica_divi_carouselitem .dica-item-content .item-title {
    height:
      50px !important;
  }

  #section-tratamientos-varices .swiper-buttton-container .swiper-button-prev,
  #section-tratamientos-varices .swiper-buttton-container .swiper-button-next {
    font-size:
      28px !important;
  }

  #section-tratamientos-varices .row-slider-metodos .slider-metodos .dica_elements .et_pb_button {
    height:
      38px !important;
  }

  .cards-programas .et_pb_blurb_content .et_pb_blurb_container .et_pb_module_header {
    font-size:
      18px !important;
  }

  .cards-programas .et_pb_blurb_content .et_pb_blurb_container .et_pb_blurb_description p {
    font-size:
      14px !important;
  }

  #section-tratamientos-varices .row-slider-metodos .slider-metodos>div {
    height:
      100% !important;
  }

  .dica-container .swiper-container {
    height:
      100% !important;
  }

}


/* ---- RESPONSIVE HASTA 980PX ---- */

@media(max-width: 980px) {

  #mobile_menu1 {
    top: 45px;

    border-radius:
      24px;
  }

  .btnpref {
    bottom:
      54px !important;

    left:
      0px;

    max-width:
      180px;

    border:
      none !important;

    border-radius:
      0px 8px 0px 0px !important;

    border-bottom-left-radius:
      0px !important;

    border-bottom-right-radius:
      0px !important;
  }

  .btnpref img {
    max-width:
      14px !important;
  }

  .carruselh .dica_divi_carouselitem .dica-item-content {
    height:
      auto !important;
  }

  #section-tratamientos-varices .row-slider-metodos .slider-metodos>div {
    height:
      100% !important;
  }

  .dica-container .swiper-container {
    height:
      100% !important;
  }

  .ico-marca-registrada-h2 {
    top:
      -8px !important;

    font-size:
      16px !important;
  }

  .section-hero {
    height:
      auto !important;

    padding-top:
      30% !important;
  }

  body.page-id-11 .tutor-template-segment.tutor-login-wrap{
    margin-top: 2em !important;
  }

}


/* ---- RESPONSIVE HASTA 768PX ---- */

@media (max-width: 768px) {

  .dica_divi_carousel .dica_divi_carouselitem .dica-item-content {
    height:
      252px;
  }

  .card-lipedema .lipe1,
  .card-lipedema .lipe {
    transform:
      translateY(-4px) scale(1.01);

    box-shadow:
      0 8px 24px rgba(0, 0, 0, 0.15);
  }

  #main-content .gservicio .et_pb_button_module_wrapper a.et_pb_button {
    padding-left:
      0px !important;

    padding-right:
      0px !important;
  }

  #firma {
    padding-bottom:
      6em;
  }

}