/*
 * Diabetes Champions: responsive rules.
 * Breakpoints: 1100 (compact nav), 960 (tablet grids), 782 (WordPress columns stack), 600 (phone), 360 (very narrow).
 */

@media (max-width: 1100px) {
	.site-header__inner { gap: 1rem; }
	.main-navigation ul { gap: 0.25rem 1rem; }
	.main-navigation a { font-size: 0.92rem; }
}

/* Mobile navigation */
@media (max-width: 960px) {
	.menu-toggle { display: inline-flex; }
	.site-navigation { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 1rem; padding: 1rem var(--dc-gutter) 1.5rem; background: var(--dc-bg); border-bottom: 1px solid var(--dc-border); box-shadow: var(--dc-shadow); max-height: calc(100vh - var(--dc-header-h)); overflow-y: auto; }
	.site-navigation.is-open { display: flex; }
	/* Without JavaScript the menu stays visible (no .js class), stacked under the logo. */
	html:not(.js) .site-navigation { display: flex; position: static; box-shadow: none; }
	html:not(.js) .menu-toggle { display: none; }
	html:not(.js) .site-header__inner { flex-wrap: wrap; padding-block: 0.75rem; }
	.main-navigation ul { flex-direction: column; align-items: stretch; gap: 0; }
	.main-navigation a { display: block; padding: 0.85rem 0.25rem; font-size: 1.05rem; border-bottom: 1px solid var(--dc-border); }
	.site-header__actions { justify-content: space-between; }
	.site-header__cta { flex: 1; }
	.admin-bar .site-header { top: 46px; }
	.dc-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dc-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dc-with-sidebar { grid-template-columns: 1fr; }
}

@media (max-width: 782px) {
	.admin-bar .site-header { position: static; }
	.dc-col-end { text-align: left; }
	.dc-section-head { margin-bottom: 1.25rem; }
	.dc-page-header__title { max-width: none; }
	.dc-cards--4 .wp-block-column { flex-basis: 100%; }
	.dc-topic-links { grid-template-columns: 1fr; }
	.dc-media--hero img { aspect-ratio: 4 / 3; }
	.dc-media--portrait img { aspect-ratio: 4 / 3; }
}

@media (max-width: 600px) {
	.dc-grid--2, .dc-grid--3 { grid-template-columns: 1fr; }
	.dc-journey { grid-template-columns: 1fr; }
	.dc-search-form__row { flex-direction: column; }
	.dc-search-form__row .dc-btn { width: 100%; }
	.wp-block-buttons { flex-direction: column; align-items: stretch; }
	.wp-block-buttons .wp-block-button { width: 100%; }
	.wp-block-button__link { width: 100%; }
	.dc-card { padding: 1.15rem; }
	.site-footer__top { flex-direction: column; }
	.site-footer__bottom { flex-direction: column; }
	.dc-post-nav .nav-links { flex-direction: column; }
}

@media (max-width: 360px) {
	.site-branding__name { font-size: 1.05rem; }
	.dc-hero__title { font-size: 2.4rem; }
}

@media print {
	.site-header, .site-footer, .dc-form-wrap, .menu-toggle { display: none !important; }
	body { background: #fff; }
}
