/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Cursor personalizado */
.custom-cursor {
    position: fixed;
    top: 0;
    left: 0;
    width: 10px;              
    height: 10px;
    border-radius: 50%;
    background: #f5f5f5; 
    pointer-events: none;
    z-index: 9999;
    opacity: 0;
    transform: translate3d(-50%, -50%, 0);
    transition: opacity .2s ease-out;
}

.custom-btn .elementor-button-content-wrapper {
	display: flex;
	align-items: center; 
}
.custom-btn .elementor-button-icon {
	background-color: #f49dc9;
	padding: 10px; 
	border-radius: 10px; 
}

.lang-shortcode a {
	 color: #000; 	
}
.lang-shortcode a:hover {
	color: #f40078;
} 

#door {
	top: 50%;
    transform: translateY(-50%) rotateX(var(--rotateX)) rotateY(var(--rotateY)) !important;
}

/* Slider home */
.miresi-residences-slider .slider {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    grid-template-areas: "list canvas";
    gap: 5rem;
    align-items: center;
}
.miresi-residences-slider .slider__list {
    grid-area: list;
}
.miresi-residences-slider .slider__canvas {
    grid-area: canvas;
    position: sticky;
    top: 80px;
}
.miresi-residences-slider .residences {
    list-style: none;
    margin: 0;
    padding: 0;
}
.miresi-residences-slider .residences__item {
    padding: 1.2rem 0;
    cursor: pointer;
}
.miresi-residences-slider .residences__item a {
    text-decoration: none;
}
.miresi-residences-slider .residences__item .title.--na,
.miresi-residences-slider .residences__item .label.--smallmedium.--na {
    color: rgba(255, 255, 255, 0.35);
}
.miresi-residences-slider .residences__item .title.--na {
    font-size: 50px;
	font-weight: 600;
    line-height: 1.3;
}
.miresi-residences-slider .residences__item .label.--smallmedium.--na {
    font-size: 22px;
    opacity: 0.9;
}
.miresi-residences-slider .residences__item.is-active .title.--na,
.miresi-residences-slider .residences__item.is-active .label.--smallmedium.--na {
    color: rgba(255, 255, 255, 0.9);
}
.miresi-residences-slider .canvas {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: visible;
    perspective: 1500px;
    transform-style: preserve-3d;
}
.miresi-residences-slider .canvas-layer {
    position: absolute;
    inset: 0;
    transform-style: preserve-3d;
}
.miresi-residences-slider .canvas-layer-face {
    position: absolute;
    inset: 0;
    border-radius: 16px;
    backface-visibility: hidden;
}
.miresi-residences-slider .canvas-layer-face--front {
    background-size: cover;
    background-position: center;
}
.miresi-residences-slider .canvas-layer-face--back {
    background-color: #223363;
    transform: rotateY(180deg);
}
.miresi-residences-slider .canvas-layer--0 {
    transform: translate3d(0, 0, 0);
    z-index: 4;
    opacity: 1;
    transform-origin: left center;
}
.miresi-residences-slider .canvas-layer--1 {
    transform: translate3d(40px, 0, -60px);
    z-index: 3;
    opacity: 0.8;
}
.miresi-residences-slider .canvas-layer--2 {
    transform: translate3d(80px, 0, -120px);
    z-index: 2;
    opacity: 0.55;
}
.miresi-residences-slider .canvas-layer--3 {
    transform: translate3d(120px, 0, -180px);
    z-index: 1;
    opacity: 0.35;
}
.miresi-residences-slider .canvas.is-animating .canvas-layer--0 {
    animation: miresi-slide-out-left 0.7s forwards;
}
.miresi-residences-slider .canvas.is-animating .canvas-layer--1 {
    animation: miresi-slide-in-front 0.7s forwards;
}

@keyframes miresi-slide-out-left {
    0% {
        transform: translate3d(0, 0, 0) rotateY(0deg);
        opacity: 1;
    }
    35% {
        transform: translate3d(-20%, 0, -120px) rotateY(-40deg);
        opacity: 0.9;
    }
    70% {
        transform: translate3d(-70%, 0, -220px) rotateY(-100deg);
        opacity: 0.4;
    }
    100% {
        transform: translate3d(-95%, 0, -280px) rotateY(-120deg);
        opacity: 0;
    }
}

@keyframes miresi-slide-in-front {
    0% {
        transform: translate3d(80px, 0, -160px) rotateY(45deg);
        opacity: 0;
    }
    40% {
        transform: translate3d(40px, 0, -80px) rotateY(15deg);
        opacity: 0.7;
    }
    100% {
        transform: translate3d(0, 0, 0) rotateY(0deg);
        opacity: 1;
    }
}

.popup-residencias {
	z-index: 1; 
}

/* Responsive */
@media (max-width: 1024px) {
    .miresi-residences-slider .slider {
		gap: 1rem;
        grid-template-columns: 1fr;
        grid-template-areas:
            "canvas"
            "list";
    }
    .miresi-residences-slider .slider__canvas {
        position: relative;
        top: 0;
        margin-bottom: 2rem;
    }
}
