/* Global header/footer only. Homepage CSS and page-body styles are untouched. */
.brm-header, .brm-footer { --brm-green:#176341; --brm-dark:#0e2920; --brm-mint:#b8ed9c; font-family:inherit; }
.brm-header *, .brm-footer * { box-sizing:border-box; }
.brm-header { background:#fff; border-bottom:1px solid #d8e3da; color:#132c23; }
.brm-header .brm-header-inner { max-width:1208px; margin:auto; padding:22px 24px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brm-header .brm-brand-wrap { flex:0 1 230px; min-width:0; }
.brm-brand { display:inline-block; color:inherit; text-decoration:none; font-size:23px; font-weight:750; letter-spacing:-.055em; line-height:1.12; max-width:230px; overflow-wrap:anywhere; }
.brm-header .brm-brand { color:#176341; }
.brm-header .custom-logo, .brm-footer .custom-logo { display:block; width:auto; max-width:220px; max-height:64px; object-fit:contain; }
.brm-header .main-navigation { margin:0; background:transparent; float:none; flex:0 1 auto; color:#132c23; }
.brm-header .inside-navigation { background:transparent; padding:0; }
.brm-header .main-navigation .main-nav > ul { display:flex; align-items:center; gap:3px; }
.brm-header .main-navigation .main-nav ul li a { color:#263c32; font-size:14px; font-weight:600; line-height:1.4; padding:14px 12px; background:transparent; }
.brm-header .main-navigation .main-nav ul li:hover > a,
.brm-header .main-navigation .main-nav ul li:focus-within > a,
.brm-header .main-navigation .main-nav ul li[class*="current-menu-"] > a { color:#176341; background:#eff6ef; border-radius:6px; }
.brm-header .main-navigation .main-nav ul li.brm-quote-item { margin-left:12px; }
.brm-header .main-navigation .main-nav ul li.brm-quote-item > a,
.brm-footer .brm-quote { display:inline-flex; justify-content:center; align-items:center; min-height:46px; background:#176341; color:#fff; padding:13px 19px; border-radius:7px; text-decoration:none; font-size:14px; font-weight:650; line-height:1.4; }
.brm-header .main-navigation .main-nav ul li.brm-quote-item > a:hover { background:#104b31; color:#fff; }
.brm-header .main-navigation .main-nav ul ul { background:#fff; border:1px solid #d8e3da; border-radius:8px; }
.brm-header :is(a,button):focus-visible, .brm-footer :is(a,button):focus-visible { outline:3px solid currentColor; outline-offset:4px; }
.brm-header .menu-toggle { color:#176341; background:#eff6ef; border-radius:6px; min-height:46px; padding:12px 16px; line-height:1.4; }
.brm-footer { background:#0e2920; color:#d2e4d8; }
.brm-footer .brm-footer-inner { max-width:1208px; margin:auto; padding:70px 24px 24px; }
.brm-footer .brm-footer-grid { display:grid; grid-template-columns:1.1fr .65fr 1fr; gap:70px; }
.brm-footer .brm-footer-grid > * { min-width:0; }
.brm-footer .brm-brand { font-size:28px; color:#fff; margin-bottom:22px; }
.brm-footer h2, .brm-footer h3, .brm-footer .widget-title { color:#fff; font-size:18px; font-weight:650; line-height:1.35; margin:0 0 20px; letter-spacing:-.025em; }
.brm-footer p { font-size:15px; line-height:1.75; margin:0 0 22px; max-width:38ch; }
.brm-footer a { color:#e0f0e5; text-underline-offset:4px; }
.brm-footer a:hover { color:#b8ed9c; }
.brm-footer .brm-footer-menu, .brm-footer .widget_nav_menu ul { list-style:none; margin:0; padding:0; }
.brm-footer .brm-footer-menu a, .brm-footer .widget_nav_menu a { display:inline-block; padding:8px 0; min-height:40px; font-size:14px; text-decoration:none; }
.brm-footer .brm-quote { background:#b8ed9c; color:#0e2920; }
.brm-footer .brm-quote:hover { background:#d1f6bc; color:#0e2920; }
.brm-footer .widget { padding:0; margin:0 0 24px; background:transparent; }
.brm-footer .brm-footer-bottom { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; padding-top:24px; margin-top:48px; border-top:1px solid #3b5747; }
.brm-footer .brm-footer-bottom p { margin:0; max-width:none; font-size:12px; }
.brm-footer .brm-footer-bottom > a { font-size:12px; margin-left:auto; }
@media(min-width:1024px) { .brm-header .main-navigation .menu-toggle { display:none; } .brm-header .main-navigation .main-nav { display:block; } }
@media(max-width:1023px) {
 .brm-header .brm-header-inner { flex-wrap:wrap; gap:12px; padding:18px 24px; }
 .brm-header .brm-brand-wrap { flex:1 1 auto; }
 .brm-header .main-navigation { width:100%; flex-basis:100%; }
 .brm-header .inside-navigation { display:block; }
 .brm-header .main-navigation .menu-toggle { display:block; margin-left:auto; }
 .brm-header .main-navigation .main-nav > ul { display:none; }
 .brm-header .main-navigation.toggled .main-nav > ul { display:block; }
 .brm-header .main-navigation.toggled .main-nav { display:block; }
 .brm-header .main-navigation .main-nav ul li { float:none; width:100%; }
 .brm-header .main-navigation .main-nav ul li a { padding:14px 12px; }
 .brm-header .main-navigation .main-nav ul li.brm-quote-item { margin:12px 0 4px; }
 .brm-header .main-navigation .main-nav ul li.brm-quote-item > a { display:flex; }
 .brm-footer .brm-footer-grid { gap:36px; grid-template-columns:1fr 1fr; }
 .brm-footer .brm-footer-about { grid-column:1/-1; }
}
@media(max-width:600px) {
 .brm-header .brm-header-inner { padding:16px 20px; }
 .brm-footer .brm-footer-inner { padding:48px 20px 24px; }
 .brm-footer .brm-footer-grid { grid-template-columns:1fr; gap:28px; }
 .brm-footer .brm-footer-about { grid-column:auto; }
 .brm-footer .brm-footer-bottom { align-items:flex-start; flex-direction:column; margin-top:30px; }
 .brm-footer .brm-footer-bottom > a { margin-left:0; }
}
@media(prefers-reduced-motion:reduce) { .brm-header *, .brm-footer * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
