/* Menú de cotización */
.cot-hero{padding:150px 0 50px}
.cot-hero h1{font-size:clamp(42px,6vw,84px);margin-top:22px}
.cot{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;align-items:start;padding-bottom:120px}
.paso-cot{margin-top:56px}
.paso-cot:first-child{margin-top:0}
.paso-cot .titulo{display:flex;align-items:center;gap:16px}
.paso-cot .titulo i{font-style:normal;width:40px;height:40px;border-radius:50%;background:var(--lime);color:var(--ink);font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
.paso-cot .titulo h2{font-size:clamp(26px,3vw,36px);margin:0}
.paso-cot .ayuda{color:var(--mut);font-weight:300;margin:10px 0 0 56px;font-size:16px}

/* base incluida */
.base{margin-top:24px;border:1.5px solid #3A4A1A;background:linear-gradient(160deg,#141A0C,var(--ink2));border-radius:24px;padding:28px 30px}
.base .cab{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.base .cab b{font-size:22px}
.etiq{font-size:12px;letter-spacing:.18em;font-weight:600;padding:7px 14px;border-radius:999px;background:var(--lime);color:var(--ink);white-space:nowrap}
.base ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-top:20px}
.base li{position:relative;padding-left:32px;color:#D5D8DF;font-weight:300;font-size:15px}
.base li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:6px;background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' stroke='%230A0C11' stroke-width='3.2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.base li b{color:var(--txt);font-weight:600}

/* opcionales */
.opciones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.opcion{position:relative;display:block;cursor:pointer;background:var(--ink2);border:1.5px solid var(--line);border-radius:24px;padding:28px;transition:border-color .25s,background .25s,transform .25s}
.opcion:hover{border-color:#3a4152;transform:translateY(-2px)}
.opcion input{position:absolute;opacity:0;pointer-events:none}
.opcion .marca-check{position:absolute;top:24px;right:24px;width:30px;height:30px;border-radius:9px;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;transition:.25s}
.opcion .marca-check svg{width:16px;height:16px;opacity:0;transition:.2s}
.opcion input:checked ~ .marca-check{background:var(--lime);border-color:var(--lime)}
.opcion input:checked ~ .marca-check svg{opacity:1}
.opcion:has(input:checked){border-color:var(--lime);background:linear-gradient(160deg,#141A0C,var(--ink2))}
.opcion input:focus-visible ~ .marca-check{outline:2px solid var(--lime);outline-offset:3px}
.opcion .icono{margin-bottom:18px}
.opcion h3{font-size:22px;font-weight:600;padding-right:40px;line-height:1.2}
.opcion p{color:var(--mut);font-weight:300;font-size:15px;margin-top:8px}
.opcion ul{list-style:none;margin-top:14px}
.opcion li{font-size:14px;color:#C6CAD3;font-weight:300;padding:5px 0 5px 18px;position:relative}
.opcion li::before{content:"";position:absolute;left:0;top:13px;width:7px;height:7px;border-radius:50%;background:var(--lime)}
.opcion .estado{display:inline-block;margin-top:16px;font-size:13px;font-weight:600;color:var(--dim)}
.opcion input:checked ~ .estado{color:var(--lime)}
.extra{margin-top:16px;display:none}
.opcion:has(input:checked) .extra{display:block}
.extra label{font-size:13px;color:var(--mut);display:block;margin-bottom:6px}

/* canales */
.canales-sel{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:24px}
.canal{position:relative;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;border:1.5px solid var(--line);background:var(--ink2);transition:.2s}
.canal input{position:absolute;opacity:0;pointer-events:none}
.canal img,.canal .sin{width:40px;height:40px;border-radius:10px;flex:none}
.canal .sin{background:var(--ink3);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.canal span{font-size:14px;font-weight:500;line-height:1.2}
.canal:has(input:checked){border-color:var(--lime);background:#141A0C}
.canal:has(input:focus-visible){outline:2px solid var(--lime);outline-offset:2px}
.acciones-canales{display:flex;gap:10px;margin-top:14px}
.mini-btn{font-size:13px;font-weight:500;padding:8px 14px;border-radius:10px;border:1px solid var(--line);color:var(--mut)}
.mini-btn:hover{color:var(--txt);border-color:var(--mut)}

/* datos */
.campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.campo label{display:block;font-size:13px;color:var(--mut);margin-bottom:7px;font-weight:500}
.campo.ancho{grid-column:1/-1}
.campo input,.campo select,.campo textarea,.extra input,.extra select{width:100%;font:inherit;font-size:16px;color:var(--txt);background:var(--ink);border:1.5px solid var(--line);border-radius:12px;padding:13px 14px;transition:border-color .2s}
.campo textarea{min-height:100px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus,.extra input:focus,.extra select:focus{outline:none;border-color:var(--lime)}
.campo select,.extra select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239BA1B0' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px;padding-right:40px}
.req{color:var(--coral)}

/* resumen */
.resumen{position:sticky;top:100px;background:var(--ink2);border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 30px 70px rgba(0,0,0,.4)}
.resumen small{font-size:12px;letter-spacing:.22em;color:var(--dim);font-weight:600}
.resumen h3{font-size:24px;margin-top:6px}
.resumen .grupo{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.resumen .grupo p{font-size:12px;letter-spacing:.16em;color:var(--dim);font-weight:600;margin-bottom:10px}
.resumen ul{list-style:none}
.resumen li{font-size:14px;padding:5px 0;display:flex;gap:10px;align-items:flex-start;color:#D5D8DF}
.resumen li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime);margin-top:7px;flex:none}
.resumen li.vacio{color:var(--dim)}
.resumen li.vacio::before{background:var(--line)}
.resumen .contador{display:flex;gap:10px;margin-top:22px}
.resumen .contador div{flex:1;background:var(--ink);border:1px solid var(--line);border-radius:14px;padding:12px;text-align:center}
.resumen .contador b{display:block;font-size:26px;color:var(--lime);line-height:1}
.resumen .contador span{font-size:11px;color:var(--mut)}
.resumen .btn{width:100%;justify-content:center;margin-top:12px}
.resumen .btn:first-of-type{margin-top:22px}
.resumen .aviso-form{font-size:13px;color:var(--coral);margin-top:10px;min-height:18px}
.resumen .nota-res{font-size:12px;color:var(--dim);margin-top:14px;line-height:1.5}

.folio-impreso{display:none}

@media (max-width:1060px){
  .cot{grid-template-columns:minmax(0,1fr)}
  .resumen{position:relative;top:auto}
}
@media (max-width:680px){
  .opciones,.campos,.base ul{grid-template-columns:minmax(0,1fr)}
  .paso-cot .ayuda{margin-left:0}
  .canales-sel{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* impresión: hoja de levantamiento */
.hoja{display:none}
@media print{
  @page{size:letter;margin:12mm}
  body{background:#fff!important;color:#0A0C11}
  body>*:not(.hoja){display:none!important}
  .hoja{display:block;font-family:'Poppins',sans-serif;color:#0A0C11;font-size:11pt}
  .hoja .h-top{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:3px solid #0A0C11;padding-bottom:10px}
  .hoja .h-marca{font-size:22pt;font-weight:700;letter-spacing:-.02em}
  .hoja .h-marca span{color:#5C8F00}
  .hoja .h-folio{text-align:right;font-size:9.5pt;color:#4a5060;line-height:1.5}
  .hoja .h-folio b{color:#0A0C11;font-size:11pt}
  .hoja h2{font-size:16pt;margin:18px 0 0;letter-spacing:-.01em}
  .hoja h4{font-size:8.5pt;letter-spacing:.2em;color:#5C8F00;margin:18px 0 6px;font-weight:700}
  .hoja table{width:100%;border-collapse:collapse}
  .hoja td{padding:6px 8px;border-bottom:1px solid #e3e5ea;vertical-align:top;font-size:10pt}
  .hoja td:first-child{width:34%;color:#4a5060}
  .hoja ul{list-style:none;padding:0;margin:0}
  .hoja li{padding:5px 0 5px 22px;position:relative;font-size:10pt;border-bottom:1px solid #eef0f3}
  .hoja li::before{content:"✓";position:absolute;left:2px;top:4px;color:#5C8F00;font-weight:700}
  .hoja li.no::before{content:"–";color:#9BA1B0}
  .hoja .h-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}
  .hoja .h-firmas{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}
  .hoja .h-firmas div{border-top:1px solid #0A0C11;padding-top:6px;font-size:9pt;color:#4a5060;text-align:center}
  .hoja .h-pie{margin-top:22px;font-size:8.5pt;color:#6a7082;border-top:1px solid #e3e5ea;padding-top:8px;display:flex;justify-content:space-between}
}
