/* MG direction-aware CTA surfaces. Typography, layout and button shapes stay native. */
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]){
 --mg-cta-base:#0753f2;--mg-cta-ink:#fff;--mg-cta-fill:#122e55;
 position:relative;isolation:isolate;overflow:hidden;overflow:clip;background:var(--mg-cta-base);color:var(--mg-cta-ink);-webkit-tap-highlight-color:transparent;touch-action:manipulation;
 transition:transform 180ms cubic-bezier(.22,1,.36,1),box-shadow 180ms ease,border-color 180ms ease;
}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-outline,.button.button-white,.app-btn.secondary,.signin-register> :is(a,[data-mg-tag="a"])){--mg-cta-base:#fff;--mg-cta-ink:#122e55;--mg-cta-fill:#d9e7ff}
body.mg-site :is(body.experience-site.quality-2026,body) .app-btn.danger{--mg-cta-base:#b73246;--mg-cta-fill:#842436}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.dark-cta,.home-partner-banner,.selection-band) .button-primary{--mg-cta-fill:#2267ff}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::before{
 content:'';position:absolute;inset:0;z-index:-2;pointer-events:none;border-radius:inherit;background:var(--mg-cta-fill);transform:var(--mg-cta-fill-transform,translate3d(0,104%,0));transition:transform var(--mg-cta-fill-duration,345ms) cubic-bezier(.22,1,.36,1);backface-visibility:hidden;
}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::after{
 content:'';position:absolute;z-index:-1;pointer-events:none;left:0;top:0;width:var(--mg-cta-wave-size,1px);height:var(--mg-cta-wave-size,1px);border-radius:50%;background:var(--mg-cta-fill);opacity:var(--mg-cta-wave-opacity,0);transform:translate3d(var(--mg-cta-wave-x,-999px),var(--mg-cta-wave-y,-999px),0) translate(-50%,-50%) scale(var(--mg-cta-wave-scale,0));transform-origin:center;transition:transform var(--mg-cta-wave-duration,220ms) cubic-bezier(.22,1,.36,1);backface-visibility:hidden;
}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):is(:hover,:focus-visible){background:var(--mg-cta-base);color:var(--mg-cta-ink);transform:none}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):focus-visible{outline:3px solid #80b1ff;outline-offset:4px}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):focus-visible::before{transform:translate3d(0,0,0)}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):is(:active,[data-mg-cta-pressed=true]):not(:disabled):not([aria-disabled=true]){transform:translate3d(0,1px,0) scale(.992)}
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):is(:disabled,[aria-disabled=true])::before,
body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):is(:disabled,[aria-disabled=true])::after{opacity:0;transition:none}
@media(hover:hover) and (pointer:fine){html:not([data-mg-cta-motion=ready]) :is(.button.button-primary,.button.button-outline,.button.button-white,.app-btn.primary,.app-btn.secondary,.app-btn.danger,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):hover::before{transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){
 body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]),body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::before,body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::after{transition:none!important}
 body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit]):is(:active,[data-mg-cta-pressed=true]){transform:none!important}
 body.mg-site :is(body.experience-site.quality-2026,body) :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::after{display:none}
}
@media(forced-colors:active){body.mg-site :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::before,body.mg-site :is(.button,.app-btn,.signin-register> :is(a,[data-mg-tag="a"]),.mg-form-cta,.mg-native-form:not(.footer-city-form) .elementor-button[type=submit],.mg-project-form .elementor-button[type=submit])::after{display:none}}
