/* Estilos de clubes (del prototipo clubes.html) */
.chero{display:grid;grid-template-columns:7fr 5fr;gap:0;border-bottom:1px solid var(--linea)}
.chero .txt{padding:96px 56px 80px max(32px,calc((100vw - var(--max))/2 + 32px))}
.chero h1{font-size:clamp(51.8px,6.5vw,108px);max-width:9ch}
.chero h1 em{font-style:normal;color:var(--rojo)}
.chero p{font-size:19px;color:#ddd;max-width:46ch;margin:24px 0 34px}
.chero figure{position:relative;overflow:hidden;min-height:520px}
.chero figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.logos{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--linea);border:1px solid var(--linea)}
.logos div{background:#000;height:84px;display:flex;align-items:center;justify-content:center;color:#555;font-size:13px}

.offer{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.offer article{border-top:2px solid #fff;padding-top:22px}
.offer h3{font-size:28.8px}
.offer p{color:var(--texto-2);margin:10px 0 18px;font-size:15px}
.offer ul{list-style:none}
.offer li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--linea);font-size:15px}
.offer li span:last-child{color:var(--texto-2);white-space:nowrap;font-variant-numeric:tabular-nums}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:s;list-style:none}
.steps li{counter-increment:s;padding-top:18px;border-top:1px solid var(--gris-85)}
.steps li::before{content:counter(s);font-family:Jost,sans-serif;text-transform:uppercase;font-size:51.8px;line-height:1;display:block;color:var(--rojo);margin-bottom:10px;font-weight:800}
.steps b{display:block;font-weight:500;font-size:19px;margin-bottom:6px}
.steps span{color:var(--texto-2);font-size:15px}

.quote-form{display:grid;grid-template-columns:5fr 7fr;gap:72px}
.quote-form h2{font-size:clamp(37.4px,4.3vw,66.2px)}
.quote-form aside p{color:var(--texto-2);margin-top:18px;max-width:38ch}
.quote-form aside .direct{margin-top:32px;font-size:15px;color:var(--texto-2)}
.quote-form aside .direct b{color:#fff;font-weight:500;font-size:22px;display:block;margin-top:4px}
form.q{display:grid;grid-template-columns:1fr 1fr;gap:18px}
form.q .full{grid-column:1/-1}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.checks label{border:1px solid var(--linea);border-radius:20px;padding:8px 14px;font-size:15px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.checks input{accent-color:var(--rojo)}
.checks label:has(input:checked){border-color:#fff;background:#151515}
.legend{font-size:14px;color:var(--texto-2);margin-bottom:8px}

@media (max-width:960px){
  .chero{grid-template-columns:1fr}
  .chero .txt{padding:48px 16px}
  .chero figure{min-height:320px}
  .logos{grid-template-columns:repeat(3,1fr)}
  .offer,.steps{grid-template-columns:1fr}
  .quote-form{grid-template-columns:1fr;gap:32px}
  form.q{grid-template-columns:1fr}
}
@media (min-width:641px) and (max-width:960px){
  .chero{grid-template-columns:1fr 1fr}
  .chero figure{min-height:0}
  .chero .txt{padding:48px 32px}
  .logos{grid-template-columns:repeat(6,1fr)}
  .offer,.steps{grid-template-columns:repeat(3,1fr)}
  form.q{grid-template-columns:1fr 1fr}
}
