@media (max-width: 1240px) {
	.header-inner { min-height: 82px; }
	.header-actions { display: flex; }
	.menu-toggle { display: inline-flex; align-items: center; gap: 9px; padding: 10px 0; }
	.primary-nav { position: fixed; inset: 84px 0 auto; max-height: calc(100vh - 84px); margin: 0; padding: 18px 20px 28px; overflow-y: auto; background: #fff; box-shadow: var(--shadow); visibility: hidden; opacity: 0; transform: translateY(-12px); transition: .2s ease; }
	.primary-nav.is-open { visibility: visible; opacity: 1; transform: translateY(0); }
	.nav-menu { height: auto; align-items: stretch; flex-direction: column; gap: 0; }
	.nav-item { display: block; }
	.nav-link { display: flex; justify-content: space-between; padding: 13px 8px; border-bottom: 1px solid rgb(13 53 43 / 10%); font-size: 1rem; }
	.nav-link::after { display: none; }
	.nav-dropdown { position: static; width: auto; padding: 5px 0 9px 17px; border-top: 0; box-shadow: none; visibility: visible; opacity: 1; transform: none; }
	.nav-dropdown a { padding: 8px 12px; border-bottom: 0; font-size: .84rem; }
	.nav-dropdown a:hover { padding-left: 17px; }
	.nav-cta-item { margin-top: 13px; }
	.nav-donate { width: 100%; min-height: 52px; justify-content: center; }
	.footer-grid { grid-template-columns: 1.2fr 1fr; }
	.footer-connect { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
	.container, .page-shell { width: min(calc(100% - 28px), var(--container)); }
	.brand-logo { width: 84px; height: 60px; }
	.menu-toggle__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.footer-grid { grid-template-columns: 1fr; padding-bottom: 42px; }
	.footer-connect { grid-column: auto; }
	.footer-bottom { flex-direction: column; gap: 7px; }
}
