/* RESET LOCAL Y CONTENEDOR BASE */
.qi-navbar *, .qi-page-hero *, .qi-bio-section *, .qi-formacion-mirada-sec *, .qi-enfoque-detail *, .qi-cta-final *, .qi-whatsapp-float * {
  box-sizing: border-box !important;
}

.qi-container {
  max-width: 1140px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  width: 100% !important;
}

.text-center { text-align: center !important; }

/* 1. NAVBAR FIJA */
.qi-navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 70px !important;
  background-color: #ffffff !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
  z-index: 99999 !important;
}

.qi-nav-wrapper {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  height: 70px !important;
}

.qi-logo img {
  height: 70px !important;
  width: auto !important;
  object-fit: contain !important;
}

.qi-nav-right {
  display: flex !important;
  align-items: center !important;
  gap: 30px !important;
}

.qi-nav-menu {
  display: flex !important;
  gap: 24px !important;
  align-items: center !important;
}

.qi-nav-menu a {
  font-family: 'Montserrat', sans-serif !important;
  text-decoration: none !important;
  color: #2c2c2c !important;
  font-weight: 600 !important;
  font-size: 15px !important;
}

.qi-active-link { color: #ff3869 !important; }

.qi-btn-nav {
  display: inline-block !important;
  padding: 10px 22px !important;
  border-radius: 30px !important;
  background-color: #e1486f !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

/* 2. PAGE HERO */
.qi-page-hero {
  background-color: #ffffff !important;
  padding: 120px 0 40px 0 !important;
  text-align: center !important;
  
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.qi-section-tag {
  display: inline-block !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #e1486f !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 8px !important;
}

.qi-page-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  color: #92203c !important;
  margin: 0 0 12px 0 !important;
}

.qi-page-subtitle {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 17px !important;
  color: #555555 !important;
  max-width: 650px !important;
  margin: 0 auto !important;
}

/* 3. BIOGRAFÍA PRINCIPAL */
.qi-bio-section {
  background-color: #ffffff !important;
  padding: 40px 0 70px 0 !important;
  
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.qi-bio-wrapper {
  display: flex !important;
  gap: 50px !important;
  align-items: flex-start !important; 
}

.qi-bio-image {
  flex: 0 0 380px !important; /* Un poco más ancha para evitar que haga tanto zoom */
  max-width: 380px !important;
  position: sticky !important; /* Acompaña la lectura del texto largo */
  top: 100px !important;
}

.qi-bio-image img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important; /* Formato alargado tipo retrato (vertical suave) */
  object-fit: cover !important;
  object-position: center 15% !important; /* Asegura que no se corte la parte de arriba de la cabeza */
  border-radius: 20px !important;
  box-shadow: 0 10px 25px rgba(146, 32, 60, 0.08) !important;
}

.qi-bio-content {
  flex: 1 !important;
}

/* RESPONSIVE MOBILE */
@media (max-width: 768px) {
  .qi-bio-wrapper {
    flex-direction: column !important;
    gap: 30px !important;
  }
  .qi-bio-image {
    max-width: 100% !important;
    flex: 1 1 100% !important;
    position: static !important; /* En celular no queda fija */
  }
}

.qi-bio-content {
  flex: 1 !important;
}

@media (max-width: 768px) {
  .qi-bio-wrapper {
    flex-direction: column !important;
  }
  .qi-bio-image {
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
}

.qi-bio-content {
  flex: 1.3 !important;
}

.qi-bio-paragraph {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15.5px !important;
  color: #4a4a4a !important;
  line-height: 1.7 !important;
  margin-bottom: 18px !important;
}

.qi-bio-quote {
  background-color: #fdf2f4 !important;
  border-left: 4px solid #e1486f !important;
  padding: 18px 22px !important;
  border-radius: 0 12px 12px 0 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  font-style: italic !important;
  color: #92203c !important;
  margin-top: 25px !important;
  line-height: 1.6 !important;
}

/* 4. FORMACIÓN Y MIRADA (BLOQUE DOBLE) */
.qi-formacion-mirada-sec {
  background-color: #faf8f7 !important;
  padding: 80px 0 !important;
  border-top: 1px solid #f0e6e4 !important;
  border-bottom: 1px solid #f0e6e4 !important;
  
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.qi-grid-2col {
  display: flex !important;
  gap: 30px !important;
}

.qi-box-card {
  background-color: #ffffff !important;
  border-radius: 20px !important;
  padding: 35px 30px !important;
  flex: 1 !important;
  border: 1px solid #f0e6e4 !important;
  box-shadow: 0 8px 20px rgba(146, 32, 60, 0.04) !important;
}

.qi-box-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 22px !important;
}

.qi-box-icon {
  font-size: 26px !important;
}

.qi-box-card h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #92203c !important;
  margin: 0 !important;
}

.qi-list-check {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.qi-list-check li {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14.5px !important;
  color: #4a4a4a !important;
  line-height: 1.6 !important;
  margin-bottom: 14px !important;
  position: relative !important;
  padding-left: 24px !important;
}

.qi-list-check li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  color: #ff3869 !important;
  font-weight: 800 !important;
}

.qi-valores-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.qi-valor-item {
  background-color: #faf8f7 !important;
  padding: 14px 18px !important;
  border-radius: 12px !important;
  border-left: 3px solid #ff3869 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  color: #92203c !important;
}

/* 5. SECCIONES DETALLE ENFOQUES */
.qi-enfoque-detail {
  background-color: #ffffff !important;
  padding: 85px 0 !important;
  
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.qi-bg-alt {
  background-color: #faf8f7 !important;
  border-top: 1px solid #f0e6e4 !important;
}

.qi-enfoque-box {
  max-width: 860px !important;
  margin: 0 auto !important;
}

.qi-detail-title {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  color: #92203c !important;
  margin: 8px 0 20px 0 !important;
}

.qi-detail-text {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15.5px !important;
  color: #4a4a4a !important;
  line-height: 1.7 !important;
  margin-bottom: 16px !important;
}

.qi-momento-card {
  background-color: #ffffff !important;
  border-radius: 16px !important;
  padding: 30px !important;
  border: 1px solid #f0e6e4 !important;
  box-shadow: 0 6px 18px rgba(146, 32, 60, 0.04) !important;
  margin-top: 30px !important;
}

.qi-momento-card h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #92203c !important;
  margin: 0 0 16px 0 !important;
}

.qi-bullets-pink {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.qi-bullets-pink li {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14.5px !important;
  color: #4a4a4a !important;
  line-height: 1.6 !important;
  margin-bottom: 10px !important;
  padding-left: 22px !important;
  position: relative !important;
}

.qi-bullets-pink li::before {
  content: "•" !important;
  position: absolute !important;
  left: 4px !important;
  color: #ff3869 !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

.qi-disclaimer-box {
  margin-top: 25px !important;
  padding: 16px 20px !important;
  background-color: #fdf2f4 !important;
  border-radius: 12px !important;
  border: 1px dashed #e1486f !important;
}

.qi-disclaimer-box p {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13.5px !important;
  color: #666666 !important;
  margin: 0 !important;
  line-height: 1.6 !important;
}

/* 6. CTA FINAL */
.qi-cta-final {
  background-color: #ffffff !important;
  padding: 80px 0 !important;
  border-top: 1px solid #f0e6e4 !important;
  
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.qi-cta-final h2 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #92203c !important;
  margin: 0 0 25px 0 !important;
}

.qi-btn-large {
  display: inline-block !important;
  padding: 16px 36px !important;
  border-radius: 30px !important;
  background-color: #ff3869 !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 6px 20px rgba(255, 56, 105, 0.3) !important;
  transition: all 0.3s ease !important;
}

.qi-btn-large:hover {
  background-color: #92203c !important;
  transform: translateY(-2px) !important;
}

/* BOTÓN FLOTANTE WHATSAPP */
.qi-whatsapp-float {
  position: fixed !important;
  bottom: 24px !important;
  right: 24px !important;
  width: 58px !important;
  height: 58px !important;
  background-color: #25d366 !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
  z-index: 999999 !important;
}

.qi-whatsapp-float svg { width: 32px !important; height: 32px !important; }

/* RESPONSIVE MOBILE */
@media (max-width: 768px) {
  .qi-nav-right { display: none !important; }
  .qi-page-title { font-size: 30px !important; }
  .qi-bio-wrapper { flex-direction: column !important; gap: 30px !important; }
  .qi-bio-image { max-width: 100% !important; }
  .qi-grid-2col { flex-direction: column !important; }
  .qi-detail-title { font-size: 24px !important; }
  .qi-cta-final h2 { font-size: 22px !important; }
}