*{scroll-behavior:smooth}
:root{--navy:#0a3153;--blue:#00a9e0;--red:#d71920;--ink:#17212b;--muted:#677584;--line:#e5e9ed;--soft:#f5f7f9}
*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white} a{text-decoration:none;color:inherit}
.topline{height:7px;background:linear-gradient(90deg,var(--red) 0 26%,#efefef 26% 48%,var(--blue) 48% 100%)}
.utility{background:#f4f6f8;color:#4d5b68;font-size:12px;padding:7px 4vw;text-align:right;border-bottom:1px solid #e5e8eb}.utility a{color:#33506a;font-weight:700}.utility a:hover{color:var(--blue)}
header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e6e9ec;box-shadow:0 2px 12px rgba(0,0,0,.04)}
.navtoggle{display:none;margin-left:12px;background:none;border:1px solid #d7dde2;border-radius:3px;width:46px;height:42px;font-size:19px;cursor:pointer;color:#273543;line-height:1;flex:0 0 auto}
.mobilemenu{display:none;background:#fff;border-bottom:1px solid var(--line);padding:12px 4vw 16px;box-shadow:0 12px 26px rgba(0,0,0,.08)}
.mobilemenu a{display:block;padding:13px 4px;font-size:15px;font-weight:700;color:#273543;border-bottom:1px solid #eef1f4}
.mobilemenu a:last-child{border-bottom:none}
.mobilemenu a:active{color:var(--blue)}
.mobilemenu.open{display:block}
.brand{display:flex;align-items:center;gap:14px;min-width:315px}.brandlogo{width:205px;height:72px;object-fit:contain;object-position:left center}.brandtext{display:none}
nav{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:#273543;white-space:nowrap}.menu{position:relative;padding:35px 9px 34px;cursor:pointer}.menu:after{content:"⌄";font-size:10px;margin-left:5px;color:#77838e}.menu:hover{color:var(--blue)}.menu::before{content:"";position:absolute;left:9px;right:9px;bottom:27px;height:2px;background:var(--red);transform:scaleX(0);transition:.2s}.menu:hover:before{transform:scaleX(1)}
.hero{position:relative;height:560px;overflow:hidden;background:#0d1b27}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:brightness(.64)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,25,42,.84) 0%,rgba(4,25,42,.48) 42%,rgba(4,25,42,.07) 70%)}.hero-copy{position:absolute;z-index:2;left:6vw;top:50%;transform:translateY(-50%);max-width:700px;color:#fff}.eyebrow{font-size:14px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#68d7f5;margin-bottom:18px}.hero h1{font-size:55px;line-height:1.02;margin:0 0 18px;font-weight:800;letter-spacing:-1px}.hero p{font-size:20px;line-height:1.5;max-width:620px;color:#e7edf2;margin:0 0 30px}.actions{display:flex;gap:14px}.btn{display:inline-block;padding:14px 22px;border-radius:2px;font-size:13px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.primary{background:var(--red);color:#fff}.secondary{border:1px solid #fff;color:#fff;background:rgba(255,255,255,.04)}
.partner-wrap{background:#fff;border-bottom:1px solid var(--line)}.partner-title{text-align:center;padding-top:25px;font-size:11px;letter-spacing:2px;color:#8a959e;font-weight:700}.partners{height:104px;overflow:hidden;display:flex;align-items:center;position:relative}.track{display:flex;align-items:center;gap:62px;min-width:max-content;animation:scroll 25s linear infinite;padding-right:62px}.partners:hover .track{animation-play-state:paused}.partner{height:52px;min-width:150px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:22px;letter-spacing:-.6px;color:#1b2f40}.partner small{display:block;font-size:9px;font-weight:600}.partner img{max-height:55px;max-width:190px;object-fit:contain}.partner.rex img{max-height:46px}.partner.sch img{max-height:58px;max-width:170px}.partner.rit img{max-height:58px;max-width:120px}.partner.revo img{max-height:44px;max-width:190px}.partner.lilliput img{max-height:62px;max-width:150px}.partner.atom{color:#1b4673;font-size:20px;letter-spacing:.2px}.partner.uptime img{max-height:30px}.partner.synergy img{max-height:58px;max-width:170px}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.section{padding:62px 5vw 72px}.section,.partner-wrap{scroll-margin-top:110px}.section-kicker{font-size:12px;color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}.section h2{font-size:38px;color:var(--navy);margin:0 0 10px;letter-spacing:-.5px}.section-intro{color:var(--muted);max-width:760px;line-height:1.6;margin-bottom:34px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.card{display:block;min-height:225px;padding:30px 27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;transition:.2s;position:relative;overflow:hidden}.card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(11,38,58,.09);z-index:2}.card .cardimg{width:100%;height:130px;object-fit:cover;margin:-30px -27px 20px;display:block;filter:saturate(.96)}.icon{width:48px;height:48px;border:2px solid var(--blue);display:grid;place-items:center;border-radius:50%;color:var(--navy);font-size:23px;font-weight:800;margin-bottom:25px}.card h3{font-size:20px;color:#173b5a;margin:0 0 11px}.card p{margin:0;color:#687887;font-size:14px;line-height:1.55}.more{position:absolute;left:27px;bottom:22px;color:var(--red);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.more:after{content:" →"}.card.hasimg{min-height:330px}.card.hasimg .more{bottom:20px}
.about{background:var(--soft)}.about-cols{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}.about-copy p{color:#46586a;font-size:15.5px;line-height:1.65;margin:0 0 16px}.about-copy strong{color:var(--navy)}
.statline{display:flex;gap:34px;margin-top:26px}.stat b{display:block;font-size:26px;color:var(--navy)}.stat span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-grid figure{margin:0;border:1px solid var(--line);background:#fff;overflow:hidden}.photo-grid img{width:100%;height:170px;object-fit:cover;display:block}.photo-grid figcaption{padding:10px 12px;font-size:12px;color:#5c6d7c;line-height:1.45}
.cta{background:var(--navy);color:#fff;padding:42px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.cta h3{font-size:28px;margin:0 0 6px}.cta p{margin:0;color:#d4e0e8}.cta .btn{background:var(--red)}
footer{padding:24px 5vw;color:#75828c;font-size:12px;border-top:1px solid var(--line)}
@media(max-width:1100px){nav{display:none}.navtoggle{display:inline-flex;align-items:center;justify-content:center}.hero h1{font-size:45px}.grid{grid-template-columns:repeat(2,1fr)}.about-cols{grid-template-columns:1fr}}
@media(max-width:680px){.hero{height:590px}.hero h1{font-size:38px}.hero p{font-size:17px}.grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr}.cta{display:block}.cta .btn{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.track{animation:none}.card:hover{transform:none}*{scroll-behavior:auto}}

.sectionlink{display:inline-block;margin-top:30px;color:var(--red);font-weight:800;font-size:13px;letter-spacing:.6px;text-transform:uppercase}.sectionlink:after{content:" →"}
.breadcrumbs{font-size:12px;color:rgba(255,255,255,.7);margin-bottom:14px}.breadcrumbs a{color:#fff}.breadcrumbs a:hover{color:#68d7f5}.breadcrumbs span{margin:0 7px;opacity:.5}.steps b{font-size:34px;color:var(--blue);display:block;margin-bottom:14px;font-weight:900;letter-spacing:-1px}.bcard{min-height:0}.bcard .blogo{display:block;margin:-30px -27px 18px;padding:18px 27px 14px;background:#fff;border-bottom:1px solid var(--line);text-align:center}.bcard .blogo img{max-height:58px;max-width:210px;object-fit:contain;display:inline-block;vertical-align:middle}.bcard .blogo .txt{font-weight:900;font-size:24px;color:#1b4673;letter-spacing:.2px}.brole{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--blue);margin:-6px 0 10px}.contactline{display:flex;gap:12px;align-items:center;margin-bottom:16px;font-size:15px;color:#46586a}.contactline .ci{width:38px;height:38px;border-radius:12px;background:#eef4f8;border:1px solid var(--line);display:grid;place-items:center;font-size:17px;flex-shrink:0}
/* ===== v5 shared additions ===== */
.card ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.card li{position:relative;padding-left:18px;font-size:13.5px;color:#687887;line-height:1.5}
.card li:before{content:"\2192";position:absolute;left:0;color:var(--blue);font-weight:700}
.menu[aria-current="page"]{color:var(--red)}
.menu[aria-current="page"]:after{color:var(--red)}
@media(max-width:680px){.brand{min-width:0}.brandlogo{width:150px;height:auto}.hero-copy{left:5vw;right:5vw;max-width:none}.actions .btn{flex:1 1 auto;min-width:0}}
a:focus-visible,button:focus-visible{outline:3px solid rgba(0,169,224,.5);outline-offset:2px}
.actions-stack{flex-wrap:wrap}
.actions-stack .btn{flex:1 1 auto;min-width:250px}
@media(max-width:680px){.actions-stack .btn{flex:1 1 100%;text-align:center;min-width:0}}

/* ===== v5: FAQ (uptime-ai page) ===== */
.faq{display:grid;gap:12px;max-width:920px}
.faq details{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px 20px}
.faq summary{cursor:pointer;font-weight:700;font-size:15.5px;color:var(--navy);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-size:22px;color:var(--red);font-weight:400;flex:0 0 auto}
.faq details[open] summary:after{content:"−"}
.faq details p{margin:12px 0 0;color:var(--muted);font-size:14.5px;line-height:1.7}
.card a.more{color:var(--red)}
/* v5: statline wrap on narrow */
@media(max-width:680px){.statline{flex-wrap:wrap;gap:20px 30px}.stat{flex:1 1 120px}}
/* v6: Rexroth product cutouts on white */
.cutout{object-fit:contain;background:#fff}
