/* Estilos navegacion nav */

.layout__nav {
    grid-area: nav;
    position: relative;
    width: 100%;
}

.nav__navbar {
    display: flex;
    position: relative;
    flex-direction: row;
    align-items: center;
    min-height: 5rem;
    max-height: 5rem;
    width: 100%;
    color: var(--color-principal);
    background-color: var(--color-bg-navbar);
}

.navbar__list {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.navbar__item {
    padding: 0;
}

.navbar__item:hover {
    background-color: var(--color-secondary);
    border-radius: 10px;
}

.navbar__link {
    font-weight: 700;
    font-size: 1.3rem;
    padding: 1.5rem 1.5rem;
    color: var(--color-principal);
}

.navbar__search {
    /* position: relative; */
    position: absolute;
    right: 0px;
    display: flex;
    height: 100%;
}

.search__input {
    width: 0;
    height: 5rem;
    font-size: 1.6rem;
    background-color: var(--color-secondary);
    color: var(--color-principal);
    outline: none;
    border: none;
    transition: 200ms all ease-out;
}

.search__input::placeholder {
    color: var(--color-principal);
    padding: 0.5rem;
    opacity: 1;
}

.navbar__btn-search,
.navbar__mobile-btn {
    display: flex;
    align-items: center;
    background-color: var(--color-secondary);
    padding: 0.8rem 1.3rem;
    height: 5rem;
}

.navbar__btn-search .fa-solid,
.navbar__mobile-btn .fa-solid {
    cursor: pointer;
    color: var(--color-principal);
    font-size: 2.7rem;
}

/* Estilos Submenus */

.navbar__item:hover .navbar__submenu {
    opacity: 1;
    visibility: visible;
    transition: all 300ms ease-in-out;
}

.navbar__item:hover .submenu__carousel {
    display: block;
}

.navbar__submenu {
    opacity: 0;
    visibility: hidden;
    z-index: 9;
    overflow: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: var(--color-secondary);
    display: flex;
    flex-direction: row;
}

.navbar__submenu-small {
    left: auto;
    width: 20%;
    overflow: visible;
}

.navbar__submenu-small>.navbar__sublist {
    width: 100%;
}

.navbar__sublist {
    display: inline-block;
    padding: 1rem;
    width: 26%;
}

.sublist__item {
    padding: 0.1rem 0;
    position: relative;
    border-bottom: 1px solid var(--color-border-list);
}

.sublist__item:last-child {
    border: none;
}

.sublist__item:hover {
    background-color: var(--color-hover-sublist-item);
}

.sublist__link {
    color: var(--color-principal);
    padding: 0.5rem 1rem;
    font-size: 1.2rem;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    white-space: nowrap;
}

.sublist__dropdown {
    position: absolute;
    left: 100%;
    top: 0;
    padding: 1rem;
    width: 21rem;
    background-color: var(--color-principal);
    box-shadow: 2px 0px 2px -1px var(--color-shadow);
    visibility: hidden;
    opacity: 0;
    z-index: 9;
}

.sublist__item:hover .sublist__dropdown {
    opacity: 1;
    visibility: visible;
    transition: all 300ms ease-in-out;
}

.dropdown__item {
    border-bottom: 1px solid var(--color-border-list);
}

.dropdown__item:hover {
    background-color: var(--color-hover-sublist-item);
}

.dropdown__item:last-child {
    border: none;
}

.dropdown__link {
    color: var(--color-bg-navbar);
    padding: 0.5rem 1rem;
    font-size: 1.2rem;
    font-weight: 400;
    text-transform: uppercase;
}

/* Estilos carruseles submenus */
.carousel__menu {
    display: flex;
    flex-direction: row;
}

.carousel__item {
    flex-basis: 25%;
    position: relative;
}

.carousel__menu--small>.carousel__item {
    flex-basis: 25%;
}

.carousel__container-img {
    position: relative;
    width: calc(100% + 3.5rem);
    height: 35rem;
    overflow: hidden;
}

.carousel__img {
    height: 100%;
    width: auto;
}

.carousel__container-rating {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    width: 4.8rem;
    height: 4.8rem;
}

.container-rating__circle,
.rating__circle {
    width: 100%;
    height: 100%;
    padding: 0.2rem;
    border-radius: 3.2rem;
    background-color: var(--color-secondary);
}

.container-rating__border,
.rating__border,
.circle__border {
    width: 100%;
    height: 100%;
    border-radius: 3.2rem;
    border: 2px solid var(--color-principal);
    display: flex;
    justify-content: center;
    align-items: center;
}

.container-rating__mark,
.rating__mark,
.circle__mark {
    font-weight: 700;
    color: var(--color-principal);
}

.carousel__detail {
    position: absolute;
    top: 1.5rem;
    left: 0;
    right: 0;
    padding: 1rem;
    text-align: center;
}

.carousel__title:hover>.carousel__link {
    background-color: var(--color-secondary);
    border-radius: 0.5rem;
    color: rgb(65, 6, 6);
}

.carousel__link {
    color: var(--color-principal);
    font-size: 1.7rem;
    background-color: var(--color-shadow);
    text-shadow: 1px 1px 3px black;
    transition: all 300ms ease;
}
