/* Aloha Riders V1.10 modular asset */
/* ========================================================================
   V1.7 — Registration System + Contact Page
   ====================================================================== */
.aloha-registration-modal{
  width:min(760px,calc(100% - 28px));max-width:760px;max-height:min(900px,calc(100dvh - 28px));
  padding:0;border:0;background:#f4f2ed;color:#111;overflow:auto;overscroll-behavior:contain;
  box-shadow:0 34px 100px rgba(0,0,0,.42)
}
.aloha-registration-modal::backdrop{background:rgba(7,7,7,.76);backdrop-filter:blur(6px)}
.aloha-registration-shell{position:relative;padding:34px}
.aloha-registration-close{position:absolute;right:18px;top:18px;width:44px;height:44px;border:1px solid #d1cdc4;background:#fff;font-size:26px;line-height:1;cursor:pointer;z-index:3}
.aloha-registration-kicker,.aloha-registration-primary>small,.aloha-registration-option small,.aloha-registration-form-head small,.aloha-registration-success small{font-size:8px;font-weight:800;letter-spacing:.17em;color:var(--orange)}
.aloha-registration-head{padding-right:62px}
.aloha-registration-head h2{font-family:"Archivo Black";font-size:clamp(52px,7vw,78px);line-height:.85;letter-spacing:-.06em;text-transform:uppercase;margin:8px 0 18px}
.aloha-registration-head p{max-width:570px;margin:0;color:#6d6961;font-size:13px;line-height:1.65}
.aloha-registration-event-card{display:grid;grid-template-columns:1fr 180px;margin-top:28px;background:#111;color:#fff;border-left:5px solid var(--orange)}
.aloha-registration-event-card>div{padding:20px}
.aloha-registration-event-card>div+div{border-left:1px solid #333}
.aloha-registration-event-card small{display:block;font-size:8px;font-weight:800;letter-spacing:.14em;color:#8f8f8a;margin-bottom:8px}
.aloha-registration-event-card strong{display:block;font-family:"Archivo Black";font-size:22px;line-height:1;text-transform:uppercase;letter-spacing:-.035em}
.aloha-registration-event-card span{display:block;margin-top:9px;font-size:10px;color:#aaa}
.aloha-registration-event-state strong{font-family:Inter,sans-serif;font-size:12px;line-height:1.3;letter-spacing:0}
.aloha-registration-event-state span{font-family:"Archivo Black";font-size:22px;color:#fff}
.aloha-registration-primary{margin-top:14px;padding:18px;background:#fff;border:1px solid #d8d4cb}
.aloha-registration-primary>small{display:block;margin-bottom:10px}
.aloha-registration-external{display:grid;grid-template-columns:1fr 36px;gap:18px;align-items:center;background:var(--orange);color:#111;padding:18px;text-decoration:none}
.aloha-registration-external strong,.aloha-registration-option strong{display:block;font-size:13px;text-transform:uppercase}
.aloha-registration-external em,.aloha-registration-option em{display:block;margin-top:5px;font-style:normal;font-size:9px;line-height:1.45;opacity:.7}
.aloha-registration-external>b,.aloha-registration-option>b{font-size:20px;justify-self:end}
.aloha-registration-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.aloha-registration-option{display:grid;grid-template-columns:42px 1fr 24px;gap:12px;align-items:center;padding:17px;background:#fff;border:1px solid #d8d4cb;color:#111;text-decoration:none;min-height:92px;transition:.2s}
.aloha-registration-option:hover{border-color:#111;transform:translateY(-1px)}
.aloha-registration-option-icon{width:40px;height:40px;background:#111;color:#fff;display:grid;place-items:center;font-family:"Archivo Black";font-size:10px}
.aloha-registration-form-wrap{margin-top:26px;padding-top:26px;border-top:1px solid #cbc7be}
.aloha-registration-form-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}
.aloha-registration-form-head h3{font-family:"Archivo Black";font-size:28px;line-height:.98;text-transform:uppercase;letter-spacing:-.035em;margin:7px 0 0;max-width:420px}
.aloha-registration-form-head>span{max-width:190px;text-align:right;font-size:9px;color:#817d75;line-height:1.5}

/* Shared Aloha CF7 design */
.aloha-contact-form .wpcf7-form,.aloha-registration-modal .wpcf7-form{margin:0}
.aloha-cf7-form{display:block}
.aloha-form-grid{display:grid;gap:12px}.aloha-form-grid-2{grid-template-columns:1fr 1fr}
.aloha-cf7-form label{display:block;font-size:9px;font-weight:800;letter-spacing:.08em;color:#69655e}
.aloha-cf7-form label>span:first-child,.aloha-form-label{display:block;margin-bottom:7px}
.aloha-cf7-form input[type="text"],.aloha-cf7-form input[type="email"],.aloha-cf7-form input[type="tel"],.aloha-cf7-form input[type="number"],.aloha-cf7-form select,.aloha-cf7-form textarea{
  width:100%;border:1px solid #cfcac1;border-radius:0;background:#fff;color:#111;min-height:50px;padding:11px 13px;font:600 12px/1.4 Inter,sans-serif;outline:0;box-shadow:none
}
.aloha-cf7-form textarea{min-height:112px;resize:vertical}
.aloha-cf7-form input:focus,.aloha-cf7-form select:focus,.aloha-cf7-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 2px rgba(255,90,24,.12)}
.aloha-message-field{margin-top:12px}
.aloha-participant-choice{margin:18px 0 12px;padding:15px 0;border-top:1px solid #d8d4cb;border-bottom:1px solid #d8d4cb}
.aloha-participant-choice .wpcf7-radio{display:flex;gap:10px;flex-wrap:wrap}
.aloha-participant-choice .wpcf7-list-item{margin:0}
.aloha-participant-choice .wpcf7-list-item label{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #d3cec5;background:#fff;cursor:pointer;color:#111;letter-spacing:0;font-size:10px}
.aloha-participants-wrap{background:#ebe8e1;padding:15px;margin-bottom:12px}
.aloha-participants-wrap[hidden]{display:none!important}
.aloha-participants-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:11px}
.aloha-participants-head strong{font-size:11px;text-transform:uppercase}.aloha-participants-head small{font-size:8px;color:#77736b}
.aloha-participant-row{position:relative;display:grid;grid-template-columns:1fr 110px;gap:10px;margin-bottom:9px}
.aloha-remove-participant{position:absolute;right:0;top:-20px;border:0;background:transparent;color:#a33;font-size:8px;font-weight:800;cursor:pointer;text-transform:uppercase}
.aloha-add-participant{border:1px solid #bdb8ae;background:transparent;min-height:38px;padding:0 12px;font-size:9px;font-weight:800;cursor:pointer}
.aloha-form-privacy{display:flex;gap:12px;align-items:flex-start;margin:15px 0;color:#6f6b63;font-size:8px;line-height:1.5}
.aloha-form-privacy .wpcf7-list-item{margin:0}.aloha-form-privacy a{text-decoration:underline}
.aloha-form-submit{width:100%!important;min-height:54px!important;border:0!important;background:var(--orange)!important;color:#fff!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase;cursor:pointer!important}
.aloha-cf7-form .wpcf7-not-valid-tip{display:block;color:#a12626;font-size:8px;margin-top:5px;letter-spacing:0}
.aloha-contact-form .wpcf7-response-output,.aloha-registration-modal .wpcf7-response-output{margin:12px 0 0!important;padding:10px 12px!important;border:1px solid #bbb!important;font-size:9px!important}
.aloha-cf7-form .wpcf7-spinner{margin:10px 0 0}

.aloha-registration-success,.aloha-contact-success{text-align:center;padding:46px 22px;background:#111;color:#fff}
.aloha-registration-success[hidden],.aloha-contact-success[hidden]{display:none!important}
.aloha-registration-success>span,.aloha-contact-success>span{width:54px;height:54px;border-radius:50%;background:var(--orange);display:grid;place-items:center;margin:0 auto 18px;font-size:22px;color:#111;font-weight:900}
.aloha-registration-success h3,.aloha-contact-success h3{font-family:"Archivo Black";text-transform:uppercase;font-size:32px;line-height:.95;margin:7px auto 12px;max-width:520px}
.aloha-registration-success p,.aloha-contact-success p{max-width:480px;margin:0 auto 22px;color:#aaa;font-size:11px;line-height:1.6}
.aloha-registration-footer{display:flex;justify-content:space-between;gap:24px;padding-top:20px;margin-top:22px;border-top:1px solid #cbc7be;color:#716d65}
.aloha-registration-footer span{font-size:9px;font-weight:700}.aloha-registration-footer small{font-size:7px;line-height:1.5;max-width:320px;text-align:right}
body.registration-modal-open{overflow:hidden}
body.registration-modal-open .premium-event-mobile-booking,body.registration-modal-open .mobile-sticky{opacity:0!important;pointer-events:none!important}

/* ========================================================================
   V1.8.2 — Instant recurring-session switching + clearer modal context
   ====================================================================== */
.aloha-registration-event-choice{
  display:flex!important;
  flex-wrap:wrap;
  align-items:center;
  gap:7px 12px;
}
.aloha-registration-event-choice [data-registration-event-selection]{
  color:#aaa;
}
.aloha-registration-event-date{
  color:var(--orange)!important;
  font-weight:900;
  letter-spacing:.06em;
}

