
/* --- Location hero CTAs: Get Directions / Order Now (added 2026-07-30) ---
   Inverted pair, both solid so they stay legible over any hero photo. */
.flexible-section.flexible-banner-section .flexible-banner-btns{
	display:flex;
	flex-wrap:wrap;
	gap:14px;
	margin-top:22px;
}
.flexible-section.flexible-banner-section a.flexible-banner-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:52px;
	padding:14px 34px;
	font-size:19px;
	line-height:1.2;
	letter-spacing:.5px;
	text-transform:uppercase;
	text-decoration:none !important;
	border:2px solid #ffffff;
	border-radius:4px;
	transition:background-color .2s ease,color .2s ease;
	box-shadow:0 3px 14px rgba(0,0,0,.28);
}
.flexible-section.flexible-banner-section a.flexible-banner-btn--light{
	background-color:#ffffff;
	color:#d12727 !important;
}
.flexible-section.flexible-banner-section a.flexible-banner-btn--light:hover{
	background-color:#d12727;
	color:#ffffff !important;
}
.flexible-section.flexible-banner-section a.flexible-banner-btn--brand{
	background-color:#d12727;
	color:#ffffff !important;
}
.flexible-section.flexible-banner-section a.flexible-banner-btn--brand:hover{
	background-color:#ffffff;
	color:#d12727 !important;
}
.flexible-section.flexible-banner-section .btn-label-short{display:none;}

@media (max-width:767px){
	.flexible-section.flexible-banner-section .flexible-banner-content-info{
		padding:30px 0;
		gap:6px;
	}
	.flexible-section.flexible-banner-section .flexible-banner-btns{
		gap:10px;
		margin-top:16px;
	}
	.flexible-section.flexible-banner-section a.flexible-banner-btn{
		min-height:46px;
		padding:12px 20px;
		font-size:16px;
		letter-spacing:.3px;
		flex:1 1 auto;
	}
	.flexible-section.flexible-banner-section .btn-label-full{display:none;}
	.flexible-section.flexible-banner-section .btn-label-short{display:inline;}
}
@media (max-width:360px){
	.flexible-section.flexible-banner-section a.flexible-banner-btn{
		font-size:15px;
		padding:11px 14px;
	}
}

/* --- Dog-friendly FAQ accordion (added 2026-08-03) --- */
details.flexible-faq-item{ border-bottom:1px solid #e5e5e5; padding:0; }
details.flexible-faq-item:not([open]) > .flexible-faq-a{ display:none !important; }
details.flexible-faq-item summary.flexible-faq-q{
	list-style:none; cursor:pointer; user-select:none; position:relative;
	margin:0; padding:18px 40px 18px 8px; font-size:22px;
}
details.flexible-faq-item summary.flexible-faq-q::-webkit-details-marker{ display:none; }
details.flexible-faq-item summary.flexible-faq-q::after{
	content:""; position:absolute; top:50%; right:8px; width:11px; height:11px;
	border-right:2px solid #d12727; border-bottom:2px solid #d12727;
	transform:translateY(-70%) rotate(45deg); transition:transform .2s ease;
}
details.flexible-faq-item[open] summary.flexible-faq-q::after{ transform:translateY(-30%) rotate(-135deg); }
details.flexible-faq-item summary.flexible-faq-q:hover{ color:#d12727; }
details.flexible-faq-item > .flexible-faq-a{ font-size:17px; line-height:1.6; padding:0 8px 18px 8px; }

/* --- Catering page: last section needs its own bottom breathing room
   (added 2026-08-25). Every other flexible-* template always has another
   section (FAQ / locations / map) after .flexible-image-content-section.right-image,
   so it never needs to double as the page's final spacer. On the catering
   page it's the last thing before the footer, so give it extra bottom
   padding on top of the shared 50px/20px base. Scoped to this template only. --- */
.page-template-page-catering-php .flexible-image-content-section.right-image{
	padding-bottom:100px;
}
@media (max-width:767px){
	.page-template-page-catering-php .flexible-image-content-section.right-image{
		padding-bottom:50px;
	}
}

/* --- Catering page: more prominent hero title on mobile (added 2026-08-25) ---
   Base 3546.css scales the hero title down aggressively for small screens
   (32px title / 25px sub-title at <=575px) which reads as an afterthought
   sitting over the two CTA buttons. Scoped to this template only so it
   doesn't touch the already-approved location/dog-friendly hero sizing. */
@media (max-width:767px){
	.page-template-page-catering-php .flexible-section.flexible-banner-section .flexible-banner-title{
		font-size:52px;
	}
	.page-template-page-catering-php .flexible-section.flexible-banner-section .flexible-banner-sub-title{
		font-size:46px;
	}
}
@media (max-width:575px){
	.page-template-page-catering-php .flexible-section.flexible-banner-section .flexible-banner-title{
		font-size:44px;
	}
	.page-template-page-catering-php .flexible-section.flexible-banner-section .flexible-banner-sub-title{
		font-size:38px;
	}
}
