/* Botón amarillo reutilizable para reservas y CTAs destacados */
.btn-amarillo {
  background-color: #ffd600 !important;
  color: #222 !important;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 1em;
  padding: 12px 25px;
  transition: background-color .3s, color .3s, box-shadow .2s;
  border: none;
}
.btn-amarillo:hover, .btn-amarillo:focus {
  background-color: #ffe066 !important;
  color: #222 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}
/* Transparencia para todo el bloque de textos del hero */
#hero .hero-content {
  background: rgba(24,40,80,0.36);
  padding: 1.2em 2em;
  border-radius: 1.5em;
  box-shadow: 0 4px 32px rgba(60,40,90,0.10);
  backdrop-filter: blur(2.5px) brightness(1.04);
  -webkit-backdrop-filter: blur(2.5px) brightness(1.04);
}

/* Botón de reserva del hero con alto contraste */
#hero .btn-primary {
  background-color: #ffd600 !important;
  color: #222 !important;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 1em;
  padding: 12px 25px;
  transition: background-color .3s, color .3s, box-shadow .2s;
}
#hero .btn-primary:hover {
  background-color: #ffe066 !important;
  color: #222 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}

/* Botones de reserva en las service-cards con los mismos colores */
.service-card .btn-primary {
  background-color: #ffd600 !important;
  color: #222 !important;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 1em;
  padding: 12px 25px;
  transition: background-color .3s, color .3s, box-shadow .2s;
}
.service-card .btn-primary:hover {
  background-color: #ffe066 !important;
  color: #222 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}

/* Botón 'Ver Servicios' en la sección bienvenida con los mismos colores */
.bienvenida-section .btn-primary {
  background-color: #ffd600 !important;
  color: #222 !important;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 1em;
  padding: 12px 25px;
  transition: background-color .3s, color .3s, box-shadow .2s;
}
.bienvenida-section .btn-primary:hover {
  background-color: #ffe066 !important;
  color: #222 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}

/* Botón 'Enviar Consulta' del formulario de contacto con los mismos colores */
#leadForm .btn-primary {
  background-color: #ffd600 !important;
  color: #222 !important;
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 1em;
  padding: 12px 25px;
  transition: background-color .3s, color .3s, box-shadow .2s;
}
#leadForm .btn-primary:hover {
  background-color: #ffe066 !important;
  color: #222 !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.22);
}
/* Solo color de texto claro para el h2 del hero, sin fondo ni blur */
#hero h2 {
  color: var(--light-text-color);
}
/* Transparencia divina para el h1 principal del banner */
h1#main-title {
  display: block;
  font-size: 2.7em;
  font-weight: 900;
  letter-spacing: -1px;
  margin: 0 auto 18px auto;
  padding: 0.25em 1.2em;
  color: #fff;
  background: rgba(60,40,90,0.32);
  border-radius: 1.2em;
  box-shadow: 0 4px 32px rgba(60,40,90,0.13);
  text-align: center;
  max-width: 900px;
  backdrop-filter: blur(2.5px) brightness(1.08);
  -webkit-backdrop-filter: blur(2.5px) brightness(1.08);
  text-shadow: 0 2px 12px rgba(0,0,0,0.18), 0 1px 0 #3d2956;
  position: relative;
  z-index: 2;
}
/* --- MENÚ RESPONSIVE UNIVERSAL --- */
/* --- MENÚ HAMBURGUESA Y NAVBAR PERSONALIZADO --- */
/* --- ESTILOS GENERALES Y SOBRE MÍ --- */
:root{--background-light:#f5f3fa;--background-medium:#fff;--primary-color:#7c5e99;--accent-color:#6dc7b5;--accent-hover:#4e9a8c;--light-text-color:#fff;--dark-text-color:#3d2956;--border-color:#e0e0e0;--footer-bg:#7c5e99;--footer-text:#e6e0f3;--footer-text-secondary:#bdb6cc;--h2-color:#3d2956;--p-color:#4e3a5a}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Roboto,sans-serif;line-height:1.6;color:var(--dark-text-color);background-color:var(--background-light);scroll-behavior:smooth;font-size:16px}
.container{max-width:700px;margin:0 auto;padding:0 24px;overflow:hidden;display:flex;flex-direction:column;align-items:center}
h1{display:none}h2{text-align:center;margin-bottom:30px;color:var(--h2-color);font-size:1.8em}p{color:var(--p-color);font-size:1em}.section{padding:40px 0;text-align:center!important}section{scroll-margin-top:0!important}.section:nth-child(2n){background-color:var(--background-medium)}.btn{display:inline-block;padding:12px 25px;border-radius:5px;text-decoration:none;font-weight:700;transition:background-color .3s ease,transform .2s ease;text-align:center;font-size:1em}.btn-primary{background-color:#3d2956;color:#fff;border:0}.btn-primary:hover{background-color:#22132e;color:#fff}.header{background-color:var(--background-medium);padding:15px 0;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px rgba(0,0,0,.05)}header .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.logo img{height:50px}.navbar{width:100%;order:2;margin-top:10px}.nav-links{list-style:none;display:none;flex-direction:column;width:100%;text-align:center;padding:10px 0;background-color:var(--background-medium);border-top:1px solid var(--border-color)}.nav-links.active{display:flex}.nav-links li{margin:10px 0}.nav-links a{text-decoration:none;color:var(--dark-text-color);font-weight:700;font-size:1.1em;transition:color .3s ease;display:block;padding:8px 0}.nav-links a:hover{color:var(--accent-color)}.hamburger-menu{display:block;font-size:30px;background:0;border:0;cursor:pointer;color:var(--primary-color);padding:0;order:1}#hero{background-image:url('../img/banner.webp');background-size:cover;background-position:center center;background-repeat:no-repeat;position:relative;z-index:1;color:var(--light-text-color);text-align:center;padding:80px 15px;display:flex;align-items:center;justify-content:center;min-height:400px;flex-direction:column}#hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:-1}#hero .container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}#hero .hero-content{margin-bottom:0;display:flex;flex-direction:column;align-items:center}#hero h2{color:var(--light-text-color);font-size:2.5em;margin-bottom:15px;text-shadow:2px 2px 4px rgba(0,0,0,.4)}#hero p{color:rgba(255,255,255,.9);font-size:1.1em;margin-bottom:30px;max-width:700px;line-height:1.4;text-shadow:1px 1px 3px rgba(0,0,0,.3);text-align:center;margin-left:auto;margin-right:auto;display:block}#hero .btn-primary{background-color:#3d2956;color:#fff;border-radius:5px;box-shadow:none;font-size:1em;padding:12px 25px}#hero .btn-primary:hover{background-color:#22132e;color:#fff}.bienvenida-section{text-align:center;background-color:var(--background-medium);padding:50px 15px}.bienvenida-section h2{margin-bottom:20px;font-size:2em;color:var(--h2-color)}.bienvenida-section .intro-text{max-width:800px;margin:0 auto 25px auto;font-size:1.1em;line-height:1.8;color:var(--p-color)}.bienvenida-section .btn{display:block;margin:0 auto;max-width:250px}#sobre-mi .logo-section{text-align:center;margin-bottom:30px;padding-top:20px}#sobre-mi .logo-section img{max-width:200px;height:auto;display:block;margin:0 auto}#sobre-mi .content-sobre-mi{display:flex;flex-direction:column;align-items:center;gap:30px;align-items:center}#sobre-mi .profile-image{max-width:200px;max-height:200px;width:auto;height:auto;border-radius:50%;box-shadow:0 5px 15px rgba(0,0,0,.1);border:5px solid var(--accent-color);object-fit:cover;aspect-ratio: 1/1}#sobre-mi .certificate-image{display:block;max-width:900px;width:80vw;min-width:220px;height:auto;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.13);margin:32px auto 24px auto}#sobre-mi p{text-align:center;max-width:800px;margin:0 auto;color:var(--p-color);font-size:1em}.testimonials{display:grid;grid-template-columns:1fr;gap:30px}.testimonial-item{background-color:var(--background-medium);padding:30px;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.08);text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .3s ease;align-items:center}.testimonial-item:hover{transform:translateY(-5px)}.testimonial-item img{width:90px;height:90px;border-radius:50%;object-fit:cover;margin-bottom:20px;border:3px solid var(--accent-color)}.testimonial-item p{font-style:italic;color:var(--p-color);font-size:1.05em}.service-cards{display:grid;grid-template-columns:1fr;gap:30px;justify-items:center}.service-card{background-color:var(--background-medium);border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.08);overflow:hidden;text-align:center;transition:transform .3s ease}.service-card:hover{transform:translateY(-5px)}.service-card img{width:100%;height:220px;object-fit:cover;display:block}.service-card h3{margin:20px 15px 10px;color:var(--h2-color);font-size:1.4em}.service-card p{margin:0 15px 20px;color:var(--p-color);font-size:1em}.contact-content{display:flex;flex-direction:column;align-items:center;gap:30px;align-items:center}.telegram-contact,.whatsapp-contact{text-align:center}.telegram-contact p,.whatsapp-contact p{margin-bottom:20px;color:var(--h2-color);font-size:1.2em;font-weight:700}.telegram-button,.whatsapp-button{display:inline-flex;align-items:center;justify-content:center;color:var(--light-text-color);padding:14px 25px;border-radius:50px;text-decoration:none;font-size:1.1em;font-weight:700;transition:background-color .3s ease,transform .2s ease;box-shadow:0 5px 15px rgba(0,0,0,.25);max-width:100%;box-sizing:border-box;white-space:nowrap}.whatsapp-button{background-color:#25d366}.whatsapp-button:hover{background-color:#1eae4e;transform:translateY(-3px)}.telegram-button{background-color:#08c}.telegram-button:hover{background-color:#007bb5;transform:translateY(-3px)}.telegram-button img,.whatsapp-button img{margin-right:8px;width:22px;height:22px;filter:invert(0);flex-shrink:0}.footer{background-color:var(--footer-bg);color:var(--light-text-color);padding:40px 0;text-align:center}.footer p{color:var(--light-text-color);text-align:center}.footer .container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.footer .social-links{margin-bottom:20px;display:flex;justify-content:center;gap:15px}.footer .social-links .social-icon{display:flex;justify-content:center;align-items:center;width:45px;height:45px;border-radius:50%;background-color:#fff;color:var(--primary-color);font-size:1.5em;transition:background-color .3s ease,transform .2s ease;text-decoration:none}.footer .social-links .social-icon:hover{transform:translateY(-3px)}.footer .social-links .social-icon.facebook{color:#1877f3}.footer .social-links .social-icon.instagram{background:linear-gradient(45deg,#f09433 0,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);color:#fff}.footer .social-links .social-icon.telegram{color:#229ed9}.footer .social-links .social-icon.whatsapp{color:#25d366}.footer .social-links .social-icon:hover{background-color:#f5f3fa;color:var(--accent-color)}.txtfull-widget-wrapper{width:100%;max-width:200px;margin:30px auto 0 auto;box-sizing:border-box;padding:0 10px;text-align:center;overflow-x:hidden}.txtfull-widget-wrapper table{width:100%!important;max-width:100%!important;box-sizing:border-box!important;border-collapse:collapse;margin:0 auto!important}.txtfull-widget-wrapper table img{max-width:100%;height:auto;display:block;margin:0 auto}.txtfull-widget-wrapper font{max-width:100%;display:block;box-sizing:border-box}.txtfull-widget-wrapper b{display:block;max-width:100%;word-wrap:break-word}@media(max-width:220px){.txtfull-widget-wrapper{padding:0 5px}}.testimonials-carousel{display:flex;align-items:center;justify-content:center;gap:1rem;position:relative;max-width:600px;margin:0 auto}.carousel-track{display:flex;width:100%;overflow:hidden;justify-content:center}.testimonial-item{display:none;flex-direction:column;align-items:center;text-align:center;min-width:250px;max-width:350px;margin:0 1rem;transition:opacity .4s;align-items:center}.testimonial-item.active{display:flex}.carousel-btn{background:#eee;border:none;font-size:2rem;cursor:pointer;padding:.3em .7em;border-radius:50%;transition:background .2s}.carousel-btn:hover{background:#ccc}.testimonial-item img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:1em}.section-link{color:inherit;text-decoration:none;cursor:pointer;transition:color .2s}.section-link:hover{color:var(--accent-color);text-decoration:underline}.footer-link{color:var(--light-text-color);text-decoration:underline;transition:color .2s}.footer-link:hover{color:var(--accent-color)}#titulo-bienvenida,#titulo-contacto,#titulo-hero,#titulo-pacientes,#titulo-servicios,#titulo-sobre-mi{scroll-margin-top:60px!important}@media (max-width:600px){#titulo-bienvenida,#titulo-contacto,#titulo-hero,#titulo-pacientes,#titulo-servicios,#titulo-sobre-mi{scroll-margin-top:50px!important}}@media (max-width:900px){.container{max-width:98vw;padding:0 8px}.service-cards{grid-template-columns:1fr}.footer .social-links{flex-wrap:wrap;gap:10px}}@media (max-width:600px){h2{font-size:1.3em}.hero-banner{padding:40px 5px;min-height:250px}#hero h2{font-size:1.3em}.service-card img{height:140px}.testimonial-item{padding:15px;max-width:95vw}.carousel-btn{font-size:1.3rem;padding:.2em .5em}.footer{padding:20px 0}.footer .container{gap:5px}}@media (max-width:400px){.hero-banner{padding:20px 2px}.service-card img{height:90px}.testimonial-item img{width:55px;height:55px}}.btn-ir-arriba{display:none;position:fixed;bottom:30px;right:30px;z-index:2000;background:linear-gradient(135deg,#7c5e99 60%,#6dc7b5 100%);color:#fff;border:none;border-radius:50%;width:52px;height:52px;box-shadow:0 4px 16px rgba(60,40,90,.18);font-size:2em;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;align-items:center;justify-content:center;display:flex}.btn-ir-arriba:hover{background:linear-gradient(135deg,#6dc7b5 60%,#7c5e99 100%);color:#fff;transform:translateY(-6px) scale(1.08);box-shadow:0 8px 24px rgba(60,40,90,.25)}.btn-ir-arriba i{margin:0;font-size:1.3em;line-height:1}@media (max-width:600px){.btn-ir-arriba{bottom:16px;right:16px;width:44px;height:44px;font-size:1.3em}}.btn-ir-arriba:focus{outline:2px solid var(--accent-color);outline-offset:2px;box-shadow:0 0 0 4px rgba(109,199,181,.25)}
/* Separador animado y redes dinámicas en Sobre mí */
.separator-animada {height: 40px;width: 100%;max-width: 700px;margin: 40px auto 30px auto;background: linear-gradient(90deg, #e0e0e0 0%, #c7b6e0 50%, #e0e0e0 100%);border-radius: 20px;position: relative;overflow: hidden;animation: separatorMove 3.5s linear infinite alternate;}
@keyframes separatorMove {0% { background-position: 0% 50%; }100% { background-position: 100% 50%; }}
.redes-sobre-mi {display: flex;justify-content: center;gap: 24px;margin: 18px 0 10px 0;animation: fadeInRedes 1.2s;}
@keyframes fadeInRedes {from { opacity: 0; transform: translateY(20px); }to { opacity: 1; transform: translateY(0); }}
.red-social {display: inline-flex;align-items: center;gap: 8px;font-size: 1.15em;font-weight: 700;color: var(--primary-color);background: #f5f3fa;border-radius: 24px;padding: 10px 22px;text-decoration: none;box-shadow: 0 2px 8px #7c5e9922;transition: background 0.2s, color 0.2s, transform 0.2s;position: relative;}
.red-social.facebook:hover {background: #1877f3;color: #fff;transform: translateY(-3px) scale(1.07);}
.red-social.instagram:hover {background: linear-gradient(45deg,#f09433 0,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);color: #fff;transform: translateY(-3px) scale(1.07);}
.red-social i {font-size: 1.3em;margin-right: 6px;transition: color 0.2s;}
@media (max-width: 600px) {.redes-sobre-mi {gap: 10px;flex-direction: column;margin: 12px 0 8px 0;}.red-social {font-size: 1em;padding: 9px 12px;}.separator-animada {height: 24px;margin: 24px auto 18px auto;} }
.hamburger-nav .navbar-brand {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hamburger-nav .d-flex.align-items-center.justify-content-between {
  justify-content: center !important;
  gap: 1rem;
}
.hamburger-menu {
  position: absolute;
  right: 16px;
  top: 8px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
}
.hamburger-links {
  background: #e3f2fd;
  box-shadow: 0 4px 16px #0001;
  display: flex !important;
  flex-direction: column;
}
.hamburger-links li { border-bottom: 1px solid #d1d9e6; }
.hamburger-links li:last-child { border-bottom: none; }
.hamburger-links a {
  display: block;
  padding: 16px 24px;
  color: #3d2956;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.hamburger-links a:hover, .hamburger-links a:focus {
  background: #e0e7fa;
  color: #0a2342;
}
@media (min-width: 992px) {
  .navbar-nav.flex-lg-row {
    justify-content: flex-start !important;
  }
}
/* Personalización de colores del navbar Bootstrap */
.navbar-nav .nav-link {
  color: #3d2956 !important;
  font-weight: 700;
  transition: color 0.2s, background 0.2s;
  border-radius: 8px 8px 0 0;
  margin: 0 2px;
}
.navbar-nav .nav-link:hover, .navbar-nav .nav-link:focus {
  color: #0a2342 !important;
  background: #e0e7fa !important;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
  color: #fff !important;
  background: #7c5e99 !important;
}
.navbar-toggler {
  border-color: #7c5e99;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(61,41,86,0.8)' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
/* --- MENÚ HAMBURGUESA UNIVERSAL --- */
.hamburger-nav { position: sticky; top: 0; z-index: 1050; background: #e3f2fd; }
.hamburger-nav .navbar-brand {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hamburger-nav .d-flex.align-items-center.justify-content-between {
  justify-content: center !important;
  gap: 1rem;
}
.hamburger-menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  position: absolute;
  right: 16px;
  top: 8px;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
}
.hamburger-menu span {
  display: block;
  width: 30px;
  height: 3px;
  background: #3d2956;
  margin: 6px 0;
  border-radius: 2px;
}
.hamburger-links {
  background: #e3f2fd;
  box-shadow: 0 4px 16px #0001;
  display: flex !important;
  flex-direction: column;
}
.hamburger-links li { border-bottom: 1px solid #d1d9e6; }
.hamburger-links li:last-child { border-bottom: none; }
.hamburger-links a {
  display: block;
  padding: 16px 24px;
  color: #3d2956;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.hamburger-links a:hover, .hamburger-links a:focus {
  background: #e0e7fa;
  color: #0a2342;
}
.navbar {
  width: 100%;
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
  box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
}
/* El menú horizontal solo en escritorio */
.hamburger-menu {
  display: none;
  font-size: 2.2em;
  background: none;
  border: none;
  color: #3E096D;
  cursor: pointer;
  margin-right: 12px;
  z-index: 1100;
}
.nav-links {
  list-style: none;
  display: flex;
  flex-direction: row;
  gap: 0;
  align-items: center;
  margin: 0;
  padding: 0;
  background: none;
  border-radius: 0;
  box-shadow: none;
  width: auto;
  text-align: left;
  text-align: left;
}
.nav-links li { margin: 0 2px; }
.nav-links a {
  text-decoration: none;
  color: #3E096D;
  font-weight: 700;
  font-size: 1.08em;
  transition: background 0.18s ease, color 0.18s ease, border-bottom 0.18s ease;
  padding: 12px 18px;
  border-radius: 8px 8px 0 0;
  display: block;
  background: transparent;
  border-bottom: 2px solid transparent;
  cursor: pointer;
}
.nav-links a:hover, .nav-links a:focus {
  color: #0a2342;
  background: #fff;
  border-bottom: 2px solid #0a2342;
  outline: none;
}
.nav-links a:active, .nav-links a.active {
  color: #222;
  background: #fff;
  border-bottom: 2px solid #222;
}
@media (max-width: 900px) {
  .hamburger-menu {
    display: block;
  }
  .nav-links {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100vw;
    background: #fff;
    border-radius: 0 0 16px 16px;
    box-shadow: 0 8px 32px #0003;
    border-top: 1px solid #e0e0e0;
    border-bottom: 2px solid #7c5e99;
    padding: 12px 0 18px 0;
    z-index: 3000;
    text-align: left;
  }
  .nav-links.active {
    display: flex !important;
  }
  .nav-links a {
    color: #222;
    font-size: 1.18em;
    font-weight: 700;
    padding: 16px 24px;
    border-radius: 8px;
    margin: 2px 0;
    background: none;
    text-align: left;
    border-bottom: none;
    transition: background 0.18s, color 0.18s;
  }
  .nav-links a:hover, .nav-links a:focus {
    color: #0a2342;
    background: #f3f6fa;
    border-bottom: 2px solid #0a2342;
  }
}
@media (max-width: 600px) {
  .nav-links {
    width: 100vw;
    left: 0;
    right: 0;
    border-radius: 0 0 10px 10px;
    padding: 4px 0;
  }
  .nav-links a {
    font-size: 1em;
    padding: 10px 0;
    border-radius: 8px;
    margin: 2px 0;
    border-bottom: none;
  }
}
@media (min-width: 901px) {
  .hamburger-menu {
    display: none !important;
  }
  .nav-links {
    display: flex !important;
    flex-direction: row;
    position: static;
    width: auto;
    background: none;
    box-shadow: none;
    border: none;
    padding: 0;
    text-align: left;
  }
}
/* --- FIN MENÚ RESPONSIVE UNIVERSAL --- */
/* Contraste accesible para botón WhatsApp en todo el sitio */
/* Contraste accesible para botón WhatsApp en todo el sitio */
.whatsapp-button{color:#222!important}
:root{--background-light:#f5f3fa;--background-medium:#fff;--primary-color:#7c5e99;--accent-color:#6dc7b5;--accent-hover:#4e9a8c;--light-text-color:#fff;--dark-text-color:#3d2956;--border-color:#e0e0e0;--footer-bg:#7c5e99;--footer-text:#e6e0f3;--footer-text-secondary:#bdb6cc;--h2-color:#3d2956;--p-color:#4e3a5a}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,sans-serif;line-height:1.6;color:var(--dark-text-color);background-color:var(--background-light);scroll-behavior:smooth;font-size:16px}.container{max-width:700px;margin:0 auto;padding:0 24px;overflow:hidden;display:flex;flex-direction:column;align-items:center}h1{display:none}h2{text-align:center;margin-bottom:30px;color:var(--h2-color);font-size:1.8em}p{color:var(--p-color);font-size:1em}.section{padding:40px 0;text-align:center!important}section{scroll-margin-top:0!important}.section:nth-child(2n){background-color:var(--background-medium)}.btn{display:inline-block;padding:12px 25px;border-radius:5px;text-decoration:none;font-weight:700;transition:background-color .3s ease,transform .2s ease;text-align:center;font-size:1em}.btn-primary{background-color:#3d2956;color:#fff;border:0}.btn-primary:hover{background-color:#22132e;color:#fff}.header{background-color:var(--background-medium);padding:15px 0;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px rgba(0,0,0,.05)}header .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.logo img{height:50px}.navbar{width:100%;order:2;margin-top:10px}.nav-links{list-style:none;display:none;flex-direction:column;width:100%;text-align:center;padding:10px 0;background-color:var(--background-medium);border-top:1px solid var(--border-color)}.nav-links.active{display:flex}.nav-links li{margin:10px 0}.nav-links a{text-decoration:none;color:var(--dark-text-color);font-weight:700;font-size:1.1em;transition:color .3s ease;display:block;padding:8px 0}.nav-links a:hover{color:var(--accent-color)}.hamburger-menu{display:block;font-size:30px;background:0;border:0;cursor:pointer;color:var(--primary-color);padding:0;order:1}#hero{background-image:url('../img/banner.webp');background-size:cover;background-position:center center;background-repeat:no-repeat;position:relative;z-index:1;color:var(--light-text-color);text-align:center;padding:80px 15px;display:flex;align-items:center;justify-content:center;min-height:400px;flex-direction:column}#hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:-1}#hero .container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}#hero .hero-content{margin-bottom:0;display:flex;flex-direction:column;align-items:center}#hero h2{color:var(--light-text-color);font-size:2.5em;margin-bottom:15px;text-shadow:2px 2px 4px rgba(0,0,0,.4)}#hero p{color:rgba(255,255,255,.9);font-size:1.1em;margin-bottom:30px;max-width:700px;line-height:1.4;text-shadow:1px 1px 3px rgba(0,0,0,.3);text-align:center;margin-left:auto;margin-right:auto;display:block}#hero .btn-primary{background-color:#3d2956;color:#fff;border-radius:5px;box-shadow:none;font-size:1em;padding:12px 25px}#hero .btn-primary:hover{background-color:#22132e;color:#fff}.bienvenida-section{text-align:center;background-color:var(--background-medium);padding:50px 15px}.bienvenida-section h2{margin-bottom:20px;font-size:2em;color:var(--h2-color)}.bienvenida-section .intro-text{max-width:800px;margin:0 auto 25px auto;font-size:1.1em;line-height:1.8;color:var(--p-color)}.bienvenida-section .btn{display:block;margin:0 auto;max-width:250px}#sobre-mi .logo-section{text-align:center;margin-bottom:30px;padding-top:20px}#sobre-mi .logo-section img{max-width:200px;height:auto;display:block;margin:0 auto}#sobre-mi .content-sobre-mi{display:flex;flex-direction:column;align-items:center;gap:30px;align-items:center}#sobre-mi .profile-image{max-width:200px;height:auto;border-radius:50%;box-shadow:0 5px 15px rgba(0,0,0,.1);border:5px solid var(--accent-color);object-fit:cover}#sobre-mi .certificate-image{max-width:300px;height:auto;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.1)}#sobre-mi p{text-align:center;max-width:800px;margin:0 auto;color:var(--p-color);font-size:1em}.testimonials{display:grid;grid-template-columns:1fr;gap:30px}.testimonial-item{background-color:var(--background-medium);padding:30px;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.08);text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .3s ease;align-items:center}.testimonial-item:hover{transform:translateY(-5px)}.testimonial-item img{width:90px;height:90px;border-radius:50%;object-fit:cover;margin-bottom:20px;border:3px solid var(--accent-color)}.testimonial-item p{font-style:italic;color:var(--p-color);font-size:1.05em}.service-cards{display:grid;grid-template-columns:1fr;gap:30px;justify-items:center}.service-card{background-color:var(--background-medium);border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.08);overflow:hidden;text-align:center;transition:transform .3s ease}.service-card:hover{transform:translateY(-5px)}.service-card img{width:100%;height:220px;object-fit:cover;display:block}.service-card h3{margin:20px 15px 10px;color:var(--h2-color);font-size:1.4em}.service-card p{margin:0 15px 20px;color:var(--p-color);font-size:1em}.contact-content{display:flex;flex-direction:column;align-items:center;gap:30px;align-items:center}.telegram-contact,.whatsapp-contact{text-align:center}.telegram-contact p,.whatsapp-contact p{margin-bottom:20px;color:var(--h2-color);font-size:1.2em;font-weight:700}.telegram-button,.whatsapp-button{display:inline-flex;align-items:center;justify-content:center;color:var(--light-text-color);padding:14px 25px;border-radius:50px;text-decoration:none;font-size:1.1em;font-weight:700;transition:background-color .3s ease,transform .2s ease;box-shadow:0 5px 15px rgba(0,0,0,.25);max-width:100%;box-sizing:border-box;white-space:nowrap}.whatsapp-button{background-color:#25d366}.whatsapp-button:hover{background-color:#1eae4e;transform:translateY(-3px)}.telegram-button{background-color:#08c}.telegram-button:hover{background-color:#007bb5;transform:translateY(-3px)}.telegram-button img,.whatsapp-button img{margin-right:8px;width:22px;height:22px;filter:invert(0);flex-shrink:0}.footer{background-color:var(--footer-bg);color:var(--light-text-color);padding:40px 0;text-align:center}.footer p{color:var(--light-text-color);text-align:center}.footer .container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.footer .social-links{margin-bottom:20px;display:flex;justify-content:center;gap:15px}.footer .social-links .social-icon{display:flex;justify-content:center;align-items:center;width:45px;height:45px;border-radius:50%;background-color:#fff;color:var(--primary-color);font-size:1.5em;transition:background-color .3s ease,transform .2s ease;text-decoration:none}.footer .social-links .social-icon:hover{transform:translateY(-3px)}.footer .social-links .social-icon.facebook{color:#1877f3}.footer .social-links .social-icon.instagram{background:linear-gradient(45deg,#f09433 0,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);color:#fff}.footer .social-links .social-icon.telegram{color:#229ed9}.footer .social-links .social-icon.whatsapp{color:#25d366}.footer .social-links .social-icon:hover{background-color:#f5f3fa;color:var(--accent-color)}.txtfull-widget-wrapper{width:100%;max-width:200px;margin:30px auto 0 auto;box-sizing:border-box;padding:0 10px;text-align:center;overflow-x:hidden}.txtfull-widget-wrapper table{width:100%!important;max-width:100%!important;box-sizing:border-box!important;border-collapse:collapse;margin:0 auto!important}.txtfull-widget-wrapper table img{max-width:100%;height:auto;display:block;margin:0 auto}.txtfull-widget-wrapper font{max-width:100%;display:block;box-sizing:border-box}.txtfull-widget-wrapper b{display:block;max-width:100%;word-wrap:break-word}@media(max-width:220px){.txtfull-widget-wrapper{padding:0 5px}}.testimonials-carousel{display:flex;align-items:center;justify-content:center;gap:1rem;position:relative;max-width:600px;margin:0 auto}.carousel-track{display:flex;width:100%;overflow:hidden;justify-content:center}.testimonial-item{display:none;flex-direction:column;align-items:center;text-align:center;min-width:250px;max-width:350px;margin:0 1rem;transition:opacity .4s;align-items:center}.testimonial-item.active{display:flex}.carousel-btn{background:#eee;border:none;font-size:2rem;cursor:pointer;padding:.3em .7em;border-radius:50%;transition:background .2s}.carousel-btn:hover{background:#ccc}.testimonial-item img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:1em}.section-link{color:inherit;text-decoration:none;cursor:pointer;transition:color .2s}.section-link:hover{color:var(--accent-color);text-decoration:underline}.footer-link{color:var(--light-text-color);text-decoration:underline;transition:color .2s}.footer-link:hover{color:var(--accent-color)}#titulo-bienvenida,#titulo-contacto,#titulo-hero,#titulo-pacientes,#titulo-servicios,#titulo-sobre-mi{scroll-margin-top:60px!important}@media (max-width:600px){#titulo-bienvenida,#titulo-contacto,#titulo-hero,#titulo-pacientes,#titulo-servicios,#titulo-sobre-mi{scroll-margin-top:50px!important}}@media (max-width:900px){.container{max-width:98vw;padding:0 8px}.service-cards{grid-template-columns:1fr}.footer .social-links{flex-wrap:wrap;gap:10px}}@media (max-width:600px){h2{font-size:1.3em}.hero-banner{padding:40px 5px;min-height:250px}#hero h2{font-size:1.3em}.service-card img{height:140px}.testimonial-item{padding:15px;max-width:95vw}.carousel-btn{font-size:1.3rem;padding:.2em .5em}.footer{padding:20px 0}.footer .container{gap:5px}}@media (max-width:400px){.hero-banner{padding:20px 2px}.service-card img{height:90px}.testimonial-item img{width:55px;height:55px}}.btn-ir-arriba{display:none;position:fixed;bottom:30px;right:30px;z-index:2000;background:linear-gradient(135deg,#7c5e99 60%,#6dc7b5 100%);color:#fff;border:none;border-radius:50%;width:52px;height:52px;box-shadow:0 4px 16px rgba(60,40,90,.18);font-size:2em;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;align-items:center;justify-content:center;display:flex}.btn-ir-arriba:hover{background:linear-gradient(135deg,#6dc7b5 60%,#7c5e99 100%);color:#fff;transform:translateY(-6px) scale(1.08);box-shadow:0 8px 24px rgba(60,40,90,.25)}.btn-ir-arriba i{margin:0;font-size:1.3em;line-height:1}@media (max-width:600px){.btn-ir-arriba{bottom:16px;right:16px;width:44px;height:44px;font-size:1.3em}}.btn-ir-arriba:focus{outline:2px solid var(--accent-color);outline-offset:2px;box-shadow:0 0 0 4px rgba(109,199,181,.25)}