/* Vecino24 guided demonstration. Extend the existing cream/green brand. */
[hidden]{display:none!important}
button{font:inherit}
:where(a,button,summary):focus-visible{outline:3px solid #925016;outline-offset:5px}
.skip-link{position:absolute;top:-100px;left:20px;z-index:10;padding:12px 20px;background:#fff;color:var(--verde-900)}
.skip-link:focus{top:12px}
.boton-wa{background:var(--wa-oscuro)}
.boton{line-height:1.4;text-align:center}
.hero-ctas .boton-wa{max-width:100%}
.hero-nota a{font-weight:600;text-underline-offset:3px}
nav.principal{gap:20px}
.demo{background:#fff;border-top:1px solid #cbded1;border-bottom:1px solid #cbded1;scroll-margin-top:24px}
.demo-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}
.demo-intro .sub{max-width:61ch}
.demo-label{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid #c2d2c8;border-radius:6px;padding:5px 9px;color:var(--verde-900);background:#edf4ef}
.demo-aviso{padding:14px 18px;border-left:3px solid #925016;background:#fff7e9;color:#63390f;margin:24px 0;font-size:.88rem;max-width:85ch}
.demo-casos{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}
.demo-casos button{border:1px solid #bdcfc3;border-radius:10px;padding:12px 16px;min-height:46px;background:#fff;color:var(--verde-900);font-weight:600;cursor:pointer}
.demo-casos button:hover{background:var(--verde-100)}
.demo-casos button[aria-pressed=true]{background:var(--verde-900);color:#fff;border-color:var(--verde-900)}
.demo-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:28px 0 16px}
.demo-heading h3{font-size:1.45rem}
.demo-step{white-space:nowrap;color:var(--tinta-suave);font-size:.88rem}
.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.demo-side{min-width:0;border:1px solid #cbded1;border-radius:18px;overflow:hidden;background:var(--crema)}
.demo-side-heading{padding:19px 22px;background:var(--verde-900);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}
.demo-side-heading h3{font-family:'Sora',sans-serif;font-size:1rem;color:#fff}
.demo-side-heading small{font-size:.72rem;color:#d7eadf}
.demo-conversation{padding:24px;display:flex;flex-direction:column;gap:18px;min-height:320px}
.demo-message{padding:16px;border-radius:14px;max-width:94%;font-size:.96rem;line-height:1.65;overflow-wrap:anywhere}
.demo-message b{display:block;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.demo-message p{margin:0}
.demo-citizen{background:#fff;border:1px solid #cbded1;align-self:flex-end}
.demo-assistant{background:#deeee2;align-self:flex-start}
.demo-panel{padding:24px;background:#fff;height:100%}
.demo-panel dl{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}
.demo-panel dt{font-size:.74rem;color:var(--tinta-suave);margin-bottom:6px}
.demo-panel dd{font-weight:600;color:var(--verde-900);font-size:.97rem;overflow-wrap:anywhere}
.demo-panel .full{grid-column:1/-1}
.demo-panel .estado{display:inline-block;background:#fff2d8;color:#704300;padding:5px 10px;border-radius:6px}
.demo-action{border-top:1px solid #d9e4dd;margin-top:24px;padding-top:20px}
.demo-action h4{font-size:.86rem;margin-bottom:8px;color:var(--verde-900)}
.demo-action p{font-size:.94rem;color:var(--tinta-suave)}
.demo-panel .demo-label{margin-top:22px}
.demo-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:22px 0}
.demo-controls-group{display:flex;gap:10px}
.demo-controls .boton{font-size:.9rem;padding:12px 20px;min-height:46px}
.demo-controls button:disabled{background:#e7ebe8;color:#536158;border:1px solid #bfcac2;box-shadow:none;cursor:default;transform:none}
.demo-reset{border:0;background:transparent;color:var(--verde-800);font-weight:600;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:8px;cursor:pointer}
.demo-note{color:var(--tinta-suave);font-size:.85rem;max-width:92ch}
.demo-nojs{margin:20px 0;padding:16px;border:1px solid #bdcfc3;border-radius:12px}
.demo-closing{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:32px;padding-top:24px;border-top:1px solid #d9e4dd}
.demo-closing p{font-size:.92rem;color:var(--tinta-suave);max-width:53ch}
.demo-closing a{flex-shrink:0}
.recorrido{margin-top:36px;background:#fff;border:1px solid #cbded1;border-radius:18px;padding:28px}
.recorrido h3{font-size:1.4rem;margin-bottom:18px}
.recorrido ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:recorrido}
.recorrido li{counter-increment:recorrido;border-top:2px solid #c4dccd;padding-top:12px}
.recorrido li::before{content:counter(recorrido,decimal-leading-zero);display:block;font-size:.8rem;font-weight:700;color:var(--verde-800);margin-bottom:6px}
.recorrido strong{display:block;font-size:.94rem;margin-bottom:5px}
.recorrido li p,.recorrido-nota{font-size:.84rem;color:var(--tinta-suave)}
.recorrido-nota{margin-top:22px}
.reporte{background:var(--crema-2)}
.reporte-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center}
.reporte-copy .sub{margin-bottom:22px}
.reporte-card{background:#fff;border:1px solid #cbded1;border-radius:18px;overflow:hidden;box-shadow:var(--sombra);min-width:0}
.reporte-top{padding:22px 24px;border-bottom:1px solid #d9e4dd}
.reporte-top h3{font-size:1.35rem;margin:10px 0 3px}
.reporte-top p{font-size:.78rem;color:var(--tinta-suave)}
.reporte-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:22px 24px;gap:14px}
.reporte-stats dt{font-size:.72rem;color:var(--tinta-suave)}
.reporte-stats dd{font-family:'Fraunces',serif;font-size:2rem;font-weight:600;color:var(--verde-900);line-height:1.3}
.reporte-areas{list-style:none;padding:0 24px 24px;display:grid;gap:14px}
.reporte-areas li{display:grid;grid-template-columns:1fr auto;gap:4px 16px;font-size:.83rem}
.reporte-areas meter{grid-column:1/-1;width:100%;height:13px;accent-color:var(--verde-800)}
.reporte-areas meter::-webkit-meter-bar{background:#e3efe7;border:0;border-radius:20px}
.reporte-areas meter::-webkit-meter-optimum-value{background:var(--verde-800);border-radius:20px}
.reporte-foot{padding:16px 24px;border-top:1px solid #d9e4dd;font-size:.76rem;color:var(--tinta-suave);background:#f6faf7}
.ficha{margin-top:36px;padding:26px 30px;border:1px solid #cbded1;background:#fff;border-radius:18px;display:flex;gap:24px;justify-content:space-between;align-items:center}
.ficha h3{font-size:1.35rem;margin-bottom:7px}
.ficha p{font-size:.9rem;color:var(--tinta-suave);max-width:65ch}
.ficha .boton{flex-shrink:0}
.planes-alcance{color:#e0eadf;font-size:.85rem;max-width:88ch;margin-top:24px}
.planes-alcance a{color:#fff;text-underline-offset:4px;font-weight:600}
.plan.destacado::after{content:'Para tu municipio';background:#925016}
.faq-lista{max-width:880px}
.cta-final::before{pointer-events:none}
.cta-final .hero-nota{color:#e1ede5}
@media(max-width:1050px){nav.principal{gap:14px}nav.principal a{font-size:.85rem}}
@media(max-width:920px){.demo-grid,.reporte-grid{grid-template-columns:1fr}.demo-conversation{min-height:0}.demo-closing,.ficha{align-items:flex-start;flex-direction:column}.recorrido ol{grid-template-columns:repeat(2,1fr)}.demo-intro{display:block}}
@media(max-width:560px){.demo-casos{display:grid;grid-template-columns:1fr 1fr;gap:8px}.demo-casos button{padding:12px 8px;font-size:.82rem}.demo-heading{align-items:flex-start;flex-direction:column;gap:8px}.demo-side-heading,.demo-panel,.demo-conversation{padding:18px}.demo-side-heading h3{font-size:.88rem}.demo-side-heading small{font-size:.65rem}.demo-panel dl{gap:14px}.demo-message{font-size:.9rem;max-width:100%;padding:14px}.demo-controls{align-items:stretch;flex-direction:column}.demo-controls-group{display:grid;grid-template-columns:1fr 1fr}.demo-controls .boton{padding:12px 8px;font-size:.81rem}.demo-reset{align-self:center}.recorrido{padding:22px}.recorrido ol{grid-template-columns:1fr}.ficha{padding:24px}.ficha .boton,.demo-closing a{width:100%}.reporte-stats{padding:20px;gap:10px}.reporte-stats dt{font-size:.65rem}.hero{padding-top:46px}.hero-nota{font-size:.82rem}}
