/* CSS for Events pages */
/* Dark Pink Events Page */
.h-scroll__section.has-darkpink-background-color {
        background-color: #833D57 !important;
        color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .heading,
.h-scroll__section.has-darkpink-background-color .copy,
.h-scroll__section.has-darkpink-background-color .btn {
        color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .heading a,
.h-scroll__section.has-darkpink-background-color .copy a,
.h-scroll__section.has-darkpink-background-color .btn a {
        color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .btn::before {
        background-color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .copy ul li::marker {
        color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .copy ol li::before {
        background-color: #fff;
        color: #dc5773
}

.h-scroll__section.has-darkpink-background-color .single-link {
        border-color: rgba(255, 255, 255, 0.3) !important
}

.h-scroll__section.has-darkpink-background-color .single-link:hover {
        border-color: #fff !important
}

.h-scroll__section.has-darkpink-background-color .single-link h3 {
        color: #fff !important
}

/* Magenta Events Page */
.h-scroll__section.has-magenta-background-color {
        background-color: #3F131F !important;
        color: #fff !important
}

.h-scroll__section.has-magenta-background-color .heading,
.h-scroll__section.has-magenta-background-color .copy,
.h-scroll__section.has-magenta-background-color .btn {
        color: #fff !important
}

.h-scroll__section.has-magenta-background-color .heading a,
.h-scroll__section.has-magenta-background-color .copy a,
.h-scroll__section.has-magenta-background-color .btn a {
        color: #fff !important
}

.h-scroll__section.has-magenta-background-color .btn::before {
        background-color: #fff !important
}

.h-scroll__section.has-magenta-background-color .copy ul li::marker {
        color: #fff !important
}

.h-scroll__section.has-magenta-background-color .copy ol li::before {
        background-color: #fff;
        color: #dc5773
}


/* Restaurant page css */
.h-scroll__section.has-restaurant-background-color {
        background-color: #EBD9C4 !important;
        color: #BDA877 !important
}

.h-scroll__section.has-restaurant-background-color .heading {
        color: #ffffff !important
}

.h-scroll__section.has-restaurant-background-color .copy,
.h-scroll__section.has-restaurant-background-color .btn {
        color: #BDA877 !important
}

/* Restaurant Penn page css */
.h-scroll__section.has-penn-background-color {
        background-color: #597E53 !important;
        color: #fff !important
}

.h-scroll__section.has-penn-background-color .heading,
.h-scroll__section.has-penn-background-color .copy,
.h-scroll__section.has-penn-background-color .btn {
        color: #fff !important
}

.h-scroll__section.has-penn-background-color .heading a,
.h-scroll__section.has-penn-background-color .copy a,
.h-scroll__section.has-penn-background-color .btn a {
        color: #fff !important
}

.h-scroll__section.has-penn-background-color .btn::before {
        background-color: #fff !important
}

.h-scroll__section.has-penn-background-color .copy ul li::marker {
        color: #fff !important
}

.h-scroll__section.has-penn-background-color .copy ol li::before {
        background-color: #fff;
        color: #dc5773
}

.h-scroll__section.has-penn-background-color .single-link {
        border-color: rgba(255, 255, 255, 0.3) !important
}

.h-scroll__section.has-penn-background-color .single-link:hover {
        border-color: #fff !important
}

.h-scroll__section.has-penn-background-color .single-link h3 {
        color: #fff !important
}

/* Tea Room page css */
.h-scroll__section.has-dusty-rose-background-color {
        background-color: #CB8D8F !important;
        color: #fff !important
}

.h-scroll__section.has-tearoom-background-color {
        background-color: #ADC9B7 !important;
        color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .heading,
.h-scroll__section.has-dusty-rose-background-color .copy,
.h-scroll__section.has-dusty-rose-background-color .btn,
.h-scroll__section.has-tearoom-background-color .heading,
.h-scroll__section.has-tearoom-background-color .copy,
.h-scroll__section.has-tearoom-background-color .btn {
        color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .heading a,
.h-scroll__section.has-dusty-rose-background-color .copy a,
.h-scroll__section.has-dusty-rose-background-color .btn a,
.h-scroll__section.has-tearoom-background-color .heading a,
.h-scroll__section.has-tearoom-background-color .copy a,
.h-scroll__section.has-tearoom-background-color .btn a {
        color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .btn::before,
.h-scroll__section.has-tearoom-background-color .btn::before {
        background-color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .copy ul li::marker,
.h-scroll__section.has-tearoom-background-color .copy ul li::marker {
        color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .copy ol li::before,
.h-scroll__section.has-tearoom-background-color .copy ol li::before {
        background-color: #fff;
        color: #dc5773
}

.h-scroll__section.has-dusty-rose-background-color .single-link,
.h-scroll__section.has-tearoom-background-color .single-link {
        border-color: rgba(255, 255, 255, 0.3) !important
}

.h-scroll__section.has-dusty-rose-background-color .single-link:hover,
.h-scroll__section.has-tearoom-background-color .single-link:hover {
        border-color: #fff !important
}

.h-scroll__section.has-dusty-rose-background-color .single-link h3,
.h-scroll__section.has-tearoom-background-color .single-link h3 {
        color: #fff !important
}

/* header variant logos — present-restaurant.html (js/header-variant-logos.js)
   Tune --header-penn-logo-* / --header-tea-logo-* to size each variant independently.
   !important overrides critical.css (.header-logo img { width: 98px }). */
body[data-header-variant-logos] {
        --header-penn-logo-width: 68px;
        --header-penn-logo-height: auto;
        --header-tea-logo-width: 68px;
        --header-tea-logo-height: auto;
        --header-pianobar-logo-width: 68px;
        --header-pianobar-logo-height: auto;
}

@media(min-width: 576px) {
        body[data-header-variant-logos] {
                --header-penn-logo-width: 78px;
                --header-tea-logo-width: 78px;
                --header-pianobar-logo-width: 78px;
        }
}

@media(min-width: 1025px) {
        body[data-header-variant-logos] {
                --header-penn-logo-width: 185px;
                --header-tea-logo-width: 185px;
                --header-pianobar-logo-width: 185px;
        }
}

body[data-header-variant-logos] .site-header__logo .header-logo .light-penn-logo,
body[data-header-variant-logos] .site-header__logo .header-logo .light-tea-logo,
body[data-header-variant-logos] .site-header__logo .header-logo .light-pianobar-logo {
        position: absolute;
        top: 0;
        left: 0;
        height: auto;
        max-width: none;
        opacity: 0
}

body[data-header-variant-logos] .site-header__logo .header-logo .light-penn-logo {
        width: var(--header-penn-logo-width) !important;
        height: var(--header-penn-logo-height)
}

body[data-header-variant-logos] .site-header__logo .header-logo .light-tea-logo {
        width: var(--header-tea-logo-width) !important;
        height: var(--header-tea-logo-height)
}

body[data-header-variant-logos] .site-header__logo .header-logo .light-pianobar-logo {
        width: var(--header-pianobar-logo-width) !important;
        height: var(--header-pianobar-logo-height)
}

/* Expand logo link box when a variant is active (primary-logo no longer sets width). */
body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo {
        width: var(--header-penn-logo-width) !important;
        max-width: none
}

body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo {
        width: var(--header-tea-logo-width) !important;
        max-width: none
}

body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo {
        width: var(--header-pianobar-logo-width) !important;
        max-width: none
}

body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo .primary-logo,
body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo .light-logo,
body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo .light-tea-logo,
body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo .light-pianobar-logo {
        opacity: 0;
        pointer-events: none
}

body[data-header-variant-logos] .site-header__logo.penn-logo-mode .header-logo .light-penn-logo {
        opacity: 1
}

body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo .primary-logo,
body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo .light-logo,
body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo .light-penn-logo,
body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo .light-pianobar-logo {
        opacity: 0;
        pointer-events: none
}

body[data-header-variant-logos] .site-header__logo.tea-logo-mode .header-logo .light-tea-logo {
        opacity: 1
}

body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo .primary-logo,
body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo .light-logo,
body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo .light-penn-logo,
body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo .light-tea-logo {
        opacity: 0;
        pointer-events: none
}

body[data-header-variant-logos] .site-header__logo.pianobar-logo-mode .header-logo .light-pianobar-logo {
        opacity: 1
}

/* CSS changes for resolving content truncate issues on desktop devices */
@media(min-width: 1025px) and (max-width: 1600px) {
        .block-team-listing__single .copy {
                max-height: calc(100vh - 160px - 100px - 240px) !important;
        }

        .block-team-listing picture {
                max-height: 30vh !important;
        }

        .block-team-listing__single {
                max-width: 250px !important;
        }

        .site-header {
                padding: 20px 0 !important;
        }

        .block-page-links-block .site-container {
                padding-top: 8rem !important;
        }
}

@media(min-width: 1025px) and (max-height: 900px) {
        .block-history-block .inner-posts-container {
                padding-top: 100px !important;
        }

        .block-page-links-block__wrapper .copy,
        .block-image-text__wrapper .left-content .copy {
                max-width: 400px !important;
        }
}

.play-btn-container--hidden {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
}

/* Fallback: hide CookieHub UI if a legacy GTM tag still injects it */
#ch2-dialog,
#ch2-container,
.ch2-wrap {
        display: none !important;
}

/*
* Complianz: fix banner stuck as a bottom sliver on page 2+.
* The slide-up animation can fail to complete when CSS is cached.
*/
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-hidden {
        display: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-bottom-right {
        animation: none !important;
        -webkit-animation: none !important;
        bottom: 10px !important;
        right: 10px !important;
        transform: none !important;
        z-index: 999999 !important;
}

/* Hide manage-consent tab until the user has accepted/rejected */
#cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-show) {
        display: none !important;
}

/*
* After consent: keep "Manage consent" fully visible
* and apply custom styling.
*/
#cmplz-manage-consent .cmplz-manage-consent {
        padding: 4px 8px !important;
        height: 40px !important;
        color: #a7832f !important;
        font-size: 10px !important;
        letter-spacing: 1px !important;
        background-color: rgba(243, 241, 238, 0.9) !important;
        border: 1px solid #ac8b3c !important;
        border-top-left-radius: 10px !important;
        border-top-right-radius: 10px !important;
}

#cmplz-manage-consent .cmplz-manage-consent.cmplz-show {
        bottom: 0 !important;
        right: 10px !important;
        left: auto !important;
        display: block !important;
        animation: none !important;
        -webkit-animation: none !important;
        transform: none !important;
        z-index: 999999 !important;
}

@media (max-width: 768px) {
        #cmplz-manage-consent .cmplz-manage-consent.cmplz-show {
                display: block !important;
                right: 10px !important;
                left: auto !important;
                bottom: 0 !important;
        }
}

/* Hide manage-consent tab until the user has accepted/rejected */
/*#cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-show) {
    display: none !important;
}
 
/*
* After consent: keep "Manage consent" fully visible (Complianz default hides it
* off-screen until hover, and hides it entirely on mobile).
*/
/*#cmplz-manage-consent .cmplz-manage-consent.cmplz-show {
    bottom: 0 !important;
    animation: none !important;
    -webkit-animation: none !important;
    display: block !important;
    z-index: 999999 !important;
}
 
@media (max-width: 768px) {
    #cmplz-manage-consent .cmplz-manage-consent.cmplz-show {
        display: block !important;
        right: 10px !important;
        left: auto !important;
    }
}
*/
/* Brief confirmation after accept / deny / save preferences */
.cmplz-consent-toast {
        position: fixed;
        left: 50%;
        bottom: 70px;
        transform: translateX(-50%) translateY(12px);
        max-width: min(420px, calc(100vw - 32px));
        padding: 14px 20px;
        background: #ffffff;
        border: 1px solid #f2f2f2;
        border-radius: 8px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
        color: #222222;
        font-size: 14px;
        line-height: 1.45;
        text-align: center;
        z-index: 1000000;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease, transform 0.25s ease;
}

.cmplz-consent-toast.is-visible {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
}

@media (max-width: 768px) {
        .cmplz-consent-toast {
                bottom: 60px;
        }
}

/* Thank you page: footer shows links only, no form/image */
.site-footer--links-only {
        width: 100%;
}

.site-footer--links-only .form-container {
        width: 100%;
        max-width: none;
        padding: 40px 20px 49px;
}

@media only screen and (min-width: 1025px) {
        .site-footer--links-only .form-container {
                padding: 0 40px 0 32px;
        }

        .site-footer--links-only .right-container {
                display: flex;
                width: 100%;
        }
}

@media only screen and (min-width: 1600px) {
        .site-footer--links-only .form-container {
                padding: 0 80px 0 97px;
        }
}


/* scrollbar css */
@media screen and (min-width: 1025px) and (max-width: 1600px) {
        .block-page-links-block__links-wrapper {
                max-height: 70vh;
                /* never exceed the section/viewport */
                padding-top: 40px;
                /* clears the fixed header (~99px) */
                padding-bottom: 40px;
                /* breathing room at bottom */
                box-sizing: border-box;
                /* padding counted inside max-height */
                overflow-y: auto;
                overflow-x: hidden;
                overscroll-behavior: contain;
                /* stop scroll from bleeding into the h-scroll wheel handler */

                /* Firefox */
                scrollbar-width: thin;
                /* scrollbar-color: var(--secondary) transparent; */
                scrollbar-color: #bda877 transparent
        }

        .block-page-links-block__links-wrapper::-webkit-scrollbar {
                width: 5px;
                background-color: transparent;
        }

        .block-page-links-block__links-wrapper::-webkit-scrollbar-track {
                background-color: transparent;
                border-radius: 10px;
        }

        .block-page-links-block__links-wrapper::-webkit-scrollbar-thumb {
                background-color: var(--secondary);
                border-radius: 10px;
        }

        .block-page-links-block.no-text-content .block-page-links-block__links-wrapper {
                flex: 0 0 auto !important;
                max-width: 750px !important;
                width: 100% !important;
        }

        .block-page-links-block.no-text-content .inner-links-container {
                max-width: 750px !important;
        }
}

/* Hide Additional CTA (enquire about dining) on specific sections like Book a Table */
.aditional-cta.hide-cta {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(-50%) translateY(20px) !important;
}

/* Enable Gutenberg Text Color Inheritance for block elements */
.has-text-color,
.has-text-color .heading,
.has-text-color h1,
.has-text-color h2,
.has-text-color h3,
.has-text-color h4,
.has-text-color h5,
.has-text-color h6,
.has-text-color p,
.has-text-color span,
.has-text-color .copy,
.has-text-color .left-content,
.has-text-color .right-content,
.has-text-color .block-team-listing__single,
.has-text-color a:not(.btn) {
        color: inherit !important;
}

/* Gutenberg Text Color Palette Rules */
.has-white-color {
        color: #ffffff !important;
}

.has-pink-color {
        color: #DC5773 !important;
}

.has-light-pink-color {
        color: #FFE5E3 !important;
}

.has-faint-green-color {
        color: #EEFDDC !important;
}

.has-light-green-color {
        color: #8CAC62 !important;
}

.has-dark-green-color {
        color: #1B260F !important;
}

.has-gold-color {
        color: #A06C29 !important;
}

.has-sage-green-color {
        color: #528D78 !important;
}

.has-dark-forest-green-color {
        color: #004C28 !important;
}

.has-cream-color {
        color: #F5F2E3 !important;
}

.has-burgundy-color {
        color: #3F131F !important;
}

.has-beige-color {
        color: #EBD9C4 !important;
}

.has-taupe-color {
        color: #64615C !important;
}

.has-berry-color {
        color: #833D57 !important;
}

.has-light-khaki-color {
        color: #E4E3C9 !important;
}

.has-olive-green-color {
        color: #87AA69 !important;
}

.has-warm-gray-color {
        color: #EFE8DF !important;
}

.has-muted-green-color {
        color: #ADC9B7 !important;
}

.has-charcoal-green-color {
        color: #34392F !important;
}

.has-medium-green-color {
        color: #597E53 !important;
}

.has-light-sand-color {
        color: #F0E7D9 !important;
}

.has-pale-green-color {
        color: #EEF5DD !important;
}

.has-moss-green-color {
        color: #618056 !important;
}

.has-dusty-rose-color {
        color: #CB8D8F !important;
}

.has-dusty-rose-background-color {
        background-color: #CB8D8F !important;
}

/* Overlay hero block wrapper inside homepage intro block */
.intro-block .block-hero-block__wrapper {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 10;
        pointer-events: none;
        display: flex;
        align-items: center;
        justify-content: center;
}

.intro-block .block-hero-block__wrapper .heading-wrapper {
        pointer-events: auto;
        text-align: center;
}

.intro-block .block-hero-block__wrapper .heading {
        color: #ffffff !important;
        position: relative;
        z-index: 10;
        margin: 0;
        text-align: center;
}

/* Light Green (#EEFDDC) Background & Text Color Support */
.has-faint-green-background-color {
        background-color: #EEFDDC !important;
}

.has-faint-green-background-color .heading,
.has-faint-green-background-color .copy,
.has-faint-green-background-color .left-content {
        color: #8CAC62 !important;
}

/* =========================================================
   Heading / copy reveal fixes
   Fixes: JS-gated content stuck at opacity:0
   Add at END of main theme stylesheet
   ========================================================= */

/* ---------------------------------------------------------
   1. HERO H2 — paint on first frame, zero JS dependency
   Covers both failure modes:
   - .animation-setup never added (element itself)
   - SplitText ran but ScrollTrigger never fired (word spans)
   --------------------------------------------------------- */
.block-hero-block__wrapper .heading-wrapper .heading,
.block-hero-block__wrapper .heading-wrapper .heading * {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        clip-path: none !important;
        animation: none !important;
        transition: none !important;
}

/* ---------------------------------------------------------
   2. FAIL-OPEN SAFETY NET — all other JS-gated elements
   If JS hasn't added .animation-setup within 1.5s, reveal
   anyway. Prevents permanently invisible content on slow
   networks, GSAP errors, blocked scripts or JS disabled.
   --------------------------------------------------------- */
@media only screen and (min-width: 1025px) {

        body.page-template-default:not(.page-template-template-text-template) :is(h1, h2, h3, h4, .animate-title):not(.no-anim):not(.animation-setup),
        body.page-template-default:not(.page-template-template-text-template) .copy:not(.no-fade) p:not(.animation-setup),
        body.page-template-default:not(.page-template-template-text-template) .copy li:not(.no-fade):not(.animation-setup),
        body.page-template-default:not(.page-template-template-text-template) cite:not(.no-fade):not(.animation-setup),
        body.page-template-default:not(.page-template-template-text-template) .btn:not(.no-fade):not(.animation-setup),
        body.page-template-default:not(.page-template-template-text-template) .fadeIn:not(.animation-setup) {
                animation: sp-reveal-failsafe 0s linear 1.5s forwards;
        }
}

@keyframes sp-reveal-failsafe {
        to {
                opacity: 1;
        }
}

/* ---------------------------------------------------------
   3. REDUCED MOTION — currently not handled anywhere (WCAG 2.3.3)
   --------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {

        body.page-template-default :is(h1, h2, h3, h4, .animate-title),
        body.page-template-default :is(h1, h2, h3, h4, .animate-title) *,
        body.page-template-default .copy p,
        body.page-template-default .copy li,
        body.page-template-default cite,
        body.page-template-default .btn,
        body.page-template-default .fadeIn {
                opacity: 1 !important;
                transform: none !important;
                animation: none !important;
                transition: none !important;
        }
}

@media only screen and (max-height: 1024px) {
        .quotesection .block-innerpage-hero__wrapper {
                max-width: 43.75rem;
                max-width: calc(100vw - 80px);
        }
}

/* =========================================================
   Page Links Block: Flip Layout (Menu on Left, Content on Right)
   ========================================================= */
@media screen and (min-width: 1025px) {
        .block-page-links-block.menu-left .block-page-links-block__wrapper {
                flex-direction: row-reverse !important;
        }

        .block-page-links-block.menu-left .block-page-links-block__links-wrapper {
                flex: 0 0 52% !important;
                max-width: 52% !important;
        }

        .block-page-links-block.menu-left .block-page-links-block__text-wrapper {
                flex: 0 0 48% !important;
                max-width: 48% !important;
                padding-left: 30px !important;
        }

        /* Indent text relative to heading — matching "The Next Chapter" */
        .block-page-links-block .block-page-links-block__text-wrapper .text-block,
        .block-page-links-block.menu-left .block-page-links-block__text-wrapper .text-block {
                padding-left: 50px !important;
        }

        .block-page-links-block .block-page-links-block__text-wrapper .copy,
        .block-page-links-block.menu-left .block-page-links-block__text-wrapper .copy {
                max-width: 350px !important;
        }

        .block-page-links-block.menu-left .inner-links-container {
                margin-left: 0 !important;
                margin-right: auto !important;
                padding-left: 0 !important;
                padding-right: 40px !important;
                max-width: 100% !important;
        }

        .block-page-links-block__text-wrapper .content-wrapper {
                position: relative;
        }

        @media (min-width: 1025px) {
                .block-page-links-block__text-wrapper .content-wrapper .background-icon {
                        position: absolute;
                        max-width: 250px;
                        top: 100%;
                        left: 100%;
                        object-fit: contain;
                        pointer-events: none;
                        z-index: 1;
                }
        }

        .block-page-links-block.no-text-content .block-page-links-block__links-wrapper {
                flex: 0 0 auto !important;
                max-width: 750px !important;
                width: 100% !important;
        }

        .block-page-links-block.no-text-content .inner-links-container {
                max-width: 750px !important;
        }
}

@media screen and (min-width: 1300px) {

        .block-page-links-block .block-page-links-block__text-wrapper .text-block,
        .block-page-links-block.menu-left .block-page-links-block__text-wrapper .text-block {
                padding-left: 80px !important;
        }
}

@media screen and (min-width: 1640px) {

        .block-page-links-block .block-page-links-block__text-wrapper .text-block,
        .block-page-links-block.menu-left .block-page-links-block__text-wrapper .text-block {
                padding-left: 150px !important;
        }

        .block-page-links-block .block-page-links-block__text-wrapper .copy,
        .block-page-links-block.menu-left .block-page-links-block__text-wrapper .copy {
                max-width: 388px !important;
        }
}

/* =========================================================
   Hide numbers (01, 02, etc.) in Hamburger Navigation Menu
   ========================================================= */
.menu-item-counter {
        display: none !important;
}

/* =========================================================
   Page Links Block: Image & Text Together in Content Column
   ========================================================= */
.block-page-links-block__content-image-wrap {
        margin-top: 32px;
        width: 100%;
        max-width: 500px;
}

.block-page-links-block__content-image-wrap .block-page-links-block__content-image {
        width: 100%;
        height: auto;
        aspect-ratio: 16/10;
        max-height: 340px;
        object-fit: cover;
        border-radius: 4px;
        display: block;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

@media screen and (max-width: 1024px) {
        .block-page-links-block__content-image-wrap {
                margin-top: 24px;
                max-width: 100%;
        }

        .block-page-links-block__content-image-wrap .block-page-links-block__content-image {
                max-height: 280px;
        }
}

/* =========================================================
   Page Links Block: Centered Layout when No Side Links Exist
   ========================================================= */
@media (min-width: 1025px) {
        .block-page-links-block.no-links-content .block-page-links-block__text-wrapper {
                max-width: 60% !important;
                margin: 0 auto !important;
                flex: 0 0 60% !important;
        }

        .block-page-links-block.no-links-content .block-page-links-block__text-wrapper .text-block {
                padding-left: 0px !important;
        }

        .block-page-links-block.no-links-content .block-page-links-block__text-wrapper .copy {
                max-width: 100% !important;
        }
}

/* =========================================================
   Page Links Block: Intro Section Variant (.intro-section)
   ========================================================= */
@media (min-width: 768px) {

        .block-page-links-block.intro-section .heading,
        .intro-section .block-page-links-block .heading {
                text-align: center;
        }
}

@media (min-width: 1025px) {

        .block-page-links-block.intro-section .block-page-links-block__text-wrapper .copy,
        .intro-section .block-page-links-block .block-page-links-block__text-wrapper .copy {
                max-width: 100% !important;
        }

        .block-page-links-block.intro-section .block-page-links-block__text-wrapper .text-block,
        .intro-section .block-page-links-block .block-page-links-block__text-wrapper .text-block {
                padding-left: 0px !important;
        }
}

/* =========================================================
   Copy Text Typography (.copy elements)
   ========================================================= */
.copy p,
.copy p a:not(.btn),
.copy li,
.copy td,
.copy figcaption {
        font-size: 13px !important;
        line-height: 1.8 !important;
        font-weight: 400;
}

@media only screen and (min-width: 1025px) and (max-width: 1400px) {

        .copy p,
        .copy p a:not(.btn),
        .copy li,
        .copy td,
        .copy figcaption {
                font-size: 12px !important;
                line-height: 1.5 !important;
        }
}

/* =========================================================
   Blockquote Typography & Gallery Block Styling
   ========================================================= */
.copy blockquote,
.copy blockquote p {
        font-size: 24px !important;
        font-family: "Marcellus", serif;
        line-height: 1.5 !important;
}

@media (min-width: 1025px) {
        .block-gallery-block {
                margin: 0;
                padding: 140px 60px 64px 100px !important;
                min-width: unset !important;
        }
}

/* =========================================================
   Designer Additions & Fine-Tuning
   ========================================================= */

/* Gallery Block: Remove 100vw min-width */
.block-gallery-block {
        min-width: unset !important;
}

/* Team Listing Block: Remove right padding */
@media only screen and (min-width: 1025px) {
        .block-team-listing .left-content {
                padding-right: 0% !important;
        }
}

/* Privacy Policy, Terms Service, Cookie Policy, Tax Strategy typography */
.page-privacy-policy,
.page-terms-and-conditions,
.page-cookie-policy,
.page-tax-strategy,
.privacy-policy,
.terms-and-conditions,
.tax-strategy,
.legal-document-page {
        font-size: 13px;
        line-height: 1.8;
}

.page-privacy-policy h1,
.page-terms-and-conditions h1,
.page-cookie-policy h1,
.page-tax-strategy h1,
.privacy-policy h1,
.terms-and-conditions h1,
.tax-strategy h1,
.legal-document-page h1,
.page-privacy-policy h2,
.page-terms-and-conditions h2,
.page-cookie-policy h2,
.page-tax-strategy h2,
.legal-document-page h2 {
        font-size: calc(26px + 4 * (100vw - 800px) / (1920 - 800));
        line-height: 1.3;
}

.legal-document-page .wp-block-table {
        overflow-x: auto;
}

/* Golf background icon position at 1640px+ */
@media (min-width: 1640px) {
        #golf .background-icon {
                left: 120%;
        }
}

/* Site Content paragraph font size at 1600px+ */
@media only screen and (min-width: 1600px) {

        .site-content>p,
        .site-content>p a:not(.btn),
        .site-content>li,
        .site-content>td,
        .site-content>figcaption,
        .site-content>ol li,
        .site-content>ul li {
                font-size: 17px;
                line-height: 30px;
        }
}

/* Full Width Content Inner Centered alignment & Marcellus font */
.block-full-width-content__inner.align-center {
        max-width: 70%;
}

.block-full-width-content__inner.align-center .copy p span {
        font-family: "Marcellus", serif;
}

.block-full-width-content__inner.align-center .copy p:not(:last-child) {
        margin-bottom: 2em !important;
}

@media only screen and (max-width: 991px) {
        .block-full-width-content__inner.align-center {
                max-width: 100%;
        }
}

@media (min-width: 1640px) {
        #golf .background-icon {
                left: 120%;
                margin: 0;
        }

        .block-image-text__wrapper .left-content .text-container {
                max-width: 650px;
        }

        #golf .copy,
        .block-page-links-block .block-page-links-block__text-wrapper .copy {
                max-width: 488px !important;
        }

        .block-page-links-block__text-wrapper {
                padding: 0;
                max-width: 650px;
        }

        #block_8c6b8c2a9693a290f5bfb45561ca2c90 .background-icon {
                top: 100%;
                left: 120%;
                margin: 0;
        }

}

.block-full-width-content .copy em,
.block-full-width-content .copy i,
.block-full-width-content .copy [style*="italic"],
.block-full-width-content em,
.block-full-width-content i {
        font-family: "Marcellus", serif !important;
        font-style: italic !important;
        font-synthesis: style !important;
        font-size: 1.05em;
        display: inline;
}

/* =========================================================
   Hide "Book a Table" Header CTA after The Penn Section
   ========================================================= */
.site-header__ctas {
        transition: opacity 0.4s ease, visibility 0.4s ease;
}

.site-header__ctas.hide-book-table {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
}

@media (max-width: 1024px) {
#meet-the-chefs .block-team-listing__single.active .copy {
    max-height: 100%;
    overflow: hidden !important;
}
#meet-the-chefs .block-team-listing .ps__rail-y {
	display:none;
}
#site-footer .form-inner {
    max-height: 100% !important;
}
 
#site-footer .ps--active-x>.ps__rail-x, .ps--active-y>.ps__rail-y {
    display:none;
}
}

/* =========================================================
   Unclickable Menu Items & Subtitle Reveal Styling (Designer Spec)
   ========================================================= */
.unclickable,
.unclickable > a,
a.unclickable,
.reveal-soon,
.reveal-soon > a,
a.reveal-soon {
    cursor: default !important;
}

.site-header__menu-container .site-header__navigation-desktop #primary-menu > li > a span,
.footer-col a span,
.mobile-footer a span,
nav a span,
.reveal-soon-subtitle,
.menu_subtitle {
    opacity: 0;
    transition: opacity 0.3s ease;
    font-size: 12px;
    display: block;
}

.site-header__menu-container .site-header__navigation-desktop #primary-menu > li > a:hover span,
.footer-col a:hover span,
.mobile-footer a:hover span,
nav a:hover span,
:hover > .reveal-soon-subtitle,
:hover > .menu_subtitle,
.unclickable:hover .reveal-soon-subtitle,
.unclickable:hover .menu_subtitle,
.reveal-soon:hover .reveal-soon-subtitle,
a:hover .reveal-soon-subtitle,
a:hover .menu_subtitle {
    font-size: 12px !important;
    display: block;
    bottom: 4px;
    left: 2px;
    position: relative;
    opacity: 1 !important;
}

/* Page Links Block Subtitle / Reveal Soon styles */
.single-link .reveal-soon,
.block-page-links-block__links-wrapper .inner-links-container .single-link h3 span {
	opacity: 0;
	font-size: 12px;
	font-weight: 400;
	display: block;
	position: relative;
	bottom: 0px;
	left: 2px;
	transition: opacity 0.3s ease, transform 0.3s ease;
	transform: translateY(4px);
	margin-top: 4px;
	letter-spacing: normal;
	text-transform: initial;
	color: #9D8836;
}
.single-link:hover .reveal-soon,
.block-page-links-block__links-wrapper .inner-links-container .single-link:hover h3 span {
	opacity: 1;
	transform: translateY(0);
}


/* New Footer CSS */
.site-footer .form-container .form-inner p.copy {
    font-size: 14px;
    color: #807c76;
}
 
.site-footer .form-container .form-inner p.copy a {
    color: #64615c;
}
 
.site-footer .form-container .form-inner p.copy a:hover {
    color: #9d8836;
}

