/* Comprar: selector de plan, datos de la empresa y resumen del pedido */
.cmp-section{padding:60px 0 90px;background:linear-gradient(180deg,#f4fbf8 0%,#fff 100%)}
.cmp-grid{display:flex;flex-wrap:wrap;gap:30px;align-items:flex-start}
.cmp-main{flex:1 1 560px;min-width:0}
.cmp-resumen{flex:0 1 380px;min-width:300px;position:sticky;top:110px}
.cmp-card{background:#fff;border:1px solid #e6efeb;border-radius:14px;box-shadow:0 8px 28px rgba(25,39,77,.07);padding:30px;margin-bottom:24px}
.cmp-card:last-child{margin-bottom:0}
.cmp-card h3{margin:0 0 20px;font-size:22px;color:#19274d}
.cmp-card h3 span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-right:10px;border-radius:50%;background:#32c788;color:#fff;font-size:15px}

/* Planes */
.cmp-planes{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.cmp-plan{display:block;margin:0;cursor:pointer}
.cmp-plan input{position:absolute;opacity:0;pointer-events:none}
.cmp-plan-in{display:block;height:100%;padding:16px 18px;border:2px solid #e3f6ed;border-radius:12px;background:#fff;transition:border-color .2s,background .2s,box-shadow .2s}
.cmp-plan:hover .cmp-plan-in{border-color:#b9ead3}
.cmp-plan input:checked+.cmp-plan-in{border-color:#32c788;background:#f4fbf8;box-shadow:0 6px 18px rgba(50,199,136,.18)}
.cmp-plan input:focus-visible+.cmp-plan-in{outline:2px solid #19274d;outline-offset:2px}
.cmp-plan b{display:block;font-size:18px;color:#19274d}
.cmp-plan em{display:block;margin:4px 0 6px;font-style:normal;font-size:22px;color:#32c788}
.cmp-plan em i{font-style:normal;font-size:14px;color:#6b7690}
.cmp-plan small{display:block;font-size:14px;line-height:1.4;color:#6b7690}

/* Campos */
.cmp-row{display:flex;flex-wrap:wrap;gap:0 18px}
.cmp-row>.cmp-campo{flex:1 1 220px}
.cmp-campo{margin-bottom:18px}
.cmp-campo label{display:block;margin-bottom:6px;font-size:14px;color:#19274d}
.cmp-campo label b{color:#32c788;font-weight:inherit}
.cmp-campo input[type=text],.cmp-campo input[type=email],.cmp-campo input[type=tel]{display:block;width:100%;padding:12px 15px;border:1px solid #dfe8e4;border-radius:8px;background:#fff;color:#19274d;font-size:15px;line-height:1.4;outline:none;transition:border-color .2s,box-shadow .2s}
.cmp-campo input:focus{border-color:#32c788;box-shadow:0 0 0 3px rgba(50,199,136,.15)}
.cmp-campo input.cmp-mal{border-color:#d9534f}
.cmp-sub{display:flex;align-items:stretch}
.cmp-sub input{border-top-right-radius:0!important;border-bottom-right-radius:0!important;min-width:0}
.cmp-sub span{display:flex;align-items:center;padding:0 14px;border:1px solid #dfe8e4;border-left:0;border-radius:0 8px 8px 0;background:#f4fbf8;color:#6b7690;font-size:15px;white-space:nowrap}
.cmp-ayuda{display:block;margin-top:6px;font-size:13px;color:#6b7690}
.cmp-error{display:none;margin-top:6px;font-size:13px;color:#d9534f}
.cmp-check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:#6b7690;cursor:pointer}
.cmp-check input{margin-top:5px;flex:none;width:18px;height:18px;accent-color:#32c788}

/* Resumen */
.cmp-resumen .cmp-card{margin:0}
.cmp-r-plan{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:14px;border-bottom:1px solid #e3f6ed}
.cmp-r-plan b{font-size:22px;color:#19274d}
.cmp-r-plan span{font-size:15px;color:#6b7690}
.cmp-r-lista{margin:16px 0;padding:0;list-style:none}
.cmp-r-lista li{display:flex;gap:12px;align-items:center;margin-bottom:10px;font-size:15px;line-height:1.4;color:#19274d}
.cmp-r-lista i{width:18px;text-align:center;font-size:14px;color:#32c788;flex:none}
.cmp-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-top:1px solid #e3f6ed}
.cmp-total span{font-size:16px;color:#19274d}
.cmp-total b{font-size:30px;font-weight:400!important;color:#32c788}
.cmp-total b small{font-size:15px;color:#6b7690}
.cmp-nota{margin:0 0 18px;font-size:13px;line-height:1.5;color:#6b7690}
.cmp-btn{display:block;width:100%;padding:15px 20px;border:0;border-radius:50px;background:linear-gradient(to right,#36d08a,#38d09d);color:#fff;font-size:17px;cursor:pointer;transition:filter .2s,transform .2s}
.cmp-btn:hover{filter:brightness(.95);transform:translateY(-1px)}
.cmp-seguro{margin:14px 0 0;font-size:13px;line-height:1.5;color:#6b7690;text-align:center}
.cmp-seguro i{color:#32c788;margin-right:6px}

/* Confirmación */
.cmp-ok{display:none;text-align:center;padding:50px 30px}
.cmp-ok i{font-size:56px;color:#32c788}
.cmp-ok h2{margin:18px 0 10px;font-size:30px;color:#19274d}
.cmp-ok p{max-width:520px;margin:0 auto 24px;font-size:17px;line-height:1.6;color:#6b7690}
.cmp-ok a{display:inline-block}

@media (max-width:991px){.cmp-resumen{position:static;flex:1 1 100%}}
@media (max-width:575px){.cmp-planes{grid-template-columns:1fr}.cmp-card{padding:22px 18px}}

/* Plan: la tarjeta del plan elegido es la lista desplegable (el select va encima, transparente) */
.cmp-planes{display:block}
.cmp-plan-card{position:relative}
.cmp-plan-card .cmp-plan-in{position:relative;padding-right:46px;border-color:#32c788;background:#f4fbf8;box-shadow:0 6px 18px rgba(50,199,136,.18)}
.cmp-plan-card .cmp-plan-in::after{content:"";position:absolute;right:20px;top:50%;width:9px;height:9px;margin-top:-7px;border-right:2px solid #32c788;border-bottom:2px solid #32c788;transform:rotate(45deg)}
.cmp-select{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;opacity:0;cursor:pointer;font-size:16px}
.cmp-plan-card:hover .cmp-plan-in{border-color:#28a870}
.cmp-plan-card:focus-within .cmp-plan-in{outline:2px solid #19274d;outline-offset:2px}
.cmp-despues{margin:0 0 10px;font-size:14px;color:#19274d}
.cmp-plan-in .cmp-despues-card{color:#1fa36d;margin-bottom:2px}
