.elementor-156 .elementor-element.elementor-element-d0e3eb7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-animated-headline .elementor-headline-plain-text{color:var( --e-global-color-secondary );}.elementor-widget-animated-headline .elementor-headline{font-family:var( --e-global-typography-primary-font-family ), playfair;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );font-style:var( --e-global-typography-primary-font-style );}.elementor-widget-animated-headline{--dynamic-text-color:var( --e-global-color-secondary );}.elementor-widget-animated-headline .elementor-headline-dynamic-text{font-family:var( --e-global-typography-primary-font-family ), playfair;font-weight:var( --e-global-typography-primary-font-weight );font-style:var( --e-global-typography-primary-font-style );}.elementor-widget-animated-headline .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-accent );}.elementor-156 .elementor-element.elementor-element-5358359{--iteration-count:infinite;--animation-duration:1200ms;}.elementor-156 .elementor-element.elementor-element-5358359 .elementor-headline{text-align:center;font-family:var( --e-global-typography-bfbddb4-font-family ), playfair;font-size:var( --e-global-typography-bfbddb4-font-size );font-weight:var( --e-global-typography-bfbddb4-font-weight );font-style:var( --e-global-typography-bfbddb4-font-style );}.elementor-156 .elementor-element.elementor-element-5358359 .elementor-headline-dynamic-wrapper path{stroke:var( --e-global-color-text );stroke-width:6px;}.elementor-156 .elementor-element.elementor-element-b157fd2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:1px 1px;--row-gap:1px;--column-gap:1px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-156 .elementor-element.elementor-element-7047aac{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-156 .elementor-element.elementor-element-7147d50{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-animated-headline .elementor-headline{font-size:var( --e-global-typography-primary-font-size );}.elementor-156 .elementor-element.elementor-element-5358359 .elementor-headline{font-size:var( --e-global-typography-bfbddb4-font-size );}}@media(max-width:767px){.elementor-widget-animated-headline .elementor-headline{font-size:var( --e-global-typography-primary-font-size );}.elementor-156 .elementor-element.elementor-element-5358359 .elementor-headline{font-size:var( --e-global-typography-bfbddb4-font-size );}}/* Start custom CSS *//* =========================
   OPULENT ORBIT, COMPLETE PAGE CSS
   Uses ring rotation.
   Items are positioned with rotate + translate.
   Bubbles stay upright by counter rotating the bubble content.
   Pause on hover, scale on hover.
   ========================= */

/* ORBIT WRAP */
.orbit-wrap{
  position: relative !important;
  width: 1000px !important;
  height: 1000px !important;
  margin: 0 auto !important;
  overflow: visible !important;
  display: block !important;

  --radius: 180px; /* 👈 PULLS BUBBLES CLOSE TO LOGO */
  --speed: 160s;
}

/* ORBIT RING ROTATES */
.orbit-ring{
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;

  display: block !important;
  flex: none !important;

  transform-origin: 50% 50% !important;
  animation: orbitSpin var(--speed) linear infinite !important;
}

/* ORBIT ITEM BASE */
.orbit-ring .orbit-item{
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;

  width: 280px !important;
  height: 280px !important;

  margin-left: -140px !important;
  margin-top: -140px !important;

  border-radius: 50% !important;
  transform-origin: 50% 50% !important;

  right: auto !important;
  bottom: auto !important;

  z-index: 1 !important;
}

/* POSITION AROUND CIRCLE */
.orbit-ring .orbit-item1{ transform: rotate(0deg) translate(var(--radius)) rotate(0deg) !important; }
.orbit-ring .orbit-item2{ transform: rotate(51.4286deg) translate(var(--radius)) rotate(-51.4286deg) !important; }
.orbit-ring .orbit-item3{ transform: rotate(102.8572deg) translate(var(--radius)) rotate(-102.8572deg) !important; }
.orbit-ring .orbit-item4{ transform: rotate(154.2858deg) translate(var(--radius)) rotate(-154.2858deg) !important; }
.orbit-ring .orbit-item5{ transform: rotate(205.7144deg) translate(var(--radius)) rotate(-205.7144deg) !important; }
.orbit-ring .orbit-item6{ transform: rotate(257.143deg) translate(var(--radius)) rotate(-257.143deg) !important; }
.orbit-ring .orbit-item7{ transform: rotate(308.5716deg) translate(var(--radius)) rotate(-308.5716deg) !important; }

/* UPRIGHT FIX */
.orbit-ring .orbit-item > *{
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;

  transform-origin: 50% 50% !important;
  animation: counterSpin var(--speed) linear infinite !important;

  backface-visibility: hidden !important;
  will-change: transform !important;

  scale: 1;
  transition: scale 0.35s cubic-bezier(.4,0,.2,1) !important;
}

/* IMAGE FIT */
.orbit-ring .orbit-item img,
.orbit-ring .orbit-item .elementor-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
}

/* HOVER PAUSE */
.orbit-wrap:hover .orbit-ring{
  animation-play-state: paused !important;
}
.orbit-wrap:hover .orbit-item > *{
  animation-play-state: paused !important;
}

/* HOVER SCALE */
.orbit-ring .orbit-item:hover{
  z-index: 50 !important;
}
.orbit-ring .orbit-item:hover > *{
  scale: 1.08;
}

/* ANIMATIONS */
@keyframes orbitSpin{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}

/* COUNTER ROTATE */
@keyframes counterSpin{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}

/* MOBILE */
@media (max-width: 1024px){
  .orbit-wrap{
    width: 420px !important;
    height: 420px !important;
    --radius: 120px;
  }

  .orbit-ring{
    animation: none !important;
  }

  .orbit-ring .orbit-item{
    width: 120px !important;
    height: 120px !important;
    margin-left: -60px !important;
    margin-top: -60px !important;
  }

  .orbit-ring .orbit-item > *{
    animation: none !important;
  }
}
/* =========================
   OPULENT SERVICE TIERS
   Parent = services-row
   Children = tier-card + tier-foundation / tier-executive / tier-elite
   ========================= */

/* Parent layout */
.services-row{
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 60px !important;
  width: 100% !important;
}

/* Child card alignment */
.services-row .tier-card{
  flex: 1 1 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;

  transition: transform 300ms ease !important;
  will-change: transform !important;
}

/* Hover lift */
.services-row .tier-card:hover{
  transform: scale(1.03) !important;
}

/* Make Elite slightly emphasized */
.services-row .tier-elite{
  transform: scale(1.02) !important;
}
.services-row .tier-elite:hover{
  transform: scale(1.05) !important;
}

/* Tablet and mobile stack */
@media (max-width: 1024px){
  .services-row{
    flex-direction: column !important;
    align-items: center !important;
    gap: 80px !important;
  }

  .services-row .tier-card{
    width: min(520px, 100%) !important;
  }

  .services-row .tier-elite{
    transform: none !important;
  }
}/* End custom CSS */