.elementor-823 .elementor-element.elementor-element-7b5b5f3{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800;900&display=swap');

/* ---------- Kept from earlier pass: responsive safeguards ---------- */
@media(max-width: 1024px){
  .elementor>.e-con{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}
@media(max-width: 767px){
  h1{ font-size:34px !important; line-height:1.2 !important; }
  h2{ font-size:28px !important; line-height:1.25 !important; }
}

/* ================= XMotion premium system - page 823 only ================= */
.elementor-823{
  --xm-navy:#0B1220;
  --xm-cyan:#00E0FF;
  --xm-blue:#2563EB;
  --xm-purple:#7C3AED;
  font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  color:#33415E;
  overflow-x:clip;
}
.elementor-823 a:focus-visible{ outline:3px solid #00E0FF; outline-offset:3px; }

/* ---------- HERO ---------- */
.xm-hero{
  background:
    radial-gradient(900px 480px at 88% 8%, rgba(0,224,255,.16), transparent 60%),
    radial-gradient(760px 560px at 6% 96%, rgba(124,58,237,.24), transparent 62%),
    linear-gradient(135deg,#0B1220 0%,#0D1730 48%,#182A63 100%) !important;
  position:relative;
  overflow:hidden;
  padding-top:clamp(4.5rem,8vw,7.5rem) !important;
  padding-bottom:clamp(4rem,7vw,6.5rem) !important;
}
.xm-hero .elementor-widget-heading::before{
  content:"ELEMENTOR PRO + CROCOBLOCK";
  display:block;
  color:#00E0FF;
  font-weight:700;
  font-size:.78rem;
  letter-spacing:.26em;
  margin-bottom:1.2rem;
}
.xm-hero .elementor-heading-title{
  color:#ffffff !important;
  font-weight:800;
  letter-spacing:-.02em;
  font-size:clamp(2.6rem,5.2vw,4.4rem);
  line-height:1.07;
}
.xm-grad-text{
  background:linear-gradient(94deg,#00E0FF 5%,#6FB2FF 95%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.xm-hero .elementor-widget-text-editor{
  font-size:clamp(1.02rem,1.5vw,1.22rem);
  line-height:1.65;
  max-width:640px;
}
.xm-hero .elementor-widget-text-editor p{ color:rgba(255,255,255,.85); }

/* hero checklist becomes glass chips */
.xm-hero .elementor-icon-list-items{
  display:flex; flex-direction:column; gap:.7rem;
  list-style:none; margin:0; padding:0;
}
.xm-hero .elementor-icon-list-item{
  display:flex; align-items:center; gap:.7rem;
  margin:0;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(0,224,255,.28);
  border-radius:14px;
  padding:.8rem 1.05rem;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:transform .3s ease,border-color .3s ease,background .3s ease;
}
.xm-hero .elementor-icon-list-item:hover{
  transform:translateY(-3px);
  border-color:rgba(0,224,255,.65);
  background:rgba(0,224,255,.10);
}
.xm-hero .elementor-icon-list-text{ color:#fff; font-weight:600; font-size:.98rem; }
.xm-hero .elementor-icon-list-icon i{ color:#00E0FF; }
.xm-hero .elementor-icon-list-icon svg{ fill:#00E0FF; }

/* ---------- FEATURE SECTIONS ---------- */
.xm-sec{
  padding-top:clamp(4.2rem,7vw,6.8rem) !important;
  padding-bottom:clamp(4.2rem,7vw,6.8rem) !important;
  text-align:center;
}
.xm-band-soft{ background:#F3F6FE !important; }
.xm-sec .elementor-widget-heading::before{
  display:block;
  color:#00A9D6;
  font-weight:800;
  font-size:.78rem;
  letter-spacing:.26em;
  margin-bottom:1.1rem;
}
.xm-eb-dynamic .elementor-widget-heading::before{ content:"DYNAMIC CONTENT"; }
.xm-eb-filter .elementor-widget-heading::before{ content:"SMART FILTERS"; }
.xm-eb-edit .elementor-widget-heading::before{ content:"FULLY EDITABLE"; }
.xm-eb-fits .elementor-widget-heading::before{ content:"USE CASES"; }
.xm-sec .elementor-heading-title{
  color:#0B1220 !important;
  font-weight:800;
  letter-spacing:-.015em;
  font-size:clamp(2rem,3.8vw,3.1rem);
  line-height:1.12;
  max-width:920px;
  margin-inline:auto;
}

/* icon lists become white cards */
.xm-sec .elementor-icon-list-items{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.4rem;
  list-style:none;
  margin:2.8rem auto 0;
  padding:0;
  max-width:1140px;
  text-align:left;
}
.xm-sec .elementor-icon-list-item{
  display:flex; flex-direction:column; align-items:flex-start; gap:1.1rem;
  margin:0;
  background:#ffffff;
  border:1px solid #E5EBFA;
  border-radius:20px;
  padding:2rem 1.7rem;
  box-shadow:0 12px 32px -14px rgba(16,28,52,.14);
  transition:transform .3s ease,box-shadow .3s ease;
}
.xm-sec .elementor-icon-list-item:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 48px -14px rgba(37,99,235,.35);
}
.xm-sec .elementor-icon-list-icon{
  width:54px; height:54px; border-radius:16px; flex:0 0 auto;
  display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#2563EB 0%,#00C2FF 100%);
  box-shadow:0 10px 22px -8px rgba(37,99,235,.5);
}
.xm-sec .elementor-icon-list-icon i{ color:#fff; font-size:1.35rem; }
.xm-sec .elementor-icon-list-icon svg{ fill:#fff; width:26px; height:26px; }
.xm-sec .elementor-icon-list-text{
  color:#0E1930; font-weight:600; font-size:1.02rem; line-height:1.6;
}
.xm-sec .elementor-widget-button{ margin-top:2.8rem; text-align:center; }

/* ---------- BUTTONS: one premium system ---------- */
.elementor-823 .elementor-button{
  font-family:'Montserrat',system-ui,sans-serif;
  font-weight:700;
  font-size:1rem;
  letter-spacing:.015em;
  color:#ffffff !important;
  background:linear-gradient(135deg,#2563EB 0%,#00C8FF 100%) !important;
  border:none !important;
  border-radius:14px !important;
  padding:1.02rem 2.2rem !important;
  box-shadow:0 14px 30px -10px rgba(37,99,235,.55);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.6rem;
  transition:transform .3s ease,box-shadow .3s ease;
}
.elementor-823 .elementor-button:hover,
.elementor-823 .elementor-button:focus-visible{
  color:#ffffff !important;
  transform:translateY(-2px);
  box-shadow:0 20px 40px -12px rgba(37,99,235,.65);
}

/* ---------- FINAL CTA ---------- */
.xm-cta{
  background:
    radial-gradient(700px 420px at 12% 0%, rgba(0,224,255,.20), transparent 60%),
    radial-gradient(760px 520px at 90% 100%, rgba(0,224,255,.12), transparent 60%),
    linear-gradient(135deg,#1E40AF 0%,#2563EB 38%,#6D3DF5 72%,#7C3AED 100%) !important;
  --justify-content:center;
  position:relative;
  overflow:hidden;
  text-align:center;
  padding-top:clamp(4.5rem,8vw,7.5rem) !important;
  padding-bottom:clamp(4.5rem,8vw,7.5rem) !important;
}
.xm-cta .elementor-widget-heading::before{
  content:"FREE CONSULTATION";
  display:block;
  color:#00E0FF;
  font-weight:800;
  font-size:.78rem;
  letter-spacing:.26em;
  margin-bottom:1.2rem;
}
.xm-cta .elementor-heading-title{
  color:#ffffff !important;
  font-weight:800;
  letter-spacing:-.02em;
  font-size:clamp(2.2rem,4.6vw,3.8rem);
  line-height:1.1;
  max-width:920px;
  margin-inline:auto;
}
.xm-cta .elementor-widget-text-editor{
  font-size:clamp(1.02rem,1.5vw,1.2rem);
  line-height:1.65;
  max-width:680px;
  margin-inline:auto;
}
.xm-cta .elementor-widget-text-editor p{ color:rgba(255,255,255,.88); }
.xm-cta .elementor-button{
  border:1px solid rgba(255,255,255,.35) !important;
  box-shadow:0 16px 34px -10px rgba(2,8,30,.55);
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1024px){
  .xm-hero{ --flex-direction:column !important; }
  .xm-hero .e-con{ width:100% !important; max-width:100% !important; }
  .xm-sec .elementor-icon-list-items{ grid-template-columns:1fr; max-width:620px; }
}
@media(max-width:767px){
  .elementor-823 .e-con:has(> .elementor-widget-button){
    --flex-direction:column !important;
    align-items:stretch !important;
  }
  .elementor-823 .elementor-button{ width:100%; }
  .xm-sec .elementor-icon-list-item{ padding:1.6rem 1.4rem; }
  .xm-hero .elementor-icon-list-item{ padding:.7rem .95rem; }
}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){
  .elementor-823 *,
  .elementor-823 *::before,
  .elementor-823 *::after{
    transition:none !important;
    animation:none !important;
  }
}

/* ---------- FIX: uniform button text size ---------- */
.elementor-823 .elementor-button{ font-size:1rem !important; }

/* ---------- FIX: CTA buttons in a centered row on desktop ---------- */
@media(min-width:768px){
  .xm-cta{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:center !important;
  }
  .xm-cta > .elementor-widget-heading,
  .xm-cta > .elementor-widget-text-editor{
    flex:1 1 100%;
    max-width:100%;
  }
  .xm-cta > .elementor-widget-button{
    flex:0 1 auto;
    margin:.5rem;
  }
}

/* ---------- FIX 2: CTA row must hit Elementor's inner flex wrapper ---------- */
@media(min-width:768px){
  .xm-cta > .e-con-inner{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:center !important;
    flex:1 1 100% !important;
    max-width:100% !important;
  }
  .xm-cta .elementor-widget-heading,
  .xm-cta .elementor-widget-text-editor{
    flex:1 1 100% !important;
    max-width:100% !important;
  }
  .xm-cta .elementor-widget-button{
    flex:0 1 auto !important;
    margin:.5rem !important;
  }
}/* End custom CSS */