:root{--motion-gold: #c9a86a;--motion-gold-light: #e4c98f;--motion-dark: #0b1220;--motion-ease: cubic-bezier(.22, 1, .36, 1);--motion-duration: .65s}html{scroll-behavior:smooth;scroll-padding-top:90px}*,*:before,*:after{box-sizing:border-box}img{display:block;max-width:100%}@keyframes estateRevealUp{0%{opacity:0;transform:translate3d(0,36px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes estateRevealLeft{0%{opacity:0;transform:translate3d(-28px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes estateRevealRight{0%{opacity:0;transform:translate3d(28px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes estateRevealScale{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes estateFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes estateGlow{0%,to{box-shadow:0 0 #c9a86a00}50%{box-shadow:0 0 24px #c9a86a2e}}@keyframes estateShimmer{0%{transform:translate(-160%) skew(-20deg)}to{transform:translate(260%) skew(-20deg)}}@keyframes estateWhatsAppPulse{0%{box-shadow:0 0 #25d36659}70%{box-shadow:0 0 0 12px #25d36600}to{box-shadow:0 0 #25d36600}}.reveal-on-scroll{opacity:0;transform:translate3d(0,28px,0);transition:opacity var(--motion-duration) var(--motion-ease),transform var(--motion-duration) var(--motion-ease);will-change:opacity,transform}.reveal-on-scroll.reveal-left{transform:translate3d(-28px,0,0)}.reveal-on-scroll.reveal-right{transform:translate3d(28px,0,0)}.reveal-on-scroll.reveal-scale{transform:scale(.96)}.reveal-on-scroll.is-visible{opacity:1;transform:none;will-change:auto}.reveal-on-scroll:nth-child(2){transition-delay:80ms}.reveal-on-scroll:nth-child(3){transition-delay:.15s}.reveal-on-scroll:nth-child(4){transition-delay:.22s}.reveal-on-scroll:nth-child(5){transition-delay:.29s}.reveal-on-scroll:nth-child(6){transition-delay:.36s}.hero-content{animation:estateRevealUp .85s var(--motion-ease) both}.hero-property-card{animation:estateRevealRight .95s var(--motion-ease) .15s both;transition:box-shadow .35s ease,border-color .35s ease}.hero-card-image img{transition:transform .85s var(--motion-ease)}.hero-property-card:hover .hero-card-image img{transform:scale(1.045)}.hero-property-card:hover{box-shadow:0 24px 65px #0000003d}.hero-badge{animation:estateRevealUp .7s var(--motion-ease) both,estateGlow 3.5s ease-in-out 1s infinite}.primary-btn,.secondary-btn,.outline-btn,.property-btn,.agent-btn,.whatsapp-cta{position:relative;transition:transform .28s var(--motion-ease),box-shadow .28s ease,background-color .28s ease,border-color .28s ease,color .28s ease}.primary-btn,.agent-btn{overflow:hidden;isolation:isolate}.primary-btn:after,.agent-btn:after{content:"";position:absolute;inset:0 auto 0 -40%;width:30%;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(255,255,255,.23),transparent);transform:skew(-20deg)}.primary-btn:hover:after,.agent-btn:hover:after{animation:estateShimmer .75s ease}@media (hover: hover) and (pointer: fine){.primary-btn:hover,.secondary-btn:hover,.outline-btn:hover,.property-btn:hover,.agent-btn:hover{transform:translateY(-3px)}}.property-card,.service-card,.category-card{transition:transform .42s var(--motion-ease),box-shadow .42s ease,border-color .42s ease}.property-image img,.service-image img,.category-card img{transition:transform .75s var(--motion-ease)}@media (hover: hover) and (pointer: fine){.property-card:hover,.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 48px #0b12201f;border-color:#c9a86a73}.category-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px #0b122029}.property-card:hover .property-image img,.service-card:hover .service-image img,.category-card:hover img{transform:scale(1.055)}}.property-filters button,.nav-menu a,.footer-column a,.social-links a{transition:color .25s ease,background-color .25s ease,border-color .25s ease}.property-filters button:hover{border-color:var(--motion-gold)}.property-btn i,.category-arrow,.service-content button i{transition:transform .28s var(--motion-ease)}@media (hover: hover) and (pointer: fine){.property-btn:hover i,.service-content button:hover i{transform:translate(4px)}.category-card:hover .category-arrow{transform:translate(3px)}.social-links a:hover{transform:translateY(-3px)}}.about-image-card{transition:transform .45s var(--motion-ease),box-shadow .45s ease}.experience-card{animation:estateFloat 5s ease-in-out infinite}.floating-whatsapp,.mobile-whatsapp{animation:estateWhatsAppPulse 2.8s infinite;transition:transform .25s ease}@media (hover: hover) and (pointer: fine){.floating-whatsapp:hover,.mobile-whatsapp:hover{transform:translateY(-3px) scale(1.04);animation-play-state:paused}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--motion-gold);outline-offset:4px}@media (max-width: 900px){html{scroll-padding-top:76px}.hero-content{animation-duration:.65s}.hero-property-card{animation:estateRevealUp .75s var(--motion-ease) both}.reveal-on-scroll{transition-duration:.5s}}@media (max-width: 600px){html{scroll-padding-top:68px}.reveal-on-scroll,.reveal-on-scroll.reveal-left,.reveal-on-scroll.reveal-right{transform:translate3d(0,16px,0);transition-duration:.42s}.reveal-on-scroll.reveal-scale{transform:scale(.985)}.reveal-on-scroll.is-visible{transform:none}.hero-badge{animation:estateRevealUp .5s ease both}.experience-card{animation-duration:6s}.floating-whatsapp,.mobile-whatsapp{animation-duration:3.5s}.property-card:hover,.service-card:hover,.category-card:hover,.about-image-card:hover{transform:none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal-on-scroll{opacity:1!important;transform:none!important}}.property-card,.service-card,.category-card,.hero-property-card,.about-image-card,.primary-btn,.secondary-btn,.outline-btn,.property-btn,.agent-btn,.social-links a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (hover: hover) and (pointer: fine){.property-card,.service-card,.category-card,.hero-property-card,.about-image-card{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}.property-card:hover,.service-card:hover{transform:translateY(-8px);box-shadow:0 22px 48px #0b122024;border-color:#c9a86a8c}.category-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px #0b122033}.hero-property-card:hover{transform:translateY(-5px);box-shadow:0 28px 65px #00000047}.about-image-card:hover{transform:perspective(1000px) rotateY(-2deg) translateY(-5px)}.property-image img,.service-image img,.category-card img,.hero-card-image img{transition:transform .6s cubic-bezier(.2,.8,.2,1)}.property-card:hover .property-image img,.service-card:hover .service-image img,.category-card:hover img,.hero-property-card:hover .hero-card-image img{transform:scale(1.06)}.primary-btn:hover,.secondary-btn:hover,.outline-btn:hover,.property-btn:hover,.agent-btn:hover{transform:translateY(-3px)}.nav-menu a:hover{color:var(--primary)}.social-links a:hover{transform:translateY(-3px)}}@media (hover: none),(pointer: coarse){.property-card,.service-card,.category-card,.hero-property-card,.about-image-card,.primary-btn,.secondary-btn,.outline-btn,.property-btn,.agent-btn{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.property-card:active,.service-card:active,.category-card:active,.hero-property-card:active{transform:scale(.985);box-shadow:0 10px 24px #0b12201f}.primary-btn:active,.secondary-btn:active,.outline-btn:active,.property-btn:active,.agent-btn:active{transform:scale(.97)}.property-card:active .property-image img,.service-card:active .service-image img,.category-card:active img{transform:scale(1.035)}.property-card:hover,.service-card:hover,.category-card:hover,.hero-property-card:hover,.about-image-card:hover{transform:none}}.property-card:focus-within,.service-card:focus-within,.category-card:focus-within{outline:2px solid var(--primary);outline-offset:3px}@media (max-width: 600px){.property-card:hover,.service-card:hover,.category-card:hover{box-shadow:none}.property-card:active,.service-card:active,.category-card:active{transform:scale(.99)}}@media (prefers-reduced-motion: reduce){.property-card,.service-card,.category-card,.hero-property-card,.about-image-card,.primary-btn,.secondary-btn,.outline-btn,.property-btn,.agent-btn{transition:none!important;animation:none!important}}.phone-wrapper{position:fixed;right:24px;bottom:100px;z-index:1000;display:flex;flex-direction:column;align-items:center;gap:12px}.floating-phone{position:relative;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:linear-gradient(145deg,#e4c98f,#b68b42);color:#0b1220;font-size:23px;cursor:pointer;box-shadow:0 8px 24px #0003,0 0 #c9a86a59;animation:phoneGlow 3s ease-out infinite;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,background .3s ease;-webkit-tap-highlight-color:transparent}.floating-phone:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(201,168,106,.55);border-radius:50%;opacity:0;pointer-events:none;animation:phoneRing 3s ease-out infinite}.floating-phone i{display:inline-block;transform-origin:center;animation:phoneRinging 2.8s ease-in-out infinite}@media (hover: hover) and (pointer: fine){.floating-phone:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 14px 32px #0000003d,0 0 22px #c9a86a4d}.floating-phone:hover i{animation-duration:.65s}.floating-phone:hover:before{animation-duration:1.4s}}@media (hover: none),(pointer: coarse){.floating-phone:active{transform:scale(.92)}.floating-phone:active i{animation:none;transform:scale(.92)}}.phone-contact{display:flex;align-items:center;gap:12px;min-height:46px;padding:12px 14px;border:1px solid transparent;border-radius:10px;color:#fff;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease;animation:phoneContactIn .35s ease both}.phone-contact:nth-child(2){animation-delay:70ms}.phone-contact i{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;background:#c9a86a24;color:#e4c98f;transition:background .22s ease,color .22s ease}@media (hover: hover) and (pointer: fine){.phone-contact:hover{background:#c9a86a1a;border-color:#c9a86a40;color:#e4c98f;transform:translate(-3px)}.phone-contact:hover i{background:#c9a86a;color:#0b1220}}.phone-contact:active{transform:scale(.97)}@keyframes phoneRinging{0%,72%,to{transform:rotate(0)}76%{transform:rotate(-14deg)}80%{transform:rotate(14deg)}84%{transform:rotate(-10deg)}88%{transform:rotate(10deg)}92%{transform:rotate(0)}}@keyframes phoneGlow{0%,to{box-shadow:0 8px 24px #0003,0 0 #c9a86a40}50%{box-shadow:0 8px 24px #0003,0 0 0 8px #c9a86a00}}@keyframes phoneRing{0%{transform:scale(.92);opacity:.55}75%,to{transform:scale(1.28);opacity:0}}@keyframes phonePopupIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes phoneContactIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.whatsapp-wrapper{position:fixed;right:24px;bottom:24px;z-index:1001}@media (max-width: 768px){.phone-wrapper{right:18px;bottom:94px}.whatsapp-wrapper{right:18px;bottom:18px}.floating-phone{width:54px;height:54px;font-size:21px}.phone-menu{min-width:215px}}@media (max-width: 380px){.phone-wrapper{right:14px;bottom:84px}.whatsapp-wrapper{right:14px;bottom:14px}.floating-phone{width:49px;height:49px;font-size:19px}.phone-menu{min-width:200px;padding:7px}.phone-contact{padding:10px;font-size:13px}}@media (prefers-reduced-motion: reduce){.floating-phone,.floating-phone:before,.floating-phone i,.phone-menu,.phone-contact{animation:none!important;transition:none!important}}.scroll-to-top{position:fixed;right:28px;bottom:165px;z-index:9997;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:linear-gradient(135deg,#ead39b,#c9a86a);color:#080e1a;font-size:20px;cursor:pointer;box-shadow:0 8px 24px #00000038;animation:scrollTopAppear .3s ease;transition:transform .3s ease,box-shadow .3s ease}.scroll-to-top:hover{transform:translateY(-5px);box-shadow:0 12px 28px #c9a86a59}.scroll-to-top:active{transform:scale(.92)}@keyframes scrollTopAppear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.scroll-to-top{right:18px;bottom:155px;width:44px;height:44px;font-size:18px}}@media (prefers-reduced-motion: reduce){.scroll-to-top{animation:none;transition:none}}.nav-menu a{position:relative;cursor:pointer;transition:color .3s ease}.nav-menu a.active{color:#c9a86a}.nav-menu a:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:#c9a86a;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.nav-menu a.active:after{transform:scaleX(1)}.page-section{scroll-margin-top:100px}
