/**
 * Breakpoints: ≤ 544px mobile, 545–921px tablet, ≥ 922px desktop (Astra-compatible).
 */

/* ---------------------------------------------------------------------------
 * Mobile (≤ 544px)
 * ------------------------------------------------------------------------ */
@media (max-width: 544px) {
	:root {
		--emt-gutter: 20px;
		--emt-header-height: 64px;
		--emt-header-height-scrolled: 58px;
	}

	.emt-site-header:not(.emt-site-header--transparent),
	.emt-site-header--transparent.is-scrolled {
		background-color: var(--emt-cream);
	}

	.emt-site-header.is-scrolled {
		background-color: rgba(253, 247, 241, 0.97);
	}

	/* Mobile header is logo + menu; Login/Register live in the drawer */
	.emt-auth-actions--header {
		display: none;
	}

	.no-js .emt-auth-actions--header {
		display: flex;
	}

	.emt-footer-menu a {
		min-height: 2.444rem;
	}

	.emt-entry__title {
		font-size: var(--emt-fs-xl);
	}

	.emt-entry--none .search-form {
		flex-direction: column;
	}
}

@media (max-width: 390px) {
	:root {
		--emt-gutter: 18px;
	}
}

/* WordPress makes the admin bar non-sticky at ≤ 600px */
@media (max-width: 600px) {
	.admin-bar .emt-site-header {
		top: 0;
	}

	.admin-bar .emt-site-header:not(.is-scrolled) {
		top: var(--wp-admin--admin-bar--height, 0px);
	}

	.admin-bar .emt-mobile-nav__panel {
		padding-top: 0;
	}
}

/* ---------------------------------------------------------------------------
 * Tablet and up (≥ 545px)
 * ------------------------------------------------------------------------ */
@media (min-width: 545px) {
	.emt-site-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2.5rem 2rem;
	}

	.emt-site-footer__col--brand {
		grid-column: 1 / -1;
	}

	.emt-site-footer__bottom-inner {
		justify-content: space-between;
	}
}

/* Tablet (545–921px) */
@media (min-width: 545px) and (max-width: 921px) {
	:root {
		--emt-gutter: 24px;
		--emt-header-height: 72px;
		--emt-header-height-scrolled: 62px;
	}

	.emt-site-footer__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.emt-header-action {
		min-height: 40px;
		padding-inline: 1rem;
	}
}

/* ---------------------------------------------------------------------------
 * Desktop (≥ 922px)
 * ------------------------------------------------------------------------ */
@media (min-width: 922px) {
	.emt-primary-nav {
		display: flex;
		flex: 1 1 auto;
		justify-content: center;
		min-width: 0;
	}

	.emt-nav-toggle,
	.emt-mobile-nav {
		display: none;
	}

	.emt-site-header__inner {
		gap: clamp(1.25rem, 2.5vw, 2.5rem);
	}

	.emt-site-header__brand .custom-logo {
		width: var(--emt-logo-width);
	}

	.emt-site-header.is-scrolled .emt-site-header__brand .custom-logo {
		width: var(--emt-logo-width-scrolled);
	}

	.emt-site-footer__grid {
		grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr));
		gap: 3rem;
	}

	.emt-site-footer__col--brand {
		grid-column: auto;
	}
}

/* Narrow desktop: keep one row (logo · nav · login) without overflow */
@media (min-width: 922px) and (max-width: 1100px) {
	.emt-menu--primary {
		gap: 1rem;
	}

	.emt-header-action {
		padding-inline: 1rem;
	}
}

/* Wide desktop */
@media (min-width: 1200px) {
	.emt-primary-nav {
		justify-content: flex-end;
		padding-right: 0.75rem;
	}
}
