/* Precise overlay aligned with the athlete in the hero image. */
.body-track{
  right:8%!important;
  top:1%!important;
  width:46%!important;
  height:86%!important;
  opacity:.9;
  transform-origin:58% 50%;
  animation:bodyScan 2.7s ease-in-out infinite!important;
}
.body-track path{stroke:var(--color-accent)!important;stroke-width:2.4!important;stroke-dasharray:7 5!important;animation:dashFlow 2.6s linear infinite}
.body-track circle{fill:var(--color-accent)!important;filter:drop-shadow(0 0 4px var(--color-accent));animation:jointPulse 1.5s ease-in-out infinite!important}
@keyframes bodyScan{0%,100%{opacity:.5;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-2px) scale(1.01)}}
@keyframes dashFlow{to{stroke-dashoffset:-48}}
@keyframes jointPulse{50%{r:9;opacity:.45}}
@media(max-width:1050px){.body-track{right:4%!important;width:53%!important}}
@media(max-width:760px){.body-track{right:6%!important;top:7%!important;width:58%!important;height:76%!important;opacity:.72}}

/* The large decorative graph is deliberately removed: the live metrics are clearer. */
.trend{display:none!important}
.live-stats>div::after{content:"";display:block;width:100%;height:3px;margin-top:9px;background:linear-gradient(90deg,var(--color-blue) 0 72%,var(--color-white-alpha-21) 72%);transform-origin:left;animation:metricBar 2.8s ease-in-out infinite}
.live-stats>div:nth-child(2)::after{background:linear-gradient(90deg,#7cb6ff 0 61%,var(--color-white-alpha-21) 61%);animation-delay:.45s}
.live-stats>div:nth-child(3)::after{background:linear-gradient(90deg,var(--color-accent) 0 84%,var(--color-white-alpha-21) 84%);animation-delay:.9s}
@keyframes metricBar{50%{transform:scaleX(.88);opacity:.65}}

.radar{position:absolute;right:2%;top:4%;width:215px;height:215px;opacity:.28;filter:drop-shadow(0 0 9px var(--color-blue-alpha-55));animation:radarDrift 7s ease-in-out infinite}
.radar-grid{fill:none;stroke:#8ec4ff;stroke-width:1}.radar-grid polygon{opacity:.45}.radar-grid path{opacity:.55}.radar-data{fill:var(--color-accent-alpha-26);stroke:var(--color-accent);stroke-width:2;transition:points 1.5s ease-in-out}.radar-labels{fill:#d9e5ec;font-size:10px;font-weight:700;letter-spacing:1px;text-anchor:middle}.radar-labels text:nth-child(2){text-anchor:start}.radar-labels text:nth-child(4){text-anchor:end}@keyframes radarDrift{50%{transform:translateY(-8px) rotate(1deg);opacity:.36}}@media(max-width:760px){.radar{right:3%;top:0;width:150px;height:150px;opacity:.2}.radar-labels{font-size:12px}}

/* Subtle animated dots, following the curved data-flow already in the hero image. */
.hero::before{display:none}.data-flow{position:absolute;z-index:2;right:0;top:12%;width:48%;height:62%;pointer-events:none;opacity:.25;overflow:visible;mask-image:linear-gradient(90deg,transparent 0%,var(--color-black) 16%,var(--color-black) 96%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,var(--color-black) 16%,var(--color-black) 96%,transparent 100%)}
.flow{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:1 15;animation:flowDots 4.6s linear infinite}.flow.blue{stroke:var(--color-blue)}.flow.lime{stroke:var(--color-accent);animation-duration:5.8s;animation-delay:-1.1s}.flow.quiet{opacity:.55;animation-duration:7.2s;animation-delay:-2.4s}@keyframes flowDots{to{stroke-dashoffset:-128}}
@media(max-width:760px){.data-flow{top:19%;width:59%;height:48%;opacity:.16}}

/* About and contact: clear, factual and conversion-led. */
.about{padding:105px 0;background:#0a1726}.about-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:95px}.about-copy h2,.contact-box h2{font-size:clamp(3rem,5.4vw,5.8rem);letter-spacing:-.085em;line-height:.88;margin:13px 0 0}.about-copy h2 span{color:var(--lime)}.about-detail>p{max-width:620px;font-size:1.16rem;line-height:1.6;color:#d5dee6;margin:0 0 32px}.principles{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.principle{padding:21px 20px 19px 0;border-bottom:1px solid var(--line);font-size:.96rem;color:#f0f4f6}.principle:nth-child(even){padding-left:28px;border-left:1px solid var(--line)}.principle b{color:var(--lime);margin-right:10px}.about-link{display:inline-block;margin-top:32px;color:var(--lime);text-decoration:none;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contact{padding:100px 0;background:var(--color-surface-light);color:var(--color-navy)}.contact-box{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:end}.contact .kicker{color:#566574}.contact-box h2{max-width:670px}.contact-box h2 span{color:var(--color-link)}.contact-detail{border-left:2px solid var(--lime);padding:8px 0 8px 30px}.contact-detail p{color:#314252;font-size:1.12rem;line-height:1.55}.contact-email{display:inline-block;color:var(--color-navy);text-decoration:none;font-size:1.45rem;font-weight:900;letter-spacing:-.04em;margin:10px 0 17px;border-bottom:2px solid var(--lime)}.contact-note{display:block;color:#617081;font-size:.86rem}@media(max-width:760px){.about,.contact{padding:70px 0}.about-grid,.contact-box{grid-template-columns:1fr;gap:40px}.principles{grid-template-columns:1fr}.principle:nth-child(even){padding-left:0;border-left:0}.contact-detail{padding-left:20px}}
