:root { --blue:#2166d1; --ink:#192235; --muted:#667085; --line:#e3e8f0; --mist:#f6f8fb; --white:#fff; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font:16px/1.6 Arial,sans-serif; }
a { color:inherit; } img { display:block; max-width:100%; }

.site-header { display:flex; align-items:center; justify-content:space-between; gap:28px; max-width:1240px; margin:auto; padding:22px 5%; border-bottom:1px solid var(--line); }
.brand img { width:148px; }.site-nav { display:flex; gap:28px; }.site-nav a { color:var(--muted); font-size:.92rem; text-decoration:none; }.site-nav a:hover,.text-link:hover { color:var(--blue); }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:11px 20px; border:1px solid var(--blue); border-radius:4px; background:var(--blue); color:var(--white); font:inherit; font-weight:700; text-decoration:none; cursor:pointer; }.button:hover { background:#1656ba; }.button-small { min-height:38px; padding:7px 15px; font-size:.88rem; }.eyebrow { margin:0 0 12px; color:var(--blue); font-size:.72rem; font-weight:700; letter-spacing:.14em; }.text-link { color:var(--ink); font-weight:700; text-decoration:none; }

.hero { display:grid; grid-template-columns:1fr 1fr; gap:clamp(42px,8vw,120px); align-items:center; max-width:1240px; margin:auto; padding:clamp(70px,10vw,130px) 5%; }.hero h1,h2,h3 { line-height:1.12; }.hero h1 { max-width:650px; margin:0 0 22px; font-size:clamp(2.9rem,5.6vw,5.25rem); letter-spacing:-.05em; }.lead { max-width:540px; color:var(--muted); font-size:1.12rem; }.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:30px; }.hero-media img { width:100%; aspect-ratio:4/5; object-fit:cover; }

.section { padding:clamp(72px,10vw,130px) 5%; }
.section-heading { display:flex; justify-content:space-between; gap:40px; max-width:1240px; margin:0 auto 44px; }.section-heading h2 { max-width:680px; margin:0; font-size:clamp(2rem,3.7vw,3.35rem); letter-spacing:-.04em; }.section-heading > p { max-width:370px; margin:28px 0 0; color:var(--muted); }

.process { background:var(--mist); }.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; max-width:1240px; margin:auto; }.process-grid article { padding-top:18px; border-top:2px solid var(--blue); }.process-grid h3 { margin:12px 0; font-size:1.18rem; }.process-grid p { margin:0; color:var(--muted); }
.services { max-width:1400px; margin:auto; }.service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:26px; max-width:1240px; margin:auto; }.service-card { display:flex; flex-direction:column; }.service-card img { width:100%; aspect-ratio:4/3; margin-bottom:24px; object-fit:cover; }.service-number { color:var(--blue); font-size:.82rem; font-weight:700; }.service-card h3 { margin:12px 0; font-size:1.4rem; }.service-card p { max-width:350px; margin:0; color:var(--muted); }

.managed-infrastructure { background:var(--ink); color:var(--white); }.managed-infrastructure .section-heading > p { color:#d7deea; }.capability-list { display:flex; flex-wrap:wrap; gap:12px; max-width:1240px; margin:0 auto; padding:0; list-style:none; }.capability-list li { padding:10px 15px; border:1px solid rgba(255,255,255,.35); border-radius:999px; font-weight:700; }
.solutions { background:var(--mist); }.product-list { display:grid; gap:70px; max-width:1240px; margin:auto; }.product-card { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(35px,7vw,100px); align-items:center; }.product-card-reverse .product-copy { order:2; }.product-copy h3 { margin:0 0 18px; font-size:clamp(1.8rem,3vw,2.7rem); }.product-copy > p:not(.eyebrow) { max-width:430px; margin-bottom:25px; color:var(--muted); }.product-card > img { width:100%; aspect-ratio:4/3; object-fit:cover; }.product-card-reverse > img { object-fit:contain; background:var(--white); }.cloud { background:var(--white); }
.benefits { max-width:1400px; margin:auto; }.benefit-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; max-width:1240px; margin:auto; }.benefit-grid article { padding-top:18px; border-top:2px solid var(--blue); }.benefit-grid h3 { margin:0 0 10px; font-size:1.15rem; }.benefit-grid p { margin:0; color:var(--muted); }

.contact { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(45px,9vw,125px); max-width:1240px; margin:auto; padding:clamp(76px,10vw,125px) 5%; }.contact h2 { max-width:480px; margin:0 0 18px; font-size:clamp(2.15rem,4vw,3.6rem); letter-spacing:-.04em; }.contact-copy > p:not(.eyebrow) { max-width:420px; color:var(--muted); }.contact-copy > a { display:inline-block; margin-top:16px; color:var(--blue); font-weight:700; }.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:clamp(24px,4vw,42px); background:var(--mist); }.form-field { display:grid; gap:7px; }.form-field-wide,.contact-form button,.form-status { grid-column:1/-1; }.form-field label { font-size:.9rem; font-weight:700; }.form-field input,.form-field textarea { width:100%; padding:12px; border:1px solid #cbd5e1; border-radius:3px; background:var(--white); color:var(--ink); font:inherit; }.form-field textarea { resize:vertical; }.form-field input:focus,.form-field textarea:focus { outline:2px solid var(--blue); outline-offset:1px; }.contact-form button { justify-self:start; }.contact-form button:disabled { cursor:wait; opacity:.65; }.form-status { min-height:1.5em; margin:0; font-weight:700; }.form-status.success { color:#137333; }.form-status.error { color:#b3261e; }
.site-footer { display:flex; justify-content:space-between; gap:25px; padding:34px max(5%,calc((100% - 1240px)/2)); border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }.site-footer strong { color:var(--ink); }.site-footer p { margin:4px 0 0; }.footer-nav { display:flex; flex-wrap:wrap; gap:16px; align-content:start; }.footer-nav a { color:var(--muted); text-decoration:none; }.footer-nav a:hover { color:var(--blue); }

@media (max-width:800px) { .site-nav { display:none; }.hero,.contact { grid-template-columns:1fr; }.hero { padding-top:65px; }.hero-media img { aspect-ratio:16/10; }.section-heading { display:block; }.section-heading > p { margin-top:18px; }.process-grid,.service-grid { grid-template-columns:repeat(2,1fr); gap:30px; }.service-card img { max-height:300px; }.product-card,.product-card-reverse { grid-template-columns:1fr; }.product-card-reverse .product-copy { order:0; }.benefit-grid { grid-template-columns:repeat(2,1fr); }.site-footer { display:block; } }
@media (max-width:500px) { .site-header { gap:12px; }.brand img { width:125px; }.button-small { padding:7px 11px; }.hero h1 { font-size:3rem; }.hero-actions { flex-direction:column; align-items:flex-start; }.process-grid,.service-grid,.benefit-grid,.contact-form { grid-template-columns:1fr; }.form-field-wide,.contact-form button,.form-status { grid-column:auto; }.contact-form button { width:100%; } }
