/*!
Theme Name:  RayTheme
Theme URI: https://raylinaquino.com
Author: Raylin Aquino
Author URI: https://raylinaquino.com
Description:  RayTheme Template 
Version: 1.0.0
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rayelem
*/
:root {
    font-size: 10px;
    --primary: #203746;
    --secondary: #E40E20;
    --secondary-hover: #fb2f41;
    --lightgray: #F7F7F7;
    --lightgray2: #DFDFE2;
    --gray: #757575;
    --white: #fff;
}


body {
    margin: 0;
    padding: 0;
    font-family: 'Barlow', sans-serif;
    font-size: 1.6rem;
    line-height: 1.5;
    overflow-x: hidden;
    font-weight: 500;
}

strong,
b {
    font-weight: 700 !important;
}

.hide {
    display: none !important;
}


.trans-3 {
    transition: all .3s ease;
    -webkit-transition: all .3s ease;

}

.heading-font {
    font-family: "Frontage Condensed", Sans-serif !important;
}

.elementor-nav-menu--main .elementor-nav-menu .menu-item {
    position: relative;
}

.elementor-nav-menu--main .elementor-nav-menu .menu-item a {
    display: block;
    position: relative;
}

.head-main-menu .elementor-nav-menu--main .elementor-nav-menu .menu-item a:after {
    content: '' !important;
    display: block;
    background: url('/wp-content/uploads/2024/06/tamashi-figures.svg') center center no-repeat;
    width: 100%;
    height: 20px;
    position: absolute;
    bottom: -1rem;
    left: 0;
    background-size: 4rem auto;
    border: 0 !important;
}

.head-main-menu .elementor-nav-menu .menu-item.btn-ordenar a,
.head-main-menu .menu-item.btn-ordenar a {
    background: var(--secondary);
    border-radius: 1.5rem;
    color: var(--white) !important;
}

.head-main-menu .elementor-nav-menu--dropdown .menu-item.btn-ordenar a {
    margin: 1rem;
    display: inline-block
}

.elementor-nav-menu--main .elementor-nav-menu .menu-item.btn-ordenar a i,
.elementor-nav-menu--dropdown .menu-item.btn-ordenar a i {
    margin-left: 1rem;
    font-size: 70%;
}

.elementor-nav-menu--main .elementor-nav-menu .menu-item.btn-ordenar a:hover {
    opacity: .7;
}

.elementor-nav-menu--main .elementor-nav-menu .menu-item.btn-ordenar a:after {
    display: none;
}

/*Amelia*/
.amelia-v2-booking #amelia-container.am-fs__wrapper {
    margin-top: 6rem !important;
    margin-bottom: 0 !important;
}

.amelia-v2-booking {
    margin-top: -5rem;
}

.amelia-v2-booking #amelia-container .am-fs__main-footer {
    padding: 2rem !important;
}

.amelia-v2-booking #amelia-container .am-fs-sb__step-heading {
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
}

.amelia-v2-booking #amelia-container .am-button.am-button--default {

    font-weight: 600;
    padding: 0 4rem;
    height: 5rem;
    font-size: 1.8rem;
}

.amelia-v2-booking #amelia-container .am-fs__main-heading-inner-title {
    font-weight: 700 !important;
}

.elementor-location-header .elementor-sticky--effects {
    box-shadow: 0 0 2rem rgba(0, 0, 0, .1);
}

/*Box 1*/
.box1 {
    position: relative;
}

.box1:before {
    content: '';
    display: block;
    border: 1px solid rgb(255 255 255 / 50%);
    position: absolute;
    width: calc(100% - 2rem);
    height: calc(100% - 2rem);
    left: 1rem;
    top: 1rem;
    pointer-events: none;
    transition: all .3s ease;
}

.box1:hover:before {
    border-color: var(--white)
}

.box1 .elementor-widget-container {
    min-height: 32rem;
}

/* Contact Form */
.contact-form_wrapper {
    color: var(--white);
}

.gform_confirmation_message {
    background: var(--success);
    padding: 1rem 2rem;
    color: var(--white);
}

.contact-form_wrapper .gform_heading {
    display: none;
}

.contact-form_wrapper .gfield_label {
    font-weight: bold;
    font-size: 1.8rem;
}

.contact-form_wrapper.gform-theme--foundation .gfield .ginput_password.large,
.contact-form_wrapper.gform-theme--foundation .gfield input.large,
.contact-form_wrapper.gform-theme--foundation .gfield select.large {

    outline: none;
    box-shadow: none;
    font-size: 1.6rem;
    height: 5rem !important;
    color: var(--primary);
    font-weight: 500;
    font-family: 'Barlow', sans-serif;
    border: 1px solid #DFDFE2;
    border-radius: 1rem;
}

.contact-form_wrapper.gform-theme--foundation .gfield .ginput_password.large:focus,
.contact-form_wrapper.gform-theme--foundation .gfield input.large:focus,
.contact-form_wrapper.gform-theme--foundation .gfield select.large:focus,
.contact-form_wrapper.gform-theme--foundation .gfield textarea.large:focus {
    border-color: var(--primary)
}

.contact-form_wrapper.gform-theme--foundation .gfield textarea.large {
    min-height: 10rem !important;
    outline: none;
    box-shadow: none;
    border: 1px solid #DFDFE2;
    border-radius: 1rem;
    font-size: 1.6rem;
    font-weight: 500;
}

.contact-form_wrapper.gform-theme--foundation .gform_fields {
    gap: 2rem;
}

.contact-form_wrapper .gform_footer {
    justify-content: end;
}

.contact-form_wrapper .gform_footer .gform_button {
    background: var(--secondary) !important;
    border-radius: 1rem !important;
    height: 5.5rem !important;
    font-family: 'Barlow', sans-serif !important;
    font-size: 1.8rem !important;
    padding: 0 4rem !important;
    display: inline-block;
}

.contact-form_wrapper .gform_footer .gform_button:hover {
    background: var(--secondary-hover) !important;
}

/* BOX 1 */
.box1 {
    background: var(--white);
}

/* Menu Food */
.menu-food {
    position: relative;
}

.menu-food .food-categories {
    position: relative;
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin: 3rem 0 6rem;
    flex-wrap: wrap;
}

.menu-food .food-categories .cat {
    display: inline-flex;
    background: var(--lightgray);
    padding: 1rem 2rem;
    border-radius: 1rem;
    font-weight: bold;
    cursor: pointer;
    align-items: center;
    gap: 2rem;
    line-height: 1;
}

.menu-food .food-categories .cat:hover,
.menu-food .food-categories .cat.active {
    color: var(--white);
    background: var(--secondary);
}

.menu-food .food-categories .cat .circle {
    border-radius: 50%;
    width: 1.3rem;
    height: 1.3rem;
    background: var(--lightgray2);
    border: 3px solid transparent;
}

.menu-food .food-categories .cat:hover .circle,
.menu-food .food-categories .cat.active .circle {
    background: none;
    border-color: var(--white)
}


.menu-food .food-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 2rem;
}

.menu-food .food-list .card-food {
    border: 1px solid var(--lightgray2);
    border-radius: 2rem;
    overflow: hidden;
}

.menu-food .food-list .card-food .img {
    height: 20rem;
    background-color: #f1f1f1;
    background-size: cover;
    background-position: center;
}

.menu-food .food-list .card-food .info {
    padding: 3rem;
    border-top-left-radius: 3rem;
    background: var(--white);
    margin-top: -3rem;
}

.menu-food .food-list .card-food .info .title {
    font-weight: bold;
    color: var(--secondary);
    font-size: 2rem;
    margin: 0;
    line-height: 1;
    min-height: 4.5rem;
    display: flex;
    align-items: center;
}

.menu-food .food-list .card-food .info .desc {
    line-height: 1.2;
    font-size: 1.3rem;
    color: var(--gray);
    margin-top: 5px;
    min-height: 8rem;
}

.menu-food .food-list .card-food .info .wrap-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 2rem;
}

.menu-food .food-list .card-food .info .wrap-cta .price {
    font-weight: bold;
    color: var(--secondary);
    font-size: 1.8rem;
}

.menu-food .food-list .card-food .info .wrap-cta a {
    font-weight: bold;
    background: var(--secondary);
    color: var(--white);
    border-radius: 1rem;
    padding: .7rem 1.2rem;
    font-weight: 600;
    visibility: hidden;
    opacity: 0;
}

.menu-food .food-list .card-food .info .wrap-cta a i {
    margin-left: .7rem;
}

.menu-food .food-list .card-food .info .wrap-cta a:hover {
    background: var(--secondary-hover)
}

.menu-food .food-list .card-food:hover .info .wrap-cta a {
    visibility: visible;
    opacity: 1;
}

/*Sucursals */
.sucursals {
    display: flex;
    gap: 2rem;
}

.sucursals .wrap-list {
    flex: 0 0 50%;

}

.sucursals .wrap-list .search-box {
    position: relative;
}

.sucursals .wrap-list .search-box i {
    position: absolute;
    top: 2rem;
    left: 1.5rem;
    color: var(--secondary);
}

.sucursals .wrap-list .search-box {
    margin-bottom: 2rem;
}

.sucursals .wrap-list .search-box input {
    height: 5.2rem;
    width: 100%;
    border-radius: 1rem;
    border: 1px solid var(--lightgray2);
    padding: 0 2rem 0 4rem;
    font-size: 1.6rem;
    font-family: 'Barlow', sans-serif;
    outline: none;
    font-weight: 500;
}

.sucursals .wrap-list .search-box input:focus {
    border-color: var(--secondary);
}

.sucursals .wrap-list .sucursal-list {
    overflow-y: auto;
    height: 56rem;
    position: relative;
    mask-image: linear-gradient(to bottom, black calc(100% - 10rem), transparent 100%);
}

.sucursals .wrap-map {
    flex: 1;
}

.sucursals .map-sucursals {
    height: 30.5rem;
    margin-bottom: 2rem;
    border-radius: 2rem;
    border: 1px solid var(--lightgray2);
}

.sucursals .wrap-map .suc-img {
    height: 30.5rem;
    background-size: cover;
    background-position: center;
    display: block;
    border-radius: 2rem;
}

.sucursals .card-sucursal {
    display: flex;
    color: var(--primary);
    position: relative;
    margin-bottom: 1rem;
    gap: 0;
    border: 1px solid var(--lightgray2);
    border-radius: 2rem;
    overflow: hidden;
}

.sucursals .card-sucursal:hover,
.sucursals .card-sucursal.active {
    border-color: var(--secondary);
}



.sucursals.list .card-sucursal:before {
    display: none;
}

.sucursals .card-sucursal .wrap-icon {
    font-size: 4rem;
    z-index: 2;
}

.sucursals.list .card-sucursal .wrap-icon {
    font-size: 2.5rem;
}



.sucursals .card-sucursal:hover:before,
.sucursals .card-sucursal.active:before {
    opacity: 1;
}

.sucursals .card-sucursal address {
    margin: .5rem 0 1rem 0;
    font-style: inherit;
}

.sucursals .card-sucursal .wrap-info {
    z-index: 2;
    padding: 2.5rem 2rem;
}

.sucursals .card-sucursal .img {
    background-size: cover;
    flex: 0 0 21rem;
    border-bottom-right-radius: 3rem;
}

.sucursals.list .card-sucursal .img {
    display: none;
}

.sucursals .card-sucursal .title {
    margin: 0;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--secondary)
}

.sucursals .card-sucursal .hour {
    display: flex;
    gap: 1rem;
    font-size: 1.4rem;
}

.sucursals .card-sucursal .hour .icon {
    color: var(--secondary);
}

@media (max-width: 1200px) {
    .menu-food .food-list {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media (max-width: 900px) {
    .menu-food .food-list {
        grid-template-columns: 1fr 1fr;
    }

    .sucursals {
        display: block;
    }

    .sucursals .wrap-map {
        margin-top: 2rem;
    }


    .menu-food .food-group .list {
        gap: 7rem;
    }
}

@media (max-width:700px) {
    .menu-food .food-group .list aside .wrap-cta a {
        pointer-events: all;
        visibility: visible;
        opacity: 1;
    }

    .sucursals .wrap-list {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .sucursals .card-sucursal .wrap-icon {
        font-size: 2.8rem;
    }

    .sucursals .card-sucursal {
        display: block;
        margin-bottom: 2rem;
    }

    .sucursals .card-sucursal .img {
        height: 20rem;
    }

    .sucursals .card-sucursal .hour {
        font-size: 1.2rem;
    }

    .menu-food .food-group .list {
        grid-template-columns: 1fr;
        gap: 4rem;
    }

    .menu-food .heading {
        text-align: center;
        display: block;
    }

    .menu-food .heading .wrap-cta {
        text-align: center;
        display: block;
        margin-top: 2rem;
    }
}

@media (max-width:580px) {
    .menu-food .food-categories .cat {
        flex: 1;
    }

    .menu-food .food-list {
        grid-template-columns: 1fr;
    }

    .sucursals .wrap-map .suc-img {
        height: 20rem;
    }
}