.st-anim{display:inline-block;animation-fill-mode:forwards;}
.ulpm-text-anim{display:inline-block;vertical-align:baseline;margin:0;padding:0;line-height:inherit;font-size:inherit;box-sizing:border-box;max-width:100%;animation-fill-mode:forwards;animation-timing-function:linear;}
.ulpm-image-anim{animation-fill-mode:forwards;animation-timing-function:linear;transform-origin:center center;will-change:transform,opacity,filter;}
img.ulpm-image-anim{max-width:100%;height:auto;}
video.ulpm-image-anim{max-width:100%;height:auto;}
.custom-display-card img.ulpm-image-anim,.custom-display-card video.ulpm-image-anim{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:4px;max-height:160px;}
.property-card img.ulpm-image-anim,.property-card video.ulpm-image-anim,.property-card-image.ulpm-image-anim{object-fit:cover;}
.service-card img.ulpm-image-anim,.service-card video.ulpm-image-anim{max-width:100%;height:auto;object-fit:cover;}
@keyframes st-anim-fade-in {0.0%{opacity:0.000;}100.0%{opacity:1.000;}}
@keyframes ulpm-anim-fade-in {0.0%{opacity:0.000;}100.0%{opacity:1.000;}}
@keyframes st-anim-slide-up {0.0%{opacity:0.000;transform:translateY(12.0px);}60.0%{opacity:0.200;transform:translateY(9.6px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-slide-up {0.0%{opacity:0.000;transform:translateY(12.0px);}60.0%{opacity:0.200;transform:translateY(9.6px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-luxury-reveal {0.0%{opacity:0.000;transform:translateY(6.0px);transform:scale(0.960);}50.0%{opacity:0.850;transform:translateY(0.9px);transform:scale(0.994);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes ulpm-anim-luxury-reveal {0.0%{opacity:0.000;transform:translateY(6.0px);transform:scale(0.960);}50.0%{opacity:0.850;transform:translateY(0.9px);transform:scale(0.994);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes st-anim-soft-blur-in {0.0%{opacity:0.000;filter:blur(3.0px);}100.0%{opacity:1.000;filter:blur(0.0px);}}
@keyframes ulpm-anim-soft-blur-in {0.0%{opacity:0.000;filter:blur(3.0px);}100.0%{opacity:1.000;filter:blur(0.0px);}}
@keyframes st-anim-letter-lift {0.0%{opacity:0.000;transform:translateY(8.0px);}40.0%{opacity:0.150;transform:translateY(6.7px);}100.0%{opacity:1.000;transform:translateY(-1.0px);}}
@keyframes ulpm-anim-letter-lift {0.0%{opacity:0.000;transform:translateY(8.0px);}40.0%{opacity:0.150;transform:translateY(6.7px);}100.0%{opacity:1.000;transform:translateY(-1.0px);}}
@keyframes st-anim-gold-accent-sweep {0.0%{opacity:0.650;transform:translateX(-6.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-gold-accent-sweep {0.0%{opacity:0.650;transform:translateX(-6.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-elegant-scale {0.0%{opacity:0.000;transform:scale(0.880);}60.0%{opacity:0.250;transform:scale(0.910);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes ulpm-anim-elegant-scale {0.0%{opacity:0.000;transform:scale(0.880);}60.0%{opacity:0.250;transform:scale(0.910);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes st-anim-staggered-words {0.0%{opacity:0.000;transform:translateY(10.0px);}35.0%{opacity:0.150;transform:translateY(8.5px);}70.0%{opacity:0.600;transform:translateY(4.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-staggered-words {0.0%{opacity:0.000;transform:translateY(10.0px);}35.0%{opacity:0.150;transform:translateY(8.5px);}70.0%{opacity:0.600;transform:translateY(4.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-subtle-zoom-in {0.0%{opacity:0.700;transform:scale(0.940);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes ulpm-anim-subtle-zoom-in {0.0%{opacity:0.700;transform:scale(0.940);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes st-anim-slow-cinematic-rise {0.0%{opacity:0.000;transform:translateY(16.0px);transform:scale(0.970);}40.0%{opacity:0.100;transform:translateY(14.4px);transform:scale(0.973);}80.0%{opacity:0.550;transform:translateY(7.2px);transform:scale(0.986);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes ulpm-anim-slow-cinematic-rise {0.0%{opacity:0.000;transform:translateY(16.0px);transform:scale(0.970);}40.0%{opacity:0.100;transform:translateY(14.4px);transform:scale(0.973);}80.0%{opacity:0.550;transform:translateY(7.2px);transform:scale(0.986);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes st-anim-mask-reveal {0.0%{opacity:0.000;transform:translateY(8.0px);}50.0%{opacity:0.400;transform:translateY(4.8px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-mask-reveal {0.0%{opacity:0.000;transform:translateY(8.0px);}50.0%{opacity:0.400;transform:translateY(4.8px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-soft-glow-reveal {0.0%{opacity:0.400;transform:translateY(4.0px);transform:scale(0.920);}55.0%{opacity:0.520;transform:translateY(3.2px);transform:scale(0.936);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes ulpm-anim-soft-glow-reveal {0.0%{opacity:0.400;transform:translateY(4.0px);transform:scale(0.920);}55.0%{opacity:0.520;transform:translateY(3.2px);transform:scale(0.936);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes st-anim-soft-zoom-in {0.0%{opacity:0.600;transform:scale(0.850);}60.0%{opacity:0.720;transform:scale(0.895);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes ulpm-anim-soft-zoom-in {0.0%{opacity:0.600;transform:scale(0.850);}60.0%{opacity:0.720;transform:scale(0.895);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes st-anim-slow-parallax-rise {0.0%{opacity:0.500;transform:translateY(14.0px);}50.0%{opacity:0.625;transform:translateY(10.5px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-slow-parallax-rise {0.0%{opacity:0.500;transform:translateY(14.0px);}50.0%{opacity:0.625;transform:translateY(10.5px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-luxury-ken-burns {0.0%{opacity:0.850;transform:translateX(0.0px);transform:scale(1.000);}40.0%{opacity:0.872;transform:translateX(0.4px);transform:scale(1.018);}80.0%{opacity:0.955;transform:translateX(2.1px);transform:scale(1.084);}100.0%{opacity:1.000;transform:translateX(3.0px);transform:scale(1.120);}}
@keyframes ulpm-anim-luxury-ken-burns {0.0%{opacity:0.850;transform:translateX(0.0px);transform:scale(1.000);}40.0%{opacity:0.872;transform:translateX(0.4px);transform:scale(1.018);}80.0%{opacity:0.955;transform:translateX(2.1px);transform:scale(1.084);}100.0%{opacity:1.000;transform:translateX(3.0px);transform:scale(1.120);}}
@keyframes st-anim-slide-reveal {0.0%{opacity:0.000;transform:translateX(-18.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-slide-reveal {0.0%{opacity:0.000;transform:translateX(-18.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-blur-to-sharp {0.0%{opacity:0.700;filter:blur(5.0px);}100.0%{opacity:1.000;filter:blur(0.0px);}}
@keyframes ulpm-anim-blur-to-sharp {0.0%{opacity:0.700;filter:blur(5.0px);}100.0%{opacity:1.000;filter:blur(0.0px);}}
@keyframes st-anim-gentle-scale {0.0%{opacity:0.750;transform:scale(0.900);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes ulpm-anim-gentle-scale {0.0%{opacity:0.750;transform:scale(0.900);}100.0%{opacity:1.000;transform:scale(1.000);}}
@keyframes st-anim-mask-sweep {0.0%{opacity:0.000;transform:translateX(-10.0px);}45.0%{opacity:0.200;transform:translateX(-8.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-mask-sweep {0.0%{opacity:0.000;transform:translateX(-10.0px);}45.0%{opacity:0.200;transform:translateX(-8.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-cinematic-drift {0.0%{opacity:0.600;transform:translateX(-6.0px);transform:scale(0.960);}30.0%{opacity:0.640;transform:translateX(-5.2px);transform:scale(0.967);}70.0%{opacity:0.780;transform:translateX(-2.4px);transform:scale(0.992);}100.0%{opacity:1.000;transform:translateX(2.0px);transform:scale(1.030);}}
@keyframes ulpm-anim-cinematic-drift {0.0%{opacity:0.600;transform:translateX(-6.0px);transform:scale(0.960);}30.0%{opacity:0.640;transform:translateX(-5.2px);transform:scale(0.967);}70.0%{opacity:0.780;transform:translateX(-2.4px);transform:scale(0.992);}100.0%{opacity:1.000;transform:translateX(2.0px);transform:scale(1.030);}}
@keyframes st-anim-gallery-reveal {0.0%{opacity:0.000;transform:translateY(6.0px);transform:scale(0.880);}55.0%{opacity:0.350;transform:translateY(3.9px);transform:scale(0.922);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes ulpm-anim-gallery-reveal {0.0%{opacity:0.000;transform:translateY(6.0px);transform:scale(0.880);}55.0%{opacity:0.350;transform:translateY(3.9px);transform:scale(0.922);}100.0%{opacity:1.000;transform:translateY(0.0px);transform:scale(1.000);}}
@keyframes st-anim-typewriting {0.0%{opacity:0.000;transform:translateX(-3.0px);}12.0%{opacity:0.030;transform:translateX(-2.9px);}30.0%{opacity:0.150;transform:translateX(-2.6px);}55.0%{opacity:0.450;transform:translateX(-1.7px);}80.0%{opacity:0.800;transform:translateX(-0.6px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-typewriting {0.0%{opacity:0.000;transform:translateX(-3.0px);}12.0%{opacity:0.030;transform:translateX(-2.9px);}30.0%{opacity:0.150;transform:translateX(-2.6px);}55.0%{opacity:0.450;transform:translateX(-1.7px);}80.0%{opacity:0.800;transform:translateX(-0.6px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-fade-in-left {0.0%{opacity:0.000;transform:translateX(-28.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-fade-in-left {0.0%{opacity:0.000;transform:translateX(-28.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-fade-in-right {0.0%{opacity:0.000;transform:translateX(28.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-fade-in-right {0.0%{opacity:0.000;transform:translateX(28.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-fade-in-up {0.0%{opacity:0.000;transform:translateY(22.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-fade-in-up {0.0%{opacity:0.000;transform:translateY(22.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-fade-in-down {0.0%{opacity:0.000;transform:translateY(-22.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes ulpm-anim-fade-in-down {0.0%{opacity:0.000;transform:translateY(-22.0px);}100.0%{opacity:1.000;transform:translateY(0.0px);}}
@keyframes st-anim-slide-in-left {0.0%{opacity:0.000;transform:translateX(-32.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-slide-in-left {0.0%{opacity:0.000;transform:translateX(-32.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-slide-in-right {0.0%{opacity:0.000;transform:translateX(32.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes ulpm-anim-slide-in-right {0.0%{opacity:0.000;transform:translateX(32.0px);}100.0%{opacity:1.000;transform:translateX(0.0px);}}
@keyframes st-anim-bounce-in {0.0%{opacity:0.000;}25.0%{opacity:0.850;}50.0%{opacity:0.150;}75.0%{opacity:1.000;}100.0%{opacity:1.000;}}
@keyframes ulpm-anim-bounce-in {0.0%{opacity:0.000;}25.0%{opacity:0.850;}50.0%{opacity:0.150;}75.0%{opacity:1.000;}100.0%{opacity:1.000;}}
@keyframes st-anim-swing-reveal {0.0%{opacity:0.000;}20.0%{opacity:0.900;}50.0%{opacity:0.100;}80.0%{opacity:0.950;}100.0%{opacity:1.000;}}
@keyframes ulpm-anim-swing-reveal {0.0%{opacity:0.000;}20.0%{opacity:0.900;}50.0%{opacity:0.100;}80.0%{opacity:0.950;}100.0%{opacity:1.000;}}
@keyframes st-anim-elastic-scale {0.0%{opacity:0.000;}30.0%{opacity:0.700;}60.0%{opacity:0.300;}85.0%{opacity:1.000;}100.0%{opacity:1.000;}}
@keyframes ulpm-anim-elastic-scale {0.0%{opacity:0.000;}30.0%{opacity:0.700;}60.0%{opacity:0.300;}85.0%{opacity:1.000;}100.0%{opacity:1.000;}}
@keyframes st-anim-pop-scale {0.0%{opacity:0.600;}40.0%{opacity:0.940;}70.0%{opacity:0.760;}100.0%{opacity:1.000;}}
@keyframes ulpm-anim-pop-scale {0.0%{opacity:0.600;}40.0%{opacity:0.940;}70.0%{opacity:0.760;}100.0%{opacity:1.000;}}
