:root {
    --malta-black: rgb(40, 40, 40); 
    --malta-blue: rgb(51, 94, 172);
    --malta-gray: rgb(82, 86, 87);
    --malta-light-blue: rgb(98, 170, 227);
    --malta-light-gray: rgb(182, 180, 180); 
    --malta-gray-gradient: linear-gradient(45deg, rgba(228,231,236,1) 0%, rgba(255,255,255,1) 100%);
    --malta-mono-gradient: linear-gradient(to bottom, rgba(40,40,40,1) 0%, rgba(40,40,40,1) 50%,  rgba(250,250,250,1) 50%, rgba(255,255,255,1) 100%);
}

:target:before {
    content: "";
    display: block;
    height: 106px;
    margin: -106px 0 0;
    /* border:1px solid tomato; */
}

*{
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    text-decoration: none;
    /* list-style: none; */
    font-family: 'Roboto', sans-serif;
}

html{
    scroll-behavior:smooth;
}
body{
    background-color: var(--malta-black); 
    color: white;
}

/* Elementos Generales */
    a{
        color: white;
    }

    ul.list__standard{
        margin: 20px;
        list-style: disc;
    }
    ul.list__standard li{
        padding: 5px 0;
    }
    .btn-outline-success {
        color: var(--malta-light-blue); 
        border-color: var(--malta-light-blue); 
    }


/* Clases Utilitarias y fixes */
    .flex{
        display: flex;
    }
    .flex__center{
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .flex__valign_center{
        display: flex;
        align-items: center;
    }
    .topspacer-5{
        margin-top: 5vh;
    }
    .mlr-40{
        padding-left: 40px;
        padding-right: 40px;
    }
    .usercomment{
        font-family: 'Source Serif Pro', serif;
        font-weight: 300;
        font-style: italic;
    }
    .bg-lightblue{
        background-color: var(--malta-light-blue);
    }
    .bg-blue{
        background-color: var(--malta-blue);
    }

/* Formularios */
/* boton grande */
.btn__big__white{
    background-color: white;
    color: rgb(0, 0, 0) !important; 
    display: inline-block;
    font-weight: 500;    
    line-height: normal;
    padding: 19.2px 32.064px;
    -webkit-font-smoothing: antialiased;
}


/* Barra de Navegacion */
    .navbar {
        min-height: 106px;
        padding: 28px 40px;
    }

    .bg-light {
        background-color:transparent !important;
        transition: background-color 500ms linear;
    }

    .bg-darks{
        background-color: var(--malta-black) !important;
        transition: background-color 500ms linear;
    }    

    .navigation-brand{
        display: inline-block;
        margin: 0px 0px;
        margin-right: 1rem;
        width: 172px;
        height: 50px;
        background: url(../assets/layout/malta_logo_trans.png);
        background-size: contain;
        background-repeat: no-repeat;
    }


/* Video Background */
    .main__video{
        position: relative;
    }
    
    #videoBG {
        /* position:fixed; */
        z-index: -1;
        width:100%;
        height: auto;
    }
    /* @media (min-aspect-ratio: 16/9) {
        #videoBG {
            width:100%;
            height: auto;
        }
    }
    @media (max-aspect-ratio: 16/9) {
        #videoBG { 
            width:auto;
            height: 100%;
        }
    } */
    /* @media (max-width: 767px) {
        #videoBG {
            display: none;
        }
        body {
            background: url('../assets/images/demo_poster_00.png');
            background-size: cover;
        }
    } */

    .main__video--title{
        position:absolute;
        margin-left: auto; 
        margin-right: auto; 
        text-align: center;
    }


/* Iconos de Categorias */
    .caticons{
        display: flex;
        flex-direction: row; 
        justify-content: space-around; 
    }
    .caticons__caticon{
        text-align: center;
    }
    .caticons__caticon > a{
        text-decoration: none;
    }

    .caticons__caticon i{
        display: block;
        transition: color 300ms linear; 
        transition-timing-function: ease-in-out;
    } 
    .caticons__caticon i:hover{
        color: var(--malta-light-blue); 
    } 

/* Custom Carousel */
    .carousel-caption {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: transparent;
        right: 0px;
        bottom: 0px;
        left: 0px;
        z-index: -1;
        padding-top: 0px;
        padding-bottom: 0px;
        color: #fff;
        text-align: center;
    }
    .carousel-caption-black{
        width: 100%;
        height: 50%;
        display: flex;
        justify-content: flex-end;
        align-items: flex-start;
    }
    .carousel-caption-white{
        width: 100%;
        height: 50%;
        display: flex;
        justify-content: flex-end;
        align-items: flex-start;
        background-color: white;
        color: black;
    }
    .carousel-caption-content{
        padding-top: 20px;
        padding-right: 20px;
        width: 60%;
    }

    .carousel-indicators{
        display: none; 
    }

    .carousel-indicators li {
        background-color: black !important;
    }


/* Secciones General */
    .main__section{
        margin-top: 106px;
        position: relative;
    }

    .main__banner{
        display: flex;
        flex-direction: row;
        align-items: stretch;
        justify-content: space-between;
        background-color: white;
        padding: 40px 10px;
    }
    .main__banner--img{
        max-width: 80%;
        text-align: center;
    }
    .main__banner--img img{
        width: 100%;
    }

    .main__banner--legend{
        padding: 20px
    }


/* Desplegado de Productos de una categoria */
    .products__container{
        padding: 0px 0px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .product{
        display: grid;
        grid-template-columns: 0.8fr 1fr;
        background-color: white;
        width: 400px;
        height: 300px; /* ver que hago con esto en responsivo*/
        padding: 10px;
        border-radius: 5px;
        margin-bottom: 20px;
        margin-left: 5px;
        margin-right: 5px;
    }

    .product__image--container{
        position: relative;
    }
    .product__image{
        /* background-color: chartreuse; */
        position: absolute;
        left: -25%;
        top: 5%; 
        display: grid;
        grid-template-rows: 1fr;
        width: 110%;
        height: 90%;
    }
    .product__image img{
       max-height: 80%;
       filter: drop-shadow(1px 20px 10px rgba(0, 0, 0, 0.3));
    } 

    .product__info{
        color: var(--malta-black); 
    }


    /* Contacto */
    .comentarios__container{
        padding: 40px;
        background: url(../assets/images/demo_back_smarthouse.jpeg);
        background-size: cover;
        background-position: center 80%;
    }

/* Fin de Contenedores ppara seciones*/

/* Footer */
    footer{
        padding: 40px;
        background-color: white;
        color: black; 
    }
    footer a{
        color: black;
    }
    footer a:hover{
        color: black;
        text-decoration: underline;
    }

    .footer__imago{
        display: inline-block;
        margin: 0px 0px 10px 0px;
        margin-right: 1rem;
        width: 192px;
        height: 80px;
        background: url(../assets/layout/malta_imago_light.png);
        background-size: contain;
        background-repeat: no-repeat;
    }
    

/* Bootstrap Media Queries */
/* Para pantallas micronianas */
@media (max-width: 374px){
    /* Index */
    .main__video--title{
        width: 90%; 
        left: 5%; 
        top: 35%;
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 375px) {
    /* Index */
    .main__video--title{
        width: 70%; 
        left: 15%; 
        top: 35%;
    }
    /* caticons */
    .caticons__caticon{
        width: 25%;
    }
    .caticons__caticon i{
        font-size: 8vw;
    } 

    /************ Seccion Productos (Iluminacion, Seguridad ...) ***************/
    /* Billboard (Core) Principal de Categoria de Productos */
    .catprod{
        display: flex;
        flex-direction: column;
    }
    .catprod div{
        padding: 10px;
    }
    .catprod__image{
        justify-content: center;
        align-items: center;
        padding-bottom: 0 !important;
        background: var(--malta-mono-gradient);
    }
    .catprod__image img{
        max-width: 100%;
        max-height: 100%;
        object-fit: fill;
    }

    .catprod__feat i{
        display: inline-block;
        margin-right: 1vw;
        color: var(--malta-light-gray);
    }
    .catprod__feat h5{
        display: inline-block;
        font-family: 'Source Serif Pro', serif;
        font-weight: 400;
    }

    /* Ahora si ya en el campo responsivo y cambios especificos  */
    .catprod__punchline{
        background: var(--malta-gray-gradient);
        color: black;
    }
    .catprod__feat i{
        font-size: 5vw;
    }

    /* main banner */
    .main__banner{
        flex-wrap: wrap;
    }
}



/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    /* Index */

    /* caticons */
    .caticons__caticon{
        width: 10%;
    }
    .caticons__caticon i{
        font-size: 4vw;
    } 
    /* Carousel */
    .carousel-indicators{
        display: flex; 
    }


    /************ Seccion Productos (Iluminacion, Seguridad ...) ***************/
    /* Billboard (Core) Principal de Categoria de Productos */
    .catprod{
        /* height: 70vh; */
        display: grid;
        grid-template-columns: 33% 33% 33%;
        grid-template-rows: 45% 15% 40%;
    }
    .catprod div{
        padding: 10px;
    }
    .catprod__image{
        background: none;
        grid-column: 1 / span 1;
        grid-row: 1 / span 2;
        justify-content: center;
        align-items: flex-end;
        padding-bottom: 0 !important;
    }
    .catprod__image img{
        max-width: 100%;
        max-height: 100%;
        object-fit: fill;
    }

    .catprod__billboard{
        grid-column: 2 / span 2;
        grid-row: 1 / span 1;
    }
    .catprod__background{
        grid-column: 1 / span 3;
        grid-row: 2 / span 2;
        background: var(--malta-gray-gradient); 
    }
    .catprod__punchline{
        grid-column: 2 / span 2;
        grid-row: 2 / span 1;
        text-align: center;
        color: black;
        background: none;
    }
    .catprod__feat{
        color: black;
    }

    .catprod__feat p{
        color: var(--malta-gray);
    }

    .catprod__feat--1{
        grid-column: 1 / span 1;
        grid-row: 3 / span 1;
    }
    .catprod__feat--2{
        grid-column: 2 / span 1;
        grid-row: 3 / span 1;
    }
    .catprod__feat--3{
        grid-column: 3 / span 1;
        grid-row: 3 / span 1;
    }

    /* Parametros dinamicos */
    .catprod__feat{
        padding-left: 5% !important;
        padding-right: 5% !important;
    }
    .catprod__feat i{
        font-size: 3.5vw;
    }
    .catprod__feat h5{
        font-size: 2.8vw !important;
    }
    .catprod__feat p{
        font-size: 1.7vw !important;
    }

    /* main banner */
    .main__banner{
        flex-wrap: nowrap;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    h1.text__dynamic{
        font-size: 5vw;
    }
    h3.text__dynamic{
        font-size: 3.5vw;
    }
    h5.text__dynamic{
        font-size: 2.5vw;
    }

    /* Index */
    .main__video--title{
        width: 60%; 
        left: 20%; 
        top: 35%;
    }

    /* Seccion Productos (Iluminacion, Seguridad ...)*/
    /* Billboard Principal de Categoria de Productos */
    .catprod__feat{
        padding-left: 10% !important;
        padding-right: 10% !important;
    }
    .catprod__feat i{
        font-size: 3.5vw;
    }
    .catprod__feat h5{

    }
    .catprod__feat p{
        font-size: 1.5vw !important;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 

    p.text__dynamic{
        font-size: 1.5vw;
    }
    strong.text__dynamic{
        font-size: 1.5vw;
    }
    /* Seccion Productos (Iluminacion, Seguridad ...)*/
    /* Billboard Principal de Categoria de Productos */
    .catprod__feat{
        padding-left: 20% !important;
        padding-right: 20% !important;
    }
    .catprod__feat i{
        font-size: 3.5vw;
    }
    .catprod__feat h5{

    }
    .catprod__feat p{
        font-size: 1.2vw !important;
    }

}

/********* UTILERIAS MISCELANEAS **********/
/* En validacion de Formularios */
    .invalid{
        color: rgb(236, 95, 95);
    }
    label.invalid{
        font-size: 0.8rem;
    }
/* para bloqear tablas cuando hacemos un submit o similares */
    table.loading, div.loading {
        position: relative;
    }
  
    table.loading:after, div.loading:after {
        position: absolute;
        border-radius: 5px;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.2);
        background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjAiIHdpZHRoPSI2NHB4IiBoZWlnaHQ9IjY0cHgiIHZpZXdCb3g9IjAgMCAxMjggMTI4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48Zz48cGF0aCBkPSJNNzEgMzkuMlYuNGE2My42IDYzLjYgMCAwIDEgMzMuOTYgMTQuNTdMNzcuNjggNDIuMjRhMjUuNTMgMjUuNTMgMCAwIDAtNi43LTMuMDN6IiBmaWxsPSIjMDAwIi8+PHBhdGggZD0iTTcxIDM5LjJWLjRhNjMuNiA2My42IDAgMCAxIDMzLjk2IDE0LjU3TDc3LjY4IDQyLjI0YTI1LjUzIDI1LjUzIDAgMCAwLTYuNy0zLjAzeiIgZmlsbD0iI2UxZTFlMSIgdHJhbnNmb3JtPSJyb3RhdGUoNDUgNjQgNjQpIi8+PHBhdGggZD0iTTcxIDM5LjJWLjRhNjMuNiA2My42IDAgMCAxIDMzLjk2IDE0LjU3TDc3LjY4IDQyLjI0YTI1LjUzIDI1LjUzIDAgMCAwLTYuNy0zLjAzeiIgZmlsbD0iI2UxZTFlMSIgdHJhbnNmb3JtPSJyb3RhdGUoOTAgNjQgNjQpIi8+PHBhdGggZD0iTTcxIDM5LjJWLjRhNjMuNiA2My42IDAgMCAxIDMzLjk2IDE0LjU3TDc3LjY4IDQyLjI0YTI1LjUzIDI1LjUzIDAgMCAwLTYuNy0zLjAzeiIgZmlsbD0iI2UxZTFlMSIgdHJhbnNmb3JtPSJyb3RhdGUoMTM1IDY0IDY0KSIvPjxwYXRoIGQ9Ik03MSAzOS4yVi40YTYzLjYgNjMuNiAwIDAgMSAzMy45NiAxNC41N0w3Ny42OCA0Mi4yNGEyNS41MyAyNS41MyAwIDAgMC02LjctMy4wM3oiIGZpbGw9IiNiZWJlYmUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA2NCA2NCkiLz48cGF0aCBkPSJNNzEgMzkuMlYuNGE2My42IDYzLjYgMCAwIDEgMzMuOTYgMTQuNTdMNzcuNjggNDIuMjRhMjUuNTMgMjUuNTMgMCAwIDAtNi43LTMuMDN6IiBmaWxsPSIjOTc5Nzk3IiB0cmFuc2Zvcm09InJvdGF0ZSgyMjUgNjQgNjQpIi8+PHBhdGggZD0iTTcxIDM5LjJWLjRhNjMuNiA2My42IDAgMCAxIDMzLjk2IDE0LjU3TDc3LjY4IDQyLjI0YTI1LjUzIDI1LjUzIDAgMCAwLTYuNy0zLjAzeiIgZmlsbD0iIzZlNmU2ZSIgdHJhbnNmb3JtPSJyb3RhdGUoMjcwIDY0IDY0KSIvPjxwYXRoIGQ9Ik03MSAzOS4yVi40YTYzLjYgNjMuNiAwIDAgMSAzMy45NiAxNC41N0w3Ny42OCA0Mi4yNGEyNS41MyAyNS41MyAwIDAgMC02LjctMy4wM3oiIGZpbGw9IiMzYzNjM2MiIHRyYW5zZm9ybT0icm90YXRlKDMxNSA2NCA2NCkiLz48YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSJ0cmFuc2Zvcm0iIHR5cGU9InJvdGF0ZSIgdmFsdWVzPSIwIDY0IDY0OzQ1IDY0IDY0OzkwIDY0IDY0OzEzNSA2NCA2NDsxODAgNjQgNjQ7MjI1IDY0IDY0OzI3MCA2NCA2NDszMTUgNjQgNjQiIGNhbGNNb2RlPSJkaXNjcmV0ZSIgZHVyPSI3MjBtcyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiPjwvYW5pbWF0ZVRyYW5zZm9ybT48L2c+PGc+PGNpcmNsZSBmaWxsPSIjMDAwIiBjeD0iNjMuNjYiIGN5PSI2My4xNiIgcj0iMTIiLz48YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJvcGFjaXR5IiBkdXI9IjcyMG1zIiBiZWdpbj0iMHMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiBrZXlUaW1lcz0iMDswLjU7MSIgdmFsdWVzPSIxOzA7MSIvPjwvZz48L3N2Zz4=);
        background-position: center;
        background-repeat: no-repeat;
        background-size: 50px 50px;
        content: "";
    }

    /* Extras and Debug */
    .debug{
        /* border: 1px solid red;   */
    }  