/* =====================================================================
   curso.css · Localizador de cursos para comparendo
   Se apoya en template.min.css + style-over.php (var --primary / .btn-primary)
   Solo agrega lo que el tema no tiene: buscador, chips, cards de sede,
   mapa, resumen de cupos, CTA sticky, skeletons y micro-animaciones.
   ===================================================================== */

:root{
  --cz-primary: #725800; /* acento de la familia amarilla (texto y relleno con blanco, 6,75:1); curso_head.php lo fija igual */
  --cz-radius: 14px;
  --cz-radius-sm: 10px;
  --cz-shadow: 0 6px 24px rgba(20,22,28,.08);
  --cz-shadow-lg: 0 14px 40px rgba(20,22,28,.14);
  --cz-border: #e8eef2;
  --cz-ok: #725800;
  --cz-ok-soft: #FFF9D9;
  --cz-warn: #b9770e;
  --cz-warn-soft: #fff4e0;
  --cz-muted: #6a747b;
  --cz-ease: cubic-bezier(.22,.61,.36,1);
}
.dark-mode{ --cz-border:#2a3238; --cz-shadow:0 6px 24px rgba(0,0,0,.35); --cz-shadow-lg:0 14px 40px rgba(0,0,0,.5); --cz-ok-soft:rgba(217,169,0,.18); --cz-warn-soft:rgba(185,119,14,.18); }

/* ---------- HERO / buscador ---------- */
.cz-hero{ position:relative; overflow:hidden; }
.cz-hero .cz-hero-bg{ position:absolute; inset:0; pointer-events:none; opacity:.35;
  background: radial-gradient(60% 80% at 80% 20%, rgba(255,255,255,.18), transparent 60%),
              radial-gradient(40% 60% at 10% 90%, rgba(255,255,255,.10), transparent 60%); }
.cz-hero h1{ letter-spacing:-.02em; line-height:1.08; }
.cz-hero .cz-sub{ font-size:1.125rem; opacity:.9; max-width:34rem; }

.cz-search{ background:#fff; border-radius:var(--cz-radius); box-shadow:var(--cz-shadow-lg); padding:.5rem; display:flex; gap:.5rem; align-items:stretch; max-width:720px; position:relative; }
.dark-mode .cz-search{ background:#1f2122; }
.cz-search .cz-input-wrap{ flex:1; position:relative; display:flex; align-items:center; }
.cz-search .cz-input-wrap > i{ position:absolute; left:.95rem; color:var(--cz-muted); font-size:1.05rem; }
.cz-search input.cz-input{ width:100%; border:0; outline:0; background:transparent; padding:.95rem .95rem .95rem 2.6rem; font-size:1rem; border-radius:var(--cz-radius-sm); color:inherit; }
.cz-search input.cz-input::placeholder{ color:#8a949b; }
.cz-search input.cz-input:focus{ box-shadow: inset 0 0 0 2px rgba(217,169,0,.15); }
.cz-search .btn{ border-radius:var(--cz-radius-sm); white-space:nowrap; }
.cz-btn-geo{ display:inline-flex; align-items:center; gap:.45rem; }
.cz-btn-geo.is-loading i{ animation:cz-pulse 1s infinite; }
@media (max-width:575.98px){ .cz-search{ flex-direction:column; } .cz-search .btn{ width:100%; padding:.9rem; } }

/* autocomplete */
.cz-suggest{ position:absolute; left:.5rem; right:.5rem; top:calc(100% + .35rem); background:#fff; border-radius:var(--cz-radius-sm); box-shadow:var(--cz-shadow-lg); z-index:1050; overflow:hidden; display:none; }
.dark-mode .cz-suggest{ background:#1f2122; }
.cz-suggest.is-open{ display:block; animation:cz-fade-up .18s var(--cz-ease); }
.cz-suggest button{ display:flex; width:100%; align-items:center; gap:.7rem; text-align:left; background:none; border:0; padding:.7rem .95rem; font-size:.95rem; color:inherit; cursor:pointer; }
.cz-suggest button:hover, .cz-suggest button.is-active{ background:var(--cz-ok-soft); }
.cz-suggest button small{ color:var(--cz-muted); margin-left:auto; }

.cz-secondary-link{ color:rgba(255,255,255,.85); text-decoration:underline dotted; text-underline-offset:4px; }
.cz-secondary-link:hover{ color:#fff; }

/* ---------- Barra de contexto (ubicación + fecha) ---------- */
.cz-context{ display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1.25rem; }
.cz-context .cz-loc{ font-weight:600; display:inline-flex; align-items:center; gap:.4rem; }
.cz-context .cz-loc i{ color:var(--cz-primary); }
.cz-context .cz-change{ font-size:.85rem; color:var(--cz-muted); text-decoration:underline; text-underline-offset:3px; background:none; border:0; padding:0; cursor:pointer; }

.cz-chips{ display:flex; flex-wrap:wrap; gap:.5rem; }
.cz-chip{ border:1px solid var(--cz-border); background:#fff; color:inherit; border-radius:999px; padding:.45rem .95rem; font-size:.9rem; font-weight:500; cursor:pointer; transition:all .18s var(--cz-ease); line-height:1.2; }
.dark-mode .cz-chip{ background:#1f2122; }
.cz-chip:hover{ border-color:var(--cz-primary); transform:translateY(-1px); }
.cz-chip.is-active{ background:var(--cz-primary); border-color:var(--cz-primary); color:#fff; }
.cz-chip input[type=date]{ border:0; background:transparent; color:inherit; font:inherit; padding:0; width:9.5rem; }

/* resumen "8:00 — 3 centros" */
.cz-horas{ display:flex; gap:.5rem; overflow-x:auto; padding-bottom:.25rem; scrollbar-width:none; }
.cz-horas::-webkit-scrollbar{ display:none; }
.cz-hora{ flex:0 0 auto; border:1px solid var(--cz-border); border-radius:var(--cz-radius-sm); padding:.55rem .85rem; min-width:6.2rem; text-align:center; background:#fff; cursor:pointer; transition:all .18s var(--cz-ease); }
.dark-mode .cz-hora{ background:#1f2122; }
.cz-hora:hover{ border-color:var(--cz-primary); box-shadow:var(--cz-shadow); }
.cz-hora.is-active{ border-color:var(--cz-primary); background:var(--cz-ok-soft); }
.cz-hora b{ display:block; font-size:1.05rem; }
.cz-hora span{ font-size:.78rem; color:var(--cz-muted); }

/* ---------- Layout resultados + mapa ---------- */
.cz-results-wrap{ display:grid; grid-template-columns: minmax(0,1fr) minmax(320px,44%); gap:1.5rem; align-items:start; }
.cz-map-col{ position:sticky; top:88px; }
.cz-map{ height:min(72vh,640px); border-radius:var(--cz-radius); overflow:hidden; box-shadow:var(--cz-shadow); background:#e9eef1; }
.cz-map.cz-map-sm{ height:260px; }
@media (max-width:991.98px){
  .cz-results-wrap{ grid-template-columns:1fr; }
  .cz-map-col{ position:static; order:-1; }
  .cz-map{ height:260px; }
}

/* pins numerados */
.cz-pin{ width:30px; height:30px; border-radius:50% 50% 50% 0; transform:rotate(-45deg); background:var(--cz-primary); border:2px solid #fff; box-shadow:0 3px 10px rgba(0,0,0,.25); display:flex; align-items:center; justify-content:center; transition:transform .18s var(--cz-ease); }
.cz-pin span{ transform:rotate(45deg); color:#fff; font-weight:700; font-size:.78rem; }
.cz-pin.is-empty{ background:#9aa5ad; }
.cz-pin.is-active{ transform:rotate(-45deg) scale(1.25); z-index:1000; }
.cz-pin-user{ width:18px; height:18px; border-radius:50%; background:#2b6cb0; border:3px solid #fff; box-shadow:0 0 0 6px rgba(43,108,176,.25); animation:cz-ring 1.8s infinite; }
.leaflet-container{ font-family:inherit; }
.leaflet-popup-content-wrapper{ border-radius:var(--cz-radius-sm); box-shadow:var(--cz-shadow-lg); }
.leaflet-popup-content{ margin:.8rem 1rem; font-size:.9rem; }
.leaflet-popup-content a{ font-weight:600; }

/* ---------- Card de sede (estandarizada) ---------- */
.cz-card{ border:1px solid var(--cz-border); border-radius:var(--cz-radius); background:#fff; padding:1.1rem 1.15rem; box-shadow:var(--cz-shadow); transition:transform .22s var(--cz-ease), box-shadow .22s var(--cz-ease), border-color .22s; position:relative; }
.dark-mode .cz-card{ background:#1f2122; }
.cz-card:hover, .cz-card.is-active{ transform:translateY(-2px); box-shadow:var(--cz-shadow-lg); border-color:rgba(217,169,0,.35); }
.cz-card .cz-card-top{ display:flex; gap:1rem; align-items:flex-start; }
.cz-card .cz-thumb{ width:76px; height:76px; border-radius:var(--cz-radius-sm); object-fit:cover; flex:0 0 76px; background:var(--cz-ok-soft); display:flex; align-items:center; justify-content:center; color:var(--cz-primary); font-size:1.6rem; }
.cz-card .cz-thumb img{ width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.cz-card .cz-dist{ font-size:.82rem; color:var(--cz-muted); font-weight:600; letter-spacing:.01em; }
.cz-card h3{ font-size:1.12rem; margin:.15rem 0 .2rem; line-height:1.25; }
.cz-card h3 a{ color:inherit; }
.cz-card .cz-rating{ font-size:.86rem; color:var(--cz-muted); }
.cz-card .cz-rating .fas, .cz-card .cz-rating .far{ color:#f2b01e; font-size:.78rem; }
.cz-card .cz-addr{ font-size:.86rem; color:var(--cz-muted); }
.cz-card .cz-badge{ position:absolute; top:-10px; left:16px; background:var(--cz-ok); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.03em; padding:.25rem .6rem; border-radius:999px; text-transform:uppercase; }
.cz-card .cz-badge.is-warn{ background:var(--cz-warn); }
.cz-card .cz-num{ position:absolute; top:12px; right:14px; width:26px; height:26px; border-radius:50%; background:var(--cz-ok-soft); color:var(--cz-primary); font-size:.78rem; font-weight:700; display:flex; align-items:center; justify-content:center; }

.cz-slots{ display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.85rem; }
.cz-slot{ border:1px solid rgba(217,169,0,.35); color:var(--cz-primary); background:var(--cz-ok-soft); border-radius:8px; padding:.4rem .7rem; font-weight:600; font-size:.9rem; text-decoration:none; transition:all .16s var(--cz-ease); display:inline-flex; align-items:center; gap:.35rem; }
.cz-slot:hover{ background:var(--cz-primary); color:#fff; transform:translateY(-1px); }
.cz-slot small{ font-weight:500; opacity:.8; font-size:.72rem; }
.cz-slot.is-few{ border-color:rgba(185,119,14,.45); color:var(--cz-warn); background:var(--cz-warn-soft); }
.cz-slot.is-few:hover{ background:var(--cz-warn); color:#fff; }
.cz-slot-more{ border:1px dashed var(--cz-border); color:var(--cz-muted); background:transparent; }
.cz-next{ margin-top:.85rem; font-size:.9rem; color:var(--cz-muted); display:flex; align-items:center; gap:.5rem; }
.cz-next b{ color:inherit; }

.cz-card-foot{ display:flex; justify-content:space-between; align-items:center; margin-top:1rem; gap:.75rem; flex-wrap:wrap; }
.cz-price{ font-size:.92rem; color:var(--cz-muted); }
.cz-price b{ font-size:1.05rem; color:inherit; }

/* lista con stagger */
.cz-list > .cz-card{ animation:cz-fade-up .45s var(--cz-ease) both; }
.cz-list > .cz-card:nth-child(1){ animation-delay:.02s } .cz-list > .cz-card:nth-child(2){ animation-delay:.08s } .cz-list > .cz-card:nth-child(3){ animation-delay:.14s }
.cz-list > .cz-card:nth-child(4){ animation-delay:.20s } .cz-list > .cz-card:nth-child(5){ animation-delay:.26s } .cz-list > .cz-card:nth-child(n+6){ animation-delay:.32s }

/* skeleton */
.cz-skel{ border-radius:var(--cz-radius); border:1px solid var(--cz-border); padding:1.1rem; }
.cz-skel .b{ height:12px; border-radius:6px; background:linear-gradient(90deg,#eef2f4 25%,#f7f9fa 50%,#eef2f4 75%); background-size:400% 100%; animation:cz-shimmer 1.2s infinite; margin-bottom:.6rem; }
.dark-mode .cz-skel .b{ background:linear-gradient(90deg,#26292b 25%,#2f3335 50%,#26292b 75%); background-size:400% 100%; }
.cz-skel .b.w60{ width:60% } .cz-skel .b.w40{ width:40% } .cz-skel .b.w80{ width:80% } .cz-skel .b.h40{ height:40px; width:100%; margin-top:.9rem }

/* estado vacío */
.cz-empty{ border:1px dashed var(--cz-border); border-radius:var(--cz-radius); padding:2rem 1.5rem; text-align:center; color:var(--cz-muted); }

/* ---------- Banner "encontramos N centros" ---------- */
.cz-found{ background:var(--cz-ok-soft); border:1px solid rgba(217,169,0,.2); border-radius:var(--cz-radius); padding:1rem 1.15rem; display:flex; gap:1rem; align-items:center; flex-wrap:wrap; }
.cz-found i{ font-size:1.6rem; color:var(--cz-primary); }
.cz-found .cz-found-txt{ flex:1; min-width:220px; }
.cz-found .cz-found-txt b{ display:block; font-size:1.05rem; }

/* ---------- Calculadora de descuento ---------- */
.cz-calc{ border-radius:var(--cz-radius); background:#fff; box-shadow:var(--cz-shadow); padding:1.5rem; }
.dark-mode .cz-calc{ background:#1f2122; }
.cz-calc input[type=date], .cz-calc select{ height:52px; border-radius:var(--cz-radius-sm); border:1px solid var(--cz-border); padding:0 .9rem; font-size:1rem; width:100%; background:transparent; color:inherit; }
.cz-calc-result{ display:none; margin-top:1.25rem; border-radius:var(--cz-radius-sm); padding:1.1rem 1.2rem; border:1px solid rgba(217,169,0,.25); background:var(--cz-ok-soft); animation:cz-fade-up .3s var(--cz-ease); }
.cz-calc-result.is-warn{ border-color:rgba(185,119,14,.35); background:var(--cz-warn-soft); }
.cz-calc-result.is-off{ border-color:var(--cz-border); background:transparent; }
.cz-calc-result.is-open{ display:block; }
.cz-calc-result .cz-pct{ font-size:2.4rem; font-weight:800; line-height:1; letter-spacing:-.03em; }
.cz-countdown{ font-size:.85rem; color:var(--cz-muted); }

/* ---------- Ficha de sede ---------- */
.cz-sede-hero{ border-radius:var(--cz-radius); overflow:hidden; height:280px; background:var(--cz-ok-soft) center/cover no-repeat; position:relative; }
.cz-sede-hero .cz-map{ height:100%; border-radius:0; box-shadow:none; }
.cz-sede-meta{ display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; font-size:.92rem; color:var(--cz-muted); }
.cz-sede-meta i{ color:var(--cz-primary); margin-right:.3rem; }
.cz-verified{ display:inline-flex; align-items:center; gap:.35rem; color:var(--cz-ok); font-weight:600; font-size:.88rem; }
.cz-agenda-day{ border-top:1px solid var(--cz-border); padding:.9rem 0; }
.cz-agenda-day:first-child{ border-top:0; padding-top:0; }
.cz-agenda-day .cz-day{ font-weight:700; font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; color:var(--cz-muted); margin-bottom:.45rem; }
.cz-book-box{ border:1px solid var(--cz-border); border-radius:var(--cz-radius); padding:1.25rem; box-shadow:var(--cz-shadow); background:#fff; position:sticky; top:96px; }
.dark-mode .cz-book-box{ background:#1f2122; }
.cz-book-box .btn-primary{ padding:.95rem 1rem; font-size:1.02rem; font-weight:700; border-radius:var(--cz-radius-sm); }
.cz-trust{ font-size:.82rem; color:var(--cz-muted); text-align:center; margin-top:.6rem; }
.cz-facts{ list-style:none; padding:0; margin:0; }
.cz-facts li{ display:flex; gap:.7rem; padding:.55rem 0; border-bottom:1px solid var(--cz-border); font-size:.93rem; }
.cz-facts li:last-child{ border-bottom:0; }
.cz-facts li i{ color:var(--cz-primary); width:1.1rem; text-align:center; margin-top:.15rem; }
.cz-tag{ display:inline-block; background:#f1f4f6; border-radius:6px; padding:.2rem .55rem; font-size:.8rem; margin:.15rem .25rem .15rem 0; }
.dark-mode .cz-tag{ background:#2a2e30; }

/* CTA sticky móvil */
.cz-sticky-cta{ position:fixed; left:0; right:0; bottom:0; z-index:1040; padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom)); background:#fff; box-shadow:0 -6px 24px rgba(0,0,0,.12); display:none; align-items:center; gap:.75rem; transform:translateY(100%); transition:transform .3s var(--cz-ease); }
.dark-mode .cz-sticky-cta{ background:#1f2122; }
.cz-sticky-cta.is-visible{ transform:translateY(0); }
.cz-sticky-cta .btn{ flex:1; border-radius:var(--cz-radius-sm); font-weight:700; }
@media (max-width:991.98px){ .cz-sticky-cta{ display:flex; } body.has-cz-sticky{ padding-bottom:78px; } }

/* ---------- Ciudades / SEO ---------- */
.cz-city{ display:flex; align-items:center; justify-content:space-between; border:1px solid var(--cz-border); border-radius:var(--cz-radius-sm); padding:.8rem 1rem; color:inherit; transition:all .18s var(--cz-ease); }
.cz-city:hover{ border-color:var(--cz-primary); transform:translateY(-2px); box-shadow:var(--cz-shadow); color:inherit; text-decoration:none; }
.cz-city small{ color:var(--cz-muted); display:block; }
.cz-city .cz-count{ font-size:.8rem; color:var(--cz-primary); font-weight:700; white-space:nowrap; }

/* pasos */
.cz-step{ text-align:center; padding:1rem; }
.cz-step .cz-step-n{ width:44px; height:44px; border-radius:50%; background:var(--cz-ok-soft); color:var(--cz-primary); font-weight:800; display:flex; align-items:center; justify-content:center; margin:0 auto .75rem; }

/* ---------- utilidades ---------- */
.cz-muted{ color:var(--cz-muted); }
.cz-divider{ height:1px; background:var(--cz-border); margin:1.5rem 0; }
.cz-hidden{ display:none !important; }
.cz-fade-in{ animation:cz-fade-up .4s var(--cz-ease) both; }

@keyframes cz-fade-up{ from{ opacity:0; transform:translateY(8px);} to{ opacity:1; transform:none;} }
@keyframes cz-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.35; } }
@keyframes cz-shimmer{ 0%{ background-position:100% 0 } 100%{ background-position:0 0 } }
@keyframes cz-ring{ 0%{ box-shadow:0 0 0 0 rgba(43,108,176,.45);} 70%{ box-shadow:0 0 0 14px rgba(43,108,176,0);} 100%{ box-shadow:0 0 0 0 rgba(43,108,176,0);} }
@media (prefers-reduced-motion: reduce){ .cz-list > .cz-card, .cz-fade-in, .cz-suggest.is-open, .cz-calc-result{ animation:none; } .cz-pin-user{ animation:none; } }

/* --- calculadora: tipo de comparendo + liquidación + pago --- */
.cz-calc-tipos{ display:flex; gap:.5rem; flex-wrap:wrap; }
.cz-calc-tipo{ margin:0; flex:1 1 160px; }
.cz-calc-tipo input{ position:absolute; opacity:0; width:0; height:0; }
.cz-calc-tipo span{ display:block; text-align:center; padding:.75rem .9rem; border:1px solid var(--cz-border); border-radius:var(--cz-radius-sm); font-weight:700; font-size:.95rem; cursor:pointer; transition:all .18s var(--cz-ease); }
.cz-calc-tipo input:checked + span{ border-color:var(--cz-primary); background:var(--cz-ok-soft); color:var(--cz-primary); }
.cz-calc-tipo input:focus-visible + span{ outline:2px solid var(--cz-primary); outline-offset:2px; }
.cz-liq{ border-radius:var(--cz-radius-sm); background:#fff; border:1px solid var(--cz-border); overflow:hidden; }
.dark-mode .cz-liq{ background:#1f2122; }
.cz-liq-row{ display:flex; justify-content:space-between; align-items:baseline; gap:1rem; padding:.6rem .95rem; border-top:1px solid var(--cz-border); font-size:.92rem; }
.cz-liq-row:first-child{ border-top:0; }
.cz-liq-row.is-total{ font-weight:800; font-size:1.02rem; background:var(--cz-ok-soft); }
.cz-liq-row.is-muted{ color:#6c757d; }
.cz-liq-row small{ display:block; font-weight:400; font-size:.78rem; color:#6c757d; }
.cz-liq-head{ padding:.65rem .95rem; font-size:.85rem; font-weight:700; background:rgba(0,0,0,.03); }
.cz-pago{ border-radius:var(--cz-radius-sm); border:1px dashed var(--cz-primary); padding:.9rem 1rem; background:#fff; }
.dark-mode .cz-pago{ background:#1f2122; }
.cz-pago-monto{ font-size:1.5rem; font-weight:800; letter-spacing:-.02em; color:var(--cz-primary); }
.cz-pago .btn-copy{ border:1px solid var(--cz-border); background:transparent; border-radius:8px; padding:.35rem .6rem; font-size:.8rem; }

/* ===================== modal de reserva ===================== */
.cz-modal{ position:fixed; inset:0; z-index:2000; display:none; }
.cz-modal.is-open{ display:block; }
.cz-modal-backdrop{ position:absolute; inset:0; background:rgba(10,20,16,.55); backdrop-filter:blur(2px); animation:czr-fade .2s var(--cz-ease); }
.cz-modal-panel{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:min(560px, calc(100% - 24px)); max-height:calc(100% - 24px); background:#fff; border-radius:var(--cz-radius); box-shadow:var(--cz-shadow-lg); display:flex; flex-direction:column; overflow:hidden; animation:cz-fade-up .28s var(--cz-ease); }
.dark-mode .cz-modal-panel{ background:#1f2122; color:#e9ecef; }
@media (max-width:575px){ .cz-modal-panel{ left:0; top:auto; bottom:0; transform:none; width:100%; max-height:94%; border-radius:var(--cz-radius) var(--cz-radius) 0 0; } }
/* [WIZARD ÚNICO 23-09-2026] Experiencia asistida a pantalla completa: el fondo desaparece y solo existe el trámite. */
.cz-modal-backdrop{ background:rgba(8,14,12,.94); backdrop-filter:blur(6px); }
.cz-modal-panel{ left:0; top:0; bottom:0; right:0; transform:none; width:100%; max-height:none; height:100%; border-radius:0; box-shadow:none; animation:czr-fade .22s var(--cz-ease); }
.cz-modal-head, #czr-steps, .czr-resumen, .cz-modal-body, .cz-modal-foot{ width:100%; max-width:720px; margin-left:auto; margin-right:auto; }
.cz-modal-head{ padding:1.1rem 1.25rem .7rem; }
.cz-modal-head::before{ content:''; display:block; width:38px; height:38px; flex:0 0 auto; border-radius:10px; background:var(--cz-primary) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'><path d='M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m2.146 5.146a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793z'/></svg>") center/22px no-repeat; }
.cz-modal-close{ background:rgba(0,0,0,.06); }
.cz-modal-foot{ position:sticky; bottom:0; }
@media (min-width:768px){ .cz-modal-body{ padding:1.25rem 1.25rem 2rem; } }
.cz-consulta-ciudad{ max-width:none; box-shadow:0 8px 30px rgba(11,60,45,.08); border:1px solid #e5e8ec; }
.cz-consulta-ciudad .cz-consulta-t, .cz-consulta-ciudad .cz-consulta-s{ color:inherit; }
.cz-modal-head{ display:flex; align-items:center; gap:.75rem; padding:1rem 1.1rem .6rem; }
.cz-modal-close{ border:0; background:rgba(0,0,0,.05); width:36px; height:36px; border-radius:50%; font-size:1rem; flex:0 0 auto; }
.cz-steps{ display:flex; gap:4px; padding:0 1.1rem .6rem; }
.cz-steps span{ flex:1; height:4px; border-radius:2px; background:var(--cz-border); }
.cz-steps span.is-on{ background:var(--cz-primary); }
.czr-resumen{ display:flex; flex-wrap:wrap; gap:.4rem .9rem; padding:.55rem 1.1rem; background:var(--cz-ok-soft); border-top:1px solid rgba(217,169,0,.15); border-bottom:1px solid rgba(217,169,0,.15); font-size:.82rem; position:sticky; top:0; z-index:2; }
.dark-mode .czr-resumen{ background:rgba(217,169,0,.15); }
.czr-res-item{ display:inline-flex; align-items:center; gap:.3rem; min-width:0; }
.czr-res-item i{ color:var(--cz-primary); }
.czr-res-dcto b{ color:var(--cz-primary); font-size:1rem; }
.czr-res-dcto span{ color:var(--cz-muted); }
.cz-modal-body{ padding:1rem 1.1rem; overflow:auto; -webkit-overflow-scrolling:touch; flex:1 1 auto; }
.cz-modal-foot{ display:flex; justify-content:space-between; gap:.5rem; padding:.75rem 1.1rem; border-top:1px solid var(--cz-border); background:#fff; }
.dark-mode .cz-modal-foot{ background:#1f2122; }
.czr-paso{ display:none; padding:0 !important; margin:0 !important; background:transparent !important; } /* el tema da padding a <section> */
.czr-paso.is-on{ display:block; animation:czr-fade .2s var(--cz-ease); }
.czr-hp{ position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
/* paso 1 */
.czr-dias{ display:flex; gap:.4rem; overflow-x:auto; padding:.2rem .1rem .5rem; scroll-snap-type:x mandatory; scrollbar-width:thin; }
.czr-dia{ flex:0 0 64px; scroll-snap-align:start; border:1px solid var(--cz-border); border-radius:12px; padding:.5rem .25rem .4rem; text-align:center; cursor:pointer; background:transparent; transition:all .16s var(--cz-ease); position:relative; }
.czr-dia small{ display:block; font-size:.68rem; color:var(--cz-muted); text-transform:uppercase; letter-spacing:.04em; }
.czr-dia b{ display:block; font-size:1.15rem; line-height:1.2; }
.czr-dia .czr-badge{ display:inline-block; margin-top:.25rem; font-size:.66rem; font-weight:700; padding:.1rem .35rem; border-radius:6px; background:var(--cz-border); color:var(--cz-muted); }
.czr-dia .czr-badge.is-50{ background:var(--cz-ok-soft); color:var(--cz-primary); }
.czr-dia .czr-badge.is-25{ background:var(--cz-warn-soft); color:var(--cz-warn); }
.czr-dia .czr-badge.is-0{ background:#fdecec; color:#b02a37; }
.czr-dia:hover{ border-color:var(--cz-primary); }
.czr-dia.is-sel{ border-color:var(--cz-primary); background:var(--cz-ok-soft); box-shadow:0 0 0 2px rgba(217,169,0,.15) inset; }
.czr-dia.is-off{ opacity:.45; cursor:not-allowed; }
.czr-leyenda{ display:flex; flex-wrap:wrap; gap:.4rem .9rem; margin:.25rem 0 .75rem; }
.czr-dot{ display:inline-block; width:9px; height:9px; border-radius:50%; margin-right:.2rem; vertical-align:middle; background:var(--cz-border); }
.czr-dot.is-50{ background:var(--cz-primary); } .czr-dot.is-25{ background:var(--cz-warn); } .czr-dot.is-0{ background:#b02a37; }
.czr-horas{ display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem; }
@media (max-width:400px){ .czr-horas{ grid-template-columns:repeat(2,1fr); } }
.czr-hora{ border:1px solid var(--cz-border); border-radius:10px; padding:.6rem .4rem; text-align:center; cursor:pointer; background:transparent; font-weight:700; transition:all .16s var(--cz-ease); }
.czr-hora small{ display:block; font-weight:500; font-size:.72rem; color:var(--cz-muted); }
.czr-hora.is-few small{ color:var(--cz-warn); }
.czr-hora:hover{ border-color:var(--cz-primary); }
.czr-hora.is-sel{ border-color:var(--cz-primary); background:var(--cz-primary); color:#fff; }
.czr-hora.is-sel small{ color:rgba(255,255,255,.85); }
.czr-hora.is-off{ opacity:.4; cursor:not-allowed; text-decoration:line-through; }
.czr-empty{ grid-column:1/-1; text-align:center; color:var(--cz-muted); padding:1rem .5rem; font-size:.9rem; }
.czr-dcto-banda{ margin-top:.9rem; border-radius:10px; padding:.6rem .8rem; font-size:.85rem; background:var(--cz-ok-soft); border:1px solid rgba(217,169,0,.2); }
.czr-dcto-banda.is-25{ background:var(--cz-warn-soft); border-color:rgba(185,119,14,.3); }
.czr-dcto-banda.is-0{ background:#fdecec; border-color:rgba(176,42,55,.25); }
/* campos */
.czr-field{ margin-bottom:.85rem; }
.czr-field label{ display:block; font-weight:700; font-size:.85rem; margin-bottom:.3rem; }
.czr-field input[type=text], .czr-field input[type=tel], .czr-field input[type=email], .czr-field input[type=date], .czr-field select{ width:100%; height:46px; border:1px solid var(--cz-border); border-radius:10px; padding:0 .8rem; font-size:.95rem; background:transparent; color:inherit; }
.czr-field input:focus, .czr-field select:focus{ outline:none; border-color:var(--cz-primary); box-shadow:0 0 0 3px rgba(217,169,0,.12); }
.czr-field.is-err input, .czr-field.is-err select{ border-color:#b02a37; }
.czr-err{ display:block; color:#b02a37; font-size:.78rem; margin-top:.25rem; }
.czr-help{ display:block; color:var(--cz-muted); font-size:.76rem; margin-top:.25rem; }
.czr-toggle{ display:flex; gap:.5rem; }
.czr-toggle label{ flex:1; margin:0; }
.czr-toggle input{ position:absolute; opacity:0; width:0; height:0; }
.czr-toggle span{ display:block; text-align:center; padding:.6rem .5rem; border:1px solid var(--cz-border); border-radius:10px; font-weight:700; font-size:.88rem; cursor:pointer; }
.czr-toggle input:checked + span{ border-color:var(--cz-primary); background:var(--cz-ok-soft); color:var(--cz-primary); }
.czr-check{ display:flex; gap:.6rem; align-items:flex-start; font-size:.82rem; line-height:1.4; cursor:pointer; margin:.25rem 0 0; }
.czr-check input{ margin-top:.2rem; flex:0 0 auto; }
.czr-check.is-err span{ color:#b02a37; }
.czr-autoc{ position:relative; }
.czr-sugs{ position:absolute; left:0; right:0; top:100%; background:#fff; border-radius:10px; box-shadow:var(--cz-shadow-lg); z-index:5; display:none; overflow:hidden; }
.dark-mode .czr-sugs{ background:#2a2d2e; }
.czr-sugs.is-open{ display:block; }
.czr-sug{ padding:.55rem .8rem; cursor:pointer; font-size:.9rem; }
.czr-sug small{ color:var(--cz-muted); }
.czr-sug:hover, .czr-sug.is-act{ background:var(--cz-ok-soft); }
/* avisos */
.czr-avisos:empty{ display:none; }
.czr-box{ border-radius:10px; padding:.65rem .85rem; font-size:.85rem; border:1px solid var(--cz-border); background:rgba(0,0,0,.02); margin-top:.5rem; line-height:1.45; }
.czr-box.is-warn{ background:var(--cz-warn-soft); border-color:rgba(185,119,14,.3); color:#6b4a06; }
.czr-box.is-block{ background:#fdecec; border-color:rgba(176,42,55,.3); color:#7a1f28; }
.czr-box.is-ok{ background:var(--cz-ok-soft); border-color:rgba(217,169,0,.25); color:#0e5a40; }
.dark-mode .czr-box.is-warn{ color:#f3d9a4; } .dark-mode .czr-box.is-block{ color:#f5b5bd; } .dark-mode .czr-box.is-ok{ color:#a9e5cf; }
/* confirmación */
.czr-ok-head{ text-align:center; padding:.5rem 0 1rem; }
.czr-ok-ico{ width:64px; height:64px; border-radius:50%; background:var(--cz-ok-soft); color:var(--cz-primary); font-size:2rem; display:flex; align-items:center; justify-content:center; margin:0 auto .75rem; animation:cz-pop .4s var(--cz-ease); }
@keyframes cz-pop{ from{ transform:scale(.6); opacity:0 } to{ transform:scale(1); opacity:1 } }
.czr-ok-code{ text-align:center; font-size:.9rem; padding:.6rem; border:1px dashed var(--cz-primary); border-radius:10px; }
.czr-ok-code b{ font-size:1.3rem; letter-spacing:.06em; color:var(--cz-primary); }
.czr-ok-code .btn-copy, .cz-pago .btn-copy{ border:1px solid var(--cz-border); background:transparent; border-radius:8px; padding:.25rem .55rem; font-size:.78rem; margin-left:.4rem; color:inherit; }
.czr-ok-datos{ margin-top:.9rem; font-size:.92rem; }
.czr-ok-datos div{ display:flex; gap:.6rem; padding:.35rem 0; border-bottom:1px solid var(--cz-border); }
.czr-ok-datos div i{ color:var(--cz-primary); width:18px; text-align:center; }
.czr-ok-acciones{ display:grid; grid-template-columns:repeat(2,1fr); gap:.5rem; margin-top:.9rem; }
.czr-ok-acciones a{ display:flex; align-items:center; justify-content:center; gap:.4rem; border:1px solid var(--cz-border); border-radius:10px; padding:.6rem .5rem; font-size:.85rem; font-weight:600; color:inherit; text-decoration:none; }
.czr-ok-acciones a:hover{ border-color:var(--cz-primary); color:var(--cz-primary); }
.czr-alt-grp{ margin-top:.9rem; }
.czr-alt-grp h6{ font-size:.85rem; font-weight:700; margin-bottom:.4rem; }
.czr-alt-grp .cz-slots{ display:flex; flex-wrap:wrap; gap:.4rem; }
.czr-alt-grp .cz-slot{ cursor:pointer; }
.czr-loading{ text-align:center; padding:1.5rem; color:var(--cz-muted); }
.czr-loading i{ display:inline-block; width:22px; height:22px; border:3px solid var(--cz-border); border-top-color:var(--cz-primary); border-radius:50%; animation:czr-spin .8s linear infinite; }
@keyframes czr-spin{ to{ transform:rotate(360deg) } }
body.cz-modal-open{ overflow:hidden; }
@keyframes czr-fade{ from{ opacity:0 } to{ opacity:1 } }

/* crédito del mapa: mínimo y translúcido (la licencia de OpenStreetMap exige mantenerlo) */
.cz-map .leaflet-control-attribution, .leaflet-container .leaflet-control-attribution{ background:rgba(255,255,255,.55); color:#8a9399; font-size:9px; line-height:1.2; padding:1px 5px; border-radius:6px 0 0 0; box-shadow:none; }
.leaflet-container .leaflet-control-attribution a{ color:#8a9399; text-decoration:none; }
.leaflet-container .leaflet-control-attribution:hover{ background:rgba(255,255,255,.9); }
.czr-accion{ display:inline-block; margin-left:.4rem; border:1px solid currentColor; background:transparent; color:inherit; border-radius:8px; padding:.15rem .55rem; font-size:.78rem; font-weight:700; cursor:pointer; }
.czr-accion:hover{ background:rgba(0,0,0,.05); }
.czr-box.is-sincupo{ background:#f4f6f8; border-color:var(--cz-border); color:#3d474d; }
.czr-sin-cupos{ margin:.25rem 0 .75rem; }
#czr-ok-detalle .cz-liq-row b.text-right{ text-align:right; max-width:60%; }
#czr-ok-detalle .cz-liq{ font-size:.9rem; }

/* --- landing de municipio: plazos, lista de sedes, pasos, faq --- */
.cz-plazo{ display:flex; align-items:center; gap:.9rem; border-radius:var(--cz-radius-sm); padding:.9rem 1rem; background:#fff; border:1px solid var(--cz-border); }
.dark-mode .cz-plazo{ background:#1f2122; }
.cz-plazo-pct{ font-size:1.9rem; font-weight:800; letter-spacing:-.03em; color:var(--cz-primary); }
.cz-plazo.is-25 .cz-plazo-pct{ color:var(--cz-warn); }
.cz-sedes-lista li{ padding:.75rem 0; border-bottom:1px solid var(--cz-border); }
.cz-sedes-lista li:first-child{ padding-top:0; }
.cz-sede-link{ color:inherit; text-decoration:none; }
.cz-sede-link:hover{ color:var(--cz-primary); }
.cz-box-info{ border-radius:var(--cz-radius-sm); border:1px solid var(--cz-border); padding:.85rem 1rem; background:rgba(0,0,0,.02); line-height:1.5; }
.cz-pasos{ list-style:none; counter-reset:cz; padding:0; margin:0; }
.cz-pasos li{ position:relative; padding:0 0 1rem 2.6rem; counter-increment:cz; }
.cz-pasos li::before{ content:counter(cz); position:absolute; left:0; top:0; width:32px; height:32px; border-radius:50%; background:var(--cz-ok-soft); color:var(--cz-primary); font-weight:800; display:flex; align-items:center; justify-content:center; }
.cz-pasos li b{ display:block; }
.cz-pasos li span{ font-size:.9rem; color:var(--cz-muted); }
.cz-faq-item{ border-bottom:1px solid var(--cz-border); padding:.85rem 0; }
.cz-faq-item summary{ cursor:pointer; font-weight:700; list-style:none; display:flex; justify-content:space-between; gap:1rem; }
.cz-faq-item summary::-webkit-details-marker{ display:none; }
.cz-faq-item summary::after{ content:'+'; color:var(--cz-primary); font-weight:800; }
.cz-faq-item[open] summary::after{ content:'–'; }
.cz-faq-a{ padding-top:.5rem; line-height:1.55; }
.cz-dep .cz-chip.is-active{ font-weight:700; }
.czr-pago{ border-radius:var(--cz-radius-sm); border:1px solid rgba(217,169,0,.35); background:var(--cz-ok-soft); padding:.9rem 1rem; }
.czr-pago-head{ font-weight:800; font-size:1rem; color:var(--cz-primary); margin-bottom:.25rem; }
.czr-pago .cz-pago-monto{ font-size:1.35rem; }
/* [PAGOS] Card B: la multa se paga al SIMIT (enlace oficial), acento azul para no
   confundirla con el pago del curso a la CIA (naranja) */
.czr-multa{ border-radius:var(--cz-radius-sm); border:1px solid rgba(13,110,253,.35); background:#eef4ff; padding:.9rem 1rem; }
.czr-multa .czr-pago-head{ color:#0d6efd; }

/* ---- consulta SIMIT (paso 2 del modal de reserva) ------------------- */
.czr-simit{ border:1.5px solid #e3e9f2; border-radius:12px; padding:14px; margin-bottom:16px; background:#f8fbff; }
.czr-simit.is-collapsed .czr-simit-form,
.czr-simit.is-collapsed .czr-simit-consent,
.czr-simit.is-collapsed .czr-simit-res{ display:none; }
/* [SIMIT] aviso de degradación: permanece visible aunque la caja esté colapsada (botón Reintentar) */
.czr-simit.is-collapsed .czr-simit-res.is-backup{ display:block; margin-top:10px; }
/* [SIMIT] sello de consulta lícita + widget Cloudflare Turnstile */
.czr-simit-legal{ margin-top:10px; border:1.5px dashed rgba(242,101,34,.35); border-radius:10px; padding:10px 12px; background:var(--cz-ok-soft, #e5f6ef); }
.czr-simit-legal-t{ font-size:13px; font-weight:700; color:#0d7a54; margin-bottom:3px; }
.czr-simit-legal small{ display:block; color:#41525f; line-height:1.45; font-size:11.5px; }
.czr-ts{ margin-top:8px; min-height:65px; }
.czr-simit-top b{ display:block; font-size:14px; margin-bottom:2px; }
.czr-simit-top small{ color:#6b7785; line-height:1.4; display:block; }
.czr-simit-form{ margin-top:10px; align-items:flex-end; }
.czr-simit-consent{ margin-top:10px; font-size:12px; }
.czr-simit-res{ margin-top:10px; }
.czr-sim-item{ display:block; width:100%; text-align:left; background:#fff; border:1.5px solid #e3e9f2; border-radius:10px; padding:10px 12px; margin-bottom:8px; transition:border-color .15s, box-shadow .15s; }
.czr-sim-item:hover{ border-color:var(--cz-primary); }
.czr-sim-item.is-sel{ border-color:var(--cz-primary); box-shadow:0 0 0 3px rgba(242,101,34,.12); }
.czr-sim-item-t{ display:flex; justify-content:space-between; gap:8px; font-size:13.5px; line-height:1.35; }
.czr-sim-item-m{ font-size:12px; color:#6b7785; margin-top:2px; }
.czr-sim-item-b{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; }
.czr-sim-badge{ font-size:11px; font-weight:700; padding:3px 8px; border-radius:20px; }
.czr-sim-badge.is-si{ background:#e5f6ef; color:#0d7a54; }
.czr-sim-badge.is-no{ background:#f1f3f5; color:#6b7785; }
.czr-sim-badge.is-unk{ background:#fff4e0; color:#9a6a00; }
.czr-sim-est{ font-size:11px; padding:2px 8px; border-radius:20px; background:#fdeaea; color:#b02a2a; white-space:nowrap; }
.czr-sim-est.is-pag{ background:#e5f6ef; color:#0d7a54; }
.czr-sim-est.is-coac{ background:#fdeaea; color:#b02a2a; }
.czr-sim-valor{ margin-left:auto; font-weight:800; font-size:14px; }
.czr-sim-dcto{ font-size:11px; font-weight:700; color:#0d7a54; }
.czr-sim-spin{ display:inline-block; width:14px; height:14px; border:2px solid #cfe3da; border-top-color:var(--cz-primary); border-radius:50%; vertical-align:-2px; margin-right:6px; animation:czr-spin .8s linear infinite; }
@keyframes czr-spin{ to{ transform:rotate(360deg); } }
.czr-linklike{ background:none; border:none; color:var(--cz-primary); text-decoration:underline; padding:0; font-size:inherit; cursor:pointer; }

/* ===== landing de ciudad v2 (sep-2026): guía, organismo, multas, centro más cercano ===== */
.cz-guia p{ line-height:1.65; margin-bottom:.9rem; }
.cz-guia p:last-child{ margin-bottom:0; }
.cz-guia-editorial{ border-left:3px solid var(--cz-primary); padding-left:.9rem; font-size:1.02em; }
.cz-org, .cz-multas{ border-radius:var(--cz-radius-sm); border:1px solid var(--cz-border); padding:1rem 1.1rem; background:#fff; }
.dark-mode .cz-org, .dark-mode .cz-multas{ background:#1f2122; }
.cz-org-links{ display:flex; flex-wrap:wrap; gap:.5rem 1rem; }
.cz-org-links a{ white-space:nowrap; }
.cz-tabla{ width:100%; border-collapse:collapse; font-size:14px; }
.cz-tabla th{ text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:var(--cz-muted, #6b7280); padding:.35rem .4rem; border-bottom:1px solid var(--cz-border); }
.cz-tabla td{ padding:.45rem .4rem; border-bottom:1px solid var(--cz-border); white-space:nowrap; }
.cz-tabla tr:last-child td{ border-bottom:none; }
.cz-tabla .cz-ok{ color:#0d7a54; font-weight:700; }
.cz-cercana{ display:flex; gap:1rem; align-items:center; flex-wrap:wrap; border-radius:var(--cz-radius); padding:1rem 1.15rem; background:#fff7ed; border:1px solid #fed7aa; }
.dark-mode .cz-cercana{ background:#2a2419; border-color:#5a4325; }
.cz-cercana-ico{ width:42px; height:42px; border-radius:50%; background:#ffedd5; color:#b45309; display:flex; align-items:center; justify-content:center; font-size:20px; flex:0 0 42px; }
.cz-cercana-txt{ flex:1 1 260px; }
@media (max-width:575px){ .cz-tabla{ font-size:13px; } .cz-tabla td, .cz-tabla th{ padding:.35rem .25rem; } }

/* ===== [FUNNEL] Landing CRO · efectos y componentes (2026-09-21) ===== */
.badge-square{border-radius:6px}
.cz-trust{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.7rem 1.8rem}
.cz-trust-badge{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;font-size:14px;color:#3a4a45;white-space:nowrap}
.cz-trust-badge i{font-size:1.05rem}
/* Números / propuesta de valor (gradiente de marca, reemplaza al resultbg lila del template) */
.cz-stats-bg{background:linear-gradient(135deg,#D9A900 0%,#0c5a44 55%,#09433a 100%)}
.cz-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:16px;height:100%;transition:transform .25s ease,background .25s ease}
.cz-stat:hover{transform:translateY(-4px);background:rgba(255,255,255,.13)}
.cz-stat .display-3{line-height:1.05}
/* Workflow · círculo del icono */
.cz-wf{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-left:auto;margin-right:auto}
.cz-wf i{font-size:2.5rem;color:var(--cz-primary);line-height:1}
.shadow-workflow{transition:transform .25s ease,box-shadow .25s ease}
.shadow-workflow:hover{transform:translateY(-6px)}
/* Beneficios */
.cz-benefit{background:#fff;border:1px solid #eef1f0;border-radius:16px;padding:1.6rem 1.4rem;transition:transform .2s ease,box-shadow .2s ease}
.cz-benefit:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(217,169,0,.12)}
.cz-benefit-ic{width:54px;height:54px;border-radius:14px;background:rgba(217,169,0,.14);color:var(--cz-primary);display:flex;align-items:center;justify-content:center;font-size:1.55rem;margin-bottom:1rem}
/* CTA final */
.cz-cta-bg{background:linear-gradient(135deg,#0c5a44 0%,#09433a 100%)}
.cz-cta-bg .btn-light{color:#0c5a44}
@media (max-width:575px){.cz-wf{width:78px;height:78px}.cz-wf i{font-size:2rem}.cz-stat .display-3{font-size:2.4rem}}
/* ===== [FUNNEL] fin Landing CRO ===== */

/* ===== [FUNNEL] Footer alineado a la marca (verde) · páginas del funnel ===== */
.footer-dark{background:#15171c !important}
.footer-dark .bg-dark-lgt{background:rgba(255,255,255,.06) !important;border-color:rgba(255,255,255,.14) !important}
.footer-dark .icon-lg.footer-dark{background:rgba(255,255,255,.10) !important}
.footer-dark .text-ultra{color:rgba(255,255,255,.72) !important}
.footer-dark .text-ultra:hover{color:#fff !important}
.footer-dark .btn-dark{background:rgba(255,255,255,.10) !important;border-color:transparent !important}
.footer-dark .btn-dark:hover{background:rgba(255,255,255,.18) !important}
.footer-dark .btop-1{border-color:rgba(255,255,255,.12) !important}
/* ===== [FUNNEL] fin Footer ===== */

/* ===== [FUNNEL] Paso 1 · consulta por cédula en el home (wizard v3) ===== */
.cz-consulta{max-width:640px;background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(11,63,51,.22);padding:20px 20px 18px;margin-bottom:14px}
.cz-consulta-head{margin-bottom:12px}
.cz-consulta-t{display:block;font-weight:800;font-size:1.05rem;color:#15171c}
.cz-consulta-t .bi{color:var(--cz-primary)}
.cz-consulta-s{display:block;font-size:.86rem;color:#4a5059;margin-top:3px;line-height:1.4}
.cz-consulta-row{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}
.cz-consulta-row #cz-h-td{flex:0 0 84px;border:1px solid #e5e8ec;border-radius:10px;padding:0 8px;font-weight:700;color:#15171c;background:#f8f9fb}
.cz-consulta-doc{position:relative;flex:1 1 190px;display:flex;align-items:center}
.cz-consulta-doc .bi{position:absolute;left:12px;color:#9aa1ac;font-size:1rem;pointer-events:none}
.cz-consulta-doc input{width:100%;border:1px solid #e5e8ec;border-radius:10px;padding:12px 12px 12px 36px;font-size:1rem;color:#123}
.cz-consulta-doc input:focus{outline:none;border-color:var(--cz-primary);box-shadow:0 0 0 3px rgba(217,169,0,.25)}
.cz-consulta-row #cz-h-btn{flex:1 1 100%;padding:12px 16px;font-weight:700;border-radius:10px}
@media(min-width:576px){.cz-consulta-row #cz-h-btn{flex:0 0 auto}}
.cz-consulta-consent{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-size:.78rem;color:#4a5059;line-height:1.35;cursor:pointer}
.cz-consulta-consent input{margin-top:2px;flex:0 0 auto}
.cz-consulta-legal{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed #e5e8ec}
.cz-consulta-sello{font-size:.74rem;color:#4a5059;display:flex;align-items:center;gap:6px}
.cz-consulta-sello .bi{color:var(--cz-primary)}
.cz-consulta.is-listo{box-shadow:0 18px 50px rgba(217,169,0,.28)}
.cz-consulta-or{position:relative;text-align:center;max-width:640px;margin:2px auto 16px}
.cz-consulta-or::before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:rgba(255,255,255,.35)}
.cz-consulta-or span{position:relative;background:transparent;color:rgba(255,255,255,.9);font-size:.8rem;padding:0 12px;text-transform:uppercase;letter-spacing:.06em}
/* resultados de la consulta */
.cz-consulta-res{margin-top:12px}
.cz-consulta-res:empty{margin-top:0}
.czh-box{border-radius:10px;padding:11px 13px;font-size:.85rem;line-height:1.4;background:#f2f7f5;color:#15171c}
.czh-box.is-warn{background:#fff6e6;color:#8a5a00}
.czh-box.is-ok{background:#FFF9D9;color:#5E4800}
.czh-box.is-done{background:#FFF9D9;color:#5E4800;border:1px solid #f8d3c0}
.czh-box.is-done .bi{color:var(--cz-primary)}
.czh-spin{display:inline-block;width:14px;height:14px;border:2px solid rgba(217,169,0,.3);border-top-color:var(--cz-primary);border-radius:50%;vertical-align:-2px;margin-right:6px;animation:czh-rot .7s linear infinite}
@keyframes czh-rot{to{transform:rotate(360deg)}}
.czh-link{background:none;border:0;color:#0b7a52;font-weight:700;text-decoration:underline;padding:0;cursor:pointer;font-size:inherit}
.czh-lista{display:flex;flex-direction:column;gap:10px}
.czh-item{border:1px solid #e2ebe7;border-radius:12px;padding:12px 13px;background:#fff}
.czh-item.is-ok{border-color:#f8d3c0;background:#fbfffd}
.czh-item.is-no{opacity:.86}
.czh-item-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.czh-item-h b{color:#123;font-size:.92rem;line-height:1.25}
.czh-val{font-weight:800;color:#15171c;white-space:nowrap}
.czh-item-m{font-size:.78rem;color:#7a8a84;margin-top:2px}
.czh-item-d{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
.czh-dcto{font-size:.8rem;color:#5E4800}
.czh-item-precio{font-size:.82rem;color:#15171c;margin-top:6px}
.czh-item-precio b{color:#15171c}
.czh-item-no{font-size:.8rem;color:#8a5a00;background:#fff6e6;border-radius:8px;padding:7px 9px;margin-top:8px}
.czh-agendar{margin-top:10px;font-weight:700;border-radius:9px}
.czh-help{color:#4a5059;font-size:.78rem}
/* ===== [FUNNEL] fin consulta home ===== */

/* ===== [FUNNEL] rebrand v4 · público: tinta + amarillo del manual (22-10-2026; antes naranja de tránsito) + blanco (no toca paneles) ===== */
:root{--cz-primary:#725800;}
.dark-mode{--cz-primary:#FFE14A;}
a{color:#725800}
a:hover{color:#5E4800}
.btn-primary,.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active{background-color:#FFD400!important;border-color:#FFD400!important;color:#0E0F12!important}
.btn-primary:hover{background-color:#FFE14A!important;border-color:#FFE14A!important;color:#0E0F12!important}
.btn-outline-primary{color:#725800!important;border-color:#D9A900!important}
.btn-outline-primary:hover,.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active{background-color:var(--cz-primary)!important;border-color:var(--cz-primary)!important;color:#fff!important}
.btn-link{color:var(--cz-primary)!important}
.text-primary{color:var(--cz-primary)!important}
.bg-primary{background-color:#FFD400!important}
.badge-primary{background-color:#FFD400!important;color:#0E0F12!important}
.badge-light .text-primary,.text-primary.bi{color:var(--cz-primary)!important}
.form-control:focus,.custom-select:focus{border-color:var(--cz-primary)!important;box-shadow:0 0 0 3px rgba(217,169,0,.15)!important}
/* footer verde -> negro */
.footer-dark{background:#15171c !important}
/* ===== [FUNNEL] fin rebrand v4 ===== */

/* [FUNNEL] v4 · eyebrow del hero */
.cz-eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--cz-primary)}
.cz-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#D9A900;display:inline-block}

/* ===== [FUNNEL v4] Wizard: multas, sede, resumen ===== */
.czr-assist{display:flex;gap:9px;align-items:flex-start;background:#FFF9D9;border-radius:12px;padding:11px 12px;color:#4a5059;font-size:.86rem;line-height:1.4;margin-bottom:14px}
.czr-assist .bi{color:var(--cz-primary);margin-top:1px;flex:0 0 auto}
.czr-multas{display:flex;flex-direction:column;gap:11px}
.czr-multa{border:1.5px solid #e5e8ec;border-radius:14px;padding:14px;background:#fff}
.czr-multa.is-ok{border-color:#F2DF86;background:#FFFDF2}
.czr-multa.is-no{opacity:.82}
.czr-mu-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.czr-mu-h b{color:#15171c;font-size:.98rem;line-height:1.25}
.czr-mu-val{font-weight:800;color:#15171c;white-space:nowrap}
.czr-mu-m{font-size:.8rem;color:#7a828c;margin-top:3px}
.czr-mu-d{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap;font-size:.84rem;color:#b5561f}
.czr-mu-p{font-size:.86rem;color:#28303a;margin-top:6px}
.czr-mu-p b{color:#15171c}
.czr-mu-no{font-size:.82rem;color:#8a5a00;background:#fff6e6;border-radius:8px;padding:8px 10px;margin-top:9px}
.czr-mu-go{margin-top:11px;width:100%;font-weight:700}
.czr-sede-lista{display:flex;flex-direction:column;gap:10px}
.czr-sede-card{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:1.5px solid #e5e8ec;border-radius:14px;padding:13px 14px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.czr-sede-card:hover{border-color:var(--cz-primary);box-shadow:0 6px 18px rgba(20,22,28,.08)}
.czr-sc-pin{width:38px;height:38px;border-radius:10px;background:#FFF9D9;color:var(--cz-primary);display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:1.1rem}
.czr-sc-t{flex:1;min-width:0}
.czr-sc-t b{display:block;color:#15171c;font-size:.95rem;line-height:1.2}
.czr-sc-t small{color:#7a828c;font-size:.8rem}
.czr-sc-go{color:var(--cz-primary);font-size:1.1rem;flex:0 0 auto}
.czr-sede-pill{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #e5e8ec;border-radius:12px;padding:10px 12px;margin-bottom:14px}
.czr-sp-pin{width:32px;height:32px;border-radius:9px;background:#FFF9D9;color:var(--cz-primary);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.czr-sp-t{flex:1;min-width:0}
.czr-sp-t b{display:block;color:#15171c;font-size:.9rem;line-height:1.2}
.czr-sp-t small{color:#7a828c;font-size:.78rem}
.czr-sp-chg{margin-left:auto;background:none;border:0;color:var(--cz-primary);font-weight:700;font-size:.84rem;cursor:pointer;padding:6px}
.czr-resumen3{background:#fff;border:1px solid #e5e8ec;border-radius:14px;padding:14px;margin:4px 0 16px}
.czr-r3-h{font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#7a828c;margin-bottom:11px;display:flex;align-items:center;gap:7px}
.czr-r3-h .bi{color:var(--cz-primary)}
.czr-r3-row{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid #eef0f3;font-size:.86rem}
.czr-r3-row:last-child{border-bottom:0}
.czr-r3-row span{color:#7a828c}
.czr-r3-row b{color:#15171c;text-align:right}
.czr-r3-row.is-total{margin-top:5px;padding-top:11px;border-top:2px solid #e5e8ec}
.czr-r3-row.is-total span{color:#15171c;font-weight:700}
.czr-r3-row.is-total b{color:var(--cz-primary);font-weight:800;font-size:1.05rem}
/* ===== [FUNNEL v4] fin wizard ===== */

/* [FUNNEL v4] labels de calendario + documento verificado */
.czr-cal-lbl{font-size:.76rem;font-weight:800;color:#15171c;text-transform:uppercase;letter-spacing:.05em;margin:2px 0 10px}
.czr-cal-lbl-hora{margin-top:18px}
.czr-cal-hint{font-weight:600;color:#7a828c;text-transform:none;letter-spacing:0}
#czr-doc.is-locked{background:#f4f5f7;color:#4a5059;cursor:not-allowed;border-style:dashed}
.czr-help .bi{color:var(--cz-primary)}

/* =====================================================================
   Páginas institucionales (legal, FAQ, contacto) · 22-09-2026
   ===================================================================== */
.cz-breadcrumb{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.cz-breadcrumb li{color:rgba(255,255,255,.65)}
.cz-breadcrumb li+li:before{content:"›";margin-right:.35rem;opacity:.6}
.cz-breadcrumb a{color:rgba(255,255,255,.85);text-decoration:underline}
.cz-breadcrumb a:hover{color:#fff}

.cz-legal{max-width:70ch;line-height:1.7}
.cz-legal h2{margin-top:2.25rem;margin-bottom:.75rem;font-weight:700}
.cz-legal p,.cz-legal li{color:#3d434d}
.cz-legal ul,.cz-legal ol{padding-left:1.15rem;margin-bottom:1.1rem}
.cz-legal li{margin-bottom:.45rem}
.cz-legal a{text-decoration:underline}
.cz-legal-table th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#6c7480;font-weight:700}
.cz-legal-table td{font-size:.92rem;vertical-align:top}
.cz-legal-side{position:sticky;top:1.5rem}

.cz-faq .cz-faq-item{border:1px solid #e7e9ee;border-radius:12px;padding:0;margin-bottom:.75rem;background:#fff}
.cz-faq summary{cursor:pointer;padding:1rem 1.15rem;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.cz-faq summary::-webkit-details-marker{display:none}
.cz-faq summary:after{content:"+";font-size:1.35rem;line-height:1;color:var(--cz-primary,var(--cz-primary));flex:0 0 auto}
.cz-faq .cz-faq-item[open] summary:after{content:"–"}
.cz-faq .cz-faq-a{padding:0 1.15rem 1.15rem;color:#3d434d;line-height:1.7}
.cz-faq .cz-faq-a a{text-decoration:underline}

.cz-form-contacto .czr-field{margin-bottom:1rem}
.cz-form-contacto label{font-weight:600;display:block;margin-bottom:.35rem}
.cz-form-contacto input,.cz-form-contacto select,.cz-form-contacto textarea{width:100%;border:1px solid #d9dde4;border-radius:10px;padding:.7rem .85rem;font-size:1rem}
.cz-form-contacto input:focus,.cz-form-contacto select:focus,.cz-form-contacto textarea:focus{outline:2px solid var(--cz-primary,var(--cz-primary));outline-offset:1px;border-color:transparent}
.czr-box-ok{background:#e8f6ee;border:1px solid #bfe3ce;color:#1c6b3e;border-radius:12px;padding:.9rem 1.1rem}
.czr-box-info{background:#eef4ff;border:1px solid #cfe0ff;color:#1c3f77;border-radius:12px;padding:1rem 1.15rem;line-height:1.65}
.czr-check-opt span{color:#6c7480}

@media (prefers-color-scheme: dark){
  .dark-mode .cz-legal p,.dark-mode .cz-legal li{color:#cfd4dc}
  .dark-mode .cz-faq .cz-faq-item{background:#1b1e24;border-color:#2b2f37}
}

/* ===== [FUNNEL 22-09-2026] Resumen de los datos del SIMIT ==========================
   Lo que reporta el estado de cuenta se muestra, no se edita: un dato cambiado aquí no
   cambia lo que el organismo de tránsito tiene registrado, y haría que el descuento
   calculado no corresponda con el que van a aplicar. Los campos siguen en el formulario,
   rellenos y ocultos, para que viajen con la reserva. */
.czr-simit-resumen{border:1px solid rgba(0,0,0,.10);border-radius:12px;padding:14px 16px;background:rgba(0,0,0,.02);margin-bottom:16px}
.czr-resumen-t{font-weight:700;font-size:14px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.czr-resumen-t i{opacity:.7}
.czr-resumen-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0 0 8px}
.czr-resumen-dl dt{font-size:13px;opacity:.72;font-weight:500;margin:0}
.czr-resumen-dl dd{font-size:14px;font-weight:600;margin:0;word-break:break-word}
@media (max-width:420px){.czr-resumen-dl{grid-template-columns:1fr;gap:2px 0}.czr-resumen-dl dd{margin-bottom:6px}}
/* multa que no aplica: se ve, se entiende por qué, y no se puede tocar */
.czr-sim-item.is-no{width:100%;text-align:left;cursor:default;opacity:.72;background:transparent}
.czr-sim-item.is-no .czr-sim-badge.is-no{white-space:normal;line-height:1.35}

/* ===== [LANDING INSTITUCIONAL 23-09-2026] Las landings de ciudad y la ficha de sede siguen el patrón visual del
   wizard único: escudo institucional, un solo color de acción, días como tarjetas (.czr-dia) y horas en rejilla
   con cupos (.czr-hora). Nada de píldoras naranjas rellenas: el naranja queda para la acción principal. ===== */
.cz-inst-kicker{ display:inline-flex; align-items:center; gap:.55rem; font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--cz-muted); margin-bottom:.65rem; }
.cz-inst-kicker::before{ content:''; width:26px; height:26px; border-radius:8px; flex:0 0 auto; background:var(--cz-primary) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'><path d='M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 0 0-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.8 11.8 0 0 0 2.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7 7 0 0 0 1.048-.625 11.8 11.8 0 0 0 2.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.54 1.54 0 0 0-1.044-1.263 63 63 0 0 0-2.887-.87C9.843.266 8.69 0 8 0m2.146 5.146a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 7.793z'/></svg>") center/15px no-repeat; }
.cz-inst-sello{ display:inline-flex; align-items:center; gap:.35rem; font-size:.78rem; font-weight:700; color:#0e5a40; background:#e8f6ee; border:1px solid #bfe3ce; border-radius:999px; padding:.22rem .7rem; white-space:nowrap; }
.cz-inst-sello .bi{ color:#1c6b3e; }
.dark-mode .cz-inst-sello{ background:rgba(28,107,62,.18); color:#a9e5cf; border-color:rgba(28,107,62,.4); }
.cz-h-inst{ font-weight:800; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; color:var(--cz-muted); margin-bottom:.85rem; display:flex; align-items:center; gap:.5rem; }
.cz-h-inst .bi{ color:var(--cz-primary); }
.cz-inst-nota{ display:flex; align-items:flex-start; gap:.5rem; font-size:.8rem; color:var(--cz-muted); line-height:1.45; margin:.9rem 0 0; }
.cz-inst-nota .bi{ color:var(--cz-primary); margin-top:.1rem; }
/* días de la ciudad (Hoy / Mañana / otra fecha) como las tarjetas de día del wizard; el JS sigue leyendo .cz-chip[data-fecha] */
#cz-fechas.cz-dias-inst{ display:flex; gap:.45rem; flex-wrap:wrap; }
#cz-fechas.cz-dias-inst .cz-chip{ flex:0 0 auto; min-width:78px; border-radius:12px; padding:.5rem .65rem .45rem; text-align:center; line-height:1.15; background:#fff; color:inherit; font-weight:600; transform:none; }
#cz-fechas.cz-dias-inst .cz-chip small{ display:block; font-size:.66rem; text-transform:uppercase; letter-spacing:.05em; color:var(--cz-muted); font-weight:700; }
#cz-fechas.cz-dias-inst .cz-chip b{ display:block; font-size:1.15rem; line-height:1.2; }
#cz-fechas.cz-dias-inst .cz-chip:hover{ border-color:var(--cz-primary); }
#cz-fechas.cz-dias-inst .cz-chip.is-active{ background:var(--cz-ok-soft); color:inherit; border-color:var(--cz-primary); box-shadow:0 0 0 2px rgba(217,169,0,.15) inset; }
#cz-fechas.cz-dias-inst .cz-chip.is-active small{ color:var(--cz-primary); }
#cz-fechas.cz-dias-inst label.cz-chip{ display:flex; flex-direction:column; align-items:center; justify-content:center; }
#cz-fechas.cz-dias-inst label.cz-chip input[type=date]{ font-size:.82rem; border:0; background:transparent; color:inherit; width:8.4rem; font-weight:600; }
.dark-mode #cz-fechas.cz-dias-inst .cz-chip{ background:transparent; }
/* cupos por horario de la ciudad: misma rejilla que las horas del wizard */
.cz-horas{ display:grid; grid-template-columns:repeat(auto-fill, minmax(118px, 1fr)); gap:.5rem; overflow:visible; padding-bottom:0; }
.cz-hora{ border-radius:10px; padding:.6rem .4rem; min-width:0; background:#fff; }
.cz-hora b{ display:block; font-size:.95rem; }
.cz-hora span{ display:block; font-size:.72rem; }
.cz-hora.is-active{ background:var(--cz-primary); border-color:var(--cz-primary); color:#fff; }
.cz-hora.is-active span{ color:rgba(255,255,255,.85); }
.dark-mode .cz-hora{ background:transparent; }
/* horarios en las cards: botones de hora del wizard (blancos, con borde), no píldoras rellenas */
.cz-slot{ background:#fff; border:1px solid var(--cz-border); color:inherit; border-radius:10px; padding:.5rem .7rem; font-weight:700; flex-direction:column; align-items:center; gap:0; line-height:1.2; min-width:5.6rem; text-align:center; }
.cz-slot small{ display:block; font-weight:500; font-size:.72rem; color:var(--cz-muted); }
.cz-slot:hover{ background:#fff; color:inherit; border-color:var(--cz-primary); box-shadow:var(--cz-shadow); transform:translateY(-1px); }
.cz-slot.is-few{ background:#fff; color:inherit; border-color:var(--cz-border); }
.cz-slot.is-few small{ color:var(--cz-warn); }
.cz-slot.is-few:hover{ background:#fff; color:inherit; border-color:var(--cz-primary); }
.cz-slot-more{ border-style:dashed; color:var(--cz-muted); font-weight:600; justify-content:center; }
.dark-mode .cz-slot, .dark-mode .cz-slot:hover, .dark-mode .cz-slot.is-few{ background:transparent; }
/* aviso «encontramos N centros»: sobrio, sin fondo naranja */
.cz-found{ background:#fff; border:1px solid var(--cz-border); box-shadow:var(--cz-shadow); }
.dark-mode .cz-found{ background:transparent; }
/* card de sede: sello de autorizado primero */
.cz-card .cz-rating{ display:flex; flex-wrap:wrap; align-items:center; gap:.35rem .6rem; margin:.25rem 0; }
/* ficha de sede: agenda con el patrón del wizard (día → horas del día). Sin JS se ven todos los días; con JS, el día elegido */
.cz-sede-agenda .czr-dias{ margin-bottom:.6rem; }
.cz-sede-agenda .czr-dia{ background:#fff; }
.dark-mode .cz-sede-agenda .czr-dia{ background:transparent; }
.cz-sede-agenda .czr-dia{ flex-basis:72px; }
.cz-sede-agenda .czr-dia .czr-badge{ white-space:nowrap; }
.cz-sede-agenda .czr-dia .czr-badge.is-cupos{ background:#e8f6ee; color:#1c6b3e; }
.cz-sede-horas-dia{ padding:.4rem 0 .6rem; }
.cz-sede-horas-dia .cz-day{ font-weight:700; font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; color:var(--cz-muted); margin-bottom:.5rem; }
.cz-sede-agenda.is-js .cz-sede-horas-dia:not(.is-on){ display:none; }
.cz-sede-agenda.is-js .cz-sede-horas-dia .cz-day{ display:none; }
.cz-sede-agenda .czr-horas{ grid-template-columns:repeat(auto-fill, minmax(118px, 1fr)); }
a.czr-hora{ display:block; color:inherit; text-decoration:none; background:#fff; }
a.czr-hora:hover{ color:inherit; text-decoration:none; box-shadow:var(--cz-shadow); }
.dark-mode a.czr-hora{ background:transparent; }
/* caja de reserva de la ficha: como el pie del wizard, un solo botón principal */
.cz-book-box .cz-book-sello{ margin-bottom:.75rem; }
.cz-book-box .btn-primary .bi{ margin-right:.3rem; }
.cz-trust{ display:flex; align-items:flex-start; gap:.4rem; text-align:left; line-height:1.4; }
.cz-trust .bi{ color:var(--cz-primary); margin-top:.1rem; flex:0 0 auto; }

/* [CRO 24-09-2026] home: cifras reales de cobertura */
.cz-cifra-n{ font-size:2rem; font-weight:800; color:#15171c; line-height:1.1; }
.cz-cifra-l{ font-size:.82rem; color:var(--cz-muted); }
.dark-mode .cz-cifra-n{ color:#fff; }
/* [CRO 24-09-2026] home: garantías institucionales */
.cz-garantia{ background:#f8f9fa; border:1px solid var(--cz-border); border-radius:14px; padding:1.15rem 1rem; }
.cz-garantia i{ font-size:1.45rem; color:var(--cz-primary); display:block; margin-bottom:.55rem; }
.dark-mode .cz-garantia{ background:transparent; }
/* [CRO 24-09-2026] home: banda final de cierre */
.cz-cta-final{ background:#15171c; }
.cz-cta-final-s{ color:rgba(255,255,255,.55); }
.cz-cta-final-s .bi{ color:var(--cz-primary); }
/* [CRO 24-09-2026] ciudad: banda final de cierre */
.cz-cta-ciudad{ background:#15171c; }
.cz-cta-ciudad .cz-cta-ciudad-s{ color:rgba(255,255,255,.55); }
.cz-cta-ciudad .cz-cta-ciudad-s .bi{ color:var(--cz-primary); }

/* ===== [SIMIT 28-09-2026] Espera aprovechada + animación de resultados ============ */
/* Tarjeta que acompaña la consulta al SIMIT (24-48 s): el usuario completa nombre,
   WhatsApp y correo mientras el puente responde. Estilo limpio e institucional. */
.czr-sim-wait{border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(16,42,67,.05);overflow:hidden;animation:czrSimIn .35s ease both}
.czr-sim-status{display:flex;align-items:center;gap:2px;padding:10px 14px;background:#f4f7fa;border-bottom:1px solid rgba(0,0,0,.06);font-size:12.5px;color:#4a5a6a}
.czr-sim-status .czr-sim-spin{margin-right:6px}
.czr-sim-wait-body{padding:14px 16px 16px}
.czr-sim-wait-t{font-size:14px;font-weight:700;color:#10293f;display:flex;align-items:center;gap:7px}
.czr-sim-wait-t .bi-shield-lock{color:var(--cz-primary,#0d6efd)}
.czr-sim-wait-sub{font-size:12px;color:#6b7b8b;margin:3px 0 12px}
.czr-sim-wait .czr-field{margin-bottom:10px}
.czr-sim-wait .czr-field input{width:100%;border:1px solid rgba(0,0,0,.14);border-radius:8px;padding:9px 12px;font-size:14px;background:#fbfcfd;transition:border-color .15s,box-shadow .15s,background .15s}
.czr-sim-wait .czr-field input:focus{outline:0;border-color:var(--cz-primary,#0d6efd);background:#fff;box-shadow:0 0 0 3px rgba(13,110,253,.12)}
.czr-sim-wait .czr-field label{font-size:12px;font-weight:600;color:#33465a;margin-bottom:4px}
.czr-simw-fila{margin:0 -6px}
.czr-simw-fila>.czr-field{padding:0 6px}
.czr-simw-check{margin-top:4px;font-size:12px;color:#4a5a6a;line-height:1.45}
/* Confirmación tras la espera: el sistema "recuerda" al usuario y sus datos */
.czr-sim-guardado{display:flex;align-items:center;gap:8px;font-size:13px;color:#0d7a54;background:#e5f6ef;border:1px solid #bfe8d8;border-radius:10px;padding:9px 13px;margin-bottom:12px}
.czr-sim-guardado .bi-check2-circle{font-size:16px}
/* Entrada escalonada de las cards de multas: sutil, nada llamativa */
@keyframes czrSimIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.czr-sim-anim .czr-sim-item{animation:czrSimIn .45s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(var(--i,0)*70ms)}
.czr-sim-anim .czr-sim-guardado{animation:czrSimIn .35s ease both}
.czr-sim-anim .czr-box.is-warn{animation:czrSimIn .35s ease both}
@media (prefers-reduced-motion:reduce){.czr-sim-anim .czr-sim-item,.czr-sim-anim .czr-sim-guardado,.czr-sim-anim .czr-box.is-warn,.czr-sim-wait{animation:none}}
/* Resultado debajo de la tarjeta de espera (la conserva, no la reemplaza) */
.czr-sim-ok-ic{color:#0d7a54;font-size:15px;margin-right:2px}
.czr-sim-wait~.czr-simit-lista,.czr-sim-wait~.czr-box{margin-top:12px}
.czr-sim-wait~.czr-sim-guardado{margin-top:12px}

/* ===== [FUNNEL-UX] ronda 2 · paso 1 auto-consulta SIMIT (czr-p1-*) =====
   No edita reglas czr-sim-* (bloque [SIMIT]); solo las referencia para
   integrarse (contadores §2 GIT-WORKFLOW solo suben). */
.czr-p1-estado{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#42505c;background:#f8fbff;border:1px dashed #d9dee3;border-radius:10px;padding:8px 12px;margin-bottom:10px}
.czr-p1-estado:empty{display:none}
.czr-p1-estado.is-ok{color:#0d7a54;border-color:#bfe3d2;background:#f2fbf7}
.czr-p1-datos{border:1.5px solid #e3e9f2;border-radius:12px;padding:14px;margin:12px 0 16px;background:#fff}
.czr-p1-datos-t{font-weight:700;margin-bottom:2px}
.czr-p1-datos-sub{font-size:13px;color:#6b7885;margin-bottom:10px}
.czr-p1-aviso{font-size:13px;color:#8a5a00;background:#fff7e8;border:1px solid #f2dfae;border-radius:8px;padding:6px 10px;margin-bottom:10px}
/* consentimiento pendiente: resaltado amable del checkbox (el checkbox es [SIMIT]) */
.czr-p1-pide-consent .czr-simit-consent{outline:2px solid var(--cz-primary);outline-offset:3px;border-radius:8px}
/* un solo click: el botón queda como respaldo; visible si el auto-disparo no es posible */
.czr-p1-auto #czr-sim-btn{visibility:hidden;height:0;padding:0;margin:0;overflow:hidden}
.czr-p1-auto.czr-p1-sin-token #czr-sim-btn{visibility:visible;height:auto;padding:10px;overflow:visible}
/* la línea de estado vive fuera (#czr-p1-estado): la interna de la tarjeta no se duplica */
.czr-p1-auto #czr-sim-res .czr-sim-wait{display:none}
/* ===== [/FUNNEL-UX] ronda 2 ===== */

/* ===== [FUNNEL-UX] ronda 2 · card de infracción estilo SIMIT (czr-fcm-*) =====
   Paleta: base azul/gris institucional del SIMIT; naranja (--cz-primary) solo
   para tramo vigente y selección; verde para hitos cumplidos. */
.czr-fcm-wrap{--fcm-ink:#1f2a30;--fcm-azul:#14548c;--fcm-bg:#f3f5f7;--fcm-linea:#d9dee3;--fcm-verde:#158660;--fcm-naranja:var(--cz-primary);background:var(--fcm-bg);border:1px solid var(--fcm-linea);border-radius:10px;padding:6px 10px 10px;margin-top:12px}
.czr-fcm{margin:0;background:transparent;border-radius:8px}
/* tarjeta (ronda 5): 3 líneas + CTA ancho; una columna en móvil, rejilla centrada en escritorio */
.czr-fcm-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;padding:2px}
.czr-fcm-card{background:#fff;border:1px solid var(--fcm-linea);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:9px;box-shadow:0 1px 2px rgba(15,23,42,.05)}
.czr-fcm-card.is-no{background:#fafbfc}
/* head de resultados: sutil, con autoridad (conteo estilo «N resultados») */
.czr-fcm-head{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7885;padding:8px 4px 4px}
.czr-fcm-head b{color:var(--fcm-ink)}
/* bloque «¿se puede tumbar?» de las tarjetas que ya no aplican (botón solo maquetado, inhabilitado) */
.czr-fcm-tumba{background:#fff7e8;border:1px solid #f2dfae;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.czr-fcm-tumba-t{font-size:13.5px;font-weight:700;color:#7a4b00;display:flex;align-items:center;gap:7px}
.czr-fcm-tumba-btn{margin-top:2px;min-height:44px;width:100%;border:1.5px dashed #e0d3ae;border-radius:10px;background:#fff;color:#a08c5f;font-size:14px;font-weight:700;font-family:inherit;cursor:not-allowed;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px}
.czr-fcm-inf-i{font-size:12px;color:#98a4ae;cursor:help;font-weight:400;margin-left:3px}
.czr-fcm-rows{display:flex;flex-direction:column;gap:7px;border-top:1px dashed var(--fcm-linea);border-bottom:1px dashed var(--fcm-linea);padding:10px 0}
.czr-fcm-ritem{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.czr-fcm-rlab{flex:0 0 auto;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#8a97a3}
.czr-fcm-rval{font-size:14px;font-weight:700;color:var(--fcm-ink);text-align:right;min-width:0}
.czr-fcm-rval s{font-weight:600;font-size:12.5px;color:#98a4ae;margin-right:6px}
.czr-fcm-ritem.is-dct .czr-fcm-rval{color:var(--fcm-verde);font-size:14.5px}
.czr-fcm-ritem.is-total{border-top:1px solid var(--fcm-linea);padding-top:7px;margin-top:2px}
.czr-fcm-ritem.is-total .czr-fcm-rval{font-size:17px;font-weight:800}
.czr-fcm-meta{margin:0;font-size:11.5px;color:#8a97a3;line-height:1.5}
.czr-fcm-cta{margin-top:2px;min-height:48px;border:0;border-radius:10px;background:var(--fcm-naranja);color:#fff;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:filter .15s;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px}
.czr-fcm-cta:hover,.czr-fcm-cta:active{filter:brightness(.95)}
.czr-fcm-cta.is-sel{background:var(--fcm-verde)}
.czr-fcm-nocta{margin:0;font-size:12.5px;color:#8a5a00;background:#fff7e8;border:1px dashed #f2dfae;border-radius:10px;padding:10px 12px}
.czr-fcm-link{background:none;border:0;padding:6px 0;color:var(--fcm-azul);font-size:15px;font-weight:700;cursor:pointer;text-align:left;font-family:inherit}
.czr-fcm-link u{text-decoration:none}
.czr-fcm-link:hover u{text-decoration:underline}
.czr-fcm-proy-ic{font-size:11px;color:#6b7885}.czr-fcm-sub{font-size:12px;color:#6b7885}
.czr-fcm-fs13{font-size:13px;color:#42505c}
.czr-fcm-fs12{font-size:12px}
.czr-fcm-infr{font-weight:600;border-bottom:1px dotted var(--fcm-linea);cursor:help}
.czr-fcm-eleg{margin-top:4px;font-size:12px;color:var(--fcm-verde);display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.czr-fcm-precios{margin-top:2px;font-size:12px;color:#42505c}
.czr-fcm-no{margin-top:4px;font-size:12px;color:#8a5a00}
.czr-fcm-estimado{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#8a5a00;background:#fff7e8;border:1px solid #f2dfae;border-radius:6px;padding:1px 6px}
.czr-fcm-det .czr-fcm-det-in{background:var(--fcm-bg);padding:12px 14px;border-radius:10px;margin-top:2px}
.czr-fcm-info{background:#eef4fb;border-left:3px solid var(--fcm-azul);border-radius:6px;padding:8px 12px;font-size:13px;color:#33424f;margin-bottom:10px}
.czr-fcm-bar{display:flex;list-style:none;margin:0;padding:6px 0 2px;background:var(--fcm-bg)}
.czr-fcm-bar li{flex:1;position:relative;padding-top:20px;font-size:12px;text-align:center;color:#6b7885}
.czr-fcm-bar li::before{content:'';position:absolute;top:6px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#c6cdd4;border:2px solid #fff;z-index:1}
.czr-fcm-bar li::after{content:'';position:absolute;top:11px;left:calc(-50% + 8px);right:calc(50% + 8px);height:2px;background:var(--fcm-linea)}
.czr-fcm-bar li:first-child::after{display:none}
.czr-fcm-bar li p{margin:2px 0;font-weight:600;font-size:12px}
.czr-fcm-bar .valor{display:block;font-size:14px;font-weight:700;color:var(--fcm-ink)}
.czr-fcm-bar li.is-done{color:var(--fcm-verde)}
.czr-fcm-bar li.is-done::before{background:var(--fcm-verde)}
.czr-fcm-bar li.is-done .valor{color:var(--fcm-verde)}
.czr-fcm-bar li.current{color:var(--fcm-naranja)}
.czr-fcm-bar li.current::before{background:var(--fcm-naranja);box-shadow:0 0 0 3px rgba(217,169,0,.2)}
.czr-fcm-bar li.current .valor{color:var(--fcm-naranja)}
.czr-fcm-bar .badge{background:#fff;border:1px solid var(--fcm-linea);color:#42505c;font-weight:600}
.czr-fcm-total{padding:10px 4px 2px;font-size:14px;color:var(--fcm-ink);text-align:right}
/* entrada escalonada igual que la lista clásica (reusa el keyframes czrSimIn del bloque [SIMIT]) */
.czr-sim-anim .czr-fcm-card{animation:czrSimIn .45s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(var(--i,0)*70ms)}
@media (prefers-reduced-motion:reduce){.czr-sim-anim .czr-fcm-card{animation:none}}
/* móvil: las tarjetas ya son una columna; sólo la barra de tramos se envuelve */
@media (max-width:767px){
  .czr-fcm-cards{grid-template-columns:1fr;padding:0}
  .czr-fcm-card{padding:13px 14px}
  .czr-fcm-ritem{gap:8px}
  .czr-fcm-bar{flex-wrap:wrap}
  .czr-fcm-bar li{min-width:45%}
}
/* ===== [/FUNNEL-UX] ronda 2 · card ===== */

/* ===== [PAGOS · pasos ok] filas de la liquidación con su botón al lado (Neo, 28-sep) ===== */
.cz-liq-row.cz-liq-paso{ align-items:center; }
.cz-liq-paso-n{ color:var(--cz-primary); }
.cz-liq-cta{ display:flex; align-items:center; gap:.45rem; flex-wrap:wrap; justify-content:flex-end; text-align:right; }
.cz-liq-cta .btn-sm{ padding:.22rem .7rem; font-size:.82rem; white-space:nowrap; }
.cz-liq-cta .btn-copy{ border:1px solid var(--cz-border); background:transparent; border-radius:8px; padding:.22rem .55rem; font-size:.78rem; color:inherit; white-space:nowrap; }
.cz-liq-nota{ padding:.6rem .95rem; font-size:.78rem; line-height:1.45; color:#6c757d; border-top:1px dashed var(--cz-border); }
@media (max-width:575.98px){
  .cz-liq-row.cz-liq-paso{ flex-direction:column; align-items:flex-start; gap:.35rem; }
  .cz-liq-cta{ justify-content:flex-start; }
}
/* ===== [/PAGOS · pasos ok] ===== */

/* ===== [PAGOS · modal asistivo SIMIT] guía paso a paso antes de abrir el portal (Neo, 28-sep) ===== */
.czr-mp{ position:fixed; inset:0; z-index:2600; display:flex; align-items:center; justify-content:center; padding:1rem; }
.czr-mp[hidden]{ display:none; }
.czr-mp-back{ position:absolute; inset:0; background:rgba(15,23,42,.55); }
.czr-mp-card{ position:relative; background:var(--cz-surface,#fff); border-radius:var(--cz-radius,14px); box-shadow:0 18px 50px rgba(15,23,42,.25); padding:1.15rem 1.25rem; max-width:430px; width:100%; max-height:88vh; overflow:auto; }
.czr-mp-x{ position:absolute; top:.5rem; right:.6rem; border:0; background:transparent; font-size:1.5rem; line-height:1; color:#6c757d; }
.czr-mp-pill{ margin:.6rem 0; padding:.55rem .75rem; border-radius:10px; background:var(--cz-ok-soft,#e8f5e9); font-size:.88rem; }
.czr-mp-steps{ margin:.2rem 0 .7rem; padding-left:1.25rem; font-size:.9rem; }
.czr-mp-steps li{ padding:.28rem 0; }
.czr-mp-note{ font-size:.76rem; line-height:1.45; color:#6c757d; border-top:1px dashed var(--cz-border,#dfe3e6); padding-top:.55rem; margin-bottom:.8rem; }
.dark-mode .czr-mp-card{ background:#1f2122; }
/* ===== [/PAGOS · modal asistivo] ===== */

/* ===== [PAGOS · resumen 2 pasos] paso 3 anuncia el plan completo (Neo, 28-sep) ===== */
.czr-r3-h2{ margin-top:.35rem; }
.czr-r3-row small{ display:block; font-weight:400; font-size:.76rem; color:#6c757d; }
.czr-r3-row span{ max-width:62%; }
/* ===== [/PAGOS · resumen 2 pasos] ===== */
/* ===== [FUNNEL-UX ronda 3] puente cards SIMIT -> funnel diagnostico (Neo, 28-sep) ===== */
.czr-fcm-diag{ margin-top:.6rem; display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; font-size:.86rem; color:#495057; }
.czr-fcm-diag-btn i{ margin-right:.25rem; }
@keyframes cxlFlash{ 0%,100%{ box-shadow:0 0 0 0 rgba(217,169,0,0); } 50%{ box-shadow:0 0 0 4px rgba(217,169,0,.45); } }
.cxl-flash{ animation:cxlFlash 1.2s ease-in-out 2; border-radius:12px; }
/* ===== [/FUNNEL-UX ronda 3] ===== */
/* ===== [FUNNEL-UX ronda 4] consulta en 2o plano: boton seguir, zona paso 3, tips, caida SIMIT ===== */
#czr-p1-seguir{ display:none; margin-top:.75rem; }
.czr-paso.czr-p1-auto #czr-p1-seguir{ display:block; }
.czr-p3-res{ margin:0 0 1rem; }
.czr-p3-res-t{ font-weight:700; font-size:.92rem; margin-bottom:.45rem; display:flex; align-items:center; gap:.35rem; }
.czr-p3-wait{ border:1px dashed var(--cz-border); border-radius:12px; padding:.9rem 1rem; background:#f8fafc; }
.czr-p3-wait-t{ display:flex; align-items:center; gap:.4rem; font-weight:600; font-size:.9rem; }
.czr-p3-tip{ margin-top:.55rem; font-size:.84rem; color:#495057; min-height:2.4em; transition:opacity .35s; }
.czr-p3-tip.is-out{ opacity:0; }
.czr-p3-caida{ border-left:4px solid #dc3545; font-size:.88rem; }
.czr-p3-caida-acc{ display:flex; gap:.5rem; flex-wrap:wrap; margin-top:.6rem; }
.czr-p3-manual{ margin-top:.6rem; border:1px solid var(--cz-border); border-radius:12px; padding:.85rem; background:#fff; }
.czr-p3-manual-t{ font-weight:700; font-size:.88rem; margin-bottom:.5rem; }
.czr-fcm-cta.is-sel{ background:var(--fcm-verde); }
/* ===== [/FUNNEL-UX ronda 4] ===== */

/* ===== [HERO VIACOL 01-10-2026] hero de la ficha de sede con el lenguaje visual de viacol.co ===== */
.cz-vc-hero{ display:flex; flex-direction:column; gap:18px; }
.cz-vc-card{ display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
  padding:28px 24px; border:1px solid rgba(17,17,19,.1); border-radius:20px; background:#F7F7F8;
  box-shadow:0 2px 6px rgba(15,17,20,.06); overflow:hidden; }
.cz-vc-eyebrow{ display:inline-flex; align-items:center; gap:6px; margin-bottom:10px; padding:4px 12px;
  border-radius:999px; background:rgba(217,169,0,.12); color:#725800; font-size:.72rem; font-weight:800;
  text-transform:uppercase; letter-spacing:.06em; }
.cz-vc-rating{ display:inline-flex; align-items:center; gap:5px; margin-bottom:8px; font-size:.8rem; font-weight:700; color:#725800; }
.cz-vc-rating .bi{ color:var(--cz-primary); }
.cz-vc-h1{ margin:0 0 12px; font-size:clamp(1.7rem,3.4vw,2.6rem); line-height:1.08; font-weight:800;
  letter-spacing:-.025em; text-align:center; color:#111113; }
.cz-vc-sede-u{ text-decoration:underline; text-decoration-color:var(--cz-primary); text-decoration-thickness:3px;
  text-underline-offset:6px; text-decoration-skip-ink:none; }
.cz-vc-oro{ color:#fff; background:var(--cz-primary); display:inline-block; border-radius:.2em; margin-inline:.04em;
  padding:.01em .14em .06em; white-space:nowrap; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
.cz-vc-sub{ margin:0; color:rgba(17,17,19,.66); font-size:.98rem; line-height:1.45; max-width:44ch; }
.cz-vc-actions{ display:flex; justify-content:center; gap:10px; flex-wrap:wrap; width:100%; margin:22px 0 4px; }
.cz-vc-btn{ display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 18px;
  font-size:.9rem; font-weight:800; color:#0E0F12; text-decoration:none; border:1px solid rgba(17,17,19,.12);
  border-radius:10px; background:linear-gradient(180deg,#FFE14A,#FFD400);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), 0 10px 22px rgba(217,169,0,.22);
  min-width:0; flex:0 1 auto; white-space:nowrap; transition:transform .15s, box-shadow .15s; }
.cz-vc-btn:hover,.cz-vc-btn:focus-visible{ background:linear-gradient(180deg,#FFF0A6,#FFE14A); color:#0E0F12;
  text-decoration:none; transform:translateY(-1px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45), 0 17px 30px rgba(217,169,0,.3), 0 1px 1px rgba(17,17,19,.14); }
.cz-vc-btn--calc{ background:#fff; color:#17151a; border-color:rgba(23,21,26,.18);
  box-shadow:0 1px 2px rgba(15,17,20,.06), 0 6px 16px rgba(15,17,20,.05); }
.cz-vc-btn--calc:hover,.cz-vc-btn--calc:focus-visible{ background:#F7F7F8; color:#17151a; border-color:var(--cz-primary); }
.cz-vc-micro{ margin:2px 0 0; color:rgba(17,17,19,.66); font-size:.78rem; text-align:center; }
.cz-vc-trust-label{ margin:12px 0 0; color:rgba(17,17,19,.66); font-size:.82rem; line-height:1.3; text-align:center; }
.cz-vc-trust{ margin-top:12px; padding-top:14px; border-top:1px solid rgba(17,17,19,.08); width:100%;
  display:flex; flex-direction:column; align-items:center; gap:8px; }
.cz-vc-trust-t{ font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:rgba(17,17,19,.5); }
.cz-vc-sellos{ height:44px; width:auto; max-width:100%; }
.cz-vc-trust-m{ font-size:.75rem; color:rgba(17,17,19,.55); }
.cz-vc-visual{ border-radius:20px; overflow:hidden; min-height:220px; background:#ededee; margin:0;
  box-shadow:0 14px 36px rgba(17,17,19,.1); }
.cz-vc-visual img{ width:100%; height:100%; min-height:220px; display:block; object-fit:cover; }
.cz-vc-visual .cz-map{ border-radius:0; }
@media (min-width: 992px){
  .cz-vc-hero{ flex-direction:row; align-items:stretch; gap:28px; }
  .cz-vc-card,.cz-vc-visual{ flex:1 1 0; }
  .cz-vc-card{ padding:28px 28px 22px; }
  .cz-vc-visual,.cz-vc-visual img{ min-height:380px; }
}
@media (max-width: 560px){
  .cz-vc-actions .cz-vc-btn{ flex:1 1 100%; min-width:0; }
}
/* ===== [/HERO VIACOL] ===== */
