:root{
  --black:#050505;--black2:#111111;--red:#E30613;--white:#FFFFFF;--steel:#6D6E71;
  --dashr:#2588d8;--paper:#f5f4f1;--grey:#eceae6;--ink:#111;--line:#d4d4d4;
  --content:1180px;--narrow:900px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.55}
img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button{font:inherit}
.skip-link{position:absolute;left:-9999px;top:12px;background:var(--red);color:#fff;padding:10px 16px;z-index:100}.skip-link:focus{left:12px}
h1,h2,h3,.brand,.btn,.desktop-nav,.step-number,.test-index,.event-date,.event-type,.store-button,.club-package-title,.sport-focus-grid{font-family:Rajdhani,Arial,sans-serif}

.site-header{position:absolute;left:0;right:0;top:0;z-index:50;color:#fff}
.site-header.scrolled{position:fixed;background:rgba(5,5,5,.96);box-shadow:0 8px 30px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.header-shell{width:min(calc(100% - 46px),var(--content));min-height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:255px;max-height:66px;object-fit:contain;object-position:left center}
.desktop-nav{display:flex;align-items:center;gap:18px;font-size:.82rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.desktop-nav>a{padding:12px 0;border-bottom:2px solid transparent}.desktop-nav>a:hover{border-color:#fff}
.desktop-nav .nav-register{padding:12px 18px;background:var(--red);border:0}.desktop-nav .nav-login{padding:11px 16px;border:1px solid rgba(255,255,255,.75)}
.menu-button{display:none;width:46px;height:46px;padding:10px;border:0;background:transparent}.menu-button span{display:block;height:2px;background:#fff;margin:6px 0}

/* generic ACT graphical system */
.apex-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,black,transparent 85%)}
.performance-stripes{position:absolute;width:500px;height:500px;right:-120px;bottom:-150px;background:repeating-linear-gradient(135deg,transparent 0 24px,var(--red) 24px 31px,transparent 31px 42px);opacity:.28;transform:skewX(-9deg)}
.hero{position:relative;min-height:880px;color:#fff;overflow:hidden;background:#050505}
.hero-graphic{position:absolute;inset:0;background:radial-gradient(circle at 78% 34%,rgba(227,6,19,.27),transparent 31%),linear-gradient(120deg,#050505 0%,#0b0b0b 57%,#170609 100%)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.24),transparent)}
.hero-inner{position:relative;z-index:2;width:min(calc(100% - 48px),var(--content));min-height:880px;margin:auto;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:85px}
.hero-logo{width:275px;max-height:230px;object-fit:contain;object-position:left center;margin-bottom:14px}
.hero-kicker,.section-kicker{margin:0 0 12px;color:var(--red);font-size:.74rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.hero-kicker{color:#fff}
.hero h1{margin:0;font-size:clamp(5.5rem,12vw,10rem);font-weight:700;line-height:.72;letter-spacing:-.025em;text-transform:uppercase}.hero h1 span{color:var(--red)}
.hero-deck{max-width:690px;margin:25px 0 0;color:#fff;font-size:1.16rem;font-weight:500}.hero-actions{display:flex;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 24px;border:1px solid transparent;font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:#ff1020}.btn-outline{border-color:#fff;color:#fff;background:transparent}.btn-outline:hover{background:#fff;color:#111}.btn-black{background:#111;color:#fff}
.hero-scroll{position:absolute;right:32px;bottom:27px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff;font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero-scroll b{font-size:1.65rem;font-weight:500}

.editorial{padding:100px 24px 110px}.section-white{background:#fff}.content-narrow{width:min(100%,var(--narrow));margin:auto}.content-wide{width:min(calc(100% - 48px),var(--content));margin:auto}
.editorial h2,.section-heading h2,.event-intro h2,.reporting-intro h2,.dashr-section h2,.club-section h2,.epley-section h2,.faq-section h2,.register-content h2,.closing-cta h2{margin:0;font-size:clamp(3.7rem,7vw,6.9rem);font-weight:700;line-height:.80;letter-spacing:-.02em;text-transform:uppercase}
.lead-copy{max-width:800px;margin:26px 0 0;color:#3f3f3f;font-size:1.18rem;line-height:1.72}.editorial-rule{height:1px;background:#d5d5d5;margin:62px 0}
.copy-block{margin-top:58px}.copy-block h3,.dashr-steps h3,.epley-grid h3{margin:0 0 12px;font-size:2.35rem;font-weight:700;line-height:.9;text-transform:uppercase}.copy-block p{margin:0;color:#474747}
.statement{margin-top:22px!important;color:var(--red)!important;font-family:Rajdhani,Arial,sans-serif;font-size:2rem!important;font-weight:700!important;text-transform:uppercase}
.two-column-copy{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.principles-inline{display:flex;justify-content:space-between;gap:32px;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.principle-intro .section-kicker{margin-bottom:6px}.principle-mini-grid{display:flex;gap:18px;flex-wrap:wrap}.principle-mini-grid span{font-size:1.05rem;font-weight:700;text-transform:uppercase}.principle-mini-grid b{color:var(--red);margin-right:4px}
.how-it-works ol{list-style:none;padding:0;margin:25px 0 0}.how-it-works li{display:grid;grid-template-columns:80px 1fr;gap:25px;padding:22px 0;border-top:1px solid var(--line)}.how-it-works li:last-child{border-bottom:1px solid var(--line)}
.step-number{color:var(--red);font-size:2rem;font-weight:700}.how-it-works strong{font-family:Rajdhani,Arial,sans-serif;font-size:1.6rem;font-weight:700;text-transform:uppercase}.how-it-works p{margin:6px 0 0;color:#5d5d5d}
.editorial-cta{margin-top:70px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 0;border-top:4px solid #111;border-bottom:1px solid #111}.editorial-cta span{display:block;color:#777;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.editorial-cta strong{display:block;margin-top:4px;font-family:Rajdhani,Arial,sans-serif;font-size:2.5rem;font-weight:700;line-height:.95;text-transform:uppercase}

/* Dashr co-branding */
.dashr-inline{display:inline-block;color:#fff;background:#121212;border-left:4px solid var(--dashr);padding:.08em .4em;font-family:Inter,Arial,sans-serif;font-weight:800;letter-spacing:-.03em}
.dashr-lockup{display:inline-flex;align-items:center;gap:7px}.dashr-d{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:var(--dashr);color:#fff;font:900 1.25rem/1 Inter,sans-serif;font-style:italic}.dashr-lockup strong{font:800 1.55rem/1 Inter,sans-serif;letter-spacing:-.04em}.dashr-lockup.large strong{font-size:2rem}.dashr-lockup.large .dashr-d{width:42px;height:42px}.dashr-lockup.jumbo strong{font-size:3rem}.dashr-lockup.jumbo .dashr-d{width:58px;height:58px;font-size:2rem}

/* sports */
.sports-section{padding:105px 0;background:#090909;color:#fff}.section-heading{max-width:850px;margin-bottom:45px}.section-heading-light p{color:#aaa}.sport-variations{width:100%;border:1px solid rgba(255,255,255,.16);background:#000}
.sport-focus-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.sport-focus-grid div{padding:18px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.sport-focus-grid strong,.sport-focus-grid span{display:block}.sport-focus-grid strong{font-size:1.5rem;text-transform:uppercase}.sport-focus-grid span{margin-top:3px;color:#aaa;font-family:Inter,Arial,sans-serif;font-size:.8rem}

/* testing */
.testing-section{padding:105px 0;background:#fff;color:#111}.testing-section .section-heading p{color:#666}
.dashr-partner-note{display:flex;align-items:center;gap:18px;padding:18px 0;margin-bottom:28px;border-top:1px solid #bbb;border-bottom:1px solid #bbb}.dashr-partner-note p{margin:0;color:#666}
.sport-test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cfcfcf;border:1px solid #cfcfcf}.sport-test-card{padding:26px;background:#fff;min-height:330px}.sport-test-card h3{margin:0 0 16px;font-size:2.25rem;font-weight:700;text-transform:uppercase}.sport-test-card ul{list-style:none;margin:0;padding:0}.sport-test-card li{padding:8px 0;border-bottom:1px solid #eee;font-size:.88rem;font-weight:600}

/* events */
.event-types{padding:100px 24px;background:var(--paper)}.event-intro{width:min(100%,var(--content));margin:0 auto 45px}.event-intro p:last-child{color:#666}.event-card-grid{width:min(100%,var(--content));margin:auto;display:grid;gap:18px}.two-events{grid-template-columns:1fr 1fr}
.photo-card{position:relative;min-height:650px;overflow:hidden;color:#fff;background:#090909}.abstract-card-graphic{position:absolute;inset:0;background:radial-gradient(circle at 70% 28%,rgba(227,6,19,.75),transparent 28%),repeating-linear-gradient(135deg,transparent 0 26px,rgba(227,6,19,.18) 26px 31px,transparent 31px 43px),linear-gradient(145deg,#171717,#020202)}.abstract-card-graphic.alt{background:radial-gradient(circle at 28% 36%,rgba(227,6,19,.72),transparent 25%),linear-gradient(45deg,transparent 48%,rgba(255,255,255,.05) 49% 51%,transparent 52%),linear-gradient(145deg,#050505,#171717)}
.photo-card-tint{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.87),rgba(0,0,0,.08) 70%)}.photo-card-content{position:absolute;inset:auto 0 0;z-index:2;padding:34px}.photo-card-content>span{font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.photo-card h3{margin:8px 0 12px;font-size:3.8rem;font-weight:700;line-height:.82;text-transform:uppercase}.photo-card p{color:#fff}.event-features{margin:18px 0;padding-left:18px;color:#fff;font-size:.9rem}.event-features li{margin:5px 0}.photo-card a{display:inline-block;margin-top:10px;padding-bottom:4px;border-bottom:2px solid #fff;font-family:Rajdhani,Arial,sans-serif;font-size:.86rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}

.upcoming{padding:100px 0 110px;background:#fff}.event-list{border-top:4px solid #111}.event-row{display:grid;grid-template-columns:160px 1fr auto;gap:30px;align-items:center;padding:31px 0;border-bottom:1px solid var(--line)}.event-date span{display:block;color:#777;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.event-date strong{display:block;font-size:2rem;font-weight:700;line-height:.9;text-transform:uppercase}.event-type{color:var(--red);font-size:.76rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.event-info h3{margin:5px 0 4px;font-family:Rajdhani,Arial,sans-serif;font-size:2.1rem;font-weight:700;line-height:.9;text-transform:uppercase}.event-info p{margin:0;color:#777}.event-action{min-width:140px;padding:14px 17px;border:1px solid #111;text-align:center;font-family:Rajdhani,Arial,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

/* reporting */
.reporting-section{display:grid;grid-template-columns:.9fr 1.1fr;background:#0a0a0a;color:#fff}.reporting-intro{padding:80px max(30px,calc((100vw - var(--content))/2));padding-right:50px}.reporting-brand{display:flex;align-items:center;gap:16px;margin-bottom:35px}.reporting-brand img{width:78px}.reporting-brand>span{color:#777;font-size:2rem}.reporting-intro>p{max-width:570px;color:#ccc}
.reporting-bars{display:grid;background:#151515}.reporting-bars div{padding:28px 34px;border-bottom:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14)}.reporting-bars strong,.reporting-bars span{display:block}.reporting-bars strong{font-family:Rajdhani,Arial,sans-serif;font-size:1.8rem;text-transform:uppercase}.reporting-bars span{margin-top:5px;color:#aaa;font-size:.9rem}

/* epley */
.epley-section{padding:105px 24px;background:#f1efe9}.epley-lockup{justify-content:flex-start;border-color:#bdbdbd}.integration-plus{font-size:1.7rem;color:#777}.eapi-wordmark{font-family:Rajdhani,Arial,sans-serif;font-size:1.7rem;font-weight:700;text-transform:uppercase}.eapi-wordmark b{color:var(--red)}
.epley-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:42px 0;background:#c8c8c8;border:1px solid #c8c8c8}.epley-grid article{padding:26px;background:#fff}.epley-grid h3{font-size:1.75rem}.epley-grid p{color:#666;font-size:.93rem}
.eapi-components{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#111}.eapi-components span{padding:18px;background:#fff;font-size:.85rem}.eapi-components b{display:block;color:var(--red);font-family:Rajdhani,Arial,sans-serif;font-size:1.3rem;text-transform:uppercase}

/* dashr */
.dashr-section{padding:105px 24px;background:#fff}.dashr-section-title{display:flex;align-items:center;gap:18px;margin-bottom:28px}.dashr-section-title>span{font-family:Rajdhani,Arial,sans-serif;font-size:1.75rem;font-weight:700;text-transform:uppercase;color:#666}
.dashr-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:45px 0 32px;background:#ccc;border:1px solid #ccc}.dashr-steps article{padding:23px;background:#fff}.dashr-steps>article>span{display:block;color:var(--dashr);font-family:Rajdhani,Arial,sans-serif;font-size:2.3rem;font-weight:700}.dashr-steps h3{font-size:1.6rem}.dashr-steps p{color:#666;font-size:.9rem}
.app-buttons{display:flex;gap:14px;flex-wrap:wrap}.store-button{display:flex;flex-direction:column;min-width:190px;padding:11px 22px;background:#050505;color:#fff;border-left:5px solid var(--dashr)}.store-button small{font-size:.68rem;font-family:Inter,Arial,sans-serif}.store-button strong{font-size:1.35rem;font-weight:700;line-height:1}.dashr-note{margin-top:22px;color:#888;font-size:.82rem}

/* club */
.club-section{padding:105px 24px;background:#0b0b0b;color:#fff}.club-section .lead-copy{color:#ccc}.club-package{display:grid;grid-template-columns:.75fr 1.25fr;gap:35px;margin:45px 0 25px;padding:34px;border:1px solid rgba(255,255,255,.22)}.club-package-title span,.club-package-title strong,.club-package-title small{display:block}.club-package-title span{color:var(--red);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.club-package-title strong{font-size:3.1rem;font-weight:700;line-height:.92;text-transform:uppercase}.club-package-title small{margin-top:12px;color:#bbb;font-family:Inter,Arial,sans-serif}.club-package ul{margin:0;padding-left:18px;color:#eee}.club-package li{margin:7px 0}

/* faq */
.faq-section{padding:105px 24px;background:var(--grey)}.faq-list{margin-top:45px;border-top:4px solid #111}.faq-list details{border-bottom:1px solid #bbb}.faq-list summary{cursor:pointer;list-style:none;position:relative;padding:22px 45px 22px 0;font-family:Rajdhani,Arial,sans-serif;font-size:1.75rem;font-weight:700;line-height:.95;text-transform:uppercase}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:0;top:17px;color:var(--red);font-family:Inter,Arial,sans-serif;font-size:2rem;font-weight:700}.faq-list details[open] summary:after{content:"–"}.faq-list details p{max-width:740px;margin:0;padding:0 0 22px;color:#606060}

/* register */
.register-section{position:relative;min-height:760px;color:#fff;display:flex;align-items:center;justify-content:flex-end;overflow:hidden;background:#050505}.register-graphic,.register-tint{position:absolute;inset:0}.register-graphic{background:radial-gradient(circle at 28% 48%,rgba(37,136,216,.13),transparent 24%),radial-gradient(circle at 62% 38%,rgba(227,6,19,.22),transparent 28%),#050505}.register-tint{background:linear-gradient(90deg,rgba(0,0,0,.12),rgba(0,0,0,.82) 60%)}.register-content{position:relative;z-index:2;width:min(650px,calc(100% - 48px));margin-right:max(24px,calc((100vw - var(--content))/2));padding:70px 0}.register-mark{width:150px;margin-bottom:16px}.powered-row{margin-bottom:22px;color:#aaa;font-size:.82rem}.register-content>p{color:#eee}.register-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

.closing-cta{padding:75px max(24px,calc((100vw - var(--content))/2));background:#111;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px}.closing-cta p:last-child{color:#aaa}
.site-footer{padding:45px max(24px,calc((100vw - var(--content))/2)) 25px;background:#050505;color:#fff}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-logo{width:245px;max-height:90px;object-fit:contain;object-position:left center}.footer-powered{color:#777;font-size:.72rem}.footer-nav{display:flex;gap:18px;font-family:Rajdhani,Arial,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);color:#777;font-size:.72rem}

@media(max-width:980px){
.desktop-nav{display:none}.menu-button{display:block}.desktop-nav.open{display:flex;position:absolute;top:82px;left:20px;right:20px;flex-direction:column;align-items:stretch;padding:18px;background:#080808;border:1px solid rgba(255,255,255,.15)}
.sport-focus-grid,.sport-test-grid{grid-template-columns:repeat(2,1fr)}.two-events{grid-template-columns:1fr}.photo-card{min-height:580px}.reporting-section{grid-template-columns:1fr}.epley-grid{grid-template-columns:1fr}.eapi-components{grid-template-columns:repeat(2,1fr)}.dashr-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
.header-shell{width:calc(100% - 28px)}.brand img{width:210px}.hero{min-height:790px}.hero-inner{width:calc(100% - 32px);min-height:790px}.hero-logo{width:200px}.hero h1{font-size:clamp(5rem,24vw,8rem)}.hero-deck{font-size:1rem}.hero-scroll{display:none}.editorial{padding:75px 20px}.two-column-copy{grid-template-columns:1fr;gap:10px}.principles-inline,.editorial-cta{align-items:flex-start;flex-direction:column}.sport-focus-grid,.sport-test-grid{grid-template-columns:1fr}.event-types{padding:75px 18px}.event-row{grid-template-columns:1fr;gap:12px}.event-action{justify-self:start}.reporting-intro{padding:55px 22px}.club-package{grid-template-columns:1fr}.closing-cta{align-items:flex-start;flex-direction:column}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-nav{flex-wrap:wrap}}
@media(max-width:520px){
.hero-actions,.register-buttons{width:100%;flex-direction:column}.hero-actions .btn,.register-buttons .btn{width:100%}.editorial h2,.section-heading h2,.event-intro h2,.reporting-intro h2,.dashr-section h2,.club-section h2,.epley-section h2,.faq-section h2,.register-content h2,.closing-cta h2{font-size:clamp(3.2rem,18vw,5rem)}.how-it-works li{grid-template-columns:55px 1fr}.eapi-components,.dashr-steps{grid-template-columns:1fr}.app-buttons{flex-direction:column}.store-button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* v4 refinements */
.hero-logo-plate{
  background:#fff;
  padding:14px 18px;
  border-radius:3px;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
  margin-bottom:18px;
}
.hero-logo-plate .hero-logo{
  width:225px;
  max-height:290px;
  margin:0;
  object-fit:contain;
}
.hero-graphic img,.register-graphic img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.9;
}
.hero-graphic,.register-graphic{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.sport-logo-strip{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin:24px 0 20px;
}
.sport-logo-strip figure{
  margin:0;
  padding:10px;
  background:#050505;
  border:1px solid rgba(255,255,255,.16);
  text-align:center;
}
.sport-logo-strip img{
  width:100%;
  height:150px;
  object-fit:contain;
  object-position:center;
}
.sport-logo-strip figcaption{
  margin-top:7px;
  color:#bbb;
  font:700 .78rem/1 Rajdhani,Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sport-card-graphic{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:radial-gradient(circle at 70% 28%,rgba(227,6,19,.45),transparent 34%),linear-gradient(145deg,#111,#020202);
}
.sport-card-graphic span{
  position:absolute;
  color:#fff;
  opacity:.10;
  font-size:9rem;
  line-height:1;
}
.sport-card-one span:nth-child(1){left:10%;top:12%}
.sport-card-one span:nth-child(2){right:8%;top:20%;color:#E30613;opacity:.26}
.sport-card-one span:nth-child(3){left:26%;bottom:18%;font-size:12rem;transform:rotate(18deg)}
.sport-card-one span:nth-child(4){right:15%;bottom:10%;font-size:7rem}
.sport-card-two span:nth-child(1){left:12%;top:18%;color:#E30613;opacity:.25}
.sport-card-two span:nth-child(2){right:10%;top:12%;font-size:11rem}
.sport-card-two span:nth-child(3){left:38%;bottom:10%;font-size:9rem}
.sport-card-two span:nth-child(4){right:22%;bottom:26%;font-size:8rem}
.dashr-inline i{font-style:normal;color:#27a8e0;margin-right:.28em}
.dashr-lockup .dashr-d{
  background:#27a8e0;
  color:#fff;
  font-size:1rem;
}
@media(max-width:980px){
  .sport-logo-strip{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:620px){
  .hero-logo-plate .hero-logo{width:175px}
  .sport-logo-strip{grid-template-columns:repeat(2,1fr)}
  .sport-logo-strip img{height:125px}
}

.apex-grid,.performance-stripes,.abstract-card-graphic{display:none!important}

/* v5: asset reliability + official DASHR branding + generic athlete graphics */
.hero-logo-plate{display:none!important}
.hero-logo-wrap{
  width:300px;
  min-height:210px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin:0 0 20px 0;
}
.hero-logo-wrap .hero-logo{
  display:block!important;
  width:270px!important;
  max-width:100%!important;
  max-height:260px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}
.brand img,.footer-logo{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}
.dashr-inline-logo{
  display:inline-flex;
  align-items:center;
  vertical-align:middle;
  padding:.15em .4em;
  background:#050505;
  border-left:4px solid #148eea;
}
.dashr-inline-logo img{
  display:block;
  height:1.45em;
  width:auto;
  max-width:150px;
  object-fit:contain;
}
.dashr-lockup-img{
  display:flex;
  align-items:center;
}
.dashr-lockup-img img{
  display:block;
  width:145px;
  max-height:60px;
  object-fit:contain;
}
.dashr-lockup-img.large img{width:190px}
.dashr-lockup-img.jumbo img{width:250px}
.sport-card-graphic img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.95;
}
.sport-card-one,.sport-card-two{
  background:#050505!important;
}
.hero-graphic img,.register-graphic img{
  opacity:.82;
}
@media(max-width:620px){
  .hero-logo-wrap{width:230px;min-height:170px}
  .hero-logo-wrap .hero-logo{width:210px!important;max-height:210px!important}
  .dashr-lockup-img.jumbo img{width:205px}
}

.sport-card-graphic span{display:none!important}

/* v6: sports photo imagery instead of abstract background graphics */
.hero-photo,
.photo-card-bg,
.register-photo{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.hero-photo{
  background-image:
    linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.50) 46%, rgba(0,0,0,.20) 100%),
    linear-gradient(0deg, rgba(0,0,0,.12), rgba(0,0,0,.12)),
    url("https://images.unsplash.com/photo-1546519638-68e109498ffc?auto=format&fit=crop&w=2200&q=80");
  background-position:center 35%;
}

.open-photo{
  background-image:
    linear-gradient(0deg, rgba(0,0,0,.58), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1519861531473-9200262188bf?auto=format&fit=crop&w=1800&q=80");
  background-position:center center;
}

.club-photo{
  background-image:
    linear-gradient(0deg, rgba(0,0,0,.58), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1461896836934-ffe607ba8211?auto=format&fit=crop&w=1800&q=80");
  background-position:center center;
}

.register-photo{
  background-image:
    linear-gradient(90deg, rgba(0,0,0,.28), rgba(0,0,0,.78) 60%),
    linear-gradient(0deg, rgba(0,0,0,.10), rgba(0,0,0,.10)),
    url("https://images.unsplash.com/photo-1517649763962-0c623066013b?auto=format&fit=crop&w=2200&q=80");
  background-position:center center;
}

.hero-graphic,
.register-graphic,
.sport-card-graphic{
  display:none !important;
}

.photo-card{
  background:#050505;
}

.photo-card-bg{
  transform:scale(1.02);
  transition:transform .35s ease;
}

.photo-card:hover .photo-card-bg{
  transform:scale(1.05);
}

.hero-overlay,
.photo-card-tint,
.register-tint{
  z-index:1;
}

.hero-inner,
.photo-card-content,
.register-content{
  z-index:2;
}

@media (prefers-reduced-motion: reduce){
  .photo-card-bg,
  .photo-card:hover .photo-card-bg{
    transform:none;
    transition:none;
  }
}

/* v7: second process list converted from numbered cards to bullet elements */
.dashr-bullets{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 30px;
  margin:45px 0 32px;
}
.dashr-bullets article{
  display:grid;
  grid-template-columns:18px 1fr;
  gap:14px;
  align-items:start;
  padding:18px 0;
  border-top:1px solid #d4d4d4;
}
.dashr-bullets article:nth-last-child(-n+2){
  border-bottom:1px solid #d4d4d4;
}
.bullet-dot{
  width:10px;
  height:10px;
  margin-top:8px;
  border-radius:50%;
  background:var(--dashr);
  box-shadow:0 0 0 4px rgba(37,136,216,.12);
}
.dashr-bullets h3{
  margin:0 0 5px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.6rem;
  font-weight:700;
  line-height:.95;
  text-transform:uppercase;
}
.dashr-bullets p{
  margin:0;
  color:#666;
  font-size:.92rem;
}
@media(max-width:700px){
  .dashr-bullets{
    grid-template-columns:1fr;
  }
  .dashr-bullets article:nth-last-child(-n+2){
    border-bottom:0;
  }
  .dashr-bullets article:last-child{
    border-bottom:1px solid #d4d4d4;
  }
}

/* v8: consistent photo style across all major photo sections */
.hero-photo,
.open-photo,
.club-photo,
.register-photo{
  background-color:#050505;
  background-repeat:no-repeat;
  background-size:cover;
  background-blend-mode:multiply, multiply, normal;
}

/* consistent moody, high-contrast, ACT-style red-tinted treatment */
.hero-photo{
  background-image:
    linear-gradient(0deg, rgba(5,5,5,.42), rgba(5,5,5,.42)),
    linear-gradient(135deg, rgba(227,6,19,.18), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1546519638-68e109498ffc?auto=format&fit=crop&w=2200&q=80");
  background-position:center 35%;
}

.open-photo{
  background-image:
    linear-gradient(0deg, rgba(5,5,5,.44), rgba(5,5,5,.44)),
    linear-gradient(135deg, rgba(227,6,19,.18), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1519861531473-9200262188bf?auto=format&fit=crop&w=1800&q=80");
  background-position:center center;
}

.club-photo{
  background-image:
    linear-gradient(0deg, rgba(5,5,5,.44), rgba(5,5,5,.44)),
    linear-gradient(135deg, rgba(227,6,19,.18), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1461896836934-ffe607ba8211?auto=format&fit=crop&w=1800&q=80");
  background-position:center center;
}

.register-photo{
  background-image:
    linear-gradient(0deg, rgba(5,5,5,.44), rgba(5,5,5,.44)),
    linear-gradient(135deg, rgba(227,6,19,.18), rgba(0,0,0,.18)),
    url("https://images.unsplash.com/photo-1517649763962-0c623066013b?auto=format&fit=crop&w=2200&q=80");
  background-position:center center;
}

.photo-card-tint{
  background:linear-gradient(0deg, rgba(0,0,0,.68), rgba(0,0,0,.18) 70%);
}

.register-tint{
  background:linear-gradient(90deg, rgba(0,0,0,.32), rgba(0,0,0,.76) 60%);
}

.hero-overlay{
  background:linear-gradient(90deg, rgba(0,0,0,.40), transparent);
}

/* v9: principle list changed from numbered items to bullet elements */
.principle-mini-grid{
  display:none !important;
}

.principle-bullet-grid{
  display:flex;
  gap:26px;
  flex-wrap:wrap;
  align-items:center;
}

.principle-bullet-grid span{
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-size:1.05rem;
  font-weight:700;
  text-transform:uppercase;
}

.principle-bullet-grid i{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--red);
  display:inline-block;
  box-shadow:0 0 0 4px rgba(227,6,19,.12);
  flex:0 0 auto;
}

@media(max-width:760px){
  .principle-bullet-grid{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }
}

/* v10: Dashr Player Profile shield + ACT principle icons */
.btn-app{
  gap:12px;
}
.btn-app img{
  width:28px;
  height:28px;
  border-radius:8px;
  object-fit:cover;
  box-shadow:0 0 0 1px rgba(255,255,255,.16);
}
.principle-bullet-grid{
  gap:28px 34px;
}
.principle-bullet-grid span{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.principle-bullet-grid img{
  width:24px;
  height:24px;
  flex:0 0 auto;
}
.principle-bullet-grid em{
  font-style:normal;
  font-size:1.05rem;
  font-weight:700;
  text-transform:uppercase;
}
.player-profile-inline{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  vertical-align:middle;
}
.player-profile-inline img{
  width:22px;
  height:22px;
  border-radius:6px;
  object-fit:cover;
  box-shadow:0 0 0 1px rgba(0,0,0,.08);
}
.player-profile-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.player-profile-label img{
  width:34px;
  height:34px;
  border-radius:9px;
  object-fit:cover;
  box-shadow:0 0 0 1px rgba(0,0,0,.08);
}
.register-buttons .btn,
.btn-app{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.register-buttons .btn img{
  width:24px;
  height:24px;
  border-radius:6px;
  object-fit:cover;
}
.player-profile-inline-summary{
  white-space:normal;
}
.sport-logo-strip img{
  height:132px;
  object-position:center 56%;
}
@media(max-width:760px){
  .btn-app span{line-height:1.1}
  .principle-bullet-grid img{width:22px;height:22px}
}

/* v11: requested image/logo refinements */

/* Header and footer: improve ACT logo visibility */
.brand-frame{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  background:rgba(0,0,0,.38);
  border:1px solid rgba(255,255,255,.10);
  border-radius:4px;
  box-shadow:0 10px 28px rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
}
.brand img{
  width:290px;
  max-height:76px;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.35));
}
.footer-brand-frame{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  border-radius:4px;
}
.footer-logo{
  width:290px;
  max-height:96px;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.35));
}

/* Balanced ACT + DASHR row */
.reporting-brand{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.reporting-brand > span{
  color:#8e8e8e;
  font-size:2.4rem;
  font-weight:700;
  line-height:1;
}
.reporting-act-logo{
  width:240px !important;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.reporting-dashr-logo{
  width:220px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}

/* App store buttons with shield image */
.app-buttons{
  align-items:stretch;
}
.store-button{
  flex-direction:row;
  align-items:center;
  gap:14px;
  min-width:260px;
  padding:12px 18px;
}
.store-button img{
  width:40px;
  height:40px;
  border-radius:11px;
  object-fit:cover;
  flex:0 0 auto;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
}
.store-button div{
  display:flex;
  flex-direction:column;
}
.store-button small{
  margin-bottom:2px;
}
.store-button strong{
  font-size:1.2rem;
}

/* Make sport-logo strip slightly more centered and crop-safe */
.sport-logo-strip img{
  height:122px;
  object-fit:contain;
  object-position:center center;
}

/* Principles icons */
.principle-bullet-grid img{
  width:26px;
  height:26px;
}
.principle-bullet-grid em{
  letter-spacing:.02em;
}

/* Hero app button icon */
.btn-app img{
  width:30px;
  height:30px;
  border-radius:9px;
}

/* Player profile label/icon sizing */
.player-profile-label img{
  width:34px;
  height:34px;
}
.player-profile-inline img{
  width:22px;
  height:22px;
}

@media(max-width:980px){
  .brand img{width:250px;max-height:68px}
  .footer-logo{width:250px;max-height:86px}
  .reporting-act-logo{width:210px !important}
  .reporting-dashr-logo{width:195px}
}
@media(max-width:760px){
  .brand-frame,.footer-brand-frame{padding:8px 10px}
  .brand img{width:215px;max-height:60px}
  .footer-top{align-items:flex-start;flex-direction:column}
  .footer-logo{width:220px;max-height:74px}
  .reporting-brand{
    gap:14px;
    justify-content:flex-start;
  }
  .reporting-brand > span{
    font-size:1.9rem;
  }
  .reporting-act-logo{width:180px !important}
  .reporting-dashr-logo{width:170px}
  .store-button{
    width:100%;
    min-width:0;
  }
}

/* v13: app store buttons include platform icons */
.store-icons{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.store-button .shield-icon{
  width:40px;
  height:40px;
  border-radius:11px;
  object-fit:cover;
  box-shadow:0 0 0 1px rgba(255,255,255,.12);
}
.store-button .platform-icon{
  width:24px;
  height:24px;
  object-fit:contain;
}

/* v14: light background behind main ACT hero logo for better readability */
.hero-logo-light-panel{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.55);
  border-radius:6px;
  padding:16px 18px;
  box-shadow:0 16px 34px rgba(0,0,0,.22);
}

.hero-logo-light-panel .hero-logo{
  width:280px !important;
  max-width:100% !important;
  max-height:270px !important;
  object-fit:contain !important;
}

@media(max-width:760px){
  .hero-logo-light-panel{
    padding:12px 14px;
  }
  .hero-logo-light-panel .hero-logo{
    width:220px !important;
    max-height:220px !important;
  }
}

/* v15: remove light panel and add lighter shadow to the main ACT hero logo */
.hero-logo-light-panel{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

.hero-logo-shadowed{
  filter:
    drop-shadow(0 0 10px rgba(255,255,255,.28))
    drop-shadow(0 8px 20px rgba(0,0,0,.28)) !important;
}

.hero-logo-wrap{
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
}

@media(max-width:760px){
  .hero-logo-shadowed{
    filter:
      drop-shadow(0 0 8px rgba(255,255,255,.24))
      drop-shadow(0 6px 16px rgba(0,0,0,.26)) !important;
  }
}

/* v16: compact refined light background for hero ACT logo */
.hero-logo-wrap{
  width:auto !important;
  min-height:0 !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
}

.hero-logo-compact-panel{
  padding:8px 10px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(255,255,255,.55) !important;
  border-radius:6px !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
}

.hero-logo-compact{
  width:255px !important;
  max-width:100% !important;
  max-height:none !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left center !important;
  display:block !important;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.08)) !important;
}

.hero-logo-shadowed{
  filter:none !important;
}

@media(max-width:760px){
  .hero-logo-compact-panel{
    padding:6px 8px !important;
  }
  .hero-logo-compact{
    width:210px !important;
  }
}

/* v17: tighter, lighter logo panels for hero and header */
.hero-logo-compact-panel{
  padding:4px 6px !important;
  background:rgba(255,255,255,.50) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  border-radius:5px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}

.hero-logo-compact{
  width:248px !important;
}

.brand-frame{
  padding:4px 6px !important;
  background:rgba(255,255,255,.50) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  border-radius:5px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
  backdrop-filter:none !important;
}

.brand img{
  width:278px !important;
  max-height:72px !important;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.08)) !important;
}

@media(max-width:980px){
  .hero-logo-compact{
    width:228px !important;
  }
  .brand img{
    width:242px !important;
    max-height:64px !important;
  }
}

@media(max-width:760px){
  .hero-logo-compact-panel{
    padding:3px 5px !important;
  }
  .hero-logo-compact{
    width:200px !important;
  }
  .brand-frame{
    padding:3px 5px !important;
  }
  .brand img{
    width:208px !important;
    max-height:56px !important;
  }
}


/* v18: match user-provided ACT logo reference look */
.brand-frame-reference{
  padding: 3px 5px !important;
  background: #bdbab7 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.brand-frame-reference img{
  width: 172px !important;
  max-height: 44px !important;
  height: auto !important;
  object-fit: contain !important;
  filter: none !important;
}

.hero-logo-reference-panel{
  padding: 5px 6px !important;
  background: #a9a6a3 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
}

.hero-logo-reference-panel .hero-logo-compact{
  width: 395px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left top !important;
  display: block !important;
  filter: none !important;
}

@media (max-width: 980px){
  .hero-logo-reference-panel .hero-logo-compact{
    width: 330px !important;
  }
  .brand-frame-reference img{
    width: 158px !important;
    max-height: 40px !important;
  }
}

@media (max-width: 760px){
  .hero-logo-reference-panel{
    padding: 4px 5px !important;
  }
  .hero-logo-reference-panel .hero-logo-compact{
    width: 255px !important;
  }
  .brand-frame-reference{
    padding: 2px 4px !important;
  }
  .brand-frame-reference img{
    width: 142px !important;
    max-height: 36px !important;
  }
}

/* v19: use direct user-provided reference logo treatments */
.brand-reference-direct{
  display:inline-flex !important;
  align-items:flex-start !important;
  background:transparent !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}
.brand-reference-direct img{
  width:166px !important;
  max-width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  filter:none !important;
}

.hero-logo-reference-direct{
  width:auto !important;
  min-height:0 !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  margin:0 0 18px 0 !important;
  background:transparent !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}
.hero-logo-reference-image{
  width:400px !important;
  max-width:100% !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  object-position:left top !important;
  filter:none !important;
  margin:0 !important;
}

@media (max-width:980px){
  .brand-reference-direct img{
    width:154px !important;
  }
  .hero-logo-reference-image{
    width:345px !important;
  }
}
@media (max-width:760px){
  .brand-reference-direct img{
    width:138px !important;
  }
  .hero-logo-reference-image{
    width:255px !important;
  }
}

/* v20: extend v19 ACT logo treatment to reporting section and footer */
.reporting-brand-reference{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.reporting-act-logo-reference{
  width:190px !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
  filter:none !important;
}
.reporting-brand-reference > span{
  color:#8e8e8e;
  font-size:2.35rem;
  font-weight:700;
  line-height:1;
}
.reporting-brand-reference .reporting-dashr-logo{
  width:170px !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
}

.footer-brand-reference{
  display:inline-flex !important;
  align-items:flex-start !important;
  background:transparent !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}
.footer-logo-reference{
  width:170px !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
  filter:none !important;
}

@media(max-width:980px){
  .reporting-act-logo-reference{
    width:176px !important;
  }
  .reporting-brand-reference .reporting-dashr-logo{
    width:158px !important;
  }
  .footer-logo-reference{
    width:160px !important;
  }
}

@media(max-width:760px){
  .reporting-brand-reference{
    gap:14px;
  }
  .reporting-brand-reference > span{
    font-size:1.9rem;
  }
  .reporting-act-logo-reference{
    width:155px !important;
  }
  .reporting-brand-reference .reporting-dashr-logo{
    width:142px !important;
  }
  .footer-logo-reference{
    width:150px !important;
  }
}

/* v22: ACT Event Experience section */
.experience-section{
  position:relative;
  overflow:hidden;
  min-height:760px;
  color:#fff;
  background:#070707;
}
.experience-photo{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.42)),
    url("assets/experience-user-multisport-bg.jpg");
  background-size:cover;
  background-position:center;
  filter:saturate(.8) contrast(1.05);
}
.experience-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg,rgba(227,6,19,.18),transparent 42%),
    linear-gradient(0deg,rgba(0,0,0,.30),rgba(0,0,0,.10));
}
.experience-content{
  position:relative;
  z-index:2;
  padding-top:100px;
  padding-bottom:100px;
}
.experience-intro{
  max-width:780px;
}
.experience-intro h2{
  margin:0;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:clamp(4rem,7vw,7rem);
  font-weight:700;
  line-height:.80;
  letter-spacing:-.02em;
  text-transform:uppercase;
}
.experience-intro > p:last-child{
  max-width:720px;
  margin-top:24px;
  color:#e5e5e5;
  font-size:1.08rem;
  line-height:1.7;
}
.experience-points{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:52px;
  border-top:1px solid rgba(255,255,255,.26);
  border-left:1px solid rgba(255,255,255,.26);
}
.experience-points article{
  min-height:280px;
  padding:26px;
  background:rgba(0,0,0,.40);
  border-right:1px solid rgba(255,255,255,.26);
  border-bottom:1px solid rgba(255,255,255,.26);
  backdrop-filter:blur(3px);
}
.experience-points article > span{
  display:block;
  margin-bottom:30px;
  color:var(--red);
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.65rem;
  font-weight:700;
}
.experience-points h3{
  margin:0 0 12px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:2rem;
  font-weight:700;
  line-height:.9;
  text-transform:uppercase;
}
.experience-points p{
  margin:0;
  color:#d1d1d1;
  font-size:.92rem;
}
.experience-statement{
  margin-top:34px;
  padding-top:24px;
  border-top:4px solid var(--red);
}
.experience-statement strong{
  font-family:Rajdhani,Arial,sans-serif;
  font-size:clamp(1.8rem,3vw,3rem);
  font-weight:700;
  line-height:1;
  text-transform:uppercase;
}
@media(max-width:980px){
  .experience-points{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:700px){
  .experience-content{
    padding-top:78px;
    padding-bottom:78px;
  }
  .experience-points{
    grid-template-columns:1fr;
  }
  .experience-points article{
    min-height:0;
  }
}

/* v27: overhead multisport facility background for ACT Event Experience */
.experience-photo{
  background-position:center center !important;
  background-size:cover !important;
}

/* v29: use user-provided ACT Event Experience background image */
.experience-photo{
  background-position:center center !important;
  background-size:cover !important;
}


/* ============================================================
   OPEN COMBINE REGISTRATION PAGE
   ============================================================ */

.registration-page{
  background:#fff;
}

.registration-header{
  position:absolute;
}

.event-reg-hero{
  position:relative;
  min-height:860px;
  overflow:hidden;
  color:#fff;
  background:#050505;
}
.event-reg-photo,
.event-reg-overlay{
  position:absolute;
  inset:0;
}
.event-reg-photo{
  background-image:url("https://images.unsplash.com/photo-1546519638-68e109498ffc?auto=format&fit=crop&w=2200&q=82");
  background-size:cover;
  background-position:center 36%;
}
.event-reg-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.60) 46%,rgba(0,0,0,.26) 100%),
    linear-gradient(0deg,rgba(0,0,0,.35),rgba(0,0,0,.08)),
    rgba(227,6,19,.07);
}
.event-reg-hero-inner{
  position:relative;
  z-index:2;
  min-height:860px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding-top:110px;
}
.event-reg-brand{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:22px;
}
.event-reg-brand img{
  width:170px;
  height:auto;
}
.event-reg-brand span{
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.48);
  font-family:Rajdhani,Arial,sans-serif;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.event-reg-status{
  margin-bottom:15px;
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.event-reg-status:before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:9px;
  border-radius:50%;
  background:var(--red);
}
.event-reg-hero h1{
  margin:0;
  max-width:1000px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:clamp(5rem,10vw,9rem);
  font-weight:700;
  line-height:.76;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.event-reg-hero h1 span{
  color:var(--red);
}
.event-reg-deck{
  max-width:700px;
  margin:26px 0 0;
  font-size:1.1rem;
  line-height:1.65;
}
.event-reg-actions{
  display:flex;
  gap:12px;
  margin-top:30px;
}

.event-snapshot{
  background:#0a0a0a;
  color:#fff;
}
.event-snapshot-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-left:1px solid rgba(255,255,255,.16);
}
.event-snapshot-grid article{
  min-height:150px;
  padding:25px;
  border-right:1px solid rgba(255,255,255,.16);
}
.event-snapshot-grid span,
.event-snapshot-grid strong,
.event-snapshot-grid small{
  display:block;
}
.event-snapshot-grid span{
  color:var(--red);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.event-snapshot-grid strong{
  margin-top:8px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.7rem;
  font-weight:700;
  line-height:.95;
  text-transform:uppercase;
}
.event-snapshot-grid small{
  margin-top:7px;
  color:#929292;
}

.event-reg-editorial{
  padding:105px 24px;
}
.event-reg-editorial h2,
.event-registration-process h2,
.event-dashr-section h2,
.event-testing-battery h2,
.event-results-section h2,
.registration-experience h2,
.event-day-section h2,
.event-final-cta h2{
  margin:0;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:clamp(3.8rem,7vw,6.7rem);
  font-weight:700;
  line-height:.81;
  letter-spacing:-.02em;
  text-transform:uppercase;
}
.event-benefit-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  margin-top:50px;
  background:#cfcfcf;
  border:1px solid #cfcfcf;
}
.event-benefit-grid article{
  padding:30px;
  background:#fff;
}
.event-benefit-grid img{
  width:38px;
  height:38px;
  margin-bottom:30px;
}
.event-benefit-grid h3{
  margin:0 0 10px;
  font-size:2rem;
  font-weight:700;
  line-height:.9;
  text-transform:uppercase;
}
.event-benefit-grid p{
  margin:0;
  color:#666;
}

.event-registration-process{
  padding:105px 0;
  background:#0a0a0a;
  color:#fff;
}
.reg-process-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:45px;
  border-top:1px solid rgba(255,255,255,.22);
  border-left:1px solid rgba(255,255,255,.22);
}
.reg-process-grid article{
  min-height:360px;
  padding:27px;
  border-right:1px solid rgba(255,255,255,.22);
  border-bottom:1px solid rgba(255,255,255,.22);
}
.reg-step{
  display:block;
  color:var(--red);
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.7rem;
  font-weight:700;
}
.reg-step-icon{
  height:62px;
  margin:30px 0 24px;
  display:flex;
  align-items:center;
}
.reg-step-icon img{
  max-width:145px;
  max-height:58px;
  object-fit:contain;
}
.reg-step-icon img[alt*="Player Profile"]{
  width:58px;
  height:58px;
  border-radius:15px;
}
.reg-step-check{
  color:#fff;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:3.5rem;
  font-weight:700;
}
.reg-process-grid h3{
  margin:0 0 12px;
  font-size:1.8rem;
  line-height:.9;
  text-transform:uppercase;
}
.reg-process-grid p{
  margin:0;
  color:#b7b7b7;
}
.registration-coming-soon{
  margin-top:35px;
  padding:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-left:5px solid var(--red);
  background:#151515;
}
.registration-coming-soon span,
.registration-coming-soon strong{
  display:block;
}
.registration-coming-soon span{
  color:#929292;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.registration-coming-soon strong{
  margin-top:4px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:2.2rem;
  text-transform:uppercase;
}
.registration-coming-soon p{
  margin:4px 0 0;
  color:#aaa;
}
.btn-disabled{
  background:#2c2c2c;
  color:#777;
  cursor:not-allowed;
  border-color:#3e3e3e;
}

.event-dashr-section{
  padding:105px 24px;
  background:#f1efe9;
}
.event-dashr-brand{
  display:flex;
  align-items:center;
  gap:20px;
  margin-bottom:30px;
}
.event-dashr-brand img:first-child{
  width:68px;
  height:68px;
  border-radius:17px;
}
.event-dashr-brand img:last-child{
  width:205px;
  max-height:70px;
  object-fit:contain;
}
.event-app-buttons{
  margin-top:34px;
}

.event-testing-battery{
  padding:105px 0;
  background:#fff;
}
.event-test-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  margin-top:45px;
  background:#c9c9c9;
  border:1px solid #c9c9c9;
}
.event-test-grid article{
  min-height:255px;
  padding:28px;
  background:#fff;
}
.event-test-grid article > span{
  display:block;
  margin-bottom:30px;
  color:var(--red);
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.6rem;
  font-weight:700;
}
.event-test-grid h3{
  margin:0 0 10px;
  font-size:2rem;
  line-height:.9;
  text-transform:uppercase;
}
.event-test-grid p{
  margin:0;
  color:#666;
}

.event-results-section{
  padding:105px 24px;
  background:#0b0b0b;
  color:#fff;
}
.event-results-brand{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:30px;
}
.event-results-brand img:first-child{
  width:180px;
}
.event-results-brand img:last-child{
  width:170px;
  max-height:70px;
  object-fit:contain;
  background:#fff;
  padding:5px 7px;
}
.event-results-brand > span{
  color:#777;
  font-size:2rem;
}
.event-results-list{
  margin-top:45px;
  border-top:4px solid var(--red);
}
.event-results-list article{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:35px;
  padding:24px 0;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.event-results-list h3{
  margin:0;
  font-size:1.8rem;
  line-height:.9;
  text-transform:uppercase;
}
.event-results-list p{
  margin:0;
  color:#aaa;
}

.registration-experience{
  position:relative;
  overflow:hidden;
  min-height:620px;
  color:#fff;
}
.registration-experience-photo,
.registration-experience-overlay{
  position:absolute;
  inset:0;
}
.registration-experience-photo{
  background-image:url("assets/experience-user-multisport-bg.jpg");
  background-size:cover;
  background-position:center;
}
.registration-experience-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.40)),
    rgba(227,6,19,.06);
}
.registration-experience-content{
  position:relative;
  z-index:2;
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.registration-experience-content p:last-child{
  max-width:700px;
  color:#e2e2e2;
  font-size:1.06rem;
  line-height:1.7;
}

.event-day-section{
  padding:105px 24px;
  background:#fff;
}
.event-day-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  margin-top:45px;
  background:#d0d0d0;
  border:1px solid #d0d0d0;
}
.event-day-grid article{
  padding:28px;
  background:#fff;
}
.event-day-grid h3{
  margin:0 0 10px;
  font-size:1.9rem;
  line-height:.9;
  text-transform:uppercase;
}
.event-day-grid p{
  margin:0;
  color:#666;
}
.event-faq{
  background:#eceae6;
}
.event-final-cta{
  padding:75px max(24px,calc((100vw - var(--content))/2));
  background:#111;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
}
.event-final-cta p:last-child{
  color:#aaa;
}
.event-final-actions{
  display:flex;
  gap:12px;
}

@media(max-width:980px){
  .event-snapshot-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .reg-process-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .event-test-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:760px){
  .event-reg-hero,
  .event-reg-hero-inner{
    min-height:790px;
  }
  .event-reg-brand img{
    width:145px;
  }
  .event-reg-actions{
    width:100%;
    flex-direction:column;
  }
  .event-reg-actions .btn{
    width:100%;
  }
  .event-snapshot-grid,
  .event-benefit-grid,
  .reg-process-grid,
  .event-test-grid,
  .event-day-grid{
    grid-template-columns:1fr;
  }
  .registration-coming-soon{
    align-items:flex-start;
    flex-direction:column;
  }
  .event-results-list article{
    grid-template-columns:1fr;
    gap:8px;
  }
  .event-results-brand{
    flex-wrap:wrap;
  }
  .event-final-cta{
    align-items:flex-start;
    flex-direction:column;
  }
  .event-final-actions{
    width:100%;
    flex-direction:column;
  }
  .event-final-actions .btn{
    width:100%;
  }
}


/* v31: operational Fall 2026 Open Combine details */
.event-snapshot-grid-six{
  grid-template-columns:repeat(6,1fr);
}
.event-snapshot-grid-six article{
  min-height:165px;
}
.reg-process-grid-five{
  grid-template-columns:repeat(5,1fr);
}
.reg-process-grid-five article{
  min-height:390px;
}
.event-test-grid-seven{
  grid-template-columns:repeat(4,1fr);
}
.event-included-callout{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-top:38px;
  padding:20px 22px;
  background:#151515;
  border-left:5px solid var(--red);
}
.event-included-callout strong{
  flex:0 0 auto;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:1.25rem;
  text-transform:uppercase;
}
.event-included-callout span{
  color:#bbb;
}
@media(max-width:1180px){
  .event-snapshot-grid-six{
    grid-template-columns:repeat(3,1fr);
  }
  .reg-process-grid-five{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:900px){
  .event-test-grid-seven{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:760px){
  .event-snapshot-grid-six,
  .reg-process-grid-five,
  .event-test-grid-seven{
    grid-template-columns:1fr;
  }
  .event-included-callout{
    flex-direction:column;
  }
}


/* v33: registration platform readiness */
.act-registration-form{
  margin-top:32px;
  padding:30px;
  background:#151515;
  border-top:4px solid var(--red);
}
.act-registration-form[hidden]{display:none!important}
.registration-form-heading span,
.registration-form-heading strong{
  display:block;
}
.registration-form-heading span{
  color:#969696;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.registration-form-heading strong{
  margin-top:5px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:2rem;
  text-transform:uppercase;
}
.registration-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:26px;
}
.registration-form-grid label > span{
  display:block;
  margin-bottom:7px;
  color:#d7d7d7;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.registration-form-grid label em{
  color:#777;
  font-style:normal;
  font-weight:500;
}
.registration-form-grid input:not([type="checkbox"]){
  width:100%;
  min-height:48px;
  border:1px solid #444;
  background:#0d0d0d;
  color:#fff;
  padding:0 13px;
  font:inherit;
}
.registration-form-full{
  grid-column:1/-1;
}
.registration-consent{
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.registration-consent > span{
  margin:0!important;
  text-transform:none!important;
  letter-spacing:0!important;
  font-weight:500!important;
  color:#aaa!important;
}
.registration-form-footer{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  margin-top:24px;
}
.registration-form-footer p{
  margin:0;
  color:#aaa;
}
.registration-success-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:30px;
  background:#0a0a0a;
}
.registration-success-card{
  width:min(720px,100%);
  padding:50px;
  background:#fff;
}
.registration-success-card > img{
  width:210px;
  margin-bottom:35px;
}
.registration-success-card h1{
  margin:0 0 18px;
  font-family:Rajdhani,Arial,sans-serif;
  font-size:clamp(3.5rem,8vw,6rem);
  line-height:.8;
  text-transform:uppercase;
}
.registration-success-card p{
  color:#555;
  line-height:1.65;
}
.registration-success-card .btn{
  margin-top:18px;
}
@media(max-width:760px){
  .registration-form-grid{grid-template-columns:1fr}
  .registration-form-full{grid-column:auto}
  .registration-form-footer{align-items:flex-start;flex-direction:column}
  .registration-success-card{padding:30px}
}
