* {
  box-sizing: border-box;
}
.entry-title,.page-title,h1.wp-block-post-title{display:none!important}
body{background:#f3f6fa!important}

#cot10{
  max-width:1180px;
  margin:30px auto;
  font-family:Arial,sans-serif;
  color:#172033;
}
.cot-header{text-align:center;margin-bottom:24px}
.cot-header h1{color:#0B3D91;font-size:34px;margin:0}
.cot-header p{color:#667085;font-size:16px}

.cot-layout{
  max-width:1280px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(520px, 1.1fr) minmax(420px, .9fr);
  gap:28px;
  align-items:start;
}
.cot-card{
  background:#fff;
  border:1px solid #ddd;
  border-radius:18px;
  padding:24px;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
}
.cot-step{display:none}
.cot-step.active{display:block}

.cot-title{
  color:#0B3D91;
  font-size:24px;
  margin:0 0 18px;
}
.cot-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.cot-field{margin-bottom:16px}
.cot-field label{
  display:block;
  font-weight:800;
  margin-bottom:7px;
  color:#0B3D91;
}
.cot-field input,.cot-field select,.cot-field textarea{
  width:100%;
  padding:14px;
  border:1px solid #cfd4dc;
  border-radius:12px;
  font-size:15px;
}
.cot-field textarea{min-height:110px}

.origen input{border-left:6px solid #2E7D32}
.destino input{border-left:6px solid #D32F2F}

.cot-actions{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:16px;
}
.cot-btn{
  border:none;
  padding:15px 26px;
  border-radius:14px;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
}
.cot-next{background:#F58220;color:white}
.cot-prev{background:#e8edf3;color:#344054}
.cot-send{background:#0B3D91;color:white;width:100%}

.cot-progress{
  display:flex;
  justify-content:space-between;
  margin-bottom:18px;
}
.cot-dot{
  flex:1;
  text-align:center;
  font-size:12px;
  color:#667085;
}
.cot-dot b{
  display:block;
  width:28px;
  height:28px;
  border-radius:50%;
  margin:0 auto 5px;
  border:2px solid #b7c0cc;
  line-height:25px;
}
.cot-dot.done b,.cot-dot.active b{
  background:#0B3D91;
  color:white;
  border-color:#0B3D91;
}

#mapCot{
  height:360px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid #ddd;
}
.cot-summary{
  margin-top:14px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.sum-box{
  background:#f4f6f8;
  border-radius:14px;
  padding:14px;
}
.sum-label{font-size:12px;font-weight:900;color:#0B3D91}
.sum-value{font-size:18px;font-weight:900;margin-top:4px}

.marker-ab{
  width:34px;height:34px;border-radius:50%;
  color:white;font-weight:900;display:flex;
  align-items:center;justify-content:center;
  font-size:16px;box-shadow:0 3px 8px rgba(0,0,0,.35);
  border:3px solid white;
}
.marker-a{background:#2E7D32}
.marker-b{background:#D32F2F}

.route-legend{
  display:flex;
  justify-content:space-around;
  gap:8px;
  background:white;
  border:1px solid #ddd;
  border-radius:12px;
  padding:10px;
  margin-top:10px;
  font-size:12px;
}
.legend-dot{
  width:20px;height:20px;border-radius:50%;
  color:white;font-weight:900;display:inline-flex;
  align-items:center;justify-content:center;font-size:11px;
}
.legend-line{
  width:28px;height:4px;background:#0B3D91;
  border-radius:10px;display:inline-block;
  vertical-align:middle;
}
.aviso{
  background:#e8f5e9;
  color:#2E7D32;
  border-radius:14px;
  padding:14px;
  font-weight:800;
  margin-top:12px;
}
@media(max-width:900px){
  .cot-layout{grid-template-columns:1fr}
  .cot-row{grid-template-columns:1fr}
}
.inv-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:18px;
}

.inv-cat{
  min-height:72px;
}
.inv-cat{
  border:1px solid #d0d5dd;
  background:#fff;
  border-radius:16px;
  padding:16px 10px;
  font-weight:900;
  color:#0B3D91;
  cursor:pointer;
  font-size:15px;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
}
.inv-cat.activa{
  background:#0B3D91;
  color:white;
  border-color:#0B3D91;
}
.inv-bloque{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:16px;
  margin-bottom:14px;
}
.inv-bloque h3{
  color:#0B3D91;
  margin:0 0 12px;
}
.inv-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:white;
  border-radius:12px;
  padding:10px 12px;
  margin-bottom:8px;
}
.inv-nombre{
  font-weight:800;
}
.inv-control{
  display:flex;
  align-items:center;
  gap:10px;
}
.inv-control button{
  width:30px;
  height:30px;
  border-radius:50%;
  border:none;
  background:#F58220;
  color:white;
  font-weight:900;
  cursor:pointer;
}
.inv-cant{
  min-width:24px;
  text-align:center;
  font-weight:900;
}
@media(max-width:700px){
  .inv-grid{grid-template-columns:repeat(2,1fr)}
}

.smart-summary{
  margin-top:16px;
  background:#fff;
  border:1px solid #ddd;
  border-radius:18px;
  padding:18px;
}
.smart-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.smart-box{
  background:#f4f6f8;
  border-radius:14px;
  padding:14px;
}
.smart-label{
  font-size:12px;
  font-weight:900;
  color:#0B3D91;
}
.smart-value{
  font-size:20px;
  font-weight:900;
  margin-top:5px;
}
.smart-inv{
  margin-top:12px;
  background:#f8fafc;
  border-radius:14px;
  padding:12px;
  font-size:14px;
}
.smart-line{
  display:flex;
  justify-content:space-between;
  border-bottom:1px solid #e5e7eb;
  padding:6px 0;
}
.service-summary{
  margin-top:16px;
  background:#fff;
  border:1px solid #ddd;
  border-radius:18px;
  padding:18px;
}

.service-summary-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.service-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.service-box{
  background:#f4f6f8;
  border-radius:14px;
  padding:12px;
}

.service-box.full{
  grid-column:1 / -1;
}

.service-value{
  font-size:15px;
  font-weight:900;
  margin-top:4px;
  color:#111827;
}

.edit-mini{
  border:none;
  background:#F58220;
  color:white;
  padding:9px 12px;
  border-radius:12px;
  font-weight:900;
  cursor:pointer;
}

.full-btn{
  width:100%;
  margin-top:12px;
  background:#0B3D91;
}

@media(max-width:700px){
  .service-grid{grid-template-columns:1fr}
}
.paquetes-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:24px;
}

@media(max-width:700px){
  .paquetes-grid{
    grid-template-columns:1fr;
  }

  #cot10 .cot-card{
    margin:16px auto !important;
    padding:18px !important;
    width:94% !important;
    max-width:94% !important;
    overflow:hidden;
  }

  #cot10 h1{
    font-size:28px !important;
    line-height:1.15 !important;
  }

  #cot10 h2{
    font-size:22px !important;
    line-height:1.2 !important;
  }

  .paquetes-grid button{
    font-size:15px !important;
    padding:14px !important;
  }
}
@media(min-width:901px){
  .cot-layout > .cot-card:first-child{
    position:sticky;
    top:20px;
  }

  .cot-layout > div:last-child{
    position:sticky;
    top:20px;
  }
}

@media(max-width:900px){
  .cot-layout{
    display:block;
    max-width:94%;
  }

  .cot-layout > .cot-card:first-child,
  .cot-layout > div:last-child{
    position:static;
  }
}
@media (min-width: 1024px){

  #cot10{
    max-width:1500px !important;
    width:94% !important;
    margin:30px auto !important;
  }

  .cot-layout{
    display:grid !important;
    grid-template-columns:minmax(620px, 1.05fr) minmax(420px, .95fr) !important;
    gap:28px !important;
    align-items:start !important;
    max-width:1500px !important;
    width:100% !important;
  }

  .cot-layout > .cot-card{
    width:100% !important;
  }

  .cot-side{
    width:100% !important;
    display:block !important;
  }

  .cot-side .cot-card{
    width:100% !important;
  }
}

@media (max-width:1023px){
  .cot-layout{
    display:block !important;
  }
}
.cot-layout {
  overflow: visible;
}

.cot-card,
.cot-side {
  min-width: 0;
}

#mapCot {
  width: 100%;
  min-height: 360px;
}
.inv-zone{
  border-bottom:1px solid #dfe4ea;
  padding:8px 0;
}

.inv-zone-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  font-weight:900;
  color:#172033;
}

.inv-zone-left{
  display:flex;
  gap:8px;
  align-items:center;
}

.inv-zone-arrow{
  color:#0B3D91;
  font-weight:900;
  transition:transform .25s ease;
}

.inv-zone.open .inv-zone-arrow{
  transform:rotate(180deg);
}

.inv-zone-body{
  max-height:0;
  overflow:hidden;
  transition:max-height .3s ease;
  padding-left:22px;
}

.inv-zone.open .inv-zone-body{
  max-height:500px;
  margin-top:8px;
}

.inv-item-line{
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:10px;
  align-items:center;
  padding:6px 0;
  font-size:13px;
}

.inv-item-name{
  color:#172033;
  font-weight:700;
}

.inv-item-qty{
  font-weight:900;
  color:#0B3D91;
}

.inv-edit-btn{
  border:none;
  background:#eef2f7;
  color:#0B3D91;
  border-radius:8px;
  padding:4px 7px;
  cursor:pointer;
  font-weight:900;
}

.inv-edit-btn:hover{
  background:#dbeafe;
}

.coverage-line{
  align-items:center;
}

.coverage-select{
  border:1px solid #cfd8dc;
  border-radius:10px;
  padding:6px 8px;
  font-weight:900;
  color:#0B3D91;
  background:#fff;
  cursor:pointer;
}

.coverage-info{
  margin-top:12px;
  padding:14px;
  border-radius:14px;
  font-size:13px;
  line-height:1.45;
  border:1px solid #e5e7eb;
}

.coverage-info.basic{
  background:#f0fdf4;
  border-color:#bbf7d0;
}

.coverage-info.standard{
  background:#eff6ff;
  border-color:#bfdbfe;
}

.coverage-info.premium{
  background:#fff7ed;
  border-color:#fed7aa;
}

.coverage-title{
  font-weight:900;
  color:#0B3D91;
  margin-bottom:6px;
}

.coverage-text{
  color:#172033;
  font-weight:700;
  margin-bottom:8px;
}

.coverage-info ul{
  margin:0;
  padding-left:18px;
}

.coverage-info li{
  margin-bottom:4px;
}

.modal{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.45);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:99999;

}

.modal-content{

    width:min(900px,92vw);

    max-height:85vh;

    overflow:auto;

    background:white;

    border-radius:18px;

    padding:24px;

    box-shadow:0 25px 60px rgba(0,0,0,.25);

}

.modal-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.modal-close{

    border:none;

    background:none;

    font-size:28px;

    cursor:pointer;

}

.coverage-table{

    width:100%;

    border-collapse:collapse;

}

.coverage-table th{

    background:#0B3D91;

    color:white;

    padding:12px;

}

.coverage-table td{

    border-bottom:1px solid #ececec;

    text-align:center;

    padding:12px;

}

.coverage-table td:first-child{

    text-align:left;

    font-weight:bold;

}

.modal-footer{

    margin-top:24px;

    background:#f4f8ff;

    border-radius:12px;

    padding:18px;

    text-align:center;

    color:#0B3D91;

    font-weight:bold;

}

.btn-compare{

    width:100%;

    margin-top:12px;

    padding:10px;

    border-radius:10px;

    border:none;

    background:#F58220;

    color:white;

    cursor:pointer;

    font-weight:bold;

}

.trust-card{
  margin-top:28px;
  background:#ffffff;
  border:1px solid #dfe4ea;
  border-radius:18px;
  padding:22px;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
}

.trust-title{
  color:#0B3D91;
  font-weight:900;
  font-size:20px;
  margin-bottom:14px;
}

.trust-text{
  color:#172033;
  font-size:16px;
  line-height:1.55;
  font-style:italic;
}

.trust-stars{
  margin-top:14px;
  font-size:20px;
}

.trust-author{
  margin-top:10px;
  color:#172033;
  font-weight:900;
}

.trust-list{
  display:grid;
  gap:10px;
  color:#172033;
  font-size:16px;
  font-weight:700;
}

@media(max-width:768px){
  .trust-card{
    margin-top:20px;
    padding:18px;
  }

  .trust-title{
    font-size:17px;
  }

  .trust-text,
  .trust-list{
    font-size:14px;
  }
}

.phone-row{
  display:grid;
  grid-template-columns:130px 1fr;
  gap:10px;
}

.phone-row select,
.phone-row input{
  width:100%;
  padding:14px;
  border:1px solid #cfd4dc;
  border-radius:12px;
  font-size:15px;
}

.phone-row select{
  font-weight:900;
  color:#0B3D91;
  background:#fff;
  cursor:pointer;
}

.field-help{
  margin-top:6px;
  font-size:12px;
  color:#607089;
  font-weight:700;
}

.field-help.error{
  color:#D32F2F;
}

.field-help.ok{
  color:#2E7D32;
}

@media(max-width:600px){
  .phone-row{
    grid-template-columns:1fr;
  }
}

.field-help.warning{
  color:#F57C00;
}

.email-suggestion{
  border:none;
  background:transparent;
  color:#0B3D91;
  font-weight:900;
  cursor:pointer;
  text-decoration:underline;
  padding:0;
}

.city-autocomplete{
  position:relative;
}

.city-suggestions{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  right:0;
  background:#fff;
  border:1px solid #dfe4ea;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.12);
  overflow:hidden;
  z-index:9999;
  display:none;
  max-height:260px;
  overflow-y:auto;
}

.city-suggestion{
  padding:12px 14px;
  cursor:pointer;
  font-weight:800;
  color:#172033;
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}

.city-suggestion:hover,
.city-suggestion.active{
  background:#eef5ff;
  color:#0B3D91;
}

.city-suggestion small{
  color:#607089;
  font-weight:700;
}

.address-autocomplete{
  position:relative;
}

.address-suggestions{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  right:0;
  background:#fff;
  border:1px solid #dfe4ea;
  border-radius:14px;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
  overflow:hidden;
  z-index:99999;
  display:none;
  max-height:280px;
  overflow-y:auto;
}

.address-suggestion{
  padding:12px 14px;
  cursor:pointer;
  border-bottom:1px solid #eef2f7;
}

.address-suggestion:hover{
  background:#eef5ff;
}

.address-main{
  font-weight:900;
  color:#172033;
}

.address-sub{
  font-size:12px;
  color:#607089;
  margin-top:4px;
}

.address-card{

    margin-top:10px;

    background:#f8fbff;

    border:1px solid #dce8ff;

    border-left:5px solid #2f80ed;

    border-radius:14px;

    padding:14px;

    font-size:14px;

    color:#2c3e50;

    animation:fadeDireccion .25s ease;

}

.address-card h5{

    margin-bottom:10px;

    color:#1f4fa3;

}

.address-item{

    margin:6px 0;

}

.address-ok{

    color:#27ae60;

    font-weight:700;

}

@keyframes fadeDireccion{

from{

opacity:0;

transform:translateY(-8px);

}

to{

opacity:1;

transform:none;

}

}

.quote-number{
  margin-bottom:12px;
  padding:10px 14px;
  border-left:6px solid #ff7a1a;
  background:#fff7ef;
  border-radius:10px;
  font-weight:700;
}

.quote-number strong{
  color:#0B3D91;
}

.cot-field select,
.cot-field input {
  width: 100%;
}

.cot-field label {
  line-height: 1.2;
}

.cot-row {
  align-items: flex-start;
}

.paquetes-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:28px;
}

.paquete-card{
  background:#fff;
  border:1px solid #dce3ee;
  border-radius:18px;
  padding:26px 22px;
  box-shadow:0 12px 28px rgba(15,23,42,.08);
  display:flex;
  flex-direction:column;
  align-items:center;
  min-height:330px;
}

.paquete-card h3{
  font-size:26px;
  margin:0 0 8px;
  font-weight:800;
}

.paquete-card h4{
  font-size:18px;
  margin:0 0 18px;
  color:#0f172a;
}

.precio-paquete{
  font-size:28px;
  font-weight:900;
  color:#0B3D91;
  margin-bottom:6px;
}

.reserva-paquete{
  font-size:16px;
  font-weight:800;
  color:#15803d;
  background:#eaf7ee;
  padding:8px 12px;
  border-radius:12px;
  margin-bottom:18px;
}

.paquete-card p{
  font-size:15px;
  line-height:1.35;
  color:#334155;
  min-height:70px;
  margin:0 0 20px;
}

.paquete-card button{
  border:0;
  border-radius:14px;
  color:#fff;
  font-weight:800;
  padding:14px 20px;
  width:100%;
  cursor:pointer;
  margin-top:auto;
}

@media(max-width:900px){
  .paquetes-grid{
    grid-template-columns:1fr;
  }
}

.modal-reserva-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}

.modal-reserva{
  background:#fff;
  width:min(980px, 96vw);
  max-height:92vh;
  overflow:auto;
  border-radius:22px;
  padding:28px;
  position:relative;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}

.modal-close{
  position:absolute;
  right:18px;
  top:14px;
  border:none;
  background:#f3f4f6;
  width:36px;
  height:36px;
  border-radius:50%;
  font-size:24px;
  cursor:pointer;
}

.modal-reserva h2,
.modal-reserva h3{
  color:#0B3D91;
}

.modal-subtitle{
  color:#64748b;
  margin-bottom:22px;
}

.modal-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
}

.modal-reserva label{
  display:block;
  margin-top:12px;
  font-weight:700;
  color:#0B3D91;
}

.modal-reserva input{
  width:100%;
  padding:13px;
  border:1px solid #d1d5db;
  border-radius:12px;
  margin-top:6px;
}

.check-line{
  display:flex !important;
  gap:10px;
  align-items:center;
  color:#111827 !important;
}

.check-line input{
  width:auto;
}

.modal-resumen,
.politicas{
  background:#f3f6fb;
  border-radius:16px;
  padding:16px;
  margin-bottom:16px;
}

.modal-paquete{
  border:2px solid #0B3D91;
  border-radius:18px;
  padding:18px;
  text-align:center;
  margin-bottom:16px;
}

.modal-precio{
  font-size:30px;
  font-weight:900;
  color:#0B3D91;
}

.modal-reserva-valor{
  display:inline-block;
  margin-top:8px;
  background:#e8f8ec;
  color:#087a32;
  font-weight:900;
  padding:8px 14px;
  border-radius:12px;
}

.btn-pagar{
  width:100%;
  background:#F58220;
  color:#fff;
  border:none;
  padding:16px;
  border-radius:14px;
  font-weight:900;
  cursor:pointer;
}

@media(max-width:800px){
  .modal-grid{
    grid-template-columns:1fr;
  }
}

.btn-editar-modal{
  width:100%;
  background:#0B3D91;
  color:#fff;
  border:none;
  padding:12px;
  border-radius:12px;
  font-weight:900;
  margin:10px 0 16px;
  cursor:pointer;
}

.modal-actions{
  display:flex;
  gap:14px;
  margin-top:18px;
}

.modal-actions button{
  flex:1;
}

.steps-reserva{
  display:flex;
  justify-content:center;
  gap:32px;
  margin-bottom:28px;
  font-family:inherit;
}

.step-mini{
  text-align:center;
  color:#94a3b8;
  font-weight:700;
}

.step-mini span{
  width:34px;
  height:34px;
  border-radius:50%;
  border:2px solid #cbd5e1;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 6px;
  background:#fff;
}

.step-mini.activo span{
  background:#0B3D91;
  color:#fff;
  border-color:#0B3D91;
}

.step-mini small{
  display:block;
  font-size:12px;
}

.modal-reserva,
.modal-reserva input,
.modal-reserva button,
.modal-reserva label{
  font-family:inherit;
}

.modal-actions{
  max-width:420px;
  margin:18px auto 0;
}

.cot-card > .modal-actions{
  max-width:260px;
}

.modal-resumen-inteligente{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:14px;
  margin-bottom:16px;
}

.modal-resumen-inteligente .cot-card,
.modal-resumen-inteligente .resumen-inteligente{
  box-shadow:none !important;
  border:none !important;
}

@media (max-width: 768px){
  .cot-layout{
    grid-template-columns: 1fr !important;
  }

  .cot-side{
    position: static !important;
    width: 100% !important;
  }

  #mapCot,
  .mapa-cotizador{
    width: 100% !important;
    height: 320px !important;
    min-height: 320px !important;
    display: block !important;
  }

  .cot-card{
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Layout final cotizador: lateral derecho en PC, apilado solo en movil */
@media (min-width: 769px){
  #cot10{
    width:94% !important;
    max-width:1500px !important;
    margin:30px auto !important;
  }

  #cot10 .cot-layout{
    display:grid !important;
    grid-template-columns:minmax(0, .96fr) minmax(360px, .82fr) !important;
    gap:28px !important;
    align-items:start !important;
    width:100% !important;
    max-width:1500px !important;
    margin:0 auto !important;
  }

  #cot10 .cot-layout > .cot-card:first-child,
  #cot10 .cot-side{
    min-width:0 !important;
    width:100% !important;
  }

  #cot10 .cot-side{
    display:block !important;
    position:sticky !important;
    top:20px !important;
  }

  #cot10 .cot-side > .cot-card{
    width:100% !important;
  }
}

@media (max-width: 768px){
  #cot10 .cot-layout{
    display:block !important;
    width:94% !important;
    max-width:94% !important;
    margin:0 auto !important;
  }

  #cot10 .cot-side{
    position:static !important;
    width:100% !important;
    margin-top:18px !important;
  }
}

/* ==================================================
   PASARELA SIMULADA - PAGO / VALIDACION TARJETA
================================================== */

.pasarela-box{
  border:1px solid #d8e0ec;
  border-radius:18px;
  padding:22px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}

.pasarela-option{
  display:flex;
  align-items:center;
  gap:12px;
  border:1px solid #d8e0ec;
  border-radius:14px;
  padding:15px 16px;
  margin-bottom:10px;
  background:#ffffff;
  color:#081735;
  font-weight:900;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.pasarela-option:hover{
  border-color:#ff7900;
  box-shadow:0 10px 24px rgba(255,121,0,.10);
  transform:translateY(-1px);
}

.pasarela-option input{
  width:18px;
  height:18px;
  accent-color:#ff7900;
}

.pasarela-card-fields{
  margin-top:20px;
  border:1px solid #d8e0ec;
  border-radius:16px;
  padding:18px;
  background:#ffffff;
}

.pasarela-card-fields label{
  display:block;
  margin:12px 0 7px;
  color:#0b3d91;
  font-size:14px;
  font-weight:900;
}

.pasarela-card-fields input{
  width:100%;
  border:1px solid #cbd5e1;
  border-radius:13px;
  padding:14px 15px;
  background:#f8fafc;
  color:#081735;
  font-size:16px;
  font-weight:800;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.pasarela-card-fields input:focus{
  border-color:#ff7900;
  background:#ffffff;
  box-shadow:0 0 0 4px rgba(255,121,0,.12);
}

.pasarela-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.pasarela-note{
  margin:16px 0 0;
  border:1px solid #fed7aa;
  border-radius:14px;
  padding:13px 15px;
  background:#fff7ed;
  color:#7c2d12;
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}

@media (max-width: 640px){
  .pasarela-box{
    padding:16px;
  }

  .pasarela-grid{
    grid-template-columns:1fr;
    gap:0;
  }

  .pasarela-option{
    padding:14px;
  }
}

