:root {
  --ink: #111314;
  --ink-soft: #1a1d1e;
  --paper: #f4f3ef;
  --white: #fff;
  --muted: #6c706f;
  --line: #d7d7d2;
  --dark-line: #343839;
  --accent: #c8ff2e;
  --accent-dim: #a8d92a;
  --container: 1240px;
  --pad: clamp(20px, 4vw, 56px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: clip; color: var(--ink); background: var(--paper); font-family: "Segoe UI", "Yu Gothic UI", "Hiragino Kaku Gothic ProN", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
svg { display: block; }
.container { width: min(100% - (var(--pad) * 2), var(--container)); margin-inline: auto; }
.section-dark { color: var(--white); background: var(--ink); }
.section-pad { padding-block: clamp(68px, 8vw, 112px); }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: 10px 16px; color: var(--ink); background: var(--accent); transform: translateY(-150%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--accent-dim); outline-offset: 4px; }

.site-header { position: relative; z-index: 20; color: var(--white); background: var(--ink); border-bottom: 1px solid var(--dark-line); }
.header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.wordmark { display: inline-flex; align-items: center; text-decoration: none; }
.wordmark img { display: block; width: 156px; height: auto; }
.site-nav { display: flex; align-items: center; gap: clamp(18px, 3vw, 38px); font-size: 13px; }
.site-nav a { padding-block: 10px; text-decoration: none; border-bottom: 1px solid transparent; }
.site-nav a:hover { border-color: var(--accent); }
.nav-future { color: #777c7c; white-space: nowrap; }
.nav-future small { margin-left: 5px; font-size: 9px; letter-spacing: .08em; }

.brand-hero { min-height: min(820px, calc(100vh - 76px)); display: grid; align-items: center; padding-block: clamp(72px, 10vw, 140px); overflow: hidden; }
.brand-hero-grid, .product-hero-grid { display: grid; grid-template-columns: minmax(0, .86fr) minmax(460px, 1.14fr); gap: clamp(50px, 8vw, 120px); align-items: center; }
.eyebrow { margin: 0 0 24px; color: #aeb3b2; font-size: 11px; font-weight: 700; letter-spacing: .2em; }
.eyebrow-dark { color: var(--muted); }
.hero-copy h1 { margin: 0; font-size: clamp(46px, 5.3vw, 82px); font-weight: 620; line-height: .98; letter-spacing: -.06em; }
.hero-copy h1 span { color: #888d8c; }
.hero-lead { max-width: 570px; margin: 34px 0 38px; overflow-wrap: anywhere; color: #b9bdbd; font-size: clamp(16px, 1.5vw, 20px); line-height: 1.9; }
.text-link { display: inline-flex; gap: 14px; align-items: center; padding-block: 8px; font-size: 14px; font-weight: 700; text-decoration: none; border-bottom: 1px solid #555; }
.text-link:hover { border-color: var(--accent); }

.data-visual { padding: clamp(20px, 3vw, 38px); background: #171a1b; border: 1px solid #333839; box-shadow: 0 28px 80px #0006; }
.visual-topline, .court-toolbar { display: flex; justify-content: space-between; padding-bottom: 20px; color: #8f9493; font-size: 9px; letter-spacing: .18em; border-bottom: 1px solid #333839; }
.live-dot { color: var(--accent); }
.live-dot::before { content: ""; width: 6px; height: 6px; display: inline-block; margin-right: 7px; background: currentColor; border-radius: 50%; box-shadow: 0 0 12px currentColor; }
.scoreboard { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; padding: 28px 0; text-align: center; border-bottom: 1px solid #333839; }
.scoreboard > div:first-child { text-align: left; }.scoreboard > div:last-child { text-align: right; }
.scoreboard small, .metric-row small { display: block; color: #787d7c; font-size: 9px; letter-spacing: .16em; }
.scoreboard strong { font-size: clamp(42px, 5vw, 68px); font-weight: 480; font-variant-numeric: tabular-nums; }
.match-time strong { display: block; margin-top: 4px; color: var(--accent); font-size: 15px; letter-spacing: .08em; }.match-time span { color: #777; font-size: 8px; }
.chart-area { position: relative; height: 210px; padding: 25px 0 15px 32px; }
.chart-labels { position: absolute; inset: 25px auto 15px 0; display: flex; flex-direction: column; justify-content: space-between; color: #555b5a; font-size: 8px; }
.chart-area svg { width: 100%; height: 100%; overflow: visible; }.grid-line { fill: none; stroke: #2d3132; stroke-width: 1; }.area-path { fill: url("#none"); fill: #c8ff2e0a; }.line-path { fill: none; stroke: var(--accent); stroke-width: 2; vector-effect: non-scaling-stroke; }
.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #333839; }
.metric-row div { padding: 18px 12px 0; border-right: 1px solid #333839; }.metric-row div:first-child { padding-left: 0; }.metric-row div:last-child { border: 0; }
.metric-row strong { font-size: clamp(22px, 2.5vw, 36px); font-weight: 500; font-variant-numeric: tabular-nums; }.metric-row span { margin-left: 4px; color: #6d7271; font-size: 8px; }

.statement-grid { display: grid; grid-template-columns: 1fr 3fr; gap: 40px; }
.section-index { margin: 8px 0 0; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .18em; }
.statement-grid h2, .section-heading h2, .data-grid h2 { margin: 0; font-size: clamp(36px, 4.4vw, 64px); font-weight: 560; line-height: 1.14; letter-spacing: -.05em; }
.final-cta h2 { margin: 0; font-size: clamp(42px, 5.2vw, 78px); font-weight: 560; line-height: 1.12; letter-spacing: -.055em; }
.statement-grid div > p { max-width: 690px; margin: 40px 0 0 auto; color: #5f6362; font-size: clamp(16px, 1.5vw, 20px); line-height: 2; }

.product-showcase { background: var(--white); }
.section-heading { display: grid; grid-template-columns: 1.5fr 1fr; gap: 70px; align-items: end; margin-bottom: clamp(48px, 7vw, 88px); }
.section-heading > p { margin: 0; color: #606463; line-height: 1.9; }
.product-card { display: grid; grid-template-columns: 1.3fr .7fr; color: var(--white); background: var(--ink); text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.product-card:hover { transform: translateY(-4px); box-shadow: 0 22px 50px #1112; }
.product-card-copy { padding: clamp(30px, 5vw, 68px); }
.product-meta { display: flex; justify-content: space-between; padding-bottom: 28px; color: #808585; font-size: 9px; letter-spacing: .17em; border-bottom: 1px solid var(--dark-line); }
.product-card h3 { margin: clamp(44px, 6vw, 72px) 0; font-size: clamp(36px, 4.5vw, 64px); font-weight: 530; line-height: 1.1; letter-spacing: -.05em; }
.feature-ticker { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 45px; padding: 0; list-style: none; }
.feature-ticker li { padding: 8px 11px; color: #aeb2b1; font-size: 9px; letter-spacing: .12em; border: 1px solid #3b3f40; }
.card-link { display: flex; justify-content: space-between; padding-top: 24px; font-size: 13px; font-weight: 700; border-top: 1px solid var(--dark-line); }
.product-card-numbers { display: grid; background: var(--accent); color: var(--ink); }
.product-card-numbers div { display: flex; flex-direction: column; justify-content: center; padding: 30px 12%; border-bottom: 1px solid #1114; }.product-card-numbers div:last-child { border: 0; }
.product-card-numbers span { font-size: clamp(52px, 7vw, 90px); font-weight: 560; line-height: 1; letter-spacing: -.06em; }.product-card-numbers small { margin-top: 8px; font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.product-card-preview { min-width: 0; position: relative; overflow: hidden; background: #0f1725; }
.product-card-preview::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #11131433, transparent 35%); pointer-events: none; }
.product-card-preview img { width: 100%; height: 100%; min-height: 470px; display: block; object-fit: cover; object-position: 39% center; }
.product-card-preview span { position: absolute; z-index: 1; right: 18px; bottom: 17px; padding: 9px 11px; color: #dfe2e1; background: #111314dd; font-size: 8px; letter-spacing: .13em; }

.section-heading.inverse > p { color: #aeb2b1; }.principles .section-heading { margin-bottom: 60px; }
.principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--dark-line); }
.principle-grid article { padding: 34px 9% 20px 0; border-right: 1px solid var(--dark-line); }.principle-grid article:not(:first-child) { padding-left: 9%; }.principle-grid article:last-child { border: 0; }
.principle-grid span { color: var(--accent); font-size: 10px; }.principle-grid h3 { margin: 45px 0 16px; font-size: 28px; font-weight: 500; }.principle-grid p { color: #919695; line-height: 1.8; }

.site-footer { padding: 68px 0 26px; color: #a5aaa9; background: #0a0b0b; }
.footer-main { display: grid; grid-template-columns: 1.8fr 1fr 1fr; gap: 40px; padding-bottom: 70px; }.footer-mark img { width: 178px; }.footer-main p { font-size: 12px; }
.footer-product, .footer-future { display: flex; flex-direction: column; gap: 12px; font-size: 13px; }.footer-main small { margin-bottom: 7px; color: #5d6261; font-size: 9px; letter-spacing: .15em; }.footer-main a { text-decoration: none; }.footer-main a:hover { color: var(--accent); }.footer-future span { color: #656968; }
.footer-bottom { display: flex; justify-content: space-between; padding-top: 24px; color: #555a59; font-size: 10px; letter-spacing: .08em; border-top: 1px solid #262929; }

/* Product page */
.product-page .section-pad { padding-block: clamp(54px, 6.5vw, 88px); }
.product-hero { padding: 28px 0 0; overflow: hidden; }.product-kicker { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: clamp(34px, 4vw, 52px); color: #666b6a; font-size: 9px; letter-spacing: .16em; }.product-kicker span:first-child { color: var(--white); font-size: clamp(24px, 2.3vw, 34px); font-weight: 620; letter-spacing: -.035em; }
.product-hero-grid { padding-bottom: clamp(48px, 6vw, 78px); }.product-hero .hero-copy h1 { font-size: clamp(46px, 5vw, 72px); line-height:1; }
.product-page .section-heading { margin-bottom: clamp(34px, 4vw, 54px); }
.product-page .section-heading h2, .product-page .data-grid h2 { font-size: clamp(30px, 3.3vw, 46px); line-height:1.2; letter-spacing:-.04em; }
.product-page .section-heading > p { max-width: 500px; font-size:14px; line-height:1.75; }
.availability { width: fit-content; display: flex; align-items: center; gap: 10px; padding: 14px 16px; color: #d8dcdb; font-size: 12px; border: 1px solid #3c4141; }.availability small { padding-left: 10px; color: #707675; font-size: 8px; letter-spacing: .14em; border-left: 1px solid #3c4141; }.status-dot { width: 7px; height: 7px; background: var(--accent); border-radius: 50%; }
.hero-guide-link { width: fit-content; display: flex; align-items: center; gap: 22px; margin-top: 18px; padding: 13px 16px; color: var(--ink); background: var(--accent); font-size: 12px; font-weight: 700; text-decoration: none; border: 1px solid var(--accent); }.hero-guide-link:hover { color: var(--white); background: transparent; }
.app-window { margin: 0; min-width: 0; overflow: hidden; background: #171a1b; border: 1px solid #363a3b; box-shadow: 0 28px 80px #0007; }
.app-window-bar { display: flex; justify-content: space-between; gap: 20px; padding: 15px 18px; color: #7d8382; font-size: 8px; letter-spacing: .15em; border-bottom: 1px solid #363a3b; }
.app-window img { width: 100%; height: auto; display: block; }
.hero-app-window img { aspect-ratio: 1.57; object-fit: cover; object-position: center top; }
.court-visual { background: #181b1c; border: 1px solid #363a3b; }.court-toolbar { padding: 18px 20px; }
.court { position: relative; height: 330px; margin: 30px; overflow: hidden; background: linear-gradient(90deg, #ffffff08 1px, transparent 1px), linear-gradient(#ffffff08 1px, transparent 1px); background-size: 32px 32px; border: 1px solid #515656; border-right: 0; }
.court::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 48%; border-right: 1px dashed #6f7474; border-radius: 0 50% 50% 0; }.goal { position: absolute; z-index: 2; left: 0; top: 37%; width: 12px; height: 26%; border: 2px solid var(--white); border-left: 0; }.six-meter { position: absolute; left: 0; top: 24%; width: 27%; height: 52%; border: 1px solid #767b7a; border-left: 0; border-radius: 0 50% 50% 0; }.nine-meter { position: absolute; left: 0; top: 11%; width: 47%; height: 78%; border: 1px dashed #5a5f5e; border-left: 0; border-radius: 0 50% 50% 0; }
.shot { position: absolute; z-index: 3; width: 25px; height: 25px; display: grid; place-items: center; font: normal 9px/1 sans-serif; border-radius: 50%; }.goal-shot { color: var(--ink); background: var(--accent); }.miss-shot { color: #d4d6d6; background: #424747; }.s1{left:17%;top:32%}.s2{left:39%;top:18%}.s3{left:29%;top:62%}.s4{left:58%;top:43%}.s5{left:70%;top:70%}.s6{left:78%;top:21%}
.court-stats { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #363a3b; }.court-stats div { padding: 20px; border-right: 1px solid #363a3b; }.court-stats div:last-child { border:0; }.court-stats strong { display:block; font-size: 24px; font-weight: 500; }.court-stats small { color:#737877; font-size: 8px; letter-spacing:.14em; }
.hero-facts { display: flex; justify-content: space-between; padding: 20px 0; color: #737877; font-size: 8px; letter-spacing: .16em; border-top: 1px solid var(--dark-line); }

.product-overview { padding-block: clamp(58px, 7vw, 92px); background: var(--paper); }
.overview-intro { display: grid; grid-template-columns: .42fr 1.08fr .9fr; gap: clamp(28px, 4vw, 58px); align-items: start; }
.overview-intro h2 { margin: 0; font-size: clamp(30px, 3.3vw, 46px); font-weight: 560; line-height: 1.2; letter-spacing: -.04em; }
.overview-intro > p:last-child { margin: 4px 0 0; color: var(--muted); font-size: 14px; line-height: 1.85; }
.overview-steps { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: clamp(38px, 5vw, 58px); border-top: 1px solid var(--ink); border-left: 1px solid var(--line); }
.overview-steps article { min-height: 190px; padding: 28px; background: #f8f7f3; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.overview-steps span, .operation-video > div > span { color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .15em; }
.overview-steps h3 { margin: 38px 0 10px; font-size: 21px; font-weight: 600; }
.overview-steps p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.strength-strip { display: grid; grid-template-columns: 1.25fr repeat(3, 1fr); border: 1px solid var(--ink); border-top: 0; }
.strength-strip > * { min-width: 0; padding: 17px 20px; font-size: 11px; line-height: 1.5; border-right: 1px solid var(--line); }
.strength-strip > *:last-child { border: 0; }.strength-strip strong { color: var(--ink); background: var(--accent); }.strength-strip span { color: #555958; background: var(--white); }

.video-section { background: var(--white); }
.video-heading { display: grid; grid-template-columns: 1.35fr .65fr; gap: clamp(40px, 7vw, 100px); align-items: end; margin-bottom: clamp(34px, 4vw, 54px); }
.video-copy h2 { margin: 14px 0 0; font-size: clamp(30px, 3.4vw, 46px); font-weight: 560; line-height: 1.18; letter-spacing: -.04em; }
.video-heading > p { max-width: 480px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.operation-videos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.operation-video { min-width: 0; background: var(--paper); border: 1px solid var(--line); }
.operation-video.featured-video { grid-column: 1 / -1; display: grid; grid-template-columns: 1.5fr .5fr; }
.operation-video video { width: 100%; aspect-ratio: 16 / 9; display: block; object-fit: cover; background: var(--ink); }
.operation-video.featured-video video { height: 100%; }
.operation-video > div { padding: 24px; }
.operation-video h3 { margin: 17px 0 9px; font-size: 21px; font-weight: 600; letter-spacing: -.02em; }
.operation-video p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.operation-video video:focus-visible { outline-offset: -4px; }

.feature-section { background: var(--paper); }
.operation-guide { display: grid; grid-template-columns: 1.08fr .92fr; gap: clamp(34px, 5vw, 68px); align-items: center; margin-bottom: clamp(48px, 6vw, 74px); padding: clamp(22px, 3vw, 38px); background: var(--white); border: 1px solid var(--line); }
.operation-guide figure { min-width: 0; margin: 0; overflow: hidden; background: var(--ink); }
.operation-guide figure img { width: 100%; height: auto; display: block; }
.operation-guide figcaption { padding: 11px 14px; color: #8e9392; background: var(--ink); font-size: 9px; letter-spacing: .13em; }
.operation-guide-copy h3 { margin: 15px 0 24px; font-size: clamp(26px, 2.8vw, 38px); font-weight: 560; line-height: 1.22; letter-spacing: -.04em; }
.operation-guide ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.operation-guide li { display: grid; grid-template-columns: 36px 1fr; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.operation-guide li > span { padding-top: 2px; color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .12em; }
.operation-guide li strong { font-size: 14px; font-weight: 650; }.operation-guide li p { margin: 5px 0 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.event-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 20px; }
.event-heading h3 { margin: 0; font-size: 22px; font-weight: 600; }
.event-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.event-card { min-height: 158px; padding: clamp(19px, 2.1vw, 27px); background: #f8f7f3; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.event-card.accent { background: var(--accent); }.event-key { width: 46px; height: 46px; display: grid; place-items: center; margin-bottom: 22px; font-size: 13px; font-weight: 700; border: 1px solid #9da19d; border-radius: 50%; }.event-card h3 { margin: 0 0 7px; font-size: 20px; font-weight: 600; }.event-card p { margin: 0; color: #6b6f6e; font-size: 12px; }
.report-section { color: var(--white); background: #171a1b; }.light { color: #777d7c; }
.report-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: #3b3f40; border: 1px solid #3b3f40; }.report-card { min-height: 245px; padding: clamp(24px, 3vw, 36px); background: #171a1b; overflow: hidden; }.report-wide { grid-column: 1 / -1; min-height: 285px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 40px; }.tag { color: var(--accent); font-size: 9px; font-weight: 700; letter-spacing: .18em; }.report-card h3 { margin: 26px 0 12px; font-size: clamp(23px, 2.4vw, 32px); font-weight: 500; }.report-card p { max-width: 430px; margin-block:0; color: #929796; font-size:13px; line-height: 1.7; }.report-number { display: block; margin-top: 24px; color: var(--accent); font-size: 52px; font-weight: 450; }.report-number small { font-size: 18px; }
.bar-chart { height: 205px; display: flex; gap: 4%; align-items: end; padding-top: 24px; border-bottom: 1px solid #575c5b; background: repeating-linear-gradient(to bottom, transparent 0, transparent 44px, #2b2f30 45px); }.bar-chart i { width: 8.5%; height: var(--h); display:block; background: var(--accent); opacity: .78; }
.sparkline { margin-top: 36px; }.sparkline svg { width: 100%; max-height: 80px; }.sparkline path { fill:none; stroke:var(--accent); stroke-width:2; vector-effect:non-scaling-stroke; }
.flow-metric { display:flex; align-items:center; justify-content:space-between; margin-top:55px; color:#777; }.flow-metric b { padding:10px; color:#dadddc; font-size:10px; border:1px solid #4a4f4e; }
.donut { width:92px; height:92px; display:grid; place-items:center; margin-top:34px; border-radius:50%; background:conic-gradient(var(--accent) 37%, #303435 0); position:relative; }.donut::before { content:""; position:absolute; inset:8px; background:#171a1b; border-radius:50%; }.donut span { z-index:1; font-size:24px; }.donut small { font-size:10px; }

.screenshot-section { background: var(--paper); }
.screen-story { border-top: 1px solid var(--ink); }
.screen-feature { display: grid; grid-template-columns: .4fr 1.6fr; gap: clamp(30px, 5vw, 62px); padding: clamp(38px, 5vw, 62px) 0; border-bottom: 1px solid var(--line); }
.screen-copy { min-width: 0; }
.screen-copy > span { color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.screen-copy h3 { margin: 18px 0 12px; font-size: clamp(22px, 2.2vw, 30px); font-weight: 550; line-height: 1.3; letter-spacing: -.035em; }
.screen-copy p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.85; }
.screen-pair, .screen-gallery { min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-content: start; }
.screen-gallery.four-up { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.screen-feature figure { margin: 0; min-width: 0; overflow: hidden; background: var(--white); border: 1px solid var(--line); }
.screen-feature img { width: 100%; height: auto; aspect-ratio: 16 / 9; display: block; object-fit: cover; object-position: top center; transition: transform .25s ease; }
.screen-feature figure:hover img { transform: scale(1.012); }
.screen-feature figcaption { padding: 12px 14px; color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; border-top: 1px solid var(--line); }

.workflow-section { background: var(--white); }.workflow-grid { border-top: 1px solid var(--ink); }.workflow-grid article { display: grid; grid-template-columns: 1fr 3fr; gap: 30px; align-items:start; padding: 25px 0; border-bottom: 1px solid var(--line); }.workflow-grid > article > span { color: var(--muted); font-size: 10px; }.workflow-grid h3 { margin: 0; font-size: 21px; font-weight: 550; }.workflow-grid p { margin: 7px 0 0; color: var(--muted); font-size:13px; }
.pricing-section { background:#e9e9e4; }.pricing-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }.price-card { position:relative; padding:clamp(30px,4vw,54px); background:var(--white); }.price-card.featured { color:var(--white); background:var(--ink); }.recommended { position:absolute; top:0; right:0; padding:9px 13px; color:var(--ink); background:var(--accent); font-size:8px; font-weight:800; letter-spacing:.14em; }.plan-head { min-height:180px; display:flex; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); }.featured .plan-head { border-color:var(--dark-line); }.plan-name { color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.17em; }.plan-head p { max-width:200px; margin-top:25px; color:var(--muted); line-height:1.7; }.price { text-align:right; white-space:nowrap; }.price strong { display:block; font-size:clamp(35px,4vw,54px); font-weight:550; letter-spacing:-.05em; }.price small { color:var(--muted); }.price-card ul { min-height:215px; margin:34px 0; padding:0; list-style:none; }.price-card li { padding:10px 0 10px 22px; position:relative; font-size:14px; }.price-card li::before { content:"✓"; position:absolute; left:0; color:var(--accent-dim); font-weight:800; }.price-card li.muted { color:#909493; }.price-card li.muted::before { content:"—"; color:#909493; }.coming-soon { display:block; padding:16px; text-align:center; font-size:11px; font-weight:700; border:1px solid var(--line); }.light-button { border-color:#4b5050; }.pricing-note { margin:22px 0 0; color:var(--muted); font-size:11px; text-align:right; }
.data-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(60px,10vw,140px); }.data-lead { max-width:500px; margin-top:34px; color:#9da2a1; line-height:1.9; }.data-list { margin:0; }.data-list div { padding:28px 0; border-bottom:1px solid var(--dark-line); }.data-list dt { margin-bottom:10px; color:var(--accent); font-size:9px; font-weight:700; letter-spacing:.16em; }.data-list dd { margin:0; color:#d5d8d7; font-size:15px; }
.final-cta { text-align:center; background:var(--accent); }.final-cta h2 { font-size:clamp(16px,4vw,64px); white-space:nowrap; }.final-cta .eyebrow { color:#617617; }.dark-status { margin:45px auto 0; color:var(--ink); border-color:#829c25; }.dark-status .status-dot { background:var(--ink); }.dark-status small { color:#617617; border-color:#829c25; }

.reveal { opacity: 1; transform: none; }

/* Privacy / legal pages */
.legal-hero { padding-block: clamp(78px, 10vw, 138px) clamp(54px, 7vw, 92px); }
.legal-hero h1 { max-width: 850px; margin: 18px 0 24px; font-size: clamp(48px, 7vw, 92px); font-weight: 520; line-height: .98; letter-spacing: -.055em; }
.legal-hero > .container > p:not(.eyebrow):not(.legal-date) { max-width: 620px; color: #aeb2b1; font-size: 15px; line-height: 1.8; }
.legal-date { margin-top: 30px; color: #737877; font-size: 10px; letter-spacing: .08em; }
.legal-layout { display: grid; grid-template-columns: 240px minmax(0, 760px); gap: clamp(50px, 8vw, 110px); justify-content: center; padding-block: clamp(58px, 8vw, 100px); }
.legal-toc { align-self: start; position: sticky; top: 100px; }
.legal-toc > p { margin: 0 0 18px; color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.legal-toc ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.legal-toc li { border-bottom: 1px solid var(--line); }
.legal-toc a { display: block; padding: 11px 3px; color: var(--muted); font-size: 11px; text-decoration: none; }
.legal-toc a:hover { color: var(--ink); }
.legal-content section { padding: 0 0 44px; margin-bottom: 44px; border-bottom: 1px solid var(--line); scroll-margin-top: 100px; }
.legal-content section:last-child { margin-bottom: 0; }
.legal-content h2 { margin: 0 0 22px; font-size: clamp(22px, 2.4vw, 30px); font-weight: 600; letter-spacing: -.025em; }
.legal-content p { margin: 0 0 14px; color: #505453; font-size: 14px; line-height: 1.9; }
.legal-content p:last-child { margin-bottom: 0; }

@media (max-width: 1024px) {
  .brand-hero-grid, .product-hero-grid { grid-template-columns: 1fr 1fr; gap: 42px; }
  .hero-copy h1 { font-size: clamp(44px, 5.6vw, 60px); }
  .chart-area { height: 175px; }.court { height: 275px; margin:20px; }
  .section-heading { gap:40px; }.product-card h3 { margin:55px 0; }
  .plan-head { display:block; }.price { margin-top:25px; text-align:left; }.price-card ul { min-height:225px; }
  .screen-feature { grid-template-columns: .5fr 1.5fr; gap: 34px; }
}

@media (max-width: 760px) {
  :root { --pad: 20px; }
  .header-inner { min-height: 66px; }.wordmark img { width: 138px; }.site-nav { gap:16px; overflow-x:auto; }.site-nav .nav-future { display:none; }
  .brand-hero { min-height:auto; }.brand-hero-grid, .product-hero-grid, .section-heading, .statement-grid, .data-grid { grid-template-columns:1fr; }
  .brand-hero-grid { gap:64px; }.product-hero-grid { gap:42px; }.hero-copy h1 { font-size:clamp(38px,10.5vw,52px); }.product-hero .hero-copy h1 { font-size:clamp(40px,11vw,54px); }.hero-lead { margin-block:24px 28px; font-size:15px; line-height:1.75; }
  .data-visual { margin-inline:-8px; }.metric-row strong { font-size:22px; }
  .statement-grid { gap:36px; }.statement-grid div > p { margin-top:28px; }.section-heading { gap:28px; }
  .product-card { grid-template-columns:1fr; }.product-card-numbers { grid-template-columns:repeat(3,1fr); }.product-card-numbers div { min-width:0; padding:24px 14px; border-right:1px solid #1114; border-bottom:0; }.product-card-numbers span { font-size:42px; }.product-card-numbers small { font-size:7px; }.product-card-preview img { min-height:320px; aspect-ratio:16 / 9; }.product-card-preview span { left:14px; right:auto; }
  .principle-grid { grid-template-columns:1fr; }.principle-grid article, .principle-grid article:not(:first-child) { padding:30px 0; border-right:0; border-bottom:1px solid var(--dark-line); }.principle-grid h3 { margin-top:25px; }
  .footer-main { grid-template-columns:1fr 1fr; }.footer-main > div:first-child { grid-column:1/-1; }
  .product-kicker { margin-bottom:42px; }.hero-facts { gap:16px; overflow-x:auto; }.hero-facts span { white-space:nowrap; }
  .overview-intro, .video-heading, .operation-guide, .screen-feature { grid-template-columns:1fr; }.overview-intro { gap:22px; }.overview-steps { grid-template-columns:1fr; }.overview-steps article { min-height:0; }.strength-strip { grid-template-columns:1fr 1fr; }.strength-strip > *:nth-child(2) { border-right:0; }.strength-strip > *:nth-child(-n+2) { border-bottom:1px solid var(--line); }.video-heading { gap:22px; }.video-copy h2 { font-size:clamp(29px,8vw,40px); }
  .operation-video.featured-video { display:block; }.operation-video.featured-video video { height:auto; }
  .screen-feature { gap:30px; }.screen-copy { max-width:560px; }.screen-copy h3 { margin-top:18px; }
  .event-grid { grid-template-columns:repeat(2,1fr); }.event-card { min-height:150px; }.event-key { margin-bottom:20px; }
  .report-grid { grid-template-columns:1fr; }.report-wide { grid-column:auto; grid-template-columns:1fr; }.bar-chart { height:180px; }
  .workflow-grid article { grid-template-columns:45px 1fr; }
  .pricing-grid { grid-template-columns:1fr; }.plan-head { min-height:auto; padding-bottom:30px; }.price-card ul { min-height:auto; }.pricing-note { text-align:left; line-height:1.7; }
  .legal-layout { grid-template-columns:1fr; gap:42px; }.legal-toc { position:static; }.legal-toc ol { display:grid; grid-template-columns:repeat(2,1fr); }.legal-toc li:nth-child(odd) { border-right:1px solid var(--line); }.legal-toc a { padding:11px 8px; }
}

@media (max-width: 440px) {
  .site-nav { display:none; }
  .scoreboard { gap:12px; }.chart-area { height:150px; }.data-visual { padding:18px; }
  .metric-row div { padding-right:5px; }.metric-row strong { font-size:18px; }.metric-row span { display:none; }
  .product-card-copy { padding:28px 22px; }.product-card-numbers span { font-size:34px; }.product-card-numbers small { letter-spacing:.08em; }
  .operation-guide { margin-inline:-8px; padding:16px; }.event-heading { display:block; }.event-heading h3 { margin-top:10px; }.event-grid { grid-template-columns:1fr; }.event-card { min-height:145px; }.event-key { margin-bottom:18px; }
  .court { height:240px; margin:14px; }.court-stats div { padding:15px 10px; }.court-stats strong { font-size:20px; }
  .availability { align-items:flex-start; flex-wrap:wrap; }.availability small { width:100%; padding:8px 0 0 17px; border:0; }
  .app-window-bar span:last-child { display:none; }.hero-app-window { margin-inline:-8px; }.hero-app-window img { aspect-ratio:1.36; }
  .screen-pair, .screen-gallery.four-up { grid-template-columns:1fr; }
  .strength-strip { grid-template-columns:1fr; }.strength-strip > * { border-right:0; border-bottom:1px solid var(--line); }.strength-strip > *:last-child { border-bottom:0; }.operation-videos { grid-template-columns:1fr; }.operation-video.featured-video { grid-column:auto; }.operation-video > div { padding:20px; }
  .footer-main { grid-template-columns:1fr; }.footer-main > div:first-child { grid-column:auto; }.footer-bottom { gap:20px; }
  .legal-hero h1 { font-size:clamp(42px,15vw,62px); }.legal-toc ol { grid-template-columns:1fr; }.legal-toc li:nth-child(odd) { border-right:0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .reveal { opacity:1; transform:none; }
}

/* Handball Analyzer sales page */
.sales-page { background:#f5f7f9; }
.language-switch { padding:7px 11px; border:1px solid #7fd2ff55; border-radius:999px; color:#bfe4ff !important; }
.sales-hero { position:relative; overflow:hidden; padding:86px 0 72px; color:#fff; background:radial-gradient(circle at 78% 18%,#123f72 0,#071c35 34%,#041225 74%); }
.sales-hero::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.18; background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(to bottom,#000,transparent); }
.sales-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr); align-items:center; gap:64px; }
.sales-hero h1 { margin:18px 0 22px; max-width:760px; font-size:clamp(36px,4.4vw,60px); line-height:1.12; letter-spacing:-.045em; }
.sales-hero .hero-lead { max-width:680px; color:#dce9f6; }
.hero-badges,.cta-row { display:flex; flex-wrap:wrap; gap:10px; }
.hero-badges span { padding:7px 12px; border:1px solid #6fbdf866; border-radius:999px; color:#bfe4ff; background:#0b2e52; font-size:12px; font-weight:700; }
.cta-row { margin-top:30px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border:1px solid transparent; color:#fff; background:#126dcc; font-size:13px; font-weight:700; text-decoration:none; transition:transform .18s ease,background .18s ease; }
.button:hover { transform:translateY(-2px); background:#1980e5; }
.button-store { color:#05192e; background:#7fd2ff; }
.button-store:hover { background:#a6e1ff; }
.button-secondary { border-color:#ffffff55; background:#ffffff10; }
.button-secondary:hover { background:#ffffff20; }
.text-cta { align-self:center; padding:12px 4px; color:#bfe4ff; font-size:13px; font-weight:700; }
.store-note { margin:15px 0 0; color:#9fb8ce; font-size:11px; line-height:1.65; }
.sales-hero-visual { position:relative; padding:16px; border:1px solid #7fd2ff55; background:#03101faa; box-shadow:0 32px 80px #0008; }
.sales-hero-visual img { display:block; width:100%; height:auto; }
.problem-section,.sales-feature-section,.use-flow-section,.sales-report-section,.comparison-section,.data-trust-section,.sales-faq-section { padding:88px 0; }
.release-section,.language-section { padding:88px 0; }
.release-section { background:#edf3f8; }
.release-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:42px; }
.release-grid article { min-height:245px; padding:28px; border-top:4px solid #1687e0; background:#fff; box-shadow:0 14px 36px #15304912; }
.release-grid article > span { color:#1675ce; font:700 11px/1 monospace; letter-spacing:.08em; }
.release-grid h3 { margin:24px 0 12px; font-size:19px; line-height:1.45; }
.release-grid p { margin:0; color:#52606a; font-size:13px; line-height:1.8; }
.release-note { margin:20px 0 0; color:#65717c; font-size:11px; line-height:1.7; }
.language-section { color:#fff; background:linear-gradient(135deg,#071a30,#0b345d); }
.language-panel { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.language-panel h2 { margin:16px 0 0; font-size:clamp(34px,4vw,58px); line-height:1.2; letter-spacing:-.04em; }
.language-panel p { margin:0 0 28px; color:#c5d6e5; line-height:1.85; }
.language-panel ul { display:grid; gap:1px; margin:0 0 28px; padding:1px; background:#31506b; list-style:none; }
.language-panel li { display:flex; justify-content:space-between; gap:24px; padding:18px 20px; background:#0c223c; }
.language-panel li strong { color:#7fd2ff; }
.language-panel li span { color:#b8c7d5; text-align:right; }
.problem-section { background:#fff; }
.problem-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:42px; background:#dce1e6; border:1px solid #dce1e6; }
.problem-grid li { min-height:160px; padding:28px; color:#2d3338; background:#fff; font-size:16px; line-height:1.7; list-style:none; }
.problem-grid span,.sales-flow span { display:block; margin-bottom:22px; color:#1675ce; font:700 11px/1.2 monospace; letter-spacing:.08em; }
.sales-feature-section,.comparison-section,.sales-faq-section { background:#071a30; color:#fff; }
.sales-page .sales-feature-section .eyebrow,.sales-page .comparison-section .eyebrow,.sales-page .sales-faq-section .eyebrow { color:#7fd2ff; }
.sales-page .sales-feature-section .section-lead,.sales-page .comparison-section .section-lead,.sales-page .sales-faq-section .section-lead { color:#aebfd0; }
.feature-card-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:46px; }
.feature-card { overflow:hidden; border:1px solid #29445f; background:#0c223c; }
.feature-card-wide { grid-column:1/-1; display:grid; grid-template-columns:1.35fr .65fr; }
.feature-card img { display:block; width:100%; height:280px; object-fit:cover; object-position:top; background:#061322; }
.feature-card-wide img { height:100%; min-height:430px; }
.feature-card > div { padding:26px; }
.feature-card > div > span { color:#62c6ff; font:700 11px/1 monospace; }
.feature-card > div > h3 { margin:12px 0 10px; font-size:23px; }
.feature-card > div > p { margin:0; color:#b8c7d5; font-size:14px; line-height:1.75; }
.feature-card-text { display:grid; place-items:center; min-height:300px; padding:38px; text-align:center; background:linear-gradient(145deg,#0e2d4f,#07162a); }
.feature-card > .data-symbol { width:94px; height:94px; margin:0 auto 24px; padding:0; border:2px solid #7fd2ff; border-radius:50%; color:#7fd2ff; font:700 30px/90px monospace; }
.feature-card-text > div:last-child { padding:0; }
.use-flow-section,.sales-report-section,.data-trust-section { background:#fff; }
.sales-flow { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-top:44px; }
.sales-flow li { position:relative; min-height:164px; padding:24px 18px; border-top:3px solid #1687e0; background:#edf3f8; list-style:none; }
.sales-flow li:not(:last-child)::after { content:"→"; position:absolute; z-index:2; top:66px; right:-19px; color:#1675ce; font-size:22px; }
.sales-flow strong { display:block; margin:0 0 10px; font-size:16px; }
.sales-flow small { color:#59626b; font-size:12px; line-height:1.65; }
.report-showcase-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin-top:44px; }
.report-showcase-grid figure { margin:0; padding:12px; border:1px solid #d9e0e6; background:#f5f7f9; }
.report-showcase-grid img { display:block; width:100%; height:330px; object-fit:cover; object-position:top; }
.report-showcase-grid figcaption { padding:16px 8px 6px; color:#26313b; font-size:14px; font-weight:700; }
.comparison-wrap { overflow-x:auto; margin-top:42px; border:1px solid #29445f; outline-offset:4px; }
.comparison-wrap:focus-visible { outline:3px solid #7fd2ff; }
.comparison-table { width:100%; min-width:620px; border-collapse:collapse; background:#0c223c; }
.comparison-table th,.comparison-table td { padding:17px 22px; border-bottom:1px solid #29445f; text-align:center; }
.comparison-table th:first-child,.comparison-table td:first-child { text-align:left; }
.comparison-table thead th { color:#7fd2ff; background:#0a1d33; font-size:13px; letter-spacing:.06em; }
.comparison-table tbody th { color:#e9f2fa; font-weight:600; }
.comparison-table td { color:#c7d4e0; }
.table-check { color:#75d5a7 !important; font-weight:700; }
.table-no { color:#ffb2a5 !important; }
.price-row th,.price-row td { border-bottom:0; font-size:18px; font-weight:800; }
.plan-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; margin-top:26px; }
.plan-actions p { margin:0; color:#aebfd0; font-size:12px; }
.data-trust-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.trust-list { display:grid; gap:14px; }
.trust-list li { display:grid; grid-template-columns:34px 1fr; gap:14px; padding:24px; border-left:4px solid #1687e0; background:#eef4f8; list-style:none; }
.trust-list li > span { color:#1675ce; font:700 11px/1.2 monospace; }
.trust-list strong { display:block; margin:0 0 8px; font-size:18px; }
.trust-list p { margin:0; color:#52606a; font-size:13px; line-height:1.75; }
.faq-layout { display:grid; grid-template-columns:.65fr 1.35fr; gap:70px; }
.sales-faq-section .faq-list details { border-color:#29445f; }
.sales-faq-section .faq-list summary { color:#fff; }
.sales-faq-section .faq-list details p { color:#b8c7d5; }
.final-sales-cta { padding:94px 0; color:#fff; text-align:center; background:linear-gradient(135deg,#0b345d,#0b7abf); }
.final-sales-cta h2 { margin:10px 0 18px; font-size:clamp(34px,5vw,58px); letter-spacing:-.04em; }
.final-sales-cta p { max-width:650px; margin:0 auto; color:#d8efff; line-height:1.8; }
.cta-row-center { justify-content:center; }

@media (max-width:1024px) {
  .sales-hero-grid { grid-template-columns:1fr; gap:46px; }
  .sales-hero-visual { max-width:820px; }
  .sales-flow { grid-template-columns:repeat(3,1fr); }
  .sales-flow li:nth-child(3)::after { display:none; }
  .release-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
  .sales-hero { padding:62px 0 52px; }
  .problem-section,.sales-feature-section,.use-flow-section,.sales-report-section,.comparison-section,.data-trust-section,.sales-faq-section,.release-section,.language-section { padding:64px 0; }
  .problem-grid,.feature-card-grid,.report-showcase-grid,.data-trust-grid,.faq-layout,.language-panel { grid-template-columns:1fr; }
  .feature-card-wide { grid-column:auto; grid-template-columns:1fr; }
  .feature-card-wide img,.feature-card img { min-height:0; height:auto; }
  .sales-flow { grid-template-columns:repeat(2,1fr); }
  .sales-flow li:nth-child(3)::after { display:block; }
  .sales-flow li:nth-child(even)::after { display:none; }
  .report-showcase-grid img { height:auto; }
  .data-trust-grid,.faq-layout { gap:34px; }
  .language-panel { gap:34px; }
  .plan-actions { align-items:flex-start; flex-direction:column; }
}
@media (max-width:440px) {
  .sales-hero h1 { font-size:34px; }
  .sales-hero-visual { margin-inline:-8px; padding:8px; }
  .problem-grid,.sales-flow,.release-grid { grid-template-columns:1fr; }
  .release-grid article { min-height:0; }
  .language-panel li { align-items:flex-start; flex-direction:column; gap:6px; }
  .language-panel li span { text-align:left; }
  .sales-flow li::after { display:none !important; }
  .cta-row .button,.cta-row .text-cta { width:100%; }
}
