/*   
Theme Name: Hello Elementor Child Theme  
Theme URI: https://github.com/elementor/hello-theme/  
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: 1.0.1  
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  
*/  

/*  
    By @miriondo. Header Main Menu.  
*/  

.main-menu {  
    display: flex;  
    justify-content: center; /* Centra los elementos del menú */  
    align-items: center;  
    background-color: #fff;  
    transition: all 0.3s ease; /* Cambios generales | caja y sombra */  
    box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);  
}  

.main-menu .elementor-widget-nav-menu {  
    margin-left: -90px;  
}  

.main-menu.scrolled .elementor-widget-nav-menu {  
    margin-left: -40px;  
}  

.main-menu.scrolled {  
    justify-content: flex-start;  
    padding-left: 10px;  
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);  
}  

.main-menu.scrolled .e-con-inner {  
    justify-content: flex-start !important;  
}  

.main-menu img {  
    width: 0;  
    height: 0;   
    margin-right: 80px;   
    transition: all 0.3s ease;   
    opacity: 0;  
    transform: translateX(-240px);  
}  

.main-menu.scrolled img {  
    width: 140px;  
    height: 45px;  
    transform: translateX(0); /* Mueve la imagen fuera de vista hacia la izquierda */  
    opacity: 1 !important; /* Desvanece la imagen */  
}  

/*** button effect ***/  
a.uc_more_btn {  
    text-decoration: none;  
    font-family: sans-serif;  
    position: relative;  
    padding: .5rem 0;  
    color: var(--e-global-color-secondary);	  
    border: none !important;  
    display: inline-flex;   
    align-items: center;  
}  

a.uc_more_btn::after {  
    content: '';  
    width: 100%;  
    height: 2px;  
    background-color: var(--e-global-color-secondary);  
    position: absolute;  
    bottom: 0;  
    right: 0;  
    transition: width .2s ease;  
}  

a.uc_more_btn svg {  
    width: 20px !important;  
    transition: transform 0.2s ease;   
}  

a:hover::after {  
    width: 0;  
}  

a.uc_more_btn:hover svg {  
    display: inline-flex;  
    animation: softBounce 0.6s ease;  
}  

/* Keyframes for the soft bounce effect */  
@keyframes softBounce {  
    0%, 20%, 50%, 80%, 100% {  
        transform: translateX(0);  
    }  
    40% {  
        transform: translateX(-5px);   
    }  
    60% {  
        transform: translateX(-2.5px);  
    }  
}  

/** arrow navigation ***/  
.owl-nav button.owl-prev {  
    left: 52% !important;  
    top: 98% !important;  
}  
.owl-nav button.owl-next {  
    left: 55% !important;  
    top: 98% !important;  
}  

/*** carousel home ***/  
.container-carousel {  
    overflow-x: hidden;  
    width: 1600px;  
}  

/*  
.home-carousel .owl-item.cloned,  
.home-carousel .owl-item.active {  
    width: 465px !important;  
}  
.home-carousel img {  
    height: 583px !important;  
    width: 465px !important;  
}  
*/  

.internal-carousel .uc_image_carousel_placeholder,  
.internal-carousel .uc_image_carousel_placeholder img {  
    height: 518px;  
    max-width: 540px;  
}  

.internal-carousel .uc_image_carousel_content {  
    max-width: 505px;  
    margin-left: 20px;  
}  

/*** Button arrow from carousel ***/  
#uc_post_carousel_elementor_2ebf7c7 .uc_more_btn,   
#uc_post_carousel_elementor_aedb7f3 .uc_more_btn,  
.uc_more_btn {  
    display: inline-flex !important;  
    text-align: center;  
    text-decoration: none;  
    align-content: center;  
    align-items: center;  
}  

#uc_post_carousel_elementor_aedb7f3 .owl-nav .owl-next {  
    position: absolute;  
    display: inline-block;  
    text-align: center;  
    top: -10% !important;  
    transform: translate(0, -50%);  
}  

.fade-in-up {  
    opacity: 0;  
    transform: translateY(20px);  
    transition: opacity 0.5s ease, transform 0.5s ease;  
}  

.fade-in-up.visible {  
    opacity: 1;  
    transform: translateY(0);  
}  

@keyframes fadeInCarousel {  
    0% {  
        opacity: 0;  
        transform: translateX(100px);   
    }  
    100% {  
        opacity: 1;  
        transform: translateX(0);   
    }  
}  

.fade-in-carousel {  
    animation: fadeInCarousel 0.5s ease-in;   
}  

.carousel-ba .owl-item.active.uc-active-item  {  
    z-index: 1;  
}  
.carousel-ba .owl-item:not(.uc-active-item)  {  
    width: 537px !important;  
    margin-right: -310px !important; /* Ajustar el margen derecho según sea necesario */  
    right: 350px;  
    top: 55px;  
    z-index: 0;  
}  
.carousel-ba .owl-carousel .owl-stage {  
    min-height: 550px !important;  
}  

/*** Disable effects for WPAdmin ***/  
.elementor-editor-active .fade-in-up,  
.elementor-editor-active .fade-in-up.visible {  
    opacity: 1 !important;  
    transform: translate(0, 0) !important;  
}  

html {   
    scroll-behavior: smooth;   
}  

body {   
    overflow-x: hidden;   
}  

/*  
 * body, html {  
    margin: 0;  
    padding: 0;  
    height: 100%;  
}  

.elementor.elementor-145.elementor-motion-effects-parent {  
    height: 100vh;  
    overflow-y: scroll;  
    scroll-snap-type: y mandatory;   
}*/  

/*** Child pages ***/  
body.page-child div#main-menu {  
    background-color: #0F2F29 !important;  
}  

/*  
body.page-child div#main-menu  a {  
    color: #FFFFFF !important;  
}  

body.page-child div#main-menu .elementor-element-b2b1241 {  
    background-size: cover;   
    background-position: center;  
    background-repeat: no-repeat;  
    overflow: hidden;  
    background-image: url('/wp-content/uploads/2022/03/footer-DMK-Logo-White-2x.png');  
}  

body.page-child div#main-menu img {  
    display: none;   
    width: 100%;  
    height: 100%;   
}  
*/  

p.small-white {  
    color: #FFFFFF;  
    font-size: 14px;  
    margin: 0;  
}  

.back-to-top {  
    position: fixed;  
    bottom: 30px;  
    right: 30px;  
    display: none; /* Esconder por defecto */  
    background-color: #007bff;  
    color: white;  
    border: none;  
    border-radius: 5px;  
    padding: 10px 15px;  
    font-size: 16px;  
    cursor: pointer;  
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);  
    transition: background-color 0.3s;  
}  

.back-to-top:hover {  
    background-color: #0056b3;  
}   

/*** MOBILE STYLES ***/  
@media only screen and (max-width: 768px) {  
    body {  
        background-color: #ffffff;   
        overflow-x: hidden;	  
    }  
    h1 {  
        font-size: 24px;  
    }  
    .container {  
        padding: 20px;   
    }   
    .home-carousel img,
	.internal-carousel img {  
        height: 426px;  
        max-width: 426px;  
    }  
    
    .uc_image_carousel_content {  
        max-width: 350px !important; 
    }  
    .main-menu-mobile .elementor-nav-menu__container {  
        top: 42px !important;  
    }  
}  

/*** TABLET STYLES ***/  
@media only screen and (min-width: 768px) and (max-width: 1024px) {  
    body {  
        background-color: #ffffff;   
        overflow-x: hidden;  
    }  
    h1 {  
        font-size: 32px;  
    }  
    .container {  
        padding: 40px;  
    }  
}