/* ==========================================================================
   Responsive — tablet & mobile breakpoints
   Loaded last so it overrides section defaults.
   ========================================================================== */

/* ---------- Tablet (<=1024px) ---------- */
@media (max-width: 1024px) {
	.mct-header__menu {
		display: none;
	}

	.mct-header__toggle {
		display: flex;
	}

	/* Fixed full-height poster backgrounds are unreliable on touch browsers
	   (address-bar resize, jank), so the pin effect is desktop-only. */
	.mct-hero {
		position: relative;
		height: auto;
		min-height: 100vh;
	}

	.mct-hero__spacer {
		display: none;
	}

	.mct-about {
		border-radius: 0;
		box-shadow: none;
	}

	.mct-hero__inner {
		grid-template-columns: 1fr;
		text-align: center;
		padding-top: 20px;
	}

	.mct-hero__desc {
		margin-inline: auto;
	}

	.mct-hero__cta,
	.mct-hero__badges {
		justify-content: center;
	}

	.mct-hero__visual {
		order: -1;
	}

	.mct-hero__device-wrap {
		max-width: 300px;
		margin: 0 auto 20px;
	}

	.mct-about__row,
	.mct-about__row--reverse {
		grid-template-columns: 1fr;
		direction: rtl;
		gap: 40px;
	}

	.mct-about__row--reverse .mct-about__media img {
		max-height: 420px;
	}

	.mct-about__stats {
		grid-template-columns: repeat(2, 1fr);
	}

	.mct-about__stats .mct-stat:nth-child(2) {
		border-inline-end: none;
	}

	.mct-about__stats .mct-stat:nth-child(1),
	.mct-about__stats .mct-stat:nth-child(2) {
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.mct-why__grid,
	.mct-benefits__grid,
	.mct-applications__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.mct-device__grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.mct-device__media img {
		max-height: 460px;
	}

	.mct-contact__grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.mct-footer__top {
		grid-template-columns: 1fr 1fr;
	}

	.mct-footer__col--brand {
		grid-column: 1 / -1;
	}

	.mct-page-banner {
		padding: 140px 0 56px;
	}

	.mct-mechanism__steps,
	.mct-bullet-block__grid {
		grid-template-columns: 1fr;
	}

	.mct-mechanism__badges {
		grid-template-columns: repeat(2, 1fr);
	}

	.mct-app-detail__row,
	.mct-app-detail__row--reverse {
		grid-template-columns: 1fr;
		direction: rtl;
		text-align: center;
	}

	.mct-app-detail__icon {
		max-width: 160px;
		margin: 0 auto;
	}

	.mct-app-detail__content ul {
		grid-template-columns: 1fr;
		text-align: right;
	}

	.mct-gallery__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ---------- Mobile (<=640px) ---------- */
@media (max-width: 640px) {
	.mct-container {
		padding: 0 18px;
	}

	.mct-space-section,
	.mct-about,
	.mct-why,
	.mct-device,
	.mct-benefits,
	.mct-applications {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.mct-hero {
		padding-top: 88px;
	}

	.mct-hero__title {
		font-size: 34px;
	}

	.mct-hero__cta {
		flex-direction: column;
		width: 100%;
	}

	.mct-hero__cta .mct-btn {
		width: 100%;
	}

	.mct-hero__badges {
		gap: 12px 18px;
	}

	.mct-why__grid,
	.mct-benefits__grid,
	.mct-applications__grid {
		grid-template-columns: 1fr;
	}

	.mct-about__stats {
		grid-template-columns: 1fr;
	}

	.mct-about__stats .mct-stat {
		border-inline-end: none !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.mct-about__stats .mct-stat:last-child {
		border-bottom: none;
	}

	.mct-contact__form-wrap {
		padding: 26px;
	}

	.mct-footer__top {
		grid-template-columns: 1fr;
		padding-bottom: 40px;
	}

	.mct-footer__col--brand {
		grid-column: auto;
	}

	.mct-footer__bottom {
		flex-direction: column;
		text-align: center;
	}

	.mct-cta__inner {
		padding: 64px 20px;
	}

	.mct-page-banner {
		padding: 120px 0 48px;
	}

	.mct-tech-intro,
	.mct-mechanism,
	.mct-sci-data,
	.mct-why-detail,
	.mct-app-detail,
	.mct-about-page,
	.mct-gallery-placeholder {
		padding-top: 56px;
		padding-bottom: 56px;
	}

	.mct-mechanism__badges,
	.mct-bullet-block__cols {
		grid-template-columns: 1fr;
	}

	.mct-about-page__block--iran {
		padding: 26px;
	}

	.mct-gallery__grid {
		grid-template-columns: 1fr;
	}
}
