
:root { --navy:#06111f; --navy2:#091a2c; --cyan:#19d3ff; --cyan2:#78e9ff; --white:#f5f8fb; --muted:#9fb2c5; --line:#193550; --ink:#102235; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#f5f8fb; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:88px; padding:0 clamp(24px,5vw,76px); display:flex; align-items:center; justify-content:space-between; color:var(--white); background:var(--navy); border-bottom:1px solid rgba(120,233,255,.14); position:relative; z-index:10; }
.brand { display:flex; align-items:center; gap:13px; font-size:14px; letter-spacing:.22em; font-weight:800; white-space:nowrap; }
.brand b { color:var(--cyan); }
.brand-mark { display:grid; place-items:center; width:35px; height:35px; border:1px solid var(--cyan); color:var(--cyan); font-size:17px; letter-spacing:0; transform:rotate(45deg); }
.brand-mark::first-letter { transform:rotate(-45deg); }
.site-header nav { display:flex; gap:42px; font-size:14px; color:#d8e3ed; }
.site-header nav a { padding:32px 0; border-bottom:2px solid transparent; transition:.2s; }
.site-header nav a:hover { color:var(--cyan); border-color:var(--cyan); }
.header-cta { color:var(--cyan); font-size:14px; border:1px solid #235170; padding:12px 17px; transition:.2s; }
.header-cta:hover { background:var(--cyan); color:var(--navy); }
.hero { min-height:720px; padding:90px clamp(24px,5vw,76px) 52px; background:radial-gradient(circle at 75% 48%, #0b2d48 0, var(--navy) 43%), var(--navy); color:var(--white); position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); align-items:center; }
.hero-grid { position:absolute; inset:0; opacity:.24; background-image:linear-gradient(rgba(25,211,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(25,211,255,.08) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to right,transparent 12%,black 72%,transparent); }
.hero-copy { position:relative; z-index:2; max-width:700px; }
.eyebrow { text-transform:uppercase; font-size:12px; letter-spacing:.2em; font-weight:700; display:flex; align-items:center; gap:10px; color:#557087; }
.hero .eyebrow { color:var(--cyan2); }
.eyebrow span { width:26px; height:1px; background:currentColor; display:block; }
h1 { font-size:clamp(62px,6.4vw,98px); line-height:.96; letter-spacing:-.055em; margin:28px 0 30px; font-weight:780; }
h1 em { color:var(--cyan); font-style:normal; }
.hero-text { color:var(--muted); max-width:625px; font-size:20px; line-height:1.6; margin:0 0 38px; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.button { min-height:55px; padding:0 24px; display:inline-flex; align-items:center; justify-content:center; gap:34px; font-size:14px; font-weight:700; transition:.2s; }
.button.primary { background:var(--cyan); color:var(--navy); box-shadow:0 8px 30px rgba(25,211,255,.16); }
.button.primary:hover { background:var(--cyan2); transform:translateY(-2px); }
.button.secondary { border:1px solid #2c5976; color:var(--cyan2); }
.button.secondary:hover { border-color:var(--cyan); background:rgba(25,211,255,.06); }
.trust-row { margin-top:62px; padding-top:25px; border-top:1px solid var(--line); display:flex; gap:36px; color:#8297aa; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.trust-row span { display:flex; align-items:center; gap:9px; }
.trust-row b { color:var(--cyan); font-size:22px; }
.hero-visual { height:540px; position:relative; z-index:1; }
.hero-visual::before,.hero-visual::after { content:""; position:absolute; background:linear-gradient(90deg,transparent,var(--cyan),transparent); opacity:.38; }
.hero-visual::before { width:100%; height:1px; top:50%; }
.hero-visual::after { height:100%; width:1px; left:50%; background:linear-gradient(transparent,var(--cyan),transparent); }
.orbit { position:absolute; border:1px solid rgba(25,211,255,.24); border-radius:50%; inset:12%; animation:spin 22s linear infinite; }
.orbit-two { inset:25%; border-style:dashed; animation-duration:14s; animation-direction:reverse; }
.orbit i { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:0 0 18px var(--cyan); left:13%; top:15%; }
.orbit-two i { left:auto; right:5%; top:48%; }
.core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:158px; height:158px; display:grid; place-items:center; border:1px solid var(--cyan); background:radial-gradient(circle,#124662,var(--navy2) 65%); box-shadow:0 0 80px rgba(25,211,255,.18),inset 0 0 32px rgba(25,211,255,.12); }
.core::before { content:""; position:absolute; inset:12px; border:1px solid rgba(25,211,255,.22); }
.core span { font-size:72px; font-weight:800; line-height:1; color:var(--cyan); }
.core small { position:absolute; bottom:19px; letter-spacing:.35em; font-size:8px; color:var(--muted); }
.data-card { position:absolute; padding:13px 17px; border:1px solid #22506c; background:rgba(5,18,31,.82); backdrop-filter:blur(8px); color:#90a7b9; letter-spacing:.15em; font-size:9px; line-height:1.8; }
.data-card b { color:var(--cyan); }.data-card span{margin-right:9px;color:var(--cyan)}.card-a{top:14%;right:3%}.card-b{bottom:15%;left:3%}
.section { padding:110px clamp(24px,7vw,110px); }
.section-heading { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:end; margin-bottom:56px; }
h2 { font-size:clamp(40px,4.5vw,64px); line-height:1.05; letter-spacing:-.045em; margin:18px 0 0; color:#0b1d2d; }
.section-heading>p { color:#657687; font-size:18px; line-height:1.65; max-width:490px; }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.service-card { background:white; border:1px solid #d9e3ea; padding:30px; min-height:360px; display:flex; flex-direction:column; transition:.25s; }
.service-card:hover { transform:translateY(-7px); border-color:#7adcf1; box-shadow:0 20px 45px rgba(11,38,58,.1); }
.service-top { display:flex; justify-content:space-between; color:#8499a9; font-size:12px; }.service-top i{font-style:normal;font-size:23px;color:#0fa8ca}
.service-card h3 { font-size:29px; margin:62px 0 18px; color:#0b1d2d; }.service-card p { color:#677786; line-height:1.7; margin:0; font-size:15px; }
.tags { margin-top:auto; display:flex; flex-wrap:wrap; gap:6px; }.tags span{padding:7px 9px;background:#edf7fa;color:#277188;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.about { background:#eaf0f4; display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(55px,9vw,140px); align-items:center; }
.about-visual { min-height:560px; background:var(--navy); color:white; display:grid; place-items:center; position:relative; overflow:hidden; }
.about-visual::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(25,211,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(25,211,255,.06) 1px,transparent 1px);background-size:52px 52px; }
.monogram { font-size:110px; font-weight:800; letter-spacing:-.08em; color:transparent; -webkit-text-stroke:1px var(--cyan); filter:drop-shadow(0 0 24px rgba(25,211,255,.2)); }
.about-visual p { position:absolute; left:34px; bottom:24px; font-size:12px; line-height:1.6; text-transform:uppercase; letter-spacing:.12em; color:#8297aa; }.about-visual p b{color:var(--cyan)}
.corner{position:absolute;width:75px;height:75px;border-color:var(--cyan);border-style:solid}.corner-one{top:25px;left:25px;border-width:1px 0 0 1px}.corner-two{right:25px;bottom:25px;border-width:0 1px 1px 0}
.about-copy .lead { font-size:22px; line-height:1.55; color:#20394d; margin:28px 0 20px; }.about-copy>p:not(.eyebrow):not(.lead){line-height:1.8;color:#667987}
.about-copy ul { list-style:none; padding:0; margin:37px 0 0; display:grid; gap:18px; }.about-copy li{display:flex;align-items:center;gap:16px}.about-copy li>span{display:grid;place-items:center;width:36px;height:36px;border:1px solid #8bd5e4;color:#079abd}.about-copy li div{display:flex;flex-direction:column;gap:4px}.about-copy li b{font-size:14px}.about-copy li small{color:#758695}
.contact { background:var(--navy); color:white; display:grid; grid-template-columns:1.2fr .8fr; gap:100px; align-items:center; }.contact h2{color:white;max-width:720px}.contact-copy>p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.7;max-width:650px;margin:25px 0 35px}.contact address{font-style:normal;border-left:1px solid var(--line);padding-left:55px;display:grid;gap:32px}.contact address div{display:grid;gap:8px}.contact address small{text-transform:uppercase;letter-spacing:.14em;color:#66839a;font-size:9px}.contact address a,.contact address span{font-size:18px;line-height:1.5}.contact address a:hover{color:var(--cyan)}
footer { background:#04101b; color:#8da1b3; padding:52px clamp(24px,5vw,76px) 24px; }.footer-main{display:grid;grid-template-columns:1fr auto auto;gap:35px;align-items:center;padding-bottom:38px;border-bottom:1px solid #142b3e;font-size:12px}.footer-main>a:last-child{color:var(--cyan)}
.legal { border-bottom:1px solid #142b3e; padding:18px 0; font-size:12px; line-height:1.7; }.legal summary{cursor:pointer;color:#c9d7e2;font-weight:700;list-style:none}.legal summary::after{content:"+";float:right;color:var(--cyan);font-size:18px}.legal[open] summary::after{content:"−"}.legal div{max-width:760px;padding:15px 0 4px}.legal b{color:#dbe7ee}.copyright{text-align:center;padding-top:24px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:980px){.site-header nav{display:none}.hero{grid-template-columns:1fr;padding-top:70px}.hero-visual{position:absolute;right:-200px;width:600px;opacity:.42}.hero-copy{max-width:680px}.service-grid{grid-template-columns:repeat(2,1fr)}.about,.contact{grid-template-columns:1fr}.about-visual{min-height:400px}.section-heading{grid-template-columns:1fr;gap:18px}.contact address{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}.footer-main{grid-template-columns:1fr}.trust-row{flex-wrap:wrap}}
@media (max-width:620px){.site-header{height:75px}.header-cta{font-size:0;padding:10px}.header-cta span{font-size:18px}.hero{min-height:720px;padding-top:55px}.hero-visual{right:-330px}.hero-text{font-size:17px}.hero-actions{align-items:stretch;flex-direction:column}.button{width:100%}.trust-row{gap:16px}.trust-row span{width:100%}.section{padding:76px 22px}.service-grid{grid-template-columns:1fr}.service-card{min-height:310px}.service-card h3{margin-top:42px}.about{gap:45px}.about-visual{min-height:330px}.footer-main .brand{white-space:normal}h1{font-size:52px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit{animation:none}.button,.service-card{transition:none}}
