:root { --ink:#07182d; --ink-soft:#102a49; --paper:#f6f8fb; --white:#fff; --blue:#4169ff; --aqua:#6af0d1; --line:rgba(7,24,45,.13); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { align-items:center; background:rgba(246,248,251,.88); backdrop-filter:blur(18px); border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr auto 1fr; min-height:88px; padding:0 5vw; position:relative; z-index:10; }
.brand { align-items:center; display:inline-flex; gap:12px; width:max-content; }
.brand-mark { align-items:center; background:var(--ink); border-radius:11px; color:var(--aqua); display:flex; font-size:23px; font-weight:850; height:43px; justify-content:center; transform:rotate(-5deg); width:43px; }
.brand strong,.brand small { display:block; line-height:1; letter-spacing:.17em; }
.brand strong { font-size:13px; }.brand small { color:#66758a; font-size:8px; margin-top:5px; }
nav { display:flex; gap:clamp(22px,3vw,46px); } nav a { color:#536276; font-size:13px; font-weight:650; transition:color .2s ease; } nav a:hover { color:var(--blue); }
.header-cta { justify-self:end; font-size:13px; font-weight:750; }.header-cta span { color:var(--blue); font-size:18px; margin-left:7px; }
.hero { align-items:center; display:grid; gap:5vw; grid-template-columns:1.05fr .95fr; min-height:690px; overflow:hidden; padding:72px 5vw 86px; }
.hero-copy { max-width:760px; }.eyebrow { align-items:center; color:#62728a; display:flex; font-size:11px; font-weight:800; letter-spacing:.18em; margin:0 0 25px; text-transform:uppercase; }
.eyebrow span { background:var(--blue); border-radius:50%; height:7px; margin-right:10px; width:7px; }
h1,h2 { font-weight:760; letter-spacing:-.065em; line-height:.98; margin:0; } h1 { font-size:clamp(58px,6.4vw,105px); } h1 em,h2 em { color:var(--blue); font-family:Georgia,serif; font-weight:400; }
.hero-lead { color:#506077; font-size:clamp(18px,1.45vw,23px); line-height:1.62; margin:32px 0 36px; max-width:650px; }
.hero-actions { align-items:center; display:flex; gap:30px; }.primary-button { align-items:center; background:var(--ink); border-radius:999px; color:white; display:inline-flex; font-size:13px; font-weight:750; gap:30px; padding:17px 20px 17px 25px; transition:transform .2s ease,background .2s ease; }
.primary-button:hover { background:var(--blue); transform:translateY(-2px); }.primary-button span { align-items:center; background:var(--aqua); border-radius:50%; color:var(--ink); display:flex; height:29px; justify-content:center; width:29px; }
.text-link { border-bottom:1px solid var(--line); font-size:13px; font-weight:720; padding:12px 0; }.text-link span { color:var(--blue); margin-left:10px; }
.hero-visual { aspect-ratio:1; background:radial-gradient(circle at 50% 48%,#234676 0,#0c2441 48%,#07182d 70%); border-radius:50%; box-shadow:0 40px 90px rgba(7,24,45,.22); max-width:620px; position:relative; transform:rotate(-3deg); width:100%; }
.hero-visual::before { background:var(--aqua); border-radius:50%; content:''; height:8px; left:17%; position:absolute; top:18%; width:8px; }.hero-visual::after { background:var(--blue); border-radius:50%; bottom:16%; content:''; height:16px; position:absolute; right:17%; width:16px; }
.orbit { border:1px solid rgba(255,255,255,.24); border-radius:50%; inset:13%; position:absolute; }.orbit-two { border-color:rgba(106,240,209,.25); inset:28%; }
.core { align-items:center; background:white; border-radius:50%; box-shadow:0 18px 50px rgba(0,0,0,.25); display:flex; flex-direction:column; height:29%; justify-content:center; left:35.5%; position:absolute; top:35.5%; width:29%; }.core span { color:var(--blue); font-size:clamp(42px,5vw,76px); font-weight:900; line-height:.8; }.core small { font-size:8px; font-weight:850; letter-spacing:.12em; margin-top:10px; text-align:center; }
.node { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.24); border-radius:99px; color:white; font-size:8px; font-weight:800; letter-spacing:.15em; padding:9px 14px; position:absolute; }.node-one { left:6%; top:47%; }.node-two { right:9%; top:24%; }.node-three { bottom:8%; left:35%; }.node-four { bottom:25%; right:2%; }
.proof-strip { align-items:center; background:var(--blue); color:white; display:flex; gap:2.4vw; justify-content:center; min-height:68px; overflow:hidden; padding:15px 3vw; white-space:nowrap; }.proof-strip span { font-size:11px; font-weight:850; letter-spacing:.17em; }.proof-strip i { color:var(--aqua); font-style:normal; }
.capabilities { padding:120px 5vw 140px; }.section-heading { display:grid; gap:35px; grid-template-columns:.7fr 1.5fr .8fr; margin-bottom:62px; }.section-heading h2 { font-size:clamp(46px,5vw,78px); }.section-heading>p:last-child { align-self:end; color:#607087; font-size:16px; line-height:1.6; margin:0; }
.capability-grid { display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }.capability-card { background:white; border:1px solid var(--line); border-radius:24px; min-height:330px; padding:30px; position:relative; transition:transform .25s ease,box-shadow .25s ease; }.capability-card:hover { box-shadow:0 25px 60px rgba(7,24,45,.1); transform:translateY(-6px); }
.card-number { color:#8290a3; font-size:11px; font-weight:750; }.card-icon { align-items:center; background:#eef2ff; border-radius:50%; color:var(--blue); display:flex; font-size:24px; height:58px; justify-content:center; margin:62px 0 28px; width:58px; }.capability-card:nth-child(2) .card-icon { background:#e9fff9; color:#0a7966; }.capability-card:nth-child(3) .card-icon { background:var(--ink); color:var(--aqua); }.capability-card h3 { font-size:23px; letter-spacing:-.03em; margin:0 0 13px; }.capability-card p { color:#627189; font-size:14px; line-height:1.65; margin:0; max-width:330px; }
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;padding:0 22px}nav{display:none}.hero{grid-template-columns:1fr;padding:55px 24px 70px}.hero-visual{margin:10px auto 0;max-width:520px}.section-heading{grid-template-columns:1fr;gap:18px}.capability-grid{grid-template-columns:1fr}.capability-card{min-height:270px}.card-icon{margin-top:35px}}
@media(max-width:560px){.header-cta{font-size:0}.header-cta span{font-size:25px}h1{font-size:52px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.proof-strip{justify-content:flex-start}.capabilities{padding:85px 20px}}

.platform-section { background:var(--ink); color:white; padding:120px 5vw 135px; }
.platform-intro { display:grid; gap:35px; grid-template-columns:.65fr 1.55fr .8fr; margin-bottom:65px; }
.eyebrow.light { color:#9fb0c8; }.eyebrow.light span { background:var(--aqua); }
.platform-intro h2 { font-size:clamp(45px,5vw,76px); }.platform-intro h2 em { color:var(--aqua); }
.platform-intro>p:last-child { align-self:end; color:#a8b6c9; font-size:16px; line-height:1.65; margin:0; }
.product-card { background:linear-gradient(145deg,#13345d,#0a213c 65%); border:1px solid rgba(255,255,255,.14); border-radius:30px; overflow:hidden; }
.product-topline { border-bottom:1px solid rgba(255,255,255,.14); color:#9eb0c8; display:flex; font-size:10px; font-weight:850; justify-content:space-between; letter-spacing:.18em; padding:22px 28px; }
.product-body { display:grid; gap:7vw; grid-template-columns:1fr 1fr; padding:clamp(35px,5vw,78px); }
.product-monogram { color:var(--aqua); display:block; font-size:clamp(54px,8vw,118px); font-weight:900; letter-spacing:-.1em; line-height:.8; }
.product-body h3 { font-size:clamp(30px,3vw,47px); letter-spacing:-.04em; line-height:1.05; margin:45px 0 0; }
.product-copy>p:first-child { color:#c4cede; font-size:18px; line-height:1.7; margin:0 0 26px; }
.product-copy ul { border-bottom:1px solid rgba(255,255,255,.14); border-top:1px solid rgba(255,255,255,.14); list-style:none; margin:0 0 28px; padding:18px 0; }
.product-copy li { align-items:center; color:white; display:flex; font-size:13px; padding:8px 0; }.product-copy li::before { background:var(--aqua); border-radius:50%; content:''; height:6px; margin-right:12px; width:6px; }
.product-disclosure { color:#95a7c0; font-size:12px; line-height:1.65; }.product-disclosure strong { color:white; }
.clarity-section { display:grid; gap:8vw; grid-template-columns:.85fr 1.15fr; padding:130px 5vw; }
.clarity-heading h2 { font-size:clamp(44px,5vw,75px); }
.clarity-list article { align-items:flex-start; border-top:1px solid var(--line); display:grid; gap:28px; grid-template-columns:40px 1fr; padding:28px 0; }.clarity-list article:last-child { border-bottom:1px solid var(--line); }
.clarity-list article>span { color:var(--blue); font-size:11px; font-weight:850; }.clarity-list h3 { font-size:22px; letter-spacing:-.03em; margin:0 0 9px; }.clarity-list p { color:#65748a; font-size:14px; line-height:1.65; margin:0; max-width:620px; }
.company-section { display:grid; grid-template-columns:1.35fr .65fr; min-height:680px; }
.company-card { background:var(--blue); color:white; padding:100px 7vw; }.company-card h2 { font-size:clamp(50px,5.5vw,86px); }.company-card h2 em { color:var(--aqua); }.company-card>p:not(.eyebrow) { color:#d9e0ff; font-size:18px; line-height:1.7; margin:36px 0 55px; max-width:710px; }
.company-card dl { border-top:1px solid rgba(255,255,255,.24); display:grid; grid-template-columns:repeat(3,1fr); margin:0; padding-top:28px; }.company-card dl div { padding-right:22px; }.company-card dt { color:#bfd0ff; font-size:9px; font-weight:850; letter-spacing:.16em; margin-bottom:11px; text-transform:uppercase; }.company-card dd { font-size:13px; line-height:1.65; margin:0; }
.company-side { align-items:center; background:var(--aqua); color:var(--ink); display:flex; flex-direction:column; justify-content:center; overflow:hidden; position:relative; }.giant-f { font-size:clamp(250px,31vw,520px); font-weight:950; letter-spacing:-.13em; line-height:.75; opacity:.1; position:absolute; }.company-side p { font-size:clamp(25px,3vw,46px); font-weight:900; letter-spacing:.04em; line-height:1.1; position:relative; }
.contact-section { align-items:center; display:flex; flex-direction:column; padding:125px 22px; text-align:center; }.contact-section>p { color:#66758b; font-size:14px; }.contact-section h2 { font-size:clamp(58px,8vw,118px); margin:16px 0 42px; }.contact-button { align-items:center; border:1px solid var(--line); border-radius:999px; display:flex; font-size:14px; font-weight:750; gap:22px; padding:9px 10px 9px 24px; }.contact-button span { align-items:center; background:var(--ink); border-radius:50%; color:var(--aqua); display:flex; font-size:20px; height:42px; justify-content:center; width:42px; }
footer { align-items:start; background:var(--ink); color:white; display:grid; gap:35px; grid-template-columns:1fr 1.2fr .8fr; padding:55px 5vw; }.footer-brand { align-items:center; display:flex; gap:13px; }.footer-brand .brand-mark { background:white; color:var(--blue); }.footer-brand strong,.footer-brand small { display:block; }.footer-brand strong { font-size:14px; }.footer-brand small { color:#8496af; font-size:9px; margin-top:4px; }.footer-links { display:grid; gap:12px; grid-template-columns:1fr 1fr; }.footer-links a { color:#aebbcf; font-size:11px; }.footer-links a:hover { color:var(--aqua); }footer>p { color:#71839c; font-size:10px; justify-self:end; margin:6px 0 0; }
@media(max-width:900px){.platform-intro,.product-body,.clarity-section{grid-template-columns:1fr}.platform-intro{gap:18px}.company-section{grid-template-columns:1fr}.company-side{min-height:370px}.company-card dl{gap:25px;grid-template-columns:1fr}.company-card{padding:80px 24px}.platform-section,.clarity-section{padding:90px 24px}.product-body{padding:35px 26px}footer{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr 1fr}footer>p{justify-self:start}}
@media(max-width:560px){.product-topline{gap:20px}.company-side{min-height:300px}.contact-button{font-size:12px}.footer-links{grid-template-columns:1fr}}

.legal-page { min-height:100vh; }.legal-header { align-items:center; display:flex; justify-content:space-between; min-height:88px; padding:0 5vw; }.legal-back { border-bottom:1px solid var(--line); color:#506077; font-size:12px; font-weight:700; padding:10px 0; }
.legal-hero { background:var(--ink); color:white; padding:95px max(5vw,calc((100vw - 1100px)/2)) 80px; }.legal-hero h1 { font-size:clamp(55px,8vw,108px); }.legal-hero>p:not(.eyebrow) { color:#bac7d8; font-size:18px; line-height:1.65; margin:30px 0 36px; max-width:760px; }.legal-hero>small { color:var(--aqua); font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.legal-content { margin:0 auto; max-width:920px; padding:85px 24px 110px; }.legal-content section { border-top:1px solid var(--line); display:grid; gap:30px; grid-template-columns:250px 1fr; padding:35px 0; }.legal-content section:last-child { border-bottom:1px solid var(--line); }.legal-content h2 { font-size:20px; letter-spacing:-.025em; line-height:1.25; }.legal-content p,.legal-content li { color:#526279; font-size:14px; line-height:1.8; }.legal-content p { margin:0 0 14px; }.legal-content p:last-child { margin-bottom:0; }.legal-content ul { margin:0; padding-left:19px; }.legal-content a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.legal-footer { align-items:center; background:var(--ink); color:white; display:flex; justify-content:space-between; padding:34px 5vw; }.legal-footer p { color:#8fa0b7; font-size:10px; margin:0; }.legal-footer div { display:flex; flex-wrap:wrap; gap:22px; }.legal-footer a { color:#c4cfde; font-size:10px; }
@media(max-width:760px){.legal-header{padding:0 20px}.legal-header .brand small{display:none}.legal-hero{padding:70px 22px}.legal-content{padding:55px 20px 80px}.legal-content section{gap:15px;grid-template-columns:1fr}.legal-footer{align-items:flex-start;flex-direction:column;gap:24px;padding:34px 22px}}
