/* Trustindex Google Reviews - Black text for light background */
.ti-widget.ti-goog .ti-widget-container,
.ti-widget.ti-goog .ti-widget-container .ti-name,
.ti-widget.ti-goog .ti-review-item .ti-name,
.ti-widget.ti-goog .ti-footer .ti-name,
.ti-widget.ti-goog .ti-footer-link-block,
.ti-widget.ti-goog .ti-footer-filter-text,
.ti-widget.ti-goog .ti-rating-text,
.ti-widget.ti-goog .ti-rating-text strong:not(.ti-rating-large),
.ti-widget.ti-goog .ti-rating-text span,
.ti-widget.ti-goog .ti-footer,
.ti-widget.ti-goog .ti-footer strong:not(.ti-rating-large),
.ti-widget.ti-goog .ti-footer span,
.ti-widget.ti-goog .ti-ai-summary-item,
.ti-widget.ti-goog .ti-ten-rating-score,
.ti-widget.ti-goog .ti-verified-by-row {
color: #191919 !important;
}

.ti-widget.ti-goog .ti-widget-container .ti-date {
color: #666666 !important;
}

.ti-widget.ti-goog .ti-read-more span {
color: #191919 !important;
}

.ti-widget.ti-goog .ti-verified-by .ti-info-icon {
background-color: #ffffff !important;
}

/* =====================================================
MOBILE OPTIMIZATIONS - Only applies on <= 767px
===================================================== */

@media (max-width: 767px) {

#navbar {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}

#nav-logo {
width: 10rem !important;
}

#home {
min-height: 100vh !important;
padding-bottom: 1.5rem !important;
align-items: stretch !important;
display: flex !important;
flex-direction: column !important;
}

#home > div.\!relative.\!z-20 {
flex: 1 !important;
display: flex !important;
flex-direction: column !important;
width: 100% !important;
max-width: 100% !important;
margin: 0 !important;
padding: 0 0.75rem !important;
}

.glass-box {
flex: 1 !important;
display: flex !important;
flex-direction: column !important;
padding: 0 !important;
border-radius: 0 !important;
}

#home .glass-box.\!p-10,
#home .glass-box.\!p-16,
#home .glass-box[class*="!p-"] {
padding: 0 !important;
}

.glass-box > * {
margin-top: 0 !important;
margin-bottom: 0 !important;
flex-shrink: 0 !important;
}

#home .glass-box > p:first-child {
font-size: 0.6rem !important;
letter-spacing: 0.12em !important;
padding-bottom: 0.5rem !important;
}

#home h1 {
font-size: 3.5rem !important;
line-height: 1.05 !important;
padding-bottom: 0.75rem !important;
}

#home .glass-box > div:first-of-type {
width: 100% !important;
max-width: 100% !important;
}

#home .glass-box > div:first-of-type span {
font-size: 0.5rem !important;
letter-spacing: 0px !important;
white-space: nowrap !important;
overflow: visible !important;
text-overflow: clip !important;
display: flex !important;
align-items: center !important;
gap: 4px !important;
width: 100% !important;
}

#home .glass-box > div:first-of-type span svg {
flex-shrink: 0 !important;
width: 10px !important;
height: 10px !important;
}

#home .glass-box > p:last-of-type {
margin-top: auto !important;
padding-top: 1.25rem !important;
font-size: 0.875rem !important;
line-height: 1.5 !important;
padding-bottom: 0.75rem !important;
}

#home .glass-box > div:nth-last-child(2) {
padding-bottom: 0.75rem !important;
}

#home .glass-box > div:last-child {
display: flex !important;
flex-direction: column !important;
gap: 0.6rem !important;
}

#home .glass-box > div:last-child a {
text-align: center !important;
width: 100% !important;
display: block !important;
padding: 0.875rem 1rem !important;
font-size: 0.8rem !important;
box-sizing: border-box !important;
}

#brands-section > div:first-child {
white-space: normal !important;
}

#brands-section h2 {
white-space: normal !important;
word-wrap: break-word !important;
font-size: 1.25rem !important;
line-height: 1.3 !important;
}

#brands-section p {
white-space: normal !important;
font-size: 0.8rem !important;
}

#brands-section h3 {
white-space: normal !important;
font-size: 0.7rem !important;
}

footer .max-w-7xl > .grid {
grid-template-columns: 1fr 1fr !important;
gap: 1.5rem !important;
}

footer .max-w-7xl > .grid > .col-span-1:first-child {
grid-column: 1 / -1 !important;
}

}

@media (max-width: 480px) {

#home h1 {
font-size: 2.75rem !important;
}

#brands-section h2 {
font-size: 1.05rem !important;
}

footer .max-w-7xl > .grid {
grid-template-columns: 1fr !important;
}

}

/* Corporate Events page headings */
.problem-item h4,
.deliver-card h3,
.process-step h4 {
font-family: Montserrat, sans-serif !important;
font-weight: 700 !important;
}

/* ===================================================================
NAVBAR: Stationary (position: absolute - stays at top, scrolls away)
=================================================================== */
#navbar {
position: absolute !important;
top: 0 !important;
left: 0 !important;
right: 0 !important;
z-index: 9999 !important;
background-color: #f5f0ea !important;
border-bottom: 1px solid rgba(92, 61, 46, 0.15) !important;
box-shadow: 0 2px 8px rgba(92, 61, 46, 0.1) !important;
}

.bg-charcoal {
background-color: #f5f0ea !important;
}

#navbar > div,
#navbar .max-w-7xl,
#navbar .flex,
#navbar nav,
#navbar .hidden.md\:flex {
background-color: transparent !important;
background: transparent !important;
}

/* Logo - dark brown */
#nav-logo {
filter: brightness(0) saturate(100%) invert(22%) sepia(35%) saturate(600%) hue-rotate(345deg) brightness(0.65) !important;
}

/* Nav links - dark brown */
#navbar nav a,
#navbar .hidden.md\:flex nav a {
color: rgb(92, 61, 46) !important;
font-weight: 600 !important;
}

#navbar nav a:hover,
#navbar .hidden.md\:flex nav a:hover {
color: rgb(140, 95, 72) !important;
}

/* Book Now button */
#navbar .btn-primary {
background-color: rgb(92, 61, 46) !important;
color: rgb(242, 216, 187) !important;
}

/* Mobile menu button */
#menu-btn {
color: rgb(92, 61, 46) !important;
}

/* ===================================================================
NON-OVERLAY PAGES: Add padding-top so content sits below the navbar.
Apply to all pages EXCEPT home (page-id-4) and corporate (page-id-766)
=================================================================== */
body:not(.home):not(.page-id-4):not(.page-id-766):not(.elementor-page-766) {
padding-top: 160px !important;
}

/* ===== HOME PAGE: Transparent overlay ===== */
body.home #navbar,
body.page-id-4 #navbar {
background-color: transparent !important;
border-bottom: none !important;
box-shadow: none !important;
}

body.home .bg-charcoal,
body.page-id-4 .bg-charcoal {
background-color: transparent !important;
}

body.home #nav-logo,
body.page-id-4 #nav-logo {
filter: brightness(0) invert(1) !important;
}

body.home #navbar nav a,
body.page-id-4 #navbar nav a,
body.home #navbar .hidden.md\:flex nav a,
body.page-id-4 #navbar .hidden.md\:flex nav a {
color: rgba(255, 255, 255, 0.9) !important;
}

body.home #navbar nav a:hover,
body.page-id-4 #navbar nav a:hover {
color: rgba(242, 216, 187, 1) !important;
}

body.home #menu-btn,
body.page-id-4 #menu-btn {
color: white !important;
}

/* ===== CORPORATE PAGE: Transparent overlay ===== */
body.page-id-766 #navbar,
body.elementor-page-766 #navbar {
background-color: transparent !important;
border-bottom: none !important;
box-shadow: none !important;
}

body.page-id-766 .bg-charcoal,
body.elementor-page-766 .bg-charcoal {
background-color: transparent !important;
}

body.page-id-766 #nav-logo,
body.elementor-page-766 #nav-logo {
filter: brightness(0) invert(1) !important;
}

body.page-id-766 #navbar nav a,
body.elementor-page-766 #navbar nav a,
body.page-id-766 #navbar .hidden.md\:flex nav a,
body.elementor-page-766 #navbar .hidden.md\:flex nav a {
color: rgba(255, 255, 255, 0.9) !important;
}

body.page-id-766 #navbar nav a:hover,
body.elementor-page-766 #navbar nav a:hover {
color: rgba(242, 216, 187, 1) !important;
}

body.page-id-766 #menu-btn,
body.elementor-page-766 #menu-btn {
color: white !important;
}

/* ===== END NAV ===== */

/* ============================================
Blog Post Template Fixes
============================================ */

.wp-block-template-part .wp-block-group.has-base-background-color {
background-color: #1a1a1a !important;
border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.wp-block-template-part .wp-block-navigation a,
.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__content {
color: rgba(255,255,255,0.9) !important;
font-size: 13px !important;
letter-spacing: 0.1em !important;
text-transform: uppercase !important;
}
.wp-block-template-part .wp-block-navigation a:hover,
.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__content:hover {
color: #f2d8bb !important;
}

.tm-blog-nav-logo img {
max-height: 56px !important;
width: auto !important;
max-width: 180px !important;
}

.post-template-wp-custom-template-recipe-post .wp-block-columns > .wp-block-column:last-child {
background-color: #ffffff !important;
}

.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) {
display: block !important;
}
.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) > .wp-block-column:first-child {
display: none !important;
}
.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) > .wp-block-column:last-child {
max-width: 1200px !important;
margin: 0 auto !important;
padding-left: 48px !important;
padding-right: 48px !important;
width: 100% !important;
}

.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) .entry-content .wp-block-image,
.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) .wp-block-post-content .wp-block-image {
width: 100% !important;
max-width: 100% !important;
}
.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) .entry-content .wp-block-image img,
.wp-block-columns:has(> .wp-block-column:first-child > .is-position-sticky:empty) .wp-block-post-content .wp-block-image img {
width: 100% !important;
max-width: 100% !important;
height: auto !important;
}

.entry-content a,
.wp-block-post-content a {
color: #7a4f2e !important;
text-decoration: underline !important;
text-underline-offset: 3px !important;
font-weight: 500 !important;
}
.entry-content a:hover,
.wp-block-post-content a:hover {
color: #5c3d2e !important;
text-decoration: underline !important;
}