@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700;800&display=swap');

:root {
  --blue:      #0066cc;
  --blue-dark: #004f9f;
  --blue-light:#e8f0fb;
  --navy:      #1a2133;
  --navy-deep: #0d1422;
  --white:     #ffffff;
  --gray-50:   #f5f7fa;
  --gray-100:  #edf0f5;
  --gray-300:  #c8d0de;
  --gray-500:  #6b7a99;
  --gray-700:  #3a4560;
  --text:      #1a2133;
  --text-soft: #5a6a85;
  --border:    #e0e6f0;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:#fff;color:var(--text);font-family:'Open Sans',sans-serif;font-size:15px;line-height:1.6;overflow-x:hidden;}
a{text-decoration:none;color:var(--blue);}
a:hover{color:var(--blue-dark);}
h1,h2,h3,h4{font-family:'Open Sans',sans-serif;font-weight:700;line-height:1.2;color:var(--navy);}
h1{font-size:clamp(28px,4vw,52px);}
h2{font-size:clamp(22px,3vw,38px);}
h3{font-size:18px;}
p{color:var(--text-soft);line-height:1.7;}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:64px;padding:0 40px;
  display:flex;align-items:center;justify-content:space-between;
  background:#fff;border-bottom:1px solid var(--border);
}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nav-logo-text{font-size:20px;font-weight:800;color:var(--navy);letter-spacing:-0.5px;}
.nav-logo-text span{color:var(--blue);}
.nav-links{display:flex;align-items:center;gap:2px;list-style:none;}
.nav-links a{font-size:13px;font-weight:600;color:var(--gray-700);padding:6px 12px;transition:color .15s;}
.nav-links a:hover,.nav-links a.active{color:var(--blue);}
.nav-cta{background:var(--blue)!important;color:#fff!important;padding:7px 18px!important;border-radius:2px;}
.nav-cta:hover{background:var(--blue-dark)!important;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.hamburger span{display:block;width:22px;height:2px;background:var(--gray-700);}

/* ── HERO ── */
.hero{
  position:relative;min-height:90vh;
  display:flex;align-items:center;
  padding:100px 40px 80px;
  background:linear-gradient(135deg,#0d1a3a 0%,#1a3a6e 50%,#0d2a52 100%);
  overflow:hidden;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M0 0h40v40H0V0zm40 40h40v40H40V40zm0-40h2l-2 2V0zm0 4l4-4h2l-6 6V4zm0 4l8-8h2L40 10V8zm0 4L52 0h2L40 14v-2zm0 4L56 0h2L40 18v-2zm0 4L60 0h2L40 22v-2zm0 4L64 0h2L40 26v-2zm0 4L68 0h2L40 30v-2zm0 4L72 0h2L40 34v-2zm0 4L76 0h2L40 38v-2zm0 4L80 0v2L42 40h-2zm4 0L80 4v2L46 40h-2zm4 0L80 8v2L50 40h-2zm4 0L80 12v2L54 40h-2zm4 0L80 16v2L58 40h-2zm4 0L80 20v2L62 40h-2zm4 0L80 24v2L66 40h-2zm4 0L80 28v2L70 40h-2zm4 0L80 32v2L74 40h-2zm4 0L80 36v2L78 40h-2zm4 0L80 40v0h-2l2-2v2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.hero-inner{max-width:700px;position:relative;z-index:1;}
.hero-eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,0.6);text-transform:uppercase;margin-bottom:20px;}
.hero h1{color:#fff;font-size:clamp(30px,4.5vw,58px);font-weight:800;line-height:1.1;margin-bottom:22px;}
.hero h1 span{color:#5ab0ff;}
.hero-desc{font-size:17px;color:rgba(255,255,255,0.72);line-height:1.75;max-width:540px;margin-bottom:36px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}

/* ── PAGE HERO ── */
.page-hero{
  padding:110px 40px 60px;
  background:linear-gradient(135deg,#0d1a3a 0%,#1a3a6e 100%);
  position:relative;overflow:hidden;
}
.page-hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M0 0h40v40H0V0zm40 40h40v40H40V40z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");}
.page-hero-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,0.55);text-transform:uppercase;margin-bottom:14px;position:relative;z-index:1;}
.page-hero h1{color:#fff;position:relative;z-index:1;margin-bottom:14px;}
.page-hero h1 span{color:#5ab0ff;}
.page-hero p{color:rgba(255,255,255,0.7);font-size:16px;max-width:560px;position:relative;z-index:1;}

/* ── SECTIONS ── */
.section{padding:80px 40px;max-width:1160px;margin:0 auto;}
.section-wrap{padding:80px 0;}
.section-wrap-gray{background:var(--gray-50);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:80px 0;}
.section-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--blue);text-transform:uppercase;margin-bottom:10px;}
.section-title{margin-bottom:12px;}
.section-title span{color:var(--blue);}
.section-lead{font-size:16px;color:var(--text-soft);max-width:520px;line-height:1.75;margin-bottom:48px;}

/* ── BUTTONS ── */
.btn{display:inline-block;padding:11px 26px;font-size:13px;font-weight:700;border-radius:2px;transition:background .15s,color .15s;cursor:pointer;border:none;font-family:inherit;}
.btn-blue{background:var(--blue);color:#fff;}
.btn-blue:hover{background:var(--blue-dark);color:#fff;}
.btn-outline-white{border:1.5px solid rgba(255,255,255,0.4);color:rgba(255,255,255,0.85);background:transparent;}
.btn-outline-white:hover{border-color:#fff;color:#fff;}
.btn-outline{border:1.5px solid var(--border);color:var(--gray-700);background:#fff;}
.btn-outline:hover{border-color:var(--blue);color:var(--blue);}
.btn-white{background:#fff;color:var(--blue);}
.btn-white:hover{background:var(--gray-50);color:var(--blue-dark);}

/* ── CARDS ── */
.card{background:#fff;border:1px solid var(--border);padding:28px;transition:border-color .2s,box-shadow .2s;}
.card:hover{border-color:var(--blue);box-shadow:0 4px 20px rgba(0,102,204,0.08);}
.card-icon{font-size:28px;margin-bottom:16px;}
.card h3{font-size:16px;margin-bottom:8px;}
.card p{font-size:14px;}
.card-link{display:inline-block;margin-top:14px;font-size:13px;font-weight:700;color:var(--blue);}

/* ── GRIDS ── */
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--border);}
.grid-3 .card{border:none;}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--border);}
.grid-4 > *{background:#fff;}

/* ── LOGO CLIENTS STRIP ── */
.clients-strip{padding:28px 40px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0;overflow-x:auto;}
.clients-label{font-size:12px;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;padding-right:32px;border-right:1px solid var(--border);}
.clients-logos{display:flex;gap:0;flex:1;}
.clients-logo-item{padding:0 28px;border-right:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--gray-500);white-space:nowrap;}

/* ── STAT BAR ── */
.stat-bar{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);border-top:3px solid var(--blue);}
.stat-item{padding:36px 24px;text-align:center;border-right:1px solid rgba(255,255,255,0.08);}
.stat-item:last-child{border-right:none;}
.stat-num{font-size:36px;font-weight:800;color:#fff;margin-bottom:6px;}
.stat-label{font-size:12px;color:rgba(255,255,255,0.5);text-transform:uppercase;letter-spacing:1px;}

/* ── TWO-COL FEATURE ── */
.feature-split{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.feature-split-text{padding:72px 56px;}
.feature-split-visual{background:var(--gray-50);border-left:1px solid var(--border);display:flex;align-items:center;justify-content:center;padding:56px;}

/* ── CTA BAND ── */
.cta-band{background:var(--blue);padding:72px 40px;text-align:center;}
.cta-band h2{color:#fff;margin-bottom:12px;}
.cta-band p{color:rgba(255,255,255,0.8);font-size:16px;margin-bottom:30px;}

/* ── FORM ── */
.form-group{margin-bottom:16px;}
.form-group label{display:block;font-size:12px;font-weight:700;color:var(--gray-700);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px;}
.form-group input,.form-group textarea,.form-group select{width:100%;background:#fff;border:1px solid var(--border);padding:10px 14px;font-size:14px;font-family:inherit;color:var(--text);outline:none;transition:border-color .2s;border-radius:0;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--blue);}
.form-group textarea{resize:vertical;min-height:120px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

/* ── FOOTER ── */
footer{background:var(--navy-deep);color:rgba(255,255,255,0.6);padding:64px 40px 28px;}
.footer-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.footer-logo-text{font-size:20px;font-weight:800;color:#fff;letter-spacing:-.5px;margin-bottom:6px;}
.footer-logo-text span{color:#5ab0ff;}
.footer-tagline{font-size:11px;color:rgba(255,255,255,0.35);letter-spacing:1px;text-transform:uppercase;margin-bottom:14px;}
.footer-desc{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.7;}
.footer-col h4{font-size:10px;font-weight:700;letter-spacing:2px;color:rgba(255,255,255,0.3);text-transform:uppercase;margin-bottom:16px;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:10px;}
.footer-col a{font-size:13px;color:rgba(255,255,255,0.55);transition:color .15s;}
.footer-col a:hover{color:#fff;}
.footer-contact{font-size:13px;color:rgba(255,255,255,0.5);margin-bottom:8px;line-height:1.6;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.07);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.footer-copy{font-size:12px;color:rgba(255,255,255,0.25);}

/* ── TAGS ── */
.tag{display:inline-block;background:var(--blue-light);color:var(--blue);font-size:12px;font-weight:600;padding:4px 12px;margin:3px;border-radius:2px;}

/* ── MOBILE ── */
@media(max-width:900px){
  nav{padding:0 20px;}
  .nav-links{display:none;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:16px 20px;gap:4px;}
  .nav-links.open{display:flex;}
  .hamburger{display:flex;}
  .hero,.page-hero{padding:100px 20px 60px;}
  .section{padding:60px 20px;}
  .clients-strip{padding:20px;}
  .stat-bar{grid-template-columns:1fr 1fr;}
  .feature-split{grid-template-columns:1fr;}
  .feature-split-visual{display:none;}
  .cta-band{padding:56px 20px;}
  footer{padding:48px 20px 24px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .form-row{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr;}
  .stat-bar{grid-template-columns:1fr 1fr;}
}
