:root {
  --navy: #080426;
  --green: #f50778;
  --green-dark: #7816d8;
  --blue: #00a8f7;
  --mint: #f7eaff;
  --sand: #f7f6ff;
  --ink: #171433;
  --muted: #716e84;
  --white: #fff;
  --shadow: 0 24px 60px rgba(16, 42, 50, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: Tahoma, Arial, sans-serif; }
button, select, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.site-header { height: 84px; max-width: 1240px; margin: auto; padding: 0 28px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: var(--navy); text-decoration: none; direction: ltr; }
.brand-logo { width: 48px; height: 48px; display: block; border-radius: 50%; object-fit: cover; box-shadow: 0 5px 16px rgba(13, 5, 50, .2); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 20px; letter-spacing: -.4px; }
.brand small { color: var(--muted); font-size: 11px; margin-top: 2px; direction: rtl; }
nav { display: flex; gap: 30px; }
nav a, .section-heading a { color: var(--ink); text-decoration: none; font-size: 14px; font-weight: 700; }
.header-actions { display: flex; align-items: center; gap: 12px; }
.link-button { border: 0; background: transparent; color: var(--ink); cursor: pointer; }
.primary { border: 0; border-radius: 14px; background: linear-gradient(135deg, var(--green), var(--green-dark)); color: #fff; font-weight: 800; padding: 15px 24px; cursor: pointer; transition: .2s ease; }
.primary:hover { filter: brightness(.94); transform: translateY(-1px); }
.primary.small { padding: 11px 17px; border-radius: 10px; }

.hero { min-height: 610px; background: var(--sand); display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 40px; padding: 72px max(6vw, 28px); overflow: hidden; }
.hero-copy { max-width: 690px; justify-self: end; }
.eyebrow { display: inline-block; color: var(--green-dark); font-size: 13px; font-weight: 900; margin-bottom: 13px; letter-spacing: .3px; }
h1 { color: var(--navy); font-size: clamp(46px, 6vw, 76px); line-height: 1.08; letter-spacing: -3px; margin: 0 0 22px; }
h1 em { color: var(--green); font-style: normal; }
.hero-copy > p { color: var(--muted); font-size: 18px; line-height: 1.9; max-width: 590px; }
.search-box { margin-top: 30px; background: #fff; box-shadow: var(--shadow); border-radius: 18px; padding: 10px; display: grid; grid-template-columns: .9fr 1.1fr 1fr auto; align-items: end; gap: 4px; }
.search-box label { padding: 7px 12px; border-left: 1px solid #e4e8e7; }
.search-box label span { display: block; font-size: 11px; color: var(--muted); margin-bottom: 5px; }
.search-box select { width: 100%; border: 0; color: var(--navy); background: transparent; font-weight: 700; outline: none; }
.search-button { height: 56px; }
.search-message { min-height: 22px; margin: 10px 4px 0 !important; color: var(--green-dark) !important; font-size: 13px !important; font-weight: 700; }

.hero-visual { min-height: 430px; position: relative; display: grid; place-items: center; }
.orb { position: absolute; border-radius: 50%; }
.orb-one { width: 390px; height: 390px; background: linear-gradient(145deg, #ffc5e2, #c8eefe); }
.orb-two { width: 290px; height: 290px; background: var(--green-dark); opacity: .15; transform: translate(70px, -35px); }
.coach-card { position: relative; width: min(390px, 90%); background: rgba(255,255,255,.92); border: 1px solid rgba(255,255,255,.7); padding: 16px; border-radius: 26px; box-shadow: var(--shadow); backdrop-filter: blur(12px); z-index: 2; }
.coach-photo { height: 245px; display: grid; place-items: center; border-radius: 19px; background: linear-gradient(145deg, #09042d, #35106e); overflow: hidden; }
.coach-photo span { font-size: 120px; filter: grayscale(1) brightness(5); opacity: .92; }
.coach-info { padding: 17px 5px 4px; }
.coach-info strong { font-size: 18px; }
.coach-info p { color: var(--muted); font-size: 13px; margin: 7px 0 12px; }
.verified { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--green); color: white; margin-left: 6px; }
.rating { color: #efae2f; font-size: 14px; direction: ltr; text-align: right; }
.rating b { color: var(--ink); margin-left: 6px; }
.location-pill, .booking-pill { position: absolute; z-index: 3; background: white; border-radius: 14px; padding: 13px 16px; box-shadow: var(--shadow); font-size: 13px; font-weight: 800; }
.location-pill { top: 55px; right: 0; }
.booking-pill { bottom: 50px; left: 0; color: var(--green-dark); }

.trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); max-width: 1080px; margin: -20px auto 0; background: var(--navy); color: white; border-radius: 18px; padding: 22px 30px; position: relative; z-index: 4; box-shadow: var(--shadow); }
.trust-strip div { text-align: center; border-left: 1px solid rgba(255,255,255,.13); }
.trust-strip div:last-child { border-left: 0; }
.trust-strip b, .trust-strip span { display: block; }
.trust-strip b { font-size: 18px; }
.trust-strip span { font-size: 11px; color: #b9cacb; margin-top: 4px; }

.section { max-width: 1180px; margin: auto; padding: 105px 28px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; margin-bottom: 34px; }
.section-heading h2, .partner-section h2 { color: var(--navy); font-size: 38px; margin: 0; letter-spacing: -1.3px; }
.section-heading a { color: var(--green-dark); }
.sport-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; }
.sport-grid article { border: 1px solid #e7ecea; border-radius: 20px; padding: 27px; transition: .2s ease; }
.sport-grid article:hover { transform: translateY(-4px); border-color: #b9dfce; box-shadow: 0 16px 35px rgba(16,42,50,.08); }
.sport-grid article > span { width: 55px; height: 55px; display: grid; place-items: center; border-radius: 16px; background: var(--mint); font-size: 27px; }
.sport-grid h3 { margin: 20px 0 7px; color: var(--navy); }
.sport-grid p { margin: 0; color: var(--muted); font-size: 13px; }

.how-section { max-width: none; background: #f8faf9; }
.centered { justify-content: center; text-align: center; }
.steps { max-width: 980px; margin: auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 55px; text-align: center; }
.steps article { position: relative; }
.steps span { margin: auto; display: grid; place-items: center; width: 62px; height: 62px; background: var(--green); color: white; border-radius: 50% 50% 50% 16px; font-size: 22px; font-weight: 900; }
.steps h3 { color: var(--navy); margin: 18px 0 7px; }
.steps p { color: var(--muted); line-height: 1.7; margin: 0; font-size: 14px; }

.partner-section { max-width: 1124px; margin: 80px auto; padding: 55px 60px; border-radius: 28px; background: linear-gradient(120deg, #7816d8, #080426 68%); color: white; display: flex; justify-content: space-between; align-items: center; gap: 50px; }
.partner-section h2 { color: white; }
.partner-section p { max-width: 620px; color: #d6e9e4; line-height: 1.8; }
.eyebrow.light { color: #aee9cc; }
.partner-actions { display: flex; gap: 12px; white-space: nowrap; }
.white-button, .outline-button { padding: 14px 20px; border-radius: 12px; font-weight: 800; cursor: pointer; }
.white-button { border: 0; color: var(--green-dark); background: white; }
.outline-button { color: white; background: transparent; border: 1px solid rgba(255,255,255,.55); }

footer { padding: 55px 28px; background: var(--navy); color: #aebfc1; text-align: center; font-size: 13px; }
.footer-brand { color: white; justify-content: center; margin-bottom: 20px; }
.footer-brand small { color: #aebfc1; }

dialog { width: min(520px, calc(100% - 32px)); border: 0; border-radius: 24px; padding: 35px; box-shadow: 0 35px 100px rgba(4,20,25,.35); }
dialog::backdrop { background: rgba(9,31,37,.65); backdrop-filter: blur(4px); }
.close { position: absolute; left: 18px; top: 15px; border: 0; background: #f1f5f3; width: 34px; height: 34px; border-radius: 50%; cursor: pointer; font-size: 21px; }
.dialog-icon { width: 55px; height: 55px; display: grid; place-items: center; background: var(--mint); border-radius: 16px; font-size: 27px; }
dialog h2 { color: var(--navy); margin: 18px 0 8px; }
dialog p { color: var(--muted); line-height: 1.7; }
.dialog-form { display: grid; gap: 13px; margin-top: 22px; }
.dialog-form label { font-size: 12px; color: var(--muted); }
.dialog-form input { width: 100%; margin-top: 6px; border: 1px solid #dce4e1; border-radius: 11px; padding: 13px; outline: none; }
.dialog-form input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(22,163,106,.11); }
.dialog-form select, .dialog-form textarea { width: 100%; margin-top: 6px; border: 1px solid #dce4e1; border-radius: 11px; padding: 13px; outline: none; background: white; }
.dialog-form textarea { min-height: 88px; resize: vertical; }
.dialog-form .form-error { color: #bd1644; background: #fff0f5; border-radius: 10px; padding: 10px; margin: 0; font-size: 13px; }
.result-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.result-card { border: 1px solid #e7e3ef; border-radius: 20px; padding: 23px; background: white; box-shadow: 0 14px 35px rgba(8,4,38,.06); }
.result-card h3 { margin: 12px 0 8px; color: var(--navy); }
.result-card p { margin: 6px 0; color: var(--muted); font-size: 13px; }
.result-card .price { color: var(--green); font-weight: 900; font-size: 18px; }
.empty-state { grid-column: 1/-1; text-align: center; border: 1px dashed #cfc8db; border-radius: 20px; padding: 45px 20px; color: var(--muted); }
.status-pill { display: inline-block; padding: 6px 10px; border-radius: 20px; background: var(--mint); color: var(--green-dark); font-size: 11px; font-weight: 800; }
.admin-body { min-height: 100vh; background: var(--sand); }
.admin-header { max-width: none; background: white; padding-inline: max(5vw, 22px); border-bottom: 1px solid #e9e6ef; }
.back-link { color: var(--green-dark); text-decoration: none; font-weight: 800; font-size: 13px; }
.admin-main { max-width: 1180px; margin: auto; padding: 60px 24px; }
.admin-login { max-width: 480px; margin: 40px auto; background: white; border-radius: 24px; padding: 38px; box-shadow: var(--shadow); }
.admin-login h1, .admin-title h1 { color: var(--navy); font-size: 38px; margin: 16px 0 8px; }
.admin-login > p { color: var(--muted); }
.admin-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 28px; }
.admin-summary { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-bottom: 25px; }
.admin-summary article { background: white; border-radius: 18px; padding: 24px; border: 1px solid #e8e4ef; }
.admin-summary strong, .admin-summary span { display: block; }
.admin-summary strong { color: var(--green); font-size: 32px; }
.admin-summary span { color: var(--muted); margin-top: 6px; font-size: 13px; }
.admin-table-wrap { background: white; border-radius: 20px; border: 1px solid #e8e4ef; overflow: auto; }
.admin-table-wrap table { width: 100%; border-collapse: collapse; min-width: 780px; }
.admin-table-wrap th, .admin-table-wrap td { text-align: right; padding: 16px; border-bottom: 1px solid #eeeaf3; font-size: 13px; }
.admin-table-wrap th { color: var(--muted); background: #fbfaff; }
.decision-buttons { white-space: nowrap; }
.decision-buttons button { border: 0; background: #eafaf2; color: #087842; border-radius: 8px; padding: 8px 12px; font-weight: 800; cursor: pointer; margin-left: 5px; }
.decision-buttons button.reject { background: #fff0f5; color: #b51045; }
.admin-media { min-width: 95px; display: flex; gap: 5px; }
.admin-media img { width: 44px; height: 44px; border-radius: 8px; object-fit: cover; border: 1px solid #e5dfeb; }
.admin-media span { color: var(--muted); font-size: 10px; }
.registration-body { min-height: 100vh; background: linear-gradient(135deg,#f8f6ff,#fff5fa); }
.registration-header { max-width: none; background: rgba(255,255,255,.9); border-bottom: 1px solid #ebe6f1; padding-inline: max(5vw,22px); }
.registration-main { max-width: 1180px; margin: auto; padding: 65px 28px 90px; display: grid; grid-template-columns: .78fr 1.22fr; gap: 70px; align-items: start; }
.registration-intro { position: sticky; top: 120px; padding-top: 35px; }
.registration-intro h1 { font-size: 52px; letter-spacing: -2px; margin: 0 0 18px; }
.registration-intro > p { color: var(--muted); line-height: 1.9; font-size: 16px; }
.registration-benefits { margin-top: 35px; display: grid; gap: 16px; color: var(--ink); font-weight: 700; font-size: 14px; }
.registration-benefits span { display: inline-grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; color: white; background: linear-gradient(135deg,var(--green),var(--green-dark)); margin-left: 9px; }
.registration-card { background: white; border: 1px solid #ebe7f1; border-radius: 28px; padding: 42px; box-shadow: var(--shadow); }
.form-progress { display: flex; align-items: center; justify-content: center; margin-bottom: 40px; direction: ltr; }
.form-progress span { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: #ece9f2; color: #8a8498; font-weight: 900; transition: .2s; }
.form-progress span.active { color: white; background: linear-gradient(135deg,var(--green),var(--green-dark)); box-shadow: 0 7px 18px rgba(245,7,120,.2); }
.form-progress i { width: 70px; height: 2px; background: #e5e0eb; }
.full-registration-form fieldset { border: 0; padding: 0; margin: 0; }
.full-registration-form legend { color: var(--navy); font-size: 26px; font-weight: 900; padding: 0; }
.full-registration-form fieldset > p { color: var(--muted); font-size: 13px; margin-bottom: 25px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.form-grid label, .sports-choice > strong { color: var(--muted); font-size: 12px; }
.form-grid label.wide { grid-column: 1/-1; }
.form-grid > .wide { grid-column: 1/-1; }
.form-grid input, .form-grid select { width: 100%; margin-top: 7px; padding: 13px; border: 1px solid #ddd7e5; border-radius: 11px; background: white; outline: none; }
.form-grid input:focus, .form-grid select:focus { border-color: var(--green-dark); box-shadow: 0 0 0 3px rgba(120,22,216,.1); }
.sports-choice { margin-top: 25px; }
.sports-checkboxes { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 12px; }
.coach-sports { grid-template-columns: repeat(4,1fr); }
.sports-checkboxes input { position: absolute; opacity: 0; }
.sports-checkboxes span { display: block; padding: 12px 8px; border: 1px solid #e3deea; border-radius: 11px; color: var(--ink); text-align: center; cursor: pointer; font-size: 12px; font-weight: 700; }
.sports-checkboxes input:checked + span { border-color: var(--green); background: #fff0f7; color: #bd075d; }
.form-navigation { display: flex; justify-content: space-between; gap: 12px; margin-top: 30px; }
.form-navigation .primary { margin-right: auto; min-width: 140px; }
.outline-dark { padding: 13px 22px; border: 1px solid #d9d3e1; color: var(--ink); background: white; border-radius: 12px; font-weight: 800; cursor: pointer; }
.guardian-panel { padding: 20px; margin-bottom: 22px; background: #f8f4ff; border-radius: 15px; }
.guardian-panel > p { color: var(--muted); font-size: 13px; }
.consent-row { display: flex; gap: 10px; align-items: start; color: var(--muted); line-height: 1.7; font-size: 13px; }
.consent-row input { margin-top: 4px; accent-color: var(--green); }
.registration-summary { margin-top: 24px; border: 1px solid #e6e1eb; border-radius: 15px; overflow: hidden; }
.registration-summary div { display: flex; justify-content: space-between; gap: 20px; padding: 14px 16px; border-bottom: 1px solid #eeeaf2; }
.registration-summary div:last-child { border-bottom: 0; }
.registration-summary span { color: var(--muted); font-size: 12px; }
.registration-summary strong { font-size: 13px; }
.registration-success { text-align: center; padding: 50px 20px; }
.registration-success > span { width: 75px; height: 75px; margin: auto; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(135deg,var(--green),var(--green-dark)); color: white; font-size: 36px; }
.registration-success h2 { font-size: 31px; color: var(--navy); }
.registration-success p { color: var(--muted); line-height: 1.8; margin-bottom: 28px; }
.registration-success a { display: inline-block; text-decoration: none; }
.application-reference {
  width: min(100%, 430px);
  margin: 24px auto 14px;
  padding: 18px;
  display: grid;
  gap: 10px;
  justify-items: center;
  border: 1px solid rgba(245,7,120,.38);
  border-radius: 18px;
  background: linear-gradient(135deg,rgba(245,7,120,.12),rgba(0,165,255,.09)),rgba(7,5,17,.78);
}
.application-reference small { color: #aaa6b2; font-weight: 700; }
.application-reference strong {
  color: #fff;
  font-family: Arial,sans-serif;
  font-size: clamp(17px,4vw,22px);
  letter-spacing: 1.5px;
  direction: ltr;
}
.application-reference button {
  min-height: 38px;
  padding: 8px 18px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 11px;
  color: #fff;
  background: rgba(255,255,255,.08);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.application-reference button:hover { border-color: var(--brand-pink); background: rgba(245,7,120,.16); }
.reference-note { margin: 0 auto 22px !important; color: #aaa6b2 !important; font-size: 13px; }
.admin-reference {
  display: inline-block;
  direction: ltr;
  color: #fff;
  font-family: Arial,sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .35px;
  white-space: nowrap;
}
.full-registration-form textarea { width: 100%; min-height: 110px; margin-top: 7px; padding: 13px; border: 1px solid #ddd7e5; border-radius: 11px; resize: vertical; font: inherit; outline: none; }
.full-registration-form textarea:focus { border-color: var(--green-dark); box-shadow: 0 0 0 3px rgba(120,22,216,.1); }
.secure-upload-note { margin: 24px 0; padding: 16px; border: 1px solid #ddd0f2; background: #f8f3ff; color: #5a387b; border-radius: 13px; font-size: 13px; line-height: 1.7; }

@media (max-width: 900px) {
  nav { display: none; }
  .hero { grid-template-columns: 1fr; padding-top: 50px; }
  .hero-copy { justify-self: stretch; }
  .hero-visual { min-height: 470px; }
  .search-box { grid-template-columns: 1fr 1fr; }
  .search-box label { border: 0; }
  .search-button { grid-column: 1 / -1; }
  .partner-section { margin-inline: 24px; }
  .registration-main { grid-template-columns: 1fr; gap: 20px; }
  .registration-intro { position: static; padding-top: 0; }
}

@media (max-width: 620px) {
  .site-header { height: 72px; padding: 0 17px; }
  .brand strong { font-size: 17px; }
  .brand-logo { width: 42px; height: 42px; }
  .link-button { display: none; }
  .hero { padding: 48px 18px 65px; }
  h1 { font-size: 44px; letter-spacing: -2px; }
  .hero-copy > p { font-size: 15px; }
  .search-box { grid-template-columns: 1fr; }
  .search-button { grid-column: auto; }
  .hero-visual { min-height: 400px; }
  .coach-photo { height: 210px; }
  .location-pill { right: 3px; }
  .booking-pill { left: 3px; }
  .trust-strip { margin: 0; border-radius: 0; grid-template-columns: 1fr 1fr; gap: 22px 0; }
  .trust-strip div:nth-child(2) { border-left: 0; }
  .section { padding: 75px 18px; }
  .section-heading { align-items: start; }
  .section-heading h2, .partner-section h2 { font-size: 29px; }
  .section-heading a { display: none; }
  .sport-grid { grid-template-columns: 1fr 1fr; }
  .result-grid { grid-template-columns: 1fr; }
  .sport-grid article { padding: 19px; }
  .steps { grid-template-columns: 1fr; gap: 42px; }
  .partner-section { margin: 55px 15px; padding: 38px 25px; display: block; }
  .partner-actions { margin-top: 25px; flex-direction: column; }
  .registration-main { padding: 38px 14px 70px; }
  .registration-intro h1 { font-size: 38px; }
  .registration-card { padding: 27px 18px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid label.wide { grid-column: auto; }
  .sports-checkboxes { grid-template-columns: 1fr 1fr; }
  .coach-sports { grid-template-columns: 1fr 1fr; }
  .form-progress i { width: 45px; }
}

/* Sportdaar 2026 brand experience */
.brand-site,
.coach-registration-body {
  --brand-black: #05050a;
  --brand-surface: #0d0b18;
  --brand-surface-2: #151121;
  --brand-red: #ff174f;
  --brand-pink: #f50778;
  --brand-purple: #8b16e8;
  --brand-blue: #00a8f7;
  --brand-line: rgba(255,255,255,.1);
  background: var(--brand-black);
  color: #fff;
  font-family: "Alexandria", Tahoma, Arial, sans-serif;
  overflow-x: hidden;
}
.brand-site::before,
.coach-registration-body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 8% 18%, rgba(245,7,120,.13), transparent 26%),
    radial-gradient(circle at 88% 8%, rgba(0,168,247,.1), transparent 24%),
    linear-gradient(rgba(255,255,255,.017) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.017) 1px, transparent 1px);
  background-size: auto, auto, 50px 50px, 50px 50px;
  z-index: 0;
}
.brand-site > *,
.coach-registration-body > * { position: relative; z-index: 1; }
.brand-header {
  max-width: none;
  height: 92px;
  padding-inline: max(5vw,28px);
  color: #fff;
  background: rgba(5,5,10,.82);
  border-bottom: 1px solid var(--brand-line);
  backdrop-filter: blur(18px);
  position: sticky;
  top: 0;
  z-index: 30;
}
.brand-header .brand { color: #fff; }
.brand-header .brand-logo { width: 55px; height: 55px; border: 1px solid rgba(255,255,255,.14); }
.brand-header .brand strong { font-size: 18px; letter-spacing: 1.4px; }
.brand-header .brand small { color: #8f8b9d; font-size: 9px; letter-spacing: 0; }
.brand-header nav { gap: 35px; }
.brand-header nav a {
  color: #bbb8c6;
  position: relative;
  transition: .2s ease;
}
.brand-header nav a::after {
  content: "";
  position: absolute;
  right: 0;
  left: 100%;
  bottom: -10px;
  height: 2px;
  background: linear-gradient(90deg,var(--brand-red),var(--brand-purple),var(--brand-blue));
  transition: .2s ease;
}
.brand-header nav a:hover { color: #fff; }
.brand-header nav a:hover::after { left: 0; }
.brand-header .link-button { color: #fff; font-weight: 700; }
.header-register { text-decoration: none; background: linear-gradient(135deg,var(--brand-red),var(--brand-pink) 45%,var(--brand-purple)); }
.language-switcher {
  direction: ltr;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(255,255,255,.035);
  white-space: nowrap;
}
.language-switcher button {
  border: 0;
  padding: 6px 8px;
  border-radius: 7px;
  color: #817d8b;
  background: transparent;
  font-family: inherit;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}
.language-switcher button.active { color: #fff; background: linear-gradient(135deg,var(--brand-red,#ff174f),var(--brand-purple,#8b16e8)); }
.language-switcher span { color: #4d4955; font-size: 9px; }

.brand-hero {
  min-height: 720px;
  background: transparent;
  grid-template-columns: 1.06fr .94fr;
  padding: 95px max(6vw,28px) 125px;
  position: relative;
}
.brand-hero::after {
  content: "SPORTDAAR";
  position: absolute;
  bottom: -42px;
  right: 4vw;
  font-size: clamp(80px,14vw,210px);
  font-weight: 900;
  letter-spacing: -9px;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,.035);
  z-index: -1;
}
.brand-hero .hero-copy { max-width: 790px; }
.brand-site .eyebrow,
.coach-registration-body .eyebrow {
  color: #ff3d7f;
  letter-spacing: 0;
  padding: 8px 13px;
  border: 1px solid rgba(245,7,120,.32);
  background: rgba(245,7,120,.08);
  border-radius: 30px;
}
.brand-hero h1 {
  color: #fff;
  font-size: clamp(52px,5.9vw,84px);
  line-height: 1.32;
  letter-spacing: 0;
  margin-top: 12px;
  padding-block: .04em;
}
.brand-hero h1 em,
.registration-intro h1 em {
  color: transparent;
  background: linear-gradient(90deg,var(--brand-red),var(--brand-pink) 40%,var(--brand-purple) 70%,var(--brand-blue));
  background-clip: text;
  -webkit-background-clip: text;
}
.brand-hero .hero-copy > p { color: #aaa6b6; max-width: 680px; font-size: 17px; }
.hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 30px; }
.hero-primary { text-decoration: none; padding: 17px 29px; }
.ghost-action { color: #fff; text-decoration: none; font-size: 14px; font-weight: 800; }
.ghost-action span { color: var(--brand-pink); margin-right: 7px; }
.dark-search {
  margin-top: 42px;
  background: rgba(16,13,25,.9);
  border: 1px solid var(--brand-line);
  box-shadow: 0 25px 70px rgba(0,0,0,.35);
}
.dark-search label { border-color: var(--brand-line); }
.dark-search label span { color: #817d8d; }
.dark-search select { color: #fff; }
.dark-search select option { color: #111; }
.dark-search.venue-mode .search-button { grid-column: 1/-1; width: 100%; }
.search-near-me { grid-column: 1/-1; display: flex; align-items: center; gap: 12px; padding: 6px 8px 2px; }
.search-near-me .location-status { margin: 0; }
.brand-site .search-message { color: #ff3d7f !important; }
.brand-visual { min-height: 500px; }
.visual-glow {
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: conic-gradient(from 180deg,rgba(245,7,120,.28),rgba(139,22,232,.35),rgba(0,168,247,.2),rgba(255,23,79,.3));
  filter: blur(55px);
  opacity: .75;
}
.sport-orbit {
  width: min(390px,78vw);
  aspect-ratio: 1;
  position: relative;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 50%;
  box-shadow: inset 0 0 70px rgba(139,22,232,.12), 0 0 0 55px rgba(255,255,255,.018);
}
.sport-orbit::before,
.sport-orbit::after { content: ""; position: absolute; border-radius: 50%; border: 1px dashed rgba(255,255,255,.1); }
.sport-orbit::before { inset: 45px; }
.sport-orbit::after { inset: 92px; background: rgba(8,4,38,.75); box-shadow: 0 25px 80px rgba(0,0,0,.5); }
.sport-orbit img { width: 150px; height: 150px; border-radius: 50%; z-index: 2; filter: drop-shadow(0 18px 35px rgba(245,7,120,.24)); }
.orbit-item { position: absolute; z-index: 3; width: 62px; height: 62px; display: grid; place-items: center; background: #11101a; border: 1px solid rgba(255,255,255,.13); border-radius: 19px; font-size: 27px; box-shadow: 0 16px 30px rgba(0,0,0,.4); }
.orbit-football { top: -12px; right: 72px; }
.orbit-swim { bottom: 7px; left: 40px; }
.orbit-padel { top: 93px; left: -26px; }
.orbit-fitness { bottom: 44px; right: -10px; }
.floating-card { position: absolute; z-index: 5; padding: 14px 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 15px; background: rgba(14,11,23,.88); backdrop-filter: blur(15px); box-shadow: 0 20px 45px rgba(0,0,0,.35); }
.floating-card b,.floating-card span { display: block; }
.floating-card b { font-size: 13px; }
.floating-card span { color: #827e8e; font-size: 10px; margin-top: 5px; }
.floating-top { top: 50px; left: 0; }
.floating-bottom { bottom: 35px; right: 0; }

.platform-numbers {
  width: min(1180px,calc(100% - 48px));
  margin: -38px auto 0;
  display: grid;
  grid-template-columns: repeat(4,1fr);
  border: 1px solid var(--brand-line);
  background: #0c0a13;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 25px 65px rgba(0,0,0,.35);
}
.platform-numbers div { text-align: center; padding: 25px 15px; border-left: 1px solid var(--brand-line); }
.platform-numbers div:last-child { border: 0; }
.platform-numbers b,.platform-numbers span { display: block; }
.platform-numbers b { font-size: 25px; color: #fff; }
.platform-numbers span { color: #7f7b8a; font-size: 10px; margin-top: 5px; }

.brand-site .section { max-width: 1240px; }
.discover-section { padding-top: 135px; }
.section-kicker { color: var(--brand-pink); font-size: 12px; font-weight: 900; margin-bottom: 16px; }
.discover-section .section-heading { align-items: center; gap: 60px; }
.discover-section .section-heading h2,
.roadmap-heading h2,
.dashboard-copy h2,
.join-copy h2 { color: #fff; font-size: clamp(35px,4vw,56px); line-height: 1.25; margin: 0; letter-spacing: -2px; }
.discover-section .section-heading h2 span { color: #787482; }
.discover-section .section-heading p { color: #8f8b99; max-width: 480px; line-height: 1.9; font-size: 14px; }
.feature-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.feature-card {
  min-height: 315px;
  padding: 30px;
  border: 1px solid var(--brand-line);
  border-radius: 22px;
  background: linear-gradient(145deg,rgba(20,17,30,.95),rgba(9,8,15,.95));
  position: relative;
  overflow: hidden;
  transition: .25s ease;
}
.feature-card::after {
  content: "";
  position: absolute;
  width: 150px; height: 150px;
  left: -80px; bottom: -90px;
  border-radius: 50%;
  background: var(--brand-purple);
  filter: blur(50px); opacity: 0;
  transition: .25s;
}
.feature-card:hover { transform: translateY(-5px); border-color: rgba(245,7,120,.36); }
.feature-card:hover::after { opacity: .35; }
.feature-large { grid-column: span 2; background: linear-gradient(120deg,rgba(245,7,120,.18),rgba(18,14,28,.9) 55%); }
.feature-icon { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 16px; font-size: 26px; background: rgba(255,255,255,.06); border: 1px solid var(--brand-line); }
.feature-number { position: absolute; top: 31px; left: 30px; color: #4e4a58; font-size: 12px; font-weight: 900; }
.feature-card h3 { color: #fff; font-size: 26px; margin: 38px 0 10px; }
.feature-card p { color: #8e8a98; font-size: 13px; line-height: 1.9; max-width: 560px; }
.feature-card a { position: absolute; bottom: 28px; right: 30px; color: #ff3d7f; text-decoration: none; font-size: 12px; font-weight: 800; z-index: 2; }

.roadmap-section {
  max-width: 1240px;
  margin: 30px auto 0;
  padding: 105px 28px;
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 90px;
}
.roadmap-heading { position: sticky; top: 150px; align-self: start; }
.roadmap-heading p { color: #8d8995; line-height: 1.9; font-size: 14px; margin-top: 22px; }
.roadmap-list { border-top: 1px solid var(--brand-line); }
.roadmap-list article { display: grid; grid-template-columns: 62px 1fr; gap: 25px; padding: 28px 10px; border-bottom: 1px solid var(--brand-line); opacity: .55; transition: .2s; }
.roadmap-list article:hover,.roadmap-list article.active { opacity: 1; }
.roadmap-list article > span { color: #625e6c; font-size: 13px; font-weight: 900; }
.roadmap-list small { color: var(--brand-pink); font-size: 10px; font-weight: 800; }
.roadmap-list h3 { color: #fff; font-size: 21px; margin: 7px 0 6px; }
.roadmap-list p { color: #888491; font-size: 12px; line-height: 1.8; margin: 0; }

.sports-hub-section {
  max-width: 1180px;
  margin: 35px auto 125px;
  padding: 70px;
  border: 1px solid var(--brand-line);
  border-radius: 32px;
  background:
    radial-gradient(circle at 12% 20%,rgba(245,7,120,.12),transparent 30%),
    linear-gradient(145deg,#12101a,#08070d);
}
.sports-hub-heading { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 40px; }
.sports-hub-heading h2 { color: #fff; font-size: clamp(35px,4vw,55px); line-height: 1.3; margin: 10px 0 0; }
.sports-hub-heading > p { max-width: 500px; color: #8f8b98; line-height: 1.9; font-size: 13px; }
.hub-tabs { display: flex; gap: 8px; padding: 7px; border: 1px solid var(--brand-line); border-radius: 15px; background: rgba(0,0,0,.25); overflow-x: auto; }
.hub-tabs button { flex: 1; min-width: 135px; padding: 13px 16px; border: 0; border-radius: 10px; color: #898592; background: transparent; font-family: inherit; font-size: 11px; font-weight: 800; cursor: pointer; white-space: nowrap; }
.hub-tabs button.active { color: #fff; background: linear-gradient(135deg,var(--brand-red),var(--brand-pink),var(--brand-purple)); box-shadow: 0 10px 25px rgba(245,7,120,.18); }
.hub-panels { min-height: 205px; margin-top: 16px; }
.hub-panel { min-height: 205px; padding: 28px; border: 1px solid var(--brand-line); border-radius: 18px; background: rgba(255,255,255,.025); }
.hub-date { display: flex; justify-content: space-between; align-items: center; padding-bottom: 18px; border-bottom: 1px solid var(--brand-line); }
.hub-date span { color: var(--brand-pink); font-size: 10px; font-weight: 800; }.hub-date strong { font-size: 13px; }
.hub-empty { min-height: 120px; display: flex; justify-content: center; align-items: center; gap: 18px; text-align: right; }
.hub-empty > span { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 15px; background: rgba(255,255,255,.05); font-size: 24px; }
.hub-empty b { color: #fff; font-size: 13px; }.hub-empty p { color: #777380; font-size: 10px; margin: 6px 0 0; }
.tournament-card { min-height: 148px; display: grid; grid-template-columns: 65px 1fr auto; gap: 20px; align-items: center; }
.tournament-icon { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 18px; background: linear-gradient(135deg,rgba(245,7,120,.18),rgba(139,22,232,.18)); font-size: 29px; }
.tournament-card small { color: var(--brand-pink); font-size: 9px; font-weight: 800; }.tournament-card h3 { color: #fff; font-size: 20px; margin: 7px 0; }.tournament-card p { color: #817d8a; font-size: 11px; }
.coming-pill { padding: 8px 13px; border: 1px solid rgba(245,7,120,.3); color: #ff4b8a; border-radius: 20px; font-size: 9px; font-weight: 900; }
.individual-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.individual-grid article { min-height: 145px; display: grid; grid-template-columns: 50px 1fr; gap: 14px; align-items: center; position: relative; padding: 20px; border: 1px solid var(--brand-line); border-radius: 15px; background: rgba(255,255,255,.025); }
.individual-grid article > span { width: 48px; height: 48px; display: grid; place-items: center; background: rgba(255,255,255,.05); border-radius: 14px; font-size: 22px; }
.individual-grid b { font-size: 13px; }.individual-grid p { color: #7f7b88; font-size: 9px; line-height: 1.7; }
.individual-grid a { position: absolute; bottom: 15px; left: 18px; color: var(--brand-pink); text-decoration: none; font-size: 9px; font-weight: 800; }

.dashboard-preview {
  max-width: 1180px;
  margin: 65px auto 130px;
  padding: 75px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 35px;
  background:
    radial-gradient(circle at 80% 30%,rgba(0,168,247,.13),transparent 32%),
    linear-gradient(130deg,#181020,#090810);
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 80px;
  overflow: hidden;
}
.dashboard-copy p { color: #9793a0; font-size: 14px; line-height: 1.9; }
.dashboard-points { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin-top: 25px; color: #d8d5dd; font-size: 12px; }
.dashboard-points span::first-letter { color: var(--brand-pink); }
.dashboard-card { direction: rtl; padding: 24px; background: rgba(5,5,10,.85); border: 1px solid rgba(255,255,255,.12); border-radius: 22px; box-shadow: 0 35px 80px rgba(0,0,0,.45); transform: rotate(-2deg); }
.dash-head { display: flex; justify-content: space-between; color: #ddd9e3; font-size: 11px; }
.dash-head i { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--brand-pink); margin-left: 4px; }
.dash-head i:nth-child(2) { background: var(--brand-purple); }.dash-head i:nth-child(3) { background: var(--brand-blue); }
.dash-stat { margin-top: 30px; }.dash-stat span { display: block; color: #777381; font-size: 10px; }.dash-stat strong { font-size: 42px; }.dash-stat em { color: #25d17f; font-size: 10px; font-style: normal; margin-right: 8px; }
.dash-bars { height: 130px; display: flex; align-items: end; gap: 12px; margin: 15px 0 25px; border-bottom: 1px solid var(--brand-line); }
.dash-bars i { flex: 1; border-radius: 5px 5px 0 0; background: linear-gradient(var(--brand-pink),var(--brand-purple)); opacity: .8; }
.dash-mini { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.dash-mini span { color: #716d79; font-size: 8px; }.dash-mini b { display: block; color: #fff; font-size: 17px; margin-bottom: 4px; }

.join-section {
  max-width: 1180px;
  margin: 0 auto 120px;
  padding: 70px;
  border-radius: 35px;
  background: linear-gradient(120deg,#d40852,#7516d2 58%,#073a84);
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 60px;
}
.join-copy .eyebrow { color: #fff; border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.09); }
.join-copy p { color: rgba(255,255,255,.75); font-size: 13px; line-height: 1.9; }
.join-options { display: grid; gap: 10px; }
.join-options button { width: 100%; display: grid; grid-template-columns: 48px 1fr 30px; grid-template-rows: auto auto; column-gap: 14px; text-align: right; padding: 16px; color: #fff; background: rgba(5,5,10,.35); border: 1px solid rgba(255,255,255,.17); border-radius: 16px; cursor: pointer; font-family: inherit; transition: .2s; }
.join-options button:hover { background: rgba(5,5,10,.58); transform: translateX(-4px); }
.join-options button > span { grid-row: 1/3; width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; background: rgba(255,255,255,.1); font-size: 22px; }
.join-options button b { font-size: 14px; }.join-options button small { color: rgba(255,255,255,.65); font-size: 9px; margin-top: 4px; }
.join-options button i { grid-column: 3; grid-row: 1/3; align-self: center; font-style: normal; font-size: 20px; }
.brand-footer { background: #030306; border-top: 1px solid var(--brand-line); padding: 60px max(6vw,28px) 30px; text-align: right; }
.footer-top { display: flex; justify-content: space-between; align-items: center; gap: 30px; max-width: 1180px; margin: auto; }
.brand-footer .footer-brand { justify-content: start; margin: 0; }
.footer-top p { max-width: 480px; line-height: 1.8; }
.footer-links { max-width: 1180px; margin: 40px auto 25px; padding-top: 25px; border-top: 1px solid var(--brand-line); display: flex; gap: 25px; }
.footer-links a { color: #8d8995; text-decoration: none; font-size: 11px; }
.copyright { max-width: 1180px; margin: auto; color: #55515e; font-size: 10px; }
.brand-site dialog { background: #12101a; color: #fff; border: 1px solid var(--brand-line); }
.brand-site dialog h2 { color: #fff; }.brand-site dialog p,.brand-site .dialog-form label { color: #aaa6b4; }
.brand-site .dialog-form input,.brand-site .dialog-form select,.brand-site .dialog-form textarea { color: #fff; background: #09080d; border-color: var(--brand-line); }
.brand-site .close { color: #fff; background: #24202d; }
.brand-site .result-card { background: #12101a; border-color: var(--brand-line); }.brand-site .result-card h3 { color: #fff; }

/* Full branded registration page */
.coach-registration-body { min-height: 100vh; }
.coach-registration-body .registration-header { background: rgba(5,5,10,.87); border-color: var(--brand-line); }
.coach-registration-body .back-link { color: #bbb7c4; }
.coach-registration-body .registration-main {
  max-width: 1280px;
  min-height: calc(100vh - 92px);
  grid-template-columns: .82fr 1.18fr;
  align-items: center;
  padding: 75px 32px 100px;
  gap: 80px;
}
.coach-registration-body .registration-intro { top: 140px; padding: 0; }
.coach-registration-body .registration-intro h1 { color: #fff; font-size: clamp(45px,5vw,68px); line-height: 1.38; letter-spacing: 0; margin-top: 12px; padding-block: .04em; }
.coach-registration-body .registration-intro > p { color: #9b97a4; font-size: 14px; max-width: 520px; }
.coach-registration-body .registration-benefits { color: #fff; gap: 12px; }
.coach-registration-body .registration-benefits > div { display: flex; align-items: center; gap: 13px; padding: 13px 0; border-bottom: 1px solid var(--brand-line); }
.coach-registration-body .registration-benefits span { flex: 0 0 31px; width: 31px; height: 31px; margin: 0; background: linear-gradient(135deg,var(--brand-red),var(--brand-purple)); }
.coach-registration-body .registration-benefits p { margin: 0; }
.coach-registration-body .registration-benefits b,.coach-registration-body .registration-benefits small { display: block; }
.coach-registration-body .registration-benefits b { font-size: 13px; }.coach-registration-body .registration-benefits small { color: #777381; font-size: 9px; margin-top: 4px; }
.coach-stage-note { margin-top: 25px; display: flex; gap: 12px; font-size: 10px; color: #7e7a88; }
.coach-stage-note b { color: var(--brand-pink); }
.coach-registration-body .registration-card {
  color: #fff;
  background: linear-gradient(145deg,rgba(21,17,32,.98),rgba(11,9,17,.98));
  border-color: var(--brand-line);
  box-shadow: 0 40px 100px rgba(0,0,0,.45);
  padding: 38px;
}
.registration-card-head { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 35px; padding-bottom: 25px; border-bottom: 1px solid var(--brand-line); }
.registration-card-head small { color: var(--brand-pink); font-size: 9px; }.registration-card-head h2 { color: #fff; font-size: 22px; margin: 6px 0 0; }
.registration-card-head .form-progress { margin: 0; }
.coach-registration-body .form-progress span { background: #25212d; color: #76717e; }
.coach-registration-body .form-progress span.active { color: #fff; background: linear-gradient(135deg,var(--brand-red),var(--brand-purple)); }
.coach-registration-body .form-progress i { background: #302b39; width: 50px; }
.coach-registration-body .full-registration-form legend { color: #fff; font-size: 21px; }
.coach-registration-body .full-registration-form fieldset > p { color: #777380; }
.coach-registration-body .form-grid label { color: #aaa6b2; }
.coach-registration-body .form-grid input,
.coach-registration-body .form-grid select,
.coach-registration-body .full-registration-form textarea {
  color: #fff;
  background: #08070d;
  border-color: rgba(255,255,255,.12);
  border-radius: 12px;
}
.coach-registration-body .form-grid input::placeholder,
.coach-registration-body textarea::placeholder { color: #4f4b57; }
.coach-registration-body .form-grid select option { color: #111; }
.coach-registration-body select {
  color-scheme: dark;
  color: #fff !important;
  background-color: #17131f !important;
  border-color: rgba(255,255,255,.24) !important;
  font-weight: 700;
  cursor: pointer;
}
.coach-registration-body select:hover { border-color: rgba(245,7,120,.65) !important; }
.coach-registration-body select option {
  color: #fff !important;
  background: #17131f !important;
  font-weight: 600;
  padding: 10px;
}
.coach-registration-body .form-grid label,
.coach-registration-body .sports-choice > strong { color: #d0ccd7; }
.coach-registration-body .form-grid input:focus,
.coach-registration-body .form-grid select:focus,
.coach-registration-body .full-registration-form textarea:focus { border-color: var(--brand-pink); box-shadow: 0 0 0 3px rgba(245,7,120,.1); }
.coach-registration-body .secure-upload-note { background: rgba(0,168,247,.07); border-color: rgba(0,168,247,.22); color: #b5dff5; display: flex; gap: 7px; flex-direction: column; }
.coach-registration-body .secure-upload-note b { color: #fff; }
.coach-registration-body .consent-row { color: #9994a1; }
.coach-registration-body .registration-summary { border-color: var(--brand-line); }.coach-registration-body .registration-summary div { border-color: var(--brand-line); }
.coach-registration-body .registration-summary span { color: #777280; }
.coach-registration-body .outline-dark { color: #fff; background: transparent; border-color: rgba(255,255,255,.2); }
.coach-registration-body .form-navigation .primary { background: linear-gradient(135deg,var(--brand-red),var(--brand-pink),var(--brand-purple)); }
.coach-registration-body .form-error { color: #ff87aa; background: rgba(245,7,120,.09); padding: 12px; border-radius: 10px; }
.coach-registration-body .registration-success h2 { color: #fff; }.coach-registration-body .registration-success p { color: #aaa6b2; }
.registration-footer { color: #5e5966; text-align: center; border-top: 1px solid var(--brand-line); padding: 25px; font-size: 10px; }
.protected-image-field { margin-bottom: 24px; padding: 18px; border: 1px solid rgba(245,7,120,.22); border-radius: 16px; background: rgba(245,7,120,.045); }
.protected-image-field > div:first-child { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 13px; }
.protected-image-field strong,.protected-image-field small { display: block; }
.protected-image-field strong { color: inherit; font-size: 12px; }
.protected-image-field small { color: #777280; font-size: 9px; }
.image-drop { min-height: 105px; display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 4px; border: 1px dashed rgba(245,7,120,.45); border-radius: 13px; background: rgba(0,0,0,.18); cursor: pointer; text-align: center; }
.image-drop:hover { border-color: var(--brand-pink,#f50778); background: rgba(245,7,120,.07); }
.image-drop input { position: absolute; width: 1px !important; height: 1px; opacity: 0; pointer-events: none; }
.image-drop > span { font-size: 25px; }.image-drop > b { color: inherit; font-size: 11px; }.image-drop > small { font-size: 8px; }
.upload-previews { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-top: 12px; }
.upload-preview-item { position: relative; overflow: hidden; min-height: 92px; border-radius: 10px; background: #08070d; }
.upload-preview-item img { width: 100%; height: 92px; display: block; object-fit: cover; }
.upload-preview-item span { position: absolute; right: 5px; bottom: 5px; padding: 4px 6px; border-radius: 6px; color: #fff; background: rgba(5,5,10,.75); font-size: 7px; }
.protected-image-field.compact { color: var(--ink); margin: 5px 0 0; }
.brand-site .protected-image-field.compact { color: #fff; }
.dialog-form .protected-image-field { margin-bottom: 0; }
.location-capture { padding: 17px; border: 1px solid rgba(0,168,247,.24); border-radius: 15px; background: rgba(0,168,247,.055); }
.location-capture > div { margin-bottom: 12px; }
.location-capture b,.location-capture small { display: block; }
.location-capture b { color: inherit; font-size: 12px; }
.location-capture small { color: #777481; font-size: 9px; line-height: 1.7; margin-top: 4px; }
.location-button { padding: 11px 15px; border: 1px solid rgba(0,168,247,.35); border-radius: 10px; color: #5bc9fb; background: rgba(0,168,247,.08); font-family: inherit; font-size: 10px; font-weight: 800; cursor: pointer; }
.location-button:hover,.location-button.captured { color: #fff; background: #008dcc; }
.location-button:disabled { opacity: .6; cursor: wait; }
.location-status { color: #777481; font-size: 9px; margin: 10px 0 0; }
.location-status small { display: inline; margin-inline-start: 7px; }
.dialog-form .location-capture { color: var(--ink); }
.brand-site .dialog-form .location-capture { color: #fff; }
.certificate-upload { margin-top: 18px; }
.facility-list { display: grid; gap: 13px; }
.facility-item { padding: 18px; border: 1px solid rgba(255,255,255,.11); border-radius: 16px; background: rgba(0,0,0,.18); }
.facility-item-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; }
.facility-item-head b { font-size: 12px; }
.remove-facility { border: 0; color: #ff5c86; background: rgba(255,23,79,.08); border-radius: 8px; padding: 7px 10px; font-family: inherit; font-size: 9px; font-weight: 800; cursor: pointer; }
.add-facility-button { width: 100%; margin: 13px 0 25px; padding: 13px; border: 1px dashed rgba(245,7,120,.45); border-radius: 12px; color: #ff4a88; background: rgba(245,7,120,.05); font-family: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.facility-indoor { display: flex; align-items: center; gap: 8px; align-self: end; min-height: 46px; }
.facility-indoor input { width: auto !important; margin: 0 !important; accent-color: var(--brand-pink); }
.facility-indoor span { color: #aaa6b2; font-size: 10px; }
.venue-images-field { margin-top: 0; }
.is-english h1,
.is-english h2 { letter-spacing: -2px; }
.is-english .brand-hero h1 { line-height: 1.12; }
.is-english .brand-header nav { direction: ltr; }

@media (max-width: 1200px) and (min-width: 981px) {
  .brand-header { padding-inline: 24px; gap: 20px; }
  .brand-header nav { gap: 22px; }
  .brand-header .header-actions { gap: 8px; }
  .brand-header .brand strong { font-size: 16px; }
  .brand-hero { grid-template-columns: 1fr .86fr; gap: 25px; padding-inline: 35px; }
  .brand-hero h1 { font-size: 59px; line-height: 1.34; }
  .dark-search { grid-template-columns: 1fr 1fr; }
  .dark-search .search-button { grid-column: 1/-1; width: 100%; }
}

@media (max-width: 980px) {
  .brand-header nav { display: none; }
  .brand-hero { grid-template-columns: 1fr; padding-top: 70px; }
  .brand-hero .hero-copy { justify-self: stretch; }
  .brand-visual { min-height: 560px; }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .feature-large { grid-column: span 2; }
  .roadmap-section { grid-template-columns: 1fr; gap: 45px; }
  .roadmap-heading { position: static; }
  .dashboard-preview { margin-inline: 24px; padding: 55px 40px; gap: 45px; }
  .join-section { margin-inline: 24px; padding: 50px 40px; }
  .sports-hub-section { margin-inline: 24px; padding: 50px 40px; }
  .coach-registration-body .registration-main { grid-template-columns: 1fr; gap: 50px; align-items: start; }
  .coach-registration-body .registration-intro { position: static; max-width: 750px; }
}
@media (max-width: 680px) {
  .brand-header { height: 76px; padding-inline: 16px; }
  .brand-header .brand-logo { width: 44px; height: 44px; }
  .brand-header .brand > span { display: none; }
  .brand-header .link-button,.coach-registration-body .back-link { display: none; }
  .brand-hero { padding: 55px 17px 95px; }
  .brand-hero h1 { font-size: 49px; letter-spacing: -2px; }
  .brand-hero .hero-copy > p { font-size: 14px; }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .ghost-action { text-align: center; padding: 10px; }
  .dark-search { grid-template-columns: 1fr; }
  .dark-search .search-button { grid-column: auto; }
  .brand-visual { min-height: 440px; }
  .visual-glow { width: 300px; height: 300px; }
  .sport-orbit { width: 285px; }
  .sport-orbit img { width: 105px; height: 105px; }
  .orbit-item { width: 50px; height: 50px; font-size: 21px; }
  .floating-card { padding: 11px; }
  .floating-top { top: 35px; }.floating-bottom { bottom: 30px; }
  .platform-numbers { width: 100%; margin: 0; border-radius: 0; grid-template-columns: 1fr 1fr; }
  .platform-numbers div:nth-child(2) { border-left: 0; }.platform-numbers div:nth-child(-n+2) { border-bottom: 1px solid var(--brand-line); }
  .discover-section { padding: 90px 17px; }
  .discover-section .section-heading { display: block; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-large { grid-column: auto; }
  .roadmap-section { padding: 70px 17px; }
  .dashboard-preview { margin: 20px 15px 90px; padding: 38px 22px; grid-template-columns: 1fr; }
  .dashboard-card { transform: none; }
  .join-section { margin: 0 15px 80px; padding: 38px 20px; grid-template-columns: 1fr; gap: 30px; }
  .sports-hub-section { margin: 0 15px 80px; padding: 35px 18px; }
  .sports-hub-heading { display: block; }
  .sports-hub-heading > p { margin-top: 18px; }
  .hub-tabs { justify-content: start; }
  .hub-tabs button { flex: 0 0 auto; }
  .hub-panel { padding: 20px 15px; }
  .individual-grid { grid-template-columns: 1fr; }
  .tournament-card { grid-template-columns: 52px 1fr; }
  .coming-pill { grid-column: 1/-1; justify-self: start; }
  .footer-top { display: block; }.footer-top p { margin-top: 25px; }.footer-links { flex-wrap: wrap; }
  .coach-registration-body .registration-main { padding: 48px 14px 70px; }
  .coach-registration-body .registration-intro h1 { font-size: 36px; line-height: 1.42; letter-spacing: 0; overflow-wrap: anywhere; }
  .coach-registration-body .registration-intro > p { font-size: 12px; }
  .coach-registration-body .registration-benefits > div { min-width: 0; }
  .coach-registration-body .registration-benefits p { min-width: 0; }
  .coach-registration-body .registration-card { padding: 25px 17px; border-radius: 22px; }
  .registration-card-head { display: block; }
  .registration-card-head .form-progress { margin-top: 25px; }
  .language-switcher button { padding: 5px 6px; font-size: 9px; }
}
