/* The same blue light carries the story; quiet surfaces keep the content clear. */
.home-page #main { position: relative; isolation: isolate; }
.connection-thread { position: absolute; inset: 0 auto auto 0; width: 100%; pointer-events: none; overflow: visible; z-index: 3; }
.connection-thread path { fill: none; stroke-linecap: round; }
.thread-track { stroke: #699fe51a; stroke-width: 1; }
.thread-glow,.thread-core { stroke: url(#thread-light); stroke-dasharray: 1; stroke-dashoffset: var(--thread-offset,1); }
.thread-glow { stroke-width: 7; opacity: .15; }
.thread-core { stroke-width: 1.6; }
.network-live { width: fit-content; max-width: 100%; display: flex; align-items: center; gap: 14px; padding: 15px 20px; margin: -10px 0 28px; border: 1px solid #8eaedb24; border-radius: 16px; background: #0d1521; transition: border-color .3s,background .3s; }
.network-live:hover { background: #122033; border-color: #8eaedb60; }
.network-live-dot { width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; background: #8b9ab0; box-shadow: 0 0 0 5px #8b9ab010; }
.network-live[data-state=green] .network-live-dot { background: #98dfb2; box-shadow: 0 0 0 5px #98dfb210; }
.network-live[data-state=yellow] .network-live-dot { background: #ebc785; }
.network-live[data-state=red] .network-live-dot { background: #f59a9a; }
.network-live-copy { display: grid; gap: 3px; }
.network-live-copy strong { font-size: .875rem; font-weight: 550; }
.network-live-copy > span { font-size: .75rem; color: #91a8c3; }
.network-live > svg { width: 18px; height: 18px; margin-left: 10px; color: #91b8e8; }
.setup-clients button { position: relative; overflow: hidden; }
.setup-clients button::before { content: ''; position: absolute; inset: auto 20% 0; height: 1px; background: #c2e6ff; box-shadow: 0 0 16px 3px #69b4ff66; transform: scaleX(0); transition: transform .45s var(--ease); }
.setup-clients button[aria-pressed=true]::before { transform: scaleX(1); }
.client-flight { position: fixed; width: 36px; height: 36px; max-width: none; z-index: 180; border-radius: 10px; pointer-events: none; box-shadow: 0 8px 30px #03102466; }
.setup-showcase.is-switching .setup-stage { border-color: #8bc6ff66; }
.setup-message-client { display: flex; align-items: center; gap: 10px; }
.setup-message-client img { width: 28px; height: 28px; flex-shrink: 0; border-radius: 8px; }
.setup-stage { transition: border-color .45s,box-shadow .45s; }
.setup-stage[data-step="2"] { box-shadow: 0 0 55px #65aaff0a; }
.plan-configurator { display: grid; grid-template-columns: 1.15fr 1fr; border: 1px solid #9dbce632; border-radius: 28px; overflow: hidden; background: #0b1018; }
.plan-choice { padding: clamp(28px,4vw,68px); }
.plan-choice > .eyebrow { font-size: .75rem; letter-spacing: .12em; color: #93b8e4; }
.plan-choice h3 { margin-top: 18px; font-size: clamp(1.9rem,3vw,3.5rem); font-weight: 550; line-height: 1.12; letter-spacing: -.05em; }
.plan-choice > p { margin-top: 18px; color: #a1b0c5; font-size: 1rem; line-height: 1.7; }
.plan-options { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; margin-top: 30px; padding: 6px; border: 1px solid #9ebbe324; border-radius: 20px; background: #070c14; }
.plan-options button { z-index: 1; min-height: 82px; padding: 12px 6px; border: none; border-radius: 14px; background: transparent; color: #96a8c0; transition: color .35s; }
.plan-options button strong { display: block; font-size: 1.6rem; line-height: 1.3; font-weight: 500; }
.plan-options button span { font-size: .75rem; }
.plan-options button[aria-checked=true] { color: #f2f8ff; }
.plan-selection { position: absolute; top: 0; left: 0; border: 1px solid #98c4ff68; background: linear-gradient(140deg,#2e4e75,#15273d); border-radius: 14px; box-shadow: inset 0 1px #d7eaff30,0 4px 18px #0005; transition: transform .5s var(--ease),width .5s var(--ease),height .5s var(--ease); }
.plan-inclusions { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 22px; padding: 0; margin: 32px 0 0; list-style: none; }
.plan-inclusions li { position: relative; padding-left: 19px; color: #bdcce0; font-size: .875rem; }
.plan-inclusions li::before { content: ''; position: absolute; left: 1px; top: 7px; width: 5px; height: 8px; border: solid #95bff3; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
.plan-summary { position: relative; display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(28px,4vw,64px); border-left: 1px solid #8eacd526; background: radial-gradient(ellipse at 95% 0,#2757994d,transparent 68%),#0d1826; }
.plan-summary-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; color: #bdd0e8; font-size: .875rem; }
.plan-saving-badge { display: inline-flex; justify-content: center; min-width: 58px; padding: 5px 9px; background: #a8d99a15; color: #b7e5af; border: 1px solid #b5db9a30; border-radius: 999px; font-size: .8125rem; }
.plan-amount { display: flex; align-items: baseline; gap: 12px; margin-top: 22px; white-space: nowrap; }
.plan-amount strong { font-size: clamp(3.5rem,6vw,6.8rem); line-height: 1.15; letter-spacing: -.065em; font-weight: 500; font-variant-numeric: tabular-nums; }
.plan-amount > span { font-size: 1.7rem; color: #9caec5; }
.plan-monthly { color: #adc3df; font-size: 1rem; min-height: 26px; }
.plan-economy { display: grid; grid-template-columns: 1fr auto; gap: 5px 10px; padding-block: 22px; margin-block: 22px; border-block: 1px solid #a1c0eb20; font-size: .875rem; }
.plan-economy > span { color: #a4b7d0; }
.plan-economy strong { color: #c0eab7; font-weight: 500; font-variant-numeric: tabular-nums; }
.plan-economy small { grid-column: 1/-1; color: #869fbd; font-size: .75rem; }
.plan-purchase { width: 100%; min-height: 54px; font-size: .9375rem; justify-content: center; }
.plan-payment-note { margin-top: 13px; color: #8fa6c2; font-size: .75rem; text-align: center; }
.mobile-connect { display: none; }
@media (hover:hover) and (pointer:fine) {
  .setup-clients button:hover img { transform: translateY(-2px); }
  .setup-clients img { transition: transform .35s var(--ease); }
  .plan-options button:hover { color: #e7f1ff; }
}
.home-page .button:active { scale: .975; }
.home-page .button { transition: background .3s,border-color .3s,box-shadow .3s,transform .35s var(--ease),scale .2s; }
.home-page .text-link .link-arrow { transition: transform .35s var(--ease); }
.home-page .text-link:hover .link-arrow { transform: translate(2px,-2px); }
.home-page .faq-list details { border-radius: 12px; transition: background .35s,border-color .35s; }
.home-page .faq-list details[open] { background: #14203366; }
.home-page .faq-list summary { padding-inline: 14px; }
.home-page .faq-answer { padding-inline: 14px; }
.home-page .quick-facts { margin-block: 20px; }
.home-page .devices-section { padding-bottom: 110px; }
@media (max-width: 900px) { .plan-configurator { grid-template-columns: 1fr; } .plan-summary { border-left: 0; border-top: 1px solid #8eacd526; } .plan-amount strong { font-size: clamp(3.8rem,11vw,6rem); } }
@media (max-width: 700px) {
  .cinema.mobile-story { height: calc(var(--stage-height) * 2.7); }
  .thread-glow { stroke-width: 4; opacity: .13; }
  .thread-core { stroke-width: 1.2; }
  .home-page .section { padding-block: 64px; }
  .home-page .section-heading { margin-bottom: 30px; }
  .home-page .quick-facts { margin-block: 0; }
  .network-live { width: 100%; padding: 14px 16px; margin-top: 0; }
  .network-live > svg { margin-left: auto; flex-shrink: 0; }
  .network-live-copy { min-width: 0; }
  .plan-configurator { border-radius: 22px; }
  .plan-choice,.plan-summary { padding: 25px 22px; }
  .plan-choice h3 { font-size: 2rem; }
  .plan-choice > p { font-size: .9375rem; }
  .plan-options { margin-top: 24px; }
  .plan-options button { min-height: 72px; }
  .plan-inclusions { grid-template-columns: 1fr; gap: 12px; margin-top: 25px; }
  .plan-amount { margin-top: 16px; }
  .plan-economy { margin-block: 18px; padding-block: 18px; }
  .plan-summary-top { font-size: .8125rem; }
  .plan-purchase { font-size: .875rem; padding-inline: 12px; }
  .setup-topline { flex-wrap: wrap; }
  .setup-kicker { font-size: .75rem; letter-spacing: .07em; }
  .setup-guide { border-radius: 22px; }
  .setup-step-copy strong { font-size: .75rem; }
  .setup-stage { min-height: 505px; }
  .setup-scene-caption,.setup-import-description { font-size: .8125rem; }
  .setup-screen-source { font-size: .75rem; line-height: 1.55; }
  .setup-scene[data-setup-scene="1"] { justify-content: flex-start; padding-top: 5px; }
  .setup-install-art { height: 255px; flex-shrink: 0; }
  .setup-store-image { height: 248px; }
  .setup-scene-caption.setup-install-description { margin-top: 14px; }
  .setup-selector-label,.setup-platforms button,.setup-play,.setup-platform-note,.setup-disclaimer { font-size: .8125rem; }
  .setup-downloads a { font-size: .875rem; }
  .mobile-connect { position: fixed; z-index: 95; bottom: max(10px,env(safe-area-inset-bottom)); left: 12px; right: 12px; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px; border: 1px solid #94bcea42; border-radius: 20px; background: #0e1b2bf2; box-shadow: 0 10px 40px #0006; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
  .mobile-connect strong { display: block; font-size: .8125rem; font-weight: 550; }
  .mobile-connect > div > span { display: block; color: #9cb5d3; font-size: .75rem; margin-top: 3px; }
  .mobile-connect .button { min-height: 48px; padding: 12px 14px; font-size: .8125rem; gap: 8px; }
  .mobile-connect svg { width: 17px; height: 17px; }
  .home-page .site-footer { padding-bottom: calc(45px + env(safe-area-inset-bottom)); }
}
@media (max-width: 380px) { .plan-choice,.plan-summary { padding-inline: 18px; } .plan-options { gap: 2px; padding: 4px; } .plan-options button span { font-size: .75rem; } .mobile-connect > div { display: none; } .mobile-connect .button { width: 100%; } .setup-stage { min-height: 540px; } }
/* Large text and short screens use normal document flow, never clipped scenes. */
@media (max-width: 700px) and (max-height: 580px), (max-width: 340px) {
  .setup-ready .setup-stage { min-height: 0; }
  .setup-ready .setup-scene { position: relative; inset: auto; margin: 10px 16px 24px; padding-top: 0; }
  .setup-ready .setup-scene:not([data-active=true]) { display: none; }
  .mobile-connect { display: none; }
}
.motion-paused .connection-thread { opacity: .3; }
.setup-flow.setup-ready .setup-stage { min-height: 0; }
.setup-flow.setup-ready .setup-scene { position: relative; inset: auto; margin: 16px 22px 30px; }
.setup-flow.setup-ready .setup-scene:not([data-active=true]) { display: none; }
.motion-paused .thread-core,.motion-paused .thread-glow { stroke-dashoffset: 0; }
@media (prefers-reduced-motion:reduce) { html:not(.motion-enabled) .plan-selection { transition: none; } }
@media print { .connection-thread,.mobile-connect,.client-flight { display: none !important; } .plan-configurator { display: none !important; } .pricing-grid[hidden] { display: grid !important; } }

/* Keep navigation comfortable as the independent account is introduced. */
.nav-actions>a[href^="https://t.me/"]{display:none}
@media(max-width:540px){.nav-actions{gap:8px}.nav-actions>.button{padding:10px 12px}.nav-inner{gap:10px}.brand{gap:7px}.brand img{width:30px;height:30px}.brand>span{font-size:21px}}
