.elementor-20360 .elementor-element.elementor-element-8772a84{padding:0px 0px 0px 0px;}.elementor-20360 .elementor-element.elementor-element- > .elementor-element-populated{padding:0px 0px 0px 0px;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-20360 .elementor-element.elementor-element-c320f90{padding:0px 0px 0px 0px;}.elementor-20360 .elementor-element.elementor-element-8a29283{padding:0px 0px 0px 0px;}.elementor-20360 .elementor-element.elementor-element-:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-20360 .elementor-element.elementor-element- > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;}.elementor-20360 .elementor-element.elementor-element- > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group.recaptcha_v3-bottomleft, .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}body.rtl .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-inline .elementor-field-group > abbr{padding-left:0px;}body:not(.rtl) .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-inline .elementor-field-group > abbr{padding-right:0px;}body .elementor-20360 .elementor-element.elementor-element-2792aed .elementor-labels-above .elementor-field-group > abbr{padding-bottom:0px;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-type-html{padding-bottom:0px;}.elementor-20360 .elementor-element.elementor-element-2792aed .dce-signature-wrapper{text-align:left;--canvas-width:400px;}.elementor-20360 .elementor-element.elementor-element-2792aed .dce-signature-canvas{border-radius:3px 3px 3px 3px;border-width:1px 1px 1px 1px;background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .dce-signature-button-clear{color:#e62626;}.elementor-20360 .elementor-element.elementor-element-2792aed .dce-signature-button-clear i{color:#e62626;font-size:16px;}.elementor-20360 .elementor-element.elementor-element-2792aed .dce-signature-button-clear svg{fill:#e62626;width:16px;height:16px;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group .elementor-select-wrapper .select2{background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-group .elementor-select-wrapper .select2 .elementor-field-textual{background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .mce-panel{background-color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-button[type="submit"]{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-label-description .elementor-field-label{display:inline-block;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-label-description:after{content:'?';display:inline-block;border-radius:50%;padding:2px 0;height:1.2em;line-height:1;font-size:80%;width:1.2em;text-align:center;margin-left:0.2em;color:#ffffff;background-color:#777777;}.elementor-20360 .elementor-element.elementor-element-2792aed{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-type-amount.elementor-field-group .dce-amount-visible{opacity:1;}.elementor-20360 .elementor-element.elementor-element-2792aed .elementor-field-type-dce_range input{opacity:1;}.elementor-20360 .elementor-element.elementor-element-fd29459{padding:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-20360 .elementor-element.elementor-element- > .elementor-element-populated{padding:64px 40px 64px 40px;}}@media(max-width:767px){.elementor-20360 .elementor-element.elementor-element- > .elementor-element-populated{padding:48px 20px 48px 20px;}}/* Start custom CSS *//* ============================================================
   HYROX TRAINING  —  /hyrox-training/
   Rollover checklist for the next cycle is in the build notes.
   ============================================================ */

.hx{
  /* Prices, dates, times and the race name all live as real text in
     the HTML widgets so search engines and screen readers can read
     them. Rolling to the next cycle = editing those widgets. */

  /* ---- BRAND TOKENS (match sitewide) ---- */
  --ink:#111111;
  --paper:#FFFFFF;
  --field:#F2F2F2;
  --body:#615750;
  --tan:#C49A6D;
  --signal:#FBE166;
  --rule:#DEDAD5;
  --rule-dk:#2E2A27;
  --display:"Teko","Oswald","Arial Narrow",sans-serif;
  --head:"Roboto Slab",Georgia,serif;
  --text:"Roboto","Helvetica Neue",Arial,sans-serif;
  --gut:clamp(20px,5vw,80px);
  --band:clamp(56px,8vw,116px);
  --max:1240px;

  color:var(--ink);
  font-family:var(--text);
  -webkit-font-smoothing:antialiased;
}

.hx *,.hx *::before,.hx *::after{box-sizing:border-box}
.hx img{display:block;max-width:100%;height:auto}
.hx p{margin:0 0 1em;line-height:1.6}
.hx p:last-child{margin-bottom:0}
.hx ul{margin:0;padding:0;list-style:none}
.hx a:not([class]){color:inherit}
.hx a:focus-visible{outline:2px solid var(--signal);outline-offset:3px}

/* ---------- layout ---------- */
.hx-band{padding:var(--band) var(--gut);background:var(--paper)}
.hx-band--tight{padding-top:clamp(36px,5vw,64px);padding-bottom:clamp(36px,5vw,64px)}
.hx-in{max-width:var(--max);margin:0 auto}
.hx-in--narrow{max-width:820px}
.hx-ink{background:var(--ink);color:var(--paper)}
.hx-field{background:var(--field)}

/* ---------- type ---------- */
.hx-eyebrow{
  font-family:var(--display);text-transform:uppercase;
  font-size:clamp(15px,2.4vw,19px);letter-spacing:.18em;line-height:1;
  color:var(--body);margin:0 0 18px;font-weight:500;
}
.hx-ink .hx-eyebrow{color:var(--signal)}
.hx-h1{
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(46px,11vw,104px);line-height:.9;letter-spacing:.005em;margin:0;
}
.hx-h2{
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(34px,6.4vw,62px);line-height:.94;margin:0 0 20px;
}
.hx-h3{
  font-family:var(--head);font-weight:700;
  font-size:clamp(19px,2.4vw,23px);line-height:1.25;margin:0 0 10px;
}
.hx-ink .hx-h3{color:var(--paper)}
.hx-lede{
  font-family:var(--head);font-weight:400;
  font-size:clamp(17px,2.3vw,22px);line-height:1.45;color:var(--body);margin:0 0 26px;
}
.hx-ink .hx-lede{color:#D8D2CB}
.hx-copy{font-size:clamp(15.5px,1.7vw,17.5px);line-height:1.65;color:var(--body);max-width:66ch}
.hx-ink .hx-copy{color:#CFC9C2}
.hx-copy--wide{max-width:78ch}
.hx-kicker{
  font-family:var(--display);text-transform:uppercase;letter-spacing:.14em;
  font-size:14px;color:var(--tan);margin:0 0 10px;line-height:1;
}

/* ---------- buttons ---------- */
.hx a.hx-cta{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(19px,2.6vw,23px);letter-spacing:.06em;line-height:1;
  padding:19px 34px;border-radius:0;border:2px solid var(--ink);
  background:var(--ink);color:var(--paper);text-decoration:none;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.hx a.hx-cta:hover,.hx a.hx-cta:focus-visible{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.hx a.hx-cta--ghost{background:transparent;color:var(--ink)}
.hx a.hx-cta--ghost:hover,.hx a.hx-cta--ghost:focus-visible{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hx-ink a.hx-cta{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.hx-ink a.hx-cta:hover,.hx-ink a.hx-cta:focus-visible{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.hx-ink a.hx-cta--ghost{background:transparent;color:var(--paper);border-color:#4A443E}
.hx-ink a.hx-cta--ghost:hover,.hx-ink a.hx-cta--ghost:focus-visible{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.hx-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.hx-actions a.hx-cta{flex:1 1 240px}
.hx-cta-note{font-size:13.5px;line-height:1.5;color:var(--body);margin:0}
.hx-ink .hx-cta-note{color:#9A928A}

/* ---------- hero ---------- */
.hx-hero{padding:clamp(44px,7vw,96px) var(--gut) clamp(0px,0vw,0px)}
.hx-hero-grid{max-width:var(--max);margin:0 auto;display:grid;gap:clamp(28px,4vw,56px)}
@media(min-width:960px){
  .hx-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}
}
.hx-badge{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--display);text-transform:uppercase;letter-spacing:.16em;
  font-size:14px;line-height:1;padding:9px 14px;
  border:1px solid #4A443E;color:var(--signal);margin:0 0 22px;
}
.hx-badge b{width:7px;height:7px;background:var(--signal);display:block}
.hx-hero-sub{margin:20px 0 26px}
.hx-hero-shot{
  position:relative;aspect-ratio:4/3;background:#1B1815;
  border:1px solid var(--rule-dk);overflow:hidden;
}
.hx-hero-shot img{width:100%;height:100%;object-fit:cover}
.hx-ph{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px;
  font-family:var(--display);text-transform:uppercase;letter-spacing:.14em;
  font-size:14px;color:#6B635B;
}
.hx-ph span{font-family:var(--text);letter-spacing:0;text-transform:none;font-size:12.5px;max-width:30ch;line-height:1.5}

/* ---------- date rail ---------- */
.hx-rail{
  display:grid;gap:1px;background:#332F2B;border:1px solid #332F2B;margin:0 0 26px;
}
@media(min-width:640px){.hx-rail{grid-template-columns:repeat(3,1fr)}}
.hx-rail div{background:var(--ink);padding:16px 18px}
.hx-rail dt{
  font-family:var(--display);text-transform:uppercase;letter-spacing:.15em;
  font-size:12.5px;color:var(--tan);margin:0 0 6px;line-height:1;
}
.hx-rail dd{
  margin:0;font-family:var(--display);text-transform:uppercase;
  font-size:clamp(22px,3.4vw,27px);line-height:1.05;color:var(--paper);
}
.hx-rail dd small{display:block;font-family:var(--text);text-transform:none;font-size:12.5px;color:#9A928A;letter-spacing:0;margin-top:4px}

/* ---------- fact strip ---------- */
.hx-strip{
  display:grid;gap:1px;background:var(--rule);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
}
@media(min-width:560px){.hx-strip{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.hx-strip{grid-template-columns:repeat(4,1fr)}}
.hx-strip div{background:var(--paper);padding:20px var(--gut);text-align:center}
@media(min-width:900px){.hx-strip div{padding:24px 20px}}
.hx-strip b{
  display:block;font-family:var(--display);text-transform:uppercase;
  font-size:clamp(24px,3.2vw,30px);line-height:1;margin-bottom:5px;
}
.hx-strip span{font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--body)}

/* ---------- generic grids ---------- */
.hx-grid{display:grid;gap:clamp(20px,3vw,32px)}
@media(min-width:760px){.hx-grid--2{grid-template-columns:1fr 1fr}}
@media(min-width:760px){.hx-grid--3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.hx-grid--3{grid-template-columns:repeat(3,1fr)}}

/* ---------- lists ---------- */
.hx-list li{
  position:relative;padding:14px 0 14px 26px;border-bottom:1px solid var(--rule);
  font-size:clamp(15.5px,1.7vw,17.5px);line-height:1.55;color:var(--body);
}
.hx-ink .hx-list li{border-color:var(--rule-dk);color:#CFC9C2}
.hx-list li::before{
  content:"";position:absolute;left:0;top:23px;width:11px;height:2px;background:var(--tan);
}
.hx-list li:last-child{border-bottom:0}
.hx-list li b{color:var(--ink);font-weight:700}
.hx-ink .hx-list li b{color:var(--paper)}

/* ---------- stations ---------- */
.hx-stations{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.hx-stations li{
  font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;
  font-size:16px;line-height:1;padding:10px 13px;border:1px solid var(--rule);color:var(--ink);
}
.hx-ink .hx-stations li{border-color:var(--rule-dk);color:#E6E1DB}

/* ---------- schedule table ---------- */
.hx-sched{border-top:2px solid var(--ink);margin:0 0 28px}
.hx-sched li{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:15px 0;border-bottom:1px solid var(--rule);
}
.hx-sched .w{
  font-family:var(--display);text-transform:uppercase;letter-spacing:.13em;
  font-size:13px;color:var(--body);flex:0 0 auto;
}
.hx-sched .d{
  font-family:var(--display);text-transform:uppercase;
  font-size:clamp(21px,3vw,26px);line-height:1;text-align:right;
}
.hx-sched li.is-sim{background:var(--field);padding-left:14px;padding-right:14px;border-bottom:0;border-top:1px solid var(--rule)}
.hx-sched li.is-sim .w{color:var(--ink)}
.hx-sched-meta{
  display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);
}
@media(min-width:560px){.hx-sched-meta{grid-template-columns:1fr 1fr}}
.hx-sched-meta div{background:var(--paper);padding:16px 18px}
.hx-sched-meta dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--body);margin:0 0 5px}
.hx-sched-meta dd{margin:0;font-family:var(--display);text-transform:uppercase;font-size:clamp(20px,2.8vw,25px);line-height:1}

/* ---------- who it's for ---------- */
.hx-who li{
  padding:20px;border:1px solid var(--rule);background:var(--paper);
  font-family:var(--head);font-size:clamp(16.5px,1.9vw,19px);line-height:1.4;
}
.hx-who li b{display:block;font-family:var(--display);text-transform:uppercase;font-size:13px;letter-spacing:.13em;color:var(--tan);margin-bottom:9px;font-weight:500}

/* ---------- coach ---------- */
.hx-coach{display:grid;gap:clamp(24px,4vw,48px)}
@media(min-width:820px){.hx-coach{grid-template-columns:.8fr 1.2fr;align-items:start}}
.hx-coach-shot{position:relative;aspect-ratio:4/5;background:#1B1815;border:1px solid var(--rule-dk);overflow:hidden}
.hx-coach-shot img{width:100%;height:100%;object-fit:cover}

/* ---------- todo flag (remove before publish) ---------- */
.hx-todo{
  border-left:3px solid var(--signal);background:rgba(251,225,102,.10);
  padding:14px 16px;margin:16px 0 0;font-size:13.5px;line-height:1.55;color:#D8D2CB;
}
.hx-todo b{display:block;font-family:var(--display);text-transform:uppercase;letter-spacing:.13em;font-size:12.5px;color:var(--signal);margin-bottom:6px}

/* ---------- simulation ---------- */
.hx-sim{border:2px solid var(--ink);padding:clamp(26px,4vw,46px);background:var(--paper)}
.hx-sim-date{
  font-family:var(--display);text-transform:uppercase;
  font-size:clamp(28px,4.4vw,42px);line-height:1;color:var(--ink);margin:0 0 18px;
}
.hx-sim-pull{
  font-family:var(--head);font-weight:700;font-size:clamp(19px,2.6vw,26px);
  line-height:1.3;margin:24px 0;padding-left:18px;border-left:4px solid var(--signal);color:var(--ink);
}

/* ---------- pricing ---------- */
.hx-price{
  border:1px solid var(--rule);background:var(--paper);padding:26px 24px;display:flex;flex-direction:column;
}
.hx-price--lead{border:2px solid var(--ink)}
.hx-price h3{
  font-family:var(--display);text-transform:uppercase;font-size:clamp(24px,3.2vw,30px);
  line-height:1;margin:0 0 6px;
}
.hx-price .incl{font-size:14px;line-height:1.5;color:var(--body);margin:0 0 20px}
.hx-price dl{margin:0;border-top:1px solid var(--rule)}
.hx-price dl div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}
.hx-price dt{font-size:14px;color:var(--body)}
.hx-price dd{margin:0;font-family:var(--display);font-size:clamp(26px,3.4vw,32px);line-height:1}
.hx-price .after{margin-top:16px;font-size:13px;line-height:1.55;color:var(--body)}
.hx-price .after b{display:block;font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;color:var(--ink);margin-bottom:4px}
.hx-early{
  display:inline-block;font-family:var(--display);text-transform:uppercase;letter-spacing:.13em;
  font-size:12.5px;line-height:1;padding:8px 11px;background:var(--signal);color:var(--ink);margin:0 0 16px;
}

/* ---------- faq ---------- */
.hx-faq li{padding:22px 0;border-bottom:1px solid var(--rule)}
.hx-faq li:last-child{border-bottom:0}
.hx-faq h3{font-family:var(--head);font-weight:700;font-size:clamp(17px,2vw,19.5px);line-height:1.35;margin:0 0 8px}
.hx-faq p{font-size:clamp(15px,1.7vw,17px);line-height:1.6;color:var(--body);max-width:72ch}

/* ---------- NAP ---------- */
.hx-nap{
  margin-top:36px;padding-top:26px;border-top:1px solid var(--rule-dk);
  font-size:14.5px;line-height:1.65;color:#9A928A;
}
.hx-nap b{display:block;font-family:var(--display);text-transform:uppercase;font-size:19px;letter-spacing:.06em;color:var(--paper);margin-bottom:6px}
.hx-nap a{color:var(--signal);text-decoration:none}

/* ---------- register block ---------- */
.hx-reg-head{max-width:760px}
.hx-reg-steps{display:grid;gap:1px;background:var(--rule-dk);border:1px solid var(--rule-dk);margin:24px 0 0}
@media(min-width:700px){.hx-reg-steps{grid-template-columns:repeat(3,1fr)}}
.hx-reg-steps div{background:var(--ink);padding:16px 18px}
.hx-reg-steps b{
  display:block;font-family:var(--display);font-size:13px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tan);margin-bottom:6px;
}
.hx-reg-steps p{font-size:14px;line-height:1.5;color:#CFC9C2;margin:0}

/* ============================================================
   ELEMENTOR FORM  —  dark register band
   ============================================================ */
.hx-form-wrap .elementor-field-group{margin-bottom:0}
.hx-form-wrap label.elementor-field-label{display:none !important}
.hx-form-wrap input[type=text],
.hx-form-wrap input[type=email],
.hx-form-wrap input[type=tel],
.hx-form-wrap select,
.hx-form-wrap textarea{
  background:#1B1815 !important;
  border:1px solid #3A342F !important;
  border-radius:0 !important;
  color:#FFFFFF !important;
  font-family:var(--text) !important;
  font-size:16px !important;
  padding:15px 14px !important;
  min-height:54px !important;
  width:100% !important;
}
.hx-form-wrap input::placeholder,.hx-form-wrap textarea::placeholder{color:#8B837B !important;opacity:1}
.hx-form-wrap select{color:#FFFFFF !important}
.hx-form-wrap select option{color:#111111;background:#FFFFFF}
.hx-form-wrap input:focus,.hx-form-wrap select:focus,.hx-form-wrap textarea:focus{
  border-color:var(--signal) !important;outline:none !important;box-shadow:none !important;
}
.hx-form-wrap .elementor-button[type=submit]{
  background:var(--signal) !important;color:#111111 !important;border:2px solid var(--signal) !important;
  border-radius:0 !important;font-family:var(--display) !important;text-transform:uppercase !important;
  font-size:23px !important;letter-spacing:.06em !important;font-weight:600 !important;
  min-height:60px !important;
}
.hx-form-wrap .elementor-button[type=submit]:hover{background:#FFFFFF !important;border-color:#FFFFFF !important}
.hx-form-wrap .elementor-message{font-family:var(--text);font-size:15px;line-height:1.55}
.hx-form-wrap .elementor-message.elementor-message-success{color:var(--signal)}
.hx-form-wrap .elementor-message.elementor-message-danger{color:#F0A5A5}

/* ---------- spacing utilities ---------- */
.hx-mt-s{margin-top:18px}
.hx-mt-m{margin-top:28px}
.hx-mt-l{margin-top:36px}

.hx-form-wrap{max-width:1240px;margin:28px auto 0}
.hx-form-wrap .elementor-field-group.elementor-field-type-acceptance label{
  font-family:var(--text) !important;font-size:13px !important;line-height:1.55 !important;
  text-transform:none !important;letter-spacing:0 !important;font-weight:400 !important;
  color:#9A928A !important;display:flex !important;align-items:flex-start;gap:10px;margin:0;
}
.hx-form-wrap .elementor-field-group.elementor-field-type-acceptance label a{color:#C49A6D;text-decoration:underline}
.hx-form-wrap .elementor-field-group.elementor-field-type-acceptance input[type=checkbox]{
  width:16px !important;height:16px !important;min-height:0 !important;flex:0 0 16px;margin-top:2px;
}
.hx-form-wrap .elementor-field-group.elementor-field-type-acceptance{margin-top:6px}


/* ============================================================
   SPECIFICITY OVERRIDES
   Elementor's global kit styles headings as ".elementor-kit-N h1"
   (0,1,1), which outranks a bare ".hx-h1" (0,1,0). Everything here
   is the same rule at (0,2,0) so the page's own type wins.
   ============================================================ */
.hx .hx-h1{
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(46px,11vw,104px);line-height:.9;letter-spacing:.005em;
  margin:0;color:var(--ink);
}
.hx .hx-h2{
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(34px,6.4vw,62px);line-height:.94;margin:0 0 20px;color:var(--ink);
}
.hx .hx-h3{
  font-family:var(--head);font-weight:700;
  font-size:clamp(19px,2.4vw,23px);line-height:1.25;margin:0 0 10px;color:var(--ink);
}
.hx .hx-price h3{
  font-family:var(--display);text-transform:uppercase;font-weight:600;
  font-size:clamp(24px,3.2vw,30px);line-height:1;margin:0 0 6px;color:var(--ink);
}
.hx .hx-faq h3{
  font-family:var(--head);font-weight:700;text-transform:none;
  font-size:clamp(17px,2vw,19.5px);line-height:1.35;margin:0 0 8px;color:var(--ink);
}
.hx-ink .hx-h1,.hx-ink .hx-h2,.hx-ink .hx-h3{color:var(--paper)}
.hx-ink .hx-nap b{color:var(--paper)}


/* ============================================================
   MOBILE TIGHTENING
   Goal: what / where / when / how much / how to register all
   reachable fast on a phone. Keeps the hero from running long.
   ============================================================ */
/* Two-up only once the cells are wide enough for a display number
   on one line - at phone widths the strip stays single column. */
@media(min-width:520px){
  .hx-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:599px){
  .hx-badge{font-size:12.5px;letter-spacing:.12em;padding:8px 11px;margin-bottom:18px}
  .hx-hero-sub{margin:16px 0 20px}
  .hx-rail{margin-bottom:20px}
  .hx-rail div{padding:12px 14px}
  .hx-rail dt{font-size:11.5px;margin-bottom:5px}
  .hx-rail dd{font-size:21px}
  .hx-rail dd small{font-size:12px;margin-top:3px}
  .hx a.hx-cta{padding:17px 16px;font-size:18px}
  .hx-actions{gap:10px}
  .hx-actions a.hx-cta{flex:1 1 100%}
  .hx-hero-shot{aspect-ratio:16/11}
  .hx-coach-shot{aspect-ratio:4/3}
  .hx-strip div{padding:16px 14px}
  .hx-strip b{font-size:22px}
  .hx-strip span{font-size:11.5px}
  .hx-sched .d{font-size:20px}
  .hx-sim{padding:22px 18px}
  .hx-price{padding:22px 18px}
}


/* ============================================================
   FULL-BLEED BANDS
   The theme gives every populated column 40px of padding and caps
   .elementor-container at 1024px. Both are stripped here so the
   colour bands run edge to edge; the page's own --gut/--max handle
   the gutters and the reading width instead.
   ============================================================ */
.elementor-20360 .elementor-widget-wrap.elementor-element-populated{padding:0 !important}
.elementor-20360 .elementor-container{max-width:100% !important}
.elementor-20360 #register .elementor-widget-wrap.elementor-element-populated{
  padding:clamp(56px,8vw,116px) clamp(20px,5vw,80px) !important;
}


/* Single-column widths: a 4:5 portrait slot becomes a huge empty
   box once the hero stacks, so the image slots go landscape until
   the two-column layouts kick back in. */

@media(max-width:819px){ .hx-coach-shot{aspect-ratio:16/10} }


/* Coach photo: Bradley's face sits high and slightly right of centre
   in the sled-push frame, so the crop is anchored there rather than
   dead centre. Adjust if the photo is ever swapped. */
.hx-coach-shot img{object-position:55% 22%}
.hx-hero-shot img{object-position:50% 50%}/* End custom CSS */