/* Professional white + grey refinement without changing layout structure */
:root{
  --site-bg:#ffffff;
  --site-surface:#f8fafc;
  --site-surface-2:#f1f5f9;
  --site-border:#e2e8f0;
  --site-text:#475569;
  --site-dark:#0f172a;
  --site-heading:#0f172a;
  --site-accent:#334155;
  --site-accent-2:#64748b;
  --site-shadow:0 14px 34px rgba(15,23,42,.08);
  --site-shadow-strong:0 18px 40px rgba(15,23,42,.12);
}

html{scroll-behavior:smooth;}
body{
  background:#fff !important;
  color:var(--site-text) !important;
  overflow-x:hidden;
}
a{transition:all .25s ease;}
h1,h2,h3,h4,h5,h6,
.elementor-heading-title,
.site-title,
.ast-site-title-wrap a{color:var(--site-heading) !important;}
p,li,span,.elementor-widget-text-editor,.elementor-icon-list-text{color:var(--site-text);}

/* HEADER */
.elementor-element-5cd0cf5,
.elementor-element-5cd0cf5 > .e-con-inner,
.ast-primary-header-bar,
.ast-builder-menu-1,
.ast-site-header{
  background:#fff !important;
}
.elementor-element-5cd0cf5{
  border-bottom:1px solid var(--site-border);
  box-shadow:0 6px 24px rgba(15,23,42,.04);
}
.elementor-element-5cd0cf5 > .e-con-inner{
  align-items:center !important;
  min-height:88px;
}
.elementor-element-5b5d7475 img{
  width:170px !important;
  max-width:100%;
  height:auto !important;
  display:block;
  background:#fff;
  border:1px solid rgba(226,232,240,.9);
  border-radius:18px;
  padding:10px 14px;
  box-shadow:0 10px 26px rgba(15,23,42,.07);
}
.elementor-element-6df79d03{
  justify-content:flex-end !important;
}
.elementor-element-3e17c839 .elementskit-navbar-nav > li > a{
  color:var(--site-heading) !important;
}
.elementor-element-3e17c839 .elementskit-menu-hamburger{
  background:var(--site-dark) !important;
  border-radius:999px !important;
  width:56px;
  height:56px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:var(--site-shadow);
}
.elementor-element-3e17c839 .elementskit-menu-hamburger-icon{
  background-color:#fff !important;
}
.elementor-element-3e17c839 .elementskit-menu-container{
  background:#fff !important;
}
.elementor-element-3e17c839 .elementskit-menu-overlay{
  background:rgba(15,23,42,.45) !important;
}

/* HERO */
.elementor-165 .elementor-element.elementor-element-22bd1154,
.elementor-165 .elementor-element.elementor-element-22bd1154 > .elementor-motion-effects-container > .elementor-motion-effects-layer{
  background:#fff !important;
}
.elementor-165 .elementor-element.elementor-element-618e4c4f,
.elementor-165 .elementor-element.elementor-element-45d047e0{
  background:transparent !important;
}
.elementor-165 .elementor-element.elementor-element-db2e599{
  border-radius:28px;
  overflow:hidden;
}
.elementor-165 .elementor-element.elementor-element-dcab1ee,
.elementor-165 .elementor-element.elementor-element-dcab1ee > .elementor-motion-effects-container > .elementor-motion-effects-layer{
  background:#fff !important;
  border:1px solid var(--site-border);
}
.elementor-165 .elementor-element.elementor-element-71cfc265,
.elementor-165 .elementor-element.elementor-element-71cfc265 p{
  color:var(--site-accent) !important;
  font-weight:600;
}
.elementor-165 .elementor-element.elementor-element-23ea43b3 .elementor-heading-title{
  color:var(--site-heading) !important;
  letter-spacing:-0.03em;
  line-height:.96em !important;
  max-width:12ch;
}
.elementor-165 .elementor-element.elementor-element-1df5f914,
.elementor-165 .elementor-element.elementor-element-1df5f914 p{
  color:var(--site-text) !important;
}
.elementor-165 .elementor-element.elementor-element-618e4c4f{
  padding-top:140px !important;
  padding-bottom:120px !important;
}
.elementor-165 .elementor-element.elementor-element-db2e599{
  padding-top:110px !important;
  padding-bottom:110px !important;
}
.elementor-165 .elementor-element.elementor-element-1bd6707e .e-con-inner{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:14px !important;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a,
.elementor-165 .elementor-element.elementor-element-76f4c82{
  width:auto;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button,
.elementor-165 .elementor-element.elementor-element-76f4c82 .elementor-button,
.elementor-button,
button,
input[type="submit"],
a.elementor-button{
  border-radius:999px !important;
  min-height:56px;
  padding:16px 26px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  box-shadow:var(--site-shadow) !important;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button{
  background:var(--site-dark) !important;
  border-color:var(--site-dark) !important;
  color:#fff !important;
}
.elementor-165 .elementor-element.elementor-element-76f4c82 .elementor-button{
  background:var(--site-surface-2) !important;
  border:1px solid var(--site-border) !important;
  color:var(--site-dark) !important;
}
.elementor-165 .elementor-element.elementor-element-76f4c82 .elementor-button *{
  color:var(--site-dark) !important;
  fill:var(--site-dark) !important;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button:hover,
.elementor-165 .elementor-element.elementor-element-76f4c82 .elementor-button:hover{
  transform:translateY(-1px);
}

/* cards/sections/footer */
.elementor-widget-wrap > .elementor-element,
.elementskit-pricing-table,
.elementor-widget-image-box .elementor-image-box-wrapper,
.ekit-wid-con,
.elementor-widget-counter .elementor-counter{
  border-radius:18px;
}
.elementskit-pricing-table,
.ekit-wid-con,
.elementor-widget-image-box .elementor-image-box-wrapper{
  box-shadow:0 18px 42px rgba(15,23,42,.06);
}
.site-footer,
.ast-footer-copyright,
footer,
footer .site-primary-footer-wrap{
  background:#0f172a !important;
  color:#cbd5e1 !important;
}
.site-footer *,
footer *,
.ast-footer-copyright *{
  color:#cbd5e1 !important;
}
.site-footer a,
footer a,
.ast-footer-copyright a{
  color:#fff !important;
}
.site-footer-section{
  border-top:1px solid rgba(255,255,255,.08);
}

/* Floating CTA */
.fs-floating-cta{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.fs-floating-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:170px;
  padding:14px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  font-size:14px;
  box-shadow:0 16px 40px rgba(15,23,42,.18);
}
.fs-floating-cta__call{background:var(--site-dark);color:#fff;}
.fs-floating-cta__quote{background:#fff;color:var(--site-dark);border:1px solid var(--site-border);}
.fs-floating-cta a:hover{transform:translateY(-2px);}

/* MOBILE */
@media (max-width: 1024px){
  .elementor-165 .elementor-element.elementor-element-618e4c4f{padding-top:72px !important;padding-bottom:56px !important;}
  .elementor-165 .elementor-element.elementor-element-db2e599{padding-top:56px !important;padding-bottom:56px !important;}
  .elementor-element-23ea43b3 .elementor-heading-title{font-size:52px !important;}
}

@media (max-width: 767px){
  .elementor-element-5cd0cf5 > .e-con-inner{
    min-height:72px;
    padding:10px 14px !important;
  }
  .elementor-element-5b5d7475 img{
    width:132px !important;
    border-radius:14px;
    padding:8px 10px;
  }
  .elementor-element-3e17c839 .elementskit-menu-hamburger{
    width:48px;
    height:48px;
  }

  .elementor-165 .elementor-element.elementor-element-22bd1154{
    display:flex !important;
    flex-direction:column !important;
  }
  .elementor-165 .elementor-element.elementor-element-618e4c4f{
    order:1;
    padding:22px 0 18px !important;
    align-items:stretch !important;
  }
  .elementor-165 .elementor-element.elementor-element-45d047e0{
    align-items:stretch !important;
    justify-content:flex-start !important;
  }
  .elementor-165 .elementor-element.elementor-element-db2e599{
    order:2;
    display:none !important;
  }
  .elementor-165 .elementor-element.elementor-element-4a617861 .e-con-inner{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
  }
  .elementor-165 .elementor-element.elementor-element-6667ce0e img{
    width:72px !important;
    height:2px !important;
  }
  .elementor-165 .elementor-element.elementor-element-71cfc265 p{
    font-size:15px !important;
    line-height:1.4 !important;
  }
  .elementor-165 .elementor-element.elementor-element-23ea43b3 .elementor-heading-title{
    font-size:34px !important;
    line-height:1.04em !important;
    max-width:100%;
    margin:0 0 10px !important;
  }
  .elementor-165 .elementor-element.elementor-element-1df5f914{
    margin:0 0 16px !important;
    padding:0 !important;
  }
  .elementor-165 .elementor-element.elementor-element-1df5f914 p{
    font-size:15px !important;
    line-height:1.6 !important;
  }
  .elementor-165 .elementor-element.elementor-element-1bd6707e{
    width:100%;
  }
  .elementor-165 .elementor-element.elementor-element-1bd6707e .e-con-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
  }
  .elementor-165 .elementor-element.elementor-element-25cbff5a,
  .elementor-165 .elementor-element.elementor-element-76f4c82{
    width:100%;
  }
  .elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button,
  .elementor-165 .elementor-element.elementor-element-76f4c82 .elementor-button{
    width:100%;
    justify-content:center;
    min-height:54px;
    padding:15px 20px !important;
  }

  .fs-floating-cta{
    right:12px;
    left:12px;
    bottom:12px;
    flex-direction:row;
    gap:10px;
  }
  .fs-floating-cta a{
    min-width:0;
    flex:1 1 0;
    padding:13px 14px;
    font-size:13px;
  }
}


/* Final professional CTA + mobile menu refinement */
:root{
  --site-call-bg:#dbeafe;
  --site-call-border:#bfdbfe;
  --site-call-text:#0f172a;
  --site-menu-bg:#f8fafc;
  --site-menu-border:#e2e8f0;
}

.elementor-element-3e17c839 .elementskit-menu-hamburger{
  background:var(--site-menu-bg) !important;
  border:1px solid var(--site-menu-border) !important;
  box-shadow:0 10px 24px rgba(15,23,42,.08) !important;
}
.elementor-element-3e17c839 .elementskit-menu-hamburger-icon{
  background-color:var(--site-dark) !important;
}
.elementor-element-3e17c839 .elementskit-menu-container,
.elementor-element-3e17c839 .elementskit-nav-identity-panel{
  background:var(--site-menu-bg) !important;
  border-left:1px solid var(--site-menu-border) !important;
}
.elementor-element-3e17c839 .elementskit-navbar-nav > li{
  border-bottom:1px solid var(--site-menu-border) !important;
}
.elementor-element-3e17c839 .elementskit-navbar-nav > li > a{
  color:var(--site-dark) !important;
  font-weight:700 !important;
}
.elementor-element-3e17c839 .elementskit-navbar-nav > li.current-menu-item > a,
.elementor-element-3e17c839 .elementskit-navbar-nav > li > a:hover{
  background:#eaf2ff !important;
  color:var(--site-dark) !important;
}
.elementor-element-3e17c839 .elementskit-menu-close{
  color:var(--site-dark) !important;
  font-size:24px !important;
  line-height:1 !important;
}

/* Call CTA made visible */
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button{
  background:var(--site-call-bg) !important;
  border:1px solid var(--site-call-border) !important;
  color:var(--site-call-text) !important;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button *{
  color:var(--site-call-text) !important;
  fill:var(--site-call-text) !important;
}
.elementor-165 .elementor-element.elementor-element-25cbff5a .elementor-button:hover{
  background:#cfe3ff !important;
  border-color:#93c5fd !important;
  color:var(--site-call-text) !important;
}

.fs-floating-cta__call{
  background:var(--site-call-bg) !important;
  color:var(--site-call-text) !important;
  border:1px solid var(--site-call-border) !important;
}
.fs-floating-cta__quote{
  background:#fff !important;
  color:var(--site-dark) !important;
  border:1px solid var(--site-border) !important;
}
