/* =========================================================
   INTERIA — responsive.css
   1440+ full / 1024–1439 tablet-landscape / 768–1023 tablet-
   portrait / 480–767 mobile-large / <480 mobile-small
   ========================================================= */

/* ---------- 1024–1439: reduce type ~15% ---------- */
@media (max-width: 1439px) {
	:root {
		--fs-5: 31px;
		--fs-6: 48px;
		--fs-7: 68px;
		--fs-8: 94px;
		--section-pad: 110px;
	}
}

/* ---------- 768–1023: stack to two/one columns, no cursor ---------- */
@media (max-width: 1023px) {
	:root {
		--fs-6: 42px;
		--fs-7: 56px;
		--fs-8: 72px;
		--section-pad: 88px;
		--gutter: 24px;
	}

	.site-nav, .btn--nav { display: none; }
	.hamburger { display: flex; }

	.card-grid--3, .card-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.team-grid--3, .team-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.masonry-grid, .masonry-gallery { columns: 2; }
	.featured-grid { grid-template-columns: repeat(2, 1fr); }

	.two-col, .split-hero, .contact-split__grid,
	.services-overview__row, .product-hero__grid { grid-template-columns: 1fr; }
	.services-overview__row--flip .services-overview__media { order: 0; }
	.two-col { gap: 48px; }
	.split-hero__content { padding: 48px var(--gutter); }

	.shop-layout__grid { grid-template-columns: 1fr; gap: 32px; }
	.shop-filters__toggle { display: inline-flex; }
	.shop-filters__panel {
		max-height: 0; overflow: hidden;
		transition: max-height 0.5s var(--ease-out-expo);
	}
	.shop-filters.is-open .shop-filters__panel { max-height: 1200px; padding-top: 24px; }

	.post-layout__grid { grid-template-columns: 1fr; }
	.post-toc { display: none; }
	.blog-layout { grid-template-columns: 1fr; }

	/* Process: vertical stack instead of pinned horizontal */
	.process--horizontal .process__track {
		flex-direction: column;
		width: auto;
	}
	.process--horizontal .process__card { width: auto; }

	.project-meta__grid, .stats-band__grid { grid-template-columns: repeat(2, 1fr); }
	.service-accordion__header { grid-template-columns: 48px 1fr 32px; }
	.service-accordion__tagline { display: none; }
	.service-accordion__body { padding-left: 0; }
	.service-accordion__gallery { grid-template-columns: repeat(2, 1fr); }
}

/* ---------- 480–767: single column ---------- */
@media (max-width: 767px) {
	:root {
		--fs-4: 21px;
		--fs-5: 28px;
		--fs-6: 36px;
		--fs-7: 44px;
		--fs-8: 56px;
		--section-pad: 64px;
		--gutter: 20px;
	}

	.card-grid--3, .card-grid--4,
	.team-grid--3, .team-grid--4,
	.featured-grid { grid-template-columns: 1fr; }
	.masonry-grid, .masonry-gallery { columns: 1; }

	.hero__ctas .btn, .cta-band__buttons .btn { width: 100%; justify-content: center; }
	.contact-form { grid-template-columns: 1fr; }
	.h-scroll > * { flex-basis: 260px; }
	.lightbox { padding: 16px; }
	.lightbox__nav--prev { left: 4px; }
	.lightbox__nav--next { right: 4px; }
	.filter-bar { top: 72px; }
	.error-404__number { font-size: 120px; }
	.error-404__title { margin-top: -20px; }
	.author-bio { flex-direction: column; }
	.calendly-lightbox { padding: 16px; }
	.enquiry-panel { padding: 72px 24px 32px; }
	.product-tabs__nav { gap: 24px; }
	.page-hero { padding-top: 150px; }
	.product-hero { padding-top: 120px; }
}

/* ---------- <480: smallest ---------- */
@media (max-width: 479px) {
	:root {
		--fs-6: 32px;
		--fs-7: 38px;
		--fs-8: 48px;
	}
	.hero__headline { font-size: 48px; }
	.section { padding-block: 56px; }
	.project-meta__grid, .stats-band__grid { grid-template-columns: 1fr; }
	.btn { padding: 16px 24px; width: 100%; justify-content: center; }
	.btn--nav { width: auto; }
	.site-footer__grid { grid-template-columns: 1fr; gap: 40px; padding-block: 64px 48px; }
	.mobile-menu__list a { font-size: 38px; }
}

/* Footer grid two-col on tablets */
@media (min-width: 480px) and (max-width: 1023px) {
	.site-footer__grid { grid-template-columns: repeat(2, 1fr); }
}
