/* Sovyn landing page — original visual system */
:root {
  --ink: #070a10;
  --ink-soft: #111723;
  --night: #04070d;
  --paper: #f7f8fa;
  --white: #ffffff;
  --mist: #e9edf4;
  --muted: #6f7786;
  --line: rgba(10, 18, 33, .1);
  --blue: #4bd7ff;
  --blue-deep: #516eff;
  --cyan: #3ee1d1;
  --radius-xl: 34px;
  --radius-lg: 24px;
  --radius-md: 16px;
  --max: 1200px;
  --font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Inter", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body { margin: 0; font-family: var(--font); color: var(--ink); background: var(--paper); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { color: #021018; background: #83e8ff; }
.skip-link { position: fixed; z-index: 100; top: -100px; left: 24px; padding: 12px 15px; border-radius: 10px; background: #fff; color: #07101e; font-weight: 650; transition: top .2s ease; }
.skip-link:focus { top: 16px; }

.site-header { position: sticky; z-index: 30; top: 0; height: 67px; color: #eaf2ff; background: rgba(4,7,13,.74); border-bottom: 1px solid rgba(255,255,255,.07); backdrop-filter: blur(22px) saturate(1.35); -webkit-backdrop-filter: blur(22px) saturate(1.35); }
.nav-shell { width: min(var(--max), calc(100% - 56px)); height: 67px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 9px; width: max-content; }
.brand-mark { position: relative; width: 23px; height: 24px; display: inline-flex; align-items: center; justify-content: center; }
.brand-mark::before { content: ""; position: absolute; inset: 3px 1px; border-radius: 7px; background: linear-gradient(135deg, #5be7ff, #4b74fb 70%, #8277ff); transform: rotate(30deg); box-shadow: 0 0 12px rgba(76,202,255,.38); }
.brand-mark i { position: absolute; z-index: 1; display: block; width: 5px; height: 5px; border: 1.5px solid #e9faff; border-radius: 1px; transform: rotate(30deg); }
.brand-mark i:nth-child(1) { transform: translate(-4px, -2px) rotate(30deg); }
.brand-mark i:nth-child(2) { transform: translate(4px, -2px) rotate(30deg); }
.brand-mark i:nth-child(3) { transform: translate(0, 4px) rotate(30deg); }
.brand-name { color: #fff; font-size: 22px; font-weight: 650; line-height: 1; letter-spacing: -.08em; }
.desktop-nav { margin-left: 116px; display: flex; height: 100%; align-items: center; gap: 31px; }
.desktop-nav a, .language { color: rgba(235,242,254,.7); font-size: 13px; letter-spacing: -.01em; transition: color .2s ease; }
.desktop-nav a:hover, .language:hover { color: #fff; }
.nav-actions { display: flex; align-items: center; gap: 18px; }
.button { min-height: 46px; padding: 0 19px; display: inline-flex; gap: 9px; align-items: center; justify-content: center; width: max-content; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 650; letter-spacing: -.018em; line-height: 1; transition: transform .24s cubic-bezier(.2,.8,.2,1), background .24s ease, border-color .24s ease, box-shadow .24s ease; cursor: pointer; }
.button span { font-size: 15px; line-height: 1; }
.button:hover { transform: translateY(-2px); }
.button:focus-visible, .text-link:focus-visible, .desktop-nav a:focus-visible, .language:focus-visible, summary:focus-visible { outline: 3px solid rgba(91,231,255,.75); outline-offset: 4px; }
.button-small { min-height: 35px; padding: 0 15px; font-size: 12px; }
.nav-cta { color: #07121d; background: linear-gradient(135deg, #55e7ff, #8ddcff); box-shadow: 0 5px 18px rgba(59,196,255,.2); }
.nav-cta:hover { box-shadow: 0 8px 24px rgba(59,196,255,.32); }
.button-primary { color: #06121c; background: linear-gradient(135deg, #55e7ff 0%, #80dfff 100%); box-shadow: 0 10px 28px rgba(44,187,255,.22); }
.button-primary:hover { box-shadow: 0 14px 34px rgba(44,187,255,.34); }
.button-outline { color: #101a27; background: transparent; border-color: rgba(8,15,27,.21); }
.button-outline:hover { background: #fff; border-color: rgba(8,15,27,.42); box-shadow: 0 8px 24px rgba(16,25,38,.08); }
.text-link { display: inline-flex; align-items: center; gap: 10px; width: max-content; color: #1b3f88; font-size: 14px; font-weight: 650; letter-spacing: -.01em; transition: gap .2s ease, color .2s ease; }
.text-link b { font-size: 17px; font-weight: 400; }
.text-link:hover { gap: 15px; color: #255fd2; }
.text-link.light { color: rgba(241,247,255,.87); }
.text-link.light:hover { color: #8be9ff; }
.menu-button { display: none; width: 38px; height: 38px; padding: 0; border: 0; background: transparent; color: #fff; cursor: pointer; }
.menu-button span { display: block; width: 19px; height: 1.5px; margin: 5px auto; border-radius: 2px; background: currentColor; transition: transform .22s ease; }
.mobile-menu { display: none; }

.eyebrow { margin: 0 0 18px; color: #3e4a59; font-size: 12px; font-weight: 740; letter-spacing: .025em; text-transform: uppercase; }
.eyebrow.muted { color: #687386; }
.eyebrow-glow { display: inline-flex; align-items: center; gap: 8px; padding: 7px 11px; margin-bottom: 20px; border: 1px solid rgba(103,219,255,.11); border-radius: 99px; color: #64dfff; font-size: 11px; font-weight: 680; letter-spacing: .02em; text-transform: none; background: rgba(54,161,255,.09); }
.eyebrow-glow span { width: 5px; height: 5px; border-radius: 99px; background: #51e2ff; box-shadow: 0 0 0 4px rgba(77,217,255,.1), 0 0 13px #54e7ff; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-weight: 650; letter-spacing: -.055em; }
h2 { margin-bottom: 22px; font-size: clamp(42px, 5vw, 68px); line-height: .99; }
h2 span { color: #84909f; }
h1 em, h2 em { font-style: normal; background: linear-gradient(105deg, #5ee2ff 8%, #6da1ff 49%, #b4a3ff 90%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.section-dark { color: #f4f7fd; background: var(--night); }

.hero { position: relative; overflow: hidden; min-height: 785px; padding: 120px 28px 0; text-align: center; background: radial-gradient(ellipse 50% 44% at 50% 10%, rgba(22,107,191,.27), transparent 67%), radial-gradient(ellipse 34% 45% at 85% 38%, rgba(69,43,163,.17), transparent 75%), linear-gradient(180deg, #071529 0%, #030811 69%, #05080e 100%); }
.hero-content { position: relative; z-index: 2; max-width: 900px; margin: 0 auto; }
.hero h1 { max-width: 780px; margin: 0 auto 24px; color: #f4f8ff; font-size: clamp(45px, 6.2vw, 82px); line-height: .99; }
.hero-copy { max-width: 660px; margin: 0 auto; color: rgba(223,233,248,.74); font-size: clamp(16px, 1.8vw, 18px); line-height: 1.52; letter-spacing: -.02em; }
.hero-actions { display: flex; justify-content: center; align-items: center; gap: 28px; margin-top: 29px; }
.hero-note { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 15px 0 0; color: rgba(198,215,235,.46); font-size: 11px; letter-spacing: -.01em; }
.hero-note i, .final-cta small i { width: 3px; height: 3px; border-radius: 50%; background: currentColor; }
.hero-light { position: absolute; filter: blur(14px); opacity: .8; border-radius: 50%; pointer-events: none; }
.hero-light-one { width: 680px; height: 350px; top: 83px; left: calc(50% - 350px); background: radial-gradient(ellipse, rgba(20,156,255,.24), transparent 67%); }
.hero-light-two { width: 350px; height: 360px; top: 160px; left: 6%; background: radial-gradient(ellipse, rgba(63,214,239,.11), transparent 68%); }
.terminal-wrap { position: relative; z-index: 2; width: min(656px, 100%); margin: 50px auto 0; padding: 0 7px; }
.terminal { position: relative; overflow: hidden; border: 1px solid rgba(113,188,251,.16); border-radius: 18px 18px 0 0; background: linear-gradient(160deg, rgba(10,35,69,.88), rgba(4,16,38,.95) 75%); box-shadow: 0 40px 70px rgba(0,0,0,.38), 0 0 0 1px rgba(43,118,195,.05); text-align: left; }
.terminal::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(105deg, rgba(255,255,255,.05), transparent 26%); }
.terminal-head { position: relative; z-index: 1; height: 40px; padding: 0 16px; display: flex; align-items: center; justify-content: space-between; color: rgba(214,229,248,.5); border-bottom: 1px solid rgba(165,211,255,.08); font-size: 11px; }
.terminal-connected { display: inline-flex; gap: 6px; align-items: center; color: #68dfff; padding: 4px 8px; border-radius: 99px; background: rgba(54,161,255,.11); }
.terminal-connected i { width: 5px; height: 5px; border-radius: 50%; background: #52e4fc; box-shadow: 0 0 8px #52e4fc; }
.terminal-body { position: relative; z-index: 1; padding: 17px 16px 16px; display: grid; gap: 10px; }
.prompt-line { display: flex; justify-content: flex-end; }
.prompt-chip { padding: 11px 15px; color: #eaf8ff; border: 1px solid rgba(93,211,255,.12); border-radius: 15px 15px 3px 15px; background: linear-gradient(130deg, #195a9e, #134481); font-size: 12px; }
.terminal-reply { display: flex; gap: 10px; max-width: 91%; padding: 11px 14px; border-radius: 4px 15px 15px 15px; background: rgba(24,75,150,.46); color: rgba(222,235,250,.72); font-size: 11px; line-height: 1.55; }
.terminal-reply p { margin: 0; }
.terminal-final { background: rgba(25,97,119,.33); }
.status-dot { flex: 0 0 auto; width: 14px; height: 14px; border: 1px solid rgba(91,230,218,.6); border-radius: 50%; color: #6aeed8; font-size: 8px; font-weight: 800; line-height: 12px; text-align: center; }
.terminal-bottom { position: relative; z-index: 1; height: 34px; padding: 0 16px; display: flex; align-items: center; gap: 7px; color: rgba(178,207,239,.48); border-top: 1px solid rgba(165,211,255,.07); font-size: 9px; }
.terminal-bottom > span:first-child { color: #62e1ce; font-size: 8px; }.terminal-progress { width: 51px; height: 3px; margin-left: auto; overflow: hidden; border-radius: 5px; background: rgba(167,205,240,.15); }.terminal-progress b { display: block; width: 100%; height: 100%; border-radius: 5px; background: #5be3d2; }
.terminal-orbit { position: absolute; z-index: -1; border: 1px solid rgba(77,190,255,.08); border-radius: 50%; pointer-events: none; }.orbit-one { width: 700px; height: 230px; left: -28px; top: 100px; transform: rotate(-9deg); }.orbit-two { width: 850px; height: 310px; left: -105px; top: 62px; border-color: rgba(90,105,255,.07); transform: rotate(13deg); }
.hero-floor { position: absolute; z-index: 0; left: -5%; right: -5%; bottom: -86px; height: 230px; border-top: 1px solid rgba(90,157,255,.08); border-radius: 50% 50% 0 0 / 100% 100% 0 0; background: radial-gradient(ellipse at 50% 0, rgba(49,130,229,.08), transparent 63%); }

.tension-section { padding: 160px 28px 130px; background: #f7f8fa; }
.centered { text-align: center; }.section-intro.centered { max-width: 830px; margin: 0 auto; }.section-intro h2 { margin-bottom: 0; }.section-intro > p:last-child { margin: 18px auto 0; color: #6d7684; font-size: 17px; line-height: 1.55; }
.tension-list { width: min(1040px, 100%); margin: 82px auto 0; border-top: 1px solid var(--line); }
.tension-item { position: relative; display: grid; grid-template-columns: 105px minmax(0, 1fr) 30px; gap: 26px; padding: 39px 2px 41px; border-bottom: 1px solid var(--line); }
.tension-number { color: #a3acb8; font-size: 12px; font-weight: 700; letter-spacing: .06em; }.tension-item h3 { margin: 0 0 12px; color: #0b1019; font-size: clamp(25px, 3vw, 38px); line-height: 1.02; }.tension-item p { max-width: 625px; margin: 0; color: #687281; font-size: 16px; line-height: 1.55; letter-spacing: -.012em; }.item-arrow { justify-self: end; padding-top: 7px; color: #8792a1; font-size: 23px; transition: transform .25s ease, color .25s ease; }.tension-item:hover .item-arrow { color: #2d84dd; transform: translate(4px, 4px); }

.journey-section { position: relative; overflow: hidden; padding: 140px 28px 125px; background: radial-gradient(ellipse 65% 55% at 85% 45%, rgba(37,87,167,.21), transparent 65%), #07101f; }
.journey-aura { position: absolute; top: 220px; right: -260px; width: 720px; height: 720px; border: 1px solid rgba(79,181,255,.1); border-radius: 50%; box-shadow: 0 0 0 88px rgba(79,181,255,.025), 0 0 0 176px rgba(97,105,255,.018); }.journey-intro { position: relative; max-width: var(--max); margin: 0 auto 67px; }.journey-intro h2 { margin-bottom: 21px; }.journey-intro > p { max-width: 490px; margin: 0; color: rgba(220,230,246,.62); font-size: 17px; line-height: 1.52; }
.journey-steps { position: relative; width: min(var(--max), 100%); margin: 0 auto; padding: 0; list-style: none; border-top: 1px solid rgba(210,231,255,.13); }.journey-steps::before { content: ""; position: absolute; top: 0; bottom: 0; left: 126px; width: 1px; background: linear-gradient(#67dcff, rgba(98,126,255,.12) 80%); }.journey-step { position: relative; min-height: 155px; display: grid; grid-template-columns: 126px minmax(0, 1fr) 76px; gap: 38px; padding: 29px 16px 28px 0; border-bottom: 1px solid rgba(210,231,255,.13); }.step-index { position: relative; z-index: 1; padding-left: 1px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }.step-index span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(84,218,255,.48); border-radius: 50%; color: #80e7ff; background: #09213a; box-shadow: 0 0 0 8px #07101f; font-size: 13px; font-weight: 700; }.step-index small { padding-left: 2px; color: rgba(199,215,236,.46); font-size: 10px; line-height: 1.25; }.step-content { display: flex; justify-content: space-between; align-items: start; gap: 50px; }.step-content h3 { margin: 0; color: #f0f5ff; font-size: 29px; line-height: 1.1; }.step-content p { max-width: 475px; margin: 0; color: rgba(207,222,241,.63); font-size: 14px; line-height: 1.55; }.step-symbol { justify-self: end; width: 57px; height: 57px; display: grid; place-items: center; color: #6adeff; border: 1px solid rgba(85,192,255,.15); border-radius: 16px; background: linear-gradient(145deg, rgba(52,121,197,.19), rgba(14,32,65,.25)); font-size: 30px; }.symbol-link { position: relative; }.symbol-link span { position: absolute; width: 24px; height: 15px; border: 3px solid #78e9ff; border-radius: 10px; transform: rotate(-42deg); }.symbol-link span:first-child { transform: translate(-7px, 5px) rotate(-42deg); }.symbol-link span:last-child { transform: translate(7px, -5px) rotate(-42deg); }.symbol-scan { position: relative; }.symbol-scan::before, .symbol-scan::after, .symbol-scan span::before, .symbol-scan span::after { content: ""; position: absolute; width: 13px; height: 13px; border-color: #7de7ff; border-style: solid; }.symbol-scan::before { top: 15px; left: 15px; border-width: 2px 0 0 2px; }.symbol-scan::after { top: 15px; right: 15px; border-width: 2px 2px 0 0; }.symbol-scan span::before { bottom: 15px; left: 15px; border-width: 0 0 2px 2px; }.symbol-scan span::after { right: 15px; bottom: 15px; border-width: 0 2px 2px 0; }.symbol-spark { font-size: 34px; }.symbol-home { position: relative; }.symbol-home::before { content: ""; width: 25px; height: 22px; border: 2px solid #7de7ff; border-top: 0; border-radius: 2px; }.symbol-home span { position: absolute; top: 17px; width: 23px; height: 23px; border-top: 2px solid #7de7ff; border-left: 2px solid #7de7ff; transform: rotate(45deg); border-radius: 2px; }

.stack-section { position: relative; overflow: hidden; padding: 145px 28px 136px; background: linear-gradient(180deg, #f7f8fa 0%, #edf1f6 100%); }.stack-section::after { content: ""; position: absolute; right: -220px; bottom: -200px; width: 700px; height: 700px; border: 1px solid rgba(74,136,233,.08); border-radius: 50%; box-shadow: 0 0 0 88px rgba(74,136,233,.025), 0 0 0 176px rgba(74,136,233,.014); }
.stack-heading { position: relative; z-index: 1; width: min(var(--max), 100%); margin: 0 auto; }.stack-heading h2 { margin-bottom: 20px; }.stack-heading > p:last-child { max-width: 580px; margin: 0; color: #687382; font-size: 17px; line-height: 1.55; }.stack-visual { position: absolute; z-index: 1; top: 128px; left: calc(50% + 126px); width: 300px; height: 300px; }.stack-core { position: absolute; z-index: 2; top: 92px; left: 92px; width: 117px; height: 117px; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid rgba(59,151,226,.25); border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff, #dceeff); box-shadow: 0 12px 42px rgba(57,133,209,.16), inset 0 0 16px rgba(97,192,255,.18); }.stack-core .brand-mark { transform: scale(.86); }.stack-core b { margin-top: 4px; color: #153557; font-size: 12px; letter-spacing: -.03em; }.stack-core small { margin-top: 3px; color: #4f82ae; font-size: 8px; letter-spacing: .07em; text-transform: uppercase; }.ring { position: absolute; border: 1px solid rgba(45,135,211,.18); border-radius: 50%; }.ring-a { inset: 38px; }.ring-b { inset: 0; border-color: rgba(47,126,202,.11); }.ring-c { inset: -47px; border-color: rgba(47,126,202,.06); }.satellite { position: absolute; z-index: 2; width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid rgba(44,133,207,.25); border-radius: 50%; color: #347cb5; background: #f8fcff; box-shadow: 0 5px 14px rgba(46,116,185,.1); font-size: 9px; font-weight: 750; }.satellite-a { top: 19px; left: 51px; }.satellite-b { top: 41px; right: 19px; }.satellite-c { right: 43px; bottom: 11px; }
.capability-grid { position: relative; z-index: 2; width: min(var(--max), 100%); margin: 91px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }.capability-card { min-height: 256px; padding: 28px; border: 1px solid rgba(29,60,100,.1); border-radius: var(--radius-lg); background: rgba(255,255,255,.64); box-shadow: 0 8px 22px rgba(25,45,78,.025); transition: transform .3s cubic-bezier(.2,.8,.2,1), border-color .3s ease, box-shadow .3s ease; }.capability-card:hover { border-color: rgba(49,136,219,.24); box-shadow: 0 18px 34px rgba(25,54,88,.08); transform: translateY(-5px); }.capability-card h3 { margin: 23px 0 8px; color: #141c29; font-size: 19px; line-height: 1.1; }.capability-card p { min-height: 67px; margin: 0; color: #6b7584; font-size: 13px; line-height: 1.53; }.capability-card > span { display: inline-block; margin-top: 17px; color: #3d80b8; font-size: 10px; font-weight: 720; letter-spacing: .04em; text-transform: uppercase; }.capability-icon { position: relative; width: 40px; height: 40px; color: #267dbd; font-size: 29px; line-height: 36px; }.icon-host i { position: absolute; left: 4px; width: 30px; height: 7px; border: 1.5px solid #378bc6; border-radius: 3px; }.icon-host i:nth-child(1) { top: 3px; }.icon-host i:nth-child(2) { top: 15px; }.icon-host i:nth-child(3) { top: 27px; }.icon-host i::after { content: ""; position: absolute; top: 2px; right: 3px; width: 2px; height: 2px; border-radius: 50%; background: currentColor; box-shadow: -4px 0 currentColor; }.icon-db i { position: absolute; left: 7px; width: 27px; height: 10px; border: 1.5px solid #378bc6; border-radius: 50%; }.icon-db i:nth-child(1) { top: 4px; }.icon-db i:nth-child(2) { top: 14px; border-top: 0; border-radius: 0 0 50% 50%; }.icon-db i:nth-child(3) { top: 24px; border-top: 0; border-radius: 0 0 50% 50%; }.icon-users i { position: absolute; top: 5px; width: 13px; height: 13px; border: 1.5px solid #378bc6; border-radius: 50%; }.icon-users i:nth-child(1) { left: 6px; }.icon-users i:nth-child(2) { right: 6px; }.icon-users::after { content: ""; position: absolute; left: 4px; bottom: 3px; width: 31px; height: 15px; border: 1.5px solid #378bc6; border-bottom: 0; border-radius: 18px 18px 0 0; }.icon-file { border: 1.5px solid #378bc6; border-radius: 4px; }.icon-file::before { content: ""; position: absolute; top: -1px; right: -1px; width: 13px; height: 13px; border-left: 1.5px solid #378bc6; border-bottom: 1.5px solid #378bc6; border-radius: 0 4px 0 4px; background: #f9fdff; }.icon-file i { position: absolute; left: 8px; bottom: 8px; width: 20px; height: 1.5px; background: #378bc6; box-shadow: 0 -6px #378bc6; }.icon-chart { display: flex; align-items: flex-end; gap: 5px; padding: 3px 4px; border-bottom: 1.5px solid #378bc6; }.icon-chart i { width: 7px; background: #69bde8; border-radius: 2px 2px 0 0; }.icon-chart i:nth-child(1) { height: 15px; }.icon-chart i:nth-child(2) { height: 26px; }.icon-chart i:nth-child(3) { height: 21px; }

.ownership-section { position: relative; overflow: hidden; padding: 149px 28px 134px; background: radial-gradient(ellipse 54% 60% at 8% 45%, rgba(26,117,183,.22), transparent 67%), linear-gradient(120deg, #040914, #0d1323 70%, #060a13); }.ownership-content { position: relative; z-index: 2; width: min(var(--max), 100%); margin: 0 auto; }.ownership-content h2 { margin-bottom: 23px; }.ownership-lead { max-width: 585px; margin: 0; color: rgba(215,229,246,.64); font-size: 17px; line-height: 1.56; }.ownership-points { position: relative; z-index: 2; width: min(var(--max), 100%); margin: 84px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 58px; }.ownership-point { padding-top: 27px; border-top: 1px solid rgba(204,226,255,.16); }.point-glyph { display: block; height: 28px; margin-bottom: 22px; color: #6ce3ff; font-size: 24px; }.ownership-point h3 { margin: 0 0 12px; color: #eff6ff; font-size: 21px; line-height: 1.1; }.ownership-point p { margin: 0; color: rgba(208,223,243,.58); font-size: 14px; line-height: 1.55; }.ownership-orb { position: absolute; top: 117px; right: -110px; width: 575px; height: 575px; border: 1px solid rgba(119,211,255,.16); border-radius: 50%; box-shadow: 0 0 0 84px rgba(79,155,255,.035), 0 0 0 168px rgba(86,85,255,.025); }.ownership-orb::before { content: ""; position: absolute; inset: 79px; border: 1px solid rgba(122,220,255,.15); border-radius: 50%; }.ownership-orb div:first-child { position: absolute; top: 144px; left: 144px; width: 285px; height: 285px; border-radius: 48% 52% 60% 40% / 41% 43% 57% 59%; background: radial-gradient(circle at 35% 31%, rgba(135,231,255,.98), rgba(40,143,246,.68) 35%, rgba(52,42,158,.62) 66%, transparent 72%); filter: blur(4px); opacity: .62; }.ownership-orb div:last-child { position: absolute; top: 212px; left: 211px; width: 145px; height: 145px; border: 1px solid rgba(203,255,255,.55); border-radius: 50%; box-shadow: 0 0 38px rgba(96,217,255,.36); }

.backup-section { padding: 144px 28px 120px; background: #f8f9fb; }.backup-frame { width: min(var(--max), 100%); margin: 0 auto; display: grid; grid-template-columns: .88fr 1.12fr; gap: 76px; align-items: center; }.backup-copy h2 { margin-bottom: 22px; }.backup-copy > p:not(.eyebrow) { max-width: 463px; color: #667281; font-size: 16px; line-height: 1.58; }.backup-copy .text-link { margin-top: 9px; }.backup-console { overflow: hidden; border: 1px solid rgba(15,45,81,.14); border-radius: 20px; background: linear-gradient(160deg, #fff, #f1f7fc); box-shadow: 0 28px 64px rgba(20,54,91,.12), 0 2px 6px rgba(29,67,104,.04); }.console-top { height: 45px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; color: #64778e; border-bottom: 1px solid rgba(15,45,81,.08); font-size: 11px; font-weight: 700; }.console-dots { display: flex; gap: 4px; }.console-dots i { width: 6px; height: 6px; border-radius: 50%; background: #bac8d7; }.console-title { padding: 21px 22px 15px; display: flex; align-items: center; justify-content: space-between; }.console-title b { color: #20324b; font-size: 15px; }.console-title span { padding: 4px 7px; color: #238c78; border-radius: 99px; background: #ddf6ed; font-size: 9px; font-weight: 750; }.backup-timeline { position: relative; padding: 3px 22px 11px 53px; }.timeline-line { position: absolute; top: 16px; bottom: 28px; left: 30px; width: 1px; background: #c8d8e7; }.timeline-item { position: relative; min-height: 48px; padding: 0 0 15px; display: grid; grid-template-columns: 1fr auto; align-items: start; }.timeline-item > span { position: absolute; top: 1px; left: -27px; width: 10px; height: 10px; border: 2px solid #91a9c0; border-radius: 50%; background: #f6fbff; }.timeline-item.active > span { border-color: #48cbb9; box-shadow: 0 0 0 4px rgba(66,207,185,.14); }.timeline-item b { color: #32455d; font-size: 12px; }.timeline-item small { color: #78899c; font-size: 10px; }.timeline-item.active small { color: #289785; }.restore-panel { margin: 1px 14px 14px; padding: 13px 14px; display: flex; align-items: center; justify-content: space-between; border: 1px solid rgba(55,152,213,.16); border-radius: 12px; background: #eaf6ff; }.restore-panel > div { display: flex; gap: 9px; align-items: center; }.restore-panel i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: #228bc0; background: #d2eeff; font-style: normal; font-size: 18px; }.restore-panel span { display: grid; gap: 2px; }.restore-panel b { color: #29445e; font-size: 11px; }.restore-panel small { color: #6e879e; font-size: 9px; }.restore-button { padding: 8px 10px; border: 0; border-radius: 8px; color: #075a83; background: #aeeaff; font-size: 10px; font-weight: 720; cursor: pointer; transition: background .2s ease, color .2s ease; }.restore-button:hover { background: #72ddff; }.restore-button.is-restored { color: #087263; background: #9cecd7; }.backup-features { width: min(var(--max), 100%); margin: 105px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 52px; }.backup-features article { padding-top: 22px; border-top: 1px solid var(--line); }.backup-features span { color: #4389c4; font-size: 11px; font-weight: 720; }.backup-features h3 { margin: 15px 0 9px; color: #18202d; font-size: 20px; line-height: 1.1; }.backup-features p { max-width: 290px; margin: 0; color: #6d7786; font-size: 14px; line-height: 1.5; }

.pricing-section { padding: 146px 28px 125px; background: #eaf0f6; }.pricing-grid { width: min(var(--max), 100%); margin: 72px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; align-items: stretch; }.price-card { position: relative; min-height: 510px; padding: 31px; display: flex; flex-direction: column; border: 1px solid rgba(18,56,96,.11); border-radius: var(--radius-lg); background: rgba(255,255,255,.74); }.price-card-featured { color: #eff9ff; border-color: rgba(86,212,255,.3); background: radial-gradient(ellipse 120% 65% at 50% 0%, rgba(35,147,218,.3), transparent 65%), #07182c; box-shadow: 0 24px 46px rgba(16,61,111,.17); transform: translateY(-15px); }.popular { position: absolute; top: -14px; left: 50%; padding: 7px 13px; border-radius: 99px; color: #042231; background: #6be2ff; box-shadow: 0 4px 14px rgba(61,208,255,.25); font-size: 10px; font-weight: 780; letter-spacing: .03em; text-transform: uppercase; transform: translateX(-50%); }.price-card-top h3 { margin: 0 0 11px; color: #182333; font-size: 25px; }.price-card-featured .price-card-top h3 { color: #f1f9ff; }.price-card-top p { min-height: 60px; margin: 0; color: #737d8a; font-size: 13px; line-height: 1.5; }.price-card-featured .price-card-top p { color: rgba(218,237,255,.6); }.price { margin-top: 24px; display: flex; align-items: flex-start; color: #122035; letter-spacing: -.065em; }.price-card-featured .price { color: #f3fbff; }.price b { font-size: 61px; line-height: .82; font-weight: 660; }.price span { margin: 5px 0 0 5px; font-size: 24px; font-weight: 610; }.price-sub { min-height: 18px; margin: 6px 0 22px; color: #83909d; font-size: 12px; }.price-card-featured .price-sub { color: rgba(215,235,254,.55); }.price-card ul { flex: 1; min-height: 155px; margin: 0 0 26px; padding: 0; list-style: none; border-top: 1px solid rgba(20,47,81,.1); }.price-card li { position: relative; padding: 11px 0 0 20px; color: #536171; font-size: 12px; line-height: 1.35; }.price-card li::before { content: "✓"; position: absolute; left: 0; top: 10px; color: #318ecc; font-size: 11px; font-weight: 800; }.price-card-featured ul { border-color: rgba(182,226,255,.15); }.price-card-featured li { color: rgba(224,241,255,.72); }.price-card-featured li::before { color: #71e7ff; }.price-card .button { align-self: stretch; }.pricing-note { width: min(var(--max), 100%); margin: 39px auto 0; color: #718090; text-align: center; font-size: 13px; }.pricing-note a { color: #2173b2; font-weight: 650; }.pricing-note a:hover { text-decoration: underline; }

.faq-section { padding: 140px 28px 137px; display: grid; grid-template-columns: minmax(260px, .8fr) minmax(460px, 1.2fr); gap: 92px; width: 100%; background: #f8f9fb; }.faq-head { justify-self: end; width: min(385px, 100%); }.faq-head h2 { margin: 0; }.faq-list { width: min(640px, 100%); }.faq-item { border-top: 1px solid var(--line); }.faq-item:last-child { border-bottom: 1px solid var(--line); }.faq-item summary { position: relative; padding: 23px 38px 23px 0; color: #17202d; font-size: 17px; font-weight: 630; letter-spacing: -.026em; cursor: pointer; list-style: none; }.faq-item summary::-webkit-details-marker { display: none; }.faq-item summary span { position: absolute; top: 20px; right: 3px; color: #7091b3; font-size: 23px; font-weight: 350; line-height: 1; transition: transform .2s ease; }.faq-item[open] summary span { transform: rotate(45deg); }.faq-item p { max-width: 560px; margin: -2px 0 24px; color: #707b88; font-size: 14px; line-height: 1.58; }

.final-cta { position: relative; overflow: hidden; min-height: 555px; padding: 126px 28px; display: grid; place-items: center; text-align: center; background: radial-gradient(ellipse 55% 85% at 50% 60%, rgba(27,127,197,.3), transparent 68%), linear-gradient(145deg, #061122, #050915 68%); }.final-cta-content { position: relative; z-index: 1; max-width: 920px; }.final-cta-content h2 { margin-bottom: 22px; }.final-cta-content > p:not(.eyebrow) { max-width: 645px; margin: 0 auto 27px; color: rgba(216,231,250,.65); font-size: 17px; line-height: 1.54; }.final-cta-content small { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 17px; color: rgba(202,223,247,.49); font-size: 11px; }.cta-rings { position: absolute; top: 50%; left: 50%; width: 520px; height: 520px; border: 1px solid rgba(99,209,255,.12); border-radius: 50%; transform: translate(-50%, -48%); }.cta-rings::before, .cta-rings::after, .cta-rings span { content: ""; position: absolute; border: 1px solid rgba(89,169,255,.11); border-radius: 50%; }.cta-rings::before { inset: -63px; }.cta-rings::after { inset: -153px; border-color: rgba(92,103,255,.08); }.cta-rings span:nth-child(1) { inset: 71px; }.cta-rings span:nth-child(2) { inset: 152px; border-color: rgba(99,215,255,.18); }.cta-rings span:nth-child(3) { inset: 221px; background: rgba(73,209,255,.18); border: 1px solid rgba(117,231,255,.5); box-shadow: 0 0 33px rgba(58,180,255,.35); }

.site-footer { padding: 44px 28px 24px; color: #cbd4e0; background: #05080e; }.footer-top { width: min(var(--max), 100%); margin: 0 auto; padding-bottom: 48px; display: grid; grid-template-columns: 1.1fr 1.3fr .7fr; align-items: center; gap: 28px; }.footer-top p { margin: 0; color: rgba(204,219,238,.55); font-size: 13px; line-height: 1.55; }.footer-mail { justify-self: end; color: #65ddfb; font-size: 14px; font-weight: 620; }.footer-mail span { padding-left: 6px; }.footer-mail:hover { color: #a1efff; }.footer-bottom { width: min(var(--max), 100%); margin: 0 auto; padding-top: 21px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(211,229,255,.1); }.footer-bottom small { color: rgba(203,217,237,.36); font-size: 10px; }.footer-bottom div { display: flex; gap: 20px; }.footer-bottom a { color: rgba(203,217,237,.47); font-size: 11px; transition: color .2s ease; }.footer-bottom a:hover { color: #e9f5ff; }

.reveal { opacity: 1; transform: none; }
.has-js .reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.has-js .reveal.is-visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .09s; }.delay-2 { transition-delay: .18s; }.delay-3 { transition-delay: .27s; }

@media (max-width: 900px) {
  .desktop-nav { margin-left: auto; gap: 18px; }.stack-visual { top: 174px; left: auto; right: 28px; transform: scale(.74); transform-origin: top right; }.stack-heading { padding-right: 250px; }.stack-heading > p:last-child { max-width: 510px; }.capability-grid { grid-template-columns: repeat(2, 1fr); }.ownership-points { gap: 30px; }.backup-frame { gap: 45px; }.faq-section { gap: 54px; }.footer-top { grid-template-columns: 1fr 1fr; }.footer-top p { grid-row: 2; }.footer-mail { grid-column: 2; }
}

@media (max-width: 720px) {
  .site-header { height: 59px; }.nav-shell { width: min(100% - 36px, var(--max)); height: 59px; }.brand-name { font-size: 21px; }.desktop-nav, .language, .nav-cta { display: none; }.menu-button { display: block; }.mobile-menu { position: absolute; top: 58px; right: 0; left: 0; padding: 20px 18px 22px; border-bottom: 1px solid rgba(255,255,255,.1); background: rgba(5,9,16,.97); box-shadow: 0 20px 30px rgba(0,0,0,.25); }.mobile-menu:not([hidden]) { display: grid; gap: 3px; }.mobile-menu a:not(.button) { padding: 13px 7px; color: rgba(239,246,255,.79); font-size: 16px; }.mobile-menu .button { width: 100%; margin-top: 9px; }.menu-open { overflow: hidden; }
  h2 { font-size: clamp(38px, 12vw, 55px); }.hero { min-height: 720px; padding: 92px 18px 0; }.hero h1 { font-size: clamp(43px, 13vw, 66px); }.hero-copy { max-width: 550px; font-size: 16px; }.hero-actions { flex-direction: column; gap: 20px; }.hero-actions .button { width: 100%; max-width: 345px; }.hero-note { flex-wrap: wrap; max-width: 310px; margin-right: auto; margin-left: auto; line-height: 1.4; }.terminal-wrap { margin-top: 40px; }.terminal-orbit { display: none; }.terminal-body { padding: 13px; }.terminal-reply { max-width: 100%; }.hero-floor { bottom: -123px; }
  .tension-section { padding: 106px 20px 87px; }.tension-list { margin-top: 54px; }.tension-item { grid-template-columns: 48px minmax(0,1fr); gap: 15px; padding: 28px 0; }.tension-item h3 { font-size: 28px; }.tension-item p { font-size: 14px; }.item-arrow { display: none; }
  .journey-section { padding: 100px 20px 79px; }.journey-intro { margin-bottom: 46px; }.journey-intro > p { font-size: 15px; }.journey-steps::before { left: 16px; }.journey-step { grid-template-columns: 48px minmax(0,1fr); gap: 12px; padding: 24px 0; }.step-index span { width: 33px; height: 33px; }.step-index small { display: none; }.step-content { display: block; }.step-content h3 { font-size: 25px; }.step-content p { margin: 8px 0 0; font-size: 13px; }.step-symbol { display: none; }
  .stack-section { padding: 100px 20px 86px; }.stack-heading { padding: 0; }.stack-visual { position: relative; top: auto; right: auto; margin: 16px 0 5px auto; transform: scale(.63); width: 220px; height: 200px; }.capability-grid { margin-top: 37px; grid-template-columns: 1fr; gap: 10px; }.capability-card { min-height: 0; padding: 24px; }.capability-card p { min-height: 0; }.capability-card h3 { margin-top: 16px; }
  .ownership-section { padding: 102px 20px 86px; }.ownership-orb { top: 246px; right: -310px; transform: scale(.74); }.ownership-lead { font-size: 15px; }.ownership-points { margin-top: 56px; grid-template-columns: 1fr; gap: 10px; }.ownership-point { padding: 21px 0; }.ownership-point h3 { font-size: 20px; }.point-glyph { margin-bottom: 12px; }
  .backup-section { padding: 100px 20px 84px; }.backup-frame { grid-template-columns: 1fr; gap: 38px; }.backup-copy > p:not(.eyebrow) { font-size: 15px; }.backup-features { margin-top: 62px; grid-template-columns: 1fr; gap: 14px; }.backup-features article { padding: 19px 0; }
  .pricing-section { padding: 100px 20px 88px; }.pricing-grid { margin-top: 54px; grid-template-columns: 1fr; gap: 28px; }.price-card { min-height: 0; padding: 28px; }.price-card-featured { transform: none; }.price-card-top p { min-height: auto; }.price-card ul { min-height: 0; margin-top: 4px; }.price-card .button { margin-top: 8px; }.pricing-note { max-width: 340px; line-height: 1.55; }
  .faq-section { padding: 100px 20px 86px; display: block; }.faq-head { margin: 0 0 47px; }.faq-list { width: 100%; }.faq-item summary { font-size: 16px; }
  .final-cta { min-height: 510px; padding: 95px 20px; }.final-cta-content > p:not(.eyebrow) { font-size: 15px; }.final-cta-content .button { width: 100%; }.cta-rings { transform: translate(-50%,-48%) scale(.72); }.footer-top { padding-bottom: 35px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }.footer-mail { align-self: flex-start; }.footer-bottom { display: block; }.footer-bottom div { flex-wrap: wrap; gap: 12px 17px; margin-top: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }.has-js .reveal, .has-js .reveal.is-visible { opacity: 1; transform: none; transition: none; }.button, .item-arrow, .capability-card, .text-link, .menu-button span { transition: none; }
}
