:root {
  --bg: #070812;
  --bg-soft: #0c0d18;
  --panel: rgba(14, 15, 29, 0.78);
  --panel-strong: #0e0f1b;
  --text: #f7f7fb;
  --muted: #a3a5b4;
  --muted-2: #707382;
  --line: rgba(255, 255, 255, 0.1);
  --purple: #5a00fa;
  --violet: #8b38ff;
  --blue: #1635ff;
  --cyan: #3bd8ff;
  --radius: 28px;
  --shadow: 0 32px 90px rgba(0, 0, 0, 0.42);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  background:
    radial-gradient(circle at 10% 12%, rgba(29, 71, 255, .14), transparent 28rem),
    radial-gradient(circle at 84% 28%, rgba(90, 0, 250, .14), transparent 32rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

body::selection { background: var(--purple); color: white; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }

.noise {
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .035;
  z-index: 100;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}

.site-header {
  position: fixed;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  width: min(1180px, calc(100% - 32px));
  height: 68px;
  padding: 0 14px 0 18px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  z-index: 80;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 22px;
  background: rgba(8, 9, 18, .72);
  backdrop-filter: blur(22px) saturate(1.25);
  box-shadow: 0 18px 60px rgba(0,0,0,.2);
}

.brand { width: 74px; height: 34px; display:flex; align-items:center; }
.brand img { width: 74px; height: auto; display:block; }
.nav { display:flex; gap: 28px; font-size: 14px; color: #c4c5d0; }
.nav a { transition: color .2s ease; }
.nav a:hover { color: white; }
.site-header > .button { justify-self:end; }

.section {
  position: relative;
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 132px 0;
}

.hero {
  width: 100%;
  min-height: 100svh;
  padding: 150px max(24px, calc((100vw - 1180px)/2)) 80px;
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  align-items: center;
  gap: 72px;
  overflow: hidden;
}

.hero::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(4, 7, 23, .95) 0%, rgba(6, 8, 18, .7) 42%, rgba(16, 3, 34, .72) 100%),
    linear-gradient(180deg, transparent 60%, var(--bg) 100%);
  z-index:-2;
}

.hero-glow { position:absolute; border-radius:999px; filter: blur(40px); opacity:.72; z-index:-1; }
.hero-glow-a { width:620px; height:620px; background:rgba(90,0,250,.38); right:-100px; top:70px; }
.hero-glow-b { width:500px; height:500px; background:rgba(0,63,255,.22); left:-180px; bottom:-100px; }

.hero-content { max-width: 650px; }
.hero-logo { width: 210px; max-width: 42vw; height:auto; margin-bottom: 22px; }
.eyebrow, .section-kicker {
  text-transform: uppercase;
  letter-spacing: .18em;
  font-weight: 700;
  font-size: 12px;
  color: #b9a0ff;
}
.hero h1 {
  margin: 18px 0 24px;
  font-size: clamp(44px, 5.5vw, 80px);
  line-height: .98;
  letter-spacing: -.055em;
  font-weight: 620;
  max-width: 780px;
}
.hero-copy {
  max-width: 640px;
  margin: 0;
  color: #c6c7d0;
  font-size: clamp(17px, 1.45vw, 20px);
  line-height: 1.58;
}
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:36px; }
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 22px;
  border-radius: 16px;
  font-weight: 650;
  font-size: 15px;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.button svg { width:19px; fill:currentColor; }
.button:hover { transform: translateY(-2px); }
.button-primary {
  background: linear-gradient(110deg, #6d12ff 0%, #5200ee 58%, #7722ff 100%);
  box-shadow: 0 18px 48px rgba(90, 0, 250, .28), inset 0 1px rgba(255,255,255,.18);
}
.button-primary:hover { box-shadow: 0 22px 56px rgba(90,0,250,.42), inset 0 1px rgba(255,255,255,.25); }
.button-small { min-height:40px; padding:0 16px; border-radius:13px; font-size:13px; }
.button-ghost { border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.05); }
.button-large { min-height:58px; padding:0 28px; border-radius:18px; }
.text-link { color:#d0d1d8; font-size:14px; }
.text-link span { color:#a885ff; margin-left:6px; }
.microcopy { margin:22px 0 0; color:#6f7280; font-size:12px; }

.hero-device { position:relative; display:flex; justify-content:center; }
.hero-device::before {
  content:"";
  position:absolute;
  width:440px; height:440px;
  background:radial-gradient(circle, rgba(103,0,255,.54), transparent 67%);
  filter:blur(12px);
  top:20%; left:50%; transform:translate(-50%,-50%);
  z-index:-1;
}
.device-frame {
  width:min(390px, 90vw);
  border-radius: 48px;
  padding: 13px;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(213,215,226,.82));
  box-shadow: 0 48px 110px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.4);
  transform: rotate(2.2deg);
}
.device-topbar {
  height:66px; padding:0 24px; display:flex; align-items:center; justify-content:space-between;
  color:#11131b; font-weight:700; font-size:14px;
}
.device-icons { display:flex; align-items:flex-end; gap:5px; }
.device-icons i { width:3px; background:#11131b; border-radius:3px; }
.device-icons i:first-child {height:9px;} .device-icons i:nth-child(2){height:13px;}
.device-icons b { width:22px; height:10px; background:#11131b; border-radius:3px; display:block; margin-left:4px; }
.device-body {
  color:#11131b;
  min-height:510px;
  padding:28px 22px 26px;
  border-radius:36px;
  background:#f8f8fb;
  display:flex;
  flex-direction:column;
}
.device-brand { color:#6a00ff; font-weight:800; letter-spacing:.18em; font-size:12px; }
.device-body h2 { margin:40px 0 12px; font-size:34px; line-height:1.02; letter-spacing:-.04em; }
.device-body p { margin:0; color:#6d707d; font-size:14px; line-height:1.5; }
.device-options { display:flex; gap:8px; margin:30px 0 12px; flex-wrap:wrap; }
.device-options span { background:#ececf1; border-radius:999px; padding:10px 13px; font-size:12px; color:#4a4c57; }
.device-cta { margin-top:auto; background:#5a00fa; color:white; font-weight:700; text-align:center; padding:18px 14px; border-radius:18px; box-shadow:0 13px 35px rgba(90,0,250,.25); }
.device-hint { text-align:center; color:#8a8c96; font-size:12px; margin-top:16px; }

.split { display:grid; grid-template-columns: 1.05fr .95fr; gap:92px; align-items:center; }
.section-copy h2, .section-heading h2, .cta-card h2 {
  margin:14px 0 22px;
  font-size:clamp(38px, 5vw, 68px);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:600;
}
.lead, .section-heading > p:last-child { color:#afb1bd; font-size:18px; line-height:1.6; max-width:760px; }
.scenario-list { margin-top:44px; display:grid; gap:0; border-top:1px solid var(--line); }
.scenario-list article { display:grid; grid-template-columns:54px 1fr; gap:18px; padding:24px 0; border-bottom:1px solid var(--line); }
.scenario-num { color:#7442ff; font-size:12px; font-weight:800; letter-spacing:.08em; padding-top:4px; }
.scenario-list h3 { margin:0 0 7px; font-size:18px; }
.scenario-list p { margin:0; color:#8f92a0; line-height:1.55; font-size:14px; }
.note { margin:24px 0 0; color:#666977; font-size:12px; line-height:1.5; }

.about-visual { position:relative; min-height:560px; display:flex; align-items:center; justify-content:center; }
.about-visual::before { content:""; position:absolute; width:420px; height:420px; border-radius:50%; background:rgba(90,0,250,.28); filter:blur(62px); }
.glass-card { position:relative; z-index:1; border:1px solid rgba(255,255,255,.11); background:linear-gradient(145deg, rgba(17,18,31,.93), rgba(8,9,18,.75)); box-shadow:var(--shadow); backdrop-filter:blur(18px); }
.search-card { width:min(470px,100%); min-height:420px; padding:34px; border-radius:32px; }
.card-top { display:flex; justify-content:space-between; color:#767988; font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.status-dot { color:#80ffb2; }
.search-card h3 { margin:74px 0 14px; font-size:35px; letter-spacing:-.035em; line-height:1.05; }
.search-card p { margin:0; color:#9a9ca8; line-height:1.55; }
.mock-input { margin-top:34px; padding:17px 18px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.045); border-radius:16px; display:flex; justify-content:space-between; color:#7c7f8e; font-size:14px; }
.mock-button { display:block; margin-top:12px; padding:17px 18px; text-align:center; background:#5a00fa; border-radius:16px; font-weight:700; }
.floating-tag { position:absolute; z-index:2; padding:12px 14px; font-size:12px; color:#d8d9e0; border:1px solid rgba(255,255,255,.09); border-radius:999px; background:rgba(13,14,25,.82); box-shadow:0 14px 35px rgba(0,0,0,.25); backdrop-filter:blur(15px); }
.tag-a { top:80px; right:-6px; } .tag-b { left:-12px; bottom:100px; }

.how { padding-top:160px; }
.section-heading { margin-bottom:62px; }
.feature-grid { display:grid; grid-template-columns:1.35fr .85fr .85fr; gap:16px; }
.feature-card { min-height:380px; padding:30px; border-radius:28px; border:1px solid rgba(255,255,255,.09); background:linear-gradient(150deg, rgba(17,18,31,.9), rgba(10,11,20,.7)); position:relative; overflow:hidden; }
.feature-card::after { content:""; position:absolute; width:220px; height:220px; border-radius:50%; background:rgba(90,0,250,.18); filter:blur(45px); right:-80px; bottom:-100px; }
.feature-index { font-size:12px; color:#7b7e8d; border:1px solid var(--line); border-radius:999px; padding:7px 10px; display:inline-block; }
.feature-card h3 { margin:54px 0 12px; font-size:27px; line-height:1.05; letter-spacing:-.03em; max-width:320px; }
.feature-card p { color:#8e919f; line-height:1.55; font-size:14px; max-width:410px; }
.feature-wide h3 { font-size:32px; }
.source-strip { position:absolute; bottom:28px; left:30px; right:30px; display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.source-strip span { padding:14px 10px; text-align:center; border-radius:14px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.07); font-size:11px; color:#b4b6c2; }
.network { position:absolute; width:180px; height:135px; right:8px; bottom:18px; }
.network i { position:absolute; display:block; width:12px; height:12px; border-radius:50%; background:#6f26ff; box-shadow:0 0 18px rgba(111,38,255,.8); z-index:2; }
.network .center { width:18px; height:18px; left:81px; top:58px; background:white; }
.network .n1{left:22px;top:28px}.network .n2{left:28px;top:93px}.network .n3{right:24px;top:20px}.network .n4{right:15px;top:85px}.network .n5{left:82px;top:8px}
.network b { position:absolute; height:1px; background:linear-gradient(90deg, rgba(122,74,255,.1), rgba(122,74,255,.8)); transform-origin:left center; left:90px; top:66px; }
.network .l1{width:75px; transform:rotate(206deg)}.network .l2{width:78px;transform:rotate(154deg)}.network .l3{width:78px;transform:rotate(-32deg)}.network .l4{width:80px;transform:rotate(29deg)}.network .l5{width:56px;transform:rotate(-94deg)}
.risk-meter { position:absolute; bottom:30px; left:30px; right:30px; display:flex; align-items:flex-end; gap:6px; height:95px; }
.risk-meter span { flex:1; border-radius:999px; background:linear-gradient(180deg,#6e2cff,#28dcb6); opacity:.85; }
.risk-meter span:nth-child(1){height:20%}.risk-meter span:nth-child(2){height:35%}.risk-meter span:nth-child(3){height:48%}.risk-meter span:nth-child(4){height:64%}.risk-meter span:nth-child(5){height:82%}.risk-meter span:nth-child(6){height:92%}.risk-meter span:nth-child(7){height:75%}.risk-meter span:nth-child(8){height:55%}.risk-meter span:nth-child(9){height:38%}

.security { padding-top:154px; }
.security-panel { position:relative; border-radius:36px; padding:24px; border:1px solid rgba(255,255,255,.09); background:#090a12; overflow:hidden; box-shadow:var(--shadow); }
.security-orb { position:absolute; width:520px; height:520px; border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%); background:radial-gradient(circle, rgba(57,0,255,.62) 0%, rgba(33,17,177,.28) 35%, transparent 70%); filter:blur(16px); }
.security-grid { position:relative; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; z-index:1; }
.security-grid article { min-height:185px; padding:26px; border-radius:23px; background:rgba(19,20,30,.86); border:1px solid rgba(255,255,255,.065); backdrop-filter:blur(14px); }
.security-grid article:nth-child(2), .security-grid article:nth-child(3), .security-grid article:nth-child(6) { background:rgba(15,16,26,.74); }
.icon { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; border:1px solid rgba(135,88,255,.3); color:#b490ff; background:rgba(90,0,250,.1); font-size:18px; }
.security-grid h3 { margin:24px 0 9px; font-size:20px; }
.security-grid p { margin:0; color:#7f8290; font-size:13px; line-height:1.55; max-width:440px; }

.cta-section { padding:150px 0 120px; }
.cta-card { position:relative; overflow:hidden; padding:72px 34px; text-align:center; border-radius:38px; background:linear-gradient(135deg,#5a00fa 0%, #6000ff 48%, #3900a6 100%); box-shadow:0 40px 110px rgba(66,0,202,.36); }
.cta-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% -30%, rgba(255,255,255,.22), transparent 45%); }
.cta-card > * { position:relative; z-index:1; }
.cta-logo-wrap img { width:170px; max-width:45vw; }
.cta-card .section-kicker { color:rgba(255,255,255,.72); margin-top:18px; }
.cta-card h2 { margin-bottom:16px; }
.cta-card p { margin:0 auto 28px; max-width:600px; color:rgba(255,255,255,.77); line-height:1.55; }
.cta-card .button-primary { background:white; color:#4e00d7; box-shadow:0 18px 42px rgba(14,0,50,.22); }

.footer {
  width:min(1180px, calc(100% - 40px));
  margin:0 auto;
  padding:56px 0 38px;
  display:grid;
  grid-template-columns:1.1fr 1fr 1.2fr;
  gap:50px;
  border-top:1px solid var(--line);
  color:#8a8d9b;
  font-size:13px;
}
.footer-brand img { width:96px; }
.footer-brand p { margin:18px 0 0; max-width:230px; line-height:1.5; }
.footer-company strong { color:white; display:block; margin-bottom:17px; }
dl { margin:0; display:grid; gap:8px; }
dl div { display:grid; grid-template-columns:54px 1fr; gap:12px; }
dt { color:#666a78; } dd { margin:0; color:#b3b5c0; }
.footer-contacts p { margin:0 0 14px; line-height:1.55; }
.footer-contacts a { color:#d8d9e0; }
.footer-contacts a:hover { color:white; }
.footer-bottom { grid-column:1/-1; display:flex; justify-content:space-between; gap:30px; border-top:1px solid rgba(255,255,255,.07); padding-top:24px; color:#616472; font-size:11px; }

.reveal { opacity:0; transform:translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); }
.reveal.visible { opacity:1; transform:none; }
.delay-1 { transition-delay:.09s; }.delay-2{transition-delay:.16s;}

@media (max-width: 980px) {
  .nav { display:none; }
  .site-header { grid-template-columns:1fr 1fr; }
  .hero { grid-template-columns:1fr; padding-top:150px; gap:68px; min-height:auto; }
  .hero-content { max-width:760px; }
  .hero-device { padding-bottom:40px; }
  .split { grid-template-columns:1fr; gap:42px; }
  .about-visual { min-height:500px; }
  .feature-grid { grid-template-columns:1fr 1fr; }
  .feature-wide { grid-column:1/-1; }
  .footer { grid-template-columns:1fr 1fr; }
  .footer-contacts { grid-column:1/-1; }
}

@media (max-width: 680px) {
  .site-header { top:10px; width:calc(100% - 20px); height:60px; border-radius:18px; padding-left:14px; }
  .brand, .brand img { width:64px; }
  .site-header .button { min-height:38px; padding:0 12px; font-size:12px; }
  .section { width:calc(100% - 28px); padding:96px 0; }
  .hero { width:100%; padding:120px 18px 70px; }
  .hero h1 { font-size:50px; }
  .hero-copy { font-size:16px; }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .button-primary { width:100%; }
  .device-frame { width:min(350px, 95vw); border-radius:40px; }
  .device-body { min-height:460px; border-radius:30px; }
  .feature-grid, .security-grid { grid-template-columns:1fr; }
  .feature-wide { grid-column:auto; }
  .feature-card { min-height:340px; }
  .feature-wide { min-height:400px; }
  .source-strip { grid-template-columns:1fr 1fr; }
  .about-visual { min-height:460px; }
  .floating-tag { display:none; }
  .search-card { padding:26px; }
  .search-card h3 { margin-top:50px; font-size:30px; }
  .security-panel { padding:12px; border-radius:28px; }
  .security-grid article { min-height:170px; }
  .cta-card { padding:56px 20px; border-radius:30px; }
  .footer { grid-template-columns:1fr; gap:34px; }
  .footer-contacts { grid-column:auto; }
  .footer-bottom { flex-direction:column; gap:8px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .reveal { opacity:1; transform:none; transition:none; }
  .button { transition:none; }
}
