:root { --navy:#071c3d; --blue:#0a4ca8; --electric:#2585ff; --ice:#dcecff; --ink:#0a1c38; --muted:#617089; --line:#dce4ef; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#f7f9fc; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:88px; position:absolute; z-index:10; top:0; left:0; right:0; display:flex; align-items:center; gap:56px; padding:0 6vw; color:white; border-bottom:1px solid rgba(255,255,255,.17); }
.brand { display:flex; align-items:center; gap:12px; min-width:max-content; }
.brand-mark { width:38px; height:43px; position:relative; display:block; transform:skew(-10deg); }
.brand-mark:before,.brand-mark:after,.brand-mark i { content:""; position:absolute; background:#eaf3ff; border-radius:2px; transform:skew(10deg); }
.brand-mark:before { width:10px; height:42px; left:8px; top:0; transform:rotate(27deg); }
.brand-mark:after { width:10px; height:34px; right:6px; bottom:1px; transform:rotate(-27deg); }
.brand-mark i { width:23px; height:8px; left:9px; bottom:9px; transform:rotate(-9deg); background:#55a4ff; }
.brand strong { font-size:23px; letter-spacing:.035em; line-height:1; display:block; }.brand strong span { font-weight:300; }.brand small { font-size:8px; letter-spacing:.24em; opacity:.75; display:block; margin-top:5px; }
nav { display:flex; gap:38px; margin-left:auto; } nav a { font-size:14px; font-weight:600; opacity:.82; transition:.2s; } nav a:hover { opacity:1; color:#83bdff; }
.header-cta { border:1px solid rgba(255,255,255,.45); padding:13px 18px; font-size:13px; font-weight:700; }.header-cta span { margin-left:20px; color:#79baff; }
.hero { min-height:800px; position:relative; color:white; overflow:hidden; display:flex; align-items:center; padding:130px 7vw 70px; background:linear-gradient(90deg,rgba(4,22,54,.98) 0%,rgba(4,27,67,.92) 38%,rgba(5,31,74,.38) 68%,rgba(3,19,45,.28)), url('hero-apexnova.png') center/cover no-repeat, radial-gradient(circle at 75% 30%,#236ebd,#071a3b 70%); }
.hero:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 75%,rgba(1,13,35,.7)),radial-gradient(circle at 12% 70%,rgba(24,112,255,.3),transparent 36%); pointer-events:none; }
.hero-grid { position:absolute; inset:0; opacity:.12; background-image:linear-gradient(rgba(85,165,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(85,165,255,.22) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(90deg,black,transparent 65%); }
.hero-content { position:relative; z-index:2; width:min(760px,64vw); }
.eyebrow,.section-kicker { text-transform:uppercase; font-size:12px; letter-spacing:.22em; font-weight:800; color:#277ce2; }.eyebrow { color:#9ccaff; }.eyebrow span { width:35px; height:1px; display:inline-block; background:#4297ff; vertical-align:middle; margin-right:12px; }
.hero h1 { font-size:clamp(52px,6vw,88px); letter-spacing:-.055em; line-height:.98; margin:28px 0; font-weight:650; }.hero h1 em,.service-intro h2 span,.managed h2 span,.about h2 span,.industries h2 span,.values h2 span,.contact h2 span { color:#4698ff; font-style:normal; font-weight:300; }
.hero-copy { max-width:650px; font-size:19px; line-height:1.7; color:#cedcf1; }
.hero-actions { display:flex; align-items:center; gap:34px; margin:38px 0 55px; }.primary-btn { display:inline-flex; gap:34px; align-items:center; padding:18px 22px; background:#176be0; font-size:14px; font-weight:800; box-shadow:0 12px 30px rgba(0,86,205,.28); }.primary-btn span { font-size:19px; }.text-link { font-size:14px; font-weight:700; color:#dfeaf8; }.text-link span { margin-left:12px; color:#55a7ff; }
.hero-proof { display:flex; gap:25px; flex-wrap:wrap; }.hero-proof b { font-size:11px; letter-spacing:.05em; color:#b8c8dc; text-transform:uppercase; }.hero-proof b:before { content:"✓"; color:#55a7ff; margin-right:8px; }
.scroll-note { position:absolute; z-index:2; right:6vw; bottom:30px; color:#b6c9e2; font-size:9px; letter-spacing:.18em; }.scroll-note span { margin-left:10px; color:#4d9fff; }
.service-intro { padding:105px 7vw 55px; display:grid; grid-template-columns:1fr 1fr; gap:9vw; background:#f7f9fc; }.service-intro h2,.managed h2,.about h2,.industries h2,.values h2,.contact h2 { margin:20px 0 0; font-size:clamp(40px,4.5vw,66px); line-height:1.05; letter-spacing:-.045em; }.service-intro>p { align-self:end; font-size:17px; color:var(--muted); line-height:1.8; max-width:600px; }
.services-grid { display:grid; grid-template-columns:repeat(4,1fr); padding:0 7vw 110px; }.service-card { min-height:335px; padding:32px 28px; background:white; border:1px solid var(--line); margin:-1px 0 0 -1px; display:flex; flex-direction:column; transition:.25s; }.service-card:hover { transform:translateY(-4px); box-shadow:0 18px 45px rgba(13,48,92,.12); z-index:2; border-color:#a9caf5; }.service-top { display:flex; align-items:center; justify-content:space-between; }.service-icon { color:#1975e4; background:#e7f1ff; font-size:29px; width:54px; height:54px; display:grid; place-items:center; }.service-number { color:#aeb9c8; font-size:11px; letter-spacing:.15em; }.service-card h3 { font-size:20px; line-height:1.3; margin:30px 0 12px; }.service-card p { color:var(--muted); line-height:1.65; font-size:14px; margin:0; }.service-card a { margin-top:auto; padding-top:25px; font-size:12px; font-weight:800; color:#145ea8; }.service-card a span { float:right; font-size:17px; }.feature-card { color:white; background:linear-gradient(145deg,#0d4e9d,#092a5b); border-color:#0d4e9d; }.feature-card .section-kicker,.feature-card a { color:#8dc4ff; }.feature-card h3 { font-size:25px; }.feature-card p { color:#bdd0e7; }
.managed { padding:105px 7vw; display:grid; grid-template-columns:.9fr 1.1fr; gap:8vw; color:white; background:linear-gradient(135deg,#071b3c,#092e65 72%,#0a4c9f); }.section-kicker.light { color:#75b6ff; }.managed-copy>p:not(.section-kicker) { color:#b8c9de; line-height:1.75; max-width:530px; font-size:16px; margin:28px 0; }.outline-btn { border:1px solid rgba(255,255,255,.35); display:inline-flex; gap:42px; padding:16px 20px; font-size:13px; font-weight:700; }.support-grid { display:grid; grid-template-columns:repeat(2,1fr); }.support-grid div { min-height:135px; border:1px solid rgba(255,255,255,.13); padding:26px; margin:-1px 0 0 -1px; }.support-grid span { color:#69aeff; font-size:26px; }.support-grid p { font-size:13px; font-weight:700; color:#d9e5f4; margin:18px 0 0; }
.about { display:grid; grid-template-columns:.8fr 1.2fr; gap:10vw; padding:120px 7vw; background:white; }.about-sticky { align-self:start; position:sticky; top:40px; }.about-copy>.lead { font-size:26px; line-height:1.55; color:#172c4b; margin-top:0; }.about-copy>p:not(.lead) { color:var(--muted); font-size:16px; line-height:1.85; }.vision-mission { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); margin-top:45px; border:1px solid var(--line); }.vision-mission article { background:#f7f9fc; padding:28px; }.vision-mission span { color:#1670d7; font-size:10px; letter-spacing:.18em; text-transform:uppercase; font-weight:800; }.vision-mission h3 { font-size:20px; line-height:1.4; }.vision-mission p { font-size:13px; color:var(--muted); line-height:1.65; }
.industries { padding:110px 7vw; background:#071b3a; color:white; }.industries-head { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:end; }.industries-head>p { color:#aebfd5; line-height:1.7; max-width:500px; }.industry-list { margin-top:65px; display:grid; grid-template-columns:1fr 1fr; }.industry-list div { display:grid; grid-template-columns:45px 1fr 30px; align-items:center; border-top:1px solid rgba(255,255,255,.15); min-height:82px; padding:0 14px; }.industry-list div:nth-last-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.15); }.industry-list span { color:#5ca4f5; font-size:10px; }.industry-list h3 { font-size:17px; }.industry-list b { color:#6caeff; font-weight:400; }
.values { padding:110px 7vw; background:#f5f8fc; }.values-row { display:grid; grid-template-columns:repeat(5,1fr); margin-top:60px; }.values-row article { border-left:1px solid #cfd9e6; padding:0 24px; min-height:190px; }.values-row article:last-child { border-right:1px solid #cfd9e6; }.values-row span { color:#2c7bd4; font-size:10px; }.values-row h3 { font-size:20px; margin:35px 0 12px; }.values-row p { color:var(--muted); font-size:13px; line-height:1.65; }
.contact { display:grid; grid-template-columns:1.2fr .8fr; gap:8vw; padding:100px 7vw; color:white; background:linear-gradient(130deg,#0d5dbc,#0b3a79); }.contact>div:last-child { align-self:end; }.contact>div:last-child>p { color:#c3d8ee; font-size:16px; line-height:1.7; margin-bottom:28px; }.primary-btn.pale { background:white; color:#0b4c9d; box-shadow:none; }
.contact-intro { color:#c3d8ee; line-height:1.7; max-width:560px; }.contact-email { display:inline-block; color:white; font-weight:700; margin-top:10px; }.contact-panel { background:rgba(4,27,66,.38); padding:30px; border:1px solid rgba(255,255,255,.18); }.contact-panel form { display:grid; gap:17px; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:17px; }.contact-panel label { display:grid; gap:8px; color:#dbeafa; font-size:12px; font-weight:700; }.contact-panel input,.contact-panel textarea { width:100%; border:1px solid rgba(255,255,255,.25); background:rgba(4,24,57,.45); color:white; padding:13px 14px; font:inherit; outline:none; }.contact-panel input:focus,.contact-panel textarea:focus { border-color:#8bc5ff; }.contact-panel textarea { resize:vertical; }.contact-panel button { border:0; cursor:pointer; width:max-content; }.hp-field { position:absolute!important; left:-9999px!important; }.form-alert { padding:13px 15px; margin-bottom:18px; font-size:13px; }.form-alert.success { background:#dff7e8; color:#155d35; }.form-alert.error { background:#ffe5e5; color:#8a2222; }
.menu-toggle { display:none; background:transparent; border:0; padding:8px; margin-left:auto; }.menu-toggle span { display:block; width:24px; height:2px; background:white; margin:5px 0; }
footer { display:grid; grid-template-columns:2fr 1fr 1fr; gap:7vw; padding:72px 7vw 30px; background:#04132c; color:white; }.footer-brand p { color:#8498b3; line-height:1.6; margin-top:24px; }.footer-brand .brand { width:max-content; } footer>div:not(.footer-brand):not(.footer-bottom) { display:flex; flex-direction:column; gap:14px; } footer b { font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:#5fa8fb; margin-bottom:8px; } footer a,footer span { color:#a9bbd0; font-size:13px; }.footer-bottom { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.12); margin-top:45px; padding-top:24px; display:flex; justify-content:space-between; }
@media (max-width:1050px) { .menu-toggle { display:block; }.site-header { gap:20px; }.site-header nav { display:none; position:absolute; top:88px; left:0; right:0; margin:0; padding:25px 6vw; background:#061a3b; flex-direction:column; gap:22px; border-top:1px solid rgba(255,255,255,.14); }.site-header nav.open { display:flex; }.header-cta { margin-left:0; }.hero-content { width:75vw; }.services-grid { grid-template-columns:repeat(2,1fr); }.values-row { grid-template-columns:repeat(2,1fr); gap:35px 0; }.values-row article:last-child { border-right:0; }.managed { grid-template-columns:1fr; }.about { gap:5vw; } }
@media (max-width:720px) { .site-header { height:72px; padding:0 5vw; }.site-header nav { top:72px; }.brand strong { font-size:18px; }.brand-mark { transform:scale(.82) skew(-10deg); margin-right:-4px; }.header-cta { display:none; }.hero { min-height:740px; padding:115px 6vw 60px; background-position:64% center; }.hero:before { content:""; position:absolute; inset:0; background:rgba(3,21,52,.38); }.hero-content { width:100%; }.hero h1 { font-size:49px; }.hero-copy { font-size:16px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:22px; }.hero-proof { gap:12px; flex-direction:column; }.scroll-note { display:none; }.service-intro,.about,.industries-head,.contact { grid-template-columns:1fr; padding:80px 6vw 40px; gap:28px; }.services-grid { grid-template-columns:1fr; padding:0 6vw 80px; }.service-card { min-height:290px; }.managed,.industries,.values { padding:80px 6vw; }.support-grid { grid-template-columns:1fr 1fr; }.support-grid div { padding:20px 15px; }.about-sticky { position:static; }.about-copy>.lead { font-size:21px; }.vision-mission { grid-template-columns:1fr; }.industry-list { grid-template-columns:1fr; }.industry-list div:nth-last-child(2) { border-bottom:0; }.values-row { grid-template-columns:1fr; }.values-row article { border-left:0; border-top:1px solid #cfd9e6; padding:25px 0; min-height:0; }.contact { padding-bottom:80px; }.contact h2 { font-size:43px; }.form-row { grid-template-columns:1fr; }.contact-panel { padding:22px 18px; }.primary-btn.pale { font-size:12px; gap:15px; }.contact>div:last-child { min-width:0; }.footer-bottom { flex-direction:column; gap:10px; } footer { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1/-1; } }

/* Reference-inspired homepage */
.site-header { height:92px; padding:0 max(8vw,40px); background:linear-gradient(90deg,rgba(5,25,60,.9),rgba(8,43,91,.62)); }
.site-header nav a:first-child { position:relative; color:#fff; }
.site-header nav a:first-child:after { content:""; position:absolute; left:0; right:0; bottom:-30px; height:3px; background:#2f91ff; }
.header-cta { display:none; }
.hero { min-height:650px; align-items:flex-start; padding:185px max(9vw,55px) 125px; background:linear-gradient(90deg,rgba(5,27,66,.97) 0%,rgba(5,34,80,.87) 42%,rgba(6,43,94,.18) 72%),url('hero-apexnova.png') center/cover no-repeat; }
.hero-grid { opacity:.08; }
.hero:after { background:linear-gradient(180deg,transparent 64%,rgba(4,28,67,.64)); }
.hero-content { width:min(760px,62vw); }
.hero h1 { max-width:760px; margin:0 0 22px; font-size:clamp(44px,4.6vw,70px); line-height:1.08; letter-spacing:-.045em; text-shadow:0 3px 14px rgba(2,18,45,.32); }
.hero-copy { font-size:clamp(19px,2vw,29px); line-height:1.35; color:#eef6ff; max-width:780px; margin:0 0 34px; }
.hero-button { border:1px solid #5aa8ff; box-shadow:0 0 0 2px rgba(34,120,255,.25),0 10px 25px rgba(0,36,92,.32); padding:16px 34px; font-size:17px; }
.quick-solutions { position:relative; z-index:4; max-width:1540px; width:84%; margin:-74px auto 0; display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.quick-solutions article { min-height:145px; display:flex; gap:20px; align-items:flex-start; padding:27px 24px 20px; color:white; border:1px solid rgba(124,167,220,.38); border-radius:4px; background:linear-gradient(135deg,rgba(10,40,80,.98),rgba(10,28,59,.96)); box-shadow:0 12px 25px rgba(5,29,65,.28); }
.quick-icon { flex:0 0 54px; width:54px; height:54px; display:grid; place-items:center; border-radius:50%; color:#b7dcff; font-size:35px; text-shadow:0 0 18px #3b9cff; }
.quick-solutions h3 { font-size:21px; line-height:1.08; margin:1px 0 18px; }
.quick-solutions p { grid-column:1/-1; color:#c7d6e8; font-size:13px; margin:0; line-height:1.45; }
.managed { position:relative; display:block; overflow:hidden; padding:65px max(8vw,45px) 90px; margin-top:-71px; padding-top:135px; color:#102d58; background:linear-gradient(115deg,#f9fbfe 0%,#f5f8fc 58%,#d8e8f9 100%); }
.managed:after { content:""; position:absolute; left:-4%; right:-4%; bottom:-75px; height:125px; border-radius:50% 50% 0 0; background:linear-gradient(180deg,#2976d5,#073676); transform:rotate(-1deg); }
.managed-heading { max-width:1500px; margin:0 auto; padding-bottom:24px; border-bottom:1px solid #bfcada; }
.managed-heading h2 { margin:0 0 8px; font-size:clamp(34px,3.2vw,52px); line-height:1.05; color:#102b54; letter-spacing:-.035em; }
.managed-heading h2 span { color:#1769c3; }
.managed-heading h3 { margin:0; font-size:18px; color:#1c3557; }
.managed-layout { max-width:1500px; margin:18px auto 0; display:grid; grid-template-columns:1.15fr .85fr; min-height:375px; }
.managed .support-grid { display:grid; grid-template-columns:repeat(4,1fr); align-content:start; }
.managed .support-grid div { min-height:140px; border:0; border-right:1px solid #d3dce7; border-bottom:1px solid #d3dce7; padding:24px 15px; text-align:center; margin:0; }
.managed .support-grid span { width:55px; height:55px; margin:0 auto; display:grid; place-items:center; color:#1764b7; font-size:27px; border-radius:50%; background:#e3effc; box-shadow:inset 0 0 0 1px #bfd6ef; }
.managed .support-grid p { margin:12px 0 0; color:#12315b; font-size:14px; font-weight:700; line-height:1.25; }
.support-photo { min-height:370px; position:relative; background:linear-gradient(90deg,rgba(242,247,252,.88) 0%,rgba(236,244,252,.15) 35%),url('support-engineer.png') center/cover no-repeat; }
.support-message { position:absolute; left:0; right:0; bottom:0; padding:27px 5% 25px; background:linear-gradient(90deg,rgba(248,251,254,.96),rgba(239,247,253,.82)); }
.support-message h3 { font-size:23px; margin:0 0 7px; color:#123a77; }.support-message p { margin:0 0 18px; color:#203b60; font-weight:700; }.support-message a { display:inline-block; padding:10px 43px; border:1px solid #aab9ca; border-radius:4px; background:linear-gradient(#fff,#e4ebf2); color:#173b6f; font-weight:800; box-shadow:0 4px 10px rgba(11,41,78,.12); }
.service-intro { padding-top:100px; }
@media (max-width:1050px) {
  .quick-solutions { width:90%; grid-template-columns:repeat(2,1fr); margin-top:-55px; }
  .managed { margin-top:-60px; padding-top:120px; }
  .managed-layout { grid-template-columns:1fr; }
  .support-photo { min-height:400px; }
  .site-header nav a:first-child:after { display:none; }
}
@media (max-width:720px) {
  .site-header { height:72px; padding:0 5vw; }
  .hero { min-height:610px; padding:140px 6vw 125px; background-position:68% center; }
  .hero-content { width:100%; }.hero h1 { font-size:43px; }.hero-copy { font-size:18px; max-width:90%; }
  .quick-solutions { width:88%; grid-template-columns:1fr; margin-top:-74px; }
  .quick-solutions article { min-height:120px; }
  .managed { margin-top:-70px; padding:130px 6vw 85px; }
  .managed .support-grid { grid-template-columns:repeat(2,1fr); }
  .managed .support-grid div { min-height:130px; }
  .support-photo { min-height:385px; background-position:60% center; }
  .support-message { padding:22px; }.support-message h3 { font-size:19px; }
}
