:root {
    interpolate-size: allow-keywords;
}

html:not(.block-editor-iframe__html) {
    scroll-behavior: smooth;
}

@media (max-width: 991px) {
    .is-hidden-mobile {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .is-hidden-desktop {
        display: none !important;
    }
}

:where(.wp-block-group.has-background) {
    padding: 0;
}

@media (max-width: 991px) {
    .wp-block-image.is-style-cover img {
        aspect-ratio: 2/3;
        object-fit: cover;
    }
}

.has-border-black {
    border: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
}

/* ========== SITE LOGO ========== */
.wp-block-site-logo.is-default-size img {
    width: 7rem;
}

@media (min-width: 992px) {
    .wp-block-site-logo.is-default-size img {
        width: 9rem;
    }
}

/* ========== COLUMNS ========== */
@media (max-width: 991px) {
    .wp-block-columns {
        flex-wrap: wrap !important;
    }

    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }
}

@media (min-width: 992px) {
    .wp-block-columns {
        flex-wrap: nowrap !important;
    }

    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 0;
        flex-grow: 1;
    }
}

/* ========== GALLERY ========== */
@media (max-width: 991px) {
    .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
        width: 100%;
    }
}

.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img {
    aspect-ratio: 3/2;
}

/* ========== PHOTOSWIPE ========== */
.pswp .pswp__bg {
    background-color: var(--wp--preset--color--white);
    opacity: 0.2;
}

.pswp .pswp__button.pswp__button--arrow--next,
.pswp .pswp__button.pswp__button--arrow--prev,
.pswp .pswp__button.pswp__button--close {
    width: 2.75rem;
    height: 2.75rem;
    padding: 0.5rem;
    opacity: 1;
    border-radius: var(--wp--preset--border-radius--full);
}

.pswp .pswp__button.pswp__button--arrow--next,
.pswp .pswp__button.pswp__button--arrow--prev,
.pswp .pswp__button.pswp__button--close,
.pswp .pswp__button.pswp__button--arrow--next:hover,
.pswp .pswp__button.pswp__button--arrow--prev:hover,
.pswp .pswp__button.pswp__button--close:hover {
    color: var(--wp--preset--color--gray-900);
    background: var(--wp--preset--color--gray-100);
    border: 2px solid var(--wp--preset--color--gray-900);
    box-shadow: var(--wp--preset--shadow--sm);
}

.pswp .pswp__button.pswp__button--close {
    margin-top: var(--wp--preset--spacing--16);
    margin-right: var(--wp--preset--spacing--16);
}

.pswp .pswp__button.pswp__button--arrow--next,
.pswp .pswp__button.pswp__button--arrow--prev {
    margin-top: -1.375rem;
}

.pswp .pswp__button.pswp__button--arrow--next {
    right: 1rem;
}

.pswp .pswp__button.pswp__button--arrow--prev {
    left: 1rem;
}

@media (min-width: 992px) {
    .pswp .pswp__button.pswp__button--arrow--next {
        right: 4rem;
    }

    .pswp .pswp__button.pswp__button--arrow--prev {
        left: 4rem;
    }
}

.pswp .pswp__img {
    border-radius: 0.25rem;
}

.pswp .pswp__zoom-wrap[style*="transition: none"] .pswp__img {
    border-radius: 1rem;
}

/* ========== IMAGE COVER ========== */
@media (max-width: 991px) {
    .wp-block.is-style-cover img {
        aspect-ratio: 2/3;
        object-fit: cover;
        border-radius: var(--wp--preset--border-radius-sm);
    }
}

@media (min-width: 992px) {
    .wp-block.is-style-cover img {
        border-radius: var(--wp--preset--border-radius-lg);
    }
}

/* ========== BUTTON ========== */
.wp-element-button.wp-block-button__link {
    display: flex;
    justify-content: center;
    gap: var(--wp--preset--spacing--8);
    padding: 0.75rem 1.5rem;
    transition: all 0.2s ease;
}

@media (min-width: 992px) {
    .wp-element-button.wp-block-button__link {
        padding: 1rem 2rem;
    }
}

.wp-block-button.is-style-outline .wp-block-button__link {
    color: var(--wp--preset--color--brand-500);
    background: none;
    border-color: var(--wp--preset--color--brand-500);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: var(--wp--preset--color--gray-900);
    border-color: var(--wp--preset--color--gray-900);
    box-shadow: var(--wp--preset--shadow--sm);
}

.wp-block-button.is-style-fill-white .wp-block-button__link {
    color: var(--wp--preset--color--gray-900);
    background-color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-fill-white .wp-block-button__link:hover {
    color: var(--wp--preset--color--white);
    background-color: var(--wp--preset--color--gray-900);
    border-color: var(--wp--preset--color--white);
    box-shadow: var(--wp--preset--shadow--sm-white);
}

.wp-block-button.is-style-delivery .wp-block-button__link {
    min-width: 3rem;
    aspect-ratio: 1/1;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--wp--preset--color--gray-900);
    border-radius: var(--wp--preset--spacing--8);
    box-shadow: var(--wp--preset--shadow--sm);
}

.wp-block-button.is-style-delivery .wp-block-button__link img {
    width: 100%;
    height: auto;
}

.wp-block-button__icon {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
}

.wp-block-button__link .wp-block-button__icon.is-icon-before {
    margin-left: -0.5rem;
}

.wp-block-button__link .wp-block-button__icon.is-icon-after {
    margin-right: -0.5rem;
}

/* ========== PYRABAR HERO ========== */
.wp-block-pyrabar-section-hero {
    position: relative;
    overflow: hidden;
}

.wp-block-pyrabar-section-hero .wp-block-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.wp-block-pyrabar-section-hero .wp-block-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (min-width: 992px) {
    .wp-block-pyrabar-section-hero .wp-block-image img {
        object-position: right center;
    }
}

.wp-block-pyrabar-section-hero__content {
    position: relative;
    justify-content: center;
    gap: var(--wp--preset--spacing--8);
    height: 41.125rem;
    padding: var(--wp--preset--spacing--64-96) var(--wp--preset--spacing--16);
    pointer-events: none;
}

.wp-block-pyrabar-section-hero__content > * {
    pointer-events: auto;
}

@media (min-width: 992px) {
    .wp-block-pyrabar-section-hero__content {
        gap: var(--wp--preset--spacing--16-24);
        padding: var(--wp--preset--spacing--128-192) var(--wp--preset--spacing--48-64);
    }
}

@media (max-width: 991px) {
    .wp-block-pyrabar-section-hero .wp-block-pyrabar-section-hero__actions {
        margin-top: auto;
    }

    .wp-block-pyrabar-section-hero__actions .wp-block-button {
        width: 100%;
    }
}

/* ========== PYRABAR IMAGE TEXT ========== */
.wp-block-pyrabar-image-text {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--32);
}

@media (min-width: 992px) {
    .wp-block-pyrabar-image-text {
        flex-direction: row;
    }
}

.wp-block-pyrabar-image-text__image img {
    border: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
}

@media (min-width: 992px) {
    .wp-block-pyrabar-image-text__image {
        flex: 1;
        order: 1;
    }

    .wp-block-pyrabar-image-text__content {
        flex: 1;
    }
}

/* ========== PYRABAR MENU ACTIONS ========== */
.wp-block-pyrabar-menu-actions {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--16);
}

@media (min-width: 992px) {
    .wp-block-pyrabar-menu-actions {
        flex-direction: row;
        justify-content: space-between;
    }
}

@media (max-width: 991px) {
    .wp-block-pyrabar-menu-actions .wp-block-button {
        flex-basis: 100%;
        width: 100%;
    }

    .wp-block-pyrabar-menu-actions .wp-block-button .wp-block-button__link {
        width: 100%;
    }
}

/* ========== PYRABAR CARD PLACE ========== */
.wp-block-pyrabar-card-place {
    position: relative;
}

.wp-block-pyrabar-card-place__image img {
    width: 100%;
    height: auto;
}

.wp-block-pyrabar-card-place__content {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}

@media (min-width: 992px) {
    .wp-block-pyrabar-card-place__content {
        opacity: 0;
        background-color: var(--wp--preset--color--brand-500);
    }

    .wp-block-pyrabar-card-place:hover .wp-block-pyrabar-card-place__content {
        opacity: 1;
    }
}

.wp-block-pyrabar-card-place__content a {
    text-decoration: none;
}

.wp-block-pyrabar-card-place__content a::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ========== PYRABAR CARD PARTNER ========== */
.wp-block-pyrabar-card-partner {
    height: 100%;
}

.wp-block-pyrabar-card-partner__image {
    border-bottom: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
}

/* ========== PYRABAR SECTION MENU ========== */
.wp-block-pyrabar-section-menu__content {
    height: 0;
    overflow: hidden;
    transition: height 0.2s ease;
}

.wp-block-pyrabar-section-menu .wp-block-pyrabar-button-toggle.is-active + .wp-block-pyrabar-section-menu__content {
    height: auto;
}

/* ========== PYRABAR SECTION FOOD ========== */
.wp-block-pyrabar-section-food {
    position: relative;
}

@media (max-width: 991px) {
    .wp-block-pyrabar-section-food img {
        aspect-ratio: 3/2;
        object-fit: cover;
    }
}

@media (min-width: 992px) {
    .wp-block-pyrabar-section-food img {
        width: 100%;
        height: auto;
    }
}

/* ========== PYRABAR NAVIGATION ========== */
.wp-block-pyrabar-navigation {
    position: sticky;
    z-index: 9999;
    top: 0;
    left: 0;
    background: var(--wp--preset--color--white);
}

.is-scrolling-up .wp-block-pyrabar-navigation,
.is-scrolling-down .wp-block-pyrabar-navigation {
    border-bottom: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
}

@media (min-width: 992px) {
    .wp-block-pyrabar-navigation {
        transition: all 0.2s ease;
    }

    .is-scrolling-down .wp-block-pyrabar-navigation {
        border-bottom: none;
        transform: translateY(-100%);
    }
}

.wp-block-pyrabar-navigation__desktop {
    padding-top: var(--wp--preset--spacing--16);
    padding-bottom: var(--wp--preset--spacing--16);
}

@media (min-width: 992px) {
    .wp-block-pyrabar-navigation__desktop {
        padding-top: var(--wp--preset--spacing--16-24);
        padding-bottom: var(--wp--preset--spacing--16-24);
    }
}

@media (max-width: 991px) {
    .wp-block-pyrabar-navigation .wp-block-pyrabar-navigation__mobile {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        overflow: hidden;
        visibility: hidden;
        position: absolute;
        z-index: 999;
        top: 4.24rem;
        left: 0;
        width: 100dvw;
        height: 0;
        margin: 0;
        padding-bottom: env(safe-area-inset-bottom);
        background-color: var(--wp--preset--color--white);
        border-top: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
        transition: all 0.2s ease;
    }

    .wp-block-pyrabar-navigation:has(.wp-block-pyrabar-navigation-button.is-active) .wp-block-pyrabar-navigation__mobile {
        visibility: visible;
        overflow-y: scroll;
        overscroll-behavior: contain;
        height: calc(100dvh - 4.25rem);
    }
}

@media (min-width: 992px) {
    .wp-block-pyrabar-navigation .wp-block-pyrabar-navigation__mobile {
        display: none;
    }
}

.wp-block-pyrabar-navigation .wp-block-navigation-item__content {
    display: block;
    padding: 0.625rem 1.5rem;
    font-size: var(--wp--preset--font-size--medium);
    font-weight: bolder;
    line-height: 1.5rem;
    border: 2px solid var(--wp--preset--color--gray-900);
    border-radius: var(--wp--preset--border-radius--full);
    box-shadow: var(--wp--preset--shadow--sm);
    transition: all 0.2s ease;
}

.wp-block-pyrabar-navigation .wp-block-navigation-item__content:hover {
    color: var(--wp--preset--color--brand-500);
    border-color: var(--wp--preset--color--brand-500);
    box-shadow: var(--wp--preset--shadow--sm-brand);
}

.wp-block-pyrabar-navigation__mobile__menu .wp-block-navigation-item {
    width: 100%;
    border-bottom: var(--wp--preset--spacing--2-4) solid var(--wp--preset--color--gray-900);
}

.wp-block-pyrabar-navigation__mobile__menu .wp-block-navigation-item__content {
    display: block;
    width: 100%;
    padding: var(--wp--preset--spacing--16);
    font-size: var(--wp--preset--font-size--x-large);
    line-height: 1.2;
    color: var(--wp--preset--color--gray-900);
    border: none;
    border-radius: initial;
    box-shadow: none;
}

.wp-block-pyrabar-navigation__mobile__menu .wp-block-navigation-item__content:hover {
    color: var(--wp--preset--color--gray-900);
    border: none;
    border-radius: initial;
    box-shadow: none;
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-navigation-collapse .wp-block-navigation-item {
    border-bottom-color: var(--wp--preset--color--white);
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-navigation-collapse .wp-block-navigation-item:last-child {
    border-bottom: none;
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-navigation-collapse .wp-block-navigation-item__content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    gap: var(--wp--preset--spacing--8-16);
    color: var(--wp--preset--color--white);
    padding-left: var(--wp--preset--spacing--32);
    padding-right: var(--wp--preset--spacing--22);
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-navigation-collapse .wp-block-navigation-item__content::after {
    content: "";
    display: block;
    width: 1.5rem;
    height: 1.5rem;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.175 13H4V11H16.175L10.575 5.4L12 4L20 12L12 20L10.575 18.6L16.175 13Z' fill='white'/%3E%3C/svg%3E");
    background-size: 100% 100%;
    transition: all 0.2s ease;
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-section-contact {
    padding: var(--wp--preset--spacing--16-32) !important;
    border: none !important;
    border-radius: !important;
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-section-contact .wp-block-columns {
    gap: 2rem;
}

.wp-block-pyrabar-navigation .wp-block-pyrabar-section-contact .wp-block-column {
    padding: var(--wp--preset--spacing--16-32);
}
