/* PronoWin / Matchday. Landing-only art direction; legal pages keep their foundations. */
.landing {
  --ink: #f5f3ed; --muted: #a9b0c0; --paper: #090c13; --line: #ffffff17;
  --orange: #ff8849; --accent: #ff995f; --accent-strong: #ffa873;
  background: var(--paper); color: var(--ink);
}
.landing .container { width: min(1280px, calc(100% - 112px)); }
.landing ::selection { color: #12151b; background: #ffb482; }
.landing :focus-visible { outline-color: #ffb685; }
.landing .section { padding-block: 112px; }
.landing .eyebrow { font-size: .65rem; letter-spacing: .18em; font-weight: 650; color: #ffad7f; }
.landing .section-heading { align-items: flex-end; gap: 60px; margin-bottom: 50px; }
.landing .section-heading h2, .landing .journey-intro h2, .landing .faq-intro h2 { font-size: clamp(2.4rem, 4.6vw, 4.2rem); letter-spacing: -.065em; line-height: 1.06; margin-top: 20px; }
.landing .section-heading h2 span { color: #9299a9; }
.landing .section-heading > p { max-width: 330px; font-size: .93rem; line-height: 1.8; color: #a9b0c0; }
.landing .btn { border-radius: 8px; min-height: 58px; padding: 10px 12px 10px 22px; gap: 28px; transition: transform .25s, background .25s, box-shadow .25s; }
.landing .btn-primary { color: #20140e; background: linear-gradient(115deg, #ffb36c, #ff7a38); box-shadow: 0 5px 25px #fd74331a, inset 0 1px #fff5; }
.landing .btn-primary:hover { background: linear-gradient(115deg, #ffc084, #ff934f); transform: translateY(-3px); box-shadow: 0 8px 35px #ff81372e; }
.button-arrow { width: 34px; height: 34px; background: #14100d16; border-radius: 5px; display: grid; place-items: center; }
.landing .text-link .icon, .landing .btn .icon { transition: transform .25s; }
.landing .text-link:hover .icon, .landing .btn:hover .icon { transform: translateX(3px); }
[data-nav-sentinel] { position: absolute; inset: 0 0 auto; height: 15px; pointer-events: none; }
.landing .navbar { background: #090d16dd; border-bottom-color: #ffffff0e; backdrop-filter: blur(22px); transition: background .25s, box-shadow .25s; }
.landing .navbar.is-scrolled { background: #0b0e16f5; box-shadow: 0 6px 28px #0004; }
.landing .navbar > .container { min-height: 84px; }
.landing .brand-mark { display: none; }
.landing .brand-name { font-size: 28px; letter-spacing: -.065em; }
.landing .nav-links { gap: 25px; }
.landing .nav-links a { font-size: .77rem; position: relative; }
.landing .nav-links a::after { content: ''; height: 2px; position: absolute; bottom: 4px; left: 0; right: 0; background: var(--orange); transform: scaleX(0); transform-origin: left; transition: transform .25s; }
.landing .nav-links a:hover::after, .landing .nav-links a[aria-current]::after { transform: scaleX(1); }
.landing .nav-cta { background: #ffffff07; font-size: .74rem; min-height: 43px; border-color: #ffffff26; }
.motion-toggle { display: flex; align-items: center; gap: 9px; color: #aeb6c7; background: transparent; border: 0; min-height: 44px; padding: 8px; font-size: .63rem; }
.motion-toggle:hover { color: white; }
.motion-bars { display: flex; align-items: center; height: 18px; gap: 3px; }
.motion-bars i { display: block; background: #ff9a5f; height: 12px; width: 2px; border-radius: 2px; }
.motion-bars i:nth-child(2) { height: 18px; }.motion-bars i:nth-child(3) { height: 8px; }
.motion-toggle[aria-pressed="false"] .motion-bars i { height: 4px; background: #9aa3b7; }

/* Cinematic hero: real app capture, atmosphere, luminous orbit and floating annotations. */
.landing .hero { background: #090d17; overflow: clip; }
.stadium-backdrop { position: absolute; inset: 0; background: linear-gradient(90deg, #090d17 5%, #090d17c4 43%, #090d1730 100%), linear-gradient(0deg, #090c13 0%, #090d1750 50%, #090d17aa 100%), url('/images/stadium-atmosphere.webp') center 65% / cover; opacity: .76; pointer-events: none; }
.hero-aurora { position: absolute; width: 700px; height: 700px; top: -40px; right: -70px; background: radial-gradient(ellipse, #fa702523, transparent 64%); pointer-events: none; }
.hero-grain { position: absolute; inset: 0; opacity: .15; background-image: radial-gradient(#b3bbc640 .65px, transparent .65px); background-size: 5px 5px; mask-image: linear-gradient(90deg, black, transparent); pointer-events: none; }
.landing .hero-layout { min-height: 732px; grid-template-columns: 1.14fr 1fr; gap: 32px; padding-block: 54px 66px; }
.landing .hero-content { padding: 0; position: relative; z-index: 3; }
.landing .hero-kicker { color: #c0c7d5; font-size: .6rem; letter-spacing: .18em; }
.kicker-line { display: inline-block; height: 1px; width: 27px; background: #ff9256; box-shadow: 0 0 10px #ff925655; }
.landing .hero h1 { position: relative; width: fit-content; font-size: clamp(4.5rem, 6.8vw, 6.3rem); line-height: .98; letter-spacing: -.075em; font-weight: 760; margin: 31px 0 0; }
.landing .hero h1 > span:not(.title-spark) { display: inline-block; color: #ff9c56; background: linear-gradient(120deg, #ffcb8a 15%, #ff8946 80%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.landing .hero h1 .title-spark { font-size: .43em; color: #ffab6b; position: absolute; bottom: .08em; right: -1.5em; font-weight: 400; }
.landing .hero-subtitle { margin-top: 30px; max-width: 415px; font-size: 1.02rem; line-height: 1.75; color: #bdc5d4; }
.landing .hero-cta { margin-top: 30px; gap: 24px; }
.explore-link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; font-size: .78rem; color: #e0e2e7; }
.play-icon { width: 34px; height: 34px; border: 1px solid #ffffff30; border-radius: 50%; display: grid; place-items: center; font-size: 9px; padding-left: 2px; transition: border-color .25s, background .25s; }
.explore-link:hover .play-icon { border-color: #ff985a; background: #ff985a18; }
.landing .hero-availability { font-size: .64rem; color: #9ba5b7; margin-top: 19px; }
.availability-mark { color: #a0bfaf; margin-right: 6px; }
.landing .hero-showcase { position: relative; width: 100%; height: 570px; margin: 0; display: flex; align-items: center; justify-content: center; perspective: 1300px; }
.phone-perspective { width: 248px; position: relative; z-index: 2; transform: rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, -9deg)) rotateZ(6deg); transition: transform .5s ease-out; transform-style: preserve-3d; }
.landing .phone-frame { width: 100%; border-radius: 41px; transform: none; box-shadow: -20px 30px 50px #0008, 0 0 0 1px #d0d6e91c, 8px 0 12px #ff93501d; background: #090d17; }
.landing .hero-app-shot { width: 100%; }
.showcase-orbit { position: absolute; top: 50%; left: 50%; border: 1px solid #ff995a45; width: 515px; height: 515px; border-radius: 50%; transform: translate(-50%, -50%) rotate(-28deg) scaleY(.68); box-shadow: 0 0 60px #ff843009; pointer-events: none; }
.orbit-one::after { content: ''; width: 7px; height: 7px; background: #ffd09c; border-radius: 50%; position: absolute; top: 75px; left: 75px; box-shadow: 0 0 20px 5px #ff8a4566; }
.orbit-two { width: 610px; height: 610px; border-color: #ffffff0b; transform: translate(-50%, -50%) rotate(30deg) scaleY(.7); }
.showcase-coordinate { font: .5rem/1.3 var(--font); letter-spacing: .26em; color: #8691a6; position: absolute; top: 15px; right: 10px; writing-mode: vertical-rl; }
.floating-note { position: absolute; z-index: 4; padding: 17px; border: 1px solid #ffffff24; border-radius: 13px; background: linear-gradient(125deg, #202534ed, #101622ed); backdrop-filter: blur(16px); box-shadow: 0 18px 30px #0005, inset 0 1px #ffffff07; display: flex; gap: 13px; align-items: center; }
.note-analysis { top: 62px; left: -35px; transform: rotate(-5deg); }
.note-icon { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; color: #ffa974; background: #ff8a4516; border: 1px solid #ff8a4529; border-radius: 10px; }
.floating-note small { display: block; color: #9aa7bd; font-size: .49rem; letter-spacing: .1em; margin-bottom: 4px; }
.floating-note strong { display: block; font-size: .75rem; font-weight: 600; line-height: 1.4; color: #eff1f7; }
.floating-note div > span { display: block; margin-top: 5px; font-size: .56rem; color: #9ba8bf; }
.note-live { bottom: 82px; right: -17px; transform: rotate(4deg); padding: 18px 20px; }
.note-live > .icon { margin-left: 8px; color: #b7c4d4; }
.live-pulse { width: 7px; height: 7px; border-radius: 50%; background: #9cddb7; box-shadow: 0 0 0 5px #9cddb714; }
.landing .hero-showcase figcaption { position: absolute; bottom: -4px; margin: 0; font-size: .54rem; color: #98a5bb; text-align: center; }
.landing .hero-bottom { border-top-color: #ffffff12; }
.landing .hero-bottom .container { min-height: 72px; }
.landing .hero-bottom span { font-size: .53rem; letter-spacing: .15em; color: #8592a6; }
.landing .hero-bottom .tiny-cross { margin-right: 12px; font-size: 1rem; color: #ffac71; }
.landing .hero-bottom a { font-size: .7rem; gap: 16px; }
.landing .hero-bottom .scroll-indicator { width: 28px; height: 36px; display: grid; place-items: center; border: 1px solid #ffffff22; border-radius: 20px; font-size: .9rem; color: #ffb588; }
.brand-ribbon { background: #f5995e; color: #28180f; border-block: 1px solid #ffbf81; overflow: hidden; padding: 21px 0; }
.ribbon-track { display: flex; width: max-content; }
.ribbon-track > span { flex: 0 0 auto; display: flex; align-items: center; gap: 45px; padding-right: 45px; font-size: clamp(1.2rem, 2.3vw, 2.2rem); font-weight: 750; letter-spacing: -.055em; line-height: 1.1; }
.ribbon-track i { font-size: .8em; font-style: normal; font-weight: 400; }

/* User-controlled product exploration. All panels stay readable without scripts. */
.experience-section { background: radial-gradient(ellipse at 5% 75%, #23344b18, transparent 55%), #090c13; }
.experience-shell { border: 1px solid #ffffff1c; border-radius: 22px; background: #10141e; overflow: hidden; box-shadow: 0 20px 70px #0003; }
.stage-tabs { display: flex; border-bottom: 1px solid #ffffff13; background: #141924; padding: 8px; gap: 6px; }
.stage-tabs button { flex: 1; color: #9da9be; background: transparent; border: 1px solid transparent; padding: 16px 18px; border-radius: 12px; display: flex; align-items: center; justify-content: center; gap: 14px; font-size: .82rem; font-weight: 600; min-height: 56px; transition: background .3s, color .3s, border-color .3s; }
.stage-tabs button span { font-size: .61rem; color: #7f8a9f; }
.stage-tabs button[aria-selected="true"] { background: #ff974f13; border-color: #ff9b5033; color: #ffb787; }
.stage-tabs button[aria-selected="true"] span { color: #ffb787; }
.stage-tabs button:hover { background: #ffffff06; color: white; }
.stage-panel { display: grid; grid-template-columns: .92fr 1.08fr; min-height: 480px; align-items: center; gap: 40px; padding: 54px; }
.stage-panel + .stage-panel { border-top: 1px solid #ffffff12; }
.stage-copy h3 { font-size: clamp(1.9rem, 2.6vw, 2.65rem); letter-spacing: -.055em; line-height: 1.15; margin-top: 18px; }
.stage-copy h3 span { color: #9da9bc; }
.stage-copy > p:not(.eyebrow) { color: #a7b2c6; font-size: .89rem; margin-top: 22px; line-height: 1.8; max-width: 365px; }
.stage-benefits { display: grid; gap: 11px; margin-top: 25px; }
.stage-benefits li { display: flex; align-items: center; gap: 11px; font-size: .78rem; color: #d4dbe5; }
.stage-benefits li > span { color: #ffa56d; }
.stage-copy .text-link { color: #ffb27d; font-size: .77rem; margin-top: 22px; }
.stage-art { position: relative; height: 360px; min-width: 0; display: flex; align-items: center; justify-content: center; isolation: isolate; }
.stage-art::before { content: ''; position: absolute; inset: -10% -5%; z-index: -1; border-radius: 50%; background: radial-gradient(ellipse, #df793316, transparent 70%); }
.illustration-label { position: absolute; bottom: -21px; font-size: .56rem; color: #94a0b7; letter-spacing: .035em; }
.tactics-board, .live-demo-card, .balance-demo { width: 100%; border: 1px solid #ffffff1e; background: linear-gradient(125deg, #1d2633, #111823 75%); border-radius: 17px; padding: 25px; box-shadow: 0 22px 50px #0005; transform: perspective(900px) rotateY(-7deg) rotateZ(-2deg); }
.art-topline { display: flex; justify-content: space-between; align-items: center; gap: 10px; color: #b3c2d6; font-size: .49rem; font-weight: 600; letter-spacing: .1em; }
.art-topline > span:first-child { display: flex; align-items: center; gap: 8px; }
.art-topline > span:last-child { color: #9da5b5; }
.art-topline i { background: #ffab73; width: 5px; height: 5px; border-radius: 50%; }
.tactics-pitch { margin-block: 22px; border-radius: 8px; background: repeating-linear-gradient(90deg, #13272b40 0%, #13272b40 12.5%, #1a343340 12.5%, #1a343340 25%); }
.tactics-pitch svg { display: block; width: 100%; }
.pitch-lines { fill: none; stroke: #899d9f35; stroke-width: 1; }
.tactics-route { fill: none; stroke: #ffad76; stroke-width: 1.5; stroke-dasharray: 5 7; }
.pitch-players { fill: #ffac72; stroke: #ffbc922d; stroke-width: 10; paint-order: stroke; }
.pitch-opponents { fill: #7d99b4; }
.art-data-row { display: flex; justify-content: space-between; border-top: 1px solid #ffffff12; padding-top: 16px; gap: 10px; }
.art-data-row span { color: #99a9bc; font-size: .51rem; }.art-data-row strong { color: #e0e7ed; font-size: .66rem; display: block; margin-top: 4px; font-weight: 500; }
.art-floating-tag { position: absolute; bottom: 2px; right: -8px; z-index: 1; display: flex; align-items: center; gap: 10px; padding: 13px 17px; border: 1px solid #ffffff2b; border-radius: 9px; background: #232935f5; box-shadow: 0 10px 30px #0005; color: #ebecf0; font-size: .66rem; transform: rotate(3deg); }
.art-floating-tag .icon, .mini-spark { color: #ffb981; }.mini-spark { font-size: 1.3rem; }
.match-radar { position: absolute; width: 330px; height: 330px; z-index: -1; }
.match-radar > span { position: absolute; inset: 0; border: 1px solid #f7985733; border-radius: 50%; }
.match-radar > span:nth-child(2) { inset: -30px; border-color: #f7985718; }.match-radar > span:nth-child(3) { inset: -60px; border-color: #f798570b; }
.demo-match { display: flex; justify-content: space-around; align-items: center; gap: 10px; padding: 30px 0 25px; }
.demo-team { display: flex; flex-direction: column; gap: 10px; align-items: center; color: #aeb9c9; font-size: .65rem; }
.demo-team > span { background: linear-gradient(140deg, #35435f, #1a2333); border: 1px solid #ffffff23; width: 44px; height: 52px; border-radius: 6px 6px 18px 18px; display: grid; place-items: center; color: white; font-size: 1.1rem; font-weight: 700; }
.demo-team:last-child > span { background: linear-gradient(140deg, #704329, #30251e); }
.demo-score { font-size: 2.9rem; line-height: 1; font-weight: 650; color: #f8f5ee; letter-spacing: -.025em; text-align: center; }
.demo-score > span { color: #65748c; font-weight: 400; }.demo-score small { display: block; font-size: .54rem; font-weight: 400; letter-spacing: .02em; color: #c3aa90; margin-top: 14px; }
.match-timeline { position: relative; height: 3px; background: #ffffff0e; margin-bottom: 24px; }.match-timeline span { display: block; width: 70%; height: 100%; background: #ed9c66; }.match-timeline i { position: absolute; top: -3px; left: 70%; width: 9px; height: 9px; border-radius: 50%; background: #ffd19f; box-shadow: 0 0 12px #fc9f50a0; }
.demo-event { display: flex; align-items: center; gap: 12px; }.demo-event strong { display: block; font-size: .74rem; font-weight: 600; }.demo-event small { display: block; margin-top: 4px; font-size: .56rem; color: #a7b5c8; }
.balance-heading { font-size: 1.55rem; line-height: 1.2; margin-top: 24px; letter-spacing: -.04em; font-weight: 600; }.balance-heading span { color: #8d9bb0; }
.balance-chart svg { width: 100%; margin-top: 10px; }.chart-grid { stroke: #ffffff0e; stroke-width: 1; fill: none; }.chart-line { stroke: #f6a068; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.balance-pills { display: flex; gap: 10px; margin-top: 12px; }.balance-pills span { padding: 6px 12px; border: 1px solid #ffffff16; border-radius: 5px; font-size: .55rem; color: #b6c1d2; }

/* Asymmetric feature grid, with subtle decorative data textures. */
.landing .features-section { padding-top: 14px; background: #090c13; }
.landing .features-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 20px; }
.landing .feature-card { grid-column: span 6; position: relative; isolation: isolate; overflow: hidden; min-height: 310px; padding: 32px; background: linear-gradient(130deg, #171c27, #10151f); border: 1px solid #ffffff18; border-radius: 17px; transition: border-color .3s, transform .3s, box-shadow .3s; }
.landing .feature-card:nth-child(1) { grid-column: span 7; background: linear-gradient(130deg, #2c221d, #14161f); }.landing .feature-card:nth-child(2) { grid-column: span 5; }
.landing .feature-card:nth-child(3) { grid-column: span 5; }.landing .feature-card:nth-child(4) { grid-column: span 7; background: linear-gradient(130deg, #162225, #10171d); }
.landing .feature-card:hover { border-color: #ffab764f; transform: translateY(-4px); box-shadow: 0 16px 32px #0003; }
.feature-index { position: absolute; top: 29px; right: 30px; color: #8090a4; font-size: .59rem; letter-spacing: .12em; }
.landing .feature-top { margin-bottom: 22px; }.landing .feature-icon { color: #ffb183; background: #f89a5210; border: 1px solid #ffbd8d20; width: 42px; height: 42px; border-radius: 12px; }
.landing .feature-label { color: #b7c0d0; font-size: .58rem; letter-spacing: .13em; }
.landing .feature-card h3 { font-size: 1.55rem; max-width: 370px; letter-spacing: -.04em; line-height: 1.2; }
.landing .feature-description { max-width: 460px; font-size: .82rem; color: #a6b1c4; line-height: 1.8; }
.landing .feature-facts { flex-direction: row; flex-wrap: wrap; gap: 16px 24px; border-top-color: #ffffff13; position: relative; z-index: 1; }
.landing .feature-facts p { flex-direction: column; gap: 2px; }.landing .feature-facts strong { color: #e9e9e6; font-size: .77rem; }.landing .feature-facts span { color: #98a6ba; font-size: .58rem; max-width: 125px; }
.feature-decoration { position: absolute; right: -30px; bottom: 80px; width: 270px; height: 110px; z-index: -1; pointer-events: none; opacity: .1; mask-image: linear-gradient(90deg, transparent, black); }
.feature-decoration svg { width: 100%; height: 100%; }.decoration-base { stroke: #acb4c266; fill: none; }.decoration-curve { stroke: #ff9850; fill: none; stroke-width: 2; }
.decoration-ring { display: block; position: absolute; inset: -15px 45px -70px; border: 1px solid #b3c0da; border-radius: 50%; }.decoration-ring + .decoration-ring { inset: -55px 5px -110px; }
.landing .performance-section { background: #090c13; }.landing .performance-card { background: #10211c; border-color: #78a59035; }.landing .mega-number, .landing .performance-card .eyebrow { color: #a0dab8; }.landing .performance-card p:not(.eyebrow) { color: #adbbba; }

.landing .journey-section { position: relative; border-block: 1px solid #ffffff12; background: radial-gradient(ellipse at 10% 10%, #ff8b3010, transparent 55%), #10151f; }
.landing .journey-layout { gap: 95px; }.landing .journey-intro h2 { font-size: clamp(2.4rem, 3.8vw, 3.4rem); }.landing .journey-intro > p:not(.eyebrow) { font-size: .9rem; }
.landing .journey-steps { position: relative; }.landing .journey-steps::before { content: ''; position: absolute; left: 20px; width: 1px; top: 45px; bottom: 80px; background: linear-gradient(#ffaf7855, #ffaf7809); }
.landing .journey-steps li { position: relative; border: 0; gap: 24px; padding-block: 26px; }.landing .step-number { position: relative; background: #1b202a; color: #ffb17f; border-color: #fca46e38; border-radius: 12px; font-size: .67rem; }
.landing .journey-steps h3 { font-size: 1.08rem; }.landing .journey-steps p { color: #a6b2c5; font-size: .84rem; }

/* Warm paper section: a deliberate pause in the dark, with one premium focal point. */
.landing .pricing-section { background: #eeece6; color: #20242c; --muted: #59616b; --line: #d9d8d2; --ink: #20242c; }
.landing .pricing-section .eyebrow { color: #8d4925; }.landing .pricing-section .section-heading > p { color: #59616b; }.landing .pricing-section .section-heading h2 { font-size: clamp(2.3rem, 3.6vw, 3.4rem); }
.landing .pricing-section :focus-visible { outline-color: #a54715; }
.landing .pricing-grid { gap: 20px; align-items: stretch; }
.landing .pricing-card { position: relative; padding: 32px; background: #f8f7f3; border-radius: 18px; border-color: #d9d8d0; transition: transform .25s, box-shadow .25s; }
.landing .pricing-card:hover { transform: translateY(-5px); box-shadow: 0 14px 30px #20201812; }
.landing .pricing-card--highlight { background: radial-gradient(ellipse at 90% 0%, #603d25aa, transparent 50%), #141a25; color: #f6f4ef; border-color: #e8975e; box-shadow: 0 16px 34px #20201825, 0 0 0 4px #c7874112; }
.landing .pricing-card--highlight::before { content: ''; position: absolute; height: 2px; background: linear-gradient(90deg, transparent, #ffcb8c, transparent); top: -1px; left: 16%; right: 16%; }
.landing .pricing-topline { margin-bottom: 26px; }.landing .pricing-price { font-size: 3.8rem; letter-spacing: -.065em; margin-top: 22px; }.landing .pricing-price--absent { font-size: 1.2rem; letter-spacing: -.02em; min-height: 75px; }
.landing .pricing-badge { background: #ffc08914; color: #ffc48f; border-color: #ffc08930; font-size: .6rem; border-radius: 50px; }
.landing .pricing-name { font-size: 1.25rem; }.landing .pricing-features li { font-size: .83rem; padding-block: 8px; }.landing .pricing-card .btn { border-radius: 7px; padding: 14px 15px; min-height: 53px; gap: 10px; }
.landing .pricing-note { color: #606774; }.landing .comparison-disclosure { background: #f5f4ef; border-color: #d5d6ce; }
.landing .compare-table .icon { color: #326743; }.landing .compare-table .dash { color: #6a717c; }

.landing .faq-section { background: #090c13; }.landing .faq-intro h2 { font-size: clamp(2.6rem, 4vw, 3.8rem); }.landing .faq-layout { gap: 100px; }
.landing .faq-item summary { font-weight: 500; padding-block: 27px; }.landing .faq-item .icon { color: #ffae7c; width: 25px; height: 25px; border: 1px solid #ffffff20; padding: 4px; border-radius: 50%; }.landing .faq-answer { color: #adb6c7; padding-right: 25px; }.landing .faq-list { border-top-color: #ffffff1a; }
.landing .download-section { background: #090c13; padding-bottom: 95px; }
.landing .download-card { position: relative; isolation: isolate; overflow: hidden; border: 1px solid #ffac7040; border-radius: 23px; padding: 66px; background: linear-gradient(120deg, #302016, #191820 65%, #151c27); gap: 80px; }
.landing .download-card::before { content: '✳'; position: absolute; top: -130px; left: 25%; font-size: 500px; line-height: 1; color: #ffd8a807; z-index: -1; }
.landing .download-copy h2 { font-size: clamp(2rem, 3vw, 2.75rem); letter-spacing: -.055em; }.landing .download-copy > p:not(.eyebrow) { font-size: .85rem; color: #bdc0cb; }.landing .download-copy .eyebrow { color: #ffc08e; font-size: .55rem; }
.landing .store-badge { border-color: #ffffff2b; background: #090c1655; border-radius: 10px; }.landing .store-badge--soon { color: #c1c8d4; }.landing .store-badge strong { font-size: 1rem; }.landing .store-badge small { color: #a3aec3; }
.landing .community-links { justify-content: flex-start; }.landing .community-links a { font-size: .69rem; }
.landing .footer { background: #090c13; border-top-color: #ffffff13; padding-top: 0; color: #919db0; overflow: hidden; }
.footer-wordmark { display: flex; align-items: center; padding: 55px 0 65px; color: #f0f0eb; font-size: clamp(4rem, 12.7vw, 11rem); line-height: 1; font-weight: 750; letter-spacing: -.08em; }
.footer-wordmark .footer-word { color: #f0f0eb; white-space: nowrap; }.footer-wordmark .footer-win { color: #ffad72; }.footer-wordmark .wordmark-star { margin-left: auto; font-size: .8em; font-weight: 400; color: #ffad72; }
.landing .footer-top { padding-block: 0 40px; border-color: #ffffff15; }.landing .footer .brand { color: #eceff5; }.landing .footer .brand-win { color: #ffad72; }.landing .footer-col-title { color: #d3d9e5; }.landing .adult-label { color: #97a78f; }.landing .footer-socials a { border-color: #ffffff23; }
.landing .footer-bottom { color: #94a0b4; font-size: .68rem; }.landing .footer-legal { color: #8b96aa; max-width: 760px; font-size: .66rem; }

/* Ambient motion only runs when the scene is visible and the visitor allows it. */
html.motion-paused { scroll-behavior: auto; }
.motion-enabled .in-view .orbit-one { animation: orbit-drift 22s linear infinite; }
.motion-enabled .in-view .note-analysis { animation: float-analysis 6s ease-in-out infinite; }
.motion-enabled .in-view .note-live { animation: float-live 7s ease-in-out infinite; }
.motion-enabled .in-view .hero-aurora { animation: aura-breathe 8s ease-in-out infinite alternate; }
.motion-enabled .brand-ribbon.in-view .ribbon-track { animation: ribbon-travel 35s linear infinite; }
.motion-enabled .in-view .tactics-route { animation: passing-line 4s linear infinite; }
.motion-enabled .in-view .art-floating-tag { animation: float-live 7s ease-in-out infinite; }
.motion-enabled .in-view .match-timeline i { animation: marker-glow 3s ease-in-out infinite; }
.page-away *, .page-away *::before, .page-away *::after { animation-play-state: paused !important; }
.landing:not(.motion-enabled) *, .landing:not(.motion-enabled) *::before, .landing:not(.motion-enabled) *::after { animation: none !important; transition: none !important; }
@keyframes orbit-drift { from { transform: translate(-50%, -50%) rotate(-28deg) scaleY(.68); } to { transform: translate(-50%, -50%) rotate(332deg) scaleY(.68); } }
@keyframes float-analysis { 0%, 100% { transform: translateY(0) rotate(-5deg); } 50% { transform: translateY(-10px) rotate(-3deg); } }
@keyframes float-live { 0%, 100% { transform: translateY(0) rotate(3deg); } 50% { transform: translateY(8px) rotate(1deg); } }
@keyframes aura-breathe { from { opacity: .4; transform: scale(.9); } to { opacity: 1; transform: scale(1.08); } }
@keyframes ribbon-travel { to { transform: translateX(-50%); } }
@keyframes passing-line { to { stroke-dashoffset: -48; } }
@keyframes marker-glow { 50% { box-shadow: 0 0 17px 3px #fc9f5055; } }

@media (min-width: 1700px) { .landing .container { width: min(1400px, calc(100% - 140px)); }.landing .hero-layout { min-height: 805px; }.landing .hero h1 { font-size: 7rem; }.phone-perspective { width: 275px; }.landing .hero-showcase { height: 625px; } }
@media (max-width: 1150px) {
  .landing .container { width: calc(100% - 72px); }.landing .nav-links { gap: 18px; }.landing .nav-links a { font-size: .7rem; }.motion-toggle [data-motion-label] { display: none; }
  .landing .hero-layout { min-height: 680px; gap: 20px; }.landing .hero h1 { font-size: clamp(3.8rem, 7.2vw, 5.7rem); }.landing .hero-showcase { height: 515px; }.phone-perspective { width: 224px; }.landing .phone-frame { border-radius: 37px; }
  .note-analysis { top: 47px; left: -22px; }.note-live { right: -8px; bottom: 65px; }.floating-note { padding: 13px; gap: 10px; }.floating-note strong { font-size: .66rem; }.note-icon { width: 32px; height: 32px; }.floating-note div > span { font-size: .5rem; }
  .landing .hero-cta { gap: 15px; }.landing .hero-cta .btn { font-size: .78rem; gap: 16px; }.explore-link { font-size: .7rem; }.showcase-orbit { width: 410px; height: 410px; }.orbit-two { width: 490px; height: 490px; }
  .stage-panel { padding: 38px; gap: 28px; }.stage-art { height: 320px; }.tactics-board, .live-demo-card, .balance-demo { padding: 20px; }.stage-copy h3 { font-size: 2rem; }.art-floating-tag { font-size: .56rem; }
  .landing .feature-card { padding: 27px; }.landing .feature-card h3 { font-size: 1.4rem; }.landing .pricing-card { padding: 24px; }.landing .download-card { padding: 45px; gap: 45px; }
}
@media (max-width: 900px) {
  .landing .container { width: calc(100% - 56px); }.landing .navbar > .container { min-height: 76px; padding-block: 12px; }.landing .brand-name { font-size: 26px; }.landing .nav-links a { font-size: .78rem; }
  .landing .hero-layout { grid-template-columns: 1.04fr 1fr; padding-block: 50px; min-height: 650px; }.landing .hero h1 { font-size: 4.15rem; }.landing .hero h1 .title-spark { right: -1.1em; font-size: .32em; }.landing .hero-kicker { font-size: .48rem; letter-spacing: .1em; gap: 8px; }.kicker-line { width: 20px; }
  .landing .hero-subtitle { font-size: .88rem; }.landing .hero-showcase { height: 480px; }.phone-perspective { width: 200px; }.landing .phone-frame { border-radius: 33px; }.floating-note strong { font-size: .61rem; }.floating-note small { font-size: .43rem; }.note-analysis { left: -34px; top: 38px; }.note-live { bottom: 45px; right: -5px; }.note-analysis .note-icon, .note-live > .icon { display: none; }.floating-note div > span { font-size: .46rem; }
  .landing .hero-cta { gap: 9px; flex-wrap: wrap; }.landing .hero-cta .btn { min-height: 52px; }.explore-link { margin-left: 2px; }.landing .hero-availability { font-size: .57rem; }.landing .hero-bottom .hero-edition { display: none; }
  .landing .section { padding-block: 85px; }.landing .section-heading { gap: 30px; }.landing .section-heading > p { max-width: 240px; font-size: .83rem; }.landing .features-section { padding-top: 0; }
  .stage-panel { padding: 32px; grid-template-columns: 1fr 1fr; gap: 25px; min-height: 460px; }.stage-copy h3 { font-size: 1.65rem; }.stage-copy > p:not(.eyebrow) { font-size: .8rem; }.stage-benefits li { font-size: .66rem; }.stage-tabs button { font-size: .72rem; gap: 10px; padding-inline: 10px; }
  .stage-art { height: 280px; }.art-floating-tag { font-size: .5rem; padding: 10px; right: -10px; }.art-topline { font-size: .4rem; letter-spacing: .06em; }.art-data-row { gap: 5px; }.art-data-row span { font-size: .4rem; }.art-data-row strong { font-size: .53rem; }.tactics-board, .live-demo-card, .balance-demo { padding: 16px; }.balance-heading { font-size: 1.3rem; }.demo-score { font-size: 2rem; }.demo-team { font-size: .55rem; }.demo-team > span { width: 34px; height: 40px; }.demo-event strong { font-size: .58rem; }.demo-event small { font-size: .45rem; }.match-radar { width: 210px; height: 210px; }.balance-pills { gap: 6px; }.balance-pills span { font-size: .45rem; padding: 5px 8px; }
  .landing .feature-card { grid-column: span 6 !important; padding: 25px; }.landing .feature-label { font-size: .5rem; }.feature-index { right: 22px; top: 24px; font-size: .5rem; }.landing .feature-card h3 { font-size: 1.25rem; }.landing .feature-description { font-size: .77rem; }.landing .feature-facts { gap: 15px; }.landing .feature-facts span { max-width: 110px; }
  .landing .journey-layout { gap: 50px; }.landing .journey-intro h2 { font-size: 2.3rem; }.landing .journey-steps h3 { font-size: 1rem; }.landing .journey-steps p { font-size: .78rem; }.landing .journey-steps li { gap: 18px; }
  .landing .pricing-grid { gap: 12px; }.landing .pricing-card { padding: 21px 18px; }.landing .pricing-name { font-size: 1rem; }.landing .pricing-price { font-size: 3rem; }.landing .pricing-price--absent { font-size: .99rem; }.landing .pricing-card .btn { font-size: .68rem; padding-inline: 9px; gap: 5px; }.landing .pricing-features li { font-size: .73rem; }.landing .pricing-badge { font-size: .5rem; padding: 5px 7px; }
  .landing .faq-layout { gap: 45px; }.landing .faq-intro h2 { font-size: 2.6rem; }.landing .download-card { padding: 36px; gap: 32px; }.landing .download-copy h2 { font-size: 2rem; }.footer-wordmark { padding-block: 40px 50px; }
}
@media (max-width: 680px) {
  .landing .container { width: calc(100% - 40px); }.landing .navbar > .container { min-height: 70px; gap: 10px; }.landing .brand-name { font-size: 25px; }.landing .nav-cta { display: none; }.landing .nav-actions { gap: 12px; }.motion-toggle { width: 36px; justify-content: center; }.landing .nav-toggle { border-color: #ffffff21; }
  .landing .mobile-nav a { font-size: .9rem; }
  .landing .hero-layout { display: flex; flex-direction: column; min-height: 0; gap: 0; padding-block: 40px 28px; }.landing .hero-content { width: 100%; }.landing .hero-kicker { font-size: .5rem; letter-spacing: .13em; }.kicker-line { width: 23px; }.landing .hero h1 { font-size: clamp(3.65rem, 13.5vw, 5.6rem); line-height: .98; margin-top: 27px; letter-spacing: -.073em; }.landing .hero h1 .title-spark { right: -1.45em; font-size: .38em; }
  .landing .hero-subtitle { font-size: .91rem; margin-top: 24px; line-height: 1.75; }.desktop-break { display: none; }.landing .hero-cta { margin-top: 25px; gap: 14px; flex-wrap: wrap; }.landing .hero-cta .btn { min-height: 52px; font-size: .75rem; gap: 15px; padding-left: 17px; }.explore-link { font-size: .65rem; gap: 7px; }.play-icon { width: 29px; height: 29px; }.button-arrow { width: 28px; height: 28px; }
  .landing .hero-availability { font-size: .56rem; margin-top: 15px; }.landing .hero-showcase { height: 470px; width: 100%; margin: 28px 0 0; }.phone-perspective { width: 208px; transform: rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, -9deg)) rotateZ(5deg); }.landing .phone-frame { border-radius: 34px; }
  .note-analysis { left: 0; top: 28px; }.note-live { right: 0; bottom: 55px; }.floating-note { padding: 13px; border-radius: 10px; }.floating-note strong { font-size: .65rem; }.floating-note small { font-size: .42rem; }.floating-note div > span { font-size: .47rem; }.note-live > .icon { display: block; width: 21px; }.showcase-coordinate { right: 2px; top: 55px; font-size: .38rem; }.showcase-orbit { width: 390px; height: 390px; }.orbit-two { width: 460px; height: 460px; }
  .landing .hero-showcase figcaption { font-size: .5rem; bottom: -8px; }.stadium-backdrop { background-position: 66% bottom; opacity: .85; background-size: auto 74%; background-repeat: no-repeat; }.hero-aurora { top: auto; right: -190px; bottom: 40px; width: 700px; height: 550px; }
  .landing .hero-bottom .container { min-height: 88px; flex-direction: column; gap: 7px; padding-block: 14px; }.landing .hero-bottom span { font-size: .48rem; }.landing .hero-bottom a { font-size: .63rem; min-height: 32px; }.landing .hero-bottom .scroll-indicator { width: 22px; height: 27px; }.brand-ribbon { padding-block: 17px; }.ribbon-track > span { font-size: 1.35rem; gap: 26px; padding-right: 26px; }
  .landing .section { padding-block: 65px; }.landing .section-heading { margin-bottom: 30px; display: block; }.landing .section-heading h2 { font-size: 2.45rem; margin-top: 16px; }.landing .section-heading > p { font-size: .87rem; max-width: 340px; margin-top: 20px; }.landing .eyebrow { font-size: .55rem; }
  .experience-shell { border-radius: 15px; }.stage-tabs { gap: 4px; padding: 6px; }.stage-tabs button { min-height: 64px; flex-direction: column; gap: 4px; font-size: .64rem; padding: 10px 5px; line-height: 1.3; border-radius: 9px; text-align: center; }.stage-tabs button span { font-size: .48rem; }.stage-panel { display: flex; flex-direction: column; align-items: stretch; padding: 26px 23px 39px; gap: 24px; }.stage-copy h3 { font-size: 1.9rem; }.stage-copy > p:not(.eyebrow) { font-size: .83rem; margin-top: 17px; }.stage-benefits { margin-top: 19px; gap: 11px; }.stage-benefits li { font-size: .7rem; }.stage-copy .text-link { margin-top: 15px; font-size: .7rem; }
  .stage-art { height: 292px; width: 100%; max-width: 400px; margin-inline: auto; }.art-topline { font-size: .43rem; }.art-floating-tag { right: -4px; bottom: -3px; font-size: .52rem; }.art-data-row span { font-size: .44rem; }.art-data-row strong { font-size: .58rem; }.illustration-label { font-size: .49rem; bottom: -24px; }.tactics-board, .live-demo-card, .balance-demo { padding: 19px; }.demo-score { font-size: 2.4rem; }.demo-team > span { width: 36px; height: 44px; }.demo-event strong { font-size: .65rem; }.demo-event small { font-size: .49rem; }.balance-heading { font-size: 1.45rem; }
  .landing .features-section { padding-top: 0; }.landing .features-grid { grid-template-columns: 1fr; gap: 15px; }.landing .feature-card { grid-column: auto !important; min-height: 0; padding: 25px; }.landing .feature-card h3 { font-size: 1.4rem; }.landing .feature-top { margin-bottom: 21px; }.landing .feature-description { font-size: .83rem; }.landing .feature-label { font-size: .53rem; }.landing .feature-facts { gap: 18px; }.landing .feature-facts span { font-size: .56rem; max-width: 125px; }.landing .feature-facts strong { font-size: .71rem; }.feature-index { top: 29px; }.feature-decoration { bottom: 100px; }
  .landing .journey-layout { display: block; }.landing .journey-intro h2 { font-size: 2.45rem; }.landing .journey-steps { margin-top: 24px; }.landing .journey-steps h3 { font-size: 1.06rem; }.landing .journey-steps p { font-size: .83rem; }.landing .journey-steps li { padding-block: 22px; gap: 20px; }
  .landing .pricing-section .section-heading h2 { font-size: 2.25rem; }.landing .pricing-grid { grid-template-columns: 1fr; gap: 20px; }.landing .pricing-card { padding: 28px; }.landing .pricing-name { font-size: 1.3rem; }.landing .pricing-price { font-size: 3.6rem; }.landing .pricing-price--absent { font-size: 1.3rem; min-height: 72px; }.landing .pricing-features li { font-size: .86rem; }.landing .pricing-card .btn { font-size: .81rem; }.landing .pricing-badge { font-size: .64rem; padding: 6px 10px; }.landing .pricing-period { font-size: .8rem; }.landing .pricing-note { font-size: .7rem; }.landing .comparison-disclosure > summary { padding: 19px; font-size: .78rem; }
  .landing .faq-layout { display: block; }.landing .faq-intro h2 { font-size: 2.7rem; }.landing .faq-intro > p:not(.eyebrow) { font-size: .85rem; }.landing .faq-item summary { font-size: .85rem; padding-block: 22px; }.landing .faq-answer { font-size: .82rem; padding-right: 8px; }
  .landing .download-section { padding-bottom: 54px; }.landing .download-card { padding: 31px 25px; border-radius: 18px; }.landing .download-copy h2 { font-size: 2rem; }.landing .download-copy .eyebrow { font-size: .5rem; }.landing .download-copy > p:not(.eyebrow) { font-size: .83rem; }.landing .download-actions { margin-top: 30px; }.landing .community-links { justify-content: center; }.landing .store-badge { padding-inline: 18px; }
  .footer-wordmark { font-size: 15.8vw; padding-block: 35px 42px; }.footer-wordmark .wordmark-star { font-size: .65em; }.landing .footer-top { gap: 30px 25px; }.landing .footer-col-title { font-size: .7rem; }.landing .footer-col a { font-size: .72rem; }.landing .footer-tagline { font-size: .75rem; }.landing .footer-legal { font-size: .64rem; }
}
@media (max-width: 360px) {
  .landing .container { width: calc(100% - 32px); }.landing .hero h1 { font-size: 3.5rem; }.landing .hero h1 .title-spark { right: -1.12em; font-size: .3em; }.landing .hero-cta { flex-direction: row; gap: 9px; }.landing .hero-subtitle { font-size: .85rem; }.landing .hero-kicker { font-size: .43rem; }.landing .hero-cta .btn { width: 100%; justify-content: space-between; font-size: .81rem; }.explore-link { font-size: .74rem; margin-top: 5px; }.landing .hero-showcase { height: 425px; }.phone-perspective { width: 185px; }.landing .phone-frame { border-radius: 30px; }.note-analysis { top: 30px; }.note-live { bottom: 45px; }.floating-note strong { font-size: .58rem; }.floating-note small { font-size: .38rem; }.floating-note div > span { font-size: .41rem; }.note-live > .icon { display: none; }
  .landing .section-heading h2 { font-size: 2.15rem; }.stage-panel { padding-inline: 19px; }.stage-copy h3 { font-size: 1.65rem; }.stage-tabs button { font-size: .57rem; }.stage-art { height: 260px; }.art-data-row strong { font-size: .5rem; }.art-topline { font-size: .37rem; }.art-floating-tag { font-size: .45rem; }.landing .feature-card { padding: 23px; }.landing .feature-facts span { max-width: 105px; }.landing .pricing-section .section-heading h2 { font-size: 1.95rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }.landing *, .landing *::before, .landing *::after { animation: none !important; transition: none !important; }.phone-perspective { transform: rotate(4deg) !important; }
}
@media print {
  .brand-ribbon, .stage-art, .footer-wordmark, .motion-toggle { display: none; }.landing, .landing .hero, .landing .features-section, .landing .journey-section, .landing .faq-section, .landing .footer, .landing .experience-section { background: white; color: black; }.landing .stage-panel { display: block !important; padding: 20px; }.landing .stage-copy p, .landing .feature-description { color: #333; }.landing .features-grid { display: block; }.landing .feature-card { background: white; color: black; margin-bottom: 15px; }.landing .hero h1 > span:not(.title-spark) { background: none; -webkit-text-fill-color: black; }.landing .section { padding-block: 30px; }
}
