/* ASI Administramos · Cotizador */
.asi-cotizador-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(3,22,39,.72);backdrop-filter:blur(5px)}
.asi-cotizador-modal.is-open{display:flex}
.asi-cotizador-dialog{width:min(760px,100%);max-height:min(92vh,900px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 28px 80px rgba(0,0,0,.3);color:#143753;position:relative}
.asi-cotizador-head{padding:26px 30px 18px;background:linear-gradient(135deg,#062e5d,#0a4b83);color:#fff;position:sticky;top:0;z-index:2}
.asi-cotizador-head h2{font-family:Manrope,Arial,sans-serif;font-size:26px;margin:0 40px 6px 0}.asi-cotizador-head p{margin:0;color:#d7e9f7;font-size:13px;line-height:1.45}
.asi-cotizador-close{position:absolute;right:18px;top:17px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:24px;cursor:pointer}
.asi-cotizador-body{padding:26px 30px 30px}.asi-step{display:none}.asi-step.is-active{display:block}.asi-progress{height:5px;background:#e8eff4;border-radius:5px;margin-bottom:22px;overflow:hidden}.asi-progress span{display:block;height:100%;width:33.33%;background:#0a91e8;transition:.25s}
.asi-cotizador-label{display:block;font-size:12px;font-weight:800;margin:0 0 7px;color:#183e5e}.asi-required{color:#e14b4b}.asi-cotizador-input{width:100%;padding:12px 13px;border:1px solid #cbd9e4;border-radius:8px;font:13px "DM Sans",Arial,sans-serif;color:#173b59;outline:none;margin-bottom:15px}.asi-cotizador-input:focus{border-color:#0b8fe6;box-shadow:0 0 0 3px rgba(11,143,230,.1)}
.asi-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.asi-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:8px 0 20px}.asi-option{position:relative}.asi-option input{position:absolute;opacity:0;pointer-events:none}.asi-option label{display:block;border:1px solid #d3e0e9;border-radius:10px;padding:14px 12px;min-height:110px;cursor:pointer;background:#fff;transition:.2s}.asi-option label strong{display:block;font:700 13px Manrope;margin-bottom:6px;color:#073d6e}.asi-option label span{display:block;font-size:11px;line-height:1.35;color:#5b7183}.asi-option input:checked+label{border-color:#0b8fe6;background:#eef8ff;box-shadow:0 0 0 2px rgba(11,143,230,.12)}
.asi-extras{display:grid;gap:9px;margin-top:8px}.asi-check{display:flex;gap:11px;align-items:flex-start;border:1px solid #dbe5ec;border-radius:9px;padding:12px;cursor:pointer}.asi-check input{margin-top:3px;accent-color:#0b8fe6}.asi-check strong{font-size:12px;display:block;margin-bottom:3px}.asi-check span{font-size:10.5px;line-height:1.35;color:#63788a}
.asi-note{background:#f4f8fb;border-left:4px solid #0b8fe6;padding:11px 13px;border-radius:6px;font-size:11px;color:#49677f;line-height:1.4;margin:14px 0}.asi-actions{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.asi-btn{border:0;border-radius:8px;padding:13px 18px;font:800 12px "DM Sans";cursor:pointer}.asi-btn-primary{background:#0b8fe6;color:#fff}.asi-btn-secondary{background:#edf3f7;color:#28516e}.asi-btn-green{background:#23b94c;color:#fff}.asi-btn-email{background:#edf3f7;color:#173f61;border:1px solid #c9d9e4}.asi-result{display:none}.asi-result.is-visible{display:block}.asi-result-card{border:1px solid #dbe5ec;border-radius:13px;overflow:hidden}.asi-result-top{background:#f3f8fb;padding:18px 20px}.asi-result-top small{font-size:10px;color:#668096;font-weight:800;letter-spacing:.08em}.asi-result-top h3{font:800 15px Manrope;margin:5px 0;color:#12446e}.asi-summary{padding:17px 20px;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px}.asi-summary div{font-size:11px;color:#62788a}.asi-summary strong{display:block;color:#183d5a;font-size:12px;margin-top:2px}.asi-total{padding:18px 20px;background:#062e5d;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:15px}.asi-total span{font-size:11px;color:#cfe2ef}.asi-total strong{font:800 27px Manrope}.asi-disclaimer{font-size:11px;color:#61778a;line-height:1.5;padding:16px 20px}.asi-send{display:flex;gap:10px;padding:0 20px 20px}.asi-send .asi-btn{flex:1}.asi-status{font-size:11px;text-align:center;margin-top:10px;color:#567286;min-height:16px}
@media(max-width:650px){.asi-cotizador-body{padding:22px 18px 25px}.asi-cotizador-head{padding:22px 20px 16px}.asi-field-grid,.asi-option-grid,.asi-summary{grid-template-columns:1fr}.asi-option label{min-height:auto}.asi-send{flex-direction:column}.asi-total{align-items:flex-start;flex-direction:column;gap:3px}.asi-total strong{font-size:25px}}

/* v8: servicios adicionales con imagen */
#asiCotizadorForm .asi-extras{gap:12px}
#asiCotizadorForm .asi-check{align-items:center;gap:16px;padding:12px 16px 12px 12px;border:1px solid #dbe5ec;border-radius:12px;background:#fff;transition:border-color .2s,background .2s,box-shadow .2s}
#asiCotizadorForm .asi-check:hover{border-color:#b6d2e8}
#asiCotizadorForm .asi-check::before{content:"";order:-1;flex:0 0 112px;width:112px;height:88px;border-radius:8px;background:#e9f0f5 center/cover no-repeat}
#asiCotizadorForm .asi-extras .asi-check:nth-child(1)::before{background-image:url("../images/srv-conmutador.webp")}
#asiCotizadorForm .asi-extras .asi-check:nth-child(2)::before{background-image:url("../images/srv-agua.webp")}
#asiCotizadorForm .asi-extras .asi-check:nth-child(3)::before{background-image:url("../images/srv-contabilidad.webp")}
#asiCotizadorForm .asi-check input{flex:0 0 22px;width:22px;height:22px;margin:0;padding:0;accent-color:#0b8fe6;cursor:pointer}
#asiCotizadorForm .asi-check>div{flex:1 1 auto;min-width:0;text-align:left}
#asiCotizadorForm .asi-check strong{font:700 15px Manrope,sans-serif;color:#073d6e;margin-bottom:5px}
#asiCotizadorForm .asi-check span{display:block;font-size:12.5px;line-height:1.45;color:#4f6578}
#asiCotizadorForm .asi-check:has(input:checked){border-color:#0b8fe6;background:#f2f9ff;box-shadow:0 0 0 2px rgba(11,143,230,.12)}
@media (max-width:560px){#asiCotizadorForm .asi-check{gap:12px;padding:10px 12px 10px 10px}#asiCotizadorForm .asi-check::before{flex-basis:84px;width:84px;height:72px}#asiCotizadorForm .asi-check strong{font-size:14px}#asiCotizadorForm .asi-check span{font-size:12px}}
