/* 28 Sep 2026 — leadership role accent colours (Zone Owner gold, Zone Mentor pink, Influencer purple, City SPOC teal) */
:root{--hah-r-owner:#F5A623;--hah-r-owner-t:#141A2E;--hah-r-mentor:#DE2174;--hah-r-infl:#7B3FE4;--hah-r-spoc:#0E9F9A}
.hah-hier-tag.r-owner,.hah-hier-tag.r-mentor,.hah-hier-tag.r-influencer,.hah-hier-tag.r-contact,
.hah-hier-keyrow b,.hah-dir-lead .hah-dir-box .hah-dir-k,.hah-dir-k.hah-dir-k2,.hah-ct-k,.hah-rolelist-h h3{display:inline-block;padding:5px 14px;border-radius:999px;font-weight:800;letter-spacing:.4px;color:#fff !important;line-height:1.3}
.hah-hier-tag.r-owner,.hah-hier-keyrow.r-owner b,.hah-dir-lead .hah-dir-box:nth-child(1) .hah-dir-k,#role-owner .hah-rolelist-h h3{background:var(--hah-r-owner) !important;color:var(--hah-r-owner-t) !important;opacity:1 !important}
.hah-hier-tag.r-mentor,.hah-hier-keyrow.r-mentor b,.hah-dir-lead .hah-dir-box:nth-child(2) .hah-dir-k,.hah-ct-k.hah-ct-k2,#role-mentor .hah-rolelist-h h3{background:var(--hah-r-mentor) !important;opacity:1 !important}
.hah-hier-tag.r-influencer,.hah-hier-keyrow.r-influencer b,#role-influencer .hah-rolelist-h h3{background:var(--hah-r-infl) !important;opacity:1 !important}
.hah-hier-tag.r-contact,.hah-hier-keyrow.r-contact b,.hah-dir-k.hah-dir-k2,.hah-ct-k:not(.hah-ct-k2),#role-contact .hah-rolelist-h h3{background:var(--hah-r-spoc) !important;opacity:1 !important}
.hah-dir-lead .hah-dir-box:nth-child(1){border-left:5px solid var(--hah-r-owner)}
.hah-dir-lead .hah-dir-box:nth-child(2){border-left:5px solid var(--hah-r-mentor)}
.hah-hier-keyrow b{margin-right:10px;min-width:118px;text-align:center}

/* 28 Sep 2026 — already-registered note after Find me */
.hah-me .hah-me-have{margin-top:10px;padding:10px 12px;background:#FFF3D6;border-left:4px solid #FF8A00;border-radius:8px;color:#141A2E;font-size:14px;line-height:1.5}

/* 28 Sep 2026 — wrong email warning */
#hah-mobile.hah-bad,#hah-email.hah-bad{border-color:#C62828 !important;box-shadow:0 0 0 3px rgba(198,40,40,.15) !important;background:#FFF5F5}
.hah-email-bad{color:#C62828}

/* 28 Sep 2026 — share message after nominating */
.hah-yay .hah-yay-share{margin:12px 0 14px;padding:14px 16px;background:#FFF3D6;color:#141A2E;border-left:5px solid #FF8A00;border-radius:10px;font-size:16px;font-weight:600;line-height:1.5}
.hah-yay .hah-yay-share b{color:#DE2174}

/* 28 Sep 2026 — tentative dates tag */
.hah-tentative{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;font-size:13.5px;color:#5C6480;line-height:1.4}
.hah-tentative span{display:inline-block;background:#FF8A00;color:#fff;font-weight:800;letter-spacing:.4px;text-transform:uppercase;font-size:12px;padding:5px 12px;border-radius:999px}

/* HAH Championship 9 — nomination form, my entries, counts and board. */

.hah-form, .hah-board, .hah-cd, .hah-hd, .hah-dir, .hah-ct, .hah-cal, .hah-draws, .hah-draw-none, .hah-draw-frame, .hah-wheel, .hah-an, .hah-herobg {
  --hah-pink:#DE2174; --hah-navy:#0C1733; --hah-accent:#16224A;
  --hah-ink:#141A2E; --hah-muted:#5C6480; --hah-line:#E4E7F0; --hah-bg:#F3F4F8;
  --hah-green:#127A3E; --hah-amber:#A85B00;
  font-family:'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color:var(--hah-ink);
}
.hah-form, .hah-board { max-width:1000px; margin:0 auto; }
.hah-bulk { max-width:1100px; }

/* ---------------------------------------------------------- steps */
.hah-step { background:#fff; border:1px solid var(--hah-line); border-radius:18px;
  padding:26px 28px 30px; margin-bottom:18px; }
.hah-step-h { display:flex; align-items:center; gap:14px; }
.hah-num { width:38px; height:38px; border-radius:11px; background:var(--hah-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:16px; flex:0 0 auto; }
.hah-step-h h2 { margin:0; font-size:24px; font-weight:800; letter-spacing:-0.6px; }
.hah-help { color:var(--hah-muted); font-size:15px; margin:10px 0 18px; line-height:1.55; }

/* ---------------------------------------------------------- fields */
.hah-grid  { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px,1fr)); gap:16px; }
.hah-grid2 { display:grid; grid-template-columns:repeat(auto-fit, minmax(230px,1fr)); gap:14px; }
.hah-f { display:flex; flex-direction:column; gap:6px; }
.hah-f > span { font-size:13px; font-weight:700; letter-spacing:0.2px; }
.hah-f > span b { color:var(--hah-pink); }
.hah-f input, .hah-f select {
  font:inherit; font-size:16px; padding:12px 14px; border:1.5px solid var(--hah-line);
  border-radius:10px; background:#fff; color:var(--hah-ink); width:100%;
}
.hah-f input:focus, .hah-f select:focus {
  outline:none; border-color:var(--hah-pink); box-shadow:0 0 0 3px rgba(222,33,116,.12);
}
.hah-hint { font-style:normal; font-size:12.5px; color:var(--hah-muted); line-height:1.45; }

/* ---------------------------------------------------- event picker */
.hah-events { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px,1fr)); gap:12px; }
.hah-ev { position:relative; display:flex; gap:12px; align-items:flex-start; cursor:pointer;
  background:#fff; border:2px solid var(--hah-line); border-radius:14px; padding:16px 42px 16px 18px;
  transition:border-color .15s, box-shadow .15s, transform .15s; }
.hah-ev:hover { border-color:var(--ev); transform:translateY(-2px); box-shadow:0 8px 20px rgba(12,23,51,.08); }
.hah-ev input { position:absolute; opacity:0; pointer-events:none; }
.hah-ev.is-on { border-color:var(--ev); background:color-mix(in srgb, var(--ev) 5%, #fff); }
.hah-ev-body { display:flex; flex-direction:column; gap:5px; }
.hah-ev-name { font-size:16.5px; font-weight:800; letter-spacing:-0.3px; }
.hah-ev-note { font-size:13px; color:var(--hah-muted); line-height:1.45; }
.hah-ev-tick { position:absolute; top:14px; right:14px; width:24px; height:24px; border-radius:50%;
  border:2px solid var(--hah-line); color:#fff; font-size:13px; display:flex; align-items:center;
  justify-content:center; transition:.15s; }
.hah-ev.is-on .hah-ev-tick { background:var(--ev); border-color:var(--ev); }

/* --------------------------------------------------- event panels */
.hah-panel { border:1px solid var(--hah-line); border-left:5px solid var(--ev);
  border-radius:14px; padding:22px 24px; margin-bottom:14px; background:#fff; }
.hah-panel h3 { margin:0 0 4px; font-size:20px; font-weight:800; letter-spacing:-0.4px;
  display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }
.hah-cat { font-size:12px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--ev); }
.hah-panel h4 { margin:0 0 4px; font-size:15px; font-weight:800; }

.hah-fmt { display:flex; gap:10px; flex-wrap:wrap; margin:14px 0 4px; }
.hah-chip { position:relative; cursor:pointer; }
.hah-chip input { position:absolute; opacity:0; pointer-events:none; }
.hah-chip span { display:inline-block; padding:9px 18px; border:2px solid var(--hah-line);
  border-radius:999px; font-size:14px; font-weight:700; transition:.15s; }
.hah-chip.is-on span { border-color:var(--ev); background:var(--ev); color:#fff; }

.hah-sub { margin-top:18px; padding-top:18px; border-top:1px solid var(--hah-line); }
.hah-note { font-size:13px; color:var(--hah-muted); line-height:1.5; margin:12px 0 0; }
.hah-note a { color:var(--hah-pink); font-weight:600; }

/* -------------------------------------------------------- actions */
.hah-actions { text-align:center; padding:8px 0 30px; }
.hah-btn { font:inherit; font-size:16px; font-weight:700; color:#fff; background:var(--hah-pink);
  border:0; border-radius:11px; padding:16px 34px; cursor:pointer; transition:.15s; }
.hah-btn:hover { background:#c01a63; transform:translateY(-1px); }
.hah-btn:disabled { opacity:.6; cursor:default; transform:none; }

.hah-msg { display:none; }
.hah-msg.is-error, .hah-msg.is-ok { display:block; border-radius:12px; padding:15px 18px;
  font-size:15px; line-height:1.55; margin-bottom:16px; }
.hah-msg.is-error { background:#FDECF3; border:1px solid rgba(222,33,116,.3); color:#8E1147; }
.hah-msg.is-ok { background:#E6F6EC; border:1px solid rgba(18,122,62,.3); color:#0C5C2E; }

.hah-done { background:#fff; border:2px solid var(--hah-green); border-radius:18px; padding:30px 32px; }
.hah-done h3 { margin:0 0 10px; font-size:26px; font-weight:800; letter-spacing:-0.7px; }
.hah-done p { font-size:16px; line-height:1.6; margin:0 0 10px; }
.hah-codes { margin-top:18px; padding-top:16px; border-top:1px solid var(--hah-line); }
.hah-codes h4 { margin:0 0 8px; font-size:15px; font-weight:800; }
.hah-codes code { background:var(--hah-navy); color:#fff; padding:3px 10px; border-radius:6px;
  font-size:15px; letter-spacing:1.5px; font-weight:700; }

/* ------------------------------------------------------ my entries */
.hah-mine .hah-lookup { display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap;
  background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:20px 22px; margin-bottom:16px; }
.hah-mine .hah-lookup .hah-f { flex:1 1 220px; }
.hah-mine-who { display:flex; justify-content:space-between; align-items:baseline; gap:14px;
  flex-wrap:wrap; padding:0 4px 12px; }
.hah-mine-who b { font-size:21px; font-weight:800; letter-spacing:-0.4px; }
.hah-mine-who span { font-size:14px; color:var(--hah-muted); }
.hah-mine-row { display:grid; grid-template-columns:200px 1fr auto; gap:16px; align-items:center;
  background:#fff; border:1px solid var(--hah-line); border-left:5px solid var(--ev);
  border-radius:12px; padding:16px 18px; margin-bottom:10px; }
.hah-mine-ev b { display:block; font-size:16px; font-weight:800; }
.hah-mine-ev span { font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--ev); }
.hah-mine-meta { font-size:14px; color:var(--hah-muted); line-height:1.6; }
.hah-mine-meta b { color:var(--hah-ink); }
.hah-mine-acts { display:flex; gap:8px; flex-wrap:wrap; }
.hah-mine-acts button { font:inherit; font-size:13px; font-weight:700; padding:9px 14px;
  border:1.5px solid var(--hah-line); background:#fff; border-radius:8px; cursor:pointer; color:var(--hah-ink); }
.hah-mine-acts button:hover { border-color:var(--hah-navy); }
.hah-mine-acts .hah-danger { color:#A11744; border-color:#F3C9DA; }
.hah-mine-acts .hah-danger:hover { background:#FDECF3; border-color:var(--hah-pink); }
@media (max-width:720px) { .hah-mine-row { grid-template-columns:1fr; } }

/* ------------------------------------------------- counts & board */
.hah-tile { background:#fff; border:1px solid var(--hah-line); border-radius:14px;
  padding:18px 20px; text-align:center; }
.hah-tile b { display:block; font-size:34px; font-weight:800; letter-spacing:-1.4px; color:var(--hah-pink); }
.hah-tile span { display:block; font-size:12.5px; font-weight:600; color:var(--hah-muted); margin-top:3px; }
.hah-inline-count { font-weight:800; color:var(--hah-pink); }

.hah-tiles { display:grid; grid-template-columns:repeat(auto-fit, minmax(170px,1fr)); gap:14px; margin-bottom:26px; }
.hah-board-h { font-size:22px; font-weight:800; letter-spacing:-0.5px; margin:28px 0 12px; }
.hah-tbl-wrap { overflow-x:auto; border:1px solid var(--hah-line); border-radius:14px; background:#fff; }
.hah-tbl { border-collapse:collapse; width:100%; min-width:460px; }
.hah-tbl th { font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase;
  color:var(--hah-muted); text-align:left; padding:12px 16px; background:var(--hah-bg);
  border-bottom:1px solid var(--hah-line); }
.hah-tbl td { padding:11px 16px; font-size:14.5px; border-bottom:1px solid var(--hah-line); }
.hah-tbl tr:last-child td { border-bottom:none; }
.hah-tbl .hah-n { text-align:right; font-variant-numeric:tabular-nums; font-weight:600; }
.hah-dot { display:inline-block; width:10px; height:10px; border-radius:3px; margin-right:9px; vertical-align:0; }
.hah-zone { margin-bottom:18px; }
.hah-zone-h { display:flex; justify-content:space-between; align-items:baseline; gap:12px;
  flex-wrap:wrap; padding:0 4px 8px; }
.hah-zone-h strong { font-size:17px; font-weight:800; }
.hah-zone-h span { font-size:13px; color:var(--hah-muted); }

@media (max-width:600px) {
  .hah-step { padding:20px 18px 24px; border-radius:14px; }
  .hah-step-h h2 { font-size:20px; }
  .hah-panel { padding:18px; }
}

/* ------------------------------------------- participation & top 3 */
.hah-part .hah-rank .hah-pos{width:44px;text-align:center;color:#6B7489;font-weight:800}
.hah-part .hah-rank tr.hah-top3 .hah-pos{color:#DE2174}
.hah-part .hah-rank tr.hah-top3 td{background:#FDF2F7}
.hah-part .hah-rank td em{color:#8C97B4;font-style:normal;font-size:12.5px}
.hah-barcol{width:130px}
.hah-bar{display:block;height:8px;border-radius:5px;background:#E7EAF2;overflow:hidden}
.hah-bar i{display:block;height:100%;border-radius:5px;background:#DE2174}

.hah-top3-wrap{display:flex;gap:18px;flex-wrap:wrap}
.hah-top3-col{flex:1 1 240px;background:#16224A;border-radius:16px;padding:18px 20px}
.hah-top3-col h4{margin:0 0 12px;font-size:12px;letter-spacing:1.4px;font-weight:800;color:#8C97B4;text-transform:uppercase}
.hah-podium{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.hah-podium li{display:flex;align-items:center;gap:10px;color:#fff;font-size:15px}
.hah-medal{flex:0 0 26px;width:26px;height:26px;border-radius:8px;display:flex;align-items:center;
  justify-content:center;font-weight:800;font-size:13px;color:#0C1733;background:#8C97B4}
.hah-medal.hah-m1{background:#F2B705}
.hah-medal.hah-m2{background:#CBD3E2}
.hah-medal.hah-m3{background:#D08A4E}
.hah-pname{flex:1 1 auto;font-weight:600}
.hah-pnum{font-weight:800;color:#DE2174;font-variant-numeric:tabular-nums}
@media(max-width:600px){.hah-barcol{display:none}}


/* =================================================================== v1.1 */

.hah-f-wide { grid-column:1 / -1; }
.hah-f > span i { font-style:normal; font-weight:500; color:var(--hah-muted); }
.hah-f input[readonly] { background:#F6F7FB; color:var(--hah-ink); font-weight:700; }
.hah-help-tight { margin:4px 0 0; }
.hah-btn { display:inline-block; text-decoration:none; line-height:1.2; }
/* the Elementor kit colours every <a> on the page, so buttons say so twice */
a.hah-btn, .hah-form a.hah-btn, a.hah-btn:hover, a.hah-btn:focus { color:#fff; }
.hah-form a.hah-btn-ghost, a.hah-btn-ghost, a.hah-btn-ghost:hover { color:var(--hah-navy); }
.hah-btn-navy { background:var(--hah-navy); }
.hah-btn-navy:hover { background:#16224A; }
.hah-btn-ghost { background:#fff; color:var(--hah-navy); border:2px solid var(--hah-navy); }
.hah-btn-ghost:hover { background:#F3F4F8; color:var(--hah-navy); }
a.hah-btn-ghost:hover { color:var(--hah-navy); }
.hah-btn-big { font-size:17px; padding:18px 40px; letter-spacing:.4px; box-shadow:0 10px 24px rgba(222,33,116,.28); }

/* ---- employee ID row ---- */
.hah-idrow { display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap; }
.hah-idrow .hah-f { flex:1 1 240px; }
.hah-idrow .hah-btn { padding:13px 26px; }
.hah-me { margin:16px 0 18px; background:#EEF9F2; border:1px solid rgba(18,122,62,.25); border-radius:14px; padding:14px 18px; }
.hah-me-hi { font-size:19px; color:#0C5C2E; }
.hah-me-sub { font-size:14px; color:#2E6B45; margin-top:2px; }
.hah-me-test { margin-top:10px; font-size:12.5px; font-weight:800; letter-spacing:.4px; color:#8A4B00; background:#FDF1E0; border-radius:8px; padding:8px 10px; }
.hah-me-reg { margin-top:10px; font-size:14px; color:#1D3B7A; background:#EAF0FD; border-radius:8px; padding:9px 11px; }
.hah-notfound { margin:16px 0; background:#FDECF3; border:1px solid rgba(222,33,116,.3); border-radius:14px; padding:16px 18px; color:#6E0E38; }
.hah-notfound p { margin:6px 0 8px; font-size:14.5px; line-height:1.55; }
.hah-notfound a { color:var(--hah-pink); font-weight:700; }
.hah-helplist { list-style:none; margin:6px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px 18px; font-size:14.5px; }
.hah-helplist a { color:var(--hah-pink); font-weight:700; text-decoration:none; }

/* ---- T-shirt sizes ---- */
.hah-sizes { display:flex; flex-wrap:wrap; gap:8px; }
.hah-size { position:relative; cursor:pointer; }
.hah-size input { position:absolute; opacity:0; pointer-events:none; }
.hah-size span { display:flex; flex-direction:column; align-items:center; min-width:62px; padding:9px 10px;
  border:2px solid var(--hah-line); border-radius:12px; transition:.15s; background:#fff; }
.hah-size b { font-size:15px; font-weight:800; }
.hah-size i { font-style:normal; font-size:11.5px; color:var(--hah-muted); }
.hah-size.is-on span, .hah-size input:checked + span { border-color:var(--hah-pink); background:var(--hah-pink); color:#fff; }
.hah-size.is-on i, .hah-size input:checked + span i { color:rgba(255,255,255,.85); }
.hah-size input:focus-visible + span { box-shadow:0 0 0 3px rgba(222,33,116,.25); }

/* ---- event cards ---- */
.hah-ev { align-items:center; }
.hah-ev-icon { flex:0 0 46px; width:46px; height:46px; border-radius:13px; display:flex; align-items:center; justify-content:center;
  font-size:24px; background:color-mix(in srgb, var(--ev) 12%, #fff); }
.hah-ev.is-on .hah-ev-icon { background:var(--ev); }
/* the supplied event symbol, when it is in the library */
.hah-ev-icon.has-img { background:#fff; border:1px solid var(--hah-line,#E4E6EF); padding:5px; }
.hah-ev.is-on .hah-ev-icon.has-img { background:#fff; border-color:var(--ev); }
.hah-ev-icon.has-img img { width:100%; height:100%; object-fit:contain; display:block; }
.hah-panel-icon { display:inline-flex; width:30px; height:30px; vertical-align:-8px; align-items:center; justify-content:center; }
.hah-panel-icon img { width:100%; height:100%; object-fit:contain; display:block; }
.hah-evicon.elementor-widget { flex:0 0 auto; width:auto; }
.hah-ev-prize { display:inline-block; align-self:flex-start; margin-top:3px; font-size:12px; font-weight:800; color:#8A4B00;
  background:#FFF4DE; border-radius:999px; padding:3px 9px; }
.hah-ev input:focus-visible ~ .hah-ev-tick { box-shadow:0 0 0 3px rgba(222,33,116,.3); }
.hah-partner-name { flex:1 1 220px; min-height:46px; display:flex; align-items:center; font-size:15px; }
.hah-pn-ok { color:#0C5C2E; font-weight:800; }
.hah-pn-bad { color:#A11744; font-weight:700; font-size:14px; }
.hah-pn-wait { color:var(--hah-muted); }

/* ---- closed ---- */
.hah-closed { background:#fff; border:2px solid var(--hah-line); border-radius:18px; padding:26px 28px; }
.hah-closed-k { font-size:12px; font-weight:800; letter-spacing:1.6px; color:var(--hah-amber); }
.hah-closed h2 { margin:6px 0 10px; font-size:24px; font-weight:800; letter-spacing:-.5px; }
.hah-closed a { color:var(--hah-pink); font-weight:700; }

/* ---- you're in ---- */
.hah-done { padding:26px 26px 30px; }
.hah-yay { background-color:#0C1733; background-image:linear-gradient(135deg,#0C1733,#1B2A5C); color:#fff; border-radius:16px; padding:24px 26px; margin-bottom:18px; }
.hah-yay-k { font-size:13px; font-weight:800; letter-spacing:2px; color:var(--hah-pink); }
.hah-yay h3 { color:#fff; margin:4px 0 8px; font-size:26px; }
.hah-yay p { color:#D7DCEB; margin:0 0 6px; font-size:15.5px; }
.hah-yay-id { color:#fff; background:var(--hah-pink); border-radius:8px; padding:2px 10px; letter-spacing:1px; white-space:nowrap; }
.hah-yay-mail { font-size:14px !important; color:#B7C0D8 !important; }
.hah-done-h { margin:18px 0 8px; font-size:15px; font-weight:800; }
.hah-done-evs { list-style:none; margin:0 0 18px; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.hah-done-evs li { background:var(--ev); color:#fff; border-radius:999px; padding:7px 14px; font-size:14px; font-weight:700; }
.hah-done-acts { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }

/* ---- player pass ---- */
.hah-pass { position:relative; overflow:hidden; max-width:420px; margin:10px 0 0; border-radius:22px; padding:24px 24px 18px;
  color:#fff; background-color:#0C1733; background-image:linear-gradient(160deg,#0C1733 0%,#1B2A5C 100%); box-shadow:0 18px 40px rgba(12,23,51,.28); }
.hah-pass:before { content:''; position:absolute; right:-80px; top:-80px; width:240px; height:240px; border-radius:50%;
  background:radial-gradient(circle, rgba(222,33,116,.55), rgba(222,33,116,0) 70%); }
.hah-pass-top img { width:100%; max-width:300px; display:block; margin:0 auto 14px; position:relative; }
.hah-pass-k { text-align:center; font-size:11.5px; font-weight:800; letter-spacing:2px; color:var(--hah-pink); position:relative; }
.hah-pass-name { text-align:center; font-size:24px; font-weight:800; letter-spacing:-.4px; margin:4px 0 12px; position:relative; }
.hah-pass-idk { font-size:10.5px; font-weight:800; letter-spacing:1.6px; color:#8C97B4; margin-top:12px; position:relative; }
.hah-pass-id { background:#fff; color:var(--hah-pink); border-radius:12px; text-align:center; font-size:26px; font-weight:800;
  letter-spacing:1px; padding:8px 10px; margin-top:4px; position:relative; }
.hah-pass-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; margin-top:14px; position:relative; }
.hah-pass-grid i { display:block; font-style:normal; font-size:10.5px; font-weight:800; letter-spacing:1.3px; color:#8C97B4; }
.hah-pass-grid b { display:block; font-size:14.5px; }
.hah-pass-evs { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; position:relative; }
.hah-pass-ev { background:var(--ev,#DE2174); border-radius:999px; padding:5px 11px; font-size:12.5px; font-weight:700; }
.hah-pass-foot { text-align:center; font-size:12px; color:#B7C0D8; margin-top:16px; position:relative; }
.hah-pass-dl { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.hah-mine-h { margin:28px 0 10px; font-size:20px; font-weight:800; }
.hah-mine .hah-f-short { flex:0 1 200px; }

/* ================================================================ countdown */
.hah-cd { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.hah-cd-label { font-size:12px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; }
.hah-cd-boxes { display:flex; gap:8px; margin:8px 0 6px; }
.hah-cd-boxes span { min-width:62px; border-radius:12px; padding:8px 8px 6px; text-align:center; }
.hah-cd-boxes b { display:block; font-size:28px; font-weight:800; letter-spacing:-.5px; line-height:1; font-variant-numeric:tabular-nums; }
.hah-cd-boxes i { display:block; font-style:normal; font-size:10.5px; font-weight:700; letter-spacing:1px; text-transform:uppercase; margin-top:3px; }
.hah-cd-date { font-size:13px; }
/* on dark backgrounds (hero) */
.hah-cd-hero .hah-cd-label { color:var(--hah-pink); }
.hah-cd-hero .hah-cd-boxes span { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); color:#fff; backdrop-filter:blur(6px); }
.hah-cd-hero .hah-cd-boxes i { color:#B7C0D8; }
.hah-cd-hero .hah-cd-date { color:#B7C0D8; }
/* bar above the form */
.hah-cd-bar { display:flex; align-items:center; gap:10px 18px; flex-wrap:wrap; background:var(--hah-navy); color:#fff;
  border-radius:16px; padding:14px 20px; margin-bottom:18px; }
.hah-cd-bar .hah-cd-label { color:#fff; }
.hah-cd-bar .hah-cd-boxes { margin:0; }
.hah-cd-bar .hah-cd-boxes span { background:rgba(255,255,255,.1); min-width:54px; padding:6px; }
.hah-cd-bar .hah-cd-boxes b { font-size:22px; color:#fff; }
.hah-cd-bar .hah-cd-boxes i { color:#B7C0D8; }
.hah-cd-bar .hah-cd-date { color:#B7C0D8; }
/* light card */
.hah-cd-card { background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:16px 18px; }
.hah-cd-card .hah-cd-label { color:var(--hah-pink); }
.hah-cd-card .hah-cd-boxes span { background:var(--hah-bg); color:var(--hah-ink); }
.hah-cd-card .hah-cd-boxes i { color:var(--hah-muted); }
.hah-cd-card .hah-cd-date { color:var(--hah-muted); }
@media (max-width:480px) { .hah-cd-boxes span { min-width:0; flex:1 1 0; } .hah-cd-boxes b { font-size:23px; } }

/* ================================================================ helpdesk */
.hah-hd { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; border-radius:20px; padding:26px 28px;
  background-color:#1B9FDA; background-image:linear-gradient(135deg,#1FB8F6,#1591C9); color:#fff; }
.hah-hd-k { font-size:11.5px; font-weight:800; letter-spacing:1.6px; color:rgba(255,255,255,.8); }
.hah-hd-t { font-size:26px; font-weight:800; letter-spacing:-.7px; margin:4px 0 6px; line-height:1.15; }
.hah-hd-s { font-size:15px; color:rgba(255,255,255,.92); margin-bottom:16px; }
.hah-hd-people { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; }
.hah-hd-p { display:flex; gap:12px; align-items:center; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.25);
  border-radius:14px; padding:12px 14px; color:#fff !important; text-decoration:none !important; transition:.15s; }
.hah-hd-p:hover { background:rgba(255,255,255,.26); transform:translateY(-2px); }
.hah-hd-ic { width:38px; height:38px; flex:0 0 38px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; font-size:17px; }
.hah-hd-p b { display:block; font-size:15px; }
.hah-hd-p i { display:block; font-style:normal; font-size:14px; opacity:.95; word-break:break-all; }
.hah-hd-footer { background:transparent; padding:0; }
.hah-hd-footer .hah-hd-t { font-size:17px; letter-spacing:-.2px; }
.hah-hd-footer .hah-hd-k { color:#1FB8F6; }
.hah-hd-footer .hah-hd-p { background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12); padding:10px 12px; }
.hah-hd-footer .hah-hd-ic { width:32px; height:32px; flex-basis:32px; font-size:14px; }

/* =============================================================== directory */
.hah-dir { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:var(--hah-ink); }
.hah-dir-tools { position:sticky; top:0; z-index:5; background:rgba(243,244,248,.96); backdrop-filter:blur(6px);
  padding:12px 0 12px; margin-bottom:10px; }
.hah-dir-q { width:100%; font:inherit; font-size:16px; padding:14px 16px 14px 44px; border:1.5px solid var(--hah-line); border-radius:12px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%235C6480' stroke-width='2.2'%3E%3Ccircle cx='9' cy='9' r='6.5'/%3E%3Cpath d='m14 14 4.5 4.5'/%3E%3C/svg%3E") 14px 50% no-repeat; }
.hah-dir-q:focus { outline:none; border-color:var(--hah-pink); box-shadow:0 0 0 3px rgba(222,33,116,.12); }
.hah-dir-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.hah-dir-chips button, .hah-cal-chips button { font:inherit; font-size:13.5px; font-weight:700; border:1.5px solid var(--hah-line); background:#fff;
  color:var(--hah-ink); border-radius:999px; padding:8px 14px; cursor:pointer; }
.hah-dir-chips button.is-on, .hah-cal-chips button.is-on { background:var(--hah-navy); border-color:var(--hah-navy); color:#fff; }
.hah-dir-zone { background:#fff; border:1px solid var(--hah-line); border-radius:20px; padding:20px 22px 22px; margin-bottom:18px; scroll-margin-top:120px; }
.hah-dir-zh { display:flex; gap:18px; align-items:center; margin-bottom:16px; }
.hah-dir-banner { flex:0 0 150px; width:150px; aspect-ratio:1.6; border-radius:14px; overflow:hidden; background:linear-gradient(135deg,#E8EBF4,#F4F6FB); }
.hah-dir-banner img { width:100%; height:100%; object-fit:cover; display:block; }
.hah-dir-zh h3 { margin:0; font-size:24px; font-weight:800; letter-spacing:-.6px; }
.hah-dir-zh p { margin:3px 0 4px; color:var(--hah-muted); font-size:14px; }
.hah-dir-zl { font-size:13.5px; font-weight:700; color:var(--hah-pink); text-decoration:none; }
.hah-dir-lead { display:grid; grid-template-columns:1fr 1.4fr; gap:12px; margin-bottom:14px; }
.hah-dir-box { background:var(--hah-bg); border-radius:14px; padding:14px 16px; }
.hah-dir-k { font-size:10.5px; font-weight:800; letter-spacing:1.6px; color:var(--hah-pink); margin-bottom:6px; }
.hah-dir-k2 { margin:6px 0 8px; }
.hah-dir-person b { font-size:17px; }
.hah-dir-mentors { display:flex; flex-wrap:wrap; gap:6px; }
.hah-dir-m { background:#fff; border:1px solid var(--hah-line); border-radius:999px; padding:6px 12px; font-size:14px; font-weight:700; }
.hah-dir-links { display:flex; flex-wrap:wrap; gap:4px 12px; margin-top:3px; font-size:14px; }
.hah-dir-links a, .hah-dir-tbl a { color:var(--hah-pink); text-decoration:none; font-weight:600; word-break:break-all; }
.hah-dir-soon { color:var(--hah-muted); font-size:14px; margin:0; }
.hah-dir-tbl { border:1px solid var(--hah-line); border-radius:14px; overflow:hidden; }
.hah-dir-tr { display:grid; grid-template-columns:1.1fr 1.1fr .9fr 1.3fr; gap:12px; padding:11px 16px; border-top:1px solid var(--hah-line); font-size:14.5px; align-items:center; }
.hah-dir-tr span { display:flex; flex-direction:column; gap:2px; min-width:0; }
.hah-dir-th { border-top:0; background:var(--hah-bg); font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--hah-muted); }
.hah-dir-tr em { color:#B0B6C8; font-style:normal; }
.hah-dir-area { color:var(--hah-muted); font-weight:600; }
.is-dim { opacity:.28; }
.hah-dir-none { text-align:center; color:var(--hah-muted); padding:24px; }
@media (max-width:760px) {
  .hah-dir-zh { flex-direction:column; align-items:flex-start; }
  .hah-dir-banner { width:100%; flex-basis:auto; aspect-ratio:2.2; }
  .hah-dir-lead { grid-template-columns:1fr; }
  .hah-dir-th { display:none; }
  .hah-dir-tr { grid-template-columns:1fr; gap:3px; }
}

/* ---- compact contacts (city & zone pages) ---- */
.hah-ct { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:18px 20px; color:var(--hah-ink); }
.hah-ct-k { font-size:10.5px; font-weight:800; letter-spacing:1.6px; color:var(--hah-pink); }
.hah-ct-k2 { margin-top:14px; }
.hah-ct-p { margin-top:8px; }
.hah-ct-p b { font-size:17px; }
.hah-ct-area { display:inline-block; margin-left:8px; font-size:12px; font-weight:700; color:var(--hah-muted); }
.hah-ct-m { font-size:14.5px; margin-top:4px; }
.hah-ct-soon { color:var(--hah-muted); font-size:14px; margin:6px 0 0; }
.hah-ct-more { display:inline-block; margin-top:12px; font-size:14px; font-weight:700; color:var(--hah-pink); text-decoration:none; }
.hah-ct-dark { background:#16224A; border-color:transparent; color:#fff; }
.hah-ct-dark .hah-ct-m, .hah-ct-dark .hah-ct-area { color:#B7C0D8; }

/* ================================================================ calendar */
.hah-cal { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:var(--hah-ink); }
.hah-cal-tools { display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:space-between; margin-bottom:16px; }
.hah-cal-chips { display:flex; flex-wrap:wrap; gap:8px; }
.hah-cal-ev { font:inherit; font-size:15px; padding:10px 12px; border:1.5px solid var(--hah-line); border-radius:10px; background:#fff; min-width:220px; }
.hah-cal-dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:10px; margin-bottom:22px; }
.hah-cal-dlc { background:var(--hah-navy); color:#fff; border-radius:14px; padding:14px 16px; }
.hah-cal-dlc.is-past { background:#EDEFF5; color:var(--hah-muted); }
.hah-cal-dlk { display:block; font-size:10.5px; font-weight:800; letter-spacing:1.5px; color:var(--hah-pink); }
.hah-cal-dlc b { display:block; font-size:16px; margin-top:3px; }
.hah-cal-dlc i { display:block; font-style:normal; font-size:13.5px; opacity:.85; }
.hah-cal-m h3 { font-size:22px; font-weight:800; letter-spacing:-.5px; margin:18px 0 10px; }
.hah-cal-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.hah-cal-row { display:flex; gap:14px; align-items:stretch; background:#fff; border:1px solid var(--hah-line); border-left:6px solid var(--lv,#127A3E); border-radius:14px; padding:12px 16px; }
.hah-cal-row.lv-city { --lv:#127A3E; }
.hah-cal-row.lv-zonal { --lv:#E8730C; }
.hah-cal-row.lv-national { --lv:#DE2174; background:linear-gradient(135deg,#FFF0F6,#fff); }
.hah-cal-date { flex:0 0 70px; text-align:center; display:flex; flex-direction:column; justify-content:center; }
.hah-cal-date b { font-size:22px; font-weight:800; letter-spacing:-.6px; line-height:1.05; }
.hah-cal-date i { font-style:normal; font-size:11.5px; font-weight:800; letter-spacing:1.4px; color:var(--hah-muted); }
.hah-cal-body { flex:1 1 auto; display:flex; flex-direction:column; gap:6px; justify-content:center; }
.hah-cal-tag { align-self:flex-start; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:#fff; background:var(--lv); border-radius:999px; padding:3px 9px; }
.hah-cal-evs { display:flex; flex-wrap:wrap; gap:6px; }
.hah-cal-e { font-size:13.5px; font-weight:700; color:var(--ev) !important; background:color-mix(in srgb, var(--ev) 10%, #fff); border:1px solid color-mix(in srgb, var(--ev) 30%, #fff); border-radius:999px; padding:5px 11px; text-decoration:none !important; }
.hah-cal-title { font-size:17px; font-weight:800; }
.hah-cal-chips .lv-city.is-on { background:#127A3E; border-color:#127A3E; }
.hah-cal-chips .lv-zonal.is-on { background:#E8730C; border-color:#E8730C; }
.hah-cal-chips .lv-national.is-on { background:#DE2174; border-color:#DE2174; }
.hah-cal-note { margin-top:18px; background:#FDF1E0; border-radius:12px; padding:12px 16px; font-size:14.5px; color:#6B3C00; }
.hah-cal-note.is-hit { outline:2px solid #E8730C; }
.hah-cal-empty, .hah-cal-foot { color:var(--hah-muted); font-size:14px; margin-top:14px; }

/* =================================================================== draws */
.hah-draws-sel { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:18px 20px; }
.hah-draws-out { margin-top:16px; }
.hah-draw-hint { color:var(--hah-muted); text-align:center; padding:26px 10px; border:2px dashed var(--hah-line); border-radius:16px; }
.hah-draw-none { border:1px solid #DDE2EE; background:#F4F6FB; border-radius:14px; padding:30px 20px; text-align:center; font-family:'Archivo',sans-serif; display:flex; flex-direction:column; gap:4px; }
.hah-draw-none b { font-size:12px; font-weight:800; letter-spacing:1.4px; color:#A85B00; }
.hah-draw-none span { font-size:15px; font-weight:700; color:#141A2E; }
.hah-draw-none i { font-style:normal; font-size:13px; color:#5C6480; }
.hah-draw-frame { border:1px solid var(--hah-line); border-radius:14px; overflow:hidden; background:#fff; }
.hah-draw-frame iframe { display:block; width:100%; height:560px; border:0; }
.hah-draw-open { display:block; text-align:right; padding:8px 14px; font-size:13.5px; font-weight:700; color:var(--hah-pink); text-decoration:none; border-top:1px solid var(--hah-line); }
@media (max-width:600px) { .hah-draw-frame iframe { height:440px; } }

/* =================================================================== wheel */
.hah-wheel { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; display:flex; flex-direction:column; align-items:center; gap:14px; }
.hah-wheel-stage { position:relative; width:min(100%, 460px); aspect-ratio:1; }
.hah-wheel-compact .hah-wheel-stage { width:min(100%, 300px); }
.hah-wheel canvas { width:100%; height:100%; display:block; border-radius:50%; box-shadow:0 18px 40px rgba(12,23,51,.28); cursor:pointer; }
.hah-wheel-pin { position:absolute; left:50%; top:-6px; transform:translateX(-50%); width:0; height:0; z-index:2;
  border-left:18px solid transparent; border-right:18px solid transparent; border-top:34px solid #0C1733; filter:drop-shadow(0 3px 3px rgba(0,0,0,.3)); }
.hah-wheel-go { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:22%; aspect-ratio:1; border-radius:50%; border:0;
  background:#DE2174; color:#fff; font:800 clamp(11px,2.4vw,16px)/1 'Archivo',sans-serif; letter-spacing:.8px; cursor:pointer; box-shadow:0 6px 16px rgba(222,33,116,.45); }
.hah-wheel-go:disabled { opacity:.8; cursor:default; }
.hah-wheel-result { text-align:center; background:#fff; border:1px solid var(--hah-line); border-radius:18px; padding:18px 22px; width:min(100%,460px); color:var(--hah-ink); }
.hah-wr-k { font-size:11.5px; font-weight:800; letter-spacing:1.8px; color:var(--hah-muted); }
.hah-wr-n { font-size:26px; font-weight:800; letter-spacing:-.6px; margin:4px 0 4px; }
.hah-wr-p { font-size:14px; font-weight:700; color:#8A4B00; }
.hah-wr-b { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:12px; }

/* =============================================================== analytics */
.hah-an { font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:var(--hah-ink); }
.hah-an-tiles { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px; margin-bottom:16px; }
.hah-an-t { background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:16px 18px; }
.hah-an-t b { display:block; font-size:32px; font-weight:800; letter-spacing:-1.2px; color:var(--hah-pink); }
.hah-an-t b small { font-size:20px; color:#B0B6C8; }
.hah-an-t span { font-size:13px; font-weight:600; color:var(--hah-muted); }
.hah-an-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.hah-an-card { background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:18px 20px; margin-bottom:14px; }
.hah-an-card h4 { margin:0 0 12px; font-size:16px; font-weight:800; }
.hah-an-card h4 small { font-weight:500; color:var(--hah-muted); }
.hah-an-bar { display:grid; grid-template-columns:150px 1fr 70px; gap:10px; align-items:center; font-size:13.5px; margin-bottom:7px; }
.hah-an-l { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:600; }
.hah-an-track { display:flex; height:12px; background:#EEF0F6; border-radius:6px; overflow:hidden; }
.hah-an-track i { display:block; height:100%; }
.hah-an-m { background:#2E3192; }
.hah-an-w { background:#DE2174; }
.hah-an-bar b { text-align:right; font-variant-numeric:tabular-nums; }
.hah-an-key { font-size:12.5px; color:var(--hah-muted); margin:8px 0 0; }
.hah-an-key i { display:inline-block; width:10px; height:10px; border-radius:3px; margin:0 4px 0 10px; vertical-align:-1px; }
.hah-an-heat td.hah-n { text-align:center; }
@media (max-width:800px) { .hah-an-grid { grid-template-columns:1fr; } .hah-an-bar { grid-template-columns:110px 1fr 60px; } }

/* ============================================================= hero video */
.hah-hero { position:relative; overflow:hidden; isolation:isolate; }
.hah-hero > .e-con-inner { position:static; }
.hah-hero > .e-con-inner > .e-con,
.hah-hero > .e-con-inner > .elementor-widget:not(.hah-herobg-wrap) { position:relative; z-index:2; }
.elementor-widget.hah-herobg-wrap { position:absolute !important; inset:0 !important; z-index:0 !important; width:100% !important; max-width:none !important; margin:0 !important; pointer-events:none; }
.hah-herobg-wrap .elementor-widget-container, .hah-herobg-wrap .elementor-shortcode { height:100%; }
.hah-herobg { position:absolute; inset:0; overflow:hidden; background:#0C1733; }
.hah-herobg-logo { position:absolute; top:0; bottom:0; right:4%; width:44%; display:flex; align-items:center; justify-content:center; }
.hah-herobg-logo img { width:100%; max-width:560px; height:auto; }
.hah-herobg-video { position:absolute; inset:0; opacity:0; transition:opacity .9s ease; }
.hah-herobg.is-playing .hah-herobg-video { opacity:1; }
.hah-herobg-video iframe, .hah-herobg-yt { position:absolute; top:50%; left:50%; width:177.78vh; height:56.25vw; min-width:100%; min-height:100%; transform:translate(-50%,-50%); border:0; }
.hah-herobg-shade { position:absolute; inset:0; opacity:0; transition:opacity .9s ease;
  background:linear-gradient(90deg, rgba(12,23,51,.94) 0%, rgba(12,23,51,.78) 45%, rgba(12,23,51,.25) 100%); }
.hah-herobg.is-playing .hah-herobg-shade { opacity:1; }
@media (max-width:767px) {
  .hah-herobg-logo { display:none; }
  .hah-herobg-shade { background:rgba(12,23,51,.72); }
}

/* ------------------------ nominating on someone else's behalf (mentors) */
.hah-step-proxy { border-color:var(--hah-navy); border-width:2px; background:#FBFCFF; }
.hah-step-proxy .hah-num { background:var(--hah-pink); }
.hah-proxy .hah-me { background:#EEF6FF; border-color:#CFE3FA; }

/* ------------------------------- drop-down categories (Fitness Challenge) */
.hah-multi { margin:10px 0 4px; }
.hah-multi-rows { display:flex; flex-direction:column; gap:10px; }
.hah-multi-row { display:flex; align-items:flex-end; gap:8px; }
.hah-multi-row .hah-f { flex:1 1 auto; max-width:360px; }
.hah-multi-del { flex:0 0 auto; width:40px; height:46px; font-size:22px; line-height:1; cursor:pointer;
  border:1.5px solid var(--hah-line); background:#fff; border-radius:10px; color:var(--hah-muted); }
.hah-multi-del:hover { border-color:var(--hah-pink); color:var(--hah-pink); }
.hah-multi-add { margin-top:12px; font:inherit; font-size:14px; font-weight:700; cursor:pointer;
  padding:9px 16px; border-radius:999px; border:1.5px dashed var(--hah-line);
  background:#fff; color:var(--hah-ink); }
.hah-multi-add:hover { border-color:var(--ev,var(--hah-pink)); color:var(--ev,var(--hah-pink)); }

/* ------------------------------------- events judged at the zonal round */
.hah-zonal-note { margin:10px 0 4px; font-size:14px; line-height:1.55; color:#8A4B00;
  background:#FFF4DE; border:1px solid #F6DFB4; border-radius:12px; padding:11px 14px; }
.hah-zonal-note b { color:#7A4200; }
.hah-zonal-tag { display:inline-block; font-size:11px; font-weight:800; letter-spacing:.8px;
  text-transform:uppercase; color:#8A4B00; background:#FFF4DE; border-radius:999px; padding:3px 9px; }
.hah-mine-none { font-size:13px; font-weight:700; color:var(--hah-green); }

/* ================================================================== bulk */
/* the "download the sheet for bulk entries" card under the nomination form */
.hah-bulkcta { background:#0C1733; background-image:linear-gradient(135deg,#0C1733,#1B2A5B); color:#fff;
  border-radius:20px; padding:26px 24px; }
.hah-bulkcta-in { display:flex; flex-wrap:wrap; gap:24px; align-items:flex-start; }
.hah-bulkcta-txt { flex:1 1 340px; min-width:0; }
.hah-bulkcta h2 { margin:6px 0 8px; font-size:26px; font-weight:800; letter-spacing:-.8px; color:#fff; line-height:1.2; }
.hah-bulkcta p { margin:0 0 12px; font-size:15px; color:rgba(255,255,255,.82); }
.hah-bulkcta-steps { margin:0 0 0 20px; padding:0; font-size:14.5px; line-height:1.6; color:rgba(255,255,255,.88); }
.hah-bulkcta-steps li { margin-bottom:7px; }
.hah-bulkcta-steps b { color:#fff; }
.hah-bulkcta-acts { flex:0 1 250px; display:flex; flex-direction:column; gap:10px; }
.hah-bulkcta-acts .hah-btn { width:100%; text-align:center; }
.hah-bulkcta-acts a.hah-btn-navy, .hah-form .hah-bulkcta-acts a.hah-btn-navy { background:#fff; color:#0C1733; }
.hah-bulkcta-acts .hah-hint { color:rgba(255,255,255,.66); font-style:normal; }
@media (max-width:600px) { .hah-bulkcta { padding:22px 18px; } .hah-bulkcta h2 { font-size:22px; } }

.hah-bulk-steps { margin:6px 0 16px 20px; padding:0; font-size:15px; line-height:1.6; }
.hah-bulk-steps li { margin-bottom:6px; }
.hah-bulk-guide { background:var(--hah-bg); border-radius:14px; padding:12px 16px; }
.hah-bulk-guide summary { cursor:pointer; font-weight:800; font-size:15px; }
.hah-bulk-guide .hah-tbl-wrap { margin-top:12px; }
.hah-bulk-guide .hah-tbl td { font-size:13.5px; vertical-align:top; }
.hah-bk-sum { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:18px 0 12px; }
.hah-bk-sum div { background:#fff; border:1px solid var(--hah-line); border-radius:14px; padding:12px 14px; }
.hah-bk-sum b { display:block; font-size:28px; font-weight:800; }
.hah-bk-sum span { font-size:13px; color:var(--hah-muted); font-weight:600; }
.hah-bk-sum .g b { color:var(--hah-green); }
.hah-bk-sum .r b { color:#A11744; }
.hah-bk-note { font-size:14px; color:var(--hah-muted); }
.hah-bk-acts { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 14px; }
.hah-bk-tbl td { font-size:13.5px; vertical-align:top; }
.hah-bk-st { display:inline-block; white-space:nowrap; font-size:11.5px; font-weight:800; border-radius:999px; padding:3px 9px; background:#E6F6EC; color:#0C5C2E; }
.st-warn .hah-bk-st { background:#FDF1E0; color:#8A4B00; }
.st-error .hah-bk-st, .st-failed .hah-bk-st { background:#FDECF3; color:#A11744; }
.st-skipped .hah-bk-st { background:#EDEFF5; color:#5C6480; }
.st-error td, .st-failed td { background:#FFF8FB; }

/* "hidden" must win over the display rules above */
.hah-form [hidden], .hah-board [hidden], .hah-dir [hidden], .hah-dir-zone[hidden], .hah-cal [hidden], .hah-wheel [hidden],
.hah-draws [hidden], .hah-cd [hidden], .hah-bulk [hidden], .hah-mine [hidden] { display:none !important; }

#hah-bk-code::placeholder, .hah-grp-code::placeholder { text-transform:none; }

/* ======================================== where and when: dates and venues */
.hah-vn { --hah-pink:#DE2174; --hah-navy:#0C1733; --hah-ink:#141A2E; --hah-muted:#5C6480;
  --hah-line:#E4E7F0; --hah-bg:#F3F4F8;
  font-family:'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color:var(--hah-ink); }
.hah-vn-pick { background:#fff; border:1px solid var(--hah-line); border-radius:16px; padding:18px 20px; margin-bottom:16px; }
.hah-vn-pick .hah-f { max-width:460px; }
.hah-vn-empty { background:var(--hah-bg); border:1px dashed var(--hah-line); border-radius:16px;
  padding:26px 20px; text-align:center; color:var(--hah-muted); font-size:15px; }
.hah-vn-empty p { margin:0; }
.hah-vn-head { margin:0 0 12px; }
.hah-vn-head h3 { margin:0; font-size:23px; font-weight:800; letter-spacing:-.6px; }
.hah-vn-head p { margin:3px 0 0; font-size:13.5px; color:var(--hah-muted); }
.hah-vn-head a { color:var(--hah-pink); font-weight:700; text-decoration:none; }
.hah-vn-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.hah-vn-row { display:grid; grid-template-columns:1fr 1fr 1.5fr; gap:16px; align-items:start;
  background:#fff; border:1px solid var(--hah-line); border-left:5px solid var(--ev,#0C1733);
  border-radius:12px; padding:14px 16px; }
.hah-vn-ev b { display:block; font-size:16px; font-weight:800; letter-spacing:-.3px; }
.hah-vn-ev .hah-zonal-tag { margin-top:5px; }
.hah-vn-when b { font-size:15px; font-weight:800; }
.hah-vn-when i, .hah-vn-where i { font-style:normal; color:var(--hah-muted); font-size:14px; }
.hah-vn-when span { display:block; font-size:13px; color:var(--hah-muted); margin-top:2px; }
.hah-vn-where b { display:block; font-size:15px; font-weight:800; }
.hah-vn-where span { display:block; font-size:13.5px; color:var(--hah-muted); line-height:1.5; margin-top:2px; }
.hah-vn-map { display:inline-block; margin-top:6px; font-size:13px; font-weight:800; color:var(--hah-pink); text-decoration:none; }
.hah-vn-map:hover { text-decoration:underline; }
.hah-vn-zone { margin-bottom:26px; }
.hah-vn .hah-note { font-size:13px; color:var(--hah-muted); margin-top:12px; }
@media (max-width:760px) {
  .hah-vn-row { grid-template-columns:1fr; gap:8px; }
  .hah-vn-when, .hah-vn-where { border-top:1px solid var(--hah-line); padding-top:8px; }
}

/* ==================================== who to contact, and in what order */
.hah-esc, .hah-hier, .hah-rolelist { --hah-pink:#DE2174; --hah-navy:#0C1733; --hah-ink:#141A2E;
  --hah-muted:#5C6480; --hah-line:#E4E7F0; --hah-bg:#F3F4F8;
  font-family:'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color:var(--hah-ink); }
.hah-esc { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; }
.hah-esc-step { position:relative; display:flex; gap:14px; background:#fff; border:1px solid var(--hah-line);
  border-radius:16px; padding:20px 20px 22px; }
.hah-esc-n { flex:0 0 42px; width:42px; height:42px; border-radius:12px; background:var(--hah-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:19px; font-weight:800; }
.hah-esc-step:nth-child(2) .hah-esc-n { background:#E8730C; }
.hah-esc-step:nth-child(3) .hah-esc-n { background:var(--hah-pink); }
.hah-esc-body { min-width:0; }
.hah-esc-body h4 { margin:2px 0 6px; font-size:17px; font-weight:800; letter-spacing:-.3px; }
.hah-esc-body p { margin:0 0 10px; font-size:14px; line-height:1.55; color:var(--hah-muted); }
.hah-esc-people { list-style:none; margin:0 0 10px; padding:0; display:flex; flex-direction:column; gap:8px; }
.hah-esc-people li { font-size:14px; }
.hah-esc-people b { display:block; font-weight:800; }
.hah-esc-people i { font-style:normal; font-size:12.5px; color:var(--hah-muted); }
.hah-esc-more { font-size:13.5px; }
.hah-esc-link { font-size:13.5px; font-weight:800; color:var(--hah-pink); text-decoration:none; }
.hah-esc-link:hover { text-decoration:underline; }

.hah-hier-key { display:grid; grid-template-columns:repeat(auto-fit,minmax(215px,1fr)); gap:10px; margin-bottom:16px; }
.hah-hier-keyrow { background:#fff; border:1px solid var(--hah-line); border-left:5px solid var(--hah-navy);
  border-radius:12px; padding:11px 14px; }
.hah-hier-keyrow.r-mentor { border-left-color:#E8730C; }
.hah-hier-keyrow.r-influencer { border-left-color:#1B9AD6; }
.hah-hier-keyrow.r-contact { border-left-color:#127A3E; }
.hah-hier-keyrow b { display:block; font-size:14.5px; font-weight:800; }
.hah-hier-keyrow span { font-size:12.5px; color:var(--hah-muted); line-height:1.45; }
.hah-hier-tbl th.hah-hier-z { vertical-align:top; background:var(--hah-bg); font-weight:800; white-space:nowrap; }
.hah-hier-tag { display:inline-block; font-size:11px; font-weight:800; letter-spacing:.5px; text-transform:uppercase;
  border-radius:999px; padding:3px 9px; background:#EDEFF6; color:var(--hah-navy); white-space:nowrap; }
.hah-hier-tag.r-mentor { background:#FDF1E0; color:#8A4B00; }
.hah-hier-tag.r-influencer { background:#E4F3FC; color:#0B5E86; }
.hah-hier-tag.r-contact { background:#E6F6EC; color:#0C5C2E; }
.hah-rolelist { margin-bottom:26px; }
.hah-rolelist-h h3 { margin:0; font-size:22px; font-weight:800; letter-spacing:-.5px; }
.hah-rolelist-h p { margin:3px 0 12px; font-size:14px; color:var(--hah-muted); }

/* 30 Sep 2026: link to the event page under each event tile */
.hah-ev-more{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;color:#2E3192!important;text-decoration:underline;text-underline-offset:2px;position:relative;z-index:2}
.hah-ev-more:hover{color:#DE2174!important}

/* 1 Oct 2026 — partner notes in My Championship */
.hah-mine-bypartner{margin-top:6px;padding:6px 10px;background:#E9F8EF;border-left:3px solid #1F9D55;border-radius:6px;font-size:14px}
.hah-mine-chp{grid-column:1/-1;width:100%;box-sizing:border-box;margin-top:10px;padding:12px;background:#F5F7FC;border-radius:10px}
.hah-mine-chp label{display:block;font-weight:700;font-size:14px;margin-bottom:6px}
.hah-mine-chp div{display:flex;gap:8px;flex-wrap:wrap}
.hah-mine-chp input{flex:1;min-width:140px;padding:10px 12px;border:1px solid #CBD2E3;border-radius:8px;font-size:15px}
.hah-mine-chp small{display:block;margin-top:6px;color:#5C6480;font-size:12.5px}
.hah-mine-conflict{margin-top:6px;padding:8px 10px;background:#FFF3D6;border-left:3px solid #FF8A00;border-radius:6px;font-size:14px;line-height:1.45}

/* 4 Oct 2026 — home "Who is leading" block: bigger, glass cards on the gradient */
.elementor-element-h2c0898 .hah-top3-wrap{gap:24px}
.elementor-element-h2c0898 .hah-top3-col{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);border-radius:22px;padding:30px 32px;box-shadow:0 18px 40px rgba(8,12,40,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.elementor-element-h2c0898 .hah-top3-col h4{font-size:15px;letter-spacing:2px;color:#FFC83D;margin:0 0 16px}
.elementor-element-h2c0898 .hah-podium li{padding:13px 0;font-size:21px;border-bottom:1px solid rgba(255,255,255,.14)}
.elementor-element-h2c0898 .hah-podium li:last-child{border-bottom:0}
.elementor-element-h2c0898 .hah-pname{color:#fff;font-weight:700;font-size:21px}
.elementor-element-h2c0898 .hah-medal{width:36px;height:36px;line-height:36px;font-size:17px;border-radius:10px}
.elementor-element-h2c0898 .hah-pnum{color:#fff;font-size:28px;font-weight:800;text-align:right;line-height:1}
.hah-pnum small{display:block;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;opacity:.75;margin-top:3px}
@media (max-width:767px){.elementor-element-h2c0898 .hah-top3-col{padding:22px 20px}.elementor-element-h2c0898 .hah-podium li,.elementor-element-h2c0898 .hah-pname{font-size:17px}.elementor-element-h2c0898 .hah-pnum{font-size:22px}}
/* 6 Oct 2026 — already-entered events */
.hah-locked{opacity:.55;cursor:not-allowed;position:relative}
.hah-locked *{cursor:not-allowed}
.hah-lock-tag{display:inline-block;margin-left:6px;font-size:11px;font-style:normal;font-weight:700;letter-spacing:.3px;color:#9A5B00;background:#FFF3D6;border-radius:6px;padding:2px 6px}
/* 8 Oct 2026 — find me a partner */
.hah-find-partner{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:12px 14px;border:1.5px dashed #CBD2E3;border-radius:12px;background:#FAFBFE;cursor:pointer;font-size:14px;line-height:1.45;color:#3A4260}
.hah-find-partner input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:#DE2174}
.hah-find-partner.is-on{border-color:#DE2174;background:#FDEEF5}
.hah-mine-findp{margin-top:6px;padding:6px 10px;background:#EEF3FF;border-left:3px solid #2E3192;border-radius:6px;font-size:14px}
