.elementor-4553 .elementor-element.elementor-element-5cc348f{--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;--justify-content:center;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:220px;--padding-bottom:70px;--padding-left:10px;--padding-right:10px;}.elementor-4553 .elementor-element.elementor-element-dd40b96{--display:flex;--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4553 .elementor-element.elementor-element-dd40b96.e-con{--align-self:flex-end;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-4553 .elementor-element.elementor-element-00e87e1 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-4553 .elementor-element.elementor-element-00e87e1{text-align:center;}.elementor-4553 .elementor-element.elementor-element-00e87e1 .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:60px;font-weight:500;line-height:72px;letter-spacing:-1.28px;color:#FFFFFF;}.elementor-4553 .elementor-element.elementor-element-d4e57de{--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;--margin-top:0px;--margin-bottom:60px;--margin-left:0px;--margin-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4553 .elementor-element.elementor-element-d90f935{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;line-height:28px;color:var( --e-global-color-017fb7e );}body.elementor-page-4553:not(.elementor-motion-effects-element-type-background), body.elementor-page-4553 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#02010100;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-4553 .elementor-element.elementor-element-00e87e1 .elementor-heading-title{font-size:50px;line-height:60px;}.elementor-4553 .elementor-element.elementor-element-d4e57de{--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-4553 .elementor-element.elementor-element-5cc348f{--content-width:1220px;}.elementor-4553 .elementor-element.elementor-element-d4e57de{--content-width:977px;}}@media(max-width:767px){.elementor-4553 .elementor-element.elementor-element-5cc348f{--min-height:0vh;--padding-top:180px;--padding-bottom:60px;--padding-left:47px;--padding-right:47px;}.elementor-4553 .elementor-element.elementor-element-00e87e1 .elementor-heading-title{font-size:36px;line-height:44px;letter-spacing:-0.865px;}.elementor-4553 .elementor-element.elementor-element-d4e57de{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:24px;--padding-left:47px;--padding-right:47px;}.elementor-4553 .elementor-element.elementor-element-d90f935{font-size:18px;}}/* Start custom CSS for container, class: .elementor-element-5cc348f */.elementor-4553 .elementor-element.elementor-element-5cc348f .elementor-background-video-container {
  transform: scaleX(-1);
  object-fit: cover;
}/* End custom CSS */
/* Start custom CSS */.content a {
    color: #fff !important;
}

.bgglass{
    backdrop-filter: blur(7px);
}

elementor-widget-text-editor p:last-child, .textwidget p:last-child { margin-bottom:0px;}


.wavy-glass-btn {
 backdrop-filter: blur(1px);
 border-radius: 100px
}


.wavy-glass-btn .elementor-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 22px 60px;          /* adjust to taste */
  border-radius: 100px;
  background: transparent !important;  /* let our layers show */
  border: none !important;
  overflow: visible;
  isolation: isolate;
  z-index: 0;
}

/* 2) Inner glass layer */
.wavy-glass-btn .elementor-button::before {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: inherit;
  background: rgba(10,12,12,.20);
  /*backdrop-filter: blur(10px) saturate(115%);*/
  /*-webkit-backdrop-filter: blur(10px) saturate(115%);*/

   /*Wavy distortion (works in Chromium/Firefox) */
  filter: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg'>\
  <filter id='wobble'>\
    <feTurbulence type='fractalNoise' baseFrequency='0.008 0.02' numOctaves='2' seed='7' result='n'/>\
    <feDisplacementMap in='SourceGraphic' in2='n' scale='6' xChannelSelector='R' yChannelSelector='G'/>\
  </filter>\
</svg>#wobble");

  /* If a browser ignores the filter above, the rest still looks like glass */
  /*box-shadow:*/
  /*  inset 0 1px 1px rgba(255,255,255,.35),*/
  /*  inset 0 -16px 40px rgba(0,0,0,.55),*/
  /*  inset 0 0 0 1px rgba(255,255,255,.06);*/
  /*z-index: -1;*/
}

/* 3) Chrome-like rim/border */
.wavy-glass-btn .elementor-button::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;
  background:
    radial-gradient(120% 220% at 30% 20%, #ffffffa8, #ffffff10 40%, transparent 60%) border-box,
    conic-gradient(from 30deg,
      transparent, #ffffff22 25%, #ffffffaa 28%, #ffffff22 33%,
      transparent 60%, #ffffff22 70%, #ffffff66 75%, #ffffff22 80%, transparent 100%) border-box;
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0) padding-box;
  mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0) padding-box;
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  z-index: -2;
}

/* 4) Optional hover/active micro-interactions */
/*.wavy-glass-btn .elementor-button:hover { transform: scale(1.02); }*/
/*.wavy-glass-btn .elementor-button:active { transform: scale(.985); }*/

/* 5) Make sure the label stays white (Elementor themes sometimes override) */
.wavy-glass-btn .elementor-button .elementor-button-text { color:#fff !important; }


/* ===== 3-image video-like body background (Elementor safe) ===== */
:root{
  --bg1: url("https://pmxhealth.com/wp-content/uploads/2025/09/1.png");
  --bg2: url("https://pmxhealth.com/wp-content/uploads/2025/09/2.png");
  --bg3: url("https://pmxhealth.com/wp-content/uploads/2025/09/3.png");

  --slide: 3000ms;                 /* Figma: 3000ms per change */
  --cycle: calc(var(--slide) * 3); /* full loop */

  /* Fit/position controls (tweak these if needed) */
  --fit: cover;                    /* cover | contain */
  --pos: center center;            /* e.g., 50% 40% for top bias */

  /* Zoom OFF (set both to 1). To re-enable, try 1.02 → 1.08 */
  --zoom-from: 1;
  --zoom-to:   1;
}

/* Dark fallback so PNG transparency never shows white */
html, body { background:#000; }

/* Three fixed layers behind everything */
html::before,
body::before,
body::after{
  content:"";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;

  background-image: none;          /* set per-layer below */
  background-repeat: no-repeat;
  background-position: var(--pos);
  background-size: var(--fit);

  opacity: 0;
  will-change: opacity, transform;
  animation-iteration-count: infinite;
  animation-timing-function: linear, linear; /* for both animations */
  animation-fill-mode: both;
  animation-duration: var(--cycle), var(--slide);   /* fade, pan */
}

/* Layer 1 */
html::before{
  background-image: var(--bg1);
  animation-name: xfade1, pan1;
  animation-delay: 0ms, 0ms;
    z-index: -2; 
}

/* Layer 2 */
body::before{
  background-image: var(--bg2);
  animation-name: xfade2, pan2;
  animation-delay: 0ms, calc(-1 * var(--slide));
  z-index: -2;
}

/* Layer 3 */
body::after{
  background-image: var(--bg3);
  animation-name: xfade3, pan3;
  animation-delay: 0ms, calc(-2 * var(--slide));
  z-index: -2;
}

/* --- Crossfades (no gap at the loop seam) --- */
@keyframes xfade1{
  0%      {opacity:1}
  30%     {opacity:1}
  33.333% {opacity:0}  /* fade out to slide 2 */
  96%     {opacity:0}
  100%    {opacity:1}  /* fade in before loop wraps -> no pause */
}
@keyframes xfade2{
  0%      {opacity:0}
  33.333% {opacity:1}
  63%     {opacity:1}
  66.666% {opacity:0}  /* fade out to slide 3 */
  100%    {opacity:0}
}
@keyframes xfade3{
  0%      {opacity:0}
  66.666% {opacity:1}
  96%     {opacity:1}
  100%    {opacity:0}  /* fade out while slide 1 fades in */
}

/* --- Pan/zoom (currently OFF because zoom-from/to = 1) --- */
@keyframes pan1{
  0%   { transform: scale(var(--zoom-from)) translate3d(0,  0, 0); }
  100% { transform: scale(var(--zoom-to))   translate3d(0,  0, 0); }
}
@keyframes pan2{
  0%   { transform: scale(var(--zoom-from)) translate3d(0,  0, 0); }
  100% { transform: scale(var(--zoom-to))   translate3d(0,  0, 0); }
}
@keyframes pan3{
  0%   { transform: scale(var(--zoom-from)) translate3d(0,  0, 0); }
  100% { transform: scale(var(--zoom-to))   translate3d(0,  0, 0); }
}

/* iOS/Safari stability */
html::before, body::before, body::after{ transform: translateZ(0); }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  html::before, body::before, body::after{ animation: none; opacity:1; 
      
  }
}/* End custom CSS */