:root {
  --ink: #0d1020;
  --muted: #60677c;
  --line: rgba(16, 24, 48, .12);
  --blue: #1369ff;
  --violet: #7839ee;
  --purple: #a127ee;
  --paper: #f7f8fc;
  --white: #fff;
  --radius: 28px;
  --shadow: 0 28px 90px rgba(48, 55, 108, .16);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height:1.6; }
a { color:inherit; }
.site-header { position:fixed; z-index:50; inset:18px 4vw auto; height:68px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; background:rgba(255,255,255,.82); backdrop-filter:blur(18px); border:1px solid rgba(255,255,255,.9); border-radius:20px; box-shadow:0 16px 50px rgba(27,34,72,.08); }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; font-weight:760; letter-spacing:-.02em; }
.brand img { width:42px; height:42px; border-radius:11px; object-fit:cover; }
.nav { display:flex; align-items:center; gap:26px; }
.nav a { text-decoration:none; font-size:14px; font-weight:600; color:#30364d; }
.nav a:hover { color:var(--blue); }
.nav-cta { padding:10px 16px; border-radius:12px; background:var(--ink); color:white!important; }
.nav-toggle { display:none; border:0; background:none; font-size:25px; }
.hero { min-height:100vh; padding:150px 7vw 90px; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:5vw; position:relative; overflow:hidden; background:radial-gradient(circle at 15% 10%, rgba(43,192,255,.12), transparent 35%), radial-gradient(circle at 85% 85%, rgba(148,44,238,.15), transparent 42%), linear-gradient(135deg,#ffffff,#f4f4ff 58%,#f8fbff); }
.hero-copy { position:relative; z-index:2; }
.eyebrow { margin:0 0 18px; color:#58617b; font-size:12px; font-weight:800; letter-spacing:.17em; }
h1 { margin:0; max-width:900px; font-size:clamp(52px,6.2vw,94px); line-height:.98; letter-spacing:-.055em; font-weight:800; }
.hero-text { max-width:720px; margin:30px 0; color:var(--muted); font-size:clamp(18px,1.6vw,23px); }
.hero-actions { display:flex; gap:14px; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 22px; border-radius:14px; text-decoration:none; font-weight:760; font-size:15px; transition:.25s ease; }
.button:hover { transform:translateY(-2px); }
.button-primary { color:white; background:linear-gradient(135deg,var(--blue),var(--violet)); box-shadow:0 16px 40px rgba(69,76,231,.24); }
.button-ghost { background:white; border:1px solid var(--line); }
.hero-tags { display:flex; gap:9px; flex-wrap:wrap; margin-top:32px; }
.hero-tags span { padding:8px 12px; background:rgba(255,255,255,.75); border:1px solid rgba(16,24,48,.08); border-radius:999px; font-size:12px; font-weight:650; color:#4c546b; }
.hero-visual { display:flex; justify-content:center; align-items:center; position:relative; min-height:520px; }
.orbital-card { width:min(480px,38vw); aspect-ratio:1; position:relative; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 32% 24%,#fff,rgba(255,255,255,.6) 35%,rgba(255,255,255,.15)); border:1px solid rgba(255,255,255,.95); box-shadow:var(--shadow), inset 0 0 0 20px rgba(255,255,255,.23); }
.orbital-card:before,.orbital-card:after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(60,75,197,.18); }
.orbital-card:before { inset:-26px; }
.orbital-card:after { inset:-58px; border-style:dashed; }
.orbital-card img { width:68%; border-radius:28%; filter:drop-shadow(0 28px 40px rgba(44,45,114,.18)); }
.signal { position:absolute; width:14px; height:14px; border-radius:50%; box-shadow:0 0 30px currentColor; }
.signal-a { top:8%; right:20%; color:#6b4eff; background:#6b4eff; }
.signal-b { right:2%; bottom:32%; color:#22b7ff; background:#22b7ff; }
.signal-c { left:12%; bottom:8%; color:#b14cff; background:#b14cff; }
.hero-glow { position:absolute; width:420px; height:420px; filter:blur(60px); opacity:.22; border-radius:50%; }
.hero-glow-one { background:#5bd3ff; left:-190px; top:18%; }
.hero-glow-two { background:#a14cff; right:-170px; bottom:-160px; }
.proof-strip { padding:23px 5vw; display:flex; justify-content:center; gap:24px; flex-wrap:wrap; align-items:center; background:#101327; color:white; font-size:12px; text-transform:uppercase; letter-spacing:.18em; }
.proof-strip i { width:4px; height:4px; border-radius:50%; background:#7465ff; }
.section { padding:110px 7vw; }
.section-heading { max-width:780px; margin-bottom:50px; }
.section-heading h2,.feature-panel h2,.about-copy h2,.contact-card h2 { margin:0; font-size:clamp(38px,4.8vw,70px); line-height:1.02; letter-spacing:-.045em; }
.section-heading>p:last-child,.about-copy>p,.feature-panel>div>p:last-child,.contact-card>p { color:var(--muted); font-size:18px; max-width:720px; }
.card-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.service-card { min-height:360px; padding:34px; background:white; border:1px solid rgba(20,28,60,.07); border-radius:var(--radius); box-shadow:0 20px 70px rgba(45,48,100,.07); position:relative; overflow:hidden; }
.service-card:after { content:""; position:absolute; width:180px; height:180px; border-radius:50%; right:-70px; bottom:-80px; background:linear-gradient(135deg,rgba(31,117,255,.14),rgba(143,44,238,.16)); filter:blur(5px); }
.card-number { font-size:12px; color:#7b8192; letter-spacing:.15em; }
.service-card h3 { font-size:28px; margin:40px 0 14px; letter-spacing:-.03em; }
.service-card p { color:var(--muted); }
.service-card ul { padding-left:18px; color:#383f55; }
.industries-section { background:#101327; color:white; }
.industries-section .eyebrow,.industries-section .section-heading>p:last-child { color:#aeb5d0; }
.industry-list { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.16); }
.industry-list div { padding:34px 18px; border-bottom:1px solid rgba(255,255,255,.16); display:flex; justify-content:space-between; gap:30px; }
.industry-list div:nth-child(odd) { border-right:1px solid rgba(255,255,255,.16); }
.industry-list strong { font-size:22px; }
.industry-list span { color:#aeb5d0; text-align:right; }
.feature-section { background:linear-gradient(180deg,#101327 0 46%,var(--paper) 46%); }
.feature-panel { padding:58px; color:white; border-radius:34px; background:linear-gradient(135deg,#1b43cc,#6d32de 64%,#a127ee); box-shadow:var(--shadow); display:grid; grid-template-columns:1.2fr .8fr; gap:50px; align-items:end; }
.feature-panel .eyebrow,.feature-panel p { color:#dce2ff!important; }
.feature-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.feature-metrics div { padding:20px 12px; border-left:1px solid rgba(255,255,255,.28); }
.feature-metrics strong { display:block; font-size:42px; line-height:1; }
.feature-metrics span { font-size:12px; color:#dce2ff; }
.about-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:center; }
.about-image { border-radius:32px; overflow:hidden; box-shadow:var(--shadow); background:white; }
.about-image img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; }
.about-copy { max-width:760px; }
.about-signature { margin-top:28px; display:flex; flex-direction:column; }
.about-signature strong { font-size:20px; }
.about-signature span { color:var(--muted); }
.contact-section { padding-top:30px; }
.contact-card { padding:70px; border-radius:36px; background:#fff; box-shadow:var(--shadow); text-align:center; }
.contact-card h2 { max-width:930px; margin:0 auto; }
.contact-card>p { margin:24px auto; }
.contact-links { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; margin:25px 0 30px; }
.contact-links a { color:var(--blue); font-weight:700; }
.button-light { background:var(--ink); color:white; }
footer { padding:36px 7vw; display:grid; grid-template-columns:1fr auto auto; gap:25px; align-items:center; border-top:1px solid var(--line); color:#73798d; font-size:12px; }
.footer-brand { display:flex; align-items:center; gap:10px; color:var(--ink); font-weight:760; }
.footer-brand img { width:36px; height:36px; border-radius:10px; }
.reveal { opacity:0; transform:translateY(26px); transition:opacity .8s ease,transform .8s ease; }
.reveal.visible { opacity:1; transform:none; }
.delay-1 { transition-delay:.12s; }.delay-2 { transition-delay:.22s; }.delay-3 { transition-delay:.32s; }
@media (max-width: 900px) {
  .site-header { inset:10px 12px auto; }
  .nav-toggle { display:block; }
  .nav { display:none; position:absolute; left:0; right:0; top:78px; padding:18px; flex-direction:column; align-items:stretch; background:white; border-radius:18px; box-shadow:var(--shadow); }
  .nav.open { display:flex; }
  .hero { grid-template-columns:1fr; padding-top:135px; text-align:left; }
  .hero-visual { min-height:390px; }
  .orbital-card { width:min(340px,70vw); }
  .card-grid,.industry-list,.feature-panel,.about-section { grid-template-columns:1fr; }
  .industry-list div:nth-child(odd) { border-right:0; }
  .feature-metrics { margin-top:10px; }
  .about-image { max-width:520px; }
  footer { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
  .section { padding:80px 22px; }
  .hero { padding:130px 22px 70px; }
  h1 { font-size:46px; }
  .hero-actions .button { width:100%; }
  .service-card { min-height:unset; padding:27px; }
  .feature-panel,.contact-card { padding:35px 24px; border-radius:25px; }
  .feature-metrics { grid-template-columns:1fr; }
  .feature-metrics div { border-left:0; border-top:1px solid rgba(255,255,255,.22); }
  .industry-list div { flex-direction:column; gap:4px; }
  .industry-list span { text-align:left; }
}
