.elementor-kit-18{--e-global-color-primary:#097DBE;--e-global-color-secondary:#00ADBB;--e-global-color-text:#000000;--e-global-color-accent:#00ADBB;--e-global-color-d82da3b:#F2F8FC;--e-global-color-e311b5e:#FFFFFF;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:400;}.elementor-kit-18 e-page-transition{background-color:#FFBC7D;}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-family:"Poppins", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --belize-blue:#097DBE; --belize-turquoise:#00ADBB; --belize-light-blue:#F2F8FC; --belize-white:#FFFFFF; --belize-ink:#10303F; --belize-font:Poppins; }
/* Start custom CSS *//*=================*/
/*ROOT*/
/*=================*/
:root {
  
  /* NUEVAS VARIABLES PARA TIPOGRAFÍA */
  --font-size-h1: 3.5rem;
  --font-size-h2: 3rem;
  --font-size-h3: 2rem;
  --font-size-body: 1rem;
  --font-size-small: 0.9rem;
  
  /* Responsive */
  --font-size-h1-tablet: 2.8rem;
  --font-size-h2-tablet: 2.5rem;
  --font-size-h3-tablet: 1.6rem;
  
  --font-size-h1-mobile: 2rem;
  --font-size-h2-mobile: 1.8rem;
  --font-size-h3-mobile: 1.4rem;
}

/*================*/
/*Estilo botón WhatsApp*/
/*================*/
#boton-whatsapp {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 25px 18px 35px;
  background: #F5F1E8;
  color: #1a1a1a;
  text-decoration: none;
  border-radius: 50px;
  font-size: 18px;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  transition: color 0.4s ease;
  gap: 20px;
  z-index: 1;
  font-family: Poppins;
}

#boton-whatsapp .boton-texto {
  position: relative;
  z-index: 2;
  transition: color 0.4s ease;
}

#boton-whatsapp .boton-icono-whatsapp {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: #128c7e;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  transition: background 0.4s ease;
  color: white;
  flex-shrink: 0;
  font-family: Poppins;
}

#boton-whatsapp::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 25px;
  width: 50px;
  height: 50px;
  background: #128c7e;
  border-radius: 50%;
  transform: translateY(-50%) scale(1);
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}

#boton-whatsapp:hover::before {
  transform: translateY(-50%) scale(15);
}

#boton-whatsapp:hover {
  color: white;
}

#boton-whatsapp:hover .boton-texto {
  color: white;
}

#boton-whatsapp:hover .boton-icono-whatsapp {
  background: rgba(255, 255, 255, 0.2);
}

/*================*/
/* BOTÓN VER VIDEO - ESTILO YOUTUBE - CORREGIDO */
/*================*/
#boton-video,
.boton-video {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 25px 18px 35px;
  background: #F5F1E8;
  color: #1a1a1a;
  text-decoration: none;
  border-radius: 50px;
  font-size: 18px;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  transition: color 0.4s ease;
  gap: 20px;
  z-index: 1;
  cursor: pointer;
  font-family: Poppins;
}

.boton-video .boton-texto,
#boton-video .boton-texto {
  position: relative;
  z-index: 2;
  transition: color 0.4s ease;
}

.boton-video .boton-icono-video,
#boton-video .boton-icono-video {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: #FF0000;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  transition: background 0.4s ease;
  color: white;
  flex-shrink: 0;
}

.boton-video .boton-icono-video::before,
#boton-video .boton-icono-video::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent white;
  margin-left: 3px;
}

.boton-video::before,
#boton-video::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 25px;
  width: 50px;
  height: 50px;
  background: #FF0000;
  border-radius: 50%;
  transform: translateY(-50%) scale(1);
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}

.boton-video:hover::before,
#boton-video:hover::before {
  transform: translateY(-50%) scale(15);
}

.boton-video:hover,
#boton-video:hover {
  color: white;
}

.boton-video:hover .boton-texto,
#boton-video:hover .boton-texto {
  color: white;
}

.boton-video:hover .boton-icono-video,
#boton-video:hover .boton-icono-video {
  background: rgba(255, 255, 255, 0.2);
}

/*================*/
/* BOTÓN GENÉRICO LEER MÁS - CORREGIDO */
/*================*/
.boton-leer-mas,
#boton-leer-mas {
  --color-boton: #00ADBB;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 25px 18px 35px;
  background: #F5F1E8;
  color: #1a1a1a;
  text-decoration: none;
  border-radius: 50px;
  font-size: 18px;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  transition: color 0.4s ease;
  gap: 20px;
  z-index: 1;
  cursor: pointer;
}

.boton-leer-mas .boton-texto,
#boton-leer-mas .boton-texto {
  position: relative;
  z-index: 2;
  transition: color 0.4s ease;
}

.boton-leer-mas .boton-icono-flecha,
#boton-leer-mas .boton-icono-flecha {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: var(--color-boton);
  border-radius: 50%;
  position: relative;
  z-index: 2;
  transition: background 0.4s ease;
  color: white;
  flex-shrink: 0;
  font-size: 20px;
  font-weight: bold;
}

.boton-leer-mas::before,
#boton-leer-mas::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 25px;
  width: 50px;
  height: 50px;
  background: var(--color-boton);
  border-radius: 50%;
  transform: translateY(-50%) scale(1);
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}

.boton-leer-mas:hover::before,
#boton-leer-mas:hover::before {
  transform: translateY(-50%) scale(15);
}

.boton-leer-mas:hover,
#boton-leer-mas:hover,
.boton-leer-mas:hover .boton-texto,
#boton-leer-mas:hover .boton-texto {
  color: white;
}

.boton-leer-mas:hover .boton-icono-flecha,
#boton-leer-mas:hover .boton-icono-flecha {
  background: rgba(255, 255, 255, 0.2);
}

/*================*/
/*Estilo botón LLAMADA Dr. Rincón*/
/*================*/
#boton-drrincon {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 25px 18px 35px;
  background: #F5F1E8;
  color: #1a1a1a;
  text-decoration: none;
  border-radius: 50px;
  font-size: 18px;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  transition: color 0.4s ease;
  gap: 20px;
  z-index: 1;
}

#boton-drrincon .boton-texto {
  position: relative;
  z-index: 2;
  transition: color 0.4s ease;
}

#boton-drrincon .boton-flecha {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: #7AA5BA;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  transition: background 0.4s ease;
  color: white;
  flex-shrink: 0;
  font-family: Poppins;
}

#boton-drrincon::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 25px;
  width: 50px;
  height: 50px;
  background: #7AA5BA;
  border-radius: 50%;
  transform: translateY(-50%) scale(1);
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}

#boton-drrincon:hover::before {
  transform: translateY(-50%) scale(15);
}

#boton-drrincon:hover {
  color: white;
}

#boton-drrincon:hover .boton-texto {
  color: white;
}

#boton-drrincon:hover .boton-flecha {
  background: rgba(255, 255, 255, 0.2);
}

/*================*/
/* CONTENEDOR DE 2 BOTONES */
/*================*/
.contenedor-botones {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
}

/* Alineaciones por ID */
#botones-izquierda {
  justify-content: flex-start;
}

#botones-centro {
  justify-content: center;
}

#botones-derecha {
  justify-content: flex-end;
}

/* Desktop - 2 botones en línea */
@media (min-width: 769px) {
  .contenedor-botones {
    flex-direction: row;
  }
}

/* Tablet y móvil - 1 botón por fila */
@media (max-width: 768px) {
  .contenedor-botones {
    flex-direction: column;
    gap: 15px;
    justify-content: center !important;
    align-items: center;
  }
  
  .contenedor-botones > a,
  .contenedor-botones > button {
    width: 100%;
    max-width: 350px;
  }
}

/*================*/
/* BOTÓN GENÉRICO LEER MÁS */
/*================*/
/*================*/
/* Variante WhatsApp: color secondary del proyecto */
/*================*/
#boton-drrincon[href*="wa.me"] .boton-flecha,
#boton-drrincon[href*="wa.me"]::before {
  background: var(--e-global-color-secondary, #7AA5BA);
}

#boton-drrincon[href*="wa.me"]:hover .boton-flecha {
  background: rgba(255, 255, 255, 0.2);
}

/* Botones de las tarjetas de procedimientos */
.btn-leer-mas-drrincon[href*="wa.me"],
.btn-leer-mas-drrincon[href*="wa.me"] .flecha-drrincon {
  color: var(--e-global-color-secondary, #7AA5BA);
}



/*================*/
/* BADGES HERO - EN FILA */
/*================*/
.hero-badges-container {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap;
}

.dr-cert-badge {
  background: #003d5c;
  color: white;
  padding: 5px 20px;
  border-radius: 5px 0px 5px 0px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.3s ease;
}

.dr-cert-badge:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.3);
}

.dr-cert-icon {
  width: 25px; 
  height: 25px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dr-cert-info {
  display: flex;
  flex-direction: column;
}

.dr-cert-info span {
  display: block;
  line-height: 1.2;
}

.dr-cert-title { 
  font-weight: 500; 
  font-size: 0.8rem; 
  letter-spacing: 0.5px; 
}

.dr-cert-sub { 
  font-size: 0.7rem; 
  opacity: 0.8; 
  font-style: italic;
}

/* Badge 1: Experiencia - Dorado suave */
.badge-experiencia-hero {
  background: linear-gradient(135deg, #E6A953 0%, #D89638 100%);
  color: #1a1a1a;
  border-left: 4px solid #F0C57A;
}

.badge-experiencia-hero .dr-cert-icon {
  background: #F0C57A;
  color: #1a1a1a;
}

/* Badge 2: Confianza - Azul Claro */
.badge-confianza-hero {
  background: linear-gradient(135deg, #7AA5BA 0%, #5a8a9f 100%);
  color: white;
  border-left: 4px solid #9ec5d9;
}

.badge-confianza-hero .dr-cert-icon {
  background: #9ec5d9;
  color: #003d5c;
}

/* Responsive */
@media (max-width: 768px) {
  .hero-badges-container {
    gap: 10px;
  }
  
  .dr-cert-badge {
    padding: 12px 18px;
    gap: 10px;
  }
  
  .dr-cert-icon {
    width: 28px;
    height: 28px;
  }
  
  .dr-cert-title {
    font-size: 0.85rem;
  }
  
  .dr-cert-sub {
    font-size: 0.65rem;
  }
}

@media (max-width: 480px) {
  .hero-badges-container {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  
  .dr-cert-badge {
    width: 100%;
    max-width: 280px;
  }
}
/*================*/
/*GRID CIRUGÍAS - 8 CATEGORÍAS (4+4)*/
/*================*/
#grid-cirugias {
  margin: 0 auto;
  padding: 100px 30px;
}

.contenido-hero {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 30px;
  align-items: start;
  margin-bottom: 40px;
}

.texto-hero {
  padding-top: 40px;
}

.titulo-principal {
  font-size: 3rem;
  font-weight: 600;
  line-height: 1.1;
  color: #1a1a1a;
  margin-bottom: 25px;
  letter-spacing: -1px;
}

.frase-destacada {
  font-size: 1.05rem;
  color: #666;
  line-height: 1.7;
  max-width: 500px;
}

.subtitulo-hero {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* GRID SUPERIOR: 4 columnas */
.grid-imagenes-superior {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  height: 380px;
  margin-bottom: 10px;
}

/* GRID INFERIOR: 4 columnas */
.grid-imagenes-inferior {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  height: 380px;
}

.imagen-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  cursor: pointer;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  height: 100%;
  box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}

.imagen-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
  transition: opacity 0.4s ease;
  pointer-events: none;
}

.imagen-card:hover::before {
  opacity: 0;
}

.imagen-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 40px rgba(0,0,0,0.15);
}

.imagen-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease, filter 0.4s ease;
  filter: grayscale(60%) brightness(0.85);
}

.imagen-card:hover img {
  transform: scale(1.1);
  filter: grayscale(0%) brightness(1);
}

.overlay-card {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.4) 70%, transparent 100%);
  padding: 20px 18px;
  transform: translateY(100%);
  transition: transform 0.4s ease;
  z-index: 2;
}

.imagen-card:hover .overlay-card {
  transform: translateY(0);
}

.overlay-card h3 {
  color: white;
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 6px;
}

.overlay-card p {
  color: rgba(255,255,255,0.9);
  font-size: 0.85rem;
  line-height: 1.4;
  margin-bottom: 10px;
}

/* Botón Leer más */
.overlay-card .btn-leer-mas {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #7AA5BA;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  transition: gap 0.3s ease, color 0.3s ease;
}

.overlay-card .btn-leer-mas:hover {
  gap: 12px;
  color: #5a8a9f;
}

.overlay-card .btn-leer-mas .flecha {
  transition: transform 0.3s ease;
}

.overlay-card .btn-leer-mas:hover .flecha {
  transform: translateX(3px);
}

/* Responsive */
@media (max-width: 1200px) {
  .grid-imagenes-superior,
  .grid-imagenes-inferior {
    grid-template-columns: repeat(4, 1fr);
  }
  
  .imagen-card {
    height: auto;
    min-height: 280px;
  }
  
  .grid-imagenes-superior,
  .grid-imagenes-inferior {
    height: auto;
  }
}

@media (max-width: 1024px) {
  #grid-cirugias {
    padding: 80px 30px;
  }

  .contenido-hero {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .titulo-principal {
    font-size: 2.5rem;
  }
  
  .grid-imagenes-superior,
  .grid-imagenes-inferior {
    grid-template-columns: repeat(2, 1fr);
    height: auto;
    gap: 15px;
  }
  
  .imagen-card {
    min-height: 320px;
  }
}

@media (max-width: 768px) {
  #grid-cirugias {
    padding: 60px 20px;
  }
  
  .titulo-principal {
    font-size: 2rem;
    margin-bottom: 20px;
  }
  
  .grid-imagenes-superior,
  .grid-imagenes-inferior {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  
  .imagen-card {
    min-height: 300px;
  }
  
  .overlay-card {
    padding: 20px 15px;
  }
  
  .overlay-card h3 {
    font-size: 1.2rem;
  }
}
/*================*/
/* ACERCA DE  */
/*================*/
#acerca-de {
  background: #ffffff;
  padding: 100px 30px;
}

.contenedor-acerca {
  max-width: 1300px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.lado-imagenes {
  position: relative;
}

/* IMAGEN PRINCIPAL –– FIX COMPLETO */
.imagen-principal {
  width: 90%;
  height: 500px;
  border-radius: 20px;
  margin-left: 80px;
  overflow: visible;
  position: relative;
}

.imagen-principal img {
  width: 100%;
  height: auto; /* mantiene proporción natural */
  object-fit: cover;
  display: block;
  border-radius: 20px;
}

/* BADGE CIRCULAR */
.badge-experiencia-circular {
  position: absolute;
  bottom: -90px;
  left: 50px;
  width: 150px;
  height: 150px;
  background: white;
  border-radius: 50%;
  box-shadow: 0 15px 50px rgba(0,0,0,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20 !important; 
}

.circulo-rotativo {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: rotar-circulo 20s linear infinite;
}

@keyframes rotar-circulo {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.texto-circular {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  fill: #003d5c;
  text-transform: uppercase;
}

.numero-centro {
  position: relative;
  z-index: 2;
  text-align: center;
}

.numero-grande {
  font-size: 48px;
  font-weight: 700;
  color: #003d5c;
  line-height: 1;
  display: block;
}

/* TIPOGRAFÍA Y TEXTOS */
.subtitulo-acerca {
  display: inline-block;
  background: #e3f2fd;
  color: #003d5c;
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.titulo-acerca {
  font-size: 52px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1.2;
  margin-bottom: 25px;
  letter-spacing: -1px;
}

.nombre-destacado {
  color: #003d5c;
}

.descripcion-acerca {
  font-size: 17px;
  line-height: 1.7;
  color: #666;
  margin-bottom: 35px;
}

/* BOTÓN */
.boton-acerca {
  display: inline-block;
  background: #00693e;
  color: white;
  padding: 16px 40px;
  border-radius: 50px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 5px 20px rgba(0,105,62,0.2);
}

.boton-acerca:hover {
  background: #005230;
  transform: translateY(-3px);
  box-shadow: 0 8px 30px rgba(0,105,62,0.3);
}

/* Responsive */

@media (max-width: 1024px) {
  .contenedor-acerca {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .titulo-acerca {
    font-size: 42px;
  }

  /* Badge se ajusta al tamaño del contenedor */
  .badge-experiencia-circular {
    left: 30px;
    width: 130px;
    height: 130px;
  }
}

@media (max-width: 768px) {
  #acerca-de {
    padding: 60px 20px;
  }

  .titulo-acerca {
    font-size: 36px;
  }

  .descripcion-acerca {
    font-size: 16px;
  }

  /* Imagen más compacta visualmente */
  .imagen-principal {
    border-radius: 15px;
  }

  .imagen-principal img {
    border-radius: 15px;
  }

  /* Badge más pequeño en móvil */
  .badge-experiencia-circular {
    left: 20px;
    width: 110px;
    height: 110px;
    bottom: -15px;
  }

  .numero-grande {
    font-size: 34px;
  }

  .texto-circular {
    font-size: 11px;
  }
}

/*================*/
/*CERTIFICACIONES*/
/*================*/
#logos-certificaciones {
  background: transparent;
  padding: 20px 30px;
  overflow: hidden;
  position: relative; /* AGREGAR */
}

.contenedor-certificaciones {
  max-width: 1400px;
  margin: 0 auto;
  text-align: center;
}

.carrusel-wrapper {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 100%; /* AGREGADO */
}

.carrusel-logos {
  display: flex;
  align-items: center;
  gap: 40px;
  animation: scroll-infinito 60s linear infinite;
  width: max-content; /* CAMBIADO: de fit-content a max-content */
  will-change: transform; /* AGREGADO: optimización de performance */
}

@keyframes scroll-infinito {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.logo-item {
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  pointer-events: auto;
  user-select: none;
}

.logo-item a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer; /* Fuerza el cursor de clic */
}

.logo-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: all 0.3s ease;
  pointer-events: auto;
  user-select: none;
  -webkit-user-drag: none;
}

/* Responsive */
@media (max-width: 768px) {
  #logos-certificaciones {
    padding: 60px 20px;
  }
  
  .titulo-certificaciones {
    font-size: 2rem;
  }
  
  .subtitulo-certificaciones {
    font-size: 1rem;
    margin-bottom: 40px;
  }
  
  .carrusel-logos {
    gap: 60px;
    animation: scroll-infinito 30s linear infinite;
  }
  
  .logo-item {
    width: 120px;
    height: 80px;
  }
}

/* ========================================
   BADGE CIRCULAR - Componente independiente
   ======================================== */

.badge-circular-experiencia {
  /* Dimensiones */
  width: 150px;
  height: 150px;
  
  /* Apariencia */
  background: white;
  border-radius: 50%;
  box-shadow: 0 15px 50px rgba(0,0,0,0.2);
  
  /* Layout interno */
  display: flex;
  align-items: center;
  justify-content: center;
  
  /* Posicionamiento cuando se usa dentro de otro elemento */
  position: relative;
  
  /* Para que se vea sobre otros elementos cuando sea necesario */
  z-index: 10;
}

/* SVG rotativo */
.svg-circular-rotativo {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: rotacion-badge 20s linear infinite;
}

@keyframes rotacion-badge {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Texto circular */
.texto-badge-circular {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
  fill: #003d5c;
  text-transform: uppercase;
}

/* Número central */
.numero-badge-centro {
  position: relative;
  z-index: 2;
  text-align: center;
}

.numero-badge-grande {
  font-size: 48px;
  font-weight: 700;
  color: #003d5c;
  line-height: 1;
  display: block;
}

/* ========================================
   VARIANTES DE USO
   ======================================== */

/* Versión flotante (para usar sobre imágenes) */
.badge-circular-experiencia.flotante {
  position: absolute;
  bottom: -30px;
  left: 50px;
  z-index: 20;
}

/* Versión inline (para usar en flujo normal) */
.badge-circular-experiencia.inline {
  display: inline-flex;
  margin: 20px;
}

/* Versión pequeña */
.badge-circular-experiencia.pequeno {
  width: 120px;
  height: 120px;
}

.badge-circular-experiencia.pequeno .numero-badge-grande {
  font-size: 36px;
}

.badge-circular-experiencia.pequeno .texto-badge-circular {
  font-size: 11px;
}

/* Versión grande */
.badge-circular-experiencia.grande {
  width: 180px;
  height: 180px;
}

.badge-circular-experiencia.grande .numero-badge-grande {
  font-size: 56px;
}

.badge-circular-experiencia.grande .texto-badge-circular {
  font-size: 16px;
}


/*================*/
/* BOTÓN LEER MÁS - ESTILO DR. RINCÓN */
/*================*/

/* Contenedor del botón */
.contenedor-btn-leer-mas {
  display: inline-block;
}

/* Botón base */
.btn-leer-mas-drrincon {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #7AA5BA; /* Color azul claro de referencia */
  font-size: 0.9rem;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: inherit;
  cursor: pointer;
  letter-spacing: 0.3px;
}

.btn-leer-mas-drrincon:hover {
  gap: 14px;
  color: #5a8a9f; /* Azul más oscuro en hover */
}

.btn-leer-mas-drrincon .flecha-drrincon {
  transition: transform 0.3s ease;
  display: inline-block;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1;
}

.btn-leer-mas-drrincon:hover .flecha-drrincon {
  transform: translateX(5px);
}

/* Variante para fondo oscuro (con text-shadow) */
.btn-leer-mas-oscuro {
  text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.btn-leer-mas-oscuro:hover {
  text-shadow: 0 2px 8px rgba(122,165,186,0.6);
}

/* Variante blanco*/
.btn-leer-mas-blanco {
  text-shadow: #fff;
}

.btn-leer-mas-blanco:hover {
  text-shadow: #fff;
}


/* Tamaño para menú */
.btn-leer-mas-small {
  font-size: 13px;
  gap: 8px;
  color: #003057;
  padding-top: 0px !important;
}

.btn-leer-mas-small:hover {
  gap: 15px;
  color: #5a8a9f;
}

.btn-leer-mas-small .flecha-drrincon {
  font-size: 13px;
}

/* Responsive */
@media (max-width: 768px) {
  .btn-leer-mas-drrincon {
    font-size: 13px;
    gap: 8px;
  }
  
  .btn-leer-mas-drrincon:hover {
    gap: 13px;
  }
  
  .btn-leer-mas-drrincon .flecha-drrincon {
  font-size: 11px;
  }
}

/* =============================
   ESTILOS PARA BODY-BLOG - TEMPLATE UNIVERSAL
============================= */

/* =============================
   ENCABEZADOS
============================= */

.body-blog h2 {
    margin-top: 1.6em;
    font-size: 33px;
    line-height: 1.2em;
    padding-bottom: 18px;
    text-align: center;
    color: #097DBE;
    font-weight: 500;
    margin-bottom: 1em;
}

.body-blog h3 {
    font-size: 24px;
    margin-top: 1.5em;
    margin-bottom: 0.8em;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
}

.body-blog h4 {
    font-size: 20px;
    margin-top: 1.3em;
    margin-bottom: 0.6em;
    font-weight: 600;
}

/* =============================
   PÁRRAFOS Y TEXTO
============================= */

.body-blog p {
    line-height: 1.7;
    margin-bottom: 1.2em;
}

/* Énfasis y cursivas */
.body-blog em,
.body-blog i {
    font-style: italic;
    color: #555;
}

/* Texto pequeño */
.body-blog small {
    font-size: 15px;
    color: #666;
}

/* =============================
   LISTAS CON VIÑETAS PERSONALIZADAS
============================= */

.body-blog ul {
    list-style: none;
    margin: 10px 0 15px 25px !important;
    padding: 4px 0;
}

.body-blog ul li {
    position: relative;
    padding-left: 1.5em;
    margin-top: 8px;
    line-height: 1.6;
}

.body-blog ul li::before {
    content: "-";
    position: absolute;
    left: 0;
    color: #003057;
}

/* =============================
   LISTAS NUMERADAS PERSONALIZADAS
============================= */

.body-blog ol {
    list-style: none;
    counter-reset: item;
    margin-left: 0;
    padding-left: 0;
}

.body-blog ol li {
    counter-increment: item;
    position: relative;
    padding-left: 2.5em;
    margin-bottom: 1em;
    line-height: 1.6;
}

/* Números personalizados con color de marca */
.body-blog ol li::before {
    content: counter(item) ".";
    position: absolute;
    left: 0;
    width: 2em;
    text-align: right;
    font-weight: bold;
    color:#7AA5BA ; /* ← Color secundario o de acento del proyecto */
}

/* =============================
   ENLACES CON BORDER-BOTTOM
============================= */

/* Enlaces con borde inferior punteado */
/* Excluye botones y elementos especiales con :not() */
.body-blog a:not(.cta-button):not(.cta-button-secondary):not(.acuity-embed-button):not([class*="gb-button"]) {
    color: #00ADBB ; 
    text-decoration: none;
    border-bottom: 1px solid #00ADBB ; /* ← Color del borde (mismo color del enlace o diferente) */
    transition: all 0.3s ease;
}

.body-blog a:not(.cta-button):not(.cta-button-secondary):not(.acuity-embed-button):not([class*="gb-button"]):hover {
    color:#003057 ; /* ← Color del enlace al hover (color principal) */
    border-bottom-color: #003057 ; /* ← Color del borde al hover (mismo que el color hover) */
}

/* Enlaces dentro de imágenes sin efectos */
.body-blog a img {
    border-bottom: none;
}
/* =============================
   TABLAS
============================= */

.body-blog table {
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
    font-size: 16px;
    border: 1px solid #ddd;
    background-color: #fff;
}

/* Encabezado de tabla con color de marca */
.body-blog table thead {
    background-color: #00ADBB; /* ← Color principal del proyecto */
    color: #ffffff;
}

.body-blog table thead th {
    padding: 12px 16px;
    text-align: left;
    font-weight: 600;
    font-size: 16px;
    border: 1px solid #ddd;
}

/* Filas del cuerpo de la tabla */
.body-blog table tbody tr {
    border-bottom: 1px solid #ddd;
    transition: background-color 0.2s ease;
}

.body-blog table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}


.body-blog table tbody td {
    padding: 10px 16px;
    line-height: 1.5;
    font-size: 16px;
    border: 1px solid #ddd;
    color: #333;
}

.body-blog table tbody td:first-child {
    font-weight: 600;
    color: #222;
}

/* =============================
   IMÁGENES
============================= */

/* Imágenes con sombra elegante y efecto hover */
/* Excluye imágenes de Google Maps */
.body-blog img:not([src*="maps.googleapis.com"]):not([src*="maps.gstatic.com"]):not([src*="google.com/maps"]) {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 25px auto;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.body-blog img:not([src*="maps.googleapis.com"]):not([src*="maps.gstatic.com"]):not([src*="google.com/maps"]):hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}

/* =============================
   CONTENIDO MULTIMEDIA
============================= */

/* Videos nativos HTML5 */
.body-blog video {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 25px auto;
    border-radius: 8px;
}

/* iframes (YouTube, Vimeo, etc.) - sin restricciones por defecto */
.body-blog iframe {
    max-width: 100%;
    border: none;
}

/* Mapas de Google con estilos específicos */
.body-blog iframe[src*="maps.google.com"],
.body-blog iframe[src*="google.com/maps"] {
    width: 100%;
    height: 400px;
    display: block;
    margin: 25px auto;
    border: 1px solid #ddd;
    border-radius: 8px;
}

/* Contenedor responsive para videos embebidos (opcional) */
.body-blog .video-container {
    position: relative;
    padding-bottom: 56.25%; /* Aspect ratio 16:9 */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    margin: 25px auto;
    border-radius: 8px;
}

.body-blog .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* =============================
   CONTENIDO DESTACADO
============================= */

/* Blockquotes / Citas con borde de color */
.body-blog blockquote {
    border-left: 4px solid ; /* ← Color de acento del proyecto */
    padding: 15px 20px;
    margin: 25px 0;
    background-color: #f8f8f8;
    font-style: italic;
    color: #555;
    border-radius: 4px;
}

.body-blog blockquote p {
    margin-bottom: 0;
}

/* Caja de información con fondo suave */
.body-blog .info-box {
    background-color: #f0f8ff;
    border-left: 4px solid ; /* ← Color principal */
    padding: 15px 20px;
    margin: 20px 0;
    border-radius: 4px;
}

/* Caja de advertencia con color de acento */
.body-blog .warning-box {
    background-color: #fff9e6;
    border-left: 4px solid ; /* ← Color secundario o de acento */
    padding: 15px 20px;
    margin: 20px 0;
    border-radius: 4px;
}

/* Separadores de sección */
.body-blog hr {
    border: none;
    border-top: 2px solid #e0e0e0;
    margin: 30px 0;
}

/* =============================
   RESPONSIVE - TABLETS Y MÓVILES
============================= */

@media screen and (max-width: 768px) {
    /* Reducir tamaño de encabezados */
    .body-blog h2 {
        font-size: 28px;
    }
    
    .body-blog h3 {
        font-size: 22px;
    }
    
    /* Ajustar tamaño de texto */
    .body-blog p,
    .body-blog ul li,
    .body-blog ol li {
        font-size: 17px;
    }
    
    /* Botones más compactos */
    .body-blog .cta-button,
    .body-blog .cta-button-secondary {
        padding: 12px 24px;
        font-size: 16px;
    }
    
    /* Tablas más pequeñas */
    .body-blog table {
        font-size: 14px;
    }
    
    .body-blog table thead th,
    .body-blog table tbody td {
        padding: 8px 10px;
        font-size: 14px;
    }
}/* End custom CSS */