.booking-hero{min-height:520px;isolation:isolate;position:relative;background:linear-gradient(90deg,rgba(0,0,0,.91),rgba(0,0,0,.23)),url('img/_SilverBike CrossFit Ok 50.jpg') center/cover}.booking-hero>.wrap{padding-top:110px}.booking-hero h1{font-size:clamp(70px,9vw,130px)}.booking-hero>.wrap>p:last-child{font-size:16px}.booking{padding:85px 0;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(35px,7vw,100px)}.booking h2{font-size:clamp(48px,5vw,70px)}.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:30px}.schedule-grid article{border:1px solid #3a3a3a;border-radius:14px;background:linear-gradient(145deg,#161616,#080808);overflow:hidden;padding:23px}.class-icon{height:48px;width:48px;border-radius:50%;background:var(--red);display:grid;place-items:center;font-size:24px}.schedule-grid h3{font-size:38px;margin-top:18px}.class-tag{text-transform:uppercase;color:#c8c8c8;font-size:10px;letter-spacing:.1em;margin-top:2px}.schedule-block{margin-top:17px;padding:12px;background:#f4f4f4;color:#0b0b0b;display:flex;flex-direction:column;text-align:center}.schedule-block b{font:700 20px var(--display);text-transform:uppercase;background:#111;color:#fff;margin:-12px -12px 10px;padding:7px}.schedule-block span{font-size:11px;text-transform:uppercase;font-weight:800;color:var(--red)}.schedule-block strong{font:700 22px var(--display);margin-top:3px}.booking-form-section{background:#111;border:1px solid #383838;border-radius:14px;padding:30px;height:max-content}.form-intro{font-size:12px;color:#bbb}.booking-form-section form{margin-top:25px;display:grid;gap:14px}.booking-form-section label{display:grid;gap:6px;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.07em}.booking-form-section input:not([type=checkbox]),.booking-form-section select{width:100%;border:1px solid #484848;background:#080808;color:#fff;padding:13px;font:500 13px var(--body);border-radius:7px}.booking-form-section input:disabled,.booking-form-section select:disabled{opacity:.48}.personal-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.consent{display:flex!important;grid-template-columns:18px 1fr;align-items:start;color:#bbb;text-transform:none!important;letter-spacing:0!important;font-size:10px!important;font-weight:500!important}.consent input{margin:2px}.availability{min-height:19px;border-left:2px solid var(--red);padding-left:9px;margin:0;font-size:11px;color:#ddd}.availability.is-error{color:#ff7777}.form-note{color:#a9a9a9;font-size:10px;margin-top:15px}.legal-links{display:flex;justify-content:center;flex-wrap:wrap;gap:9px 18px;border-top:1px solid #292929;padding:18px 0 0;margin-top:28px}.legal-links a{font-size:9px!important;letter-spacing:.08em;text-transform:uppercase;color:#aaa!important}.legal-links a:hover{color:var(--red)!important}@media(max-width:800px){.booking-hero{min-height:450px}.booking-hero>.wrap{padding-top:80px}.booking{grid-template-columns:1fr;padding:60px 0}.schedule-grid{grid-template-columns:1fr}.personal-fields{grid-template-columns:1fr}.legal-links{justify-content:flex-start;gap:9px 14px}}
.booking-hero {
  background: linear-gradient(90deg,rgba(0,0,0,.91),rgba(0,0,0,.28)),url('img/clases-dirigidas-lacarolina.png') center/cover;
}
.booking { display: block; padding: 90px 0 110px; }
.schedule-grid { gap: 28px; margin-top: 40px; }
.schedule-grid article {
  position: relative;
  padding: clamp(28px,4vw,52px);
  border-radius: 24px;
  border: 1px solid #3b3b3b;
  background: radial-gradient(ellipse at top right,rgba(231,25,32,.2),transparent 60%),linear-gradient(145deg,#1a1a1a,#0b0b0b);
  box-shadow: 0 24px 60px rgba(0,0,0,.28);
  transition: border-color .25s,transform .25s;
}
.schedule-grid article:nth-child(2) {
  background: radial-gradient(ellipse at top right,rgba(255,255,255,.09),transparent 60%),linear-gradient(145deg,#1a1a1a,#0b0b0b);
}
.schedule-grid article::before {
  content: '';
  position: absolute;
  top: 0;
  left: 40px;
  right: 40px;
  height: 3px;
  background: var(--red);
}
.schedule-grid article:hover { border-color: var(--red); transform: translateY(-4px); }
.schedule-grid h3 { margin: 0; font-size: clamp(46px,5.2vw,72px); letter-spacing: -.025em; overflow-wrap: anywhere; }
.schedule-grid .class-tag { margin: 14px 0 0; color: #ff666b; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.class-motto { min-height: 3.4em; margin: 20px 0 30px; max-width: 380px; color: #ededed; font-size: clamp(17px,1.7vw,22px); line-height: 1.65; }
.schedule-block { margin-top: 18px; padding: 22px 24px; border: 1px solid #353535; border-radius: 14px; background: rgba(0,0,0,.25); color: #fff; text-align: left; gap: 7px; }
.schedule-block b { margin: 0 0 4px; padding: 0; background: transparent; color: #aaa; font: 800 10px var(--body); letter-spacing: .16em; }
.schedule-block span { color: #fff; font-size: 12px; }
.schedule-block strong { font-size: clamp(26px,3vw,36px); font-weight: 600; letter-spacing: .02em; }
@media (max-width: 800px) {
  .booking { padding: 60px 0 75px; }
  .schedule-grid { gap: 24px; }
  .schedule-grid article { padding: 30px 24px; }
  .class-motto { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .schedule-grid article { transition: none; }
  .schedule-grid article:hover { transform: none; }
}
