
:root{
  --navy:#041f3f;--navy-2:#082f59;--blue:#087ee7;--cyan:#10c7f4;
  --ink:#14202c;--muted:#66717e;--soft:#eef7fd;--line:#d9e7f1;--white:#fff;
  --shadow:0 22px 60px rgba(4,31,63,.14);--radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;padding:10px 14px;z-index:999}.skip-link:focus{left:10px}

.site-header{position:sticky;top:0;z-index:50;background:rgba(4,31,63,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.09)}
.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:150px;height:64px;object-fit:contain;object-position:left center}
.primary-nav{display:flex;align-items:center;gap:25px;color:#dbeaff;font-weight:700;font-size:14px}
.primary-nav a:hover{color:#fff}
.nav-cta{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff!important;padding:11px 16px;border-radius:999px}
.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span{display:block;width:27px;height:2px;background:#fff;margin:5px}

.hero{position:relative;overflow:hidden;background:
 radial-gradient(circle at 72% 40%,rgba(16,199,244,.22),transparent 30%),
 linear-gradient(135deg,#031a34,#052d58 62%,#063c78);color:#fff;padding:84px 0 72px}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:60px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:900;color:var(--cyan);margin-bottom:12px}
.hero h1{font-size:clamp(46px,6vw,78px);line-height:.98;margin:0 0 24px;letter-spacing:-.04em}
.hero h1 span{color:#5ad9ff}
.hero-lead{font-size:20px;max-width:700px;color:#d7e7f5;margin:0 0 30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 20px;border-radius:12px;font-weight:900;border:1px solid transparent;cursor:pointer}
.btn-primary{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;box-shadow:0 14px 34px rgba(8,126,231,.3)}
.btn-outline{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.05)}
.trust-strip{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;color:#bfd6e9;font-size:13px;font-weight:700}
.hero-card{background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.18);border-radius:30px;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.25);backdrop-filter:blur(12px)}
.hero-card img{width:100%;height:360px;object-fit:contain}
.hero-card-label{font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#7ee2ff}
.hero-card-bottom{display:flex;justify-content:space-between;gap:12px;align-items:end;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}
.hero-card-bottom strong{font-size:16px}.hero-card-bottom span{color:#b7ccdd;font-size:12px}

.proof-bar{background:#fff;box-shadow:0 12px 45px rgba(4,31,63,.08);position:relative;z-index:2}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.proof-grid>div{padding:25px 20px;border-right:1px solid var(--line)}.proof-grid>div:last-child{border-right:0}
.proof-grid b{display:block;color:var(--navy);font-size:14px;margin-bottom:3px}.proof-grid span{font-size:12px;color:var(--muted)}

.section{padding:88px 0}.section-soft{background:var(--soft)}.section-dark{background:linear-gradient(145deg,#031d3b,#07386b);color:#fff}
.section-heading{max-width:760px;margin-bottom:38px}.section-heading h2,.about-grid h2,.quote-grid h2{font-size:clamp(34px,5vw,52px);line-height:1.05;letter-spacing:-.035em;color:var(--navy);margin:0 0 15px}.section-heading p{color:var(--muted);font-size:17px;margin:0}
.section-heading.light h2{color:#fff}.section-heading.light p{color:#bfd3e4}

.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:.25s ease;position:relative;overflow:hidden}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#b7dff8}
.service-card:after{content:"";position:absolute;right:-35px;bottom:-35px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,#d9f5ff,transparent 67%)}
.service-number{font-size:12px;font-weight:900;color:var(--blue);letter-spacing:.14em}
.service-card h3{font-size:20px;color:var(--navy);margin:10px 0}.service-card p{color:var(--muted);margin:0;font-size:14px}

.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.process-step{padding:26px;border-radius:20px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06)}
.process-step span{font-size:12px;color:#69dcff;font-weight:900}.process-step h3{font-size:20px;margin:8px 0}.process-step p{margin:0;color:#c6d8e8;font-size:14px}

.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:12px}
.gallery-item{margin:0;border-radius:18px;overflow:hidden;background:#dcecf7}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-item:hover img{transform:scale(1.045)}
.gallery-tall{grid-row:span 2}.gallery-wide{grid-column:span 2}

.reference-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.reference-grid article{padding:26px;background:#fff;border-radius:20px;border:1px solid #d5e5f0}
.reference-grid h3{margin:0 0 6px;color:var(--navy);font-size:19px}.reference-grid p{margin:0;color:var(--muted)}

.about-grid{display:grid;grid-template-columns:1fr .85fr;gap:55px;align-items:center}.about-grid>div>p{font-size:17px;color:var(--muted)}
.text-link{color:var(--blue);font-weight:900}
.about-panel{background:linear-gradient(145deg,#052c58,#07509b);color:#fff;border-radius:28px;padding:34px;box-shadow:var(--shadow)}
.about-panel h3{font-size:27px;margin:0 0 8px}.about-panel p{color:#d7e8f7}.about-panel ul{padding-left:18px;margin-bottom:0}.about-panel li{margin:8px 0}

.quote-section{background:linear-gradient(180deg,#f1f9fe,#fff)}
.quote-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:start}
.quote-grid>div>p{font-size:17px;color:var(--muted)}
.contact-list{display:grid;gap:10px;margin-top:28px}.contact-list a,.contact-list div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.contact-list span{color:var(--muted);font-size:13px}.contact-list strong{color:var(--navy);text-align:right}
.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
.quote-form label{display:grid;gap:7px;font-size:13px;font-weight:800;color:var(--navy)}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #cfdce6;background:#fbfdff;border-radius:11px;padding:12px 13px;outline:none;color:var(--ink)}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(8,126,231,.1)}
.full{grid-column:1/-1}.form-note{font-size:11px;color:var(--muted);margin:0;text-align:center}

.site-footer{background:#03182f;color:#d5e6f3;padding:50px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px}.footer-grid img{width:190px;height:90px;object-fit:contain}.footer-grid h3{color:#fff}.footer-grid p{color:#abc2d4}.footer-grid a:hover{color:#fff}.footer-bottom{padding-top:25px;margin-top:25px;border-top:1px solid rgba(255,255,255,.09);font-size:12px;color:#7f9aae}
.floating-wa{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#16a764;color:#fff;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.2);z-index:40}

@media(max-width:900px){
 .primary-nav{position:absolute;top:82px;left:0;right:0;background:#041f3f;display:none;flex-direction:column;align-items:stretch;padding:20px 30px;border-top:1px solid rgba(255,255,255,.1)}
 .primary-nav.open{display:flex}.nav-toggle{display:block}
 .hero-grid,.about-grid,.quote-grid{grid-template-columns:1fr}.hero{padding-top:55px}.hero-card{max-width:650px}
 .proof-grid{grid-template-columns:1fr 1fr}.proof-grid>div:nth-child(2){border-right:0}
 .service-grid,.process-grid{grid-template-columns:1fr 1fr}
 .gallery{grid-template-columns:repeat(2,1fr)}.reference-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
 .container{width:min(100% - 28px,1160px)}.nav-wrap{height:72px}.brand img{width:126px;height:54px}.primary-nav{top:72px}
 .hero h1{font-size:44px}.hero-lead{font-size:17px}.hero-card img{height:260px}.hero-card-bottom{align-items:flex-start;flex-direction:column}
 .proof-grid,.service-grid,.process-grid{grid-template-columns:1fr}.proof-grid>div{border-right:0;border-bottom:1px solid var(--line)}
 .section{padding:68px 0}.gallery{grid-auto-rows:190px}.gallery-wide{grid-column:span 2}.gallery-tall{grid-row:span 1}
 .quote-form{grid-template-columns:1fr;padding:20px}.quote-form .full{grid-column:1}
 .footer-grid{grid-template-columns:1fr}.contact-list a,.contact-list div{flex-direction:column;gap:2px}.contact-list strong{text-align:left}
}
