
:root {

    /* COLORS */
    --maincolor: rgb(1,136,209);
    --lightcolor-transparent: rgba(255, 255, 255, 0.1);
    --maincolor-lg:  rgb(228, 246, 255);
    --maincolor-light: rgba(117,218,255,0.3);
    --border-color-ligt: rgb(255, 255, 255);
    --darkcolor: rgba(0,0,0,0.8);
    --transparent-white: rgba(255,255,255,0.5);
   

    /* BACKGROUND COLORS */
    --background-color: white;
    

    /* TEXT COLORS */

    --text-color-light: white;
    --text-color-light-light: white;
    --text-color-dark: black;
    --text-color-dark-light: darkgray;
    --text-color-highlight: var(--maincolor);
    --text-color-highlight-light: var(--maincolor);


    /* MEASURES VARIABLES */
    --padding-content-sides: 0 5vw;;
    --padding-sections:30px;
    --pading-items: 30px;

    --pading-sections-up-down: 20px;
    --padin-section-up-down-big: 40px;


    /* BORDER COLORS */
    --border-color-light: rgba(65, 65, 65, 0.2);


    /* BORDER RADIUS */
    --border-round: 10px;

  }

body {

    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Roboto';

}

a {
    text-decoration: none;
    color: var(--text-color-dark);
}


/* ESTILOS GENERALES */

.text-and-icon {

    display: flex;
    align-items: center;
   

}



.text-and-icon-wspace {

    margin-right: 10px;

}

.text-and-icon p {
    margin: 0;
    padding: 0;
}

.icon-main-color {

    color: var(--maincolor);

}

.dropdown-btn {
   
    border: none;
  
}

.dropdown-container {
    position: relative;
    transition: all 1s;
    
}


.dropdown-cont {

  display: none;
  top: 100%;
  position: absolute;
  background-color: var(--background-color);
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  border-radius: var(--border-round);
  z-index: 999;
 
 
}

.dropdown-content-link {

  color: var(--text-color-dark);
  text-decoration: none;
  padding: 15px 10px;
  
}

.dropdown-content-link:hover {
    background-color: var(--maincolor-light);
}


.dropdown-container:hover .dropdown-cont {display: block;}

.dropdown-container:hover  .dropdown-btn {background-color: var(--maincolor-lg); }

/* ---- */



.main-container {
    padding: var(--padding-content-sides);
    padding-bottom: 80px;
}

.main-container section {

    margin: 0;
}


.nav-container {

    width: 100%;
   
}

.nav-cont {

    padding: 20px 25px;
}


/* MAIN AND UPPER NAVBAR CONTAINER */

.nav-main{

    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
    padding-bottom: 10px;
   
}

.nav-main-item {

    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

/* --- */



/* LOGO ITEM NAVBAR */

.nav-menu-logo {

    color: var(--maincolor);

}

.nav-menu-logo a {
    /* padding-left: 10px; */
    color: var(--maincolor);
}


/* MIDDLE SEARCH BAR */

    .nav-search {
        display: flex;
        align-items: center;
        margin-top: 5px;
        padding: 5px 5px;
        background-color: var(--maincolor-light);
        border-radius: var(--border-round) ;
        width: 40vw;

    }

    .nav-search span {

        color: var(--maincolor);    
        

    }

    .nav-search input {

        margin-left: 10px;
        color: var(--text-color-dark-light);
        width: 90%;
        padding: 10px;
        border: none;
        background-color: transparent;
    }

    .nav-search input:focus {

        border: none;
        outline: none;

    }

/* --- */


/* RIGTH ICONS ON NAVBAR */

    .nav-user-icon-item {
        display: flex;
        justify-content: center;
        align-items: center;
        padding-left: 20px;
        border: none;
        background-color: transparent
    }

    .nav-user-icon-item span {

        color: var(--maincolor);
    }

    .nav-user-icon-item p {
        padding-left: 10px;
    }

/* --- */





/* NAVBAR CATEGORIES UNDER MENU */

.nav-under-menu {

    padding: 10px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    flex-wrap: wrap;
    margin-bottom: 20px;
    border-top: 1px solid var(--border-color-light );

}

.nav-under-menu-item {

    padding: 15px 20px;
}

.nav-under-menu-item:hover {

    background-color: var(--maincolor-light);
    border-radius: var(--border-round);
   
}

.nav-under-menu-item a {

    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    
}


.nav-under-menu-item a span {


    padding-left: 5px;
    color: var(--maincolor);
}



/* MOBILE MENU */

.menu-open {
    margin-right: 20px;
    cursor: pointer;
    display: none;
}


.menu-mobile {

    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: -100%;  
    z-index: 100;
    color: var(--text-color-light);
    overflow-y: hidden;
    transition: all 0.7s;

}


.close-mobile-menu {

    background-color: var(--maincolor-light);
    border-radius: 100%;
    padding: 8px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;

}

.menu-mobile-container {

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--maincolor);
    width: 100% ;
    height: 100%;
    margin-right: 20%;
    padding: 30px 30px;
    overflow-y: scroll;

}

.menu-mobile-section {

    padding-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    

}

.menu-mobile-section-item {

    width: 100%;
    padding: 3.5% 0;
    border-top:  1px solid var(--lightcolor-transparent);
    

}


.menu-mobile-section-item:hover {

    background-color: var(--maincolor-light);
    padding-left: 20px;
    border-radius: var(--border-round);
   

}

.menu-mobile-section-item h2 {
    margin-bottom: 15px;
    padding-bottom: 3px;
    border-bottom: 3px solid var(--background-color);

}

.menu-mobile-section-item a {
    color: var(--text-color-light);
    padding: 5px 0 ;
}





/* BANNER */



/* .landing-page-banner {

    width: 100%;
    height: 100%;

    position: relative;

} */


.banner-cont {

    width: 100%;
    overflow: hidden;
    padding: 0px;
    position: relative;
    border-radius: var(--border-round);

}

.banner-images {

    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    scroll-behavior: smooth;
    transition: all 1s ease-in-out;
}


.banner-item {

    width: 100%;
    height: 70vh;
    flex-shrink: 0;

}

.banner-item img {

    width: 100%;
    height: 100%; 
    object-fit: cover;

}


.banner-btn-change  {

    /* background-color:wheat;
    border: 10px solid whitesmoke; */
    
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    position: absolute;   
    cursor: pointer;
    top: 45%;
    z-index: 99;
    color: var(--background-color);
    opacity: 0.8;
    font-size: 2.0rem;
    transition: all 0.5s;

}

.banner-btn-change:hover {

    background-color: var(--background-color);
    color: var(--maincolor);
}

.banner-before {

    left: 0%;
}

.banner-after {
    right: 0%;
}



.banner-text {

    top: 0;
    left: 0;
    width: 30vw;
    height: 50%;
    padding: 8%;
    position: absolute;
 
    font-size: 1.2rem;

}





/* SECTIONS DOWN TO THE BANNER */
/* ESTILOS DE SECCIONES EN LANDING PAGE */


.landing-page-section {

    padding: 20px 0px;
    position: relative;
}


.landing-page-section-up {

    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.landing-page-section-title {

    
    color: var(--maincolor);
    max-width: 50%;
    border-radius: 3px;
    text-align: center;
    padding: 10px 0;

}

.landing-page-section-more {

    position: absolute;
    right: 0;

}

.landing-page-section-more p {
    font-size: 0.8rem;
}

.landing-page-section-more span {
    margin: 0;
}



.landing-page-section-title span {

    color: var(--darkcolor);


}



.landing-page-items-carousel {

    display: flex;
    overflow-x: scroll;
    scroll-behavior: smooth;

    margin: 0;
    padding: 0 0;
    opacity: 0.95;
    width: 100%;
    
}

.carousel-scroll {

    cursor: pointer;
    user-select: none;
    transition: all 0.5s;
    opacity: 0.9;

}

.carousel-scroll:hover {

    transform: scale(1.2);

}

.carousel-scroll-right {

    position: absolute;
    top: 55%;
    right: -2%;

    width: 60px;
    height: 60px;
    border: 5px solid var(--background-color);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--maincolor-lg);

}

.carousel-scroll-left {

    position: absolute;
    top: 55%;
    left: -2%;
    z-index: 99;

    width: 60px;
    height: 60px;
    border: 5px solid var(--background-color);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--maincolor-lg);

}


.landing-page-items-carousel::-webkit-scrollbar {
    display: none;
}



/* MARCAS */



.marca  {

    overflow: hidden;
    width: 400px;
    height: 350px;
    border-radius: var(--border-round);
    margin-right: 20px;
  
}

.marca img {

    width: 100%;
    height: 100%; 
    object-fit: cover;

}


/* SECTION CATEGORIAS */

/* .categorias {

    justify-content: space-between;

} */

.item-categoria {

    margin-right: 50px;
}

.item-categoria-img {

    border-radius: 100%;
    overflow: hidden;
    padding: 20px;
    width: 140px;
    height: 130px;
    box-shadow: rgba(17, 17, 26, 0.05) 0px 1px 0px, rgba(17, 17, 26, 0.1) 0px 0px 8px;
    opacity: 0.9;
}

.item-categoria-img img {

    width: 100%;
    height: 100%; 
    object-fit: cover;
    

}

.item-categoria h3 {

   text-align: center;

}




/* PRODUCTOS */


.product-card {


    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    flex-grow: 0;
    padding: 10px 0;
    width: 220px;
    height: 340px; 
    border-radius: var(--border-round);
    box-shadow: rgba(17, 17, 26, 0.05) 0px 1px 0px, rgba(17, 17, 26, 0.1) 0px 0px 8px;
    overflow: hidden; 
    position: relative;
    margin-right: 30px;

    color: var(--text-color-dark);
    

}

.product-card-top-pop {

    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--maincolor);
    border-radius: 0 0 0 var(--border-round);
    padding: 7px;
    max-width: 40%;
    max-height: 30%;
    
}

.product-card-top {

    overflow: hidden;
    width: 100%;
    height: 50%;
    color: var(--background-color);
    

}

.product-card-top img {

    width: 100%;
    height: 100%; 
    object-fit: scale-down;

}


.product-card-body {

    padding: 20px 10px;
    margin: 0;

}

.product-card-title {
    margin-bottom: 0;
    text-align: center;
}

.product-card-prices {

    display: flex;
    justify-content: center;

}

.product-card-prices p {

    padding-right: 10px;

}

.product-card-bottom {
    text-align: center;
    color: var(--maincolor);
}




/* FOOTER */




.footer-section {

    background-color:  var(--maincolor);
    color: var(--text-color-light);
    padding:  var(--padding-content-sides);

    padding-top: var(--padin-section-up-down-big);
    padding-bottom: var(--padin-section-up-down-big);

    display: flex;
    justify-content: space-around;
    position: relative;

    overflow: hidden;

    
}


.footer-sub-section-title {

    padding-bottom: 10px;
    border-bottom: solid 4px var(--text-color-light);
    border-radius: 3px;

}

.footer-decoration-circle {
    width: 350px;
    height: 350px;
    border-radius: 100%;
    background-color: var(--maincolor-light);
    position: absolute;
    top: -3%;
    left: -8%;
    padding: 15px;
    border: 5px solid var(--maincolor-light);
   
}


.footer-contact-section {


    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-direction: column;

}

.footer-icon {
    width: 30px;
    height: 30px;
    margin-right: 20px;
}

.footer-contact-section a {

    text-decoration: none;
    color: var(--text-color-light);

}

.footer-main {

    border-bottom: 1px solid var(--transparent-white);
    display: flex;
    flex-wrap: wrap;



}

.footer-down {

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    
}

.footer-down a {
    color: var(--text-color-light);
    text-decoration: none;
}


.footer-main-list {

    padding-top: 10px;

}

.footer-main-list li {

    margin: 20px 0;
    
}

.footer-main-list a {

    text-decoration: none;
    color: var(--text-color-light);
    
    
}





/* MEDIA QUERY */




@media (max-width: 1000px) {


    .main-container {

        position: relative;
    }


    
    .banner-item {

        height: 30vh;


    }


    .banner-btn-change  {


        top: 35%;     
        font-size: 2.0rem;
        opacity: 0.5;

    
    }

    .marca  {

        overflow: hidden;
        width: 250px;
        height: 220px;
        border-radius: var(--border-round);
        margin-right: 10px;
      
    }
    


    .nav-main {

      
       justify-content: space-between;
       box-sizing: border-box;
       border: none;
       position: fixed;
       top: 0;
       left: 0;
       flex-wrap: wrap;
       padding: 15px 15px;
       margin-bottom: 35px;
       width: 100%;
       background-color: var(--background-color);   
       z-index: 99;
       
    }

    .nav-cont {
        padding: 15px 15px;
        height: 120px;
    }

    .nav-search-mobile{

        display: inline;
       
    }

    .nav-main-title {

       
        font-size: 1.2rem;

    }

    .text-and-icon h4 {


        font-size: 0.8rem;

    }

    .nav-menu-logo {

        display: flex;
        order: 1;

    }

   
    .nav-search-bar {
        order: 3;
        width: 100%;
    }



    .nav-search  {

        width: 100%;
       

    }


    .nav-user-icons {

        order: 2;
       
    }

   

    .nav-user-icon-item p {

        display: none;
    }


    .menu-open {
        display: inline;
    }

    .menu-mobile-section {

     overflow-y: scroll;
        
    
    }


    .menu-mobile-bottom {

        padding-bottom: 10px;
    }

    .nav-under-menu {
        position: fixed;
        flex-direction: column;
        top: 0;
        left: 0;
        height: 60vh;
        width: 100vw;
        background-color: var(--maincolor);
        z-index: 99;
        display: none;
    }


    .landing-page-section {

        padding: 10px 0;

    }

    .landing-page-section-up {

        justify-content: left;
    }

    .landing-page-section-title {

        font-size: 1rem;
        max-width: 80%;
        padding-left: 12px;

    }

    .carousel-scroll {
        display: none;
    }


    .product-card {
   
        padding: 5px 0;
        width: 150px;
        height: 270px; 

        margin-right: 25px;
    
        color: var(--text-color-dark);
        
    
    }


    .product-card-top-pop {
        max-width: 25%;
        max-height: 15%;
        font-size: 0.7rem;
    }

    .item-categoria-img {

        width: 100px;
        height: 105px;
    }
    


    .footer-main {
        justify-content: center;
        align-items: center;
    }

    .footer-sub-section {
        flex-shrink: 0;
        width: 90%;
        margin-bottom: 20px;
      
    }


    
    
    }



    @media (min-width: 901px) { 


        .nav-search-mobile {

            display: none;
        }

    }




    @media (min-width: 550px) {



         .banner-item {

            height: 70vh;
    
    
        }

    }