/*
Theme Name: BLNAMIC — Buffalo Lake-New Auburn Mutual
Theme URI: https://blnamic.com
Author: Ledger Marketing
Author URI: https://ledgermarketing.com
Description: Custom block theme for Buffalo Lake-New Auburn Mutual Insurance Company, Gaylord, Minnesota. Property and casualty insurance for Minnesota homes and farms since 1888.
Version: 1.0.5
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: blnamic
*/

/* ---------- Block-gap strips: zero margins between top-level/full sections ---------- */
.wp-site-blocks > * { margin-block: 0; }
.wp-site-blocks main .alignfull { margin-block: 0; }
/* and INSIDE header/footer parts (topline + logo bar stacked groups) */
.blna-header > *, .blna-footer > * { margin-block: 0 !important; }

/* ---------- Header ---------- */
.blna-topline { font-size: 0.85rem; }
.blna-topline a { color: #DCE6F0; text-decoration: none; }
.blna-topline a:hover { color: #fff; text-decoration: underline; }
.blna-logo img { height: 74px; width: auto; display: block; }
body .blna-header nav.wp-block-navigation a {
	color: #122B40 !important;
	font-weight: 600;
	font-size: 0.98rem;
	text-decoration: none;
}
body .blna-header nav.wp-block-navigation a:hover { color: #1D5E96 !important; }

/* Pay button in header: blue on white bar, white text */
.blna-paybtn a {
	background: #1D5E96 !important;
	color: #fff !important;
	border-radius: 6px;
	padding: 0.55em 1.15em !important;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}
.blna-paybtn a:hover { background: #122B40 !important; color: #fff !important; }

/* Mobile nav overlay: legible, centered */
body .blna-header .wp-block-navigation__responsive-container.is-menu-open {
	background: #122B40 !important;
	padding: 4.5rem 2rem 2rem !important;
}
body .blna-header .wp-block-navigation__responsive-container.is-menu-open a {
	color: #fff !important;
	font-size: 1.25rem;
}
body .blna-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	align-items: center;
}
body .blna-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: center !important;
	justify-content: center;
}
body .blna-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex; flex-direction: column; align-items: center; gap: 0.5rem;
}
body .blna-header .wp-block-navigation__responsive-container-close,
body .blna-header .wp-block-navigation__responsive-container-close svg { color: #fff; fill: #fff; }
.wp-block-navigation__responsive-container-open svg { width: 32px; height: 32px; }

/* ---------- Hero / page-header bands: force light text on dark overlays ---------- */
.blna-hero :where(h1,h2,h3,h4,p,li) { color: #fff; }
.blna-hero .blna-eyebrow { color: #A8C3DC; }
.blna-pageband :where(h1,h2,h3,p) { color: #fff; }

/* Buttons on colored bands must be white with brand text */
.blna-payband .wp-block-button a,
.blna-payband .blna-pay-lg a {
	background: #fff !important;
	color: #1D5E96 !important;
}
.blna-payband .wp-block-button a:hover { background: #F8F5EE !important; color: #122B40 !important; }
.blna-payband :where(h2,h3,p) { color: #fff; }

/* Outline (secondary) button on dark hero */
.blna-btn-ghost a {
	background: transparent !important;
	color: #fff !important;
	border: 2px solid rgba(255,255,255,0.85);
}
.blna-btn-ghost a:hover { background: rgba(255,255,255,0.14) !important; }

/* ---------- Cards ---------- */
.blna-card {
	background: #fff;
	border: 1px solid #E5DFD2;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(18,43,64,0.06);
}
.blna-card .blna-card-body { padding: 1.5rem 1.5rem 1.75rem; }
/* Equal-height cards inside wp:columns without height:100% overflow trap */
.wp-block-column:has(> .blna-card:only-child) { display: flex; }
.wp-block-column > .blna-card:only-child { flex: 1 1 auto; height: auto; }

/* ---------- Agent directory: real CSS grid (never wp-block-columns) ---------- */
.blna-agent-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 1.25rem;
}
.blna-agent-card {
	background: #fff;
	border: 1px solid #E5DFD2;
	border-left: 4px solid #1D5E96;
	border-radius: 8px;
	padding: 1.15rem 1.3rem;
}
.blna-agent-card h3 {
	margin: 0 0 0.15rem;
	font-size: 1.12rem;
}
.blna-agent-card .blna-agent-town {
	color: #1D5E96;
	font-weight: 700;
	font-size: 0.8rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin: 0 0 0.5rem;
}
.blna-agent-card p { margin: 0.15rem 0; font-size: 0.95rem; }
.blna-agent-card a { text-decoration: none; }
.blna-agent-search {
	width: 100%;
	max-width: 420px;
	padding: 0.7em 1em;
	border: 1.5px solid #C8BFAD;
	border-radius: 8px;
	font-size: 1rem;
	font-family: inherit;
}
.blna-agent-search:focus { outline: 2px solid #1D5E96; border-color: #1D5E96; }

/* ---------- Counties strip ---------- */
.blna-counties { display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center; }
.blna-counties span {
	background: #fff;
	border: 1px solid #DCE6F0;
	color: #122B40;
	border-radius: 999px;
	padding: 0.3em 0.95em;
	font-size: 0.9rem;
	font-weight: 600;
}

/* ---------- Footer ---------- */
.blna-footer { font-size: 0.95rem; }
.blna-footer a { color: #C9D8E6; text-decoration: none; }
.blna-footer a:hover { color: #fff; text-decoration: underline; }
.blna-footer .blna-footer-logo {
	display: inline-block;
	background: #fff;
	border-radius: 10px;
	padding: 16px 20px;
	margin: 0;
	line-height: 0;
}
.blna-footer .blna-footer-logo img { max-width: 260px; height: auto; }
.blna-footer h3 {
	color: #fff;
	font-size: 1.05rem;
	letter-spacing: 0.04em;
	margin-bottom: 0.6rem;
}
.blna-footer p { color: #B9C6D2; }
.blna-affil-chip {
	display: inline-block;
	background: #fff;
	color: #122B40 !important;
	border-radius: 8px;
	padding: 0.55em 1em;
	font-weight: 600;
	font-size: 0.85rem;
	line-height: 1.35;
}
.blna-credit { border-top: 1px solid rgba(255,255,255,0.14); font-size: 0.85rem; }
.blna-credit p, .blna-credit a { color: #8FA5B8; }

/* ---------- Misc ---------- */
.blna-eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-weight: 700;
	font-size: 0.82rem;
	color: #1D5E96;
}
.blna-hr-wave { border: 0; height: 3px; width: 72px; background: linear-gradient(90deg,#6E90B4,#1D5E96); border-radius: 2px; margin: 0.75rem 0 0; }
.blna-check li { margin-bottom: 0.45rem; }
figure.blna-rounded img { border-radius: 12px; }

@media (max-width: 781px) {
	.blna-logo img { height: 56px; }
	.blna-topline .blna-topline-links { display: none; }
}
