    :root{
  --bg:#fbfdff;
  --surface:#ffffff;
  --muted:#6b7280;
  --accent:#1a4179;
  --accent-2:#1a4179;
  --soft:#EAF6FA;
  --radius:14px;
  --container:1180px;
  --gap:1rem;
  --shadow:0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  --font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

*{box-sizing:border-box}
html,body{height:100%;scroll-behavior: smooth;}
body{
  margin:0;
  font-family:var(--font-family);
  background:var(--bg);
  color:#071126;
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
  font-size:16px;
}
.main_wrapper{
    padding-top: 70px;
}
#home, #features, #industries, #services, #about, #testimonials, #contact{
    scroll-margin-top: 75px;
    padding: 50px 0px;
}
section:nth-child(even){
    background-color: whitesmoke;
}
#contact{
    padding-bottom: 60px;
}
/* container */
.container{
  max-width: 1270px;
  margin: 0 auto;
}

/* header */
.site-header{
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index:99;
  background: var(--accent-2);
  border-bottom:1px solid rgba(13,37,54,0.04);
  max-height: 150px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.4);
}
.site-header img{
  max-width: 210px;
}
.header-row{
    display: flex;
    gap: var(--gap);
    align-items: center;
    justify-content: space-between;
    padding: 10px 0px;
}
.footer-col img{
    max-width: 210px;
}
.footer-col p{
    font-size: 18px;
    color: #fff;
    font-weight: 600;
    line-height: 26px;
}
.brand-text{ font-size:1.02rem; letter-spacing:0.4px; }

/* CTA button in nav */
.btn-cta{
  background:linear-gradient(90deg,var(--accent-2),var(--accent));
  color:#fff;
  padding:0.55rem 0.9rem;
  border-radius:10px;
  text-decoration:none;
  font-weight:700;
}

/* HERO */
.hero{
  padding:3rem 0;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:1.25rem;
  align-items:center;
}
.hero-left h1{
  margin:0 0 0.6rem 0;
  font-size:clamp(1.4rem, 3.6vw, 2.4rem);
  line-height:1.03;
  color:#062033;
}
.accent{ color:var(--accent); font-weight:800; }
.lead{ color:var(--muted); margin:0 0 25px 0; max-width:60ch; }
.hero-actions{ display:flex; gap:0.8rem; margin-bottom:25px; flex-wrap:wrap; }

/* buttons */
.btn{
  display:inline-flex;
  align-items:center;
  gap:0.5rem;
  padding:0.65rem 1rem;
  border-radius:10px;
  text-decoration:none;
  font-weight:700;
  border:0;
}
.btn-primary{ background:var(--accent-2); color:#fff; box-shadow:0 10px 30px rgba(14,75,106,0.08); }
.btn-outline{ border:1px solid var(--accent-2); background:transparent; color:var(--accent-2); }

/* quick stats */
.quick-stats{ display:flex; gap:1.1rem; margin-top:0.6rem; align-items:center; flex-wrap:wrap; list-style:none; padding:0; margin-left:0; }
.quick-stats li{
    display:flex; flex-direction:column;
    background: var(--accent-2);
    padding: 2px 10px 8px;
    border-radius: 5px;
    min-width: 140px;
    align-items: center;
    color: #fff;
}
.quick-stats strong{ font-size:32px; color:#fff;font-weight: 700; }
.quick-stats li span{
    display: inline-block;
    margin-top: -5px;
}

/* hero right mockup */
.hero-right{ display:flex; justify-content:center; align-items:center; }
.mockup{ position:relative; border-radius:18px; overflow:hidden; box-shadow:var(--shadow); background:linear-gradient(180deg,#fff,#fbfdff); }
.mockup img{ width:100%; height:auto; display:block; max-width:800px; }
.mockup-badge{
  position:absolute;
  left:18px;
  bottom:18px;
  background:linear-gradient(90deg, rgba(26,65,121,0.95), rgba(26,65,121,0.9));
  color:#fff;
  display:flex;
  gap:0.6rem;
  align-items:center;
  padding:0.5rem 0.7rem;
  border-radius:10px;
  box-shadow:0 8px 30px rgba(14,75,106,0.12);
  font-size:0.92rem;
}
.badge-title{ font-weight:700; }
.badge-sub{ font-size:0.85rem; opacity:0.95; }

/* SECTION HEAD */
.section{ padding:2.4rem 0; }
.section-head{ display:flex; flex-direction:column; gap:0.2rem; margin-bottom:1rem; }
.section-head h2{
    margin:0;
    font-size: 32px;
    line-height: 42px;
    margin-bottom: 10px;
    color: var(--accent-2);
}
.muted{ color:var(--muted); margin:0; }

/* features scroller */
.features-scroll{
  display:flex;
  gap:1rem;
  overflow:auto;
  padding:0.6rem 0.4rem;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling:touch;
}
.feature-card{
  flex:0 0 260px;
  background:var(--surface);
  border-radius:14px;
  padding:1rem;
  min-height:160px;
  box-shadow:var(--shadow);
  scroll-snap-align:center;
}
.icon-wrap{ width:56px; height:56px; border-radius:12px; display:grid; place-items:center; margin-bottom:0.6rem; background:#fff; box-shadow:0 6px 18px rgba(12,40,53,0.04); }

/* grid 3 */
.grid{ display:grid; gap:1rem; }
.grid-3{ grid-template-columns:1fr; }
.industry-icon{ width:52px; height:52px; display:grid; place-items:center; border-radius:12px; margin-bottom:0.6rem; background:#fff; box-shadow:0 6px 18px rgba(12,40,53,0.03); }
.link-sm{ display:inline-block; margin-top:0.6rem; font-weight:700; color:var(--accent); text-decoration:none; }

/* services */
.service-card{ text-align:left; min-height:170px; }

/* about */
.about-grid{ display:flex; flex-direction:column; gap:1rem; align-items:center; }
.about-img img{ width:100%; border-radius:12px; box-shadow:var(--shadow); display:block; }
.about-copy{ max-width:680px; }
.checklist{ padding-left:1.1rem; color:var(--muted); margin-top:0.6rem; }

/* testimonials */
.testimonials-wrap{ display:flex; gap:1rem; align-items:center; }
.test-slider{ flex:1; min-height:120px; display:flex; align-items:center; justify-content:center; }
.testimonial{ max-width:760px; display:none; background:var(--surface); padding:1.2rem; border-radius:12px; box-shadow:var(--shadow); }
.testimonial p{ margin:0 0 0.8rem 0; font-style:italic; }
.testimonial cite{ color:var(--muted); font-weight:700; font-style:normal; }

/* contact */
.contact-grid{ display:flex; flex-direction:column; gap:1rem; }
.contact-card{ background:var(--surface); padding:1rem; border-radius:12px; box-shadow:var(--shadow); }
.contact-info{ background:rgba(0,0,0,.6); padding:1rem; border-radius:12px; }
.form-row{
    display: grid;
    grid-gap: 25px;
    flex-direction: column;
    grid-template-columns: 1fr 1fr;
}
.contact-info h4, .contact-info .link-sm{
    color:#fff;
}
.contact-form label{ display:block; margin-bottom:0.6rem; }
.contact-form input, .contact-form textarea{ width:100%; padding:0.6rem; border-radius:10px; border:1px solid rgba(12,40,53,0.06); }

/* footer */
.site-footer{padding: 35px 0 20px;; margin-top:0px; border-top:1px solid rgba(7,17,34,0.03); background:var(--accent-2); }
.footer-grid{ display:grid; gap:1rem; grid-template-columns:1fr; align-items:center;justify-content: space-between; }
.footer-col h5{ margin:0 0 0.6rem 0; }
.footer-links{ list-style:none; padding:0; margin:0; }
.footer-links li{ margin-bottom:0.45rem; }
.footer-bottom{ grid-column:1 / -1; text-align:center; margin-top:30px; color:#e2e2e2; font-size: 16px;}

/* utilities */
a{ color:inherit; }
a:hover{ text-decoration:underline; }
.header-row a:hover{
    text-decoration: none;
    display: inline-block;
    transition: transform 0.3s ease;
    transform: scale(1.16);
}

.footer-col h2{
    font-size: 20px;
    line-height: 28px;
    color: #fff;
    font-weight: 700;
}
.footer-links a{
    color: #fff;
    font-size: 16px;
    line-height: 24px;
    text-decoration: none;
}
.footer-col:first-child{
    padding-top: 20px;
}
.footer-col p{
    font-size: 16px;
    line-height: 18px;
}
.footer-col.list_icon p{
    display: flex;
    align-items: center;
}
.footer-col.list_icon h2{
    padding-top: 20px;
}
.footer-col.list_icon p svg{
    margin-right: 5px;
}
.footer-col.list_icon p svg path{
    fill:#fff;
}
.social_wrap{
    list-style: none;
    display: flex;
    align-items: center;
    grid-gap: 25px;
    margin: 0;
    padding: 0;
}
.social_wrap li{
    background-color: #e2e2e2;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    width: 32px;
    padding: 5px;
}
.social_wrap li svg{
    height: 24px;
    width:24px
}
.features-scroll::-webkit-scrollbar{
    display: none;
}
.industry-card{
    border-radius: 14px;
    padding: 1rem;
    min-height: 160px;
    box-shadow: var(--shadow);
}
.service-card{
    border-radius: 14px;
    padding: 1rem;
    min-height: 160px;
    box-shadow: var(--shadow);
}
.contact-section{
    background:linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url("./img/address-bg.jpg");
    background-repeat: no-repeat;
    background-size: cover;
}
.contact-section h2, .contact-section p{
    color: #fff;
}
.nav{ display:none;}
/* RESPONSIVE */
@media(min-width:768px){
  .nav{ display:block; position:static; background:transparent; box-shadow:none; padding:0; }
  .nav-list{ list-style:none; margin:0; padding:0; display:flex; gap:1rem; align-items:center; }
  .nav-list a{ text-decoration:none; color:#fff; padding:0.5rem 0.6rem; display:inline-block; font-weight:600; }
  .close_btn_wrap, #overlay{
    display: none;
  }
  .nav.open{ display:block; }
  .nav-toggle{ display:none; }
  .hero-grid{ grid-template-columns: 1fr 520px; gap:2rem; align-items:center; }
  .features-scroll{padding: 24px 17px; }
  .grid-3{ grid-template-columns: repeat(3, 1fr); }
  .about-grid{ flex-direction:row; align-items:flex-start; gap:2rem; }
  .contact-grid{ display: grid; grid-template-columns:1fr 1fr; }
  .footer-grid{ grid-template-columns: 1fr 150px 150px 200px; }
}

@media(min-width:1000px){
  .feature-card{ flex:0 0 300px; }
}
@media(max-width:767px){
.overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    visibility: hidden;
    transition: 0.4s;
    z-index: 9;
}

.nav.open{
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  width: 200px;
  height: 100vh;
  background: var(--accent-2);
  transform: translateX(0);
  transition: transform 0.4s ease;
  z-index: 99;
}
.overlay.open{
    opacity: 1;
    visibility: visible;
}
.nav-list{
    list-style:none; margin:0; padding:0;
    padding-left: 20px;
    padding-top: 20px;
}
.nav-list li{
    margin-bottom: 20px;
}
.nav-list a{
    text-decoration:none; color:#fff; display:inline-block; font-weight:600;
}
.nav-toggle{
    background:transparent; border:0; cursor:pointer;margin-right: 3px;
}
.close_btn_wrap{
    position: absolute;
    bottom: 20px;
    text-align: center;
    width: 100%;
}
#closeMenu{
    font-size: 12px;
    text-transform: uppercase;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 3px;
    width: 80px;
    padding: 5px 10px;
    background:transparent;
    letter-spacing: 1px;
}
.nav-list #closeMenu{
    font-size: 16px;
    border-radius: 0px;
    width: auto;
    padding: inherit;
    border: none;
    text-transform: capitalize;
}
.site-header img {
    max-width: 149px;
}
.site-header {
    padding-left: 10px;
}
#home, #features, #industries, #services, #about, #testimonials, #contact {
    padding: 15px 10px;
}
.footer-grid {
    padding-left: 10px;
}
.footer-col:first-child p{
    line-height: 26px;
}
.footer-grid {
    display: flex;
    flex-wrap: wrap;
}
.footer-col{
    width: 47%;
}
.footer-col:first-child{
    width: 100%;
}
.footer-col:last-child{
    width: 100%;
}
.footer-col.list_icon{
    width: 100%;
}
.hero-left h1 {
    line-height: 28px;
}
.header-row a:hover{
    transform: scale(1);
}
.quick-stats, .hero-actions{
    justify-content: center;
}
.hero-actions .btn-primary:first-child {
    min-width: 224px;
    text-align: center;
    justify-content: center;
}
}