/* Light has a direction; black surfaces stay black. Shared RU/EN landing. */
body{background:radial-gradient(ellipse 800px 700px at 100% 1600px,#ffffff06,transparent 70%),#050505}
.ambient-canvas{opacity:.55}
.site-header{backdrop-filter:none;background:linear-gradient(135deg,#242424e8,#090909dc 68%);border-color:#ffffff38;box-shadow:inset 0 1px #ffffff35,0 18px 50px #0009}
.site-header.is-scrolled{background:#0b0b0bee}
.hero::before{content:"";display:block;position:absolute;inset:-90px -20vw -20px;width:auto;height:auto;border-radius:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 76% 30%,#ffffff1f,transparent 47%),linear-gradient(118deg,transparent 38%,#ffffff09 44%,#ffffff20 47%,#ffffff04 53%,transparent 59%);mask-image:linear-gradient(#000 50%,transparent 100%);-webkit-mask-image:linear-gradient(#000 50%,transparent 100%)}
.hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;top:150px;right:-130px;width:clamp(350px,65vw,850px);height:90px;background:linear-gradient(0deg,transparent,#ffffff10 40%,#ffffff32 50%,#ffffff09 60%,transparent);mask-image:linear-gradient(90deg,transparent,#000 22%,#000 85%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%,#000 85%,transparent);transform:rotate(-31deg);transform-origin:right;animation:landing-beam 18s ease-in-out 3}
.hero h1{color:#fff;text-shadow:0 5px 35px #0008}
.hero-copy h1>span:not(.headline-word) .headline-word{color:#e2e2e2!important}
.hero .eyebrow{background:#0b0b0ba8;border-color:#ffffff40;box-shadow:inset 0 1px #ffffff12}
.hero-lead{color:#d0d0d0}.hero-proof,.hero-other{color:#c4c4c4}
.core-scene::before{background:radial-gradient(ellipse,#ffffff16,transparent 67%)}
.button-primary,.plan-button:not(.secondary),.header-cta{background:linear-gradient(120deg,#fff 5%,#ececec 55%,#c9c9c9);color:#111;border-color:#ffffffb0;box-shadow:inset 0 1px #fff,0 5px 26px #ffffff26,0 8px 22px #0006}
.button-secondary{background:linear-gradient(145deg,#ffffff14,#ffffff04);border-color:#ffffff45;color:#eee;box-shadow:inset 0 1px #ffffff16}
.section-head h2{color:#fff;text-shadow:0 4px 30px #ffffff08}.section-head>p:last-child{color:#c3c3c3}
.section-label{color:#c9c9c9}.section-label>span{background:#fff;box-shadow:0 0 12px #ffffff40}
.story-card,.platform-card{background:radial-gradient(ellipse at 0 0,#ffffff17,transparent 65%),#0c0c0c;border-color:#ffffff38;box-shadow:inset 0 1px #ffffff42,0 20px 45px #0006}
.story-card h3,.platform-card h3{color:#fff;font-weight:600}.story-card p{color:#c8c8c8}.story-index{color:#b2b2b2}
.story-card::after,.platform-card::after{background:radial-gradient(400px circle at var(--light-x,50%) var(--light-y,0%),#ffffff24,transparent 68%)}
.section.devices,.section.trust{background:linear-gradient(90deg,#050505,#101010 50%,#050505)}
.locations-panel{background:radial-gradient(ellipse at 18% 20%,#ffffff12,transparent 65%),#0b0b0b;border-color:#ffffff35;box-shadow:inset 0 1px #ffffff30,0 25px 45px #0005}
.free-card{background:#0c0c0c;border-color:#ffffff25}
.pro-card{background:radial-gradient(ellipse at 80% 0,#ffffff24,transparent 65%),linear-gradient(145deg,#202020,#080808);border-color:#ffffff70;box-shadow:inset 0 1px #ffffff80,0 0 45px #ffffff06,0 25px 50px #0006}
.privacy-panel,.referral-card{background:radial-gradient(ellipse at 0 0,#ffffff15,transparent 60%),#0b0b0b;border-color:#ffffff35;box-shadow:inset 0 1px #ffffff30}
.final-cta{background:linear-gradient(120deg,transparent 40%,#ffffff0c 49%,transparent 58%),radial-gradient(ellipse at 50% 100%,#ffffff22,transparent 65%),#050505}
.page-hidden .hero::after{animation-play-state:paused}
@keyframes landing-beam{50%{opacity:.45;transform:rotate(-27deg) translateX(-50px)}}
@media(hover:hover){.button-primary:hover,.plan-button:not(.secondary):hover{box-shadow:inset 0 1px #fff,0 7px 36px #ffffff40,0 12px 24px #0006}.story-card:hover,.platform-card:hover{border-color:#ffffff65}}
@media(max-width:700px){.hero::before{inset:0 -35% 0;background:radial-gradient(ellipse at 75% 22%,#ffffff20,transparent 43%),linear-gradient(116deg,transparent 38%,#ffffff16 47%,transparent 56%)}.hero::after{top:120px;right:-85px;width:480px;height:60px;opacity:.65}.site-header{background:linear-gradient(120deg,#292929eb,#0a0a0ae6)}.section.devices,.section.trust{background:#080808}}
@media(prefers-reduced-motion:reduce){.hero::after{animation:none}}

/* A short path from the first screen to installation; monochrome contrast. */
[hidden]{display:none!important}
.welcome-terms{max-width:510px;font-size:13px;line-height:1.6;color:#c2c2c2;margin:12px 0}
.welcome-trial{font-weight:650;border-color:#ffffff80;background:linear-gradient(140deg,#fff2,#fff0)}
/* Three actions, one continuous path; the existing reveal observer drives motion. */
.setup-section{position:relative;background:radial-gradient(ellipse at 100% 0,#fff,transparent 65%),#ededed;color:#141414;border:1px solid #fff8;border-radius:32px;padding:48px;margin-top:40px;box-shadow:inset 0 1px #fff,0 24px 80px #0005}
.setup-section .section-head h2,.setup-section .section-head h2 .headline-word{color:#111!important;text-shadow:none}
.setup-section .section-head h2>span:not(.headline-word),.setup-section .section-head h2>span:not(.headline-word) .headline-word{color:#626262!important}
.setup-section .section-label,.setup-section .section-head>p:last-child{color:#484848}
.setup-section .section-label>span{background:#111;box-shadow:none}
.setup-section .demo-tabs{background:#dedede;border-color:#0002;margin-top:24px}
.setup-section .demo-tabs::before{background:none;box-shadow:none}
.setup-section .demo-tabs button{color:#444;background:none;border-radius:99px}
.setup-section .demo-tabs button[aria-pressed=true]{color:#fff;background:#171717;box-shadow:0 3px 10px #0002}
.setup-section .demo-tabs button:focus-visible,.setup-action:focus-visible{outline:2px solid #111;outline-offset:4px}
.setup-section .setup-grid{position:relative;gap:16px;margin-top:30px;padding-top:18px}
.setup-section .setup-grid::before{top:0;height:1px;background:linear-gradient(90deg,#999,#333,#999);transform:none;box-shadow:none}
.setup-section .setup-step{display:grid;grid-template-columns:1fr 112px;grid-template-rows:112px auto 1fr;gap:0 12px;padding:24px;min-width:0;overflow:hidden;border:1px solid #fff4;border-radius:22px;background:radial-gradient(ellipse at 95% 0,#ffffff18,transparent 60%),linear-gradient(145deg,#252525,#0c0c0c);box-shadow:inset 0 1px #ffffff40,0 12px 28px #0002}
.setup-section .setup-step>span,.setup-section .setup-step:hover>span{position:static;grid-column:1;grid-row:1;align-self:center;font-size:64px;font-weight:500;line-height:1;letter-spacing:-4px;margin:0;color:#f0f0f0;text-shadow:0 2px 24px #fff2;transform:none}
.setup-section .setup-step h3{grid-column:1/-1;margin:22px 0 10px;font-size:22px;line-height:1.25;color:#fff}
.setup-section .setup-step p{grid-column:1/-1;margin:0;font-size:13px;line-height:1.75;color:#cecece}
.setup-section .setup-step::after{background:linear-gradient(90deg,transparent,#fff,transparent);height:1px}
.setup-visual{grid-column:2;grid-row:1;position:relative;display:grid;place-items:center;border:1px solid #ffffff24;border-radius:50%;background:radial-gradient(circle,#ffffff13,transparent 70%);box-shadow:inset 0 0 24px #ffffff06}
.setup-visual::before{content:"";position:absolute;inset:12px;border:1px solid #ffffff14;border-radius:50%}
.setup-visual>svg{width:46px;height:46px;color:#f5f5f5;filter:drop-shadow(0 0 12px #fff4)}
.setup-visual .setup-download{position:absolute;bottom:14px;right:12px;width:26px;height:26px;padding:4px;border-radius:9px;background:#eee;color:#111;filter:none;box-sizing:content-box}
.setup-visual-1 .setup-device-windows{display:none}
.setup-section:has([data-demo-device=windows][aria-pressed=true]) .setup-device-android{display:none}
.setup-section:has([data-demo-device=windows][aria-pressed=true]) .setup-device-windows{display:block}
.setup-visual-3{background:radial-gradient(circle,#ffffff22,transparent 70%)}
.setup-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px}
.setup-section .setup-hint{color:#484848;margin:0;font-size:13px;line-height:1.6;max-width:560px}
.setup-section .setup-hint a{color:#171717;text-decoration:underline;text-underline-offset:3px}
.setup-action{display:inline-flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;min-height:48px;padding:0 20px;border-radius:99px;background:#171717;color:#fff;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s}
.setup-action svg{width:18px;height:18px}
@media(hover:hover){.setup-section .setup-step:hover{border-color:#ffffff70}.setup-action:hover{background:#373737}}
.tariff-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.tariff-row>button{min-width:0}
.plan-details{margin:16px 0;border-top:1px solid #ffffff30;padding-top:12px;color:#ccc}
.plan-details summary{cursor:pointer;font-size:13px;font-weight:600;padding:10px 0}.plan-details .slots-line{margin-top:8px}
.trial-line>a{display:block;color:#fff;text-decoration:underline;font-size:13px;margin-top:10px}
@media(max-width:700px){
 .hero .core-scene{--hero-play-height:clamp(230px,64vw,270px);height:auto;min-height:0;padding:var(--hero-play-height) 0 48px;margin-bottom:12px}
 .hero .core-particle-field{height:var(--hero-play-height)}
 .hero .core-button{inset:0 0 auto;width:100%;height:var(--hero-play-height)}
 .hero .ghost-progress{position:relative;inset:auto;transform:none;margin:12px auto 0}
 .hero .ghost-score-row{padding:9px 12px;gap:9px}.hero .ghost-score-row b{font-size:22px}
 .hero .ghost-badge{width:48px;height:48px}.hero .ghost-progress{font-size:11px}.hero .ghost-progress>[data-ghost-next]{font-size:9px}
 .hero h1{font-size:clamp(36px,10vw,45px);line-height:1.05}.hero .hero-lead{margin-block:14px;font-size:16px}
 .tariff-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tariff-row>button{padding:11px 10px}.tariff-row>button b{font-size:19px}
 .plan-card{padding:24px}.plan-card li{font-size:13px;padding-block:5px}.pro-columns{gap:4px}.slots-line{padding:10px 0}
}
.pro-card .tariff-row{margin:18px 0}.pro-card .tariff-row>button{min-height:76px;line-height:1.35}
@media(max-width:700px){.pro-card .pro-columns{grid-template-columns:1fr 1fr;gap:12px}.pro-card .plan-top>b{font-size:52px}.pro-card .plan-top{margin-bottom:0}.pro-card .trial-line{font-size:12px;line-height:1.5}.pro-card .trial-line>strong{font-size:14px}.pro-card .plan-button{margin-top:14px}}

@media(max-width:1000px){
 .setup-section{padding:28px 18px;border-radius:24px;margin-top:24px}.setup-section .section-head{margin-bottom:24px}.setup-section .section-head h2{font-size:36px}
 .setup-section .setup-grid{grid-template-columns:1fr;gap:12px;padding:0 0 0 14px;margin-top:24px}
 .setup-section .setup-grid::before{left:0;top:20px;bottom:20px;width:1px;height:auto;background:linear-gradient(#999,#333,#999)}
 .setup-section .setup-step{grid-template-columns:1fr 80px;grid-template-rows:80px auto 1fr;padding:20px;gap:0 12px;border-radius:18px}
 .setup-section .setup-step>span{font-size:50px;letter-spacing:-3px}.setup-section .setup-step h3{margin:12px 0 8px;font-size:21px}.setup-section .setup-step p{font-size:13px;line-height:1.65}
 .setup-visual>svg{width:36px;height:36px}.setup-visual .setup-download{width:20px;height:20px;right:0;bottom:6px}
 .setup-footer{flex-direction:column;align-items:stretch;gap:18px;margin-top:22px}.setup-action{align-self:flex-start}
}

/* Paint the atmospheric backdrop once; only its composited layer drifts. */
.ambient-canvas{animation:ambient-drift 24s ease-in-out infinite alternate;will-change:transform}
@keyframes ambient-drift{from{transform:scale(1.06) translate(-1%,-.5%)}to{transform:scale(1.06) translate(1%,.5%)}}
.page-hidden .ambient-canvas,.account-overlay-open .ambient-canvas{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.ambient-canvas{animation:none;transform:none;will-change:auto}}
@media(max-width:700px){.site-header,.site-header.is-scrolled,.mobile-menu nav,.mobile-dock,.ghost-progress{backdrop-filter:none;background-color:#151515}.account-overlay::backdrop,.progress-dialog.ghost-ranking::backdrop{backdrop-filter:none}.privacy-panel,.referral-card{backdrop-filter:none}}
/* Reveals move as a layer instead of blurring text during every scroll. */
.motion-ready [data-reveal]{filter:none;transition:opacity .4s,transform .5s cubic-bezier(.16,1,.3,1)}
/* Overscan and viewport bounds already contain the particles; no full-surface mask pass. */
.core-particle-field>.core-particles{mask-image:none;-webkit-mask-image:none}

/* Every country owns its live indicators; transitions run only on actual changes. */
.location-choice{display:grid;grid-template-columns:32px minmax(0,1fr) 106px;gap:12px;min-height:130px}
.location-choice .country-flag{width:32px;height:22px}
.location-choice em{margin:0;font-size:10px;color:#c8c8c8;white-space:normal;line-height:1.4}
.location-choice>.location-telemetry{display:grid;gap:5px;text-align:right;align-self:center}
.location-telemetry strong{font-size:23px;line-height:1.15;letter-spacing:-.035em;font-weight:550;color:#f5f5f5;font-variant-numeric:tabular-nums}
.location-choice .location-telemetry small{font-size:10px;color:#bcbcbc}
.location-choice>.location-bars{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%}
.location-stat{display:grid;gap:7px;min-width:0}
.location-stat>span:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:5px;color:#ccc;font-size:10px}
.location-choice .location-stat em{font-size:11px;font-style:normal;font-weight:550;color:#eee;white-space:nowrap;font-variant-numeric:tabular-nums}
.location-meter{display:block;height:4px;width:100%;background:#ffffff1c;border-radius:9px;overflow:hidden}
.location-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#777,#fff);transition:width .7s ease}
.location-meter[data-fresh=false]{opacity:.3}
.location-throughput{display:block;font-size:10px;color:#b5b5b5;line-height:1.4;font-variant-numeric:tabular-nums}
.location-live{margin:8px 0 22px;padding:16px;border:1px solid #ffffff20;border-radius:18px;background:radial-gradient(ellipse at 0 0,#ffffff0c,transparent 75%),#101010;box-shadow:inset 0 1px #ffffff12}
.location-live-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.location-live-head>span{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.08em;color:#ddd}
.location-live-head i{width:5px;height:5px;border-radius:50%;background:#777;flex-shrink:0}
.location-live[data-complete=true] .location-live-head i{background:#fff;box-shadow:0 0 8px #ffffff40}
.location-live-head>small{font-size:10px;text-align:right;color:#bcbcbc;font-variant-numeric:tabular-nums}
.location-live-note{font-size:11px;color:#c5c5c5;line-height:1.6;margin:12px 0 0}
.location-method{margin-top:14px;border-top:1px solid #ffffff20;padding-top:10px}
.location-method summary{font-size:11px;color:#ddd;cursor:pointer;padding:5px 0;min-height:24px}
.location-method p{font-size:11px;line-height:1.7;color:#bbb;margin:10px 0 0}
.location-method summary:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:3px}
@media(max-width:700px){.location-choice{grid-template-columns:28px minmax(0,1fr) 86px;gap:10px}.location-choice .country-flag{width:28px;height:19px}.location-telemetry strong{font-size:21px}.location-choice .location-telemetry small{font-size:9px}.location-choice>.location-bars{gap:14px}.location-stat>span:first-child{font-size:9px}.location-choice .location-stat em{font-size:10px}.location-live{padding:14px}.location-live-head{align-items:flex-start;gap:8px}.location-live-head>span{font-size:8px}.location-live-head>small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.location-meter i{transition:none}}

.location-choice>.location-row-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 12px;min-width:0}
.location-status{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:550;line-height:1.5;color:#ddd;min-width:0}
.location-status::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:#666}
.location-choice[data-state=responding] .location-status::before{background:#eee;box-shadow:0 0 7px #fff3}
.location-choice[data-state=busy] .location-status{color:#e5cf9a}.location-choice[data-state=busy] .location-status::before{background:#d4b467}
.location-choice[data-state=no-response]{border-color:#ffffff45}.location-choice[data-state=no-response] .location-status{color:#f3b2ae}.location-choice[data-state=no-response] .location-status::before{background:#dd8e89}
.location-choice[data-state=unknown] .location-status{color:#aaa}
