*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#03101a;color:#edf6fa;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.top{height:78px;display:flex;align-items:center;gap:28px;padding:0 4vw;background:#020c14;border-bottom:1px solid #15303f;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand .mark{font-size:34px;color:#39bce9}.brand b{font-size:22px;letter-spacing:4px}.brand small{display:block;color:#39bce9;font-size:9px;letter-spacing:3px;margin-top:4px}.top nav{display:flex;gap:24px;font-size:11px;font-weight:700;letter-spacing:1px}.top nav a:hover{color:#39bce9}.phone{color:#39bce9;font-weight:700}.request,.primary,.secondary{border:1px solid #38b9e7;padding:14px 22px;font-size:11px;font-weight:800;letter-spacing:1.5px}.request,.secondary{background:transparent}.primary{background:#2ba9d8;color:#00101a}.menu{display:none;background:none;border:0;color:white;font-size:24px}.hero{height:calc(100vh - 78px);min-height:680px;position:relative;overflow:hidden;border-bottom:1px solid #24404e}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.82) saturate(.92) contrast(1.04)}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,9,15,.98) 0%,rgba(2,12,20,.90) 30%,rgba(2,12,20,.58) 48%,rgba(2,12,20,.18) 70%,rgba(2,12,20,.46) 100%),linear-gradient(0deg,rgba(1,9,15,.90),transparent 42%)}.heroContent{position:absolute;left:4.5vw;top:13%;max-width:720px;z-index:3;padding:28px 34px 30px 30px;isolation:isolate}.heroContent:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(1,8,13,.82),rgba(1,8,13,.52) 68%,rgba(1,8,13,0));border-left:2px solid rgba(66,196,241,.9);box-shadow:0 18px 50px rgba(0,0,0,.22);pointer-events:none}.eyebrow,.sectionHead>p,.approachIntro>p,.brands>p,.about>div>p,.contact>div>p{color:#42c4f1;font-size:12px;font-weight:800;letter-spacing:2px}.hero .eyebrow{display:inline-block;background:rgba(1,8,13,.62);padding:7px 10px;border:1px solid rgba(66,196,241,.25);text-shadow:0 2px 10px #000}.hero h1{font-size:clamp(50px,5.2vw,88px);line-height:.94;margin:20px 0;font-family:Impact,'Arial Narrow',sans-serif;letter-spacing:1px;text-shadow:0 3px 0 rgba(0,0,0,.5),0 8px 28px rgba(0,0,0,.95)}.hero h1 em{font-style:normal;color:#fff}.heroContent>p:not(.eyebrow){max-width:600px;font-size:17px;line-height:1.65;color:#f2f7f9;font-weight:600;text-shadow:0 2px 12px rgba(0,0,0,.95)}.buttons{display:flex;gap:14px;margin-top:28px}.heroAddress{position:absolute;right:5vw;bottom:19%;font-size:13px;font-weight:700;line-height:1.7}.heroAddress a{color:#46c6f2}.proof{position:absolute;left:4.5vw;right:4.5vw;bottom:4%;display:flex;gap:0;border-top:1px solid #3a5360;padding-top:18px}.proof span{padding-right:55px;margin-right:55px;border-right:1px solid #28404c;font-size:10px;letter-spacing:1.3px;color:#aabcc5}.proof span:last-child{border:0}.proof b{display:block;color:#fff;font-size:12px;margin-bottom:6px}.systems,.approach,.brands,.about,.contact{padding:80px 4vw;max-width:1600px;margin:auto}.sectionHead{text-align:center;margin-bottom:36px}.sectionHead h2,.approach h2,.brands h2,.about h2,.contact h2{font-size:clamp(32px,3vw,54px);margin:8px 0 12px}.sectionHead span,.approachIntro>span{color:#91a8b3}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1380px;margin:0 auto}.cards article{background:#061925;border:1px solid #29414d;overflow:hidden;position:relative;transition:.25s}.cards article:hover{transform:translateY(-4px);border-color:#3abde9}.cards img{display:block;width:100%;height:auto;aspect-ratio:5/2;object-fit:cover;object-position:center center;background:#04111a;border-bottom:1px solid #29414d;filter:none}.cards article div{padding:20px 22px 24px}.cards small{color:#42c4f1}.cards h3{font-size:21px;margin:8px 0}.cards p{color:#aebfc7;line-height:1.55}.approach{display:grid;grid-template-columns:.8fr 1.4fr;gap:70px;border-top:1px solid #1e3541}.approach h2 em{color:#42c4f1;font-style:normal}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#29414d}.steps article{background:#061722;padding:30px}.steps b{color:#42c4f1;font-size:30px}.steps h3{letter-spacing:2px}.steps p{color:#a9bbc4;line-height:1.55}.brands{text-align:center;border-top:1px solid #1e3541}.brandRow{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:35px 0}.brandRow span{border:1px solid #29414d;background:#061722;padding:18px 24px;font-weight:900;letter-spacing:1px}.brands small{color:#6f8793}.about{display:grid;grid-template-columns:.7fr 1.4fr;gap:80px;align-items:center;background:#061722;max-width:none;padding-left:8vw;padding-right:8vw}.big45{font-size:140px;font-weight:900;color:#42c4f1;line-height:.8}.big45 sup{font-size:50px}.big45 small{display:block;color:#fff;font-size:22px;letter-spacing:7px;margin-top:22px}.about>div>p:last-of-type{color:#b1c2ca;line-height:1.75;font-size:16px}.facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.facts span{border-left:2px solid #42c4f1;padding:8px 14px;font-size:11px;letter-spacing:1px}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact p{color:#b1c2ca;line-height:1.7}.contact address{font-style:normal;line-height:1.8;margin-top:30px}.contact address a{color:#42c4f1}form{display:grid;gap:16px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:10px;letter-spacing:1.5px;color:#90a6b0}input,textarea{display:block;width:100%;margin-top:8px;background:#071a26;border:1px solid #29414d;color:white;padding:15px;font:inherit}input:focus,textarea:focus{outline:1px solid #42c4f1}form button{background:#2ba9d8;border:0;color:#00101a;padding:17px;font-weight:900;letter-spacing:1.5px}.hp{position:absolute;left:-9999px}footer{padding:30px 4vw;border-top:1px solid #1e3541;display:flex;justify-content:space-between;color:#8299a4;font-size:11px;letter-spacing:1px}footer b{color:white;letter-spacing:3px}@media(max-width:950px){.top nav,.top .phone,.top .request{display:none}.menu{display:block}.hero{min-height:720px}.heroContent{top:11%;right:5vw}.heroAddress{left:5vw;right:auto;bottom:16%}.proof{gap:18px}.proof span{padding:0;margin:0;border:0}.cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}.approach,.about,.contact{grid-template-columns:1fr}.big45{font-size:100px}}@media(max-width:600px){.top{height:66px}.brand b{font-size:17px}.hero{height:760px}.hero h1{font-size:48px}.heroContent{padding:22px 22px 24px 20px}.heroContent>p:not(.eyebrow){font-size:15px}.buttons{flex-direction:column;align-items:flex-start}.proof{display:grid;grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr}.cards img{height:auto;aspect-ratio:5/2}.systems,.approach,.brands,.about,.contact{padding:60px 5vw}.row{grid-template-columns:1fr}.contact{gap:30px}footer{flex-direction:column;gap:12px}}


/* Service expansion dialog */
.serviceCard{cursor:pointer}.serviceCard:focus-visible{outline:2px solid #42c4f1;outline-offset:3px}.cardExplore{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid #1c3441;color:#42c4f1;font-size:10px;font-weight:800;letter-spacing:1.5px}.cardExplore b{font-size:17px;transition:transform .2s}.serviceCard:hover .cardExplore b{transform:translate(3px,-3px)}
body.modalOpen{overflow:hidden}.serviceModal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:3vw}.serviceModal.open{display:flex}.serviceModalBackdrop{position:absolute;inset:0;background:rgba(0,5,9,.84);backdrop-filter:blur(8px)}.serviceModalPanel{position:relative;z-index:1;width:min(1180px,96vw);max-height:92vh;overflow:auto;background:#061722;border:1px solid #36515f;box-shadow:0 30px 90px rgba(0,0,0,.65);display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr)}.serviceModalClose{position:absolute;right:16px;top:14px;z-index:5;width:42px;height:42px;border:1px solid rgba(255,255,255,.3);background:rgba(2,12,20,.78);color:#fff;font-size:28px;line-height:1;cursor:pointer}.serviceModalClose:hover{border-color:#42c4f1;color:#42c4f1}.serviceModalMedia{position:relative;min-height:100%;background:#020c14;overflow:hidden}.serviceModalMedia:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,12,20,.8),transparent 45%);pointer-events:none}.serviceModalMedia img{display:block;width:100%;height:100%;min-height:640px;object-fit:cover}.serviceModalNumber{position:absolute;left:28px;bottom:24px;z-index:2;font:900 72px/1 Arial,sans-serif;color:rgba(66,196,241,.9);letter-spacing:-4px}.serviceModalBody{padding:56px 54px 46px}.serviceModalEyebrow{margin:0 0 10px;color:#42c4f1;font-size:11px;font-weight:800;letter-spacing:2px}.serviceModalBody h2{font-size:clamp(36px,4vw,58px);line-height:1;margin:0 0 18px}.serviceModalLead{font-size:17px;line-height:1.7;color:#bdccd3;max-width:720px}.serviceModalGrid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:34px 0}.serviceModalGrid>div{border-top:1px solid #2c4654;padding-top:18px}.serviceModalGrid h3{font-size:11px;letter-spacing:1.8px;color:#42c4f1}.serviceModalGrid ul{margin:14px 0 0;padding:0;list-style:none}.serviceModalGrid li{position:relative;padding:8px 0 8px 18px;color:#dce7eb;line-height:1.45;border-bottom:1px solid rgba(44,70,84,.45)}.serviceModalGrid li:before{content:"+";position:absolute;left:0;color:#42c4f1}.serviceModalNote{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;background:#04111a;border-left:2px solid #42c4f1;padding:18px 20px}.serviceModalNote span{font-size:26px;color:#42c4f1;font-weight:900}.serviceModalNote p{margin:1px 0;color:#9fb3bd;line-height:1.6}.serviceModalActions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.serviceModalActions .primary,.serviceModalActions .secondary{display:inline-block}
@media(max-width:820px){.serviceModal{padding:14px}.serviceModalPanel{grid-template-columns:1fr;max-height:94vh}.serviceModalMedia img{height:260px;min-height:0}.serviceModalMedia{min-height:260px}.serviceModalNumber{font-size:48px}.serviceModalBody{padding:38px 24px 28px}.serviceModalGrid{grid-template-columns:1fr;gap:16px}.serviceModalClose{right:10px;top:10px}}
@media(prefers-reduced-motion:reduce){.serviceCard,.cardExplore b{transition:none}}
