/**
* Theme Name: Poco Child
* Description: This is a child theme of Poco, generated by Merlin WP.
* Author: <a href="https://pavothemes.com/">Pavothemes</a>
* Template: poco
* Version: 2.2.8
*/

/* ── Brand Colour Overrides ─────────────────────────────────────────────────── */

/* Primary red accent (links, highlights) */
a,
a:focus {
	color: #ed2024;
}

a:hover {
	color: #c01a1e;
}

/* Buttons — primary */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.button,
button[type="submit"] {
	background-color: #ed2024 !important;
	color: #ffffff !important;
	border-color: #ed2024 !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.button:hover,
button[type="submit"]:hover {
	background-color: #c01a1e !important;
	border-color: #c01a1e !important;
	color: #ffffff !important;
}

/* ── Header nav — spec: inactive = #1a1a1a, active/hover = #ffffff ──────────
   Each nav item: height 48px, padding 0 8px, gap 8px between items.         */

/* Inactive links: dark/near-black */
.main-navigation a,
.main-navigation a .menu-title,
.site-header .menu > li > a,
.elementor-widget-poco-nav-menu .poco-nav-menu a,
.elementor-widget-poco-nav-menu .poco-nav-menu a .menu-title,
.elementor-widget-nav-menu .menu-item a,
.elementor-widget-nav-menu .menu-item a .menu-title {
	color: #1a1a1a !important;
}

/* Active / current page / hover: white */
.main-navigation a:hover,
.main-navigation a:hover .menu-title,
.main-navigation .current-menu-item > a,
.main-navigation .current-menu-item > a .menu-title,
.main-navigation .current_page_item > a,
.main-navigation .current_page_item > a .menu-title,
.elementor-widget-poco-nav-menu .poco-nav-menu a:hover,
.elementor-widget-poco-nav-menu .poco-nav-menu a:hover .menu-title,
.elementor-widget-poco-nav-menu .poco-nav-menu .current-menu-item > a,
.elementor-widget-poco-nav-menu .poco-nav-menu .current-menu-item > a .menu-title,
.elementor-widget-poco-nav-menu .poco-nav-menu .current_page_item > a,
.elementor-widget-poco-nav-menu .poco-nav-menu .current_page_item > a .menu-title,
.elementor-widget-nav-menu .menu-item.current-menu-item > a,
.elementor-widget-nav-menu .menu-item.current-menu-item > a .menu-title,
.elementor-widget-nav-menu .menu-item.current_page_item > a,
.elementor-widget-nav-menu .menu-item.current_page_item > a .menu-title,
.elementor-widget-nav-menu .menu-item a:hover,
.elementor-widget-nav-menu .menu-item a:hover .menu-title {
	color: #ffffff !important;
}

/* Header Primary Nav — spec: Poppins Bold 16 / 1.75rem / title case
   Default = black (#1a1a1a), Active/Hover = white (#ffffff)
   Sizing: 48px tall row, 8px horizontal padding per item. */
.elementor-widget-poco-nav-menu .poco-nav-menu > li > a,
.elementor-widget-poco-nav-menu .poco-nav-menu > li > a .menu-title,
.elementor-widget-nav-menu .elementor-nav-menu > li > a,
.elementor-widget-nav-menu .elementor-nav-menu > li > a .menu-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.75rem !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
.elementor-widget-poco-nav-menu .poco-nav-menu > li > a,
.elementor-widget-nav-menu .elementor-nav-menu > li > a {
	height: 48px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 8px !important;
	padding-right: 8px !important;
	display: inline-flex !important;
	align-items: center !important;
}

/* Gap between items: 8px — override Elementor's space-between inline style */
.elementor-widget-poco-nav-menu .poco-nav-menu,
.elementor-widget-nav-menu .elementor-nav-menu {
	gap: 8px !important;
}
.elementor-widget-poco-nav-menu .poco-nav-menu > li,
.elementor-widget-nav-menu .elementor-nav-menu > li {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Header section: 120px height */
.elementor-element-c607fef.elementor-section {
	min-height: 120px !important;
}
.elementor-element-c607fef .elementor-container {
	min-height: 120px !important;
}

/* Mobile menu toggle */
.menu-toggle,
.menu-toggle:focus {
	color: #ffffff;
}

/* Logo area accent */
.site-branding .site-title a {
	color: #ed2024;
}

/* Sale badge / price highlights */
.woocommerce span.onsale,
.onsale {
	background-color: #ed2024;
	color: #ffffff;
}

.woocommerce .price,
.woocommerce-Price-amount {
	color: #ed2024;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
	background-color: #ed2024;
	border-color: #ed2024;
	color: #ffffff;
}

/* ── Footer — per spec ───────────────────────────────────────────────────────
   Total height: 264px  (Nav block 208px + yellow bar 56px)
   Nav block: black bg, padding 40px top + 40px bottom (split across 2 sections)
   Logo: 129×72px (set in Elementor)
   Primary Navigation: height 56px, horizontal, center, gap 24px
   Yellow bar: 56px, centered text
   ─────────────────────────────────────────────────────────────────────────── */
.site-footer,
#colophon {
	background-color: #000000;
	color: #ffffff;
}

/* Nav links in footer: white, no underline, Poppins Medium 14/24 */
.site-footer a,
.elementor-location-footer .elementor-widget-nav-menu a {
	color: #ffffff !important;
	text-decoration: none;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 24px !important;
}
.site-footer a:hover,
.elementor-location-footer .elementor-widget-nav-menu a:hover {
	color: #fbc300 !important;
}

/* Primary Navigation row: 56px tall, items centered */
.elementor-location-footer .elementor-widget-nav-menu,
.elementor-location-footer .elementor-widget-nav-menu .elementor-widget-container {
	text-align: center !important;
	width: 100% !important;
}
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 24px !important;
	height: 56px;
	width: 100% !important;
}
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a {
	height: 56px !important;
	line-height: 56px !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
}
/* Override Elementor inline margin-right from space_between setting */
.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li {
	margin-right: 0 !important;
}

/* ── Footer nav on mobile — keep links visible (no hamburger), stack vertical ── */
@media (max-width: 767px) {
	/* Hide the hamburger toggle */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-menu-toggle {
		display: none !important;
	}
	/* Force the main menu to render (Elementor hides it behind the toggle on mobile) */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu--main,
	.elementor-location-footer .elementor-widget-nav-menu nav.elementor-nav-menu--main {
		display: block !important;
	}
	/* Stack links vertically with comfortable tap targets */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 0 !important;
		height: auto !important;
		width: 100% !important;
	}
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li {
		width: 100% !important;
		margin: 0 !important;
		text-align: center !important;
	}
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 48px !important;
		height: auto !important;
		line-height: 1.4 !important;
		padding: 12px 16px !important;
		width: 100% !important;
	}
	/* Hide Elementor's mobile dropdown panel (we render the main menu inline instead) */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
		display: none !important;
	}
	/* Remove active-state underline / pointer line on the current page link */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li.current-menu-item > a,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li.current_page_item > a,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a.elementor-item-active,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a:after,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a:before {
		border-bottom: 0 !important;
		text-decoration: none !important;
		background-image: none !important;
		box-shadow: none !important;
	}
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a:after,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a:before {
		display: none !important;
		content: none !important;
	}
	/* Center the link label — kill any inherited text-align/padding asymmetry */
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li {
		text-align: center !important;
	}
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a .menu-title,
	.elementor-location-footer .elementor-widget-nav-menu .elementor-nav-menu > li > a > span {
		text-align: center !important;
		justify-content: center !important;
		margin: 0 auto !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* Yellow bar: 56px min-height, text centered */
.elementor-element-f4014f6 {
	min-height: 56px !important;
}
.elementor-element-f4014f6 .elementor-container {
	min-height: 56px !important;
	align-items: center;
}

/* Yellow bar: full-width centered layout */
.elementor-element-f4014f6 .elementor-container {
	justify-content: center !important;
}

/* Yellow bar — tighten on mobile so it hugs the copyright text like desktop */
@media (max-width: 767px) {
	.elementor-element-f4014f6 {
		min-height: 0 !important;
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}
	.elementor-element-f4014f6 .elementor-container {
		min-height: 0 !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.elementor-element-f4014f6 .elementor-column,
	.elementor-element-f4014f6 .elementor-widget-wrap {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.elementor-element-f4014f6 .elementor-widget-text-editor,
	.elementor-element-f4014f6 .elementor-widget-text-editor .elementor-widget-container,
	.elementor-element-7fc28a81,
	.elementor-element-7fc28a81 .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}
	.elementor-element-f4014f6 .elementor-widget-text-editor p,
	.elementor-element-7fc28a81 p {
		margin: 0 !important;
		line-height: 1.4 !important;
	}
}
.elementor-element-f4014f6 .elementor-column,
.elementor-element-7fc28a81 {
	width: 100% !important;
	text-align: center !important;
	justify-content: center !important;
}
/* Yellow bar text: Roboto Medium 12/25.2, black, centered */
.elementor-element-f4014f6 .elementor-widget-text-editor,
.elementor-element-f4014f6 .elementor-widget-text-editor p,
.elementor-element-7fc28a81 .elementor-widget-container,
.elementor-element-7fc28a81 .elementor-widget-container p {
	color: #000000 !important;
	text-align: center !important;
	margin: 0;
	font-family: 'Roboto', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 25.2px !important;
	width: 100%;
}

/* Remove any lingering dotted/patterned background on the footer sections
   (the parent theme's Elementor footer used shape_dot.png on a #181818 base) */
.site-footer .elementor-section,
.site-footer .elementor-top-section,
.site-footer .elementor-inner-section {
	background-image: none !important;
}

/* Centre the three-column info row and the copyright bar */
.site-footer .elementor-widget-heading,
.site-footer .elementor-widget-text-editor,
.site-footer .elementor-widget-icon-list,
.site-footer .elementor-widget-social-icons {
	text-align: center !important;
}
.site-footer .elementor-widget-text-editor .elementor-widget-container,
.site-footer .elementor-widget-heading .elementor-widget-container {
	text-align: center !important;
}
/* Centre the copyright line (it sat in a 50% column next to the now-removed
   credit-card image, so the remaining column needs to span + centre) */
.site-footer .elementor-element-7fc28a81 {
	width: 100% !important;
	text-align: center !important;
}
.site-footer .elementor-element-7fc28a81 .elementor-widget-container {
	text-align: center !important;
}

/* ── Hide WooCommerce-related UI that's irrelevant to a restaurant site ───── */

/* Header: cart, account, wishlist icons */
.site-header-cart,
.header-cart-mobile,
.site-header-account,
.site-header-wishlist,
.site-header .header-wishlist,
.site-header .whb-header-cart,
.site-header .whb-header-account {
	display: none !important;
}

/* Mobile handheld footer bar — hide cart, shop, account, wishlist slots */
.storefront-handheld-footer-bar ul li.cart,
.storefront-handheld-footer-bar ul li.my-account,
.storefront-handheld-footer-bar ul li.shop,
.storefront-handheld-footer-bar ul li.wishlist,
.handheld-footer-bar ul li.cart,
.handheld-footer-bar ul li.my-account,
.handheld-footer-bar ul li.shop,
.handheld-footer-bar ul li.wishlist,
.poco-footer-bar li.cart,
.poco-footer-bar li.my-account,
.poco-footer-bar li.shop,
.poco-footer-bar li.wishlist {
	display: none !important;
}

/* Footer widget links that point to disabled commerce pages.
   Uses attribute selectors so the whole list item is removed, not just the <a>. */
.site-footer .elementor-icon-list-item:has(a[href$="/shop/"]),
.site-footer .elementor-icon-list-item:has(a[href$="/cart/"]),
.site-footer .elementor-icon-list-item:has(a[href$="/checkout/"]),
.site-footer .elementor-icon-list-item:has(a[href$="/my-account/"]),
.site-footer .elementor-icon-list-item:has(a[href$="/wishlist/"]),
#colophon .elementor-icon-list-item:has(a[href$="/shop/"]),
#colophon .elementor-icon-list-item:has(a[href$="/cart/"]),
#colophon .elementor-icon-list-item:has(a[href$="/checkout/"]),
#colophon .elementor-icon-list-item:has(a[href$="/my-account/"]),
#colophon .elementor-icon-list-item:has(a[href$="/wishlist/"]) {
	display: none !important;
}

/* Product loop: hide the per-product wishlist button */
.woocommerce .woosw-btn,
.woocommerce .add_to_wishlist,
.woocommerce .yith-wcwl-add-to-wishlist,
.product .woosw-btn {
	display: none !important;
}

/* Product loop: hide star rating (reviews disabled for a restaurant menu) */
.woocommerce ul.products li.product .star-rating,
.woocommerce .products .product .star-rating {
	display: none !important;
}

/* ── Menu product card — per design spec ──────────────────────────────────────
   Card:        400px wide, 16px corner radius, white bg, subtle border
   Image area:  224px tall, 16px padding, #f2f2f2 bg, image contained
   Text area:   padding 18px 20px 20px 20px, 8px gap
   Title:       Poppins Bold 18px / 26px line-height
   Description: Roboto Regular 14px / 20px line-height, 3-line clamp
   Price:       Poppins Medium 16px / 28.8px line-height
   ─────────────────────────────────────────────────────────────────────────── */

/* Suppress Poco's 10% --primary wash overlay */
.woocommerce-product-list ul.products .product-list-inner:before {
	display: none !important;
}

/* Card — vertical stack, 16px radius, white, border */
.woocommerce-product-list ul.products .product-list-inner {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	justify-content: flex-start !important;
	padding: 0 !important;
	border: 1px solid #e5e5e5 !important;
	border-radius: 16px !important;
	background-color: #ffffff !important;
	overflow: hidden !important;
	cursor: pointer;
	width: 100%;
	height: 100%;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.woocommerce-product-list ul.products .product-list-inner:hover,
.woocommerce-product-list ul.products .product-list-inner:focus-within {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}

/* Image area — fixed 224px height, 16px padding, grey backdrop */
.woocommerce-product-list ul.products .product-list-inner > a:first-child {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	background-color: #f2f2f2;
	width: 100%;
	height: 224px !important;
	min-height: 224px !important;
	max-height: 224px !important;
	padding: 16px !important;
	box-sizing: border-box;
	flex-shrink: 0;
}

/* Product image — contained, no cropping, centered in the grey area */
.woocommerce-product-list ul.products .product-list-inner img {
	max-width: 100% !important;
	max-height: 192px !important; /* 224px - 32px padding */
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	margin: 0 auto !important;
	display: block !important;
	mix-blend-mode: multiply;
}

/* Text content area — padding 18/20/20/20, 8px gap between elements */
.woocommerce-product-list ul.products .product-content {
	padding: 18px 20px 20px 20px !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	flex: 1 1 auto;
}

/* Title — Poppins Bold 18px / 26px */
.woocommerce-product-list ul.products .product-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 26px !important;
	margin: 0 !important;
	order: 1 !important;
}
.woocommerce-product-list ul.products .product-title span,
.woocommerce-product-list ul.products .product-title a {
	color: #1a1a1a !important;
}

/* Description — Roboto Regular 14px / 20px, 3-line clamp */
.woocommerce-product-list ul.products .short-description,
.woocommerce-product-list ul.products .product-content .short-description {
	font-family: 'Roboto', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 20px !important;
	color: #4a4a4a !important;
	margin: 0 !important;
	order: 2 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	min-height: calc(20px * 3); /* 3 lines × 20px */
	flex: 0 0 auto;
}

/* Price — Highlights body style: Poppins Regular 16 / 1.75rem */
.woocommerce-product-list ul.products .price,
.woocommerce-product-list ul.products .price .amount,
.woocommerce-product-list ul.products .price .woocommerce-Price-amount,
.woocommerce-product-list ul.products .price .woocommerce-Price-currencySymbol,
.woocommerce-product-list ul.products .price ins,
.woocommerce-product-list ul.products .price ins .amount {
	color: #1a1a1a !important;
	text-decoration: none !important;
}
.woocommerce-product-list ul.products .price {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.75rem !important;
	margin: 0 !important;
	margin-top: auto !important;
	order: 3 !important;
}

/* Hide stray add-to-cart buttons */
.woocommerce-product-list ul.products .product-list-inner .button,
.woocommerce-product-list ul.products .product-list-inner .rmc-order-now-btn,
.woocommerce-product-list ul.products .product-list-inner .added_to_cart {
	display: none !important;
}

/* ── Menu page: white background per brand mockup ─────────────────────────── */

body.page-id-1978,
body.page-id-1978 #page,
body.page-id-1978 .site-content,
body.page-id-1978 .poco-main-content,
body.page-id-1978 #primary,
body.page-id-1978 #main {
	background-color: #ffffff !important;
}

/* Hide the default Poco page-title banner on the Menu page (mockup has
   tabs land directly under the header, no large banner) */
body.page-id-1978 .page-title-default,
body.page-id-1978 .poco-page-header {
	display: none !important;
}

/* ── Equal-height cards: stretch list items to row height ──────────────────── */
.woocommerce-product-list ul.products {
	align-items: stretch;
}
.woocommerce-product-list ul.products li.product-item {
	display: flex;
}

/* On mobile, MENU page product cards stack full-width (one per row).
   Scoped to body.page-id-1978 so the homepage Popular Dishes (which
   uses the same .woocommerce-product-list wrapper) isn't affected —
   the homepage gets a horizontal scroller instead, see below. */
@media (max-width: 767px) {
	body.page-id-1978 .woocommerce-product-list ul.products li.product-item,
	body.page-id-1978 .elementor-widget-poco-products-tabs .woocommerce-product-list ul.products li.product-item,
	body.page-id-1978 .elementor-widget-poco-product-tabs .woocommerce-product-list ul.products li.product-item {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	body.page-id-1978 .woocommerce-product-list ul.products,
	body.page-id-1978 .elementor-widget-poco-products-tabs .woocommerce-product-list ul.products {
		display: flex !important;
		flex-direction: column !important;
		gap: 16px;
		width: 100% !important;
	}
	/* Menu page: full-width cards get a taller image area to match */
	body.page-id-1978 .woocommerce-product-list ul.products .product-list-inner > a:first-child {
		height: 300px !important;
		min-height: 300px !important;
		max-height: 300px !important;
		padding: 20px !important;
	}
	body.page-id-1978 .woocommerce-product-list ul.products .product-list-inner img {
		max-height: 260px !important;
		max-width: 100% !important;
		width: auto !important;
		height: auto !important;
		object-fit: contain !important;
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   Homepage "Popular Dishes" — mobile horizontal scroller
   The widget renders an outer .woocommerce-carousel + inner
   <ul.products> with .product-item children. On mobile we bypass any
   Poco carousel JS and use a pure-CSS scroll-snap row instead.
   ───────────────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
	body.home .woocommerce-product-list .woocommerce-carousel,
	body.page-id-1011 .woocommerce-product-list .woocommerce-carousel {
		overflow: visible !important;
	}
	body.home .woocommerce-product-list ul.products,
	body.page-id-1011 .woocommerce-product-list ul.products {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		gap: 12px !important;
		overflow-x: auto !important;
		overflow-y: visible !important;
		padding: 4px 16px 16px !important;
		margin: 0 -15px !important; /* bleed past Poco's 15px column gutter */
		scroll-snap-type: x mandatory;
		scroll-padding-left: 16px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		width: auto !important;
	}
	body.home .woocommerce-product-list ul.products::-webkit-scrollbar,
	body.page-id-1011 .woocommerce-product-list ul.products::-webkit-scrollbar {
		display: none;
	}
	body.home .woocommerce-product-list ul.products li.product-item,
	body.page-id-1011 .woocommerce-product-list ul.products li.product-item {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 0 0 100% !important;
		margin: 0 !important;
		scroll-snap-align: start;
	}
	/* Hide prev/next arrows — swipe handles navigation on mobile */
	body.home .woocommerce-product-list .slick-prev,
	body.home .woocommerce-product-list .slick-next,
	body.home .woocommerce-product-list button.slick-arrow,
	body.page-id-1011 .woocommerce-product-list .slick-prev,
	body.page-id-1011 .woocommerce-product-list .slick-next,
	body.page-id-1011 .woocommerce-product-list button.slick-arrow {
		display: none !important;
	}
	/* Card image area */
	body.home .woocommerce-product-list ul.products .product-list-inner > a:first-child,
	body.page-id-1011 .woocommerce-product-list ul.products .product-list-inner > a:first-child {
		height: 200px !important;
		min-height: 200px !important;
		max-height: 200px !important;
		padding: 16px !important;
	}
	body.home .woocommerce-product-list ul.products .product-list-inner img,
	body.page-id-1011 .woocommerce-product-list ul.products .product-list-inner img {
		max-height: 168px !important;
		max-width: 100% !important;
		object-fit: contain !important;
	}
}

/* ── Menu category tabs (Poco Elementor product-tabs widget) ──────────────── */

/* Target the horizontal tab title row — scope to the tabs widget only so
   we don't affect other tab-based Elementor widgets. */
.elementor-widget-poco-products-tabs .elementor-tabs-wrapper,
.elementor-widget-poco-product-tabs .elementor-tabs-wrapper {
	display: flex !important;
	flex-wrap: nowrap;
	gap: 10px;
	justify-content: center;
	align-items: center;
	border: 0 !important;
	padding: 0 !important;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.elementor-widget-poco-products-tabs .elementor-tabs-wrapper::-webkit-scrollbar,
.elementor-widget-poco-product-tabs .elementor-tabs-wrapper::-webkit-scrollbar {
	display: none;
}
.elementor-widget-poco-products-tabs .elementor-tab-title,
.elementor-widget-poco-product-tabs .elementor-tab-title {
	white-space: nowrap;
	flex: 0 0 auto;
}

/* Mobile titles share .elementor-tab-title so the inline-flex rule above would
   show them on desktop. Use double-class specificity to suppress them. */
.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title,
.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title {
	display: none !important;
}
@media (max-width: 767px) {
	.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-desktop-title,
	.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-desktop-title {
		display: none !important;
	}

	/* Mobile accordion rows — full width, pill shape, chevron on right */
	.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title,
	.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		width: 100% !important;
		padding: 16px 20px !important;
		border-radius: 999px !important;
		background: #ffffff !important;
		border: 1.5px solid #e5e5e5 !important;
		color: #1a1a1a !important;
		font-size: 14px !important;
		font-weight: 700 !important;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		cursor: pointer;
		box-sizing: border-box;
		white-space: normal !important;
	}

	/* Chevron via ::after pseudo-element */
	.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title::after,
	.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title::after {
		content: '' !important;
		display: block !important;
		width: 10px;
		height: 10px;
		border-right: 2px solid #1a1a1a;
		border-bottom: 2px solid #1a1a1a;
		transform: rotate(45deg);
		transition: transform 0.2s ease;
		flex-shrink: 0;
		margin-left: 12px;
	}

	/* Active state: yellow fill + chevron rotates up */
	.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title.elementor-active,
	.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title.elementor-active {
		background: #fbc300 !important;
		border-color: #fbc300 !important;
	}
	.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title.elementor-active::after,
	.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title.elementor-active::after {
		transform: rotate(-135deg) !important;
	}

	/* Stack the tab titles as a vertical list */
	.elementor-widget-poco-products-tabs .elementor-tabs-wrapper,
	.elementor-widget-poco-product-tabs .elementor-tabs-wrapper {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
		overflow-x: visible !important;
		padding: 0 !important;
	}
}

.elementor-widget-poco-products-tabs .elementor-tab-title,
.elementor-widget-poco-product-tabs .elementor-tab-title,
.elementor-widget-poco-products-tabs .elementor-tab-desktop-title,
.elementor-widget-poco-product-tabs .elementor-tab-desktop-title {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	padding: 8px 18px !important;
	min-height: 0 !important;
	border-radius: 999px !important;
	background-color: #ffffff !important;
	color: #1a1a1a !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	border: 1px solid #e5e5e5 !important;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.elementor-widget-poco-products-tabs .elementor-tab-title.elementor-active,
.elementor-widget-poco-product-tabs .elementor-tab-title.elementor-active,
.elementor-widget-poco-products-tabs .elementor-tab-desktop-title.elementor-active,
.elementor-widget-poco-product-tabs .elementor-tab-desktop-title.elementor-active {
	background-color: #fbc300 !important;
	color: #1a1a1a !important;
	border-color: #fbc300 !important;
}

.elementor-widget-poco-products-tabs .elementor-tab-title:hover,
.elementor-widget-poco-product-tabs .elementor-tab-title:hover {
	background-color: #fbc300 !important;
	color: #1a1a1a !important;
	border-color: #fbc300 !important;
}

/* Strip any underline indicator Poco paints under the active tab */
.elementor-widget-poco-products-tabs .elementor-tab-title:after,
.elementor-widget-poco-product-tabs .elementor-tab-title:after,
.elementor-widget-poco-products-tabs .elementor-tab-title:before,
.elementor-widget-poco-product-tabs .elementor-tab-title:before {
	display: none !important;
}

/* ── Menu page — spec from /Users/rnmbp14/Desktop/realmccoy/AI/*.pdf ─────────
   Main article padding 56px 0, sections gap 56px, title block (Frame 7)
   gap 24px, tab bar 96px tall with 16px gap between 56px pills.           */

/* Main article padding per spec (Main → Article: 56px 0).
   Zero Poco's built-in main/content spacing and apply the 56 on
   the first section only so the total gap to the header is 56. */
body.page-id-1978 #main,
body.page-id-1978 .site-content,
body.page-id-1978 #content,
body.page-id-1978 #primary {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
}

/* Title block (Frame 7) — big "Menu" + subtitle, gap 24 */
body.page-id-1978 .elementor-element-mnutitle {
	padding-top: 56px !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
}
body.page-id-1978 .elementor-element-mnutitle > .elementor-container {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
/* Title widget — zero all default margins; heading sits tight */
body.page-id-1978 .elementor-element-mnutheadg,
body.page-id-1978 .elementor-element-mnutheadg .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}
body.page-id-1978 .elementor-element-mnutheadg .elementor-heading-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 60px !important;
	font-weight: 700 !important;
	line-height: 4.25rem !important;
	letter-spacing: -0.09rem !important;
	line-height: 1 !important;
	color: #1a1a1a !important;
	letter-spacing: -0.02em;
	margin: 0 !important;
	padding: 0 !important;
}

/* Subtitle widget — 24px gap from title is the ONLY space above */
body.page-id-1978 .elementor-element-mnutsubh,
body.page-id-1978 .elementor-element-mnutsubh .elementor-widget-container {
	margin: 24px 0 0 0 !important;
	padding: 0 !important;
}
body.page-id-1978 .elementor-element-mnutsubh .elementor-heading-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 27px !important;
	color: #4a4a4a !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Title section inner wrap — strip Poco/Elementor default padding so
   the only vertical space inside is the 24px between heading and subtitle */
body.page-id-1978 .elementor-element-mnutitle .elementor-widget-wrap {
	padding: 0 !important;
}

/* Tabs section — strip Elementor's default top/bottom pad so the
   56px gap from the title section is authoritative */
body.page-id-1978 .elementor-element-8505588 > .elementor-container,
body.page-id-1978 .elementor-element-8505588 .elementor-widget-wrap {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
body.page-id-1978 .elementor-element-8505588 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Gap 56 between sections — stack spacing on Menu page */
body.page-id-1978 .elementor-element-mnutitle,
body.page-id-1978 .elementor-element-8505588,
body.page-id-1978 .elementor-element-mnuctasec {
	margin-bottom: 56px !important;
}
body.page-id-1978 .elementor-element-mnuctasec {
	margin-bottom: 0 !important;
}

/* ── Tab bar container — 96px tall, centered, 16px gap, 20px 0 padding ──── */
body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tabs-wrapper {
	display: flex !important;
	flex-wrap: nowrap;
	gap: 16px !important;
	justify-content: center;
	align-items: center;
	padding: 20px 0 !important;
	min-height: 96px;
	overflow-x: auto;
	scrollbar-width: none;
}
body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tabs-wrapper::-webkit-scrollbar {
	display: none;
}

/* ── Tab pill — 56px tall, 20px 24px padding, 16px radius ──────────────── */
body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title:not(.elementor-tab-mobile-title) {
	height: 56px !important;
	min-height: 56px !important;
	padding: 20px 24px !important;
	border-radius: 16px !important;
	border: 1px solid #e5e5e5 !important;
	background: #ffffff !important;
	color: #1a1a1a !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	white-space: nowrap !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

/* Active pill — yellow */
body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title.elementor-active:not(.elementor-tab-mobile-title) {
	background: #fbc300 !important;
	border-color: #fbc300 !important;
	color: #1a1a1a !important;
}

/* Hover pill — light yellow tint */
body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title:not(.elementor-tab-mobile-title):hover {
	border-color: #fbc300 !important;
	color: #1a1a1a !important;
}

/* On mobile, hide the desktop tab row and show the mobile (accordion) titles.
   Matches the specificity of the page-scoped rules above so they actually win. */
@media (max-width: 767px) {
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-desktop-title,
	body.page-id-1978 .elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-desktop-title {
		display: none !important;
	}
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title,
	body.page-id-1978 .elementor-widget-poco-product-tabs .elementor-tab-title.elementor-tab-mobile-title {
		display: inline-flex !important;
	}
	/* Tabs wrapper — 15px side gutter, pills fill the remaining width */
	body.page-id-1978 .elementor-widget-poco-products-tabs,
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-widget-container {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tabs-wrapper {
		padding: 0 15px !important;
		min-height: 0;
		box-sizing: border-box;
		width: 100% !important;
	}
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tab-title.elementor-tab-mobile-title {
		width: 100% !important;
		box-sizing: border-box !important;
	}
	/* Mobile pills live inside .elementor-tabs-content-wrapper (not the desktop
	   .elementor-tabs-wrapper). Pad that wrapper so pills + content stay within
	   the 15px viewport gutter. */
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tabs-content-wrapper {
		padding-left: 15px !important;
		padding-right: 15px !important;
		box-sizing: border-box !important;
		max-width: 100vw !important;
		overflow-x: hidden;
	}
	body.page-id-1978 .elementor-widget-poco-products-tabs .elementor-tabs-content-wrapper > .elementor-tab-title.elementor-tab-mobile-title {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* CTA section — full width minus 15px gutter on each side */
	body.page-id-1978 .elementor-element-mnuctasec {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		position: relative !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		box-sizing: border-box !important;
	}
	body.page-id-1978 .elementor-element-mnuctasec > .elementor-container {
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	body.page-id-1978 .elementor-element-mnuctasec > .elementor-container > .elementor-column {
		width: 100% !important;
	}
}

/* ── Delivery CTA section — cream box, 24px radius, 40px 0 pad, center ─── */
body.page-id-1978 .elementor-element-mnuctasec > .elementor-container > .elementor-column > .elementor-widget-wrap {
	background: #fef3e0 !important;
	border-radius: 24px !important;
	padding: 40px 24px !important;
}
@media (max-width: 767px) {
	body.page-id-1978 .elementor-element-mnuctasec > .elementor-container > .elementor-column > .elementor-widget-wrap {
		border-radius: 0 !important;
	}
}
body.page-id-1978 .elementor-element-mnuctath {
	margin: 0 0 24px 0 !important;
	padding: 0 !important;
}
body.page-id-1978 .elementor-element-mnuctath .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}
body.page-id-1978 .elementor-element-mnuctath .elementor-heading-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: #1a1a1a !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Zero the HTML widget's default spacing so the 24px gap above is authoritative */
body.page-id-1978 .elementor-element-mnuctabtn,
body.page-id-1978 .elementor-element-mnuctabtn .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

/* Uber Eats + Skip badges — 64px gap, centered horizontally */
.rmc-cta-badges {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 64px;
	flex-wrap: wrap;
}
.rmc-cta-badge {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 269px;
	height: 120px;
	padding: 16px 32px;
	border-radius: 12px;
	text-decoration: none !important;
	font-family: 'Poppins', sans-serif;
	box-sizing: border-box;
	transition: transform 0.2s, box-shadow 0.2s;
}
.rmc-cta-badge:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
}
.rmc-cta-badge--uber {
	background: #06c167;
	color: #000000 !important;
}
.rmc-cta-badge--skip {
	background: #ff8000;
	color: #ffffff !important;
}
.rmc-cta-label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.85;
	margin-bottom: 4px;
}
.rmc-cta-brand {
	display: block;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
}
.rmc-cta-brand--skip {
	font-size: 36px;
	font-style: italic;
	letter-spacing: 0.02em;
}

/* Hide the existing modal trigger on Menu page product cards — the cream
   CTA at the bottom now handles the "order" affordance. Cards remain
   clickable via order-modal.js; this only changes visual emphasis. */

/* Hide Poco's fixed handheld footer bar (Shop / My Account / Search /
   Wishlist / Cart) across all mobile/tablet breakpoints — we don't use
   WooCommerce account/cart/wishlist flows on this site. */
.poco-handheld-footer-bar {
	display: none !important;
}
body.mobile-footer-bar-active {
	padding-bottom: 0 !important;
}

/* Tablet/mobile tweaks */
@media (max-width: 1023px) {
	body.page-id-1978 .elementor-element-mnutheadg .elementor-heading-title {
		font-size: 48px !important;
	}
	.rmc-cta-badges {
		gap: 24px;
	}
	.rmc-cta-badge {
		min-width: 220px;
		height: 100px;
	}
	.rmc-cta-brand { font-size: 26px; }
	.rmc-cta-brand--skip { font-size: 30px; }
}
@media (max-width: 599px) {
	body.page-id-1978 .elementor-element-mnutheadg .elementor-heading-title {
		font-size: 36px !important;
	}
	body.page-id-1978 .elementor-element-mnutsubh .elementor-heading-title {
		font-size: 16px !important;
		line-height: 22px !important;
	}
	.rmc-cta-badges { flex-direction: column; gap: 16px; }
	.rmc-cta-badge { width: 100%; min-width: 0; }
}

/* ── Franchise page (page-id 7099) — Gutenberg block layout ────────────────
   Hero (centered) + 5 alternating two-column sections (image + text) +
   form section. Image columns use .rmc-img-placeholder grey boxes for now.
   ───────────────────────────────────────────────────────────────────────── */

/* Image placeholder — grey box, 4:3 aspect, rounded */
.rmc-img-placeholder {
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #d3d3d3;
	border-radius: 8px;
	display: block;
}
@supports not (aspect-ratio: 4 / 3) {
	.rmc-img-placeholder {
		padding-top: 75%;
		position: relative;
	}
}

/* Reset Poco's content wrapper so franchise content goes full-bleed
   (no narrow Poco column) and respects our own padding rules */
body.page-id-7099 #content,
body.page-id-7099 #content > .col-full {
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.page-id-7099 #primary,
body.page-id-7099 #main,
body.page-id-7099 article#post-7099 {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
}
body.page-id-7099 .entry-content {
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
/* Hide any default page title banner */
body.page-id-7099 .page-title-default,
body.page-id-7099 .poco-page-header,
body.page-id-7099 .entry-header {
	display: none !important;
}

/* ── Hero ── */
body.page-id-7099 .rmc-fr-hero {
	max-width: 720px;
	margin: 0 auto !important;
	padding: 80px 24px 56px !important;
	text-align: center;
}
body.page-id-7099 .rmc-fr-hero h1.wp-block-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 48px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
	color: #1a1a1a !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
}
body.page-id-7099 .rmc-fr-hero p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;
	color: #4a4a4a !important;
	max-width: 560px;
	margin: 0 auto 12px !important;
}
body.page-id-7099 .rmc-fr-hero p:last-child {
	margin-bottom: 0 !important;
}

/* ── Alternating two-column sections ── */
body.page-id-7099 .rmc-fr-section.wp-block-columns {
	max-width: 1100px !important;
	margin: 0 auto !important;
	padding: 56px 24px !important;
	gap: 56px !important;
	align-items: center !important;
}
body.page-id-7099 .rmc-fr-section .wp-block-column {
	flex: 1 1 0 !important;
	min-width: 0 !important;
}

/* Section H2 */
body.page-id-7099 .rmc-fr-section h2.wp-block-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #1a1a1a !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
}

/* Section paragraphs */
body.page-id-7099 .rmc-fr-section p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.7 !important;
	color: #1a1a1a !important;
	margin: 0 0 12px !important;
}
body.page-id-7099 .rmc-fr-section p:last-child {
	margin-bottom: 0 !important;
}

/* Section bullet lists — disc bullets, comfortable spacing */
body.page-id-7099 .rmc-fr-section ul.wp-block-list {
	margin: 0 0 16px !important;
	padding-left: 20px !important;
	list-style: disc !important;
}
body.page-id-7099 .rmc-fr-section ul.wp-block-list li {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.7 !important;
	color: #1a1a1a !important;
	margin-bottom: 6px !important;
	padding-left: 4px !important;
}

/* ── Form section ── */
body.page-id-7099 .rmc-fr-form {
	max-width: 600px;
	margin: 24px auto 80px !important;
	padding: 32px 24px !important;
}
body.page-id-7099 .rmc-fr-form h2.wp-block-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #1a1a1a !important;
	margin: 0 0 8px !important;
	text-align: center !important;
}
body.page-id-7099 .rmc-fr-form > p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	color: #4a4a4a !important;
	margin: 0 0 32px !important;
	text-align: center !important;
}

/* CF7 wraps fields in <p> by default — kill that paragraph spacing
   inside our .rmc-cf7-field wrappers so labels sit tight to inputs */
.wpcf7-form .rmc-cf7-field p,
.wpcf7-form .rmc-cf7-submit p {
	margin: 0 !important;
}
body.page-id-7099 .wpcf7-form .wpcf7-form-control-wrap {
	display: block;
	margin-top: 6px;
}

/* Mobile: stack columns, tighten spacing */
@media (max-width: 767px) {
	body.page-id-7099 .rmc-fr-hero {
		padding: 48px 16px 32px !important;
	}
	body.page-id-7099 .rmc-fr-hero h1.wp-block-heading {
		font-size: 34px !important;
	}
	body.page-id-7099 .rmc-fr-section.wp-block-columns {
		padding: 32px 16px !important;
		gap: 24px !important;
		flex-direction: column !important;
	}
	body.page-id-7099 .rmc-fr-section .wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
	}
	body.page-id-7099 .rmc-fr-section h2.wp-block-heading {
		font-size: 24px !important;
	}
	body.page-id-7099 .rmc-fr-form {
		padding: 16px !important;
		margin-bottom: 48px !important;
	}
	body.page-id-7099 .rmc-fr-form h2.wp-block-heading {
		font-size: 26px !important;
	}
}

/* ── CF7 form styling (franchise inquiry + future forms) ──────────────────── */
.rmc-cf7-field {
	display: block;
	margin-bottom: 18px;
}
.rmc-cf7-field label {
	display: block;
	text-align: left;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1a1a1a;
	margin-bottom: 6px;
}
.rmc-cf7-field .wpcf7-form-control {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	color: #1a1a1a;
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	outline: none;
	transition: border-color 0.15s ease;
}
.rmc-cf7-field .wpcf7-form-control:focus {
	border-color: #fbc300;
}
.rmc-cf7-field .wpcf7-form-control::placeholder,
.rmc-cf7-field .wpcf7-form-control::-webkit-input-placeholder,
.rmc-cf7-field .wpcf7-form-control::-moz-placeholder,
input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
textarea::placeholder {
	color: #999999 !important;
	opacity: 1;
}
.rmc-cf7-field textarea.wpcf7-form-control {
	min-height: 96px;
	resize: vertical;
}
.rmc-cf7-submit {
	margin-top: 8px;
}
.rmc-cf7-submit .wpcf7-submit,
.wpcf7 .rmc-cf7-submit input[type="submit"] {
	display: block;
	width: 100%;
	padding: 20px 45px;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1em;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #1a1a1a !important;
	background-color: #fbc300 !important;
	border: none !important;
	border-radius: 8px !important;
	cursor: pointer;
	transition: background-color 0.15s ease;
	-webkit-appearance: none;
	appearance: none;
}
.rmc-cf7-submit .wpcf7-submit:hover,
.wpcf7 .rmc-cf7-submit input[type="submit"]:hover {
	background-color: #e0ac00 !important;
	color: #1a1a1a !important;
}


/* ─────────────────────────────────────────────────────────────────────────
   Header — disable Poco's sticky-header shrink/transform animation.
   The header section ships with class .sticky-header which Poco's JS adds
   transform/translate/transitions to on scroll. Lock the visual state so
   it remains identical at scroll-top and scrolled.
   ───────────────────────────────────────────────────────────────────────── */
.elementor-location-header .sticky-header,
.elementor-location-header .sticky-header.elementor-sticky,
.elementor-location-header .sticky-header.elementor-sticky--effects,
.elementor-location-header .sticky-header.poco-sticky-stuck,
.elementor-location-header .sticky-header.is-sticky,
.elementor-location-header .sticky-header.stuck {
	transform: none !important;
	transition: none !important;
	min-height: initial !important;
	height: auto !important;
	box-shadow: none !important;
}

/* Reset any shrink applied to inner widgets (logo, nav) on the stuck state */
.elementor-location-header .sticky-header.elementor-sticky--effects .elementor-widget-poco-site-logo img,
.elementor-location-header .sticky-header.elementor-sticky--effects .elementor-widget-image img,
.elementor-location-header .sticky-header.is-sticky .elementor-widget-poco-site-logo img,
.elementor-location-header .sticky-header.poco-sticky-stuck .elementor-widget-poco-site-logo img,
.elementor-location-header .sticky-header.stuck .elementor-widget-poco-site-logo img {
	max-height: none !important;
	height: auto !important;
	transform: none !important;
	transition: none !important;
}

/* ─────────────────────────────────────────────────────────────────────────
   Site-wide Typography (per Figma anatomy spec)
   ───────────────────────────────────────────────────────────────────────── */

/* Base body — Highlights body style */
body,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-theme-post-content p,
.entry-content p,
p {
	font-family: 'Poppins', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75rem;
	color: #1a1a1a;
}

/* Page Title — H1 (Desktop/Header/Page Title) */
h1,
.entry-title,
.elementor-widget-heading h1.elementor-heading-title {
	font-family: 'Poppins', sans-serif;
	font-size: 60px;
	font-weight: 700;
	line-height: 4.25rem;
	letter-spacing: -0.09rem;
	color: #1a1a1a;
}

/* Section Title — H2 (Desktop/Header/Section Title) */
h2,
.elementor-widget-heading h2.elementor-heading-title {
	font-family: 'Poppins', sans-serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 2.75rem;
	color: #1a1a1a;
}

/* Card Title — H3 (Desktop/Header/Card Title) */
h3,
.elementor-widget-heading h3.elementor-heading-title,
.woocommerce-loop-product__title,
.product-list-inner .product-title,
.poco-products-tabs .product-title,
article.post .entry-title,
.post-loop .entry-title {
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.63rem;
	color: #1a1a1a;
}

/* Stat / Year display — H4-ish (used for "1969", "1980", "2023") */
.rmc-stat,
.rmc-year,
h4.rmc-stat,
.elementor-widget-heading h4.elementor-heading-title.rmc-stat {
	font-family: 'Poppins', sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 3.38rem;
	color: #ed2024;
}

/* Page Intro body (Desktop/Body/Page Intro) — larger lead paragraph */
.rmc-page-intro,
.rmc-page-intro p,
.elementor-element.rmc-page-intro .elementor-widget-container,
.elementor-element.rmc-page-intro p {
	font-family: 'Poppins', sans-serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 2rem;
	color: #1a1a1a;
}

/* Card Description (Desktop/Body/Card Description) */
.short-description,
.short-description p,
.product-list-inner .short-description,
.entry-summary,
.entry-summary p,
article.post .entry-content,
article.post .entry-content p {
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.25rem;
	color: #1a1a1a;
}

/* CTA Button — solid filled buttons (e.g. yellow "VIEW FULL MENU")
   Spec: Poppins Bold 14 / 0.88rem / uppercase. Letter-spacing 0. */
.rmc-nav-cta,
.rmc-read-more,
.read-more,
a.read-more,
.elementor-button:not(.rmc-see-full-menu .elementor-button),
.wpcf7-submit,
button[type="submit"],
.rmc-cf7-submit .wpcf7-submit,
.rmc-modal__btn {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 0.88rem;
	text-transform: uppercase;
	letter-spacing: 0;
}

/* Form labels keep Poppins — already present, here for consistency with spec */
.rmc-cf7-field label,
.elementor-field-group label {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1a1a1a;
}

/* Form input placeholder + value text */
.rmc-cf7-field .wpcf7-form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	font-family: 'Poppins', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #1a1a1a;
}

/* Mobile typography scale-down */
@media (max-width: 767px) {
	h1,
	.entry-title,
	.elementor-widget-heading h1.elementor-heading-title {
		font-size: 40px;
		line-height: 1.1;
		letter-spacing: -0.04rem;
	}
	h2,
	.elementor-widget-heading h2.elementor-heading-title {
		font-size: 26px;
		line-height: 1.2;
	}
	.rmc-page-intro,
	.rmc-page-intro p {
		font-size: 17px;
		line-height: 1.6;
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   Latest News archive (body.blog) — apply established type system
   ───────────────────────────────────────────────────────────────────────── */

/* Page layout — comfortable vertical rhythm between posts */
body.blog .site-main {
	max-width: 860px;
	margin: 0 auto;
	padding: 0 24px 80px;
}

/* Each post card */
body.blog article.post {
	margin-bottom: 56px;
	padding-bottom: 56px;
	border-bottom: 1px solid #e8e8e8;
}
body.blog article.post:last-of-type {
	border-bottom: none;
}

/* Featured image */
body.blog article.post .post-thumbnail {
	margin-bottom: 20px;
	border-radius: 16px;
	overflow: hidden;
}
body.blog article.post .post-thumbnail img {
	width: 100%;
	height: auto;
	display: block;
}

/* Meta line: category · date · author */
body.blog article.post .entry-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	margin-bottom: 12px;
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #767676 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
body.blog article.post .entry-meta a,
body.blog article.post .entry-meta time {
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #767676 !important;
	text-decoration: none !important;
}

/* Category tag — brand red */
body.blog article.post .categories-link a {
	color: #ed2024 !important;
	font-weight: 700 !important;
}
body.blog article.post .categories-link a:hover {
	text-decoration: underline !important;
}

/* Post title — Section Title scale (H2 / Poppins 32px 700) */
body.blog article.post .entry-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em;
	color: #1a1a1a !important;
	margin: 0 0 16px !important;
}
body.blog article.post .entry-title a {
	font-family: 'Poppins', sans-serif !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
}
body.blog article.post .entry-title a:hover {
	color: #ed2024 !important;
}

/* Entry content / excerpt */
body.blog article.post .entry-content,
body.blog article.post .entry-content p,
body.blog article.post .entry-summary,
body.blog article.post .entry-summary p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
	color: #1a1a1a !important;
}

/* Mobile */
@media (max-width: 767px) {
	body.blog .site-main {
		padding: 32px 16px 56px;
	}
	body.blog article.post .entry-title {
		font-size: 22px !important;
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   Single blog post (body.single-post) — apply established type system
   ───────────────────────────────────────────────────────────────────────── */

body.single-post .site-main {
	max-width: 860px;
	margin: 0 auto;
	padding: 48px 24px 80px;
}

/* Strip parent-theme card border/radius/background from post wrappers
   (single + archive). On archive we keep our own border-bottom separator */
body.single-post article.post,
body.single-post .single-content {
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}
body.blog article.post {
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
}

/* Parent theme adds 0 40px horizontal padding to .entry-header/.entry-content;
   strip it so content sits flush with the featured image edges */
body.single-post .hentry .entry-header,
body.single-post .hentry .entry-content,
body.blog .hentry .entry-header,
body.blog .hentry .entry-content {
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Featured image */
body.single-post .single-content .post-thumbnail {
	margin-bottom: 28px;
	border-radius: 16px;
	overflow: hidden;
}
body.single-post .single-content .post-thumbnail img {
	width: 100%;
	height: auto;
	display: block;
}

/* Post title */
body.single-post .single-content .entry-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em;
	color: #1a1a1a !important;
	margin: 0 0 16px !important;
}

/* Meta line: category · date · author */
body.single-post .single-content .entry-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	margin-bottom: 32px;
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #767676 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
body.single-post .single-content .entry-meta a,
body.single-post .single-content .entry-meta time {
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #767676 !important;
	text-decoration: none !important;
}
body.single-post .single-content .categories-link a {
	color: #ed2024 !important;
	font-weight: 700 !important;
}
body.single-post .single-content .categories-link a:hover {
	text-decoration: underline !important;
}

/* Body content — Elementor text editor widgets inside the post */
body.single-post .single-content .entry-content,
body.single-post .single-content .entry-content p,
body.single-post .single-content .elementor-widget-text-editor p,
body.single-post .single-content .elementor-widget-text-editor {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
	color: #1a1a1a !important;
}

/* Links inside post body */
body.single-post .single-content .entry-content a,
body.single-post .single-content .elementor-widget-text-editor a {
	color: #ed2024 !important;
	text-decoration: underline !important;
}
body.single-post .single-content .entry-content a:hover,
body.single-post .single-content .elementor-widget-text-editor a:hover {
	color: #c4181c !important;
}

/* Post navigation (prev/next links) */
body.single-post .post-navigation {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 1px solid #e8e8e8;
}
body.single-post .post-navigation .nav-content {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
}
body.single-post .post-navigation .reader-text {
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #ed2024 !important;
	display: block;
	margin-bottom: 4px;
}
body.single-post .post-navigation a:hover .nav-content {
	color: #ed2024 !important;
}

/* Mobile */
@media (max-width: 767px) {
	body.single-post .site-main {
		padding: 32px 16px 56px;
	}
	body.single-post .single-content .entry-title {
		font-size: 26px !important;
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   Homepage "Popular Dishes" — reskin default Poco product cards
   (.product-block markup) to match the Menu page list-2 cards
   ───────────────────────────────────────────────────────────────────────── */

/* Scope to the home/front page so we don't touch the shop archive */
body.home .woocommerce ul.products li.product,
body.page-id-1011 .woocommerce ul.products li.product {
	background: #ffffff !important;
	border: 1px solid #e8e8e8 !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	box-shadow: none !important;
	padding: 0 !important;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
body.home .woocommerce ul.products li.product:hover,
body.page-id-1011 .woocommerce ul.products li.product:hover {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

/* Image area — flat grey backdrop, centered, kill pink blob */
body.home .woocommerce ul.products li.product .product-block,
body.page-id-1011 .woocommerce ul.products li.product .product-block {
	display: flex;
	flex-direction: column;
	height: 100%;
}
body.home .woocommerce ul.products li.product .product-transition,
body.page-id-1011 .woocommerce ul.products li.product .product-transition {
	background: #f5f5f5 !important;
	background-image: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 24px !important;
	min-height: 220px;
	position: relative;
}
body.home .woocommerce ul.products li.product .product-transition:before,
body.home .woocommerce ul.products li.product .product-transition:after,
body.page-id-1011 .woocommerce ul.products li.product .product-transition:before,
body.page-id-1011 .woocommerce ul.products li.product .product-transition:after {
	display: none !important;
	content: none !important;
	background: none !important;
}
body.home .woocommerce ul.products li.product .product-image,
body.page-id-1011 .woocommerce ul.products li.product .product-image {
	background: transparent !important;
	box-shadow: none !important;
	width: 100% !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
body.home .woocommerce ul.products li.product .product-image:before,
body.home .woocommerce ul.products li.product .product-image:after,
body.page-id-1011 .woocommerce ul.products li.product .product-image:before,
body.page-id-1011 .woocommerce ul.products li.product .product-image:after {
	display: none !important;
	content: none !important;
}
body.home .woocommerce ul.products li.product .product-image img,
body.page-id-1011 .woocommerce ul.products li.product .product-image img {
	margin: 0 auto !important;
	display: block !important;
	max-height: 180px !important;
	width: auto !important;
	object-fit: contain !important;
}

/* Caption: title 18/700, description Roboto 14, price black bold */
body.home .woocommerce ul.products li.product .product-caption,
body.page-id-1011 .woocommerce ul.products li.product .product-caption {
	padding: 16px 18px 18px !important;
	background: #ffffff !important;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
body.home .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.page-id-1011 .woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1a1a1a !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.home .woocommerce ul.products li.product .posted-in,
body.page-id-1011 .woocommerce ul.products li.product .posted-in {
	display: none !important;
}
body.home .woocommerce ul.products li.product .short-description,
body.home .woocommerce ul.products li.product .short-description p,
body.page-id-1011 .woocommerce ul.products li.product .short-description,
body.page-id-1011 .woocommerce ul.products li.product .short-description p {
	font-family: 'Roboto', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #4a4a4a !important;
	margin: 4px 0 8px !important;
}
body.home .woocommerce ul.products li.product .price,
body.home .woocommerce ul.products li.product .price .amount,
body.home .woocommerce ul.products li.product .price ins,
body.page-id-1011 .woocommerce ul.products li.product .price,
body.page-id-1011 .woocommerce ul.products li.product .price .amount,
body.page-id-1011 .woocommerce ul.products li.product .price ins {
	color: #1a1a1a !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.75rem !important;
	text-decoration: none !important;
	margin-top: 4px;
}

/* Hide the wishlist button overlay on the homepage cards */
body.home .woocommerce ul.products li.product .woosw-btn,
body.page-id-1011 .woocommerce ul.products li.product .woosw-btn {
	display: none !important;
}

/* ─────────────────────────────────────────────────────────────────────────
   "SEE FULL MENU →" link — replaces the yellow circle "See all"
   Use class "rmc-see-full-menu" on the link in Elementor.
   ───────────────────────────────────────────────────────────────────────── */
/* When applied via Elementor _css_classes, .rmc-see-full-menu lands on the
   wrapper .elementor-widget-button. The inner anchor is .elementor-button.
   Target both forms so styling holds whether it's a raw <a> or Elementor btn. */
.rmc-see-full-menu,
a.rmc-see-full-menu,
.elementor-widget-button.rmc-see-full-menu .elementor-button,
.elementor-widget-button.rmc-see-full-menu a.elementor-button,
.rmc-see-full-menu .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: normal !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
	color: #C01A1E !important;
	text-decoration: none !important;
	padding: 4px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	transition: color 0.15s ease;
}

/* The Elementor button wraps the label in .elementor-button-text.
   Hide its default :before/:after icons and put our arrow on the text span. */
.elementor-widget-button.rmc-see-full-menu .elementor-button-icon,
.rmc-see-full-menu .elementor-button-icon {
	display: none !important;
}
.elementor-widget-button.rmc-see-full-menu .elementor-button-content-wrapper,
.rmc-see-full-menu .elementor-button-content-wrapper {
	gap: 8px !important;
}

/* Animated arrow: append after the inner text span (Elementor) and after raw links */
.rmc-see-full-menu .elementor-button-text:after,
a.rmc-see-full-menu:after,
.rmc-see-full-menu:not(.elementor-widget-button):after {
	content: "→";
	display: inline-block;
	font-size: 18px;
	line-height: 1;
	margin-left: 8px;
	transition: transform 0.2s ease;
}

.rmc-see-full-menu:hover,
a.rmc-see-full-menu:hover,
.elementor-widget-button.rmc-see-full-menu .elementor-button:hover,
.rmc-see-full-menu .elementor-button:hover {
	color: #8c1316 !important;
	background: transparent !important;
	background-color: transparent !important;
}
.rmc-see-full-menu:hover .elementor-button-text:after,
a.rmc-see-full-menu:hover:after,
.rmc-see-full-menu:not(.elementor-widget-button):hover:after {
	transform: translateX(4px);
}
.rmc-see-full-menu:focus-visible,
.rmc-see-full-menu .elementor-button:focus-visible {
	outline: 2px solid #ed2024;
	outline-offset: 4px;
	border-radius: 2px;
}

/* Right-align the wrapper widget in its column (so it sits flush right of
   the heading row, mirroring the original "See all" placement) */
.elementor-widget-button.rmc-see-full-menu {
	text-align: right;
}
.elementor-widget-button.rmc-see-full-menu .elementor-widget-container {
	text-align: right;
}

/* ─────────────────────────────────────────────────────────────────────────
   Homepage "Latest News" — match the Menu product card UI
   Markup: .column-item.post-style-1 .post-inner > .post-thumbnail + .entry-header
           (.entry-meta + h3.entry-title) + .entry-content + .entry-bottom
   ───────────────────────────────────────────────────────────────────────── */
body.home .poco-post-grid-2 .post-inner,
body.home .poco-post-grid .post-inner,
body.page-id-1011 .poco-post-grid-2 .post-inner,
body.page-id-1011 .poco-post-grid .post-inner,
body.home .column-item.post-style-1 .post-inner,
body.page-id-1011 .column-item.post-style-1 .post-inner {
	background: #ffffff !important;
	border: 1px solid #e8e8e8 !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	box-shadow: none !important;
	display: flex;
	flex-direction: column;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
body.home .column-item.post-style-1 .post-inner:hover,
body.page-id-1011 .column-item.post-style-1 .post-inner:hover {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

/* Thumbnail — flat grey backdrop, image fills, no "POCO" placeholder feel */
body.home .column-item.post-style-1 .post-thumbnail,
body.page-id-1011 .column-item.post-style-1 .post-thumbnail {
	background: #f5f5f5 !important;
	min-height: 220px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
body.home .column-item.post-style-1 .post-thumbnail a,
body.page-id-1011 .column-item.post-style-1 .post-thumbnail a {
	display: block;
	width: 100%;
	height: 100%;
}
body.home .column-item.post-style-1 .post-thumbnail img,
body.page-id-1011 .column-item.post-style-1 .post-thumbnail img {
	width: 100%;
	height: 100%;
	min-height: 220px;
	object-fit: cover;
	display: block;
}

/* Hide meta line (category / date / author) */
body.home .column-item.post-style-1 .entry-meta,
body.page-id-1011 .column-item.post-style-1 .entry-meta {
	display: none !important;
}

/* Card body padding */
body.home .column-item.post-style-1 .entry-header,
body.home .column-item.post-style-1 .entry-content,
body.home .column-item.post-style-1 .entry-bottom,
body.page-id-1011 .column-item.post-style-1 .entry-header,
body.page-id-1011 .column-item.post-style-1 .entry-content,
body.page-id-1011 .column-item.post-style-1 .entry-bottom {
	padding: 0 18px;
	background: #ffffff;
}
body.home .column-item.post-style-1 .entry-header,
body.page-id-1011 .column-item.post-style-1 .entry-header {
	padding-top: 16px;
}
body.home .column-item.post-style-1 .entry-bottom,
body.page-id-1011 .column-item.post-style-1 .entry-bottom {
	padding-bottom: 18px;
	margin-top: auto;
}

/* Title — Card Title spec: Poppins Bold 18 / 1.63rem */
body.home .column-item.post-style-1 .entry-title,
body.home .column-item.post-style-1 .entry-title a,
body.page-id-1011 .column-item.post-style-1 .entry-title,
body.page-id-1011 .column-item.post-style-1 .entry-title a {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	font-style: normal !important;
	line-height: 1.63rem !important;
	letter-spacing: 0 !important;
	margin: 0 0 8px 0 !important;
	padding: 0 !important;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.home .column-item.post-style-1 .entry-title a,
body.page-id-1011 .column-item.post-style-1 .entry-title a {
	color: #1a1a1a !important;
	text-decoration: none !important;
}
body.home .column-item.post-style-1 .entry-title a:hover,
body.page-id-1011 .column-item.post-style-1 .entry-title a:hover {
	color: #ed2024 !important;
}

/* Excerpt — Roboto 14, dark grey */
body.home .column-item.post-style-1 .entry-content,
body.home .column-item.post-style-1 .entry-content p,
body.page-id-1011 .column-item.post-style-1 .entry-content,
body.page-id-1011 .column-item.post-style-1 .entry-content p {
	font-family: 'Roboto', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #4a4a4a !important;
	margin: 4px 0 12px !important;
	padding: 0 !important;
	background: transparent !important;
}

/* "READ MORE →" red text-icon link replacing the red box button */
body.home .column-item.post-style-1 .entry-bottom a.button,
body.home .column-item.post-style-1 .entry-bottom .button,
body.page-id-1011 .column-item.post-style-1 .entry-bottom a.button,
body.page-id-1011 .column-item.post-style-1 .entry-bottom .button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 4px 0 !important;
	min-height: 0 !important;
	color: #C01A1E !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: normal !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: color 0.15s ease;
}
body.home .column-item.post-style-1 .entry-bottom a.button:after,
body.page-id-1011 .column-item.post-style-1 .entry-bottom a.button:after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url('assets/images/arrow-forward.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	flex-shrink: 0;
	transform: translateY(-1px);
	transition: transform 0.2s ease;
}
body.home .column-item.post-style-1 .entry-bottom a.button:hover,
body.page-id-1011 .column-item.post-style-1 .entry-bottom a.button:hover {
	color: #8c1316 !important;
}
body.home .column-item.post-style-1 .entry-bottom a.button:hover:after,
body.page-id-1011 .column-item.post-style-1 .entry-bottom a.button:hover:after {
	transform: translate(4px, -1px);
}

/* ─────────────────────────────────────────────────────────────────────────
   Swap the unicode "→" arrow on .rmc-see-full-menu with the brand SVG
   so SEE FULL MENU and SEE ALL NEWS use the same icon.
   ───────────────────────────────────────────────────────────────────────── */
/* Make the inner text span participate in flex so the arrow centers
   against the cap height of the label, not the descender baseline. */
.rmc-see-full-menu .elementor-button-text,
a.rmc-see-full-menu {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	line-height: 1 !important;
}
.rmc-see-full-menu .elementor-button-text:after,
a.rmc-see-full-menu:after,
.rmc-see-full-menu:not(.elementor-widget-button):after {
	content: "" !important;
	display: inline-block;
	width: 16px;
	height: 16px;
	background-image: url('assets/images/arrow-forward.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	font-size: 0 !important;
	flex-shrink: 0;
	transform: translateY(-1px); /* nudge up to align with cap height */
	transition: transform 0.2s ease;
}
.rmc-see-full-menu:hover .elementor-button-text:after,
a.rmc-see-full-menu:hover:after,
.rmc-see-full-menu:not(.elementor-widget-button):hover:after {
	transform: translate(4px, -1px);
}

/* ─────────────────────────────────────────────────────────────────────────
   Homepage "Our Google Reviews" — testimonial cards
   Markup: .elementor-widget-poco-testimonials
             .elementor-testimonial-item-wrapper.style3
               .column-item.elementor-testimonial-item
                 .item-box
                   .top → .details (.avatar, .elementor-testimonial-rating, .job)
                   .content
                   .name
   Spec: fixed-height card, white bg, rounded, perfect 5★, Card Title +
         Card Description type styles already established site-wide.
   ───────────────────────────────────────────────────────────────────────── */

/* Card shell — per Figma spec
   Width 26.33rem, Height 14.15rem (fixed), padding 1.5rem 2.5rem,
   gap 0.5rem, corner radius 1.5rem, vertical / center / center. */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	width: 100%;
	max-width: 26.33rem;
	height: 14.15rem;
	margin: 0 auto;
	padding: 1.5rem 2.5rem !important;
	background: #ffffff !important;
	border: 0 !important;
	border-radius: 1.5rem !important;
	box-shadow: none !important;
	text-align: center !important;
	box-sizing: border-box;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box:hover,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box:hover {
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

/* Wrap the carousel slides at equal heights */
body.home .elementor-widget-poco-testimonials .row.poco-carousel,
body.page-id-1011 .elementor-widget-poco-testimonials .row.poco-carousel {
	align-items: stretch;
}
body.home .elementor-widget-poco-testimonials .column-item.elementor-testimonial-item,
body.page-id-1011 .elementor-widget-poco-testimonials .column-item.elementor-testimonial-item {
	height: auto;
}

/* Top block: hide empty avatar / job, show centered stars
   No bottom margin — parent .item-box uses flex `gap: 0.5rem` per spec. */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .top,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .top {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
}
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .details,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .details {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .avatar,
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .job,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .avatar,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .job {
	display: none !important;
}

/* Stars — render the brand 5-star SVG via background-image so we don't
   depend on Font Awesome (which the parent theme doesn't always load).
   All testimonials are perfect 5 stars per design. */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-rating,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-rating {
	display: block !important;
	/* SVG is 102×37 → aspect 2.76. Spec height 2.27rem → width 6.26rem. */
	width: 6.26rem;
	height: 2.27rem;
	margin: 0 auto;
	padding: 0;
	background-image: url('assets/images/testimonial-5star.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	font-size: 0;
	line-height: 0;
}
/* Hide the Font Awesome <i> stars Poco renders inside the rating div */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-rating .fa,
body.home .elementor-widget-poco-testimonials .elementor-testimonial-rating .fa-star,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-rating .fa,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-rating .fa-star {
	display: none !important;
}

/* Content (review text) — Card Description: Roboto 14 / 1.25rem
   Fixed 5-line clamp = 6.25rem block per spec. Margins zero;
   parent flex `gap: 0.5rem` handles vertical rhythm. */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .content,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .content {
	font-family: 'Roboto', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.25rem !important;
	color: #1a1a1a !important;
	text-align: center !important;
	margin: 0;
	padding: 0;
	width: 100%;
	max-height: 6.25rem;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Name (Card Title) — Poppins Bold 18 / 1.63rem */
body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .name,
body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .name {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.63rem !important;
	color: #1a1a1a !important;
	text-align: center !important;
	margin: 0;
	padding: 0;
	width: 100%;
}

/* Tablet / mobile: keep the spec ratio but allow card width to fluid up
   to 26.33rem; fixed height holds since the description always clamps to 5 lines. */
@media (max-width: 1024px) {
	body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box,
	body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box {
		padding: 1.25rem 1.75rem !important;
	}
}
@media (max-width: 767px) {
	body.home .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box,
	body.page-id-1011 .elementor-widget-poco-testimonials .elementor-testimonial-item .item-box {
		padding: 1.25rem 1.5rem !important;
		max-width: 100%;
	}
}

/* ─────────────────────────────────────────────────────────────────────────
   Homepage "Mojo Mondays" feature section — unified card on wood-plank bg
   Section id: b07e387 (full-screen height, content-middle, stretched)
   Cols: 05fd269 (image, left) / b38a160 (text, right)
   Spec: section "Fit To Screen", both columns sit inside a single white
         card with 24px radius; heading reuses Page Title (H1) style;
         body reuses Page Description (Page Intro) style.
   ───────────────────────────────────────────────────────────────────────── */

/* Section — keep elementor-section-height-full's 100vh; add equal vertical
   padding so the white card sits with consistent wood plank space above
   and below. Force flex centering with !important to beat Elementor's
   own section flex defaults. */
body.home .elementor-element-b07e387.elementor-section {
	padding: 80px 24px !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
}

/* Unified card — white rounded surface that wraps both columns.
   Override Elementor's `elementor-section-height-full` rule that forces
   the container to height:100% (which was stretching the card to 100vh
   and ballooning the image). The section stays 100vh; the card sizes to
   the text column's natural height and is vertically centered by the
   section's flex rules. Image fills its half via object-fit cover. */
body.home .elementor-element-b07e387 > .elementor-container,
body.home .elementor-element-b07e387.elementor-section-height-full > .elementor-container {
	background: #ffffff !important;
	border-radius: 24px !important;
	overflow: hidden !important;
	align-items: stretch !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.10);
	width: 100%;
	max-width: 1200px;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 auto;
}

/* Image column — strip per-column background + padding so the image
   sits flush against the card's left edge */
body.home .elementor-element-b07e387 .elementor-element-05fd269,
body.home .elementor-element-b07e387 .elementor-element-05fd269 > .elementor-widget-wrap,
body.home .elementor-element-b07e387 .elementor-element-05fd269 > .elementor-element-populated {
	background: transparent !important;
	background-image: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.home .elementor-element-b07e387 .elementor-element-05fd269 {
	display: flex;
}
body.home .elementor-element-b07e387 .elementor-element-31695f6,
body.home .elementor-element-b07e387 .elementor-element-31695f6 .elementor-widget-container,
body.home .elementor-element-b07e387 .elementor-element-31695f6 .elementor-image,
body.home .elementor-element-b07e387 .elementor-element-31695f6 a {
	height: 100% !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block;
}
body.home .elementor-element-b07e387 .elementor-element-31695f6 img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center;
	display: block !important;
	border-radius: 0 !important;
}

/* Text column — strip per-column background, give comfortable padding */
body.home .elementor-element-b07e387 .elementor-element-b38a160,
body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-widget-wrap,
body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-element-populated {
	background: transparent !important;
	background-image: none !important;
}
body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-widget-wrap,
body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-element-populated {
	padding: 64px 56px !important;
	justify-content: center !important;
}

/* Heading — reuse Page Title (H1) style on the H2 element */
body.home .elementor-element-b07e387 .elementor-element-324ed90 .elementor-heading-title,
body.home .elementor-element-b07e387 .elementor-element-324ed90 h2 {
	font-family: 'Poppins', sans-serif !important;
	font-size: 60px !important;
	font-weight: 700 !important;
	line-height: 4.25rem !important;
	letter-spacing: -0.09rem !important;
	color: #1a1a1a !important;
	margin: 0 0 24px !important;
}

/* Body — reuse Page Description (rmc-page-intro) style */
body.home .elementor-element-b07e387 .elementor-element-e1c30ec,
body.home .elementor-element-b07e387 .elementor-element-e1c30ec p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 2rem !important;
	color: #1a1a1a !important;
	margin: 0 0 32px !important;
}

/* Button — yellow primary CTA, matches site's other yellow buttons */
body.home .elementor-element-b07e387 .elementor-element-ddaa043 .elementor-button {
	background-color: #fbc300 !important;
	color: #1a1a1a !important;
	padding: 16px 32px !important;
	border-radius: 8px !important;
	border: 0 !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	transition: background-color 0.15s ease, transform 0.15s ease;
}
body.home .elementor-element-b07e387 .elementor-element-ddaa043 .elementor-button:hover {
	background-color: #e0ac00 !important;
	transform: translateY(-1px);
}

/* Tablet: tighten card padding */
@media (max-width: 1024px) {
	body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-widget-wrap,
	body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-element-populated {
		padding: 48px 40px !important;
	}
	body.home .elementor-element-b07e387 .elementor-element-324ed90 .elementor-heading-title {
		font-size: 44px !important;
		line-height: 1.15 !important;
	}
}

/* Mobile: stack image above text, no fixed 100vh (let card breathe) */
@media (max-width: 767px) {
	body.home .elementor-element-b07e387.elementor-section {
		min-height: auto !important;
		height: auto !important;
		padding: 32px 16px !important;
	}
	body.home .elementor-element-b07e387 > .elementor-container {
		flex-direction: column;
	}
	body.home .elementor-element-b07e387 .elementor-element-05fd269,
	body.home .elementor-element-b07e387 .elementor-element-b38a160 {
		width: 100% !important;
	}
	body.home .elementor-element-b07e387 .elementor-element-31695f6 img {
		height: 260px !important;
	}
	body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-widget-wrap,
	body.home .elementor-element-b07e387 .elementor-element-b38a160 > .elementor-element-populated {
		padding: 32px 24px !important;
	}
	body.home .elementor-element-b07e387 .elementor-element-324ed90 .elementor-heading-title {
		font-size: 32px !important;
		line-height: 1.2 !important;
		letter-spacing: -0.02em !important;
	}
	body.home .elementor-element-b07e387 .elementor-element-e1c30ec p {
		font-size: 16px !important;
		line-height: 1.6 !important;
	}
}

/* ── Testimonials carousel: pagination dot spacing ───────────────────────────
   .slick-dots is position:absolute; bottom:-52px inside .slick-dotted.slick-slider.
   Give the slider container enough padding-bottom so the dots clear the track,
   then let the callout sit 16px below. */
body.home .elementor-widget-poco-testimonials .slick-dotted.slick-slider,
body.page-id-1011 .elementor-widget-poco-testimonials .slick-dotted.slick-slider {
	padding-bottom: 52px !important;
	margin-bottom: 0 !important;
}

body.home .elementor-widget-poco-testimonials .slick-dots,
body.page-id-1011 .elementor-widget-poco-testimonials .slick-dots {
	bottom: 12px !important; /* centred within the 52px padding zone */
}

/* "Leave A Review" callout — white card appended below the testimonials
   carousel via functions.php filter. Layout: Google G icon + headline +
   subtitle (left) | yellow "Leave A Review" button (right). */
.rmc-testimonials-cta-wrap {
	margin: 16px auto 0;
	max-width: 1100px;
	padding: 0 16px;
}
.rmc-review-callout {
	display: flex;
	align-items: center;
	gap: 20px;
	background: #ffffff;
	border-radius: 16px;
	padding: 20px 28px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
}
.rmc-review-callout__icon {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.rmc-review-callout__icon svg {
	width: 100%;
	height: 100%;
	display: block;
}
.rmc-review-callout__text {
	flex: 1 1 auto;
	min-width: 0;
}
.rmc-review-callout__title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: #1a1a1a !important;
	margin: 0 0 4px !important;
	padding: 0;
}
.rmc-review-callout__subtitle {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: #4a4a4a !important;
	margin: 0 !important;
	padding: 0;
}
.rmc-review-callout__btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 28px;
	background-color: #fbc300;
	color: #1a1a1a !important;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none !important;
	border-radius: 10px;
	border: 0;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color 0.15s ease, transform 0.15s ease;
}
.rmc-review-callout__btn:hover,
.rmc-review-callout__btn:focus {
	background-color: #e0ac00;
	color: #1a1a1a !important;
	transform: translateY(-1px);
}
.rmc-review-callout__btn:focus-visible {
	outline: 2px solid #ed2024;
	outline-offset: 4px;
}

/* Tablet — keep horizontal layout, tighten gaps */
@media (max-width: 1024px) {
	.rmc-review-callout {
		gap: 16px;
		padding: 18px 22px;
	}
	.rmc-review-callout__btn {
		padding: 12px 22px;
		font-size: 13px;
	}
}

/* Mobile — stack vertically, button full-width */
@media (max-width: 640px) {
	.rmc-testimonials-cta-wrap {
		margin-top: 24px;
		padding: 0 12px;
	}
	.rmc-review-callout {
		flex-direction: column;
		text-align: center;
		gap: 14px;
		padding: 20px 18px;
	}
	.rmc-review-callout__icon {
		width: 40px;
		height: 40px;
	}
	.rmc-review-callout__btn {
		width: 100%;
		padding: 14px 20px;
	}
}
