/*
	Brewers Farm and Pantry rebrand override layer (2026).

	Loaded ON TOP of the base brewersorganics bundle, ONLY when the rebrand feature
	flag is on (getConfig('brewers_farmbox_active') for the brewers tenant). The base
	css/brewersorganics.css is left untouched so the site falls back cleanly when the
	flag is off. Everything here re-specifies base selectors so it wins by load order.

	PALETTE is the official Brewers Farm + Pantry brand guide:
	  Farmers Market Green #99a157 · Deep Garden Green #5d6e38 · Rooted Carrot #e7883f
	  Fresh Tomato #ce542e · Purple Cabbage #787190 · Charcoal #2a2727
	Driven by the :root vars below. (The page-builder pages also read matching values
	from page_builder_theme_config + the primarycolor/primary_color config keys +
	per-block colors; keep those in sync when changing values.)
	Type: display Bodo Amat (self-hosted, @font-face in inc/header.php) over Fredoka;
	body Noto Sans; script accent Caveat. Fonts load via inc/font-loader.php (flag-gated).
*/

:root {
	--bfp-link:       #ce542e; /* links -> Fresh Tomato */
	--bfp-pop:        #e7883f; /* CTAs + accents -> Rooted Carrot */
	--bfp-pop-hover:  #ce542e; /* CTA hover -> Fresh Tomato */
	--bfp-dark:       #2a2727; /* footer + dark bands -> Charcoal */
	--bfp-bg:         #FBF7F0; /* page background -> warm white */
	--bfp-text:       #2a2727; /* body text / headings -> Charcoal */
}

/* Logo: the base brewersorganics.css pins .logotop to a fixed 143x70 box, which
   stretches the Farm + Pantry mark (its natural ratio is ~1.2:1, not 2:1). Size by
   height only so it keeps its aspect ratio. */
.logotop {
	width: auto !important;
	height: auto !important;
	max-height: 70px;
	padding: 4px 0;
}

/* Links */
a,
a:visited {
	color: var(--bfp-link);
}
ul#awesome-sidemenu li a,
ul#awesome-sidemenu li a:visited {
	color: var(--bfp-link) !important;
}
.shopsideoption a,
.shopmenulink a,
.shopsidetitle a {
	color: var(--bfp-link) !important;
}
#showRight {
	color: var(--bfp-link);
}

/* CTAs */
.btn-warning,
.btn-warning:visited,
.btn-primary,
.btn-primary:visited,
.btn-success,
.btn-success:visited {
	background-color: var(--bfp-pop);
	border-color: var(--bfp-pop);
}
.btn-warning:hover,
.btn-primary:hover,
.btn-success:hover {
	background-color: var(--bfp-pop-hover);
	border-color: var(--bfp-pop-hover);
}

/* Body */
body {
	font-family: 'Noto Sans', Arial, Helvetica, sans-serif;
	background: var(--bfp-bg);
	color: var(--bfp-text);
}

/* Headings -> Fredoka, with Bodo Amat as the display face on the big ones */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	font-family: 'Fredoka', Arial, Helvetica, sans-serif;
	color: var(--bfp-text);
}
#pb-nav-1 .nav-links > li > a, #pb-nav-1 .nav-actions a, #pb-nav-1 .nav-logo-text, #pb-nav-1 .mobile-menu-btn{
	font-family: 'Bodo Amat', 'Fredoka', Arial, Helvetica, sans-serif;
	font-size: 1rem;
}
/* Bigger logo + tighter bar padding in the home-page top nav (ticket 9339). */
#pb-nav-1.pb-page-nav {
	padding: 8px 0;
}
#pb-nav-1 .nav-logo img {
	max-height: 80px;
}

h1, .h1 {
	font-family: 'Bodo Amat', 'Fredoka', Arial, Helvetica, sans-serif;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
h2, .h2 {
	font-family: 'Bodo Amat', 'Fredoka', Arial, Helvetica, sans-serif;
}
.frontpageh1 {
	font-family: 'Bodo Amat', 'Fredoka', Arial, Helvetica, sans-serif;
}
.bpricing,
.bpricingname,
.bpricingprice {
	font-family: 'Fredoka', Arial, Helvetica, sans-serif;
}

/* Footer + dark panels */
.footercontainer {
	background: var(--bfp-dark);
}
.bigfrontquote {
	background-color: var(--bfp-dark);
}
.frontmaintdv {
	background: url(https://images.kivalogic.com/images/themes/brewers/brewers-bg.jpg?auto=compress&fm=webp&w=1300&fit=fill)
		no-repeat top center var(--bfp-dark);
	background-size: cover;
}

/* Shared accents driven by ##primarycolor## in defaulttemplate.css */
.lowsubmenu .container a.lsactive {
	border-bottom: 2px solid var(--bfp-pop) !important;
}
.size-option-btn.active {
	border-color: var(--bfp-pop);
}
.size-option-unit {
	color: var(--bfp-link);
}
.newcancelsep2925 .phone-icon-circle {
	background: linear-gradient(135deg, var(--bfp-pop) 0%, var(--bfp-pop) 100%);
}
.newcancelsep2925 .phone-link {
	color: var(--bfp-link);
	border-color: var(--bfp-pop);
}
.newcancelsep2925 .phone-link:hover {
	background-color: var(--bfp-pop) !important;
}
.inorder-badge {
	background-color: var(--bfp-pop);
}
.lastweekorder-title {
	color: var(--bfp-link);
}
.lastweekorder-foot .btn {
	background: var(--bfp-pop);
}

/* ---- Hover-lift micro-interactions (2026-10-09) ---- */
/* Box cards and feature tiles gently raise on hover for a modern, responsive feel. */
.pb-pricing-boxes .boxpricewindow,
.pb-features-4col .feature-col {
	transition: transform .22s ease, box-shadow .22s ease;
}
.pb-pricing-boxes .boxpricewindow:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 30px rgba(42, 39, 39, 0.16);
}
.pb-features-4col .feature-col:hover {
	transform: translateY(-5px);
}
.pb-features-4col .feature-col .feature-icon {
	transition: transform .22s ease;
}
.pb-features-4col .feature-col:hover .feature-icon {
	transform: scale(1.08);
}

/* ---- Orange primary buttons: consistent base + strong darken-on-hover (2026-10-09) ---- */
.pb-text-with-image .btn-cta,
.pb-cta-centered .btn.btn-primary,
.pb-hero-cta .hero-btn-primary {
	background-color: #e7883f !important;
	border-color: #e7883f !important;
	color: #fff !important;
	transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}
.pb-text-with-image .btn-cta:hover,
.pb-cta-centered .btn.btn-primary:hover,
.pb-hero-cta .hero-btn-primary:hover {
	background-color: #c25f17 !important;
	border-color: #c25f17 !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(194, 95, 23, 0.35);
}

/* ---- Depth on solid-color sections (2026-10-09). Soft glows CONTAINED to the vertical
   middle so the top/bottom edges stay the exact base color -- that keeps swoosh-framed
   bands seamless (no hard line at the swoosh/band junction). The light glow shows on dark
   bands (green/purple); the soft shadow shows on light/white/sand bands. ---- */
.pb-stats, .pb-testimonial-3col, .pb-features-4col, .pb-cta-centered, .pb-pricing-boxes, .pb-text-with-image { position: relative; }
.pb-stats > *, .pb-testimonial-3col > *, .pb-features-4col > *, .pb-cta-centered > *, .pb-pricing-boxes > *, .pb-text-with-image > * { position: relative; z-index: 1; }
.pb-stats::before, .pb-testimonial-3col::before, .pb-features-4col::before, .pb-cta-centered::before, .pb-pricing-boxes::before, .pb-text-with-image::before {
	content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 0;
	background:
		radial-gradient(ellipse 52% 38% at 15% 50%, rgba(255,255,255,0.16), transparent 72%),
		radial-gradient(ellipse 58% 42% at 87% 50%, rgba(0,0,0,0.11), transparent 74%);
}
