/* Mobile visual refinements.
 *
 * Keep these overrides narrow and mobile-only. The core layout system remains
 * in theme.css, block-layout.css, and blocks.css.
 */

@media (max-width: 759px) {
	:root {
		--sc-mobile-touch-target: 2.85rem;
	}

	.site-header__inner {
		gap: 0.85rem;
		min-height: 4rem;
		padding-block: 0.45rem;
	}

	.site-branding {
		gap: 0.15rem;
		max-width: calc(100% - 4.75rem);
	}

	.site-branding__identity {
		gap: 0.55rem;
	}

	.site-branding--logo_title_vertical .site-branding__identity {
		gap: 0.25rem;
	}

	.site-branding .custom-logo {
		max-width: min(10.5rem, 58vw);
		max-height: 2.45rem;
		object-fit: contain;
	}

	.site-header--density-compact .site-branding .custom-logo {
		max-height: 2rem;
	}

	.site-title {
		font-size: clamp(0.95rem, 4.4vw, 1.2rem);
		line-height: 1.05;
	}

	.site-branding__tagline {
		font-size: 0.78rem;
		line-height: 1.25;
	}

	.menu-toggle {
		min-height: var(--sc-mobile-touch-target);
		padding: 0.65rem 0.9rem;
		font-size: 0.88rem;
	}

	.site-navigation.is-open {
		padding-block: 1rem 1.35rem;
	}

	.site-navigation__menu {
		gap: 0.85rem;
	}

	.site-social__menu {
		gap: 0.55rem;
		padding-top: 0.95rem;
		margin-top: 0.25rem;
		border-top: 1px solid var(--sc-color-border);
	}

	.site-social__link {
		width: var(--sc-mobile-touch-target);
		height: var(--sc-mobile-touch-target);
	}
}

@media (max-width: 600px) {
	:where(.wp-block-buttons) {
		gap: 0.75rem;
	}

	:where(.wp-block-button__link, .wp-element-button, .wp-block-search__button, input[type="submit"], button[type="submit"]) {
		min-width: 8.5rem;
		min-height: var(--sc-mobile-touch-target, 2.85rem);
		padding-inline: 1.35rem;
	}

	:where(.wp-block-buttons.is-content-justification-center .wp-block-button__link) {
		min-width: 9rem;
	}

	:where(.wp-block-search) {
		display: grid;
		gap: 0.65rem;
	}

	:where(.wp-block-search__inside-wrapper) {
		gap: 0.75rem;
	}

	:where(input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], select, .wp-block-search__input) {
		min-height: var(--sc-mobile-touch-target, 2.85rem);
		padding: 0.78rem 0.95rem;
	}

	:where(textarea) {
		padding: 0.95rem;
	}

	:where(.wp-block-details, .wp-block-file, .wp-block-code, .wp-block-preformatted, .wp-block-verse) {
		padding: 1.2rem;
	}

	:where(.wp-block-gallery) {
		gap: 0.75rem;
	}

	:where(.wp-block-media-text.is-stacked-on-mobile) {
		gap: 1.15rem;
	}

	:where(.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content) {
		padding-block: 0.25rem 0;
	}

	:where(.wp-block-table th, .wp-block-table td, .wp-block-calendar th, .wp-block-calendar td) {
		padding: 0.65rem 0.55rem;
	}

	:where(.wp-block-calendar tbody a) {
		min-width: 1.75rem;
		min-height: 1.75rem;
	}

	:where(.wp-block-query .wp-block-post > .wp-block-group, .wp-block-query .wp-block-post:not(:has(> .wp-block-group))) {
		padding: 1.2rem;
	}

	:where(.wp-block-query .wp-block-post-featured-image) {
		margin: -1.2rem -1.2rem 1rem;
	}
}
