/* ==========================================================================
   IE COTIZADOR
   ========================================================================== */
.iec{
	--iec-panel:  var(--ie-bg-elevated, #24242f);
	--iec-code:   var(--ie-bg-code, #14141b);
	--iec-text:   var(--ie-text, #c8c8d6);
	--iec-head:   var(--ie-heading, #fbfbfd);
	--iec-muted:  var(--ie-muted, #9c9cb0);
	--iec-teal:   var(--ie-teal, #3ac7d4);
	--iec-btn:    var(--ie-teal-btn, #007287);
	--iec-btn-h:  var(--ie-teal-deep, #0092b2);
	--iec-green:  var(--ie-green, #a8c546);
	--iec-amber:  var(--ie-amber, #f2b94b);
	--iec-coral:  var(--ie-coral, #ff6b6b);
	--iec-wa:     var(--ie-whatsapp, #25d366);
	--iec-border: var(--ie-border-strong, rgba(255,255,255,.16));
	--iec-mono:   var(--ie-mono, 'Ubuntu Mono', monospace);
	--iec-sans:   var(--ie-sans, 'Inter', system-ui, sans-serif);
	font-family:var(--iec-sans);
	background:var(--iec-panel);
	border:1px solid var(--iec-border);
	border-radius:var(--ie-radius-lg,14px);
	padding:clamp(24px,4vw,40px);
	max-width:900px;margin:0 auto
}
.iec[x-cloak]{display:none}

/* ---- Progreso ---- */
.iec__barra{height:4px;background:rgba(255,255,255,.07);border-radius:99px;overflow:hidden;margin-bottom:10px}
.iec__progreso{height:100%;background:linear-gradient(90deg,var(--iec-teal),var(--iec-green));border-radius:99px;transition:width .35s cubic-bezier(.2,.8,.2,1)}
.iec__contador{font-family:var(--iec-mono);font-size:12.5px;color:var(--iec-muted);margin:0 0 26px}

/* ---- Paso ---- */
.iec__pregunta{font-family:var(--iec-mono);font-weight:400;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.3;color:var(--iec-head);margin:0 0 10px}
.iec__ayuda{font-size:14.5px;font-weight:300;color:var(--iec-muted);margin:0 0 24px;line-height:1.6}
.iec__info{background:var(--iec-code);border-left:3px solid var(--iec-teal);border-radius:0 8px 8px 0;padding:16px 18px;font-size:15px;font-weight:300;line-height:1.7;color:var(--iec-text)}

/* ---- Opciones ---- */
.iec__opciones{display:grid;gap:12px}
.iec__opciones--1{grid-template-columns:1fr}
.iec__opciones--2{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.iec__opciones--3{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}

.iec .iec__op{
	position:relative;display:flex;align-items:flex-start;gap:13px;text-align:left;
	background:var(--iec-code)!important;background-image:none!important;
	border:1px solid var(--iec-border)!important;border-radius:10px!important;
	padding:18px 18px!important;margin:0!important;height:auto!important;width:100%;
	color:var(--iec-text)!important;font-family:var(--iec-sans)!important;font-weight:400!important;
	font-size:15px!important;line-height:1.5!important;letter-spacing:normal!important;text-transform:none!important;
	box-shadow:none!important;cursor:pointer;transition:all .16s
}
.iec .iec__op:hover{border-color:var(--iec-teal)!important;transform:translateY(-1px)}
.iec .iec__op.is-on{border-color:var(--iec-teal)!important;background:rgba(58,199,212,.09)!important;box-shadow:0 0 0 1px var(--iec-teal)}
.iec__op-badge{position:absolute;top:-9px;right:14px;background:var(--iec-amber);color:#2a1f05;font-family:var(--iec-mono);font-weight:700;font-size:10.5px;padding:3px 9px;border-radius:99px}
.iec__op-icono{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:9px;background:rgba(58,199,212,.1);color:var(--iec-teal);flex:none}
.iec__op-icono .ie-icon{width:20px;height:20px}
.iec__op.is-on .iec__op-icono{background:rgba(58,199,212,.2)}
.iec__op-txt{flex:1;min-width:0}
.iec__op-titulo{display:block;font-family:var(--iec-mono);font-size:15px;color:var(--iec-head)}
.iec__op-desc{display:block;font-size:13.5px;font-weight:300;color:var(--iec-muted);margin-top:4px;line-height:1.5}
.iec__op-precio{font-family:var(--iec-mono);font-size:13.5px;color:var(--iec-green);flex:none;white-space:nowrap}

/* ---- Contador de unidades ---- */
.iec__contador-ud{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.iec .iec__ud-btn{display:flex!important;align-items:center;justify-content:center;width:52px!important;height:52px!important;padding:0!important;margin:0!important;background:var(--iec-code)!important;border:1px solid var(--iec-border)!important;border-radius:10px!important;color:var(--iec-head)!important;font-size:24px!important;line-height:1!important;font-weight:400!important;box-shadow:none!important;cursor:pointer;transition:all .16s}
.iec .iec__ud-btn:hover{border-color:var(--iec-teal)!important;color:var(--iec-teal)!important}
.iec__ud-valor{font-family:var(--iec-mono);font-size:2.2rem;color:var(--iec-teal);min-width:2.5ch;text-align:center}
.iec__ud-label{font-size:15px;font-weight:300;color:var(--iec-muted)}

/* ---- Navegación ---- */
.iec__nav{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.07)}
.iec__precio-vivo{text-align:center;flex:1;min-width:130px}
.iec__precio-et{display:block;font-family:var(--iec-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--iec-muted)}
.iec__precio-n{display:block;font-family:var(--iec-mono);font-size:1.15rem;color:var(--iec-teal);margin-top:3px}

.iec .iec__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--iec-mono)!important;font-size:15.5px!important;font-weight:700!important;line-height:1!important;padding:15px 26px!important;margin:0!important;height:auto!important;border:1px solid transparent!important;border-radius:6px!important;box-shadow:none!important;text-decoration:none!important;cursor:pointer;transition:all .18s}
.iec .iec__btn--primary{background:var(--iec-btn)!important;color:#fff!important}
.iec .iec__btn--primary:hover{background:var(--iec-btn-h)!important}
.iec .iec__btn--primary:disabled{opacity:.6;cursor:progress}
.iec .iec__btn--ghost{background:transparent!important;border-color:var(--iec-border)!important;color:var(--iec-muted)!important;font-weight:400!important}
.iec .iec__btn--ghost:hover{color:var(--iec-head)!important;border-color:var(--iec-btn-h)!important}
.iec .iec__btn--wa{background:var(--iec-wa)!important;color:#0b1a10!important}

.iec__error{color:var(--iec-coral);font-family:var(--iec-mono);font-size:13.5px;margin:16px 0 0}

/* ---- Resultado ---- */
.iec__res-kicker{font-family:var(--iec-mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--iec-teal);margin:0 0 10px}
.iec__res-titulo{font-family:var(--iec-mono);font-weight:400;font-size:1.2rem;color:var(--iec-head);margin:0 0 8px}
.iec__res-precio{font-family:var(--iec-mono);font-weight:700;font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;color:var(--iec-teal);margin:0 0 6px}
.iec__res-iva{font-family:var(--iec-mono);font-size:12.5px;color:var(--iec-muted);margin:0 0 14px}
.iec__res-plazo{font-size:15px;font-weight:300;color:var(--iec-text);margin:0 0 18px}
.iec__res-plazo strong{color:var(--iec-green);font-family:var(--iec-mono);font-weight:400}
.iec__res-texto{font-size:15px;font-weight:300;line-height:1.7;color:var(--iec-muted);margin:0 0 26px;max-width:62ch}

.iec__desglose{background:var(--iec-code);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:20px 22px;margin-bottom:28px}
.iec__desglose-t{font-family:var(--iec-mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--iec-muted);margin:0 0 14px}
.iec__desglose ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.iec__desglose li{display:flex;justify-content:space-between;gap:16px;font-size:14.5px;font-weight:300;color:var(--iec-text);padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.05)}
.iec__desglose li:last-child{border-bottom:0;padding-bottom:0}
.iec__desglose-p{font-family:var(--iec-mono);color:var(--iec-green);white-space:nowrap}

/* ---- Formulario final ---- */
.iec__form{border-top:1px solid rgba(255,255,255,.07);padding-top:26px}
.iec__form-t{font-family:var(--iec-mono);font-size:15.5px;color:var(--iec-head);margin:0 0 18px}
.iec__campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px}
.iec__campo{display:block}
.iec__campo--full{grid-column:1/-1}
.iec__campo>span{display:block;font-family:var(--iec-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--iec-muted);margin-bottom:8px}
.iec__campo>span em{font-style:normal;text-transform:none;letter-spacing:normal}
.iec .iec__campo input,.iec .iec__campo textarea{width:100%;box-sizing:border-box;background:var(--iec-code);border:1px solid var(--iec-border);border-radius:8px;color:var(--iec-head);font-family:var(--iec-sans);font-size:15.5px;font-weight:300;padding:13px 14px;transition:border-color .15s}
.iec .iec__campo input:focus,.iec .iec__campo textarea:focus{outline:none;border-color:var(--iec-teal);box-shadow:0 0 0 3px rgba(58,199,212,.15)}
.iec__consent{display:flex;gap:11px;align-items:flex-start;margin-top:18px;font-size:13.5px;font-weight:300;line-height:1.6;color:var(--iec-muted);cursor:pointer}
.iec__consent input{margin-top:3px;width:17px;height:17px;accent-color:var(--iec-teal);flex:none}
.iec__consent a{color:var(--iec-teal)}
.iec__res-acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center}

/* ---- Confirmación ---- */
.iec__final{text-align:center;padding:clamp(20px,4vw,40px) 0}
.iec__final-icono{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:rgba(168,197,70,.14);color:var(--iec-green);margin-bottom:20px}
.iec__final-icono svg{width:32px;height:32px}
.iec__final-t{font-family:var(--iec-mono);font-weight:400;font-size:1.5rem;color:var(--iec-head);margin:0 0 10px}
.iec__final-x{font-size:15.5px;font-weight:300;line-height:1.7;color:var(--iec-text);margin:0 auto 22px;max-width:48ch}

@media (max-width:640px){
	.iec__nav{flex-direction:column-reverse;align-items:stretch}
	.iec .iec__btn{width:100%}
	.iec__precio-vivo{order:-1;margin-bottom:8px}
}
