/* BusinessHam Menu Directory v1.0.2 — competitor-matched look: crimson red + cream + orange accents */
:root { --bh-brand: #FF7A00; --bh-brand-dark: #D96600; --bh-brand-darker: #A34D00; --bh-accent: #FFB300; --bh-cream: #FFF9EC; --bh-cream-border: #F3E2C7; --bh-ink: #2E1D12; --bh-gray: #4B5563; }

/* Buttons */
.bh-btn, .wp-block-button__link, button, input[type="button"], input[type="submit"], .button {
	background: var(--bh-brand-dark); color: #fff; border: none; border-radius: 8px;
	padding: 12px 28px; font-weight: 700; text-decoration: none; display: inline-block;
}
.bh-btn:hover, .wp-block-button__link:hover, button:hover, input[type="submit"]:hover { background: var(--bh-brand-darker); color: #fff; }
.bh-btn-gradient {
	background: linear-gradient(90deg, var(--bh-accent), var(--bh-brand)); color: #fff !important;
	border-radius: 8px; padding: 12px 34px; font-weight: 700; text-decoration: none; display: inline-block;
	box-shadow: 0 2px 6px rgba(0,0,0,.25);
}
.bh-btn-gradient:hover { filter: brightness(1.08); color: #fff !important; }

/* Hero — cream card, image left, text right */
.bh-hero { background: var(--bh-cream); border-radius: 16px; margin-bottom: 28px; }
.bh-hero-inner { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; padding: 24px; }
.bh-hero-img { flex: 0 1 380px; position: relative; }
.bh-hero-img img { width: 100%; border-radius: 12px; display: block; }
.bh-hero-label {
	position: absolute; top: 18px; left: 0; right: 0; text-align: center;
	color: #fff; font-size: 1.6em; font-weight: 800; text-shadow: 0 2px 8px rgba(0,0,0,.45);
}
.bh-hero-text { flex: 1 1 320px; text-align: center; padding: 12px; }
.bh-hero-text h1 { color: var(--bh-brand); font-size: 2em; margin: 0 0 14px; }
.bh-hero-text p { color: var(--bh-gray); font-size: 1.02em; max-width: 560px; margin: 0 auto; }
.bh-hero-text .bh-btn { margin-top: 18px; }

/* Section headings */
.bh-section-title { text-align: center; color: var(--bh-brand); font-size: 1.7em; margin: 34px 0 8px; }
.bh-dark-title { text-align: left; color: var(--bh-ink); font-size: 1.5em; margin: 30px 0 6px; }
.bh-section-sub { text-align: center; color: var(--bh-gray); max-width: 760px; margin: 0 auto 18px; }
.bh-order-wrap { text-align: center; margin: 10px 0 6px; }

/* Category pills */
.bh-pills { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 24px 0; }
.bh-pill { background: var(--bh-brand); color: #fff !important; padding: 10px 22px; border-radius: 999px; font-weight: 700; text-decoration: none; font-size: 0.95em; }
.bh-pill:hover { background: var(--bh-brand-dark); color: #fff !important; }

/* Item cards */
.bh-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 18px; margin: 20px 0; }
.bh-card { background: var(--bh-cream); border: 1px solid var(--bh-cream-border); border-radius: 10px; padding: 14px; text-align: center; }
.bh-card img { width: 100%; height: 150px; object-fit: cover; border-radius: 8px; }
.bh-card h3 { color: var(--bh-brand); font-size: 1.05em; margin: 10px 0 4px; }
.bh-card-meta { font-weight: 700; color: var(--bh-ink); margin: 4px 0; }
.bh-card-desc { font-size: 0.9em; color: var(--bh-gray); min-height: 40px; }
.bh-card .bh-btn { padding: 9px 20px; font-size: 0.9em; margin-top: 6px; }
.bh-note { text-align: center; font-size: 0.85em; color: #8a7a64; }

/* Table of Contents — collapsed red-bordered bar */
.bh-toc-bar { border: 2px solid var(--bh-brand); border-radius: 12px; background: #fff; margin: 22px 0; box-shadow: 0 2px 0 var(--bh-accent); }
.bh-toc-bar summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; padding: 14px 20px; font-weight: 700; color: var(--bh-accent); font-size: 1.05em; }
.bh-toc-bar summary::-webkit-details-marker { display: none; }
.bh-toc-icon { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: var(--bh-accent); color: #fff; font-size: 0.85em; }
.bh-toc-bar[open] .bh-toc-icon { transform: rotate(180deg); }
.bh-toc-body { padding: 4px 24px 18px; }
.bh-toc-body ul { columns: 2; margin: 0; padding-left: 20px; }
.bh-toc-body li { margin-bottom: 6px; }
.bh-toc-body a { color: var(--bh-brand); }

/* FAQ accordion */
.bh-faq { margin: 20px 0; }
.bh-qa { border: 1px solid var(--bh-cream-border); border-radius: 8px; margin-bottom: 10px; background: #fff; }
.bh-qa summary { cursor: pointer; padding: 14px 18px; font-weight: 700; color: var(--bh-brand); list-style: none; }
.bh-qa summary::-webkit-details-marker { display: none; }
.bh-qa summary::after { content: "+"; float: right; font-size: 1.3em; }
.bh-qa[open] summary::after { content: "–"; }
.bh-qa-body { padding: 0 18px 16px; color: #4a3d2f; }

/* Meal calculator */
.bh-calc { background: var(--bh-cream); border: 2px solid var(--bh-brand); border-radius: 12px; padding: 24px; margin: 24px 0; }
.bh-calc h3 { margin-top: 0; color: var(--bh-ink); }
.bh-calc-row { display: flex; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }
.bh-calc-row label { flex: 1 1 200px; font-weight: 600; color: var(--bh-ink); }
.bh-calc-row select, .bh-calc-row input { width: 100%; padding: 9px; border: 1px solid var(--bh-cream-border); border-radius: 6px; margin-top: 4px; }
.bh-calc-total { background: var(--bh-brand-dark); color: #fff; border-radius: 8px; padding: 14px; text-align: center; font-size: 1.15em; margin-top: 8px; }
.bh-calc-total strong { color: #FFD9A0; }

/* Content tables */
.bh-table-wrap { overflow-x: auto; margin: 18px 0; }
table.bh-table { width: 100%; border-collapse: collapse; }
table.bh-table th { background: var(--bh-brand); color: #fff; padding: 10px 12px; text-align: left; }
table.bh-table td { padding: 9px 12px; border-bottom: 1px solid var(--bh-cream-border); }
table.bh-table tr:nth-child(even) td { background: var(--bh-cream); }

/* Key takeaways */
.bh-takeaways { background: #FFFDF8; border-left: 4px solid var(--bh-brand); padding: 16px 20px; margin: 20px 0; border-radius: 0 8px 8px 0; }
.bh-takeaways h3 { margin-top: 0; color: var(--bh-ink); }

/* Disclosure */
.bh-disclosure { background: #faf6ef; border: 1px dashed #c9b896; border-radius: 8px; padding: 16px 20px; font-size: 0.9em; color: #6b5a48; margin: 26px 0; }

@media (max-width: 640px) {
	.bh-toc-body ul { columns: 1; }
	.bh-hero-img { flex: 1 1 100%; }
}

/* Primary nav: all tabs in one single line (desktop) */
.site-header .main-navigation ul.menu,
.main-navigation ul.menu {
	display: flex !important;
	flex-wrap: nowrap !important;
	white-space: nowrap;
}
.site-header .main-navigation ul.menu > li > a,
.main-navigation ul.menu > li > a {
	padding-left: 11px !important;
	padding-right: 11px !important;
}

/* Hide the "Home" page-title hero band on the front page so the hero card sits right under the primary menu */
body.home .entry-hero { display: none !important; }

/* Front page: small competitor-like gap between primary menu and hero card */
body.home .content-area,
body.home .content-container,
body.home .content-wrap,
body.home .entry-content-wrap,
body.home .entry-content { padding-top: 0 !important; margin-top: 0 !important; }
body.home .bh-hero { margin-top: 20px !important; }

/* ---------- Author box (single posts) ---------- */
.bh-author-box { display: flex; gap: 24px; align-items: center; background: var(--bh-cream); border: 1px solid var(--bh-cream-border); border-radius: 16px; padding: 24px; margin: 36px 0; }
.bh-author-box img { width: 140px; height: 140px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; border: 3px solid var(--bh-brand); }
.bh-author-box .bh-author-text { font-size: .98em; color: var(--bh-gray); }
.bh-author-box .bh-author-text strong { color: var(--bh-ink); font-size: 1.05em; }
@media (max-width: 600px) { .bh-author-box { flex-direction: column; text-align: center; } }

/* ---------- Related posts (single posts) ---------- */
.bh-related { margin: 36px 0; }
.bh-related .bh-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 700px) { .bh-related .bh-cards { grid-template-columns: 1fr; } }

/* ---------- Footer widgets ---------- */
.bh-foot-widget { text-align: center; color: #F5E8D8; }
.bh-foot-widget h4 { color: #fff; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 16px; font-size: 1.05em; }
.bh-foot-widget img.bh-foot-logo { width: 170px; max-width: 80%; margin: 0 auto 14px; display: block; }
.bh-foot-social { display: flex; gap: 12px; justify-content: center; margin-top: 6px; }
.bh-foot-social a { width: 42px; height: 42px; border-radius: 50%; background: #fff; display: inline-flex; align-items: center; justify-content: center; }
.bh-foot-social a:hover { background: var(--bh-brand); }
.bh-foot-social svg { width: 20px; height: 20px; fill: #2E1D12; }
.bh-foot-links { list-style: none; margin: 0; padding: 0; }
.bh-foot-links li { margin: 10px 0; }
.site-footer .bh-foot-links a { color: #F5E8D8 !important; text-decoration: none; }
.site-footer .bh-foot-links a:hover { color: var(--bh-brand) !important; }
.bh-newsletter .wpcf7-form { max-width: 340px; margin: 0 auto; }
.bh-newsletter input[type="text"], .bh-newsletter input[type="email"] { width: 100%; padding: 12px 16px; border: none; border-radius: 6px; margin-bottom: 12px; font-size: 15px; box-sizing: border-box; }
.bh-newsletter input[type="submit"] { width: 100%; padding: 12px; background: transparent; color: #fff; border: 2px solid #fff; border-radius: 6px; font-size: 16px; cursor: pointer; }
.bh-newsletter input[type="submit"]:hover { background: var(--bh-brand); border-color: var(--bh-brand); }
.bh-newsletter .wpcf7-response-output { color: #fff; border-color: #fff !important; }

/* Warmer footer background + tighter copyright bar (v1.0.9) */
#colophon { background: #432818 !important; }
.site-footer .site-bottom-footer-inner-wrap { padding-top: 6px !important; padding-bottom: 6px !important; }
.site-footer .footer-html-inner > p { margin-top: 0 !important; margin-bottom: 0 !important; }


/* Infinite scroll loader (v1.0.13) */
.bhmd-infinite-loader { text-align: center; padding: 24px 0; color: #8a6a4a; font-weight: 600; }
.bhmd-infinite-sentinel { height: 1px; }
