/* ════════════════════════════════════════════════════════
   FerreteRowp Cotizador — Estilos
   Paleta Banova: negro | #eddb85 dorado | #f9e9aa dorado suave | #dddbd9 gris

   Nota: casi todos los selectores llevan el prefijo #cotizador-app.
   El Kit global de Elementor del sitio (.elementor-kit-90) aplica sus
   propios colores por defecto a TODOS los <button>, <input>, <textarea>
   y <select> nativos con selectores del tipo ".elementor-kit-90 button"
   / ".elementor-kit-90 input:focus" — más específicos que una simple
   clase (".cot-btn-add"). Anteponer el id del contenedor eleva la
   especificidad por encima de esas reglas del Kit sin usar !important.
   ════════════════════════════════════════════════════════ */

:root {
  --cot-orange:    #000000;   /* negro — color principal (botones, precios, énfasis) */
  --cot-orange-d:  #1a1a1a;   /* hover de negro */
  --cot-gold:      #eddb85;   /* acento dorado — foco, bordes activos, glow */
  --cot-gold-soft: #f9e9aa;   /* dorado suave — degradados, fondos suaves */
  --cot-green:     #f9e9aa;   /* estado "Agregado" reutiliza el dorado suave */
  --cot-green-d:   #eddb85;
  --cot-blue:      #217346;
  --cot-red:       #dc3545;
  --cot-bg:        #ffffff;
  --cot-card:      #fffdf3;
  --cot-border:    #dddbd9;
  --cot-text:      #000000;
  --cot-muted:     #888;
  --cot-radius:    12px;
  --cot-shadow:    0 4px 12px rgba(0,0,0,.08);
}

/* ── Página base ──────────────────────────────────────── */
#cotizador-app {
  background: var(--cot-bg);
  min-height: 80vh;
  padding-bottom: 60px;
}

/* ── Header de página ─────────────────────────────────── */
#cotizador-app .cot-page-header {
  position: relative;
  overflow: hidden;
  background: #000;
  padding: 5em 40px;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
#cotizador-app .cot-header-video-wrap {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}
#cotizador-app .cot-header-video-wrap iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 0;
  pointer-events: none;
}
#cotizador-app .cot-header-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: #00000082;
}
#cotizador-app .cot-page-header__inner,
#cotizador-app .cot-cart-badge-wrap {
  position: relative;
  z-index: 2;
}
#cotizador-app .cot-page-header__inner { flex: 1; }
#cotizador-app .cot-page-title {
  color: #fff;
  font-size: 28px;
  font-weight: 800;
  margin: 0 0 6px;
  display: flex;
  align-items: center;
  gap: 10px;
}
#cotizador-app .cot-page-title i { font-size: 24px; }
#cotizador-app .cot-page-subtitle {
  color: rgba(255,255,255,.82);
  font-size: 14px;
  margin: 0;
}

/* Badge / toggle cotización (móvil) */
#cotizador-app .cot-cart-badge-wrap { display: none; }
#cotizador-app .cot-cart-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: var(--cot-orange);
  border: none;
  border-radius: 50px;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0,0,0,.15);
  transition: transform .15s;
}
#cotizador-app .cot-cart-toggle:hover { transform: translateY(-1px); }
#cotizador-app .cot-cart-count {
  background: var(--cot-orange);
  color: #fff;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 800;
}

/* ── Layout principal ─────────────────────────────────── */
#cotizador-app .cot-layout {
  display: flex;
  gap: 24px;
  max-width: 1400px;
  margin: 28px auto 0;
  padding: 0 24px;
  align-items: flex-start;
}

/* ── Panel productos ──────────────────────────────────── */
#cotizador-app .cot-panel-products {
  flex: 1;
  min-width: 0;
}

/* Barra de búsqueda */
#cotizador-app .cot-search-bar {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
#cotizador-app .cot-search-input-wrap {
  flex: 1;
  min-width: 200px;
  position: relative;
  display: flex;
  align-items: center;
  background: #fff;
  border: 2px solid var(--cot-border);
  border-radius: 50px;
  padding: 0 16px;
  transition: border-color .2s, box-shadow .2s;
}
#cotizador-app .cot-search-input-wrap:focus-within {
  border-color: var(--cot-gold);
  box-shadow: 0 0 0 4px rgba(237,219,133,.35);
}
#cotizador-app .cot-search-input-wrap > i {
  color: var(--cot-muted);
  font-size: 14px;
  margin-right: 10px;
  flex-shrink: 0;
}
#cotizador-app .cot-search-input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  padding: 12px 0;
  background: transparent;
  color: var(--cot-text);
}
#cotizador-app .cot-search-input:focus {
  border: none;
  box-shadow: none;
}
#cotizador-app .cot-search-clear {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--cot-muted);
  padding: 0;
  font-size: 12px;
  display: none;
}
#cotizador-app .cot-search-clear.visible { display: block; }

#cotizador-app .cot-cat-filter {
  background: #fff;
  border: 2px solid var(--cot-border);
  border-radius: 50px;
  padding: 10px 18px;
  font-size: 13px;
  color: var(--cot-text);
  cursor: pointer;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  min-width: 180px;
}
#cotizador-app .cot-cat-filter:focus {
  border-color: var(--cot-gold);
  box-shadow: 0 0 0 4px rgba(237,219,133,.35);
}

/* Meta resultados */
#cotizador-app .cot-results-meta {
  font-size: 12px;
  color: var(--cot-muted);
  margin-bottom: 14px;
}

/* Grid de productos */
#cotizador-app .cot-products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 16px;
}

/* Tarjeta de producto */
#cotizador-app .cot-product-card {
  background: var(--cot-card);
  border-radius: var(--cot-radius);
  box-shadow: var(--cot-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .2s, box-shadow .2s, border-color .2s;
  border: 2px solid var(--cot-border);
}
#cotizador-app .cot-product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 28px rgba(0,0,0,.14), 0 0 0 1px rgba(237,219,133,.4);
  border-color: var(--cot-gold);
}
#cotizador-app .cot-product-card.in-cart {
  border-color: var(--cot-gold);
  box-shadow: 0 0 0 3px rgba(237,219,133,.3);
}
#cotizador-app .cot-product-img {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--cot-border);
}
#cotizador-app .cot-product-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 10px;
  transition: transform .3s;
}
#cotizador-app .cot-product-card:hover .cot-product-img img { transform: scale(1.05); }
#cotizador-app .cot-product-body {
  padding: 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
#cotizador-app .cot-product-cat {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--cot-orange);
  font-weight: 700;
  margin-bottom: 4px;
}
#cotizador-app .cot-product-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--cot-text);
  margin: 0 0 4px;
  line-height: 1.4;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#cotizador-app .cot-product-sku {
  font-size: 11px;
  color: var(--cot-muted);
  margin-bottom: 8px;
}
#cotizador-app .cot-product-price {
  font-size: 17px;
  font-weight: 800;
  color: var(--cot-orange);
  margin-bottom: 10px;
}
#cotizador-app .cot-btn-add {
  width: 100%;
  background: var(--cot-orange);
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 9px 0;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background .2s, transform .1s;
}
#cotizador-app .cot-btn-add:hover { background: var(--cot-orange-d); }
#cotizador-app .cot-btn-add:active { transform: scale(.97); }
#cotizador-app .cot-btn-add.added {
  background: var(--cot-green);
  color: #000;
}
#cotizador-app .cot-btn-add.added:hover { background: var(--cot-green-d); }

/* Paginación */
#cotizador-app .cot-pagination {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 28px;
  flex-wrap: wrap;
}
#cotizador-app .cot-page-btn {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border: 2px solid var(--cot-border);
  background: #fff;
  color: var(--cot-text);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  display: flex;
  align-items: center;
  justify-content: center;
}
#cotizador-app .cot-page-btn:hover,
#cotizador-app .cot-page-btn.active {
  background: var(--cot-orange);
  border-color: var(--cot-orange);
  color: #fff;
}

/* Loading */
#cotizador-app .cot-loading {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  color: var(--cot-muted);
}
#cotizador-app .cot-spinner {
  width: 36px;
  height: 36px;
  border: 3px solid var(--cot-border);
  border-top-color: var(--cot-gold);
  border-radius: 50%;
  animation: cotSpin .7s linear infinite;
  margin: 0 auto 14px;
}
@keyframes cotSpin { to { transform: rotate(360deg); } }

#cotizador-app .cot-no-results {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  color: var(--cot-muted);
}
#cotizador-app .cot-no-results i { font-size: 40px; display: block; margin-bottom: 12px; }

/* ── Panel cotización (derecho) ───────────────────────── */
#cotizador-app .cot-panel-quote {
  width: 360px;
  flex-shrink: 0;
  background: var(--cot-card);
  border-radius: var(--cot-radius);
  box-shadow: var(--cot-shadow);
  border: 1px solid var(--cot-border);
  position: sticky;
  top: 100px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

#cotizador-app .cot-quote-header {
  background: var(--cot-orange);
  padding: 16px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: var(--cot-radius) var(--cot-radius) 0 0;
  position: sticky;
  top: 0;
  z-index: 1;
}
#cotizador-app .cot-quote-title {
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 8px;
}
#cotizador-app .cot-quote-number {
  font-size: 11px;
  color: rgba(255,255,255,.7);
  font-weight: 600;
}

/* Carrito vacío */
#cotizador-app .cot-empty-cart {
  text-align: center;
  padding: 40px 20px;
  color: var(--cot-muted);
}
#cotizador-app .cot-empty-cart i { font-size: 38px; display: block; margin-bottom: 12px; opacity: .3; }
#cotizador-app .cot-empty-cart p { font-size: 13px; line-height: 1.6; }

/* Items del carrito */
#cotizador-app .cot-quote-items { flex: 1; padding: 0 16px; }

#cotizador-app .cot-cart-item {
  display: flex;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid var(--cot-border);
  align-items: flex-start;
}
#cotizador-app .cot-cart-item__img {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  object-fit: contain;
  background: var(--cot-border);
  flex-shrink: 0;
}
#cotizador-app .cot-cart-item__info { flex: 1; min-width: 0; }
#cotizador-app .cot-cart-item__name {
  font-size: 12px;
  font-weight: 600;
  color: var(--cot-text);
  margin: 0 0 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#cotizador-app .cot-cart-item__sku {
  font-size: 11px;
  color: var(--cot-muted);
  margin: 0 0 6px;
}
#cotizador-app .cot-cart-item__controls {
  display: flex;
  align-items: center;
  gap: 6px;
}
#cotizador-app .cot-qty-btn {
  width: 26px;
  height: 26px;
  border: 1.5px solid var(--cot-border);
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: var(--cot-text);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .15s;
  line-height: 1;
}
#cotizador-app .cot-qty-btn:hover { border-color: var(--cot-gold); background: var(--cot-gold-soft); color: #000; }
#cotizador-app .cot-qty-input {
  width: 44px;
  height: 26px;
  box-sizing: border-box;
  padding: 0 2px;
  margin: 0;
  border: 1.5px solid var(--cot-border);
  border-radius: 6px;
  text-align: center;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  color: var(--cot-text);
  background: #fff;
  outline: none;
  -moz-appearance: textfield;
  appearance: textfield;
}
/* Ocultar las flechas nativas del input number: se comen el ancho y empujan
   el valor fuera de vista dentro de la caja estrecha del carrito. */
#cotizador-app .cot-qty-input::-webkit-outer-spin-button,
#cotizador-app .cot-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}
#cotizador-app .cot-qty-input:focus { border-color: var(--cot-gold); box-shadow: 0 0 0 3px rgba(237,219,133,.35); }
#cotizador-app .cot-cart-item__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
}
#cotizador-app .cot-cart-item__subtotal {
  font-size: 13px;
  font-weight: 800;
  color: var(--cot-orange);
  white-space: nowrap;
}
#cotizador-app .cot-cart-item__remove {
  background: none;
  border: none;
  cursor: pointer;
  color: #ccc;
  font-size: 13px;
  padding: 0;
  transition: color .15s;
}
#cotizador-app .cot-cart-item__remove:hover { color: var(--cot-red); }

/* Total */
#cotizador-app .cot-quote-total {
  padding: 14px 16px 8px;
  border-top: 2px solid var(--cot-border);
}
#cotizador-app .cot-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
#cotizador-app .cot-total-row span { font-size: 13px; color: var(--cot-muted); }
#cotizador-app .cot-total-row strong { font-size: 20px; font-weight: 800; color: var(--cot-orange); }
#cotizador-app .cot-btn-clear {
  background: #2e7d32;
  border: 1.5px solid #2e7d32;
  border-radius: 6px;
  padding: 7px 14px;
  font-size: 12px;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all .15s;
  width: 100%;
  justify-content: center;
}
#cotizador-app .cot-btn-clear:hover { background: #256428; border-color: #256428; color: #fff; }

/* Formulario del cliente */
#cotizador-app .cot-customer-form {
  padding: 16px 16px 0;
  border-top: 2px solid var(--cot-border);
}
#cotizador-app .cot-form-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--cot-text);
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  gap: 7px;
}
#cotizador-app .cot-form-row {
  margin-bottom: 10px;
}
#cotizador-app .cot-form-row label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  color: var(--cot-muted);
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: .3px;
}
#cotizador-app .cot-form-row .req { color: var(--cot-orange); }
#cotizador-app .cot-input {
  width: 100%;
  border: 1.5px solid var(--cot-border);
  border-radius: 7px;
  padding: 9px 12px;
  font-size: 13px;
  color: var(--cot-text);
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  box-sizing: border-box;
  font-family: inherit;
  background: #fff;
}
#cotizador-app .cot-input:focus { border-color: var(--cot-gold); box-shadow: 0 0 0 4px rgba(237,219,133,.3); }
#cotizador-app .cot-input.error { border-color: var(--cot-red); }
#cotizador-app .cot-textarea { resize: vertical; min-height: 72px; }

/* Botones de acción */
#cotizador-app .cot-actions {
  padding: 14px 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#cotizador-app .cot-actions-row { display: flex; gap: 10px; }
#cotizador-app .cot-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: none;
  border-radius: 8px;
  padding: 13px 16px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: all .2s;
  font-family: inherit;
}
#cotizador-app .cot-btn--primary {
  background: #f5821f;
  color: #fff;
  width: 100%;
  font-size: 15px;
  box-shadow: 0 4px 14px rgba(0,0,0,.25);
}
#cotizador-app .cot-btn--primary:hover { background: #d96e0f; box-shadow: 0 6px 20px rgba(245,130,31,.5); }
#cotizador-app .cot-btn--primary:active { transform: scale(.98); }
#cotizador-app .cot-btn--primary.loading {
  opacity: .7;
  pointer-events: none;
}
#cotizador-app .cot-btn--pdf {
  flex: 1;
  background: #000;
  color: #fff;
  font-size: 13px;
}
#cotizador-app .cot-btn--pdf:hover { background: #1a1a1a; }
#cotizador-app .cot-btn--excel {
  flex: 1;
  background: #000;
  color: #fff;
  font-size: 13px;
}
#cotizador-app .cot-btn--excel:hover { background: #1a1a1a; }

/* Notificación */
#cotizador-app .cot-notification {
  margin: 0 16px 16px;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 600;
  animation: cotFadeIn .3s ease;
}
#cotizador-app .cot-notification.success { background: var(--cot-gold-soft); color: #000; border: 1px solid var(--cot-gold); }
#cotizador-app .cot-notification.error   { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
#cotizador-app .cot-notification.warning { background: var(--cot-gold-soft); color: #000; border: 1px solid var(--cot-gold); }
@keyframes cotFadeIn { from { opacity:0; transform: translateY(-6px); } to { opacity:1; transform: none; } }

/* ── Botón COTIZAR en el header (fuera de #cotizador-app) ─
   Vive en el header del sitio, no dentro de la app — no lleva prefijo. */
.fwp-cotizar-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #fff;
  color: #000;
  border: 2px solid #000;
  border-radius: 6px;
  padding: 9px 15px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .3px;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  text-decoration: none;
  transition: background .2s, color .2s, box-shadow .2s;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.fwp-cotizar-btn:hover {
  background: #000;
  color: #fff;
  box-shadow: 0 4px 14px rgba(237,219,133,.5);
  text-decoration: none;
}
.fwp-cotizar-btn i { font-size: 14px; }

/* ── Fix: elementos con visibility:hidden bloqueaban clics en el grid ───────
   Bailly usa visibility:hidden (sin pointer-events:none) en varios overlays y
   dropdowns. visibility:hidden es invisible pero NO desactiva pointer-events
   en todos los navegadores modernos, por lo que esos elementos siguen
   interceptando clics aunque sean invisibles.
   ──────────────────────────────────────────────────────────────────────────

   1) fwp-cats-overlay: position:fixed; inset:0; z-index:9990 — cubre toda la
      ventana. Sin is-visible activo debe ser completamente inerte.            */
.fwp-cats-overlay:not(.is-visible) {
  pointer-events: none !important;
}

/* 2) Megamenu dropdowns (effect1/effect2): position:absolute, visibility:hidden
      pero sin pointer-events:none — quedan flotando sobre el grid en sticky.  */
.megamenu.effect1 > li > .dropdown-menu,
.megamenu.effect2 > li > .dropdown-menu,
.megamenu .dropdown-menu .dropdown-menu {
  pointer-events: none;
}
.megamenu.effect1 > li:hover > .dropdown-menu,
.megamenu.effect2 > li:hover > .dropdown-menu,
.megamenu .dropdown-menu li:hover > .dropdown-menu {
  pointer-events: auto;
}

/* 3) Botones del grid de productos: garantizar recepción de eventos
      por encima de cualquier overlay residual.                                */
#cotizador-app .cot-btn-add {
  pointer-events: auto !important;
  position: relative;
  z-index: 1;
}

/* 4) Subpaneles del catálogo dentro de un panel CERRADO.
      .fwp-cats-subpanel.fwp-active usa pointer-events:auto, que en CSS
      tiene precedencia sobre el pointer-events:none del padre — por eso
      puede interceptar clics aunque el panel sea invisible.                   */
.fwp-cats-panel:not(.fwp-cats-is-open) .fwp-cats-subpanel,
.fwp-cats-panel[aria-hidden="true"] .fwp-cats-subpanel {
  pointer-events: none !important;
}

/* 5) Dropdowns Bootstrap/Megamenu sin clase effect: el tema aplica
      visibility:hidden pero no pointer-events:none en todos los casos,
      dejando el elemento invisible pero aun capturando eventos de ratón.      */
.navbar-nav > li > .dropdown-menu,
.megamenu > li > .dropdown-menu {
  pointer-events: none;
}
.navbar-nav > li.open > .dropdown-menu,
.navbar-nav > li:hover > .dropdown-menu,
.megamenu > li.open > .dropdown-menu,
.megamenu > li:hover > .dropdown-menu {
  pointer-events: auto;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 991px) {
  #cotizador-app .cot-layout {
    flex-direction: column;
    padding: 0 16px;
  }
  #cotizador-app .cot-panel-quote {
    width: 100%;
    position: relative;
    top: auto;
    max-height: none;
    order: -1;
    display: none; /* oculto por defecto en móvil, se muestra con toggle */
  }
  #cotizador-app .cot-panel-quote.open { display: flex; }
  #cotizador-app .cot-cart-badge-wrap { display: block; }
  #cotizador-app .cot-page-header { padding: 24px 20px 20px; }
  #cotizador-app .cot-page-title { font-size: 20px; }
}
@media (max-width: 600px) {
  #cotizador-app .cot-products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  #cotizador-app .cot-page-header { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 380px) {
  #cotizador-app .cot-products-grid {
    grid-template-columns: 1fr;
  }
}

/* ── Modal aviso sin stock ─────────────────────────────── */
#cotizador-app .cot-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: cotFadeIn .2s ease;
}
#cotizador-app .cot-modal {
  background: #fff;
  border-radius: 14px;
  padding: 36px 32px 28px;
  max-width: 360px;
  width: 90%;
  text-align: center;
  box-shadow: 0 8px 40px rgba(0,0,0,.18);
}
#cotizador-app .cot-modal__icon {
  font-size: 48px;
  line-height: 1;
  margin-bottom: 14px;
}
#cotizador-app .cot-modal__title {
  font-size: 18px;
  font-weight: 800;
  color: #000;
  margin: 0 0 10px;
}
#cotizador-app .cot-modal__msg {
  font-size: 14px;
  color: #555;
  margin: 0 0 24px;
  line-height: 1.5;
}
#cotizador-app .cot-modal__msg strong {
  display: block;
  color: #333;
  font-size: 15px;
  margin-bottom: 6px;
}
#cotizador-app .cot-modal__btn {
  width: 100%;
  justify-content: center;
}
