/* TEMA "MEDICAL EXERON" — paleta inspirada en la caja del producto
   blanco · plata · azul EXERON · gris perla · rojo CTA (regla del guide) */

:root {
  --bg-main: #f4f7fb;
  /* gris perla muy claro (fondo) */
  --bg-sub: #e9eef5;
  /* gris azulado para secciones alternas */
  --bg-card: #ffffff;
  /* cards y formularios */
  --bg-dark: #0e1d36;
  /* azul muy oscuro (footer) */

  --silver: #c5cad0;
  /* plata de la caja */
  --silver-light: #dfe3e8;
  --silver-dark: #8b939d;

  --border-light: #d8dee6;
  --border-medium: #b9c2cd;
  --border-strong: #8aa1bf;

  --text-main: #1a2435;
  --text-heading: #0e1d36;
  --text-mute: #5a6678;

  --accent-blue: #1c4a8a;
  /* azul de la franja EXERON */
  --accent-blue-2: #2563a8;
  /* azul medio */
  --accent-blue-3: #4a86c5;
  /* azul claro de hover/links */
  --accent-blue-soft: #eaf1fa;
  /* azul muy suave para chips */

  --accent-yellow: #fdb839;
  --accent-orange: #ff7a18;

  --cta-red: #e63a14;
  --cta-red-hover: #c52f10;
}

body,
.body-wrap {
  background: var(--bg-main);
  color: var(--text-main);
}

h1,
h2,
h3,
.title,
.main-title {
  color: var(--text-heading);
}

button[type="submit"],
.btn-cta {
  background: var(--cta-red);
  color: #fff;
  font-weight: 800;
  padding: 14px 28px;
  border: 0;
  border-radius: 8px;
  text-transform: uppercase;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  letter-spacing: .5px;
}

button[type="submit"]:hover,
.btn-cta:hover {
  background: var(--cta-red-hover);
}

/* ============================================================
   FIXES MOBILE (≤999px)
   ============================================================ */

@media (max-width:999px) {

  h1,
  .main-title {
    font-size: 30px !important;
  }

  h2,
  .title {
    font-size: 24px !important;
  }

  .title {
    text-align: center;
  }

  .nav {
    display: none !important;
  }

  .header-inner {
    padding: 10px 14px;
  }

  .hero {
    padding: 32px 0 !important;
  }

  .hero-inner {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .hero-img {
    order: 2;
  }

  .hero-text {
    order: 1;
    text-align: center;
  }

  .hero-bullets li {
    text-align: left;
  }

  .price-row {
    justify-content: center;
  }

  .btn-cta {
    width: 100%;
  }

  .promos-grid {
    grid-template-columns: 1fr !important;
  }

  .two-col {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .gallery {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .testimonials {
    grid-template-columns: 1fr !important;
  }

  /* DOCTOR — texto NEGRO, foto centrada arriba */
  .body-wrap .section6.ms-doctor-section {
    background: #fff !important;
    background-image: none !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 14px !important;
    padding: 24px 16px !important;
    min-height: auto !important;
    box-shadow: 0 4px 18px rgba(14, 29, 54, .07) !important;
  }

  .body-wrap .section6 .ms-doctor-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
  }

  .body-wrap .section6 .expert-img.ms-doctor-img {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 auto !important;
    width: 200px !important;
    height: 280px !important;
    background: url("../img/doctor.png") no-repeat center/cover !important;
    border: 3px solid var(--accent-blue) !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 18px rgba(14, 29, 54, .18) !important;
  }

  .body-wrap .section6 .expert-wrap.ms-doctor-wrap {
    padding: 18px 14px !important;
    background: var(--accent-blue-soft) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .body-wrap .section6 .expert-text,
  .body-wrap .section6 p.expert-text {
    color: #000 !important;
    -webkit-text-fill-color: #000 !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  .body-wrap .section6 .expert-name {
    color: var(--accent-blue) !important;
    font-weight: 700 !important;
  }

  .body-wrap .section6 .expert-prof {
    color: #666 !important;
    font-style: italic !important;
  }

  .form-medio-inner,
  .form-bottom-inner {
    grid-template-columns: 1fr !important;
  }

  #form-medio .title,
  .form-wrap--bottom .title {
    text-align: center;
  }

  .ms-trust li {
    color: var(--text-heading) !important;
    font-weight: 700 !important;
    padding-left: 22px !important;
    position: relative !important;
  }

  .ms-trust li::before {
    content: "✓";
    color: var(--accent-blue);
    position: absolute;
    left: 0;
    font-weight: 800;
  }
}

/* SALE WRAP — círculo naranja queda como acento promocional */
.body-wrap .sale-wrap,
.body-wrap .sale-wrap--c,
.body-wrap .sale-wrap--b,
.body-wrap .sale-wrap--m {
  background: var(--accent-orange) !important;
  background-image: none !important;
  border-radius: 50% !important;
  width: 74px !important;
  height: 74px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.body-wrap .sale-wrap *,
.body-wrap .sale-wrap--m * {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .25) !important;
}

/* CHIP NÚMERO PAQUETES */
.body-wrap .product_how-much,
.body-wrap .product_how-much--mob,
.body-wrap .product_how-much--bottom,
.body-wrap .product_how-much--center {
  background: var(--accent-blue) !important;
  background-image: none !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 50px !important;
  height: 50px !important;
  font-size: 24px !important;
  line-height: 50px !important;
  padding: 0 !important;
  text-align: center !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(14, 29, 54, .25) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .20) !important;
}

/* FAQ */
.body-wrap .faq-section .faq-item,
.body-wrap .section8 .faq-item {
  background: #fff !important;
  border: 1.5px solid var(--border-light) !important;
  border-left: 4px solid var(--accent-blue) !important;
  border-radius: 10px !important;
  margin-bottom: 12px !important;
  padding: 16px 18px !important;
}

.body-wrap .faq-section .faq-q {
  color: var(--text-heading) !important;
  font-weight: 700 !important;
}

.body-wrap .faq-section .faq-a {
  color: var(--text-main) !important;
  line-height: 1.6 !important;
}

/* SECTION 4-1 */
.body-wrap .section4-1 *,
.body-wrap .components-list-wrap * {
  color: var(--text-heading) !important;
}

.body-wrap .section4-1 .title:after {
  display: none !important;
}