:root {
  --red: #ef2b2f;
  --red-bright: #ff474c;
  --red-dark: #bd1d22;
  --ink: #08090a;
  --ink-2: #0d0f10;
  --ink-3: #141719;
  --paper: #f4f3ef;
  --paper-2: #ebeae5;
  --muted: #777a7d;
  --muted-dark: #a5a8ab;
  --line: rgba(0,0,0,.12);
  --dark-line: rgba(255,255,255,.11);
  --white: #fff;
  --max: 1240px;
  --radius: 2px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"DM Sans",Arial,sans-serif; line-height:1.55; overflow-x:hidden; }
body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.container { width:min(var(--max), calc(100% - 56px)); margin:0 auto; }
.site-noise { position:fixed; inset:0; z-index:100; pointer-events:none; opacity:.025; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"); }

/* NAV */
.site-header { position:fixed; top:0; left:0; right:0; z-index:50; background:rgba(8,9,10,.82); backdrop-filter:blur(20px); border-bottom:1px solid rgba(255,255,255,.08); transition:background .25s ease, border-color .25s ease; }
.site-header.scrolled { background:rgba(8,9,10,.96); border-color:rgba(255,255,255,.13); }
.nav-wrap { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.brand { display:flex; align-items:center; gap:10px; color:#fff; flex-shrink:0; }
.brand img { width:108px; height:auto; display:block; }
.brand span { font:700 11px/1 "Space Grotesk",sans-serif; letter-spacing:.19em; color:#d6d7d8; }
.nav { display:flex; align-items:center; gap:27px; color:#c8cacc; font-size:12px; font-weight:600; }
.nav a { position:relative; transition:color .2s ease; }
.nav a:not(.nav-cta)::after { content:""; position:absolute; left:0; right:100%; bottom:-8px; height:1px; background:var(--red); transition:right .2s ease; }
.nav a:not(.nav-cta):hover { color:#fff; }
.nav a:not(.nav-cta):hover::after { right:0; }
.nav-cta { border:1px solid rgba(255,255,255,.25); padding:10px 15px; border-radius:999px; color:#fff; }
.nav-cta:hover { border-color:var(--red); background:rgba(239,43,47,.1); }
.nav-cta span { color:var(--red); margin-left:6px; }
.menu-toggle { display:none; width:42px; height:42px; border:1px solid rgba(255,255,255,.16); background:transparent; color:#fff; border-radius:50%; position:relative; }
.menu-toggle span { position:absolute; left:12px; right:12px; height:1px; background:#fff; transition:transform .2s ease, top .2s ease; }
.menu-toggle span:first-child { top:16px; }
.menu-toggle span:last-child { top:23px; }
.menu-toggle.active span:first-child { top:20px; transform:rotate(45deg); }
.menu-toggle.active span:last-child { top:20px; transform:rotate(-45deg); }

/* COMMON */
.section { padding:120px 0; position:relative; }
.section-kicker, .eyebrow, .micro-label { font:700 10px/1 "Space Grotesk",sans-serif; letter-spacing:.2em; text-transform:uppercase; color:var(--red); }
.section-kicker.light { color:#ff555a; }
h2 { margin:18px 0 0; font:600 clamp(42px,5.2vw,76px)/.97 "Space Grotesk",sans-serif; letter-spacing:-.055em; }
h2 em { color:var(--red); font-style:normal; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:13px; padding:14px 20px; border-radius:999px; font-size:12px; font-weight:700; transition:transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }
.button span { font-size:15px; }
.button-primary { background:var(--red); color:#fff; }
.button-primary:hover { background:var(--red-bright); transform:translateY(-2px); }
.button-ghost, .button-outline { border:1px solid rgba(255,255,255,.25); color:#fff; }
.button-ghost:hover, .button-outline:hover { background:#fff; color:#111; transform:translateY(-2px); }
.button-outline { margin-top:28px; }
.text-link { display:inline-block; margin-top:20px; font-size:12px; font-weight:700; }
.text-link span { color:var(--red); margin-left:8px; }

/* HERO */
.hero { min-height:100vh; padding:150px 0 40px; position:relative; overflow:hidden; color:#fff; background:var(--ink); display:flex; flex-direction:column; justify-content:center; }
.hero-grid { position:absolute; inset:0; opacity:.8; background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to bottom,#000 0%,transparent 94%); }
.hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,9,10,.98) 0%,rgba(8,9,10,.82) 48%,rgba(8,9,10,.22) 100%); z-index:0; }
.hero-glow { position:absolute; border-radius:50%; filter:blur(4px); pointer-events:none; }
.hero-glow-one { width:600px; height:600px; right:-80px; top:8%; background:radial-gradient(circle,rgba(239,43,47,.18),transparent 66%); }
.hero-glow-two { width:400px; height:400px; left:-160px; bottom:-160px; background:radial-gradient(circle,rgba(239,43,47,.09),transparent 68%); }
.hero-layout { position:relative; z-index:2; display:grid; grid-template-columns:1.02fr .98fr; gap:60px; align-items:center; }
.hero-content { max-width:760px; }
.eyebrow { display:flex; align-items:center; gap:11px; color:#c7c9cb; }
.eyebrow-line { width:34px; height:1px; background:var(--red); }
.hero h1 { margin:25px 0 25px; font:700 clamp(58px,7.2vw,104px)/.9 "Space Grotesk",sans-serif; letter-spacing:-.067em; text-transform:uppercase; max-width:820px; }
.hero h1 span { color:#8e9295; }
.hero-copy { max-width:650px; color:#c7c9cc; font-size:18px; line-height:1.6; }
.hero-actions { display:flex; gap:12px; margin-top:34px; flex-wrap:wrap; }
.partner-credential { margin-top:48px; display:flex; align-items:center; gap:18px; width:max-content; max-width:100%; padding:13px 16px 13px 15px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.025); }
.partner-credential-copy { display:flex; flex-direction:column; gap:6px; }
.partner-credential-copy strong { font:600 12px/1 "Space Grotesk",sans-serif; text-transform:uppercase; letter-spacing:.1em; }
.micro-label { color:#777c80; font-size:8px; letter-spacing:.17em; }
.nvidia-mark { display:flex; align-items:center; justify-content:center; background:#000; overflow:hidden; }
.nvidia-mark-small { width:95px; height:46px; }
.nvidia-mark img { width:100%; height:100%; object-fit:contain; display:block; }
.hero-visual { min-height:560px; display:flex; align-items:center; justify-content:center; }
.visual-frame { width:min(100%,560px); height:560px; position:relative; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.018); overflow:hidden; box-shadow:inset 0 0 80px rgba(239,43,47,.025); }
.visual-topline, .visual-bottomline { position:absolute; left:18px; right:18px; display:flex; justify-content:space-between; color:#6e7377; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.15em; text-transform:uppercase; z-index:5; }
.visual-topline { top:18px; }
.visual-bottomline { bottom:18px; }
.visual-canvas { position:absolute; inset:48px 18px 48px; }
.orbit { position:absolute; left:50%; top:50%; border:1px solid rgba(239,43,47,.28); border-radius:50%; transform:translate(-50%,-50%) rotate(-18deg); }
.orbit-a { width:83%; height:53%; animation:spin 20s linear infinite; }
.orbit-b { width:62%; height:73%; animation:spinReverse 26s linear infinite; border-style:dashed; opacity:.7; }
.orbit-c { width:44%; height:42%; animation:spin 17s linear infinite; opacity:.65; }
.core-glow { position:absolute; left:50%; top:50%; width:180px; height:180px; transform:translate(-50%,-50%); border-radius:50%; background:radial-gradient(circle,rgba(239,43,47,.25),transparent 68%); filter:blur(12px); }
.core-node { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:160px; height:160px; border:1px solid rgba(255,255,255,.18); background:rgba(8,9,10,.88); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; box-shadow:0 0 55px rgba(239,43,47,.12); }
.core-node::after { content:""; position:absolute; inset:8px; border:1px solid rgba(239,43,47,.28); border-radius:50%; }
.core-tag { color:var(--red); font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.22em; margin-bottom:8px; z-index:1; }
.core-node strong { font:700 16px/1 "Space Grotesk",sans-serif; letter-spacing:.08em; z-index:1; }
.core-node small { color:#73787c; font-size:7px; letter-spacing:.12em; margin-top:8px; z-index:1; }
.visual-node { position:absolute; z-index:4; min-width:84px; padding:9px 10px; border:1px solid rgba(255,255,255,.12); background:rgba(8,9,10,.9); display:flex; flex-direction:column; gap:4px; }
.visual-node span { font:700 11px/1 "Space Grotesk",sans-serif; color:#fff; }
.visual-node small { color:#73787c; font-size:7px; letter-spacing:.11em; }
.node-ai { left:9%; top:18%; }
.node-compute { right:8%; top:25%; }
.node-infra { right:10%; bottom:18%; }
.node-app { left:9%; bottom:24%; }
.node-eco { left:45%; bottom:5%; transform:translateX(-50%); }
.scan-line { position:absolute; left:4%; right:4%; top:50%; height:1px; background:linear-gradient(90deg,transparent,var(--red),transparent); opacity:.4; animation:scan 5s ease-in-out infinite; }
.hero-bottom { position:relative; z-index:3; margin-top:25px; display:flex; align-items:center; gap:14px; color:#666b6f; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.18em; text-transform:uppercase; }
.hero-bottom i { width:3px; height:3px; border-radius:50%; background:var(--red); opacity:.7; }
.pulse-dot { width:5px; height:5px; background:var(--red); border-radius:50%; box-shadow:0 0 14px var(--red); animation:pulse 1.8s ease-in-out infinite; }

/* INTRO */
.intro { background:var(--paper); }
.intro-grid, .about-grid { display:grid; grid-template-columns:1.03fr .97fr; gap:90px; }
.intro-copy { padding-top:43px; max-width:590px; color:#4e5052; font-size:17px; }

/* CAPABILITIES */
.dark-section { background:var(--ink); color:#fff; }
.section-head, .partner-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:80px; align-items:end; margin-bottom:58px; }
.section-head p, .partner-heading p { color:#9da1a5; max-width:500px; margin:0 0 5px; font-size:15px; }
.capability-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--dark-line); border-left:1px solid var(--dark-line); }
.capability-card { min-height:360px; position:relative; padding:34px; border-right:1px solid var(--dark-line); border-bottom:1px solid var(--dark-line); overflow:hidden; transition:background .3s ease, transform .3s ease; }
.capability-card::before { content:""; position:absolute; width:180px; height:180px; right:-80px; bottom:-100px; border:1px solid rgba(239,43,47,.2); border-radius:50%; transition:transform .45s ease; }
.capability-card:hover { background:#0f1112; }
.capability-card:hover::before { transform:scale(1.45); }
.card-number { position:absolute; top:29px; right:31px; color:#53575b; font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.15em; }
.card-icon { color:var(--red); font-size:38px; line-height:1; margin-bottom:72px; }
.capability-card h3 { font:600 29px/1.04 "Space Grotesk",sans-serif; letter-spacing:-.03em; margin:0 0 15px; max-width:450px; }
.capability-card p { color:#9ea2a5; max-width:500px; margin:0; font-size:14px; }
.card-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:26px; }
.card-tags span { border:1px solid rgba(255,255,255,.12); color:#7f8488; padding:5px 8px; font-size:8px; text-transform:uppercase; letter-spacing:.12em; }

/* AI */
.ai-section { background:var(--paper-2); }
.ai-heading { display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:end; margin-bottom:55px; }
.ai-heading p { color:#606367; max-width:470px; margin:0 0 4px; }
.ai-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.ai-card { min-height:420px; padding:28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); position:relative; transition:background .25s ease; }
.ai-card:hover { background:rgba(255,255,255,.48); }
.ai-card-top { display:flex; justify-content:space-between; color:#818487; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.15em; }
.ai-card h3 { margin:82px 0 14px; font:600 27px/1.02 "Space Grotesk",sans-serif; letter-spacing:-.03em; }
.ai-card p { color:#626568; font-size:13px; }
.ai-card ul { list-style:none; padding:0; margin:24px 0 0; border-top:1px solid var(--line); }
.ai-card li { padding:9px 0; border-bottom:1px solid var(--line); color:#3f4245; font-size:11px; }
.ai-card li::before { content:"+"; color:var(--red); margin-right:7px; }

/* COMPUTE */
.compute-section { background:#0e1011; color:#fff; overflow:hidden; }
.compute-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; align-items:center; }
.compute-copy p { color:#9fa3a6; max-width:510px; margin:28px 0 0; }
.workload-map { border-top:1px solid var(--dark-line); }
.workload-row { display:grid; grid-template-columns:45px 1fr auto; align-items:center; min-height:76px; border-bottom:1px solid var(--dark-line); gap:18px; transition:padding .25s ease, background .25s ease; }
.workload-row:hover { padding-left:10px; background:rgba(255,255,255,.025); }
.workload-row span { color:var(--red); font:700 9px/1 "Space Grotesk",sans-serif; }
.workload-row strong { font:600 18px/1 "Space Grotesk",sans-serif; letter-spacing:.02em; }
.workload-row small { color:#6d7276; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.1em; }
.compute-specs { display:flex; flex-wrap:wrap; gap:8px; padding-top:22px; }
.compute-specs span { color:#888d91; border:1px solid rgba(255,255,255,.11); padding:7px 9px; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.1em; }

/* INDUSTRIES */
.industry-section { background:var(--paper); }
.industry-head { display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:end; margin:20px 0 55px; }
.industry-head p { color:#616467; max-width:490px; margin:0 0 5px; }
.industry-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.industry-item { min-height:175px; padding:25px 28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:grid; grid-template-columns:42px 1fr 30px; grid-template-rows:auto auto; column-gap:12px; transition:background .25s ease, padding .25s ease; }
.industry-item:hover { background:#ebe9e3; padding-left:34px; }
.industry-item > span { grid-row:1/3; color:var(--red); font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.12em; padding-top:5px; }
.industry-item strong { font:600 25px/1.05 "Space Grotesk",sans-serif; letter-spacing:-.03em; }
.industry-item small { color:#6b6e70; font-size:11px; margin-top:12px; }
.industry-item b { grid-column:3; grid-row:1/3; align-self:center; justify-self:end; color:var(--red); font-size:17px; }

/* ECOSYSTEM */
.ecosystem-section { background:#f0efeb; }
.ecosystem-heading { display:grid; grid-template-columns:1.1fr .9fr; gap:80px; align-items:end; }
.ecosystem-heading p { color:#5e6164; max-width:490px; margin:0 0 5px; }
.ecosystem-visual { margin-top:80px; min-height:610px; position:relative; border:1px solid var(--line); background:radial-gradient(circle at 50% 50%,rgba(239,43,47,.05),transparent 34%),linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px); background-size:auto,70px 70px,70px 70px; overflow:hidden; }
.ecosystem-ring { position:absolute; left:50%; top:50%; border:1px solid rgba(239,43,47,.28); border-radius:50%; transform:translate(-50%,-50%); }
.ring-outer { width:58%; height:58%; }
.ring-inner { width:32%; height:32%; border-style:dashed; }
.ecosystem-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:180px; height:180px; background:var(--ink); color:#fff; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; box-shadow:0 0 0 9px rgba(239,43,47,.04),0 25px 80px rgba(0,0,0,.12); }
.ecosystem-center span { color:var(--red); font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.22em; }
.ecosystem-center strong { font:700 17px/1 "Space Grotesk",sans-serif; margin-top:7px; letter-spacing:.08em; }
.ecosystem-center small { color:#777; font-size:7px; margin-top:10px; letter-spacing:.12em; }
.eco-node { position:absolute; width:180px; padding:12px 14px; border:1px solid var(--line); background:rgba(244,243,239,.92); box-shadow:0 8px 25px rgba(0,0,0,.04); display:flex; flex-direction:column; gap:5px; }
.eco-node::after { content:""; position:absolute; width:7px; height:7px; border-radius:50%; background:var(--red); box-shadow:0 0 12px rgba(239,43,47,.35); }
.eco-node b { font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.13em; }
.eco-node span { color:#777; font-size:8px; }
.eco-top { left:50%; top:8%; transform:translateX(-50%); text-align:center; }
.eco-top::after { left:50%; bottom:-4px; transform:translate(-50%,50%); }
.eco-right { right:5%; top:34%; }
.eco-right::after { left:-4px; top:50%; transform:translate(-50%,-50%); }
.eco-bottom-right { right:13%; bottom:9%; }
.eco-bottom-right::after { left:18%; top:-4px; transform:translate(-50%,-50%); }
.eco-bottom-left { left:13%; bottom:9%; }
.eco-bottom-left::after { right:18%; top:-4px; transform:translate(50%,-50%); }
.eco-left { left:5%; top:34%; }
.eco-left::after { right:-4px; top:50%; transform:translate(50%,-50%); }
.eco-top-left { left:16%; top:8%; }
.eco-top-left::after { right:12%; bottom:-4px; transform:translate(50%,50%); }

/* COE */
.coe-section { background:var(--paper); }
.coe-layout { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
.coe-copy p { color:#5f6265; max-width:550px; font-size:16px; margin-top:28px; }
.coe-sequence { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:32px; color:#56595c; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.12em; }
.coe-sequence span { padding:8px 9px; border:1px solid var(--line); }
.coe-sequence i { color:var(--red); font-style:normal; }
.coe-panel { border:1px solid var(--line); background:#e9e8e2; }
.coe-panel-label { padding:16px 18px; border-bottom:1px solid var(--line); color:#737679; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.15em; }
.coe-panel-grid { display:grid; grid-template-columns:1fr 1fr; }
.coe-panel-grid > div { min-height:190px; padding:23px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; }
.coe-panel-grid > div:nth-child(even) { border-right:0; }
.coe-panel-grid > div:nth-last-child(-n+2) { border-bottom:0; }
.coe-panel-grid span { color:var(--red); font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.14em; }
.coe-panel-grid strong { margin-top:auto; font:600 22px/1 "Space Grotesk",sans-serif; }
.coe-panel-grid small { color:#74777a; font-size:10px; margin-top:9px; }

/* PARTNERS */
.partner-section { background:var(--ink); color:#fff; overflow:hidden; }
.partner-showcase { display:grid; grid-template-columns:.9fr 1.1fr; min-height:400px; border:1px solid var(--dark-line); background:#0c0e0f; }
.partner-copy { padding:55px; display:flex; flex-direction:column; justify-content:center; }
.partner-copy h3 { margin:17px 0 10px; font:700 clamp(45px,6vw,78px)/.9 "Space Grotesk",sans-serif; letter-spacing:-.06em; }
.partner-copy p { max-width:480px; color:#969b9f; font-size:14px; }
.partner-badge { width:max-content; margin-top:23px; padding:9px 11px; border:1px solid rgba(255,255,255,.13); color:#d7d9da; font:700 8px/1 "Space Grotesk",sans-serif; letter-spacing:.14em; }
.nvidia-display { min-height:400px; display:flex; align-items:center; justify-content:center; background:#000; border-left:1px solid var(--dark-line); position:relative; }
.nvidia-display::before { content:""; position:absolute; inset:12%; border:1px solid rgba(118,185,0,.12); }
.nvidia-display img { width:min(65%,470px); height:auto; display:block; position:relative; z-index:1; }

/* APPROACH */
.approach-section { background:var(--paper); }
.approach-heading { display:grid; grid-template-columns:1fr .8fr; gap:80px; align-items:end; margin-bottom:55px; }
.approach-heading p { color:#626568; margin:0 0 5px; }
.process { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); }
.process-step { min-height:255px; padding:24px 22px 20px 0; margin-right:22px; border-bottom:1px solid var(--line); position:relative; }
.process-step:not(:last-child)::after { content:""; position:absolute; top:-1px; right:0; width:1px; height:100%; background:var(--line); }
.process-step span { color:var(--red); font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.15em; }
.process-step h3 { margin:66px 0 12px; font:600 26px/1 "Space Grotesk",sans-serif; }
.process-step p { color:#686b6e; font-size:11px; max-width:180px; }

/* ABOUT */
.about-section { background:var(--paper-2); }
.about-copy { max-width:600px; padding-top:42px; color:#4e5154; font-size:16px; }
.about-copy p + p { margin-top:20px; }
.about-metrics { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); margin-top:38px; }
.about-metrics div { padding:18px 12px 0 0; border-right:1px solid var(--line); margin-right:12px; display:flex; flex-direction:column; gap:4px; }
.about-metrics div:last-child { border-right:0; }
.about-metrics strong { font:700 22px/1 "Space Grotesk",sans-serif; }
.about-metrics span { color:#7a7d80; font-size:9px; text-transform:uppercase; letter-spacing:.1em; }

/* CTA */
.cta-section { min-height:600px; position:relative; overflow:hidden; color:#fff; background:#08090a; display:flex; align-items:center; }
.cta-grid { position:absolute; inset:0; opacity:.45; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:80px 80px; mask-image:radial-gradient(circle at 50% 50%,#000,transparent 74%); }
.cta-section::after { content:""; position:absolute; width:700px; height:700px; left:50%; top:50%; transform:translate(-50%,-50%); border-radius:50%; background:radial-gradient(circle,rgba(239,43,47,.12),transparent 62%); }
.cta-inner { position:relative; z-index:2; text-align:center; max-width:820px; }
.cta-inner h2 { font-size:clamp(55px,7vw,100px); }
.cta-inner p { max-width:610px; margin:28px auto 0; color:#9ea3a6; font-size:16px; }
.cta-inner .hero-actions { justify-content:center; }
.cta-inner small { display:block; margin-top:26px; color:#545a5e; font-size:9px; }

/* FOOTER */
footer { background:#050606; color:#8b8f92; border-top:1px solid rgba(255,255,255,.08); }
.footer-wrap { min-height:100px; display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:35px; }
.footer-brand { display:flex; align-items:center; gap:9px; color:#fff; }
.footer-brand img { width:84px; }
.footer-brand span { font:700 9px/1 "Space Grotesk",sans-serif; letter-spacing:.18em; }
.footer-nav { display:flex; gap:18px; font-size:9px; }
.footer-nav a:hover, .back-top:hover { color:#fff; }
.footer-copy { font-size:9px; color:#565b5e; }
.back-top { font-size:9px; }

/* REVEAL */
.reveal { opacity:1; transform:none; }
.js .reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease; }
.js .reveal.is-visible { opacity:1; transform:none; }
.reveal-delay { transition-delay:.1s !important; }
.reveal-delay-1 { transition-delay:.08s !important; }
.reveal-delay-2 { transition-delay:.16s !important; }
.reveal-delay-3 { transition-delay:.24s !important; }

/* ANIMATION */
@keyframes spin { from{transform:translate(-50%,-50%) rotate(0deg)} to{transform:translate(-50%,-50%) rotate(360deg)} }
@keyframes spinReverse { from{transform:translate(-50%,-50%) rotate(360deg)} to{transform:translate(-50%,-50%) rotate(0deg)} }
@keyframes scan { 0%,100%{transform:translateY(-150px);opacity:0} 45%,55%{opacity:.5} 50%{transform:translateY(150px)} }
@keyframes pulse { 0%,100%{opacity:.35;transform:scale(.8)} 50%{opacity:1;transform:scale(1.15)} }

/* RESPONSIVE */
@media (max-width:1050px){
  .hero-layout,.compute-layout,.coe-layout{grid-template-columns:1fr;}
  .hero-visual{min-height:500px; margin-top:20px;}
  .hero-content{max-width:900px;}
  .visual-frame{height:500px;}
  .ai-grid{grid-template-columns:repeat(2,1fr);}
  .eco-node{width:165px;}
  .partner-showcase{grid-template-columns:1fr;}
  .nvidia-display{min-height:330px; border-left:0; border-top:1px solid var(--dark-line);}
  .process{grid-template-columns:repeat(3,1fr);}
  .process-step{margin-bottom:20px;}
  .process-step:nth-child(3)::after{display:none;}
  .footer-wrap{grid-template-columns:1fr 1fr; padding:25px 0;}
}
@media (max-width:820px){
  .container{width:min(var(--max),calc(100% - 38px));}
  .nav{display:none; position:absolute; top:78px; left:0; right:0; padding:18px 20px 24px; background:rgba(8,9,10,.98); border-bottom:1px solid rgba(255,255,255,.1); flex-direction:column; align-items:flex-start; gap:18px;}
  .nav.open{display:flex;}
  .menu-toggle{display:block;}
  .hero{padding-top:130px;}
  .hero-layout{gap:20px;}
  .hero h1{font-size:clamp(52px,12vw,78px);}
  .hero-visual{min-height:430px;}
  .visual-frame{height:430px;}
  .intro-grid,.about-grid,.section-head,.ai-heading,.industry-head,.ecosystem-heading,.approach-heading{grid-template-columns:1fr;gap:30px;}
  .intro-copy,.about-copy{padding-top:0;}
  .capability-grid,.industry-grid{grid-template-columns:1fr;}
  .ai-grid{grid-template-columns:1fr;}
  .ai-card{min-height:350px;}
  .ecosystem-visual{min-height:520px; margin-top:55px;}
  .ring-outer{width:68%;height:52%;}
  .ring-inner{width:40%;height:36%;}
  .eco-node{width:145px;}
  .eco-top{top:5%;}
  .eco-top-left{left:4%;top:15%;}
  .eco-right{right:2%;top:28%;}
  .eco-left{left:2%;top:42%;}
  .eco-bottom-right{right:4%;bottom:10%;}
  .eco-bottom-left{left:4%;bottom:10%;}
  .process{grid-template-columns:1fr 1fr;}
  .process-step:nth-child(3)::after{display:block;}
  .process-step:nth-child(2n)::after{display:none;}
  .about-metrics{grid-template-columns:repeat(2,1fr);row-gap:20px;}
  .footer-wrap{grid-template-columns:1fr;gap:16px;}
  .footer-nav{flex-wrap:wrap;}
}
@media (max-width:560px){
  .container{width:calc(100% - 28px);}
  .nav-wrap{min-height:70px;}
  .brand img{width:91px;}
  .brand span{font-size:9px;}
  .hero{padding:115px 0 30px;min-height:auto;}
  .hero h1{font-size:clamp(46px,14vw,65px);}
  .hero-copy{font-size:15px;}
  .hero-actions{flex-direction:column;align-items:stretch;}
  .button{width:100%;}
  .partner-credential{width:100%;justify-content:space-between;}
  .hero-visual{min-height:360px;}
  .visual-frame{height:360px;}
  .visual-node{min-width:70px;padding:7px;}
  .visual-node small{font-size:6px;}
  .node-ai{left:2%;}.node-compute{right:2%;}.node-infra{right:1%;bottom:15%;}.node-app{left:2%;bottom:20%;}.node-eco{bottom:3%;}
  .core-node{width:130px;height:130px;}
  .core-node strong{font-size:13px;}
  .hero-bottom{gap:7px;overflow:hidden;white-space:nowrap;font-size:7px;}
  .section{padding:85px 0;}
  h2{font-size:clamp(38px,11vw,56px);}
  .capability-card{min-height:330px;padding:26px;}
  .card-icon{margin-bottom:55px;}
  .industry-item{min-height:155px;grid-template-columns:32px 1fr 22px;padding:21px 18px;}
  .industry-item strong{font-size:21px;}
  .ecosystem-visual{min-height:480px;}
  .ecosystem-center{width:135px;height:135px;}
  .ecosystem-center strong{font-size:13px;}
  .eco-node{width:120px;padding:9px;}
  .eco-node b{font-size:7px;}.eco-node span{font-size:6px;}
  .eco-top{top:4%;}.eco-top-left{left:1%;top:18%;}.eco-left{left:1%;top:44%;}.eco-right{right:1%;top:33%;}.eco-bottom-left{left:4%;bottom:7%;}.eco-bottom-right{right:4%;bottom:7%;}
  .coe-panel-grid{grid-template-columns:1fr;}
  .coe-panel-grid > div,.coe-panel-grid > div:nth-child(even),.coe-panel-grid > div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line);}
  .coe-panel-grid > div:last-child{border-bottom:0;}
  .partner-copy{padding:32px;}
  .nvidia-display{min-height:250px;}
  .nvidia-display img{width:72%;}
  .process{grid-template-columns:1fr;}
  .process-step{min-height:205px;margin:0;border-bottom:1px solid var(--line);}
  .process-step::after{display:none !important;}
  .process-step h3{margin-top:52px;}
  .about-metrics{grid-template-columns:1fr 1fr;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
}
