/*
 * IpoTeco v3.5.0 | AllmaDesign Custom
 * Motion layer for the REAL Elementor section classes in parts/*.html.
 * Deliberately limited to the Ipoteco landing page and its WP theme chrome.
 * Content and Elementor widget settings remain fully editable.
 */

/* Ambient backgrounds: a moving visual texture, not additional bitmap assets. */
@keyframes ipxAurora {
  0%,100% {background-position:0% 35%, 100% 50%, 50% 50%}
  50% {background-position:100% 65%, 0% 15%, 50% 50%}
}
@keyframes ipxAmbientOrb {
  0%,100% {translate:0 0;scale:1;opacity:.55}
  50% {translate:-25px -14px;scale:1.13;opacity:.9}
}
@keyframes ipxSoftFloat {
  0%,100% {translate:0 0}
  50% {translate:0 -6px}
}
@keyframes ipxGlowPulse {
  0%,100% {box-shadow:0 6px 20px rgba(6,128,79,.10),0 0 0 0 rgba(5,159,92,0)}
  50% {box-shadow:0 14px 30px rgba(6,128,79,.17),0 0 0 7px rgba(5,159,92,.10)}
}
@keyframes ipxConnector {
  0%,100% {translate:0 0;opacity:.55}
  50% {translate:5px 0;opacity:1}
}
@keyframes ipxIconAura {
  0%,100% {scale:.92;opacity:.18}
  50% {scale:1.16;opacity:.58}
}
@keyframes ipxPhotoBreath {
  from {scale:1.005}
  to {scale:1.045}
}
@keyframes ipxReveal {
  from {opacity:0;translate:0 19px}
  to {opacity:1;translate:0 0}
}
@keyframes ipxStarGlimmer {
  0%,100% {text-shadow:0 0 0 rgba(255,172,0,0)}
  55% {text-shadow:0 0 10px rgba(255,172,0,.22)}
}
@keyframes ipxGiftPulse {
  0%,100% {translate:0 0;scale:1}
  50% {translate:0 -3px;scale:1.04}
}

/* Animates only after scroll intersection. Nothing is invisible without JS. */
.ipo-app .ipx-in-view {
  animation:ipxReveal .7s cubic-bezier(.18,.75,.28,1) both;
  animation-delay:var(--ipx-reveal-delay,0ms);
}
.ipo-app [data-ipx-section],
.ipo-app .ipo-con {min-width:0}
.ipo-app .ipo-eyebrow {transition:box-shadow .35s ease,background-color .35s ease,translate .35s ease}
.ipo-app .ipo-eyebrow:hover {translate:0 -2px;box-shadow:0 7px 19px rgba(6,127,76,.13)}
.ipo-app .ipo-btn .ipo-button:focus-visible,
.ipo-app .ipo-nav-link .ipo-button:focus-visible,
.ipo-app .ipo-review-arrow:focus-visible,
.ipo-app .ipo-made-by-link:focus-visible,
.ipo-default-header a:focus-visible,
.ipo-default-footer a:focus-visible {
  outline:3px solid #009d65!important;outline-offset:3px;
}

/* Buttons and interactive navigation */
.ipo-app .ipo-btn .ipo-button {
  background-size:190% 190%;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-position .38s ease,box-shadow .3s ease!important;
}
.ipo-app .ipo-btn-primary .ipo-button {
  animation:ipxGlowPulse 4.4s ease-in-out infinite;
}
.ipo-app .ipo-btn .ipo-button:hover,
.ipo-app .ipo-btn .ipo-button:focus-visible {
  transform:translateY(-3px)!important;
  background-position:100% 50%;
  box-shadow:0 17px 28px rgba(5,92,65,.22)!important;
}
.ipo-app .ipo-btn .ipo-button:active {transform:translateY(0) scale(.98)!important}
.ipo-app .ipo-button-icon svg {transition:translate .3s cubic-bezier(.2,.8,.2,1),scale .3s ease}
.ipo-app .ipo-button:hover .ipo-button-icon svg,
.ipo-app .ipo-button:focus-visible .ipo-button-icon svg {translate:4px 0;scale:1.1}
.ipo-app .ipo-nav-link .ipo-button:hover {color:#009a58;background:rgba(9,158,93,.055);border-radius:8px}
.ipo-app .ipo-search:hover,.ipo-app .ipo-mobile-toggle:hover {background:#e5f7ed;box-shadow:0 0 0 5px rgba(8,157,91,.08)}

/* HERO: slowly drifting pastel light and subtly living imagery. */
.ipo-app .ipo-hero {
  background-image:
    radial-gradient(ellipse at 16% 40%,rgba(103,204,169,.20) 0%,transparent 53%),
    radial-gradient(ellipse at 68% 35%,rgba(119,191,255,.16) 0%,transparent 52%),
    linear-gradient(105deg,#effaf7 0%,#f9fcff 57%,#f3fcfa 100%);
  background-size:140% 160%,145% 145%,100% 100%;
  animation:ipxAurora 17s ease-in-out infinite;
}
.ipo-app .ipo-hero-photo img {
  animation:ipxPhotoBreath 18s ease-in-out infinite alternate;
  transform-origin:54% 50%;
}
.ipo-app .ipo-hero-card {
  animation:ipxGlowPulse 5.2s ease-in-out infinite;
  transition:translate .35s ease,box-shadow .35s ease!important;
}
/* Use individual translate, preserving tablet/phone transform:scale(...) rules. */
.ipo-app .ipo-hero-card:hover {translate:0 -5px;box-shadow:0 17px 32px rgba(31,73,110,.24)}
.ipo-app .ipo-benefit-icon {transition:translate .3s ease,scale .3s ease,color .3s ease}
.ipo-app .ipo-benefit:hover .ipo-benefit-icon {translate:0 -4px;scale:1.12;color:#02a966}
.ipo-app .ipo-hero-handnote {animation:ipxSoftFloat 6.4s ease-in-out infinite}

/* SERVICE CARDS: correct selector is .ipo-service-card, not .ipo-service. */
.ipo-app .ipo-services {position:relative;isolation:isolate}
.ipo-app .ipo-services::before {
  content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse at 18% 50%,rgba(8,169,103,.075),transparent 56%),
             radial-gradient(ellipse at 80% 20%,rgba(40,120,217,.06),transparent 60%);
  background-size:145% 145%;animation:ipxAurora 20s ease-in-out infinite;
  pointer-events:none;z-index:0;
}
.ipo-app .ipo-service-card {
  isolation:isolate;z-index:1;
  transform:translate3d(0,0,0);
  box-shadow:0 7px 22px rgba(19,49,75,.075);
  transition:transform .42s cubic-bezier(.2,.78,.21,1),box-shadow .42s ease,border-color .35s ease!important;
}
.ipo-app .ipo-service-card::before {
  content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;
  background:radial-gradient(210px circle at var(--ipx-pointer-x,50%) var(--ipx-pointer-y,30%),rgba(255,255,255,.75),transparent 72%);
  opacity:0;transition:opacity .35s ease;
}
.ipo-app .ipo-service-card:hover,
.ipo-app .ipo-service-card:focus-within {
  transform:translateY(-7px) scale(1.012);
  z-index:3;border-color:rgba(9,149,91,.27);
  box-shadow:0 19px 38px rgba(16,70,70,.17),0 0 0 1px rgba(5,156,88,.06);
}
.ipo-app .ipo-card-referrals:hover {border-color:rgba(35,91,210,.25)}
.ipo-app .ipo-card-resources:hover {border-color:rgba(224,150,0,.3)}
.ipo-app .ipo-service-card:hover::before,
.ipo-app .ipo-service-card:focus-within::before {opacity:.55}
.ipo-app .ipo-service-icon {
  transition:translate .35s ease,scale .35s ease,box-shadow .35s ease!important;
}
.ipo-app .ipo-service-icon::after {
  content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid rgba(6,163,97,.2);
  animation:ipxIconAura 3.6s ease-in-out infinite;pointer-events:none;
}
.ipo-app .ipo-service-card:hover .ipo-service-icon {translate:0 -5px;scale:1.1;box-shadow:0 10px 22px rgba(8,128,91,.17)}
.ipo-app .ipo-service-card:hover .ipo-service-photo {translate:0 -4px}
.ipo-app .ipo-service-photo {transition:translate .45s ease}
.ipo-app .ipo-bullet {transition:translate .25s ease}
.ipo-app .ipo-bullet:hover {translate:4px 0}
.ipo-app .ipo-check {transition:scale .25s ease;color:#009b58}
.ipo-app .ipo-bullet:hover .ipo-check {scale:1.18}

/* PROCESS: visible dynamics for the four actual .ipo-step cards. */
.ipo-app .ipo-process {
  isolation:isolate;
  background-image:
    radial-gradient(ellipse at 22% 18%,rgba(102,222,159,.24),transparent 50%),
    radial-gradient(ellipse at 81% 73%,rgba(125,198,255,.23),transparent 54%),
    linear-gradient(115deg,#f0fcf5,#f7fcff 55%,#e9f9f1);
  background-size:150% 180%,165% 165%,100% 100%;
  animation:ipxAurora 12s ease-in-out infinite;
}
.ipo-app .ipo-process::before {
  content:"";position:absolute;z-index:0;width:300px;height:300px;right:-100px;top:-105px;
  background:radial-gradient(circle,rgba(24,178,127,.20),rgba(122,208,190,.045) 49%,transparent 72%);
  filter:blur(7px);border-radius:50%;pointer-events:none;
  animation:ipxAmbientOrb 8s ease-in-out infinite;
}
.ipo-app .ipo-process::after {
  content:"";position:absolute;z-index:0;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(3,139,86,.14) .8px,transparent .9px);
  background-size:22px 22px;opacity:.35;
  mask-image:linear-gradient(90deg,transparent 16%,#000 50%,transparent 96%);
}
.ipo-app .ipo-process-heading,
.ipo-app .ipo-process-steps {position:relative;z-index:2}
.ipo-app .ipo-process-steps {overflow:visible!important}
.ipo-app .ipo-step {
  isolation:isolate;
  z-index:1;
  background:linear-gradient(155deg,rgba(255,255,255,.97),rgba(248,254,251,.97));
  border:1px solid rgba(11,140,92,.13);
  box-shadow:0 9px 20px rgba(16,74,66,.085),inset 0 1px 0 #fff;
  transform:perspective(720px) translateY(0);
  transition:transform .32s cubic-bezier(.18,.76,.24,1),box-shadow .32s ease,border-color .32s ease,background-color .3s ease!important;
}
.ipo-app .ipo-step::before {
  content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;
  background:
    radial-gradient(185px circle at var(--ipx-pointer-x,50%) var(--ipx-pointer-y,38%),rgba(31,215,137,.24),transparent 75%),
    linear-gradient(115deg,transparent 38%,rgba(255,255,255,.34) 52%,transparent 66%);
  background-size:100% 100%,240% 100%;
  background-position:center,100% 50%;opacity:0;
  transition:opacity .32s ease,background-position .55s ease;
}
.ipo-app .ipo-step:hover,
.ipo-app .ipo-step:focus-within {
  z-index:5;border-color:rgba(4,162,101,.47);
  transform:perspective(720px) translateY(-8px) rotateX(var(--ipx-tilt-x,0deg)) rotateY(var(--ipx-tilt-y,0deg));
  box-shadow:0 22px 40px rgba(11,103,78,.2),0 0 0 1px rgba(5,156,88,.13);
}
.ipo-app .ipo-step:hover::before,.ipo-app .ipo-step:focus-within::before {opacity:1;background-position:center,0% 50%}
.ipo-app .ipo-step-title,.ipo-app .ipo-step-desc {position:absolute;z-index:2}
.ipo-app .ipo-step-number {
  z-index:4;
  box-shadow:0 6px 16px rgba(0,136,76,.22);
  animation:ipxGlowPulse 3.5s ease-in-out infinite;
  transition:scale .32s ease,translate .32s ease,background .32s ease;
}
.ipo-app .ipo-step:nth-child(2) .ipo-step-number {animation-delay:.7s}
.ipo-app .ipo-step:nth-child(3) .ipo-step-number {animation-delay:1.4s}
.ipo-app .ipo-step:nth-child(4) .ipo-step-number {animation-delay:2.1s}
.ipo-app .ipo-step-icon {
  z-index:4;
  box-shadow:0 8px 20px rgba(27,75,113,.11);
  transition:translate .34s cubic-bezier(.2,.78,.21,1),scale .34s ease,background .34s ease,box-shadow .34s ease!important;
}
.ipo-app .ipo-step-icon::before {
  content:"";position:absolute;inset:-7px;border:1px solid rgba(8,158,93,.2);border-radius:50%;pointer-events:none;
  animation:ipxIconAura 3s ease-in-out infinite;
}
.ipo-app .ipo-step:nth-child(2) .ipo-step-icon::before {animation-delay:.55s}
.ipo-app .ipo-step:nth-child(3) .ipo-step-icon::before {animation-delay:1.1s}
.ipo-app .ipo-step:nth-child(4) .ipo-step-icon::before {animation-delay:1.65s}
.ipo-app .ipo-step:hover .ipo-step-icon {
  translate:0 -7px;scale:1.11;
  background:linear-gradient(145deg,#e8fff1,#e3f7ff);
  box-shadow:0 13px 25px rgba(5,133,91,.2);
}
.ipo-app .ipo-step:hover .ipo-step-number {scale:1.09;translate:0 -3px;background:linear-gradient(145deg,#08c475,#078746)}
.ipo-app .ipo-step::after {
  animation:ipxConnector 2s ease-in-out infinite;
}
.ipo-app .ipo-step:nth-child(2)::after {animation-delay:.5s}
.ipo-app .ipo-step:nth-child(3)::after {animation-delay:1s}
.ipo-app .ipo-step:hover::after {animation-play-state:paused;opacity:1}
.ipo-app .ipo-process-handnote {animation:ipxSoftFloat 5.5s ease-in-out infinite}

/* REFERRAL: alive background, reward and decorative lines. */
.ipo-app .ipo-referral {
  isolation:isolate;
  background-image:
    radial-gradient(ellipse at 66% 28%,rgba(255,204,120,.19),transparent 48%),
    radial-gradient(ellipse at 18% 82%,rgba(6,178,113,.1),transparent 52%),
    linear-gradient(115deg,#fff7e8,#fffaf2 54%,#f3f7ea);
  background-size:130% 140%,130% 140%,100% 100%;
  animation:ipxAurora 15s ease-in-out infinite;
}
.ipo-app .ipo-referral::before {
  content:"";position:absolute;z-index:0;top:-58px;right:16%;width:210px;height:210px;border-radius:50%;
  border:1px solid rgba(7,149,89,.18);box-shadow:0 0 0 34px rgba(13,164,101,.035),0 0 0 68px rgba(13,164,101,.025);
  animation:ipxAmbientOrb 8s ease-in-out infinite;pointer-events:none;
}
.ipo-app .ipo-referral-reward {
  animation:ipxSoftFloat 4.5s ease-in-out infinite;
  transition:box-shadow .3s ease,filter .3s ease,scale .3s ease!important;
}
.ipo-app .ipo-referral-reward:hover {
  transform:rotate(-10deg)!important;scale:1.055;
  box-shadow:0 20px 38px rgba(172,126,60,.27)!important;
}
.ipo-app .ipo-reward-icon {animation:ipxGiftPulse 3.5s ease-in-out infinite}
.ipo-app .ipo-referral-handnote {animation:ipxSoftFloat 6s ease-in-out infinite}
.ipo-app .ipo-referral-photo img {animation:ipxPhotoBreath 17s ease-in-out infinite alternate}
.ipo-app .ipo-text-link .ipo-button:hover {color:#008b56;translate:3px 0}

/* REVIEWS: gradient surface and genuinely reactive testimonial cards. */
.ipo-app .ipo-testimonials {position:relative;isolation:isolate}
.ipo-app .ipo-testimonials::before {
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 75% 28%,rgba(82,157,221,.095),transparent 53%),
             radial-gradient(ellipse at 16% 75%,rgba(54,182,120,.09),transparent 60%);
  background-size:140% 140%;animation:ipxAurora 17s ease-in-out infinite;
}
.ipo-app .ipo-testimonials > * {position:relative;z-index:1}
.ipo-app .ipo-review-card {
  isolation:isolate;
  transition:translate .34s ease,box-shadow .34s ease,border-color .34s ease!important;
}
.ipo-app .ipo-review-card::before {
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(170px circle at var(--ipx-pointer-x,50%) var(--ipx-pointer-y,50%),rgba(12,164,106,.085),transparent 73%);
  opacity:0;transition:opacity .3s ease;
}
.ipo-app .ipo-review-card:hover {translate:0 -6px;border-color:rgba(8,142,92,.28);box-shadow:0 16px 27px rgba(17,67,92,.16)}
.ipo-app .ipo-review-card:hover::before {opacity:1}
.ipo-app .ipo-stars {animation:ipxStarGlimmer 4.2s ease-in-out infinite}
.ipo-app .ipo-review-arrow {
  transition:translate .25s ease,background .25s ease,box-shadow .25s ease,color .25s ease!important;
}
.ipo-app .ipo-review-arrow:hover,
.ipo-app .ipo-review-arrow:focus-visible {translate:0 -3px;background:#e5f8ed;color:#007b49;box-shadow:0 9px 16px rgba(7,118,77,.17)}

/* FAQ: ensure answers grow and active panels feel interactive. */
.ipo-app .ipo-faq {position:relative;isolation:isolate}
.ipo-app .ipo-faq::before {
  content:"";position:absolute;inset:-10%;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 45% 50%,rgba(12,156,109,.058),transparent 55%);
  background-size:130% 130%;animation:ipxAurora 18s ease-in-out infinite;
}
.ipo-app .ipo-faq > * {position:relative;z-index:1}
.ipo-app .ipo-faq-item {
  transition:translate .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease!important;
}
.ipo-app .ipo-faq-item:hover,
.ipo-app .ipo-faq-item:focus-within {translate:0 -2px;border-color:rgba(6,151,92,.25);box-shadow:0 10px 20px rgba(11,80,72,.11)}
.ipo-app .ipo-faq-item:has(.ipo-tab-title[aria-expanded="true"]) {
  border-color:rgba(3,154,89,.34);background:linear-gradient(145deg,#ffffff,#f3fff7);
  box-shadow:0 12px 24px rgba(14,112,77,.12);
}
.ipo-app .ipo-faq-item .ipo-tab-title[aria-expanded="true"] + .ipo-tab-content {
  animation:ipxReveal .32s ease-out both;
}
.ipo-app .ipo-faq-item .ipo-tab-title .ipo-toggle-icon {
  transition:color .25s ease,rotate .25s ease,scale .25s ease;
}
.ipo-app .ipo-faq-item:hover .ipo-toggle-icon {color:#059354;scale:1.15}
/* JS swaps + to minus; don't rotate the minus itself out of alignment. */
.ipo-app .ipo-tab-title[aria-expanded="true"] .ipo-toggle-icon {transform:translateY(-50%) rotate(0)!important;color:#039659}
.ipo-app .ipo-faq-contact {
  transition:translate .32s ease,box-shadow .32s ease,border-color .32s ease!important;
  background:linear-gradient(120deg,#e5f7ed,#f4fffa,#dff7eb);
  background-size:180% 180%;animation:ipxAurora 10s ease-in-out infinite;
}
.ipo-app .ipo-faq-contact:hover {translate:0 -5px;box-shadow:0 18px 28px rgba(12,125,83,.15)}
.ipo-app .ipo-faq-contact-icon {animation:ipxSoftFloat 4s ease-in-out infinite}

/* FOOTER and default page chrome: visual polish across the site. */
.ipo-app .ipo-footer {
  position:relative;height:auto!important;min-height:128px;
  background-image:radial-gradient(ellipse at 16% 28%,rgba(66,184,138,.1),transparent 50%),
    radial-gradient(ellipse at 86% 73%,rgba(72,143,218,.13),transparent 54%),
    linear-gradient(125deg,#eff8fa,#f5f9ff);
  background-size:150% 180%,150% 160%,100% 100%;
  animation:ipxAurora 18s ease-in-out infinite;
}
.ipo-app .ipo-footer-inner {padding-bottom:18px}
.ipo-app .ipo-footer-social .ipo-social-row {display:flex!important;gap:5px;flex-wrap:nowrap;margin-top:2px}
.ipo-app .ipo-social-icon {width:28px;height:28px;flex:0 0 28px}
.ipo-app .ipo-social-icon .ipo-icon-wrapper {width:28px;height:28px;border-radius:10px;transition:translate .26s ease,scale .26s ease,box-shadow .26s ease}
.ipo-app .ipo-social-icon .ipo-icon svg {width:15px!important;height:15px!important}
.ipo-app .ipo-social-icon .ipo-icon-wrapper:hover {translate:0 -4px;scale:1.05;box-shadow:0 11px 18px rgba(16,64,92,.2)}
.ipo-app .ipo-copyright {white-space:normal;font-size:8px;line-height:1.45;margin-top:5px!important}
.ipo-app .ipo-made-by {margin-top:3px;padding:6px 9px;border-radius:10px}
.ipo-app .ipo-footer-links a {transition:color .22s ease,padding-left .22s ease}
.ipo-app .ipo-footer-links a:hover {padding-left:3px}
.ipo-default-header,.ipo-default-footer {
  background:linear-gradient(120deg,#ecfaf4,#f2f9ff,#e8f9f0);
  background-size:200% 200%;animation:ipxAurora 17s ease-in-out infinite;
}
.ipo-standard-content a {transition:color .2s ease,text-decoration-color .2s ease}
.ipo-standard-content a:hover {color:#05a561}

@media(max-width:850px){
  .ipo-app .ipo-social-icon {width:42px;height:42px;flex:0 0 42px}
  .ipo-app .ipo-social-icon .ipo-icon-wrapper {width:42px;height:42px;border-radius:14px}
  .ipo-app .ipo-social-icon .ipo-icon svg {width:19px!important;height:19px!important}
  .ipo-app .ipo-footer-social .ipo-social-row {gap:10px}
  .ipo-app .ipo-step:hover {transform:translateY(-6px)}
  .ipo-app .ipo-referral-reward:hover {transform:scale(.8) rotate(-10deg)!important;scale:1.02}
}
@media(max-width:620px){
  .ipo-app .ipo-process {background-size:200% 190%,185% 180%,100% 100%}
  .ipo-app .ipo-process::before {right:-160px;top:-70px;opacity:.5}
  .ipo-app .ipo-step:hover {transform:translateY(-5px)}
  .ipo-app .ipo-referral-reward:hover {transform:scale(.76) rotate(-10deg)!important;scale:1.02}
  .ipo-app .ipo-service-card:hover {transform:translateY(-4px)}
  .ipo-app .ipo-social-icon {width:40px;height:40px;flex-basis:40px}
  .ipo-app .ipo-social-icon .ipo-icon-wrapper {width:40px;height:40px}
}
@media(hover:none),(pointer:coarse){
  .ipo-app .ipo-step,.ipo-app .ipo-service-card,.ipo-app .ipo-review-card {transform:none}
  .ipo-app .ipo-step:active {box-shadow:0 17px 30px rgba(10,130,87,.15);border-color:rgba(3,149,91,.29)}
}
@media(prefers-reduced-motion:reduce){
  html:focus-within {scroll-behavior:auto}
  .ipo-app,.ipo-app *, .ipo-app *::before,.ipo-app *::after,
  .ipo-default-header,.ipo-default-footer {
    animation:none!important;transition:none!important;
  }
  .ipo-app .ipo-step:hover,.ipo-app .ipo-service-card:hover,
  .ipo-app .ipo-service-card:focus-within,.ipo-app .ipo-btn .ipo-button:hover,
  .ipo-app .ipo-review-card:hover {transform:none!important;translate:none!important;scale:none!important}
}

/* Keep pre-existing responsive transforms for the hero counter intact on hover. */
@media (min-width:621px) and (max-width:850px) {
  .ipo-app .ipo-hero-card:hover {transform:scale(.86)}
}
@media (min-width:481px) and (max-width:620px) {
  .ipo-app .ipo-hero-card:hover {transform:scale(.74)}
}
@media (max-width:480px) {
  .ipo-app .ipo-hero-card:hover {transform:scale(.87)}
}
/* In Elementor edit mode, editing overlays must not move with the motion layer. */
.elementor-editor-active .ipo-app,
.elementor-editor-active .ipo-app *,
.elementor-editor-active .ipo-app *::before,
.elementor-editor-active .ipo-app *::after {animation:none!important;transition:none!important}
.elementor-editor-active .ipo-app .ipo-step:hover,
.elementor-editor-active .ipo-app .ipo-service-card:hover,
.elementor-editor-active .ipo-app .ipo-review-card:hover,
.elementor-editor-active .ipo-app .ipo-btn .ipo-button:hover {
  transform:none!important;translate:none!important;scale:none!important;
}

/* The mobile dropdown must be able to extend past its Elementor header widget. */
.ipo-app[data-ipx-section="header"] {position:relative;z-index:35;overflow:visible!important}
.ipo-app .ipo-header {
  background-image:radial-gradient(ellipse at 8% 50%,rgba(23,170,116,.08),transparent 50%),
    linear-gradient(115deg,#ffffff,#f7fcff,#ffffff);
  background-size:160% 140%,150% 150%;
  animation:ipxAurora 19s ease-in-out infinite;
}
