@media (max-width: 1100px) {
	.primary-nav,
	.header-actions .header-socials,
	.header-patron {
		display: none;
	}

	.mobile-menu-toggle {
		display: grid;
	}

	.review-grid,
	.review-grid--small,
	.woocommerce .products ul,
	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.section-header--split,
	.site-footer__bottom,
	.author-box {
		align-items: flex-start;
		flex-direction: column;
	}

	.section-header--split {
		display: grid;
	}

	.category-filters {
		justify-content: flex-start;
	}

	.content-layout {
		grid-template-columns: 1fr;
	}

	.sticky-sidebar {
		position: static;
	}

	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
}

@media (max-width: 700px) {
	.container,
	.container--narrow {
		width: min(100% - 1.25rem, var(--container));
	}

	.top-banner {
		padding-inline: 1rem 3rem;
		letter-spacing: 0.12em;
	}

	.site-header__inner {
		min-height: 4.8rem;
	}

	.brand-wordmark {
		font-size: 1.15rem;
		letter-spacing: 0.18em;
	}

	.hero {
		padding-block: 4rem;
	}

	.hero h1 {
		letter-spacing: 0.1em;
	}

	.hero-search,
	.search-form,
	.newsletter-form-slot form {
		flex-direction: column;
	}

	.hero-search__field,
	.search-form__field {
		min-height: 3.25rem;
	}

	.stats-grid,
	.quick-link-grid,
	.support-grid,
	.pros-cons,
	.post-navigation .nav-links {
		grid-template-columns: 1fr;
	}

	.review-grid,
	.review-grid--small,
	.woocommerce .products ul,
	.woocommerce ul.products {
		grid-template-columns: 1fr;
	}

	.archive-entry {
		grid-template-columns: 1fr;
	}

	.review-card__footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.modal__footer {
		align-items: stretch;
		flex-direction: column;
	}

	.modal__footer .button {
		width: 100%;
	}
}


@media (max-width: 1100px) {

    .primary-nav {
        display: none !important;
    }

    .header-socials,
    .header-patron {
        display: none !important;
    }

    .mobile-menu-toggle {
        display: grid !important;
    }

    .mobile-menu {
        display: none;
    }

    .mobile-menu.is-open {
        display: block;
    }
}


/* Prevent horizontal scrolling */
html,
body {
    overflow-x: hidden !important;
    width: 100%;
    max-width: 100%;
}

/* Prevent elements from exceeding viewport */
*,
*::before,
*::after {
    max-width: 100%;
    box-sizing: border-box;
}

/* Images, videos, iframes */
img,
video,
iframe,
svg,
canvas {
    max-width: 100%;
    height: auto;
}

/* Grid and flex children */
.container,
.site-header,
.hero,
.hero__inner,
.stats-grid,
.review-grid,
.review-grid--small,
.content-layout,
.site-footer,
.site-footer__grid {
    min-width: 0;
}
