
:root{
  --night:#06111C; --deep:#0D2436; --panel:#10293E;
  --sky:#49B7E9; --sky-2:#8ED3F4; --ice:#E8F3FA; --mist:#9DB6C8;
  --amber:#F2A93B; --green:#3DDC97; --red:#FF4A4A;
  --display:"Montserrat",ui-sans-serif,system-ui,sans-serif;
  --body:"Montserrat",ui-sans-serif,system-ui,sans-serif;
  --max:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto}
html.lenis{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--night);color:var(--ice);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;display:block}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--sky);outline-offset:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px;position:relative}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.08;letter-spacing:-0.035em}
h1{font-size:clamp(2.4rem,5vw,4.2rem)}
h2{font-size:clamp(1.9rem,3.8vw,3.3rem)}
h3{font-size:clamp(1.35rem,2.1vw,1.8rem);letter-spacing:-0.025em}
p{max-width:58ch}
.lead{font-size:clamp(1rem,1.2vw,1.12rem);color:var(--mist);line-height:1.65;font-weight:500}
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;border-radius:999px;font-weight:700;text-decoration:none;font-size:1rem;border:1.5px solid transparent;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s;cursor:pointer;font-family:var(--body)}
.btn:hover{transform:translateY(-2px)}
.btn-sky{background:var(--sky);color:var(--night)}
.btn-sky:hover{background:var(--sky-2)}
.btn-line{background:transparent;color:var(--ice);border-color:rgba(232,243,250,.28)}
.btn-line:hover{border-color:var(--ice)}
.btn svg{width:18px;height:18px}
.kicker{font-weight:600;color:var(--sky);font-size:.95rem;margin-bottom:18px;display:flex;align-items:center;gap:12px}
.kicker::before{content:"";width:28px;height:2px;background:var(--sky);border-radius:2px}

/* ---------- nav ---------- */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;height:76px;display:flex;align-items:center;transition:background .3s,backdrop-filter .3s}
.nav.scrolled{background:rgba(6,17,28,.72);backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid rgba(232,243,250,.06)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;width:100%}
.nav .logo img{height:32px;width:auto;filter:brightness(0) invert(1)}
.nav ul{display:flex;gap:30px;list-style:none;align-items:center}
.nav ul a{text-decoration:none;color:var(--mist);font-weight:600;font-size:.9rem;transition:color .2s}
.nav ul a:hover{color:var(--ice)}
.nav ul a.btn{color:var(--night);padding:11px 18px;font-size:.9rem}
.nav ul a.btn:hover{color:var(--night)}
.burger{display:none;background:none;border:0;cursor:pointer;padding:10px}
.burger span{display:block;width:24px;height:2px;background:var(--ice);margin:5px 0;border-radius:2px}
@media (max-width:900px){
  .burger{display:block}
  .nav ul{display:none;position:fixed;inset:76px 0 auto 0;background:rgba(6,17,28,.96);backdrop-filter:blur(14px);flex-direction:column;align-items:stretch;gap:0;padding:8px 28px 24px;border-bottom:1px solid rgba(232,243,250,.08)}
  .nav ul.open{display:flex}
  .nav ul li{padding:14px 0;border-top:1px solid rgba(232,243,250,.08)}
  .nav ul li:first-child{border-top:0}
  .nav ul a.btn{display:inline-flex;margin-top:6px}
}

/* ---------- hero ---------- */
.hero{min-height:100svh;display:flex;align-items:center;position:relative;padding:130px 0 90px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:44px}}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(73,183,233,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(73,183,233,.07) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 100%)}
.hero-bg .glow{position:absolute;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;left:50%;top:10%;transform:translateX(-50%);background:radial-gradient(circle,rgba(73,183,233,.22),rgba(73,183,233,0) 62%);filter:blur(10px)}
.hero-bg .horizon{position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(180deg,transparent,var(--night))}
.hero .wrap{z-index:2}
.hero .eyebrow{color:var(--sky);font-weight:600;margin-bottom:22px;font-size:.95rem}
.hero h1 .line{display:block;overflow:hidden}
.hero h1 .line > span{display:block;will-change:transform}
.hero h1 .quiet{color:var(--sky);font-weight:800}
.hero .lead{margin:26px 0 34px;max-width:52ch}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.health{background:linear-gradient(180deg,#0F2A40,#0A1E2E);border:1px solid rgba(232,243,250,.1);border-radius:22px;padding:22px;box-shadow:0 40px 80px rgba(0,0,0,.45);opacity:0;transform:translateY(24px)}
.health .hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:.85rem;color:var(--mist);font-weight:600}
.health .hd b{color:var(--ice);font-weight:700;font-size:.95rem}
.health .live{display:flex;align-items:center;gap:8px;color:var(--green)}
.health .live i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(61,220,151,.5);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(61,220,151,.5)}70%{box-shadow:0 0 0 10px rgba(61,220,151,0)}100%{box-shadow:0 0 0 0 rgba(61,220,151,0)}}
.health .shot{border-radius:12px;background:#08192A;border:1px solid rgba(232,243,250,.1);padding:0;margin-bottom:14px;position:relative;overflow:hidden}
.health .shot .ls{display:block;width:100%;height:auto}
.health .shot img.ls{aspect-ratio:16/10;object-fit:cover}
.health .shot .t{height:8px;border-radius:4px;background:rgba(73,183,233,.3);width:60%;margin-bottom:8px}
.health .shot .l{height:6px;border-radius:3px;background:rgba(232,243,250,.12);margin-bottom:6px}
.health .shot .badge{position:absolute;right:10px;top:10px;font-size:.72rem;font-weight:700;color:var(--night);background:var(--green);padding:5px 10px;border-radius:999px;display:flex;align-items:center;gap:6px;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.health .rows{display:grid;gap:8px}
.health .row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:11px 13px;border-radius:10px;background:rgba(232,243,250,.04);border:1px solid rgba(232,243,250,.07);font-size:.85rem}
.health .row b{display:block;font-weight:700;color:var(--ice);font-size:.9rem}
.health .row span{color:var(--mist)}
.health .row em{font-style:normal;font-weight:700;color:var(--green);white-space:nowrap}
.health .row em.sky{color:var(--sky)}
.no-motion .health{opacity:1;transform:none}
.scroll-cue{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);z-index:2;color:var(--mist);font-size:.85rem;display:flex;flex-direction:column;align-items:center;gap:10px}
.scroll-cue i{display:block;width:1px;height:44px;background:linear-gradient(var(--sky),transparent);animation:cue 1.8s ease-in-out infinite}
@media (max-height:820px){.scroll-cue{display:none}}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ---------- downtime scene (pinned) ---------- */
.downtime{position:relative}
.downtime .stage{height:100svh;display:grid;align-items:center;overflow:hidden}
.downtime .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.downtime h2{margin-bottom:22px}
.clock{font-family:var(--display);font-weight:800;letter-spacing:-0.04em;line-height:1;font-size:clamp(3rem,7vw,6rem);font-variant-numeric:tabular-nums;color:var(--ice)}
.clock small{display:block;font-size:clamp(1.2rem,2.4vw,2rem);color:var(--mist);font-weight:500;letter-spacing:-0.01em;margin-top:8px}
.meter{margin-top:34px}
.meter .bar{height:10px;border-radius:999px;background:rgba(232,243,250,.08);overflow:hidden}
.meter .bar i{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--sky),var(--amber) 45%,var(--red));border-radius:999px}
.meter .cap{display:flex;justify-content:space-between;margin-top:12px;font-size:.95rem;color:var(--mist)}
.risk{margin-top:26px;min-height:150px;display:flex;align-items:flex-start}
.risk-num{font-family:var(--display);font-weight:800;letter-spacing:-0.04em;line-height:1;font-size:clamp(1.6rem,2.6vw,2.2rem);font-variant-numeric:tabular-nums;color:var(--ice);transform-origin:left top;will-change:transform;text-shadow:0 0 0 rgba(255,74,74,0)}
.downtime .red{position:absolute;right:-10vw;top:50%;width:70vw;height:70vw;max-width:900px;max-height:900px;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,74,74,.35),rgba(255,74,74,0) 60%);opacity:0;pointer-events:none;filter:blur(24px)}
.downtime .stage{position:relative}
.no-motion .downtime .red{opacity:.4}
.downtime .wait{margin-top:28px;font-size:1.15rem;color:var(--mist)}
.downtime .wait b{color:var(--ice)}
@media (max-width:820px){.downtime .grid{grid-template-columns:1fr;gap:30px}.downtime .stage{height:auto;min-height:100svh;padding:100px 0 60px}}

/* ---------- restore scene ---------- */
.restore{padding:130px 0}
.restore .grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.restore .lead{margin-top:22px}
.console{background:linear-gradient(180deg,#0F2A40,#0A1E2E);border:1px solid rgba(232,243,250,.1);border-radius:22px;padding:26px;box-shadow:0 40px 80px rgba(0,0,0,.45),0 0 0 1px rgba(73,183,233,.06) inset}
.console .bar-top{display:flex;gap:7px;margin-bottom:22px}
.console .bar-top i{width:10px;height:10px;border-radius:50%;background:rgba(232,243,250,.16)}
.srv{display:flex;align-items:center;gap:16px;padding:18px;border-radius:14px;background:rgba(232,243,250,.04);border:1px solid rgba(232,243,250,.08);position:relative}
.srv .icon{width:46px;height:46px;border-radius:10px;background:rgba(73,183,233,.14);display:grid;place-items:center;flex:none}
.srv .icon svg{width:24px;height:24px;stroke:var(--sky);fill:none;stroke-width:1.8}
.srv .name{font-weight:700}
.srv .sub{font-size:.9rem;color:var(--mist)}
.srv .status{margin-left:auto;font-size:.85rem;font-weight:700;padding:6px 12px;border-radius:999px;background:rgba(242,169,59,.14);color:var(--amber);white-space:nowrap}
.srv.clone{margin-top:14px;opacity:0;transform:translateY(-10px);border-color:rgba(61,220,151,.35)}
.srv.clone .status{background:rgba(61,220,151,.14);color:var(--green)}
.srv.clone .icon{background:rgba(61,220,151,.14)}
.srv.clone .icon svg{stroke:var(--green)}
.restore-btn{margin-top:22px;width:100%;padding:16px;border-radius:14px;border:0;background:var(--sky);color:var(--night);font-weight:800;font-size:1rem;font-family:var(--body);position:relative;overflow:hidden;cursor:default}
.restore-btn .fill{position:absolute;inset:0;background:var(--green);transform:scaleX(0);transform-origin:left}
.restore-btn span{position:relative}
.restore-btn .ripple{position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:rgba(6,17,28,.35);transform:translate(-50%,-50%) scale(0);opacity:0}
.console .log{margin-top:18px;font-size:.85rem;color:var(--mist);font-variant-numeric:tabular-nums;min-height:1.4em}
@media (max-width:860px){.restore{padding:110px 0}.restore .grid{grid-template-columns:1fr;gap:40px}}

/* ---------- plane scene (pinned) ---------- */
.flight{position:relative;background:linear-gradient(180deg,var(--night),#081A2A 40%,var(--night))}
.flight .stage{height:100svh;display:grid;align-items:center;overflow:hidden;position:relative}
.flight .grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}
.flight h2{margin-bottom:20px}
.flight .copy p+p{margin-top:14px}
.flight .copy .lead{max-width:50ch}
.plane-wrap{position:relative;width:100%}
.plane-wrap > svg{display:block;width:100%;height:auto;aspect-ratio:1.5}
.plane-wrap > svg{overflow:visible}
.sky-lines{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:.35}
.sky-lines i{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(232,243,250,.55),transparent);width:40%}
.failover{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin-top:8px}
.srvbox{--led:#3A4A57;--tone:var(--mist);border-radius:14px;background:linear-gradient(180deg,#152F45,#0B1E2E);border:1px solid rgba(232,243,250,.14);padding:14px 16px;transition:border-color .35s,box-shadow .35s}
.srvbox .name{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mist);margin-bottom:10px}
.srvbox .rack{display:grid;gap:5px}
.srvbox .rack i{display:block;height:16px;border-radius:4px;background:#07141F;border:1px solid rgba(232,243,250,.12);position:relative}
.srvbox .rack i::before{content:"";position:absolute;left:8px;right:36px;top:6px;height:3px;background:repeating-linear-gradient(90deg,rgba(232,243,250,.28) 0 5px,transparent 5px 8px)}
.srvbox .rack i::after{content:"";position:absolute;right:8px;top:5px;width:6px;height:6px;border-radius:50%;background:var(--led);box-shadow:0 0 8px var(--led);transition:background .3s,box-shadow .3s}
.srvbox .state{display:flex;align-items:center;gap:8px;margin-top:12px;font-weight:700;font-size:.92rem;color:var(--tone);transition:color .3s}
.srvbox .state b{width:9px;height:9px;border-radius:50%;background:var(--led);box-shadow:0 0 10px var(--led)}
.srvbox.run{--led:var(--green);--tone:var(--green);border-color:rgba(61,220,151,.4)}
.srvbox.idle{--led:#3A4A57;--tone:var(--mist)}
.srvbox.fail{--led:var(--red);--tone:var(--red);border-color:rgba(255,74,74,.55);box-shadow:0 0 34px rgba(255,74,74,.18);animation:jolt .5s cubic-bezier(.36,.07,.19,.97) 1}
.srvbox.fail .rack i::after{animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:.25}}
@keyframes jolt{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-3px)}40%,60%{transform:translateX(3px)}}
.swwrap{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mist)}
.sw{width:66px;height:34px;border-radius:999px;background:rgba(232,243,250,.1);border:1px solid rgba(232,243,250,.2);position:relative;transition:background .4s,border-color .4s}
.sw i{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:var(--ice);box-shadow:0 2px 8px rgba(0,0,0,.4);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.sw.right{background:rgba(73,183,233,.35);border-color:rgba(73,183,233,.6)}
.sw.right i{transform:translateX(32px);background:var(--sky)}
@media (prefers-reduced-motion:reduce){.srvbox.fail{animation:none}.srvbox.fail .rack i::after{animation:none}}
.downtime-pill{position:absolute;top:0;right:0;font-family:var(--display);font-weight:800;font-size:1.05rem;padding:10px 16px;border-radius:12px;background:rgba(61,220,151,.12);color:var(--green);border:1px solid rgba(61,220,151,.3);opacity:0;transform:translateY(-8px)}
.flight-steps{margin-top:30px;display:grid;gap:12px}
.flight-steps li{list-style:none;display:flex;gap:14px;align-items:flex-start;color:var(--mist);opacity:.35;transition:opacity .3s}
.flight-steps li.on{opacity:1;color:var(--ice)}
.flight-steps li b{font-family:var(--display);color:var(--sky);font-weight:800;min-width:1.4em}
@media (max-width:900px){.failover{gap:12px}.srvbox{padding:12px}.flight .grid{grid-template-columns:1fr;gap:20px}.flight .stage{height:auto;min-height:100svh;padding:90px 0 60px}.plane-wrap{max-width:520px;margin:0 auto}.flight-steps{display:none}}

/* ---------- feature stack ---------- */
.features{padding:110px 0 40px}
.features .intro{margin-bottom:60px}
.stack{position:relative}
.card{position:sticky;top:96px;min-height:min(72svh,640px);border-radius:28px;background:linear-gradient(180deg,var(--panel),var(--deep));border:1px solid rgba(232,243,250,.09);padding:clamp(28px,4vw,56px);display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;margin-bottom:24px;box-shadow:0 30px 60px rgba(0,0,0,.35);transform-origin:top center;will-change:transform}
.card .n{font-family:var(--display);font-weight:800;color:var(--sky);font-size:1rem;margin-bottom:14px;display:flex;gap:10px;align-items:center}
.card .n::after{content:"";height:1px;flex:1;background:rgba(73,183,233,.25);max-width:60px}
.card h3{margin-bottom:18px}
.card .problem{color:var(--mist);position:relative;padding-left:18px;border-left:2px solid rgba(242,169,59,.6);margin-bottom:18px}
.card .solution{color:var(--ice)}
.card .flag{display:inline-flex;align-items:center;gap:10px;margin-top:16px;font-weight:700;color:var(--ice)}
.card .flag svg{width:26px;height:18px;border-radius:2px}
.card .art{width:100%;aspect-ratio:1.15;display:grid;place-items:center}
.card .art > svg{width:100%;height:100%;overflow:visible}
.card .big{font-family:var(--display);font-weight:800;font-size:clamp(2.6rem,5vw,4.4rem);letter-spacing:-0.04em;line-height:1;color:var(--ice)}
.card .big small{display:block;font-size:1.1rem;font-weight:500;color:var(--mist);letter-spacing:0;margin-top:10px}
@media (max-width:860px){.card{grid-template-columns:1fr;gap:28px;top:84px;min-height:0}.card .art{max-width:380px;margin:0 auto;aspect-ratio:1.3}}

/* ---------- did you know (pinned) ---------- */
.know{position:relative}
.know .stage{height:100svh;display:grid;align-items:center;text-align:center;overflow:hidden}
.know .kicker{justify-content:center}
.know .kicker::before{display:none}
.money{font-family:var(--display);font-weight:800;font-size:clamp(3.8rem,11vw,9rem);letter-spacing:-0.05em;line-height:.95;font-variant-numeric:tabular-nums;color:var(--ice);margin:10px 0 14px}
.money em{font-style:normal;color:var(--red)}
.know .stage{position:relative}
.know .red{position:absolute;left:50%;top:50%;width:90vw;height:90vw;max-width:1100px;max-height:1100px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,74,74,.32),rgba(255,74,74,0) 60%);opacity:0;pointer-events:none;filter:blur(20px)}
.know .wrap{position:relative}
.loss{margin:44px auto 0;max-width:640px}
.loss .bars{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:end;height:150px}
.loss .bar{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%}
.loss .bar i{display:block;width:100%;height:0%;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#FF6B6B,#B31D1D);box-shadow:0 0 30px rgba(255,74,74,.35)}
.loss .bar b{margin-top:10px;font-size:.85rem;font-weight:600;color:var(--mist)}
.loss .cap{display:flex;justify-content:space-between;align-items:baseline;margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,74,74,.25);color:var(--mist);font-weight:600}
.loss .cap strong{font-family:var(--display);font-weight:800;color:var(--red);font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-0.03em;font-variant-numeric:tabular-nums}
.no-motion .know .red{opacity:.5}.no-motion .loss .bar i{height:100%}
.know p{margin:0 auto;max-width:44ch}
.know .lead{font-size:clamp(1.1rem,2vw,1.5rem)}
.know .actions{margin-top:40px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ---------- close / contact ---------- */
.close{padding:140px 0 100px;position:relative;overflow:hidden}
.close::before{content:"";position:absolute;left:50%;top:-30%;width:80vw;height:80vw;max-width:1000px;max-height:1000px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(73,183,233,.16),transparent 62%);pointer-events:none}
.close .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:end;position:relative}
.close h2{margin-bottom:22px}
.close .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px}
.contact{display:grid;gap:22px;padding:34px;border-radius:24px;background:rgba(232,243,250,.04);border:1px solid rgba(232,243,250,.09)}
.contact div{display:grid;gap:4px}
.contact span{font-size:.85rem;color:var(--mist);font-weight:600}
.contact a,.contact address{font-style:normal;text-decoration:none;font-weight:700;font-size:1.1rem;color:var(--ice)}
.contact a:hover{color:var(--sky)}
@media (max-width:860px){.close{padding:100px 0 70px}.close .grid{grid-template-columns:1fr;gap:40px}}
footer{border-top:1px solid rgba(232,243,250,.08);padding:34px 0}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:.9rem;color:var(--mist)}
footer img{height:26px;width:auto;filter:brightness(0) invert(1);opacity:.8}
footer a{color:var(--mist);text-decoration:none}footer a:hover{color:var(--ice)}

/* reveals */
.reveal{opacity:0;transform:translateY(28px)}
.no-motion .reveal,.no-motion .hero h1 .line > span,.no-motion .srv.clone,.no-motion .downtime-pill{opacity:1;transform:none}
.no-motion .card{position:relative;top:auto}
.no-motion .flight-steps li{opacity:1}
@media (prefers-reduced-motion:reduce){.scroll-cue i{animation:none}}

/* ---------- nav dropdown ---------- */
.nav ul li{position:relative}
.has-sub > a{display:inline-flex;align-items:center;gap:6px}
.has-sub > a::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nav ul.sub{display:none;position:absolute;top:calc(100% + 14px);left:-14px;min-width:300px;background:#0B1E2E;border:1px solid rgba(232,243,250,.12);border-radius:16px;padding:8px;box-shadow:0 30px 60px rgba(0,0,0,.5);list-style:none;flex-direction:column;align-items:stretch;gap:2px}
.sub::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.nav .has-sub:hover ul.sub,.nav .has-sub.open ul.sub{display:flex}
.sub a{display:block;padding:12px 14px;border-radius:10px;text-decoration:none;color:var(--ice)!important;font-weight:700;font-size:.92rem}
.sub a:hover{background:rgba(73,183,233,.1)}
.sub a span{display:block;font-weight:500;color:var(--mist);font-size:.8rem;margin-top:2px}
.sub a.current{background:rgba(73,183,233,.12)}
.sub a.current span{color:var(--sky)}
@media (max-width:900px){
  .nav ul.sub{position:static;display:flex;min-width:0;background:transparent;border:0;box-shadow:none;padding:4px 0 0 12px;gap:0}
  .nav ul.sub li{padding:0;border:0}
  .nav ul.sub::before{display:none}
  .has-sub > a::after{display:none}
  .sub a{padding:10px 0}
}

/* ---------- Windows compatibility strip ---------- */
.compat{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:30px;font-size:.85rem;color:var(--mist)}
.compat .lbl{font-weight:700;color:var(--ice);display:inline-flex;align-items:center;gap:8px;margin-right:4px}
.compat .lbl svg{width:16px;height:16px}
.compat span.chip{padding:6px 11px;border-radius:999px;border:1px solid rgba(232,243,250,.14);background:rgba(232,243,250,.04);font-weight:600}
.compat span.chip::before{content:"✓ ";color:var(--green)}

/* ---------- product tiers ---------- */
.tiers-sec{padding:120px 0;background:linear-gradient(180deg,var(--night),#081A2A 50%,var(--night))}
.tiers-sec .intro{margin-bottom:48px}
.tiers{display:grid;gap:14px}
.tier{display:grid;grid-template-columns:minmax(200px,.9fr) 1.6fr auto;gap:28px;align-items:center;padding:26px 28px;border-radius:18px;background:rgba(232,243,250,.03);border:1px solid rgba(232,243,250,.09);text-decoration:none;color:inherit;transition:border-color .25s,background .25s}
.tier:hover{border-color:rgba(73,183,233,.45);background:rgba(73,183,233,.06)}
.tier.current{border-color:rgba(73,183,233,.6);background:rgba(73,183,233,.08)}
.tier h3{font-size:1.15rem;margin-bottom:4px}
.tier .sub-t{color:var(--mist);font-size:.9rem}
.tier .bar{height:12px;border-radius:999px;background:rgba(232,243,250,.08);overflow:hidden;position:relative}
.tier .bar i{display:block;height:100%;width:0;border-radius:999px;transition:width 1.4s cubic-bezier(.2,.8,.2,1)}
.tier.t-bdr .bar i{background:var(--green);width:var(--w,4%)}
.tier.t-cloud .bar i{background:var(--amber);width:var(--w,32%)}
.tier.t-file .bar i{background:var(--red);width:var(--w,100%)}
.tier .rt{text-align:right;min-width:120px}
.tier .rt b{display:block;font-family:var(--display);font-weight:800;font-size:1.5rem;letter-spacing:-0.03em}
.tier.t-bdr .rt b{color:var(--green)}.tier.t-cloud .rt b{color:var(--amber)}.tier.t-file .rt b{color:var(--red)}
.tier .rt span{color:var(--mist);font-size:.82rem}
.tier .cap{grid-column:1 / -1;font-size:.9rem;color:var(--mist);margin-top:-6px}
.tier.armed .bar i{width:var(--w)}
.tier:not(.armed) .bar i{width:0}
@media (max-width:820px){.tier{grid-template-columns:1fr;gap:14px}.tier .rt{text-align:left}}

/* ---------- product pages ---------- */
.hero.product{padding:150px 0 90px}
.gauge{background:linear-gradient(180deg,#0F2A40,#0A1E2E);border:1px solid rgba(232,243,250,.1);border-radius:22px;padding:26px;box-shadow:0 40px 80px rgba(0,0,0,.45)}
.gauge .lbl{font-size:.85rem;color:var(--mist);font-weight:600;margin-bottom:8px}
.gauge .val{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,4vw,3.4rem);letter-spacing:-0.04em;line-height:1}
.gauge .val.green{color:var(--green)}.gauge .val.amber{color:var(--amber)}.gauge .val.red{color:var(--red)}
.gauge .scale{margin-top:20px;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--green) 0 8%,var(--amber) 30% 55%,var(--red) 85%);position:relative;opacity:.9}
.gauge .scale i{position:absolute;top:-6px;width:22px;height:22px;border-radius:50%;background:#fff;border:4px solid var(--night);transform:translateX(-50%);box-shadow:0 0 0 2px rgba(255,255,255,.5)}
.gauge .ticks{display:flex;justify-content:space-between;margin-top:10px;font-size:.78rem;color:var(--mist);font-weight:600}
.gauge p{margin-top:18px;color:var(--mist);font-size:.92rem;max-width:none}
.steps-sec{padding:110px 0}
.steps{counter-reset:s;display:grid;gap:0;margin-top:40px;border-top:1px solid rgba(232,243,250,.1)}
.steps li{list-style:none;display:grid;grid-template-columns:64px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid rgba(232,243,250,.1)}
.steps li::before{counter-increment:s;content:counter(s);font-family:var(--display);font-weight:800;font-size:1.6rem;color:var(--sky);letter-spacing:-0.03em}
.steps h3{font-size:1.15rem;margin-bottom:6px}
.steps p{color:var(--mist)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
@media (max-width:820px){.two-col{grid-template-columns:1fr;gap:32px}}
.plain{list-style:none;display:grid;gap:12px;margin-top:22px}
.plain li{padding-left:28px;position:relative;color:var(--mist)}
.plain li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.plain.no li::before{content:"–";color:var(--red)}
.callout{margin-top:40px;padding:28px 30px;border-radius:18px;border:1px solid rgba(255,74,74,.35);background:rgba(255,74,74,.06)}
.callout h3{color:var(--red);margin-bottom:8px;font-size:1.1rem}
.callout p{color:var(--ice)}
.callout.good{border-color:rgba(61,220,151,.35);background:rgba(61,220,151,.06)}
.callout.good h3{color:var(--green)}
.who{padding:100px 0;background:var(--deep)}
.who .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.who .grid3 div{padding:24px;border-radius:16px;background:rgba(232,243,250,.04);border:1px solid rgba(232,243,250,.08)}
.who .grid3 h3{font-size:1.05rem;margin-bottom:8px}
.who .grid3 p{color:var(--mist);font-size:.95rem}
@media (max-width:820px){.who .grid3{grid-template-columns:1fr}}

/* ---------- calculator ---------- */
.calc-hero{padding:150px 0 40px}
.calc{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start;padding-bottom:100px}
@media (max-width:900px){.calc{grid-template-columns:1fr}}
.panel{background:linear-gradient(180deg,#0F2A40,#0A1E2E);border:1px solid rgba(232,243,250,.1);border-radius:22px;padding:28px}
.panel h3{font-size:1.1rem;margin-bottom:18px}
.field{display:grid;gap:8px;margin-bottom:22px}
.field label{font-weight:600;font-size:.92rem;display:flex;justify-content:space-between;gap:12px}
.field label output{font-family:var(--display);font-weight:800;color:var(--sky);font-variant-numeric:tabular-nums}
.field input[type=range]{width:100%;accent-color:var(--sky)}
.field .hint{font-size:.8rem;color:var(--mist)}
.field .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field input[type=number]{font-family:inherit;font-size:1rem;padding:11px 13px;border-radius:10px;border:1px solid rgba(232,243,250,.16);background:rgba(232,243,250,.05);color:var(--ice);width:100%}
.results{display:grid;gap:14px}
.res{display:grid;grid-template-columns:1.1fr auto;gap:16px;align-items:center;padding:22px 24px;border-radius:18px;background:rgba(232,243,250,.03);border:1px solid rgba(232,243,250,.09)}
.res h4{font-size:1rem;margin-bottom:4px}
.res .meta{font-size:.85rem;color:var(--mist)}
.res .amt{font-family:var(--display);font-weight:800;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-0.04em;font-variant-numeric:tabular-nums;text-align:right}
.res .bar{grid-column:1/-1;height:8px;border-radius:999px;background:rgba(232,243,250,.08);overflow:hidden}
.res .bar i{display:block;height:100%;width:0;border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1)}
.res.file .amt,.res.file h4 span{color:var(--red)}.res.file .bar i{background:var(--red)}
.res.cloud .amt{color:var(--amber)}.res.cloud .bar i{background:var(--amber)}
.res.bdr .amt{color:var(--green)}.res.bdr .bar i{background:var(--green)}
.res.bdr{border-color:rgba(61,220,151,.4);background:rgba(61,220,151,.06)}
.save{margin-top:6px;padding:26px;border-radius:18px;background:rgba(73,183,233,.08);border:1px solid rgba(73,183,233,.35)}
.save .lbl{color:var(--mist);font-weight:600;font-size:.9rem}
.save .big{font-family:var(--display);font-weight:800;font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-0.04em;color:var(--sky);line-height:1.05;margin:6px 0 10px;font-variant-numeric:tabular-nums}
.save p{color:var(--mist);font-size:.92rem;max-width:none}
.save .actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.assume{font-size:.82rem;color:var(--mist);margin-top:14px;max-width:none}
.testi{padding:100px 0;background:var(--deep)}
.testi blockquote{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.4vw,1.9rem);letter-spacing:-0.02em;line-height:1.35;max-width:26ch;margin:0}
.testi blockquote::before{content:"\201C";color:var(--sky);margin-right:4px}
.testi cite{display:block;margin-top:22px;font-style:normal;color:var(--mist);font-weight:600}
.testi cite b{display:block;color:var(--ice)}
.testi .todo{margin-top:26px;padding:14px 18px;border:1px dashed rgba(242,169,59,.6);border-radius:12px;color:var(--amber);font-size:.9rem;max-width:none}

.calc-hero{min-height:0}
.contact address.note{font-weight:500;font-size:.95rem;color:var(--mist)}

/* ---------- video + quotes ---------- */
.video{max-width:960px}
.video .frame{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#000;border:1px solid rgba(232,243,250,.12);box-shadow:0 40px 80px rgba(0,0,0,.5)}
.video .frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video .vmeta{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}
.video .vmeta b{display:block;font-weight:800;font-size:1.05rem}
.video .vmeta span{color:var(--mist);font-size:.9rem}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.quotes figure{margin:0;padding:26px;border-radius:18px;background:rgba(232,243,250,.04);border:1px solid rgba(232,243,250,.09);display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.quotes blockquote{font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:-0.01em;line-height:1.45;max-width:none;margin:0}
.quotes blockquote::before{content:"\201C";color:var(--sky);margin-right:3px}
.quotes figcaption{color:var(--mist);font-size:.88rem;font-weight:600}
.quotes figcaption b{display:block;color:var(--ice)}
@media (max-width:860px){.quotes{grid-template-columns:1fr}}
