:root{--ink:#0a192b;--navy:#071b2e;--cyan:#40dbdb;--pale:#eff8f8;--gray:#667584}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px 'DM Sans',sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',sans-serif;letter-spacing:-.045em}.container{width:min(1190px,calc(100% - 48px));margin:auto}.site-header{position:relative;z-index:10;background:#fff}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink)}.brandmark{background:var(--navy);color:var(--cyan);width:45px;height:45px;border-radius:50%;display:grid;place-items:center;font:900 30px Manrope;position:relative}.brandmark span{position:absolute;font-size:19px;right:4px;bottom:0;color:#fff}.brandtext{display:flex;flex-direction:column;line-height:1.04;letter-spacing:.05em}.brandtext strong{font-size:17px}.brandtext small{font-size:11px;letter-spacing:.22em;margin-top:5px}nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:800}nav a:not(.nav-cta):hover{color:#008f9a}.staff-link{color:#1b8992}.nav-cta{background:var(--navy);color:#fff;padding:14px 18px;border-radius:6px}.menu-button{display:none;background:none;border:0;font-size:27px}.hero{min-height:670px;position:relative;background:#091e2e;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-visual{position:absolute;inset:0 0 0 30%;background:url('images/hero-tech.webp') center/cover}.hero-mask{position:absolute;inset:0;background:linear-gradient(90deg,#071a2dfc 0%,#071a2de8 35%,#071a2d80 69%,#071a2d22 100%),linear-gradient(0deg,#071a2ddd,transparent 45%)}.hero-content{position:relative;z-index:1;padding:80px 0}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#9be5e5;font-size:12px;font-weight:800;letter-spacing:.19em}.status-dot{display:inline-block;width:8px;height:8px;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 5px #40dbdb25}.hero h1{font-size:clamp(44px,6vw,79px);line-height:1.1;margin:25px 0;max-width:820px;font-weight:800}.hero h1 em,.statement h2 em{color:var(--cyan);font-style:normal}.hero p{font-size:17px;line-height:1.8;color:#d0dce4;max-width:590px}.hero-actions{display:flex;gap:13px;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:24px;justify-content:space-between;padding:17px 23px;border-radius:6px;font-size:14px;font-weight:800}.primary{background:var(--cyan);color:var(--navy)}.ghost{border:1px solid #b7d8e066;color:#fff}.white{background:#fff;color:var(--navy)}.hero-info{display:flex;gap:58px;margin-top:70px}.hero-info div{display:flex;flex-direction:column;gap:6px}.hero-info strong{font-size:26px;color:#fff}.hero-info span{font-size:12px;color:#b5c9d3}.hero-side-note{position:absolute;right:23px;bottom:29px;z-index:2;font-size:10px;letter-spacing:.19em;color:#e3f7f8;writing-mode:vertical-rl}.section{padding:90px 0}.section-kicker{display:block;color:#008c99;font-size:11px;letter-spacing:.2em;font-weight:900;margin-bottom:19px}.section-kicker.light{color:#89e4e4}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:80px}.intro h2,.section-top h2,.coverage h2{font-size:clamp(35px,4.3vw,55px);line-height:1.17;margin-bottom:0}.intro h2 span{color:#149da6}.intro-grid>p{line-height:1.9;color:var(--gray);font-size:17px}.services{background:#f1f5f6}.section-top{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.section-top p{color:var(--gray);max-width:570px;line-height:1.7;margin-top:15px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{padding:10px 13px;border-radius:5px;border:1px solid #d6e0e4;background:#fff;color:#465e67;font-weight:700;font-size:12px}.filter.active{background:var(--navy);color:#fff}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{background:#fff;overflow:hidden;border-radius:9px;border:1px solid #e4edf0;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px #0c283018}.service-card[hidden]{display:none}.service-img{height:188px;position:relative;background:linear-gradient(135deg,#143c53,#36bfc1)}.service-img img{height:100%;width:100%;object-fit:cover}.service-index{position:absolute;top:12px;left:13px;background:#071a2dcf;color:#fff;font-size:11px;padding:7px 9px;border-radius:4px}.service-body{padding:22px}.service-body h3{font-size:18px;line-height:1.35;min-height:49px;margin-bottom:10px}.service-body p{font-size:13px;line-height:1.8;color:var(--gray);min-height:73px}.service-body a{color:#008c99;font-size:13px;font-weight:800;display:flex;justify-content:space-between;padding-top:15px;border-top:1px solid #e7eeef}.statement{background:#071b2e;color:white}.statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.statement h2{font-size:clamp(39px,4.5vw,62px);line-height:1.17}.statement p{color:#b7cbd6;line-height:1.85;max-width:490px}.statement .button{margin-top:23px}.statement-cards{display:grid;gap:14px}.statement-cards>div{padding:23px 27px;background:#ffffff0b;border:1px solid #ffffff19;border-radius:7px}.statement-cards span{font-size:12px;color:var(--cyan)}.statement-cards h3{font-size:19px;margin:10px 0 4px}.statement-cards p{font-size:13px;margin:0}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.coverage p{color:var(--gray);line-height:1.8;max-width:470px;margin-top:20px}.area-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.area-list span{border:1px solid #d9e8ea;border-radius:7px;padding:22px;background:var(--pale);font-weight:800}.contact{padding-top:10px}.contact-box{background:linear-gradient(115deg,#0c7380,#09384e);border-radius:14px;padding:65px;display:flex;align-items:center;justify-content:space-between;gap:40px;color:#fff}.contact h2{font-size:44px;margin-bottom:10px}.contact p{color:#d3eff1;line-height:1.8;margin:0}.contact-actions{display:flex;flex-direction:column;gap:20px;align-items:start;flex-shrink:0}.contact-secondary{font-size:13px;color:#daffff;text-decoration:underline}footer{background:#061320;color:#fff;padding:38px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}footer strong{letter-spacing:.1em}footer p,footer small{font-size:12px;color:#a7bac4;margin:8px 0 0}footer .footer-inner>div:nth-child(2){display:flex;gap:17px;font-size:12px}@media(max-width:1040px){nav{gap:12px;font-size:12px}.service-grid{grid-template-columns:repeat(2,1fr)}.section-top{display:block}.filters{margin-top:20px}}@media(max-width:720px){.container{width:min(100% - 32px,1190px)}.nav{height:70px}.menu-button{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;padding:23px;background:#fff;box-shadow:0 20px 30px #0002;flex-direction:column;align-items:stretch;font-size:14px}.menu-open nav{display:flex}.hero{min-height:670px}.hero-visual{inset:0;opacity:.7}.hero-mask{background:linear-gradient(90deg,#071a2df7,#071a2dc9),linear-gradient(0deg,#071a2d,transparent)}.hero-content{padding:65px 0}.hero h1{font-size:43px}.hero-info{gap:25px;margin-top:50px}.hero-info strong{font-size:22px}.hero-info span{font-size:10px}.hero-side-note{display:none}.section{padding:65px 0}.intro-grid,.statement-grid,.coverage-grid{grid-template-columns:1fr;gap:28px}.service-grid{grid-template-columns:1fr 1fr;gap:11px}.service-img{height:142px}.service-body{padding:15px}.service-body h3{font-size:15px;min-height:60px}.service-body p{font-size:12px;min-height:105px}.statement h2{font-size:42px}.area-list{gap:10px}.area-list span{padding:15px;font-size:13px}.contact-box{padding:35px 24px;display:block}.contact h2{font-size:34px}.contact-actions{margin-top:25px}.footer-inner{align-items:start;flex-direction:column}.contact .section-kicker{margin-bottom:13px}}@media(max-width:390px){.service-grid{grid-template-columns:1fr}.service-img{height:200px}.service-body h3,.service-body p{min-height:auto}}

.brand-logo{width:50px;height:50px;object-fit:contain;flex-shrink:0}.brand{min-width:max-content}@media(max-width:500px){.brand-logo{width:42px;height:42px}}

/* Upgrade: bilingual UI and solution cards */
.lang-switch{border:1px solid #c8e0e2;background:#e8fafa;color:#086a76;border-radius:7px;padding:10px 12px;font-size:12px;font-weight:900;min-width:47px}.solutions{background:#fff}.solutions-head{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:end;margin-bottom:30px}.solutions-head h2{font-size:clamp(34px,4.5vw,56px);line-height:1.15}.solutions-head p{color:#667584;line-height:1.8}.solutions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.solution-tile{background:linear-gradient(145deg,#09283d,#071b2e);padding:28px 23px 26px;border:1px solid #1b4254;border-radius:12px;color:#fff;min-height:315px;position:relative;overflow:hidden}.solution-tile:before{content:"";width:135px;height:135px;position:absolute;right:-63px;top:-58px;border:1px solid #4ed6d643;border-radius:50%}.solution-icon{width:48px;height:48px;display:grid;place-items:center;background:#48dada22;border:1px solid #61e4e455;color:#8afafa;border-radius:11px;font-size:27px;margin-bottom:29px}.solution-tile>span{font-size:10px;letter-spacing:.16em;color:#82dcdc;font-weight:800}.solution-tile h3{font-size:19px;margin:11px 0}.solution-tile p{font-size:13px;line-height:1.7;color:#c0d4de}.image-disclaimer{font-size:11px;color:#73838a;margin:20px 0 0}nav .lang-switch{flex-shrink:0}.service-img img{transition:transform .45s}.service-card:hover .service-img img{transform:scale(1.06)}@media(max-width:1050px){.solutions-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.solutions-head{grid-template-columns:1fr;gap:0}.solutions-grid{grid-template-columns:1fr 1fr}.solution-tile{padding:20px;min-height:300px}}@media(max-width:480px){.solutions-grid{grid-template-columns:1fr}.solution-tile{min-height:auto}}

/* Logo new horizontal: keep fully inside navbar */
.site-header .brand{display:flex;align-items:center;min-width:0;flex-shrink:0;gap:0}.site-header .brand-logo{display:block;width:230px;height:auto;max-height:67px;object-fit:contain;flex-shrink:0}.site-header .nav{min-height:86px;align-items:center}@media(max-width:1100px){.site-header .brand-logo{width:190px;max-height:60px}}@media(max-width:600px){.site-header .brand-logo{width:175px;max-height:52px}.site-header .nav{min-height:70px}}

/* V5 enhanced service catalog - self-hosted imagery */
.v5-filters{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 28px}.v5-filters button{border:1px solid #d3dee4;background:#fff;color:#365064;border-radius:7px;padding:11px 15px;font-weight:800;font-size:13px;cursor:pointer}.v5-filters button.active,.v5-filters button:hover{color:#fff;background:#082c40;border-color:#082c40}
.v5-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.v5-card{background:#fff;border:1px solid #dbe4e9;border-radius:13px;overflow:hidden;box-shadow:0 8px 24px rgba(3,27,47,.055);display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}.v5-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(3,27,47,.12)}.v5-card>img{width:100%;height:205px;object-fit:cover;display:block}.v5-card-body{padding:21px 23px 22px;display:flex;flex-direction:column;flex:1}.v5-card-body .v5-no{font-size:10px;font-weight:900;letter-spacing:.16em;color:#008b95;margin-bottom:12px;text-transform:uppercase}.v5-card h3{color:#092338;font-size:20px;line-height:1.3;margin:0 0 11px}.v5-card p{line-height:1.65;color:#5d6d7b;font-size:14px;flex:1;margin:0 0 19px}.v5-card a{border-top:1px solid #e3eaee;padding-top:14px;color:#008895;font-size:13px;font-weight:900;text-decoration:none}.v5-card a:hover{color:#065171}.v5-subhead{margin:65px 0 24px}.v5-subhead h3{font-size:clamp(25px,3vw,37px);margin:6px 0}.v5-subhead p{color:#687d8a}.v5-specialty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v5-specialty{display:flex;align-items:center;gap:12px;padding:17px 16px;background:#fff;border:1px solid #dce9ef;border-radius:10px;text-decoration:none;color:#123147}.v5-specialty:hover{border-color:#1eb9c1;box-shadow:0 5px 18px rgba(0,120,150,.08)}.v5-dot{width:9px;height:9px;min-width:9px;border-radius:50%;background:#16b9bd}.v5-specialty span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:5px}.v5-specialty strong{font-size:14px}.v5-specialty small{font-size:12px;color:#697b88;line-height:1.4}.v5-arrow{font-size:17px;color:#008b95}.v5-photo-note{color:#6b7b85;font-size:11px;margin:18px 0 0}.v5-card[hidden]{display:none!important}
/* V5 logo dimensions ensure the new horizontal logo remains inside navbar */
.site-header .brand-logo{width:235px!important;height:auto!important;max-height:69px!important;object-fit:contain!important}.site-header .brand{max-width:235px;overflow:hidden;flex-shrink:0}.site-header .nav{min-height:85px}
@media(max-width:1150px){.v5-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .brand-logo{width:185px!important}.site-header .brand{max-width:185px}}
@media(max-width:650px){.v5-grid,.v5-specialty-grid{grid-template-columns:1fr}.v5-card>img{height:220px}.v5-subhead{margin-top:42px}.site-header .brand-logo{width:165px!important}.site-header .brand{max-width:165px}.v5-filters button{font-size:12px;padding:10px 12px}}

/* V5.1 layout fix: constrain services within centered content column */
.services.section>.container{width:min(1190px,calc(100% - 48px));margin-inline:auto}
.services .section-heading{max-width:790px;margin-bottom:12px}
.services .section-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.15;margin:10px 0 14px}
.services .section-heading>p{font-size:16px;line-height:1.65;color:#5c6e7c}
.services .v5-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.services .v5-card>img{height:190px;max-height:190px;width:100%;object-fit:contain;object-position:center;background:#eaf2f4}
.services .v5-card-body{padding:23px 24px 24px}
.services .v5-card h3{font-size:20px}
.services .v5-card p{font-size:14px;line-height:1.7}
.services .v5-specialty-grid{gap:14px}
@media(max-width:900px){.services .v5-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.services.section>.container{width:calc(100% - 32px)}.services .v5-grid,.services .v5-specialty-grid{grid-template-columns:1fr}.services .v5-card>img{height:200px;max-height:200px}.services .section-heading>p{font-size:15px}}
