.local-bar { background: var(--green); color: #eef3e9; font-size: .82rem; }
.local-bar__inner { min-height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.local-bar a:hover { text-decoration: underline; }
.site-header { position: sticky; top: 0; z-index: 30; background: rgba(251,250,245,.97); border-bottom: 1px solid var(--line); }
.header-inner { min-height: 96px; display: flex; align-items: center; gap: 48px; }
.brand { width: 155px; flex-shrink: 0; }
.main-nav { display: flex; align-items: center; gap: 38px; margin-left: auto; font-size: .95rem; font-weight: 600; }
.main-nav a { display: flex; align-items: center; min-height: 48px; position: relative; }
.main-nav a:hover { color: #a64603; }
.main-nav .is-current::after { content: ""; position: absolute; bottom: 0; height: 3px; width: 22px; background: var(--orange); border-radius: 2px; }
.menu-toggle { background: transparent; border: 1px solid var(--line); color: var(--green); padding: 10px 14px; border-radius: 6px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 36px; }
.section-heading > p { color: var(--muted); max-width: 390px; padding-bottom: 3px; }
.site-footer { padding-top: 45px; background: #f0f2e9; border-top: 1px solid var(--line); }
.footer-top { display: flex; align-items: center; gap: 55px; padding-bottom: 38px; }
.footer-brand { width: 132px; }
.footer-top p { line-height: 1.5; color: var(--green); }
.footer-top > a:last-child { margin-left: auto; font-size: .95rem; }
.footer-bottom { border-top: 1px solid #cdd5c6; padding-block: 22px; display: flex; justify-content: space-between; gap: 20px; font-size: .8rem; color: var(--muted); }
@media (max-width: 900px) { .header-inner { gap: 26px; } .main-nav { gap: 24px; } .header-cta { display: none; } }
@media (max-width: 760px) {
  .local-bar__inner { justify-content: center; min-height: 32px; font-size: .75rem; }
  .local-bar__inner > span { display: none; }
  .header-inner { min-height: 78px; flex-wrap: wrap; gap: 0; }
  .brand { width: 120px; }
  .menu-toggle:not([hidden]) { display: flex; gap: 18px; margin-left: auto; }
  .main-nav { width: 100%; justify-content: center; gap: 32px; margin-bottom: 10px; }
  .js-menu .main-nav { display: none; }
  .js-menu .main-nav.is-open { display: flex; }
  .section-heading { display: block; }
  .section-heading > p { margin-top: 20px; }
  .footer-top { flex-wrap: wrap; gap: 28px; }
  .footer-top > a:last-child { margin-left: 0; width: 100%; }
  .footer-bottom { flex-direction: column; gap: 8px; }
}
