@media (max-width: 47.99rem) {
	.site-main {
		padding-top: var(--space-xl);
	}

	/* Category grid — 1 column vertical stack on mobile */
	.category-grid {
		grid-template-columns: 1fr !important;
		gap: var(--space-sm);
	}

	.category-card--photo .category-card__link {
		min-height: 180px;
	}

	/* Post grid — ensure 1 column on narrow mobile */
	.post-grid {
		grid-template-columns: 1fr !important;
		gap: var(--space-md);
	}

	/* Tool list (homepage) — 2 columns */
	.tool-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-header__inner,
	.home-hero__layout,
	.archive-hero__header,
	.section-heading--split,
	.newsletter-panel,
	.content-layout,
	.site-footer__meta-inner {
		gap: var(--space-lg);
	}

	.site-description {
		display: none;
	}

	.site-header__actions {
		display: none;
	}

	.home-hero__actions .button,
	.home-hero__actions .wp-block-button__link,
	.home-hero__actions .button,
	.home-hero__actions .wp-block-button__link,
	.newsletter-panel__actions > * {
		width: 100%;
	}

	.site-header__phone {
		position: fixed;
		right: 1rem;
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
		left: 1rem;
		z-index: 45;
		justify-content: center;
		box-shadow: var(--shadow-card);
	}

	body {
		padding-bottom: calc(var(--mobile-bar-height) + 2.5rem + env(safe-area-inset-bottom, 0px));
	}

	body.admin-bar .site-header__phone {
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
	}

	.search-form {
		flex-direction: column;
	}

	.search-submit,
	.archive-hero__meta,
	.error-page__actions .button,
	.page-links__label {
		width: 100%;
	}

	.archive-hero__meta {
		align-items: flex-start;
	}

	.post-card__content,
	.tool-card,
	.widget,
	.archive-hero,
	.archive-empty,
	.single-share {
		padding: 1.2rem;
	}

	.single-article__meta-item {
		width: 100%;
		justify-content: space-between;
	}

	.entry-content {
		overflow-wrap: anywhere;
	}

	.entry-content table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	.entry-content iframe,
	.entry-content video,
	.entry-content embed,
	.entry-content object {
		min-height: 14rem;
	}

	.entry-content .calc button,
	.entry-content .calc input[type="submit"],
	.entry-content .calc input[type="button"],
	.entry-content [class~="calc"] button,
	.entry-content [class~="calc"] input[type="submit"],
	.entry-content [class~="calc"] input[type="button"] {
		width: 100%;
	}

	.entry-content .calc,
	.entry-content [class~="calc"] {
		padding: 1.15rem;
		gap: 0.9rem;
	}

	.entry-content .calc :where(output, #cr, [id="cr"]),
	.entry-content [class~="calc"] :where(output, #cr, [id="cr"]) {
		padding-left: 3rem;
	}

	/* Share: keep compact circle buttons on mobile, inline row */
	.single-share__links {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 0.6rem;
	}
	.single-share__link {
		width: 2.5rem;
		height: 2.5rem;
	}

	/* Calculator mobile fixes */
	.entry-content input[type="number"],
	.entry-content input[type="text"] {
		max-width: 100%;
	}

	.entry-content input[type="number"]:has(+ select) {
		display: block;
		max-width: 100%;
		margin-bottom: 0.5rem;
	}

	.entry-content input[type="number"] + select,
	.entry-content select {
		display: block;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}

	.entry-content input[type="button"] {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	/* CookieYes — compact on mobile */
	.cky-consent-container.cky-box-bottom-left {
		left: 0.5rem !important;
		right: 0.5rem !important;
		bottom: 0.5rem !important;
		max-width: calc(100vw - 1rem) !important;
	}

	.cky-consent-bar {
		padding: 0.85rem !important;
	}

	.cky-title {
		font-size: 0.95rem !important;
		margin-bottom: 0.25rem !important;
	}

	.cky-notice-des {
		font-size: 0.78rem !important;
		line-height: 1.35 !important;
		max-height: 3.8em !important;
		overflow: hidden !important;
	}

	.cky-notice {
		gap: 0.3rem !important;
	}

	.cky-notice-group {
		margin-bottom: 0.5rem !important;
	}

	.cky-notice-btn-wrapper {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		gap: 0.4rem !important;
	}

	.cky-btn {
		flex: 1 1 auto !important;
		min-height: 2.5rem !important;
		padding: 0.5rem 0.75rem !important;
		font-size: 0.82rem !important;
	}

	.post-navigation a {
		padding: 1.1rem 1.2rem;
	}

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

	.site-footer__meta-inner {
		padding-bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px));
	}

	.site-footer__meta-nav,
	.site-footer__meta-menu {
		width: 100%;
	}

	.site-footer__meta-menu {
		flex-direction: column;
		gap: var(--space-xs);
	}
}

@media (min-width: 48rem) {
	.container {
		width: min(100% - 3rem, var(--container-xl));
	}

	.site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.site-header__actions {
		justify-content: flex-end;
	}

	.section-heading--split,
	.archive-hero__header,
	.newsletter-panel,
	.site-footer__meta-inner {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}

	.category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.category-card--photo .category-card__link {
		min-height: 260px;
	}

	.tool-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.archive-hero__meta {
		min-width: 13rem;
	}

	.post-navigation .nav-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 64rem) {
	.site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto minmax(16rem, auto);
	}

	/* Desktop: show inline nav, hide hamburger */
	.site-nav {
		display: block;
	}

	.site-header__hamburger {
		display: none;
	}

	.site-header__inner {
		grid-template-columns: auto 1fr auto;
		align-items: center;
	}

	.site-nav__list {
		justify-content: center;
	}

	.home-hero__layout,
	.newsletter-panel,
	.content-layout--with-sidebar {
		grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
	}

	.content-layout--with-sidebar .content-layout__sidebar {
		position: sticky;
		top: calc(var(--header-height) + var(--space-lg));
	}

	.category-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.tool-list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.site-footer__grid {
		grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 80rem) {
	.home-hero__layout {
		grid-template-columns: minmax(0, 1.05fr) minmax(30rem, 0.95fr);
	}

	.category-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.archive-hero__header {
		grid-template-columns: minmax(0, 1fr) auto;
	}
}
