/* ---MAIN STYLES---  transform: rotate(271deg); */

section {
    padding: 6%;
}

.info-title1 {
    top: 20vh;
    left: 12vw;
    position: absolute;
}

.info-title2 {
    position: absolute;
    left: 2vw;
    top: 16vh;
}

.info-title1 p,
.info-title2 p {
    line-height: 1;
    /* transform: rotate(180deg);
    writing-mode: vertical-rl;*/
    color: #fff;
    font-size: 1.5vw;
}

.title-box-3 {
    position: absolute;
    left: 58vw;
    top: 23vh;
    z-index: 1;
}

.title-box-3 p {
    color: #9c2a28;
    font-size: 60px;
    line-height: 1;
}

.title-box-3 a {
    color: #8a8a8a;
    font-size: 26px;
    line-height: 3;
}

.title-box-3 a:hover {
    color: #9c2a28;
}

.main_section {
    overflow: hidden;
    /*position: relative;*/
    padding: 15% 10% 2% 10%;
    background: radial-gradient(circle at 65% 0%, transparent 0%, transparent 29.9%, var(--yellow) 30%, var(--yellow) 44.9%, transparent 45%, transparent 100%);
}

.main_section .main_box {
    display: grid;
    grid-template-columns: 55% 45%;
}

.main_section .info_box {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 30px 0;
    padding-top: 5%;
}

.main_section h1 {
    color: var(--red-wine);
}

.main_section .light_txt {
    font-weight: 600;
}

.main_section .light_txt:first-child {
    font-size: 40px;
}

.main_section .light_txt:last-child {
    font-size: 38px;
    margin: 0 0 0 30px;
}

.main_section .bold_txt {
    font-size: 120px;
    font-weight: bold;
    line-height: .8;
}

.main_section p {
    width: 70%;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
}

.main_section .buttons_box {
    display: flex;
    align-items: center;
    gap: 0 40px;
}

.main_section .location_btn {
    color: var(--red-wine);
    font-size: 18px;
    font-weight: 600;
}

.main_section .location_btn:hover {
    color: var(--dark-gray)
}

.main_section .location_btn i {
    margin-right: 5px;
    transition: none;
}

.main_section .location_btn:hover i {
    animation: bounce 1s alternate;
}

.main_section .media_box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.main_section .media_box img:first-child {
    position: relative;
    z-index: 2;
}

.main_section .media_box img:not(:first-child) {
    position: absolute;
    filter: drop-shadow(20px 50px 15px #00000040);
}

.main_section .media_box img:nth-child(2) {
    top: -35%;
    right: 0;
    width: 80%;
    animation: leaf_move 30s alternate infinite;
    animation-delay: 2s;
    z-index: 1;
}

.main_section .media_box img:nth-child(3) {
    top: 25%;
    right: 0;
    width: 50%;
    animation: leaf_move 15s alternate-reverse infinite;
    z-index: 1;
}

.main_section .media_box img:nth-child(4) {
    top: 30%;
    left: -40%;
    width: 100%;
    animation: leaf_move 15s alternate infinite;
    z-index: 1;
}

.main_section .media_box img:nth-child(5) {
    top: 45%;
    left: -10%;
    width: 50%;
    animation: leaf_move 20s alternate-reverse infinite;
    z-index: 1;
}

.main_section .brush_img {
    width: 36vw;
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(40%);
    z-index: 9;
}

@media (max-width: 996px) {
    .main_section {
        padding: 50% 6% 20% 6%;
    }
    .main_section .light_txt:last-child {
        font-size: 30px;
        margin: 0 0 0 25px;
    }
    .main_section .bold_txt {
        font-size: 64px;
    }
    .main_section .light_txt:first-child {
        font-size: 32px;
    }
    .main_section .main_box {
        grid-template-columns: 100% !important;
    }
}


/* ---ABOUT STYLES--- */

.about_section {
    position: relative;
    background: radial-gradient(circle at -10% 50%, var(--red-wine) 20.9%, transparent 21%, transparent 100%);
}

.about_section .about_box {
    display: grid;
    grid-template-columns: 50% 50%;
}

.about_section .media_box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.about_section .media_box::before {
    content: "";
    position: absolute;
    top: 5%;
    right: 10%;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: #478114;
    mix-blend-mode: multiply;
    transform-origin: top right;
    animation: pulse_color 20s alternate infinite;
    z-index: 2;
}

.about_section .toucan_img {
    position: relative;
    width: 65%;
    filter: drop-shadow(20px 30px 15px #00000040);
    z-index: 1;
}

.about_section .places_box {
    position: absolute;
    top: 20%;
    left: 0;
    width: 50%;
    border-radius: 50%;
    overflow: hidden;
    z-index: 0;
}

.about_section .brush_img {
    position: absolute;
    top: 55%;
    left: 0;
    transform: translateY(-50%);
    width: 12%;
    opacity: .6;
}

.about_section .info_box {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about_section h2 {
    color: var(--red-wine);
    font-size: 80px;
    line-height: .9;
}

.about_section .st_txt {
    font-size: 40px;
    font-weight: 600;
}

.about_section p {
    font-weight: 500;
}

.yellow_box>.flor2 {
    position: absolute;
    width: 500px;
    top: -58%;
    animation: leaf_move 30s alternate infinite;
    animation-delay: 2s;
    left: 58%;
}

@media (max-width: 996px) {
    .about_section .brush_img {
        top: 28%;
        left: 82%;
        width: 18%;
        transform: rotate(180deg);
    }
    .about_section {
        background: radial-gradient(circle at 136% 36%, var(--red-wine) 23.9%, transparent 25%, transparent 97%);
    }
    .about_section .about_box {
        grid-template-columns: 100%;
    }
}


/*---FOOD STYLES--- */

.food_section {
    position: relative;
    overflow: hidden;
    padding: 8% 4%;
}

.food_section .plates_box {
    display: flex;
    justify-content: center;
}

.food_section .plates_box>div {
    height: 50vh;
    width: 23vw;
    padding: 1vw;
    border-radius: 100px;
}

.food_section .red_box {
    margin-bottom: 25%;
    transform: translateX(10%);
    background: #981f1df0;
}

.food_section .yellow_box {
    margin-top: 36vh;
    transform: translateX(-8%);
    background: #f89513f0;
}

.food_section .red_box::before {
    content: "";
    position: absolute;
    background-color: #9c2a28;
    height: 140px;
    width: 100px;
    top: -20%;
    left: 150%;
    border-radius: 50px;
}

.food_section .red_box::after {
    content: "";
    position: absolute;
    background-color: #f89513f0;
    height: 170px;
    width: 120px;
    top: -10%;
    left: 170%;
    border-radius: 20px;
}

.food_section .yellow_box::before {
    content: "";
    position: absolute;
    background-color: #9c2a28;
    height: 170px;
    width: 130px;
    top: 50%;
    left: -60%;
    border-radius: 20px;
}

.food_section .yellow_box::after {
    content: "";
    position: absolute;
    background-color: #f89513f0;
    height: 120px;
    width: 80px;
    top: 18%;
    left: -33%;
    border-radius: 50px;
}

.food_section .red_box .plate_item {
    display: grid;
    grid-template-columns: 70% 30%;
}

.food_section .red_box img {
    filter: drop-shadow(13px 3px 16px rgba(0, 0, 0, 0.5));
    transform: translateX(-30%);
    position: absolute;
}

.food_section .yellow_box .plate_item {
    display: grid;
    grid-template-columns: 30% 70%;
}

.food_section .yellow_box .plate_item img {
    filter: drop-shadow(-16px -3px 16px rgba(0, 0, 0, 0.5));
    transform: translateX(6vw);
    position: absolute;
}

.food_section>img {
    position: absolute;
    z-index: -1;
    width: 14%;
}

.food_section .st_brush {
    top: 30%;
    left: 0;
}

.food_section .nd_brush {
    top: 0;
    right: 0;
}

.hojas>.hoja1 {
    top: 2%;
    left: -30%;
    width: 75%;
    animation: leaf_move 15s alternate-reverse infinite;
    z-index: 0;
}

.hojas>.hoja2 {
    top: 45%;
    right: 52%;
    width: 80%;
    animation: leaf_move 12s alternate-reverse infinite;
    z-index: 0;
}

.plates_slick>div>.slick-track {
    height: 66vh;
}


/*  Galeria */

.food_section2 {
    position: relative;
    padding: 6% 28vw;
}

.food_section2>img {
    position: absolute;
    z-index: -1;
    width: 18%;
}

.food_section2 .nd_brush {
    top: 50%;
    left: 0;
    z-index: -2;
    transform: rotate(180deg);
}

.food_section2 .st_brush {
    top: 24%;
    right: 0;
    transform: rotate(180deg);
}

.food_section2 .st_brushv2 {
    top: 24%;
    right: 0;
}

.food_section2 .st_brush2 {
    top: 1%;
    left: 0;
}

.grid-container {
    display: grid;
}

.grid-item {
    text-align: center;
}

.item1 {
    grid-column: 1 / span 2;
    grid-row: 1 / span 5;
    height: 320px;
}

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

.item3 {
    grid-column: 3 / span 2;
    grid-row: 5 / span 4;
}

.item4 {
    grid-column: 4;
    grid-row: 5 / span 4;
}

.item5 {
    grid-column: 1 / span 2;
    grid-row: 6;
    height: 240px;
}

.item6 {
    grid-column: 1 / span 2;
    grid-row: 10 / span 3;
    height: 320px;
}

.item7 {
    grid-column: 3 / span 2;
    grid-row: 9 / span 4;
}

.grid-container .grid-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
}

.grid-container .grid-item {
    position: relative;
    overflow: hidden;
}

.grid-container .grid-item:hover img {
    transform: scale(1.2);
    cursor: pointer;
}

.plates_slick .slick-list {
    overflow: inherit !important;
}

.slider-index .slick-list {
    overflow: inherit !important;
}

.slider-index {
    z-index: 19;
}

.scale-img {
    transform: scale(1.1);
}

.happy-hour {
    position: relative;
    padding: 16% 20%;
    background: radial-gradient(circle at 44% 28%, transparent 14%, var(--yellow) 14%, var(--yellow) 22%, transparent 22%)
}

.happy-hour>div {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.happy-hour div div p {
    color: #fff;
}

.happy-hour div .square {
    display: flex;
    gap: 18px;
    flex-direction: column;
    width: 26vw;
    background-color: #9c2a28db;
    padding: 12% 6%;
    border-radius: 50px;
}

.square::after {
    content: "";
    position: absolute;
    background-color: #f89513f0;
    height: 20%;
    width: 10vw;
    top: 30%;
    left: 8vw;
    border-radius: 50px;
}

.square::before {
    content: "";
    position: absolute;
    background-color: #f89513f0;
    height: 20%;
    width: 10vw;
    top: 65%;
    left: 72vw;
    border-radius: 50px;
}

.planta-02 {
    width: 26vw;
    position: absolute;
    left: 56vw;
    top: 48%;
}

.planta-01 {
    width: 23vw;
    position: absolute;
    left: 58vw;
    top: 60%;
}

.planta-03 {
    width: 30vw;
    position: absolute;
    left: 52vw;
    top: 24%;
    transform: rotate(20deg);
}

.planta-01,
.planta-02 {
    animation: leaf_move 15s alternate-reverse infinite;
}

.square .p1 {
    font-size: 2vw;
    font-weight: 600;
}

.square .p2 {
    font-size: 6vw;
    font-weight: 600;
}

.square .p3 {
    font-size: 2vw;
}

.drink {
    width: 28vw;
    z-index: 1;
    position: absolute;
}

@media (max-width: 996px) {
    .food_section .yellow_box .plate_item img {
        filter: drop-shadow(-16px -3px 16px rgba(0, 0, 0, 0.5));
        /*transform: translateX(6vw);*/
        transform: translateY(20vw);
        position: absolute;
    }
    .food_section .plates_box {
        flex-direction: column;
    }
    .planta-03 {
        width: 50vw;
        position: absolute;
        left: 12vw;
        top: 58%;
        transform: rotate(20deg);
    }
    .drink {
        position: relative;
        width: 80vw;
    }
    .planta-01 {
        width: 40vw;
        position: absolute;
        left: 30vw;
        top: 80%;
    }
    .planta-02 {
        width: 40vw;
        position: absolute;
        left: 33vw;
        top: 73%;
    }
    .square::after {
        height: 14%;
        width: 10vw;
        top: 30%;
        left: 1vw;
    }
    .square::before {
        height: 14%;
        width: 10vw;
        top: 66%;
        left: 80vw;
    }
    .happy-hour {
        background: radial-gradient(circle at 70% 25%, transparent 14%, var(--yellow) 14%, var(--yellow) 22%, transparent 22%);
    }
    .square .p1 {
        font-size: 5vw;
        font-weight: 600;
    }
    .square .p2 {
        font-size: 10vw;
        font-weight: 600;
    }
    .square .p3 {
        font-size: 4vw;
    }
    .happy-hour>div {
        grid-template-columns: 1fr;
    }
    .happy-hour {
        position: relative;
        padding: 16% 12%;
        z-index: -1;
    }
    .happy-hour div .square {
        width: 80vw;
        text-align: center;
    }
    .food_section {
        padding: 20% 2%;
    }
    .main_section .info_box {
        padding-top: 0;
    }
    .food_section2 {
        padding: 6% 8%;
    }
    .item1 {
        grid-column: 1 / span 4;
        grid-row: 1;
        height: 240px;
    }
    .item2 {
        grid-column: 1 / span 4;
        grid-row: 2;
        height: 240px;
    }
    .item3 {
        grid-column: 1 / span 4;
        grid-row: 3;
        height: 240px;
    }
    .item4 {
        grid-column: 3 / span 2;
        grid-row: 3;
    }
    .item5 {
        grid-column: 1 / span 4;
        grid-row: 5;
        height: 240px;
    }
    .item6 {
        grid-column: 1 / span 4;
        grid-row: 6;
        height: 240px;
    }
    .item7 {
        grid-column: 1 / span 4;
        grid-row: 7;
        height: 240px;
    }
    .yellow_box>.flor2 {
        width: 400px;
        top: -40%;
        left: 35%;
    }
    .main_section .brush_img {
        width: 40%;
        transform: translateY(36%);
    }
    .main_section .info_box {
        order: 2;
    }
    .about_section .st_txt {
        font-size: 32px;
    }
    .about_section h2 {
        font-size: 40px;
    }
    .about_section .places_box {
        position: absolute;
        top: -12%;
        left: -20px;
        width: 72%;
    }
    .about_section .media_box::before {
        width: 100px;
        height: 100px;
    }
    .title-box-3 {
        position: revert;
        text-align: center;
        left: 62vw;
    }
    .info-title2 {
        left: 3vw;
        top: 3vh;
    }
    .info-title1 {
        top: 62%;
        left: 40%;
        position: absolute;
    }
    .info-title1 p,
    .info-title2 p {
        font-size: 22px;
    }
    .food_section .yellow_box::before {
        content: "";
        position: absolute;
        background-color: #9c2a28;
        height: 80px;
        width: 70px;
        top: 50%;
        left: -60%;
        border-radius: 20px;
    }
    .food_section .yellow_box::after {
        content: "";
        position: absolute;
        background-color: #f89513f0;
        height: 70px;
        width: 50px;
        top: 33%;
        left: -33%;
        border-radius: 30px;
    }
    .food_section .red_box::after {
        content: "";
        position: absolute;
        background-color: #f89513f0;
        height: 56px;
        width: 50px;
        top: -22%;
        left: 150%;
        border-radius: 20px;
    }
    .food_section .red_box::before {
        content: "";
        position: absolute;
        background-color: #9c2a28;
        height: 60px;
        width: 40px;
        top: -24%;
        left: 112%;
        border-radius: 30px;
    }
    .title-box-3 a {
        color: #8a8a8a;
        font-size: 18px;
    }
    .food_section .red_box {
        margin-bottom: 2%;
    }
    .food_section .plates_box>div {
        height: 50vh;
        width: 88%;
        padding: 2%;
        border-radius: 50px;
    }
    .food_section .yellow_box {
        margin-top: 40%;
        transform: translateX(8%);
    }
    .food_section .red_box {
        transform: translateX(8%);
    }
    .title-box-3 p {
        font-size: 38px;
        line-height: 1.2;
    }
    .food_section .red_box img {
        /*transform: translateX(-8%);*/
        transform: translateY(-12%);
    }
}

.fa-chevron-right:before,
.fa-chevron-left:before {
    color: #f89513;
}

.fa-chevron-right:before:hover,
.fa-chevron-left:before:hover {
    color: #fafafa;
}

.btn-close {
    position: fixed;
    top: 10%;
    right: 3%;
    font-size: 36px;
    color: #f89513;
}

.btn-close:hover {
    color: rgb(194, 194, 194);
}

.food_section2>.grid-item:hover {
    filter: brightness(0.5);
    cursor: pointer;
}

.grid-container>.grid-item:hover {
    filter: brightness(0.7);
    cursor: pointer;
}

@media (max-width: 996px) {
    .food_section2 {
        background: radial-gradient(circle at 60% 0%, transparent 0%, transparent 5%, var(--yellow) 4%, var(--yellow) 8%, transparent 0%, transparent 100%);
    }
    .section-gallery {
        padding: 40% 6%;
    }
    .btn-close {
        position: fixed;
        top: 20%;
        right: 3%;
        font-size: 26px;
        color: #fff;
    }
    .grid-container {
        grid-template-columns: 1fr;
    }
}


/* ---LIGHTBOX STYLES--- */

.lightbox_section {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    opacity: 0;
    pointer-events: none;
    transition: .25s;
    z-index: 92;
}

.lightbox_active {
    opacity: 1;
    pointer-events: initial;
}

.lightbox_section .lightbox_box {
    position: relative;
    width: 60%;
    z-index: 93;
}

.lightbox_section .lightbox_box i {
    position: absolute;
    color: var(--turquoise);
    font-size: 50px;
    cursor: pointer;
}

.lightbox_section .lightbox_box i:hover {
    color: white;
}

.lightbox_section .prev_modal {
    top: 50%;
    left: -10%;
    transform: translateY(-50%)
}

.lightbox_section .next_modal {
    top: 50%;
    right: -10%;
    transform: translateY(-50%)
}

.lightbox_section .blur_box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000000d0;
    z-index: 92;
}

.modal_box {
    text-align: center;
}

@media (max-width: 996px) {
    .lightbox_section .lightbox_box {
        width: 92%;
    }
    .lightbox_section .lightbox_box i {
        font-size: 30px;
    }
    .lightbox_section .prev_modal {
        left: -9%;
    }
    .lightbox_section .next_modal {
        right: -9%;
    }
}