/* ======================================================
   UVAC · Capa corporativa para la landing de detalle
   Se carga DESPUÉS de landing-page.css y usa los tokens
   definidos en promo-cards.css (--pc-*).
   ====================================================== */

/* Fondo limpio corporativo (reemplaza el fondo fotográfico) */
body {
  font-family: var(--pc-body, 'Plus Jakarta Sans', sans-serif) !important;
  color: var(--pc-ink, #0A1F3D);
  background: linear-gradient(180deg, #f6f8fc 0%, #eaf1fb 100%) fixed !important;
}

/* Tarjetas: borde fino + radio consistente */
.details-card,
.action-card {
  border: 1px solid var(--pc-line, rgba(10, 31, 61, .08));
  border-radius: 18px;
}

/* Eyebrow + título en tipografía display */
.details-card .eyebrow {
  color: var(--pc-azure, #1466B8);
  font-weight: 700;
  letter-spacing: .14em;
}
.details-card .title {
  font-family: var(--pc-display, 'Bricolage Grotesque', sans-serif);
  font-weight: 800;
  color: var(--pc-ink, #0A1F3D);
  letter-spacing: -.02em;
  font-size: clamp(1.5rem, 2.6vw, 2.05rem);
  line-height: 1.14;
}
.promo-id { color: var(--pc-slate, #52617A); }
.desc { color: #2b3a4f; }

/* Precio */
.price-chip {
  background: var(--pc-sky, #EAF2FB);
  color: var(--pc-ink-soft, #16335c);
  border: 1px solid #dbe6ff;
}
.price-block { background: var(--pc-sky, #EAF2FB); border-color: #dbe6ff; }
.price-offer strong {
  font-family: var(--pc-display, 'Bricolage Grotesque', sans-serif);
  color: var(--pc-ink, #0A1F3D);
}
.price-regular,
.price-regular .price-label { color: #d92b2b; }
.price-savings { background: #fdecec; color: #b91c1c; }

/* Botones: tipografía body + radio; Cotízalo como primario azure */
.btn { font-family: var(--pc-body, 'Plus Jakarta Sans', sans-serif); border-radius: 12px; }
.btn.btn-cotizar,
.btn-action.btn-cotizar { background: var(--pc-azure, #1466B8); color: #fff; }
.btn.btn-cotizar:hover,
.btn-action.btn-cotizar:hover { background: var(--pc-ink-soft, #16335c); }
.btn.btn-store,
.btn-action.btn-store { color: var(--pc-azure, #1466B8); border-color: var(--pc-azure, #1466B8); }
/* WhatsApp, Compartir y Reactivar conservan su color */

/* Tabla "Más información" */
.info h2 {
  font-family: var(--pc-display, 'Bricolage Grotesque', sans-serif);
  color: var(--pc-ink, #0A1F3D);
  font-weight: 800;
}
.info .label { color: var(--pc-slate, #52617A); }
.info .value { color: var(--pc-ink, #0A1F3D); }

/* Acción móvil */
.action-card h3 {
  font-family: var(--pc-display, 'Bricolage Grotesque', sans-serif);
  color: var(--pc-ink, #0A1F3D);
}

/* Formulario de contacto rápido */
.quick-contact { border-color: #dbe6ff; }
.quick-contact h3 {
  font-family: var(--pc-display, 'Bricolage Grotesque', sans-serif);
  color: var(--pc-ink, #0A1F3D);
}
.qc-submit { background: var(--pc-azure, #1466B8); }
.qc-submit:hover { background: var(--pc-ink-soft, #16335c); }

/* CTA de escritorio: 4 botones en rejilla 2×2, misma altura (SOLO desktop) */
@media (min-width: 1024px) {
  .details-card .cta-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .details-card .cta-row .btn {
    flex: initial;
    margin: 0;
    min-height: 52px;
    white-space: nowrap;
  }
}

/* ======================================================
   Defensivo: utilidades por si landing-page.css va desfasado
   ====================================================== */
.u-hidden { display: none !important; }
.qc-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* ======================================================
   CTA FIJA INFERIOR (solo móvil)
   Sustituye al action-card y al cta-row en móvil (sin duplicar)
   ====================================================== */
.uvx-mobile-cta { display: none; }

@media (max-width: 1023px) {
  /* En móvil manda la barra flotante; ocultamos los bloques que duplicaban */
  .action-card { display: none !important; }
  .details-card .cta-row { display: none !important; }

  /* Dock flotante premium */
  .uvx-mobile-cta {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    gap: 7px;
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: 10px;
    z-index: 1200;
    background: rgba(255, 255, 255, .9);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    backdrop-filter: saturate(180%) blur(14px);
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 20px;
    box-shadow: 0 14px 34px -10px rgba(10, 31, 61, .35), 0 2px 6px rgba(10, 31, 61, .1);
    padding: 7px;
    padding-bottom: calc(7px + env(safe-area-inset-bottom, 0px));
  }
  .umc-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-family: var(--pc-body, 'Plus Jakarta Sans', sans-serif);
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .01em;
    line-height: 1;
    padding: 10px 4px 9px;
    border: none;
    border-radius: 14px;
    text-decoration: none;
    cursor: pointer;
    transition: transform .12s ease;
  }
  .umc-btn:active { transform: scale(.94); }
  .umc-btn i { font-size: 1.25rem; }
  .umc-btn span { white-space: nowrap; }
  .umc-cotizar { background: linear-gradient(180deg, #1f6fd0, #1466B8); color: #fff; box-shadow: 0 6px 14px -4px rgba(20, 102, 184, .5); }
  .umc-store { background: #eef4fc; color: var(--pc-azure, #1466B8); }
  .umc-wa { background: #25D366; color: #fff; box-shadow: 0 6px 14px -4px rgba(37, 211, 102, .45); }
  .umc-share { background: #e8f6fd; color: #0ea5e9; }

  /* Hueco para que la barra no tape el contenido ni el footer */
  body { padding-bottom: 92px !important; }
}