.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-1397cde:#305779;--e-global-color-9a33ba2:#FFFFFF;--e-global-color-f341fb8:#8291BA;--e-global-color-0e55dda:#A689A9;--e-global-color-51b51f5:#A5D6B7;--e-global-color-4fb0462:#CCF8DC;--e-global-color-3c1ea84:#307977;--e-global-color-3c50b89:#B5D2DC;--e-global-color-e4c1594:#EFEFEF;--e-global-color-5d9a8e1:#CECECE;--e-global-color-6479931:#F3F2F2;--e-global-color-1879389:#D86750;--e-global-color-022a3b6:#C0392B;--e-global-color-63d2b49:#C0392B33;--e-global-color-e84f5c8:#3079774D;--e-global-color-b29eab8:#92B7C4;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;--e-global-typography-efcf43f-font-family:"Bricolage Grotesque";--e-global-typography-efcf43f-font-size:26px;--e-global-typography-efcf43f-font-weight:700;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */#eine-app::before,
#benefits::before,
#preise::before {
  content: "";
  display: block;
  height: 100px;
  margin-top: -100px;
  visibility: hidden;
  pointer-events: none;
}

a {
    color: #305779;
}

/* ========================================
   GLOBAL HEADING SYSTEM (COMPACT)
   Base scale: H2 = 24px (desktop)
======================================== */

/* Base */
h1,
h2,
h3,
h4,
h5 {
  font-family: "Bricolage Grotesque", sans-serif;
  color: #305779;
  letter-spacing: -0.01em;
  margin: 0;
  padding: 0;
}

/* DESKTOP */

/* H1 */
h1,
.elementor-widget-heading h1.elementor-heading-title {
  font-size: 36px;
  line-height: 1.05;
  font-weight: 700;
}

/* H2 (anchor) */
h2,
.elementor-widget-heading h2.elementor-heading-title {
  font-size: 24px;
  line-height: 1.15;
  font-weight: 700;
}

/* H3 */
h3,
.elementor-widget-heading h3.elementor-heading-title {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 600;
}

/* H4 */
h4,
.elementor-widget-heading h4.elementor-heading-title {
  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;
}

/* H5 */
h5,
.elementor-widget-heading h5.elementor-heading-title {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 600;
}

/* ========================================
   TABLET
======================================== */
@media (max-width: 1024px) {

  h1,
  .elementor-widget-heading h1.elementor-heading-title {
    font-size: 30px;
  }

  h2,
  .elementor-widget-heading h2.elementor-heading-title {
    font-size: 22px;
  }

  h3,
  .elementor-widget-heading h3.elementor-heading-title {
    font-size: 19px;
  }

  h4,
  .elementor-widget-heading h4.elementor-heading-title {
    font-size: 17px;
  }

  h5,
  .elementor-widget-heading h5.elementor-heading-title {
    font-size: 15px;
  }
}

/* ========================================
   MOBILE
======================================== */
@media (max-width: 767px) {

  h1,
  .elementor-widget-heading h1.elementor-heading-title {
    font-size: 26px;
  }

  h2,
  .elementor-widget-heading h2.elementor-heading-title {
    font-size: 20px;
  }

  h3,
  .elementor-widget-heading h3.elementor-heading-title {
    font-size: 18px;
  }

  h4,
  .elementor-widget-heading h4.elementor-heading-title {
    font-size: 16px;
  }

  h5,
  .elementor-widget-heading h5.elementor-heading-title {
    font-size: 14px;
  }
}

/* ========================================
   VERTICAL SPACING SYSTEM
======================================== */

/* space ABOVE headings */
h1,
h2,
h3,
h4,
h5,
.elementor-widget-heading .elementor-heading-title {
  margin-top: 28px;
}

/* no space if heading is first element */
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child {
  margin-top: 0;
}

/* space BETWEEN heading and paragraph */
h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p {
  margin-top: 10px !important;
}

/* general paragraph spacing */
p {
  margin-top: 12px;
}

/* ========================================
   TABLET
======================================== */
@media (max-width: 1024px) {

  h1,
  h2,
  h3,
  h4,
  h5 {
    margin-top: 22px;
  }

  h1 + p,
  h2 + p,
  h3 + p,
  h4 + p,
  h5 + p {
    margin-top: 8px;
  }

  p {
    margin-top: 10px;
  }
}

/* ========================================
   MOBILE
======================================== */
@media (max-width: 767px) {

  h1,
  h2,
  h3,
  h4,
  h5 {
    margin-top: 18px;
  }

  h1 + p,
  h2 + p,
  h3 + p,
  h4 + p,
  h5 + p {
    margin-top: 6px;
  }

  p {
    margin-top: 8px;
  }
}

/* NAV MENU */

@media (max-width: 1024px) {

  /* panel */
  .e-n-menu-wrapper {
    background: #ffffff !important;
    padding: 8px 0 !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
    overflow: hidden !important;
  }

  /* base item style */
  .e-n-menu-wrapper a,
  .e-n-menu-wrapper .elementor-item,
  .e-n-menu-wrapper .e-n-menu-title {
    display: block !important;
    width: 100% !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    min-height: auto !important;
    color: inherit !important;
  }

  /* remove blue states from anchor links */
  .e-n-menu-wrapper a:focus,
  .e-n-menu-wrapper a:active,
  .e-n-menu-wrapper a.elementor-item-active,
  .e-n-menu-wrapper a[aria-current="page"],
  .e-n-menu-wrapper a[aria-current="true"],
  .e-n-menu-wrapper .elementor-item:focus,
  .e-n-menu-wrapper .elementor-item:active,
  .e-n-menu-wrapper .elementor-item.elementor-item-active {
    background: transparent !important;
    color: inherit !important;
    box-shadow: none !important;
    outline: none !important;
  }

  /* hover only */
  .e-n-menu-wrapper a:hover,
  .e-n-menu-wrapper .elementor-item:hover {
    background: #f7f7f7 !important;
    color: inherit !important;
  }

  /* separators */
  .e-n-menu-wrapper li:not(:last-child) > a,
  .e-n-menu-wrapper li:not(:last-child) > .elementor-item,
  .e-n-menu-wrapper .e-n-menu-heading:not(:last-child),
  .e-n-menu-wrapper .e-n-menu-item:not(:last-child) > a {
    border-bottom: 1px solid #ececec !important;
  }

  /* remove any before/after highlight bars */
  .e-n-menu-wrapper a::before,
  .e-n-menu-wrapper a::after,
  .e-n-menu-wrapper .elementor-item::before,
  .e-n-menu-wrapper .elementor-item::after {
    display: none !important;
    content: none !important;
  }
}




.hero-phone{
  position: relative;
  display: inline-block;
}

.hero-phone::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 55%;
  width: 58%;
  height: 58%;
  transform: translate(-50%, -50%) scale(0.96);
  background: radial-gradient(
    circle,
    rgba(255,255,255,0.22) 0%,
    rgba(170,205,235,0.16) 38%,
    rgba(255,255,255,0) 72%
  );
  filter: blur(22px);
  opacity: 0;
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
  z-index: 0;
}

.hero-phone img{
  position: relative;
  z-index: 1;
  display: block;
  transition: transform 0.35s ease, filter 0.35s ease;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,0.18));
}

.hero-phone:hover::before{
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.06);
}

.hero-phone:hover img{
  transform: translateY(-8px) scale(1.02) rotate(-1deg);
  filter: drop-shadow(0 26px 38px rgba(0,0,0,0.24));
}


.hero-phone-wrap{
  position: relative;
  overflow: hidden;
}

.hero-phone-wrap::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    rgba(255,255,255,1) 0%,
    rgba(255,255,255,0.9) 25%,
    rgba(255,255,255,0.5) 45%,
    rgba(255,255,255,0) 65%
  );
}

.hero-phone-wrap > *{
  position: relative;
  z-index: 1;
}

/* Tablet */
@media (max-width: 1024px){
  .hero-phone-wrap::before{
    background: linear-gradient(
      360deg,
      rgba(255,255,255,1) 35%,
      rgba(255,255,255,0.9) 45%,
      rgba(255,255,255,0.5) 55%,
      rgba(255,255,255,0) 75%
    );
  }
}

/* Mobile */
@media (max-width: 767px){
  .hero-phone-wrap::before{
    background: linear-gradient(
      360deg,
      rgba(255,255,255,1) 50%,
      rgba(255,255,255,0.9) 60%,
      rgba(255,255,255,0.6) 70%,
      rgba(255,255,255,0) 80%
    );
  }
}

/* TRANSITION ROW */
.benefit-transition-row{
  display: grid !important;
  grid-template-columns: 180px minmax(0, 620px) !important;
  align-items: center !important;
  justify-content: center !important;
  column-gap: 22px !important;
  max-width: 100% !important;
  margin: 60px auto 0 !important;
  padding: 60px 0 0 !important;
  box-sizing: border-box;
}

/* FORCE DIRECT CHILD WIDTHS */
.benefit-transition-row > .e-con,
.benefit-transition-row > .elementor-element,
.benefit-transition-row > div{
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  align-self: center !important;
}

/* PERSON */
.benefit-transition-person{
  width: 180px !important;
  max-width: 180px !important;
  justify-self: center !important;
  align-self: end !important;
  transform: translateY(38px) !important;
}

.benefit-transition-person img{
  width: 100% !important;
  max-width: 180px !important;
  height: auto !important;
  display: block !important;
  transform: scale(1.45) !important;
  transform-origin: bottom center !important;
}

/* CALLOUT */
.benefit-transition-callout{
  width: 100% !important;
  max-width: 620px !important;
  background: #f5f7fa;
  margin: 0 auto 60px !important;
  border: 1px solid rgba(95,127,154,0.4);
  border-radius: 18px;
  padding: 22px 26px;
  box-shadow: 0 8px 20px rgba(36,79,120,0.06);
  position: relative;
}

/* POINTER */
.benefit-transition-callout::before{
  content: "";
  position: absolute;
  left: -9px;
  top: 50%;
  width: 18px;
  height: 18px;
  background: #f5f7fa;
  border-left: 1px solid rgba(95,127,154,0.4);
  border-bottom: 1px solid rgba(95,127,154,0.4);
  transform: translateY(-50%) rotate(45deg);
}

/* EYEBROW */
.benefit-transition-eyebrow,
.benefit-transition-eyebrow .elementor-heading-title,
.benefit-transition-callout h6{
  margin: 0 0 1px 0 !important;
  font-family: "Bricolage Grotesque", sans-serif !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: #305779 !important;
}

/* MAIN TEXT */
.benefit-transition-text,
.benefit-transition-text .elementor-heading-title,
.benefit-transition-callout p{
  margin: 0 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 300 !important;
  font-size: clamp(20px, 2vw, 24px) !important;
  line-height: 1.35 !important;
  color: #2d5b84 !important;
}

/* TABLET */
@media (max-width: 1024px){
  .benefit-transition-row{
    grid-template-columns: 150px minmax(0, 1fr) !important;
    max-width: 100% !important;
    column-gap: 14px !important;
    padding: 60px 80px 0px 40px !important;
  }

  .benefit-transition-person{
    width: 150px !important;
    max-width: 150px !important;
    transform: translateY(60px) !important;
  }

  .benefit-transition-person img{
    max-width: 150px !important;
    transform: scale(1.7) !important;
    transform-origin: bottom center !important;
  }
}

/* MOBILE */

@media (max-width: 767px){
  .benefit-transition-row{
    display: block !important;
    padding: 30px 16px 30px !important;
    margin: 0 auto !important;
  }

  .benefit-transition-row > .e-con-inner{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 18px !important;
  }

  .benefit-transition-person{
    width: 170px !important;
    max-width: 170px !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    align-self: center !important;
    transform: none !important;
    text-align: center !important;
  }

  .benefit-transition-person img{
    width: 170px !important;
    max-width: 170px !important;
    display: block !important;
    margin: 0 auto !important;
    transform: scale(1.15) !important;
    transform-origin: top center !important;
  }

  .benefit-transition-callout{
    width: 100% !important;
    max-width: 320px !important;
    margin: 0 auto !important;
    padding: 20px 20px 20px !important;
    text-align: left !important;
  }

  .benefit-transition-callout::before{
    left: 50% !important;
    top: auto !important;
    bottom: -9px !important;
    transform: translateX(-50%) rotate(-45deg) !important;
  }
}


/* SECTION WRAPPER */
.benefit-salary-loss-section{
  max-width: 980px;
  margin: 0 auto;
  padding: 80px 20px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
  box-sizing: border-box;
}

/* HEADING */
.benefit-salary-loss-heading{
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
}

.benefit-salary-loss-heading .elementor-widget-container{
  width: 100% !important;
  text-align: center !important;
}

.benefit-salary-loss-heading .elementor-heading-title{
  margin: 0 auto !important;
  text-align: center !important;
  font-size: clamp(34px, 4.2vw, 52px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: #2d5b84;
}

/* INTRO TEXT */
.benefit-salary-loss-text{
  width: 100%;
  max-width: 900px;
  text-align: center;
}

.benefit-salary-loss-text p{
  margin: 0 auto;
  max-width: 820px;
  font-size: 18px;
  line-height: 1.65;
  color: #6d7480;
}

.benefit-salary-loss-text p + p{
  margin-top: 14px;
}

/* GRID WRAPPER */
.benefit-salary-loss-grid{
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
}

/* DIRECT CHILDREN OF GRID */
.benefit-salary-loss-grid > .e-con,
.benefit-salary-loss-grid > .elementor-element,
.benefit-salary-loss-grid > div{
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

/* CARD */
.benefit-salary-loss-card{
  width: 100% !important;
  min-height: 130px;
  background: #f5f7fa;
  border: 1px solid rgba(95,127,154,0.18);
  border-radius: 18px;
  padding: 22px 22px 20px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.benefit-salary-loss-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(36,79,120,0.08);
}

/* LABEL */
.benefit-salary-loss-label{
  margin: 0 0 10px 0;
}

.benefit-salary-loss-label .elementor-heading-title,
.benefit-salary-loss-label p{
  margin: 0;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 500;
  color: #7b8794;
}

/* VALUE */
.benefit-salary-loss-value{
  margin: 0;
}

.benefit-salary-loss-value .elementor-heading-title,
.benefit-salary-loss-value p{
  margin: 0;
  font-size: clamp(24px, 2.2vw, 30px);
  line-height: 1.15;
  font-weight: 700;
  color: #2d5b84;
}

/* BOTTOM NOTE */
.benefit-salary-loss-note{
  width: 100% !important;
  max-width: 760px !important;
  margin: 10px auto 0 !important;
  text-align: center !important;
}

.benefit-salary-loss-note .elementor-widget-container{
  text-align: center !important;
}

.benefit-salary-loss-note p,
.benefit-salary-loss-note .elementor-heading-title,
.benefit-salary-loss-note .elementor-text-editor,
.benefit-salary-loss-note .elementor-text-editor p{
  margin: 0 !important;
  font-size: 20px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  color: #2d5b84 !important;
}

/* TABLET */
@media (max-width: 1024px){
  .benefit-salary-loss-section{
    padding: 32px 18px 12px;
    gap: 24px;
  }

  .benefit-salary-loss-text p{
    font-size: 17px;
  }

  .benefit-salary-loss-grid{
    max-width: 100% !important;
  }

  .benefit-salary-loss-card{
    min-height: 120px;
    padding: 20px;
  }
}

/* MOBILE */
@media (max-width: 767px){
  .benefit-salary-loss-section{
    padding: 60px 16px 50px;
    gap: 20px;
  }

  .benefit-salary-loss-grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .benefit-salary-loss-text p,
  .benefit-salary-loss-note p{
    font-size: 16px;
    line-height: 1.55;
  }

  .benefit-salary-loss-card{
    min-height: auto;
    padding: 18px;
  }

  .benefit-salary-loss-value .elementor-heading-title,
  .benefit-salary-loss-value p{
    font-size: 24px;
  }
}


/* HOVER COMPARISON EFFECT */

.hover-red-bold,
.hover-green-bold {
  display: block;
}

.hover-red-bold p,
.hover-green-bold p {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
  transform-origin: left center;
  margin: 0;
}


/* RED */

.hover-red-bold:hover p,
.hover-red-bold.is-linked-hover p {
  background: rgba(192,57,43,0.08);
  color: #C0392B !important;
  font-weight: 700 !important;
  transform: scale(1.05);
}


/* GREEN */

.hover-green-bold:hover p,
.hover-green-bold.is-linked-hover p {
  background: rgba(48,121,119,0.08);
  color: #307977 !important;
  font-weight: 700 !important;
  transform: scale(1.05);
}

/* PRICING ROW */

.benefit-pricing-row{
  display:flex;
  gap:24px;
  align-items:stretch !important;
  padding-left:12px;
  padding-right:12px;
}

/* CARD */

.benefit-plan-card,
.benefit-plan-card.elementor-element,
.benefit-plan-card.elementor-element.e-con,
.benefit-plan-card.elementor-element.e-con-boxed,
.benefit-plan-card.elementor-element.e-flex{
  display:flex !important;
  flex-direction:column !important;
  align-self:stretch !important;
  background:#ffffff;
  border-style:solid !important;
  border-width:1px !important;
  border-color:#e6e9ee !important;
  border-radius:20px;
  overflow:hidden;
  box-sizing:border-box;
  height:100%;
}

.benefit-plan-plus,
.benefit-plan-plus.elementor-element,
.benefit-plan-plus.elementor-element.e-con,
.benefit-plan-plus.elementor-element.e-con-boxed,
.benefit-plan-plus.elementor-element.e-flex{
  border-width:2px !important;
  border-color:#A689A9 !important;
  box-shadow:0 10px 24px rgba(0,0,0,0.06) !important;
}

/* HEADER */

.benefit-plan-header,
.benefit-plan-header.elementor-element,
.benefit-plan-header.e-con,
.benefit-plan-header.e-flex{
  display:flex;
  flex-direction:row;
  justify-content:space-between;
  align-items:center !important;
  gap:16px;
  min-height:120px !important;
  height:120px !important;
  padding:24px;
  box-sizing:border-box !important;
}

.benefit-plan-starter .benefit-plan-header{
  background:#307977;
}

.benefit-plan-plus .benefit-plan-header{
  background:#A689A9;
}

.benefit-plan-expert .benefit-plan-header{
  background:#305779;
}

/* remove Elementor AI backgrounds in header */

.benefit-plan-header .elementor-widget,
.benefit-plan-header .elementor-widget-container,
.benefit-plan-header .elementor-heading-title,
.benefit-plan-header .elementor-widget-text-editor{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

/* header title */

.benefit-plan-header .elementor-heading-title,
.benefit-plan-header h1,
.benefit-plan-header h2,
.benefit-plan-header h3,
.benefit-plan-header h4,
.benefit-plan-header h5,
.benefit-plan-header h6{
  color:#ffffff !important;
  margin:0 !important;
  font-size:24px;
  line-height:1.2;
  font-weight:700;
}

/* BADGE */

.benefit-plan-badge,
.benefit-plan-badge .elementor-widget-container,
.benefit-plan-badge p,
.benefit-plan-badge .elementor-heading-title{
  background:#ffffff !important;
  color:#A689A9 !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:999px !important;
  padding:7px 14px !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  display:inline-block !important;
  white-space:nowrap;
}

/* BODY SPACING */

.benefit-plan-card > .elementor-element:not(.benefit-plan-header){
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
}

.benefit-plan-card .elementor-widget-icon-list{
  margin-bottom:16px;
}

/* INFO RIBBON: OPTIONAL MASTERCARD */

.benefit-plan-note,
.benefit-plan-note .elementor-widget-container,
.benefit-plan-note .elementor-text-editor,
.benefit-plan-note p{
  margin:0 !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  text-align:center !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

/* make the note a full-width ribbon above the button */

.benefit-plan-card .benefit-plan-note{
  width:calc(100% + 48px) !important;
  margin-left:-24px !important;
  margin-right:-24px !important;
  margin-top:auto !important;
  margin-bottom:0 !important;
  padding:14px 18px !important;
  box-sizing:border-box;
}

/* plan-specific ribbon colors */

.benefit-plan-starter .benefit-plan-note,
.benefit-plan-starter .benefit-plan-note .elementor-widget-container,
.benefit-plan-starter .benefit-plan-note p{
  background:#d8e9e8 !important;
  color:#307977 !important;
}

.benefit-plan-plus .benefit-plan-note,
.benefit-plan-plus .benefit-plan-note .elementor-widget-container,
.benefit-plan-plus .benefit-plan-note p{
  background:#eaddea !important;
  color:#8e6d90 !important;
}

.benefit-plan-expert .benefit-plan-note,
.benefit-plan-expert .benefit-plan-note .elementor-widget-container,
.benefit-plan-expert .benefit-plan-note p{
  background:#d9e4ef !important;
  color:#305779 !important;
}

/* BUTTON */

.benefit-plan-button .elementor-button,
.benefit-plan-button a.elementor-button,
a.elementor-button.benefit-plan-button{
  background:#305779 !important;
  color:#ffffff !important;
  border-radius:999px !important;
  padding:14px 28px !important;
  border:none !important;
  box-shadow:none !important;
  transition:transform 0.2s ease, background 0.2s ease, opacity 0.2s ease;
}

.benefit-plan-button .elementor-button:hover,
.benefit-plan-button a.elementor-button:hover,
a.elementor-button.benefit-plan-button:hover{
  background:#264867 !important;
  color:#ffffff !important;
  transform:translateY(-1px);
}

/* keep button at bottom */

.benefit-plan-card .elementor-widget-button{
  margin-top:0 !important;
  padding-top:18px !important;
  padding-bottom:24px !important;
}

/* FORCE OPTIONAL MASTERCARD RIBBON TO FULL CARD WIDTH */

.benefit-plan-card .benefit-plan-note.elementor-element {
  width: calc(100% + 48px) !important;
  max-width: calc(100% + 48px) !important;
  margin-left: -24px !important;
  margin-right: -24px !important;
  align-self: stretch !important;
}

.benefit-plan-card .benefit-plan-note > .elementor-widget-container {
  width: 100% !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  .benefit-pricing-row,
  .benefit-pricing-row.elementor-element,
  .benefit-pricing-row.e-con,
  .benefit-pricing-row.e-flex {
    gap: 8px !important;
    justify-content: flex-start !important;
  }

  .benefit-pricing-row > .elementor-element,
  .benefit-pricing-row > .e-con,
  .benefit-pricing-row > .benefit-plan-card {
    margin: 0 !important;
  }
}



/* =========================
   MOBILE SWIPEABLE
   ========================= */
@media (max-width: 767px) {

  .benefit-pricing-row,
  .benefit-pricing-row.elementor-element,
  .benefit-pricing-row.e-con,
  .benefit-pricing-row.e-flex {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 14px !important;
    padding: 0 28px 10px 0 !important;
    scroll-padding-left: 0 !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    justify-content: flex-start !important;
    align-items: stretch !important;
    scrollbar-width: none;
  }

  .benefit-pricing-row::-webkit-scrollbar {
    display: none;
  }

  /* direct child wrappers become the slides */
  .benefit-pricing-row > .elementor-element,
  .benefit-pricing-row > .e-con,
  .benefit-pricing-row > .benefit-plan-card {
    min-width: 78% !important;
    max-width: 78% !important;
    width: 78% !important;
    flex: 0 0 78% !important;
    scroll-snap-align: start;
  }

  /* card fills its wrapper */
  .benefit-plan-card,
  .benefit-plan-card.elementor-element,
  .benefit-plan-card.e-con,
  .benefit-plan-card.e-flex {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }

  .benefit-plan-header {
    padding: 16px 18px !important;
    min-height: auto !important;
    height: auto !important;
    gap: 10px !important;
  }

  .benefit-plan-header > .benefit-plan-badge {
    transform: none !important;
    margin-right: 0 !important;
  }

  .benefit-plan-note {
    font-size: 13px !important;
    padding: 10px 12px !important;
  }

  .benefit-plan-button .elementor-button,
  .benefit-plan-button a.elementor-button {
    width: 100% !important;
  }
}
/* SECTION WRAPPER */
.benefit-stats-section{
  width: 100%;
}

/* PARENT CONTAINER HOLDING THE 4 CARDS */
.benefit-stats-grid{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
}

/* EACH CARD CONTAINER */
.benefit-stat-card{
  background: #eaf6f4;
  border: 1px solid #afd5cf;
  border-radius: 20px;
  padding: 30px 28px 26px;
  box-sizing: border-box;
  text-align: center;
  min-height: 280px;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.benefit-stat-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.07);
}

/* COUNTER */
.benefit-stat-number,
.benefit-stat-number .elementor-counter-number-wrapper,
.benefit-stat-number .elementor-counter-number-prefix,
.benefit-stat-number .elementor-counter-number,
.benefit-stat-number .elementor-counter-number-suffix{
  font-family: "Inter", sans-serif;
  font-size: 64px;
  font-weight: 700;
  line-height: 1;
  color: #2f8782;
}

/* remove extra spacing Elementor may add */
.benefit-stat-number .elementor-counter{
  margin: 0;
  padding: 0;
}

/* TEXT BOX UNDER NUMBER */
.benefit-stat-textbox{
  margin-top: 14px;
  width: 100%;
}

/* hide image area if using image box without image */
.benefit-stat-textbox .elementor-image-box-img{
  display: none;
}

/* IMAGE BOX INNER WRAPPER */
.benefit-stat-textbox .elementor-image-box-wrapper{
  text-align: center;
}

/* TITLE */
.benefit-stat-textbox .elementor-image-box-title{
  font-family: "Inter", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  color: #1d2340;
  margin-bottom: 8px;
}

/* DESCRIPTION */
.benefit-stat-textbox .elementor-image-box-description{
  font-family: "Inter", sans-serif;
  font-size: 15px;
  line-height: 1.55;
  color: #42526b;
  max-width: 19ch;
  margin: 0 auto;
}

/* DESKTOP LARGE */
@media (min-width: 1200px){
  .benefit-stats-grid{
    gap: 32px;
  }

  .benefit-stat-card{
    max-width: 300px;
    min-height: 280px;
  }
}

/* TABLET */
@media (max-width: 1024px){
  .benefit-stats-grid{
    gap: 22px;
  }

  .benefit-stat-card{
    max-width: 240px;
    min-height: 255px;
    padding: 26px 22px 22px;
    border-radius: 18px;
  }

  .benefit-stat-number,
  .benefit-stat-number .elementor-counter-number-wrapper,
  .benefit-stat-number .elementor-counter-number-prefix,
  .benefit-stat-number .elementor-counter-number,
  .benefit-stat-number .elementor-counter-number-suffix{
    font-size: 52px;
  }

  .benefit-stat-textbox{
    margin-top: 12px;
  }

  .benefit-stat-textbox .elementor-image-box-title{
    font-size: 17px;
    margin-bottom: 8px;
  }

  .benefit-stat-textbox .elementor-image-box-description{
    font-size: 14px;
    line-height: 1.5;
    max-width: 20ch;
  }
}

/* MOBILE */
@media (max-width: 767px){
  .benefit-stats-grid{
    flex-direction: column;
    gap: 16px;
    align-items: center;
  }

  .benefit-stat-card{
    max-width: 100%;
    min-height: auto;
    padding: 24px 18px 20px;
    border-radius: 16px;
  }

  .benefit-stat-number,
  .benefit-stat-number .elementor-counter-number-wrapper,
  .benefit-stat-number .elementor-counter-number-prefix,
  .benefit-stat-number .elementor-counter-number,
  .benefit-stat-number .elementor-counter-number-suffix{
    font-size: 44px;
  }

  .benefit-stat-textbox{
    margin-top: 10px;
  }

  .benefit-stat-textbox .elementor-image-box-title{
    font-size: 18px;
    margin-bottom: 6px;
  }

  .benefit-stat-textbox .elementor-image-box-description{
    font-size: 15px;
    line-height: 1.5;
    max-width: 24ch;
  }
}

/* GRID WRAPPER */
.benefit-solution-grid{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  perspective: 1400px;
}

/* DIRECT CHILD CONTAINERS INSIDE GRID */
.benefit-solution-grid > .e-con,
.benefit-solution-grid > .elementor-element,
.benefit-solution-grid > div{
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
}

/* INDIVIDUAL CARD */
.benefit-solution-card{
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  min-height: 280px;
  width: 100% !important;
  max-width: none !important;
  padding: 28px 24px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  background-color: #183b63;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  isolation: isolate;
  transform-style: preserve-3d;
  transform-origin: center center;
  transition:
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  box-shadow: 0 10px 24px rgba(8, 22, 43, 0.12);
}

/* OVERLAY */
.benefit-solution-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(16, 35, 61, 0.88) 0%,
    rgba(16, 35, 61, 0.72) 45%,
    rgba(16, 35, 61, 0.52) 100%
  );
  z-index: 0;
  transition: opacity 0.45s ease;
}

/* LIGHT SHEEN */
.benefit-solution-card::after{
  content: "";
  position: absolute;
  inset: -20%;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.18) 0%,
    rgba(255,255,255,0.05) 24%,
    rgba(255,255,255,0) 42%,
    rgba(255,255,255,0.08) 62%,
    rgba(255,255,255,0) 78%
  );
  transform: translateX(-22%) translateY(6%) rotate(0deg);
  opacity: 0.38;
  z-index: 0;
  pointer-events: none;
  transition:
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.45s ease;
}

/* CONTENT ABOVE OVERLAY */
.benefit-solution-card > *{
  position: relative;
  z-index: 1;
  transform: translateZ(18px);
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

/* HOVER DEFAULT */
.benefit-solution-grid > .benefit-solution-card:hover,
.benefit-solution-grid > .e-con.benefit-solution-card:hover,
.benefit-solution-grid > .elementor-element.benefit-solution-card:hover,
.benefit-solution-card:hover{
  transform:
    perspective(1200px)
    translateY(-10px)
    rotateX(7deg)
    rotateY(-7deg)
    scale(1.02);
  box-shadow:
    0 24px 44px rgba(8, 22, 43, 0.22),
    0 8px 18px rgba(8, 22, 43, 0.14),
    0 0 0 1px rgba(255,255,255,0.08),
    0 0 28px rgba(79, 172, 255, 0.12);
  filter: saturate(1.08) brightness(1.03);
}

.benefit-solution-card:hover .elementor-heading-title{
  color: #9fdcff;
}

/* ALTERNATING HOVER DIRECTION */
.benefit-solution-grid > .benefit-solution-card:nth-child(even):hover,
.benefit-solution-grid > .e-con.benefit-solution-card:nth-child(even):hover,
.benefit-solution-grid > .elementor-element.benefit-solution-card:nth-child(even):hover,
.benefit-solution-grid > .e-con:nth-child(even).benefit-solution-card:hover,
.benefit-solution-grid > .elementor-element:nth-child(even).benefit-solution-card:hover{
  transform:
    perspective(1200px)
    translateY(-10px)
    rotateX(7deg)
    rotateY(7deg)
    scale(1.02);
}

.benefit-solution-card:nth-child(1){ transition-delay: 0.02s; }
.benefit-solution-card:nth-child(2){ transition-delay: 0.06s; }
.benefit-solution-card:nth-child(3){ transition-delay: 0.10s; }
.benefit-solution-card:nth-child(4){ transition-delay: 0.02s; }
.benefit-solution-card:nth-child(5){ transition-delay: 0.06s; }
.benefit-solution-card:nth-child(6){ transition-delay: 0.10s; }

/* TEXT COMES FORWARD */
.benefit-solution-card:hover > *{
  transform: translateZ(34px);
}

/* OVERLAY CHANGES ON HOVER */
.benefit-solution-card:hover::before{
  opacity: 0.92;
}

.benefit-solution-card:hover::after{
  transform: translateX(10%) translateY(-4%) rotate(2deg);
  opacity: 0.55;
}

/* TITLE */
.benefit-solution-title{
  margin: 0 0 10px 0;
  width: 100%;
}

.benefit-solution-title .elementor-heading-title{
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: clamp(28px, 2.2vw, 38px);
  line-height: 1.05;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  text-shadow: 0 2px 10px rgba(0,0,0,0.22);
}

/* DESCRIPTION */
.benefit-solution-desc{
  width: 100%;
}

.benefit-solution-desc,
.benefit-solution-desc p{
  font-family: "Inter", sans-serif;
  font-size: 18px;
  line-height: 1.5;
  font-weight: 500;
  color: rgba(255,255,255,0.96);
  margin: 0;
  max-width: 24ch;
  text-shadow: 0 1px 8px rgba(0,0,0,0.18);
}

.benefit-solution-desc p:last-child{
  margin-bottom: 0;
}

/* REVEAL */
.reveal-up{
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal-up.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* SHOW INSIDE EDITOR */
.elementor-editor-active .reveal-up,
.elementor-editor-preview .reveal-up,
html.elementor-html .reveal-up,
body.elementor-editor-active .reveal-up{
  opacity: 1 !important;
  transform: none !important;
}

/* TABLET */
@media (max-width: 1024px){
  .benefit-solution-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
    max-width: 900px !important;
  }

  .benefit-solution-card{
    min-height: 240px;
    padding: 24px 20px;
    border-radius: 20px;
  }

  .benefit-solution-title .elementor-heading-title{
    font-size: clamp(24px, 3vw, 32px);
  }

  .benefit-solution-desc,
  .benefit-solution-desc p{
    font-size: 16px;
    max-width: 26ch;
  }
}

/* MOBILE */
@media (max-width: 767px){
  .benefit-solution-grid{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    max-width: 100% !important;
  }

  .benefit-solution-card{
    min-height: 220px;
    padding: 22px 18px;
    border-radius: 18px;
  }

  .benefit-solution-card:hover,
  .benefit-solution-grid > .benefit-solution-card:hover,
  .benefit-solution-grid > .e-con.benefit-solution-card:hover,
  .benefit-solution-grid > .elementor-element.benefit-solution-card:hover{
    transform: translateY(-5px) scale(1.01);
  }

  .benefit-solution-card:hover > *{
    transform: translateZ(12px);
  }

  .benefit-solution-title .elementor-heading-title{
    font-size: 28px;
  }

  .benefit-solution-desc,
  .benefit-solution-desc p{
    font-size: 15px;
    line-height: 1.45;
    max-width: 28ch;
  }
}

/* REDUCED MOTION */
@media (prefers-reduced-motion: reduce){
  .benefit-solution-card,
  .benefit-solution-card::before,
  .benefit-solution-card::after,
  .benefit-solution-card > *,
  .reveal-up{
    transition: none !important;
    transform: none !important;
  }

  .reveal-up{
    opacity: 1 !important;
  }
}

/* PHONE AREA */
.hero-phone-wrap2{
  position: relative;
  overflow: visible;
  min-height: 760px;
}

/* PHONE */
.hero-phone{
  position: relative;
  z-index: 4;
}

/* HTML WIDGET ITSELF */
.hero-bubbles-wrap{
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  overflow: visible !important;
}

/* ELEMENTOR INNER WRAPPER */
.hero-bubbles-wrap .elementor-widget-container{
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible !important;
}

/* BUBBLES LAYER */
.hero-bubbles{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

/* BASE BUBBLE */
.hero-bubble{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 999px;
  box-sizing: border-box;
  padding: 18px;
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: #2f567d;
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow:
    0 16px 34px rgba(10, 30, 50, 0.14),
    inset 0 1px 0 rgba(255,255,255,0.18),
    inset 0 -10px 24px rgba(255,255,255,0.05);
  text-shadow: 0 1px 0 rgba(255,255,255,0.18);
    opacity: 0;
  will-change: transform, opacity;
  animation-fill-mode: forwards;
}

/* BUBBLE POSITIONS */


.bubble-1{
  width: 150px;
  height: 150px;
  top: 260px;
  left: 95px;
  font-size: 22px;
  background: radial-gradient(circle at 30% 30%, rgba(198,235,206,0.95) 0%, rgba(165,214,183,0.80) 74%);
  animation:
    bubbleEnter1 0.9s cubic-bezier(.22,.8,.24,1) 0.2s forwards,
    bubbleFloat1 7s ease-in-out 1.2s infinite;
}

.bubble-2{
  width: 185px;
  height: 185px;
  top: 380px;
  left: -65px;
  font-size: 20px;
  background: radial-gradient(circle at 30% 30%, rgba(228,241,247,0.95) 0%, rgba(181,210,220,0.82) 74%);
  animation:
    bubbleEnter2 1s cubic-bezier(.22,.8,.24,1) 0.35s forwards,
    bubbleFloat2 8s ease-in-out 1.35s infinite;
}

.bubble-3{
  width: 158px;
  height: 158px;
  top: 520px;
  left: 130px;
  background: radial-gradient(
  circle at 30% 30%,
  rgba(235, 220, 238, 0.96) 0%,
  rgba(166, 137, 169, 0.88) 78%
);
  animation:
    bubbleEnter3 1.1s cubic-bezier(.22,.8,.24,1) 0.5s forwards,
    bubbleFloat3 7.2s ease-in-out 1.5s infinite;
}

.hero-phone-wrap2,
.hero-bubbles-wrap,
.hero-bubbles-wrap .elementor-widget-container,
.hero-bubbles{
  overflow: visible !important;
}

@keyframes bubbleEnter1{
  from{
    opacity: 0;
    transform: translateX(90px) scale(0.86);
  }
  to{
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes bubbleEnter2{
  from{
    opacity: 0;
    transform: translateX(110px) scale(0.84);
  }
  to{
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes bubbleEnter3{
  from{
    opacity: 0;
    transform: translateX(130px) scale(0.84);
  }
  to{
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes bubbleFloat1{
  0%   { transform: translate(0, 0) scale(1); }
  25%  { transform: translate(-7px, -9px) scale(1.03); }
  50%  { transform: translate(5px, -16px) scale(0.98); }
  75%  { transform: translate(-6px, -7px) scale(1.02); }
  100% { transform: translate(0, 0) scale(1); }
}

@keyframes bubbleFloat2{
  0%   { transform: translate(0, 0) scale(0.97); }
  25%  { transform: translate(8px, -6px) scale(1.00); }
  50%  { transform: translate(-5px, -14px) scale(0.95); }
  75%  { transform: translate(7px, -5px) scale(1.01); }
  100% { transform: translate(0, 0) scale(0.97); }
}

@keyframes bubbleFloat3{
  0%   { transform: translate(0, 0) scale(1); }
  25%  { transform: translate(-8px, -7px) scale(1.02); }
  50%  { transform: translate(6px, -13px) scale(0.97); }
  75%  { transform: translate(-3px, -8px) scale(1.03); }
  100% { transform: translate(0, 0) scale(1); }
}

/* TABLET */
@media (max-width: 1024px){
  .hero-phone-wrap2{
    min-height: 620px;
  }

  .hero-bubble{
    padding: 14px;
    font-size: 17px;
  }

  .bubble-1{
    width: 128px;
    height: 128px;
    top: 150px;
    left: 0px;
  }

  .bubble-2{
    width: 155px;
    height: 155px;
    top: 300px;
    left: 50px;
  }

  .bubble-3{
    width: 132px;
    height: 132px;
    top: 450px;
    left: -20px;
  }
}

/* MOBILE */
@media (max-width: 767px){
  .hero-bubbles-wrap{
    display: none !important;
  }
}

/* MAIN WRAPPER */
.app-showcase{
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 20px;
  box-sizing: border-box;
}

/* DESKTOP LAYOUT */
.app-showcase > .e-con,
.app-showcase > .elementor-element,
.app-showcase > div{
  box-sizing: border-box;
}

.app-showcase-left,
.app-showcase-right{
  min-width: 0;
}

/* PHONE STAGE */
.phone-stage{
  position: relative;
  width: 100%;
  max-width: 620px !important;
  margin: 0 auto;
}

.phone-stage .screen{
  width: 100% !important;
  max-width: none !important;
  height: auto;
  display: block;
}

/* STACKED SCREENS */
.screen{
  position: absolute;
  inset: 0;
  width: 100%;
  height: auto;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.screen.active{
  position: relative;
  opacity: 1;
  z-index: 2;
}

/* INFO BLOCKS */
.info-block{
  display: none;
}

.info-block.active{
  display: block;
}


/* TABLET */
@media (min-width: 768px) and (max-width: 1024px){

  .app-showcase{
    padding: 40px 24px;
    align-items: center;
    gap: 24px !important;
  }

  .app-showcase-left,
  .app-showcase-right{
    width: auto !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }

  .phone-stage{
    width: 100% !important;
    max-width: 540px !important;
    margin: 0 auto;
  }

  .app-showcase-right{
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }

  .app-showcase-right > *{
    width: 100% !important;
    max-width: none !important;
  }

  .info-block.active{
    width: 100% !important;
    max-width: none !important;
  }
}

/* MOBILE */
@media (max-width: 767px){

  .app-showcase{
    padding: 20px 16px 24px;
    display: flex;
    flex-direction: column;
  }

  .app-showcase-left{
    width: 100% !important;
    max-height: 50vh !important;
    overflow: hidden !important;
    display: block !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }

  .phone-stage{
    width: 92vw !important;
    max-width: 360px !important;
    margin: 0 auto !important;
    position: relative !important;
    top: 0 !important;
    transform: none !important;
  }

  .app-showcase-right{
    flex: 1 1 auto;
    padding-top: 10px;
    display: block;
  }

  .phone-stage .screen.active{
    position: relative !important;
    top: 0 !important;
    display: block !important;
  }
}


/* HOTSPOT BASE */
.phone-stage{
  position: relative !important;
}

/* HOTSPOT GROUP LAYER */
.phone-stage .hotspot-group{
  position: absolute !important;
  inset: 0 !important;
  display: none;
  z-index: 30 !important;
  pointer-events: none;
}

.phone-stage .hotspot-group.active{
  display: block !important;
}

/* INDIVIDUAL HOTSPOTS */
.phone-stage .hotspot-group .app-hotspot{
  position: absolute !important;
  display: block !important;
  z-index: 31 !important;
  pointer-events: auto !important;
  min-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer;
  background: transparent !important;
  border: none !important;
  box-sizing: border-box !important;
}

/* DASHBOARD GROUP */
.group-dashboard .hotspot-dashboard{
  top: 21.5%;
  left: 17%;
  width: 13%;
  height: 7%;
}

.group-dashboard .hotspot-sachbezug{
  top: 21.5%;
  left: 31.8%;
  width: 9.2%;
  height: 4.2%;
}

.group-dashboard .hotspot-lunch{
  top: 21.5%;
  left: 42.8%;
  width: 9.2%;
  height: 4.2%;
}

.group-dashboard .hotspot-flex{
  top: 21.5%;
  left: 53.8%;
  width: 9.2%;
  height: 4.2%;
}

.group-dashboard .hotspot-overview{
  top: 21.5%;
  left: 75.8%;
  width: 9.2%;
  height: 4.2%;
}

/* SACHBEZUG GROUP */
.group-sachbezug .hotspot-dashboard{
  top: 21.5%;
  left: 17.5%;
  width: 9%;
  height: 4.2%;
}

.group-sachbezug .hotspot-sachbezug{
  top: 21.2%;
  left: 28.0%;
  width: 13%;
  height: 7%;
}

.group-sachbezug .hotspot-lunch{
  top: 21.5%;
  left: 42.5%;
  width: 9%;
  height: 4.2%;
}

.group-sachbezug .hotspot-flex{
  top: 21.5%;
  left: 53.5%;
  width: 9%;
  height: 4.2%;
}

.group-sachbezug .hotspot-overview{
  top: 21.5%;
  left: 75.8%;
  width: 9.2%;
  height: 4.2%;
}

/* LUNCH GROUP */
.group-lunch .hotspot-dashboard{
  top: 21.5%;
  left: 17.5%;
  width: 9%;
  height: 4.2%;
}

.group-lunch .hotspot-sachbezug{
  top: 21.5%;
  left: 28.0%;
  width: 9%;
  height: 4.2%;
}

.group-lunch .hotspot-lunch{
  top: 21.2%;
  left: 39.0%;
  width: 13%;
  height: 7%;
}

.group-lunch .hotspot-flex{
  top: 21.5%;
  left: 53.2%;
  width: 9%;
  height: 4.2%;
}

.group-lunch .hotspot-overview{
  top: 21.5%;
  left: 75.8%;
  width: 9.2%;
  height: 4.2%;
}

/* FLEX GROUP */
.group-flex .hotspot-dashboard{
  top: 21.5%;
  left: 17.5%;
  width: 9%;
  height: 4.2%;
}

.group-flex .hotspot-sachbezug{
  top: 21.5%;
  left: 28.0%;
  width: 9%;
  height: 4.2%;
}

.group-flex .hotspot-lunch{
  top: 21.5%;
  left: 39.5%;
  width: 9%;
  height: 4.2%;
}

.group-flex .hotspot-flex{
  top: 21.2%;
  left: 49.5%;
  width: 13%;
  height: 7%;
}

.group-flex .hotspot-overview{
  top: 21.5%;
  left: 75.8%;
  width: 9.2%;
  height: 4.2%;
}

/* OVERVIEW GROUP */
.group-overview .hotspot-dashboard{
  top: 21.5%;
  left: 17.5%;
  width: 9%;
  height: 4.2%;
}

.group-overview .hotspot-sachbezug{
  top: 21.5%;
  left: 28.0%;
  width: 9%;
  height: 4.2%;
}

.group-overview .hotspot-lunch{
  top: 21.5%;
  left: 39.5%;
  width: 9%;
  height: 4.2%;
}

.group-overview .hotspot-flex{
  top: 21.5%;
  left: 49.5%;
  width: 9%;
  height: 4.2%;
}

.group-overview .hotspot-overview{
  top: 21.2%;
  left: 72%;
  width: 13%;
  height: 7%;
}


/* DEBUG HOVER */
.phone-stage .hotspot-group .app-hotspot:hover{
  background: transparent !important;
  border: transparent !important;
}

/* FORCE THE HTML WIDGET TO OVERLAY INSIDE THE PHONE */
.phone-stage > .elementor-widget-html{
  position: absolute !important;
  inset: 0 !important;
  z-index: 30 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

.phone-stage > .elementor-widget-html > .elementor-widget-container{
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* HIDE THE HTML WIDGET'S OWN VISUAL BOX */
.phone-stage > .elementor-widget-html,
.phone-stage > .elementor-widget-html > .elementor-widget-container{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* ================================
   HOTSPOT HELPER
================================ */

.phone-stage{
  position: relative !important;
}

/* active hinted hotspot */
.phone-stage .hotspot-group .app-hotspot.hotspot-hint{
  position: absolute !important;
  overflow: visible !important;
  z-index: 5 !important;
  outline: 2px solid rgba(255,255,255,0.95);
  outline-offset: 2px;
  border-radius: 10px;
}

/* label bubble */
.phone-stage .hotspot-group .app-hotspot.hotspot-hint::before{
  content: "Hier tippen";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 10px;

  background: #ffffff;
  color: #305779;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  padding: 6px 10px;
  border-radius: 999px;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  pointer-events: none;
}

/* triangle arrow */
.phone-stage .hotspot-group .app-hotspot.hotspot-hint::after{
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 2px;

  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #ffffff;
  pointer-events: none;
}

/* overlay positioning */
.phone-stage .hotspot-group.active{
  position: absolute !important;
}

/* overlay only while guide is active */
.phone-stage.show-guide .hotspot-group.active::before{
  content: "";
  position: absolute;
  top: 7.5%;
  left: 11.6%;
  width: 77.8%;
  height: 84.5%;
  background: rgba(60, 68, 78, 0.32);
  border-radius: 24px;
  z-index: 1;
  pointer-events: none;
}

/* pulse element injected by JS */
.phone-stage .hotspot-group .app-hotspot .hotspot-pulse{
  position: absolute;
  inset: -8px;
  border-radius: 14px;
  border: 2px solid rgba(255,255,255,0.6);
  pointer-events: none;
  animation: hotspotPulseRing 1.6s ease-out infinite;
}

@keyframes hotspotPulseRing{
  0%{
    transform: scale(0.95);
    opacity: 0.8;
  }
  100%{
    transform: scale(1.25);
    opacity: 0;
  }
}

/* RIGHT SIDE CONTENT BLOCK */
.info-block{
  display: none;
}

.info-block.active{
  display: block;
}

/* TITLE */
.app-info-title{
  margin: 0 0 24px 0 !important;
  font-family: 'Bricolage Grotesque', sans-serif !important;
  font-size: clamp(36px, 2vw, 62px) !important;
  line-height: 0.98 !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #305779 !important;
}

/* LIST WRAPPER */
.app-info-list{
  margin: 0 !important;
  padding: 0 !important;
}

/* ICON LIST ITEMS */
.app-info-list .elementor-icon-list-items{
  gap: 18px !important;
}

.app-info-list .elementor-icon-list-item{
  align-items: flex-start !important;
  gap: 1px !important;
  padding: 0 !important;
}

/* ICON */
.app-info-list .elementor-icon-list-icon{
  margin-top: 3px !important;
}

.app-info-list .elementor-icon-list-icon i,
.app-info-list .elementor-icon-list-icon svg{
  color: #67b9e6 !important;
  fill: #67b9e6 !important;
  font-size: 26px !important;
}

/* TEXT */
.app-info-list .elementor-icon-list-text{
  font-family: 'Inter', sans-serif !important;
  font-size: clamp(20px, 1.2vw, 34px) !important;
  line-height: 1.55 !important;
  font-weight: 300 !important;
  color: #2d2d2d !important;
}

/* DESKTOP RIGHT SIDE SPACING */
.app-showcase-right{
  display: flex;
  align-items: center;
}

/* TABLET */
@media (min-width: 768px) and (max-width: 1024px){

  .app-info-title{
    margin-bottom: 22px !important;
    font-size: clamp(25px, 1vw, 46px) !important;
  }

  .app-info-list .elementor-icon-list-text{
    font-size: clamp(16px, 1.1vw, 26px) !important;
  }

  .app-info-list .elementor-icon-list-icon i,
  .app-info-list .elementor-icon-list-icon svg{
    font-size: 22px !important;
  }
}

/* MOBILE */
@media (max-width: 767px){

  .app-showcase-right{
    display: block;
  }

  .app-info-title{
    margin: 0 0 18px 0 !important;
    font-size: 22px !important;
    line-height: 1.02 !important;
  }

  .app-info-list .elementor-icon-list-items{
    gap: 14px !important;
  }

  .app-info-list .elementor-icon-list-item{
    gap: 12px !important;
  }

  .app-info-list .elementor-icon-list-icon i,
  .app-info-list .elementor-icon-list-icon svg{
    font-size: 20px !important;
  }

  .app-info-list .elementor-icon-list-text{
    font-size: 15px !important;
    line-height: 1.6 !important;
  }
}

/* CLIENT LOGOS WRAPPER */
.client-logo-marquee{
  overflow: hidden;
  width: 100%;
  position: relative;
}

/* TRACK */
.client-logo-track{
  display: flex;
  align-items: center;
  gap: 60px;
  width: max-content;
  animation: clientLogoScroll 50s linear infinite;
}

/* EACH ITEM */
.client-logo-item{
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* LOGO IMAGE */
.client-logo-item img{
  height: 72px;
  width: auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.85;
  transition: all 0.3s ease;
}

/* HOVER EFFECT */
.client-logo-item:hover img{
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.2);
}

/* PAUSE ON HOVER */
.client-logo-marquee:hover .client-logo-track{
  animation-play-state: paused;
}

/* ANIMATION */
@keyframes clientLogoScroll{
  from{
    transform: translateX(0);
  }
  to{
    transform: translateX(-50%);
  }
}

.client-logo-section{
  padding: 100px 0 120px;
}

.client-logo-section h2{
  text-align: center;
  margin-bottom: 60px;
}

.client-logo-marquee{
  position: relative;
}

.client-logo-marquee::before,
.client-logo-marquee::after{
  content: "";
  position: absolute;
  top: 0;
  width: 120px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.client-logo-marquee::before{
  left: 0;
  background: linear-gradient(to right, #fff, rgba(255,255,255,0));
}

.client-logo-marquee::after{
  right: 0;
  background: linear-gradient(to left, #fff, rgba(255,255,255,0));
}


/* MAIN WRAPPER */
.benefit-bars-diagram{
  width: 100%;
  box-sizing: border-box;
}

/* GROUP */
.benefit-bar-group{
  width: 100%;
  box-sizing: border-box;
}

/* TITLE */
.benefit-bar-group-title{
  margin: 0 0 20px 0 !important;
  text-align: center;
}

/* ROW */
.benefit-bar-row{
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  margin: 0 0 18px 0;
  box-sizing: border-box;
}

/* OUTER BAR TRACK */
.benefit-bar{
  position: relative;
  flex-shrink: 0;
  height: 56px;
  min-height: 56px;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible;
  box-sizing: border-box;
}

.benefit-bar{
  flex: 0 0 auto !important;
  align-self: flex-start !important;
}


/* FILL */
.benefit-bar-fill{
  width: 100%;
  height: 56px;
  min-height: 56px;
  display: flex;
  align-items: center;
  padding: 10px 16px;
  border-radius: 14px;
  box-sizing: border-box;
  overflow: hidden;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 2s cubic-bezier(0.22, 1, 0.36, 1);
}

.benefit-bars-diagram.is-visible .benefit-bar-row:nth-child(2) .benefit-bar-fill{
  transition-delay: 0.1s;
}

.benefit-bars-diagram.is-visible .benefit-bar-row:nth-child(3) .benefit-bar-fill{
  transition-delay: 0.25s;
}

.benefit-bars-diagram.is-visible .benefit-bar-row:nth-child(4) .benefit-bar-fill{
  transition-delay: 0.4s;
}

/* FORCE VISIBLE STATE */
.benefit-bars-diagram.is-visible .benefit-bar-fill{
  transform: scaleX(1) !important;
}

/* COLORS */
.benefit-bar-classic .benefit-bar-fill{
  background-color: #305779 !important;
}

.benefit-bar-net .benefit-bar-fill{
  background-color: #0b8a87 !important;
}

.benefit-bar-pink .benefit-bar-fill{
  background-color: #a689a9 !important;
}

.benefit-bar-green .benefit-bar-fill{
  background-color: #0b8a87 !important;
}

/* AMOUNT */
.benefit-bar-amount{
  margin: 0 !important;
  color: #ffffff !important;
  line-height: 1.1 !important;
  white-space: nowrap;
  position: relative;
  z-index: 2;
}

/* LABEL */
.benefit-bar-label{
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* TABLET */
@media (max-width: 1024px){
  .benefit-bar-row{
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 767px){
  .benefit-bar-w-100{
    width: 100%;
  }

}

@media (max-width: 767px){
  .benefit-bar-content{
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 8px 14px !important;
  }

  .benefit-bar-label-inside,
  .benefit-bar-label-inside p{
    text-align: left !important;
    white-space: normal !important;
    width: 100%;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .benefit-bar-amount,
  .benefit-bar-amount p{
    text-align: left !important;
    margin-left: 0 !important;
    white-space: nowrap !important;
    width: 100%;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  .benefit-bar-fill{
    height: auto !important;
    min-height: 66px !important;
  }

  .benefit-bar{
    height: auto !important;
    min-height: 66px !important;
  }

}

.benefit-bar-group-title,
.benefit-bar-group-title .elementor-heading-title,
.benefit-bar-group-title h2,
.benefit-bar-group-title h3{
  font-family: 'Bricolage Grotesque', sans-serif !important;
  color: #305779 !important;
  font-weight: 600 !important;
  font-size: 32px !important;
  line-height: 1.15 !important;
  text-align: left !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
}

@media (max-width: 1024px){
  .benefit-bar-group-title,
  .benefit-bar-group-title .elementor-heading-title,
  .benefit-bar-group-title h2,
  .benefit-bar-group-title h3{
    font-size: 24px !important;
  }
}

@media (max-width: 767px){
  .benefit-bar-group-title,
  .benefit-bar-group-title .elementor-heading-title,
  .benefit-bar-group-title h2,
  .benefit-bar-group-title h3{
    font-size: 20px !important;
  }
}

.benefit-bar-card{
  background: #f5f7fa;
  border-radius: 20px;
  padding: 28px 28px 24px;
  margin: 0 0 28px 0;
  box-sizing: border-box;
}

/* slightly tighter spacing inside */
.benefit-bar-card .benefit-bar-row{
  margin-bottom: 16px;
}

.benefit-bar-card .benefit-bar-row:last-child{
  margin-bottom: 0;
}

.benefit-bar-card{
  box-shadow: 0 8px 22px rgba(24, 42, 61, 0.02);
}

.benefit-bar-card .benefit-bar-group-title{
  margin-bottom: 22px !important;
}

.benefit-bar-card {
  margin-top: 15px;
}

/* BAR CONTENT LAYOUT */
.benefit-bar-fill{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: 100%;
  box-sizing: border-box;
}

/* LEFT LABEL */
.benefit-bar-label-inside,
.benefit-bar-label-inside p{
  margin: 0 !important;
  color: rgba(255,255,255,0.92) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-align: left !important;
  white-space: nowrap;
  flex: 1 1 auto;
}

/* RIGHT AMOUNT */
.benefit-bar-amount,
.benefit-bar-amount p{
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-align: right !important;
  white-space: nowrap;
  flex: 0 0 auto;
  margin-left: auto !important;
}

/* ========================================
   TYPOGRAPHY SYSTEM
======================================== */


/* PARAGRAPH TEXT */
.cmplz-manage-consent-container,
.cmplz-manage-consent-container span,
#cmplz-manage-consent-container-nojavascript,
.paragraph,
.paragraph p,
.elementor-shortcode p,
.elementor-shortcode li,
.elementor-widget-text-editor.paragraph,
.elementor-widget-text-editor.paragraph p {
  font-family: 'Inter', sans-serif !important;
  font-weight: 300 !important;
  font-size: 22px !important;
  line-height: 1.5 !important;
  letter-spacing: 0.2px !important;
  color: #54595f !important;
  margin: 0 ;
  padding: 0 ;
}

.elementor-shortcode p + p,
.paragraph p + p {
    margin-top: 12px !important;
}

.elementor-shortcode li + li,
.paragraph li + li {
    margin-top: 8px !important;
}
ul + p, ol + p {
    margin-top: 12px !important;
}

/* LISTS */
ul:not(:first-child), ol:not(:first-child) {
    margin-block-start: 8px;
}
ul:not(:last-child), ol:not(:last-child) {
    margin-block-end: 8px;
}

/* HEADING TEXT */
.cmplz-subtitle,
p.cmplz-subtitle {
  font-family: 'Bricolage Grotesque', sans-serif !important;
  color: #305779 !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;}

.bm-sub-titles .elementor-heading-title,
.elementor-widget-heading.bm-sub-titles .elementor-heading-title,
h2.bm-sub-titles,
.bm-sub-titles h2 {
  font-family: 'Bricolage Grotesque', sans-serif !important;
  color: #305779 !important;
  font-weight: 600 !important;
  font-size: 32px !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.bm-sub-titles {
  padding-top: clamp(24px, 3vw, 35px) !important;
}

.cmplz-categories {
    margin-top: 16px !important;
}

/* SPACING BETWEEN WIDGETS */
.elementor-element.paragraph {
  margin-top: clamp(24px, 3vw, 35px) !important;
}

/* TABLET */
@media (max-width: 1024px) {
  .bm-sub-titles .elementor-heading-title,
  .elementor-widget-heading.bm-sub-titles .elementor-heading-title,
  h2.bm-sub-titles,
  .bm-sub-titles h2 {
    font-size: 24px !important;
  }

  .paragraph,
  .paragraph p,
  .elementor-widget-text-editor.paragraph,
  .elementor-widget-text-editor.paragraph p {
    font-size: 16px !important;
  }
}

/* MOBILE */
@media (max-width: 767px) {
  .bm-sub-titles .elementor-heading-title,
  .elementor-widget-heading.bm-sub-titles .elementor-heading-title,
  h2.bm-sub-titles,
  .bm-sub-titles h2 {
    font-size: 20px !important;
  }

  .paragraph,
  .paragraph p,
  .elementor-widget-text-editor.paragraph,
  .elementor-widget-text-editor.paragraph p {
    font-size: 15px !important;
  }
}

/* Always show bars inside Elementor editor */
.elementor-editor-active .benefit-bar-fill{
  transform: scaleX(1) !important;
}



/* ================================
   FAQ WRAPPER
================================ */

.bm-faq,
.bm-faq .e-n-accordion,
.bm-faq .elementor-widget-n-accordion{
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* ================================
   FAQ ITEMS
================================ */

.bm-faq .e-n-accordion-item{
  border: none !important;
  border-top: 1px solid rgba(48, 87, 121, 0.22) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0 !important;
}

.bm-faq .e-n-accordion-item:last-child{
  border-bottom: 1px solid rgba(48, 87, 121, 0.22) !important;
}

/* ================================
   QUESTION ROW
================================ */

.bm-faq summary.e-n-accordion-item-title{
  padding: 28px 0 !important;
  border: none !important;
  background: transparent !important;
  min-height: unset !important;
}

.bm-faq summary.e-n-accordion-item-title .e-n-accordion-item-title-header{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  width: 100% !important;
}

.bm-faq summary.e-n-accordion-item-title .e-n-accordion-item-title-text{
  font-family: "Bricolage Grotesque", sans-serif !important;
  font-weight: 700 !important;
  font-size: 22px !important;
  line-height: 1.3 !important;
  color: #305779 !important;
  flex: 1 1 auto !important;
}

/* ================================
   ANSWER AREA
================================ */

.bm-faq .e-n-accordion-item > [role="region"]{
  padding: 0 0 28px 0 !important;
  border: none !important;
  background: transparent !important;
}

.bm-faq .elementor-widget-text-editor,
.bm-faq .elementor-widget-text-editor p,
.bm-faq .elementor-widget-text-editor li{
  font-family: "Inter", sans-serif !important;
  font-weight: 300 !important;
  font-size: 22px !important;
  line-height: 1.5 !important;
  color: #305779 !important;
}

.bm-faq .elementor-widget-text-editor p{
  margin: 0 0 12px 0 !important;
}

.bm-faq .elementor-widget-text-editor ul,
.bm-faq .elementor-widget-text-editor ol{
  margin: 0 !important;
  padding-left: 22px !important;
}

/* ================================
   ICON
================================ */

.bm-faq .e-n-accordion-item-title-icon{
  margin-left: auto !important;
  flex: 0 0 auto !important;
  color: #000 !important;
  font-size: 28px !important;
}

/* ================================
   TABLET
================================ */

@media (max-width: 1024px){
  .bm-faq summary.e-n-accordion-item-title{
    padding: 22px 0 !important;
  }

  .bm-faq summary.e-n-accordion-item-title .e-n-accordion-item-title-text{
    font-size: 18px !important;
  }

  .bm-faq .e-n-accordion-item > [role="region"]{
    padding: 0 0 22px 0 !important;
  }

  .bm-faq .elementor-widget-text-editor,
  .bm-faq .elementor-widget-text-editor p,
  .bm-faq .elementor-widget-text-editor li{
    font-size: 16px !important;
  }
}

/* ================================
   MOBILE
================================ */

@media (max-width: 767px){
  .bm-faq summary.e-n-accordion-item-title{
    padding: 18px 0 !important;
  }

  .bm-faq summary.e-n-accordion-item-title .e-n-accordion-item-title-text{
    font-size: 17px !important;
  }

  .bm-faq .e-n-accordion-item > [role="region"]{
    padding: 0 0 18px 0 !important;
  }

  .bm-faq .elementor-widget-text-editor,
  .bm-faq .elementor-widget-text-editor p,
  .bm-faq .elementor-widget-text-editor li{
    font-size: 15px !important;
  }
}


.laptop-video{
  position: absolute;
  top: 33%;
  left: 34.2%;
  width: 31.4%;
  height: 39.5%;
  margin: 0 !important;
  z-index: 3;
  overflow: visible;
}

.laptop-video .elementor-widget-container{
  width: 100%;
  height: 100%;
}

.laptop-ripples{
  position: relative;
  width: 100%;
  height: 100%;
}

.laptop-video-el{
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* THIS PART WAS MISSING */
.laptop-ripples span{
  position: absolute;
  inset: 0;
  border: 2px solid rgba(255,255,255,0.95);
  border-radius: 12px;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  animation: rippleWave 4s linear infinite;
}

/* delays */
.laptop-ripples span:nth-child(1){ animation-delay: 0s; }
.laptop-ripples span:nth-child(2){ animation-delay: 0.5s; }
.laptop-ripples span:nth-child(3){ animation-delay: 1s; }
.laptop-ripples span:nth-child(4){ animation-delay: 1.5s; }
.laptop-ripples span:nth-child(5){ animation-delay: 2s; }
.laptop-ripples span:nth-child(6){ animation-delay: 2.5s; }
.laptop-ripples span:nth-child(7){ animation-delay: 3s; }
.laptop-ripples span:nth-child(8){ animation-delay: 3.5s; }

@keyframes rippleWave{
  0%{
    transform: scale(1);
    opacity: 0.2;
  }
  100%{
    transform: scale(1.8);
    opacity: 0;
  }
}

@media (max-width: 767px){
  .laptop-wrap{
    transform: scale(1.6);
    transform-origin: top center;
    
  }
}/* End custom CSS */