/* Breakpoints: 1440, 1200, 1024, 768, 480, 375 */

@media (max-width: 1200px) {
	.bmc-card-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.bmc-trust-rail { grid-template-columns: repeat(2, 1fr); }
	.bmc-footer__grid { grid-template-columns: 1fr 1fr; }
	.bmc-hero__photo { height: 580px; }
	.bmc-hero__stage { min-height: 580px; }
	.bmc-why__card { width: min(250px, 34%); }
	.bmc-sectors__editorial { grid-auto-rows: 300px; }
	.bmc-sector-panel:nth-child(1) { min-height: 618px; }
}

@media (max-width: 1024px) {
	.bmc-hero__layout,
	.bmc-split,
	.bmc-dual,
	.bmc-contact-grid,
	.bmc-cta__inner,
	.bmc-option-grid,
	.bmc-steps,
	.bmc-card-grid--3,
	.bmc-services__modular {
		grid-template-columns: 1fr;
	}

	.bmc-cta__inner { align-items: flex-start; flex-direction: column; }
	.bmc-hero { padding: 132px 0 64px; min-height: 0; }
	.bmc-hero__title { max-width: none; }
	.bmc-hero__stage { min-height: 0; }
	.bmc-hero__photo {
		width: 100%;
		height: 520px;
		border-radius: 32px;
	}
	.bmc-float-card { position: relative; top: auto; left: auto; right: auto; bottom: auto; }
	.bmc-hero__stage {
		display: grid;
		gap: 14px;
	}
	.bmc-hero__stage .bmc-hero__photo { grid-column: 1 / -1; }
	.bmc-hero__stage {
		grid-template-columns: 1fr 1fr;
	}
	.bmc-section { padding: 80px 0; }
	.bmc-services__tiles { grid-template-columns: 1fr 1fr; }
	.bmc-service-featured { min-height: 480px; }
	.bmc-sectors__editorial {
		grid-template-columns: 1fr 1fr;
		grid-auto-rows: 320px;
	}
	.bmc-sector-panel,
	.bmc-sector-panel:nth-child(1),
	.bmc-sector-panel:nth-child(4) {
		grid-row: auto;
		grid-column: auto;
		min-height: 320px;
	}
	.bmc-sector-panel:nth-child(1) .bmc-sector-panel__glass {
		right: 20px;
		width: auto;
	}
	.bmc-why__orbit {
		min-height: 0;
		display: block;
	}
	.bmc-why__core { margin: 0 auto 36px; }
	.bmc-why__card {
		position: relative;
		width: auto;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
		animation: none;
		margin-bottom: 16px;
	}
	.bmc-why__orbit {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 16px;
	}
	.bmc-why__core { grid-column: 1 / -1; }
	.bmc-split-screen {
		flex-direction: column;
		min-height: 0;
		height: auto;
		max-height: none;
	}
	.bmc-split-screen__side {
		min-height: 520px;
		height: 62vh;
		flex: none !important;
	}
	.bmc-split-screen__divider { display: none; }
	.bmc-cta-immersive__panel { padding: 48px 32px; }
}

@media (max-width: 768px) {
	.bmc-menu-toggle { display: inline-flex; align-items: center; justify-content: center; }

	.bmc-header { padding-top: 12px; }

	.bmc-nav {
		position: fixed;
		inset: 0 0 0 auto;
		width: min(88vw, 380px);
		background: rgba(246, 243, 238, 0.92);
		backdrop-filter: blur(22px);
		padding: 96px 24px 32px;
		transform: translateX(110%);
		transition: transform 0.4s var(--bmc-ease);
		box-shadow: var(--bmc-shadow-hover);
		overflow-y: auto;
		z-index: 1001;
		align-items: stretch;
		flex-direction: column;
	}

	body.bmc-nav-open .bmc-nav { transform: translateX(0); }

	.bmc-nav-overlay {
		display: block;
		position: fixed;
		inset: 0;
		background: rgba(26, 31, 36, 0.42);
		backdrop-filter: blur(6px);
		z-index: 1000;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.3s ease;
	}

	body.bmc-nav-open .bmc-nav-overlay {
		opacity: 1;
		pointer-events: auto;
	}

	.bmc-menu {
		flex-direction: column;
		align-items: stretch;
		gap: 4px;
	}

	.bmc-menu a { padding: 14px 8px; font-size: 1.05rem; }

	.bmc-menu .sub-menu {
		position: static;
		display: block;
		box-shadow: none;
		border: 0;
		padding-left: 12px;
		background: transparent;
	}

	.bmc-header__cta { display: none; }
	.bmc-nav__mobile-cta { display: inline-flex; margin-top: 24px; }

	.bmc-hero__layout,
	.bmc-hero__stage,
	.bmc-split,
	.bmc-dual,
	.bmc-contact-grid,
	.bmc-option-grid,
	.bmc-steps,
	.bmc-card-grid--3,
	.bmc-card-grid--4,
	.bmc-trust-rail,
	.bmc-form__grid,
	.bmc-ticks--grid,
	.bmc-footer__grid,
	.bmc-services__tiles,
	.bmc-sectors__editorial,
	.bmc-why__orbit {
		grid-template-columns: 1fr;
	}

	.bmc-sector-panel,
	.bmc-sector-panel:nth-child(1),
	.bmc-sector-panel:nth-child(4) {
		min-height: 280px;
	}

	.bmc-hero__photo,
	.bmc-split__media img { height: 340px; }

	.bmc-hero__stage {
		display: block;
		position: relative;
	}

	.bmc-float-card {
		position: absolute;
		min-width: 0;
		max-width: calc(50% - 14px);
		padding: 10px 12px;
		gap: 8px;
	}

	.bmc-float-card--1 { top: 12px; left: 10px; right: auto; bottom: auto; }
	.bmc-float-card--2 { top: 12px; right: 10px; left: auto; bottom: auto; }
	.bmc-float-card--3 { bottom: 12px; left: 10px; top: auto; right: auto; }
	.bmc-float-card--4 { bottom: 12px; right: 10px; top: auto; left: auto; }

	.bmc-btn-row { flex-direction: column; align-items: stretch; }
	.bmc-btn-row .bmc-btn { width: 100%; justify-content: center; }
	.bmc-header__inner { min-height: 88px; }
	.bmc-header .bmc-logo,
	.bmc-header .custom-logo-link,
	.bmc-header .bmc-logo__img,
	.bmc-header .custom-logo-link img {
		width: 72px;
		height: 72px;
		max-width: 72px;
	}
	.bmc-section { padding: 64px 0; }
	.bmc-container { width: min(100% - 28px, var(--bmc-container)); }
	.bmc-float-card { min-width: 0; }
	.bmc-service-featured { min-height: 420px; }
	.bmc-service-featured__panel { left: 16px; right: 16px; bottom: 16px; }
	.bmc-split-screen__content { padding: 32px 22px 36px; }
	.bmc-split-screen__content h3 { max-width: none; }
	.bmc-cta-immersive { padding: 72px 0; }
	.bmc-cta-immersive__panel { padding: 36px 22px; }
	.bmc-page-hero { min-height: 420px; }
	.bmc-page-hero__inner { padding: 132px 0 48px; }
	.bmc-page-hero__panel { padding: 24px; }
	.bmc-why__card { animation: none; }
	.bmc-blob { transform: scale(0.7); }
}

@media (max-width: 480px) {
	.bmc-btn { width: 100%; justify-content: center; }
	.bmc-btn-row { flex-direction: column; }
	.bmc-page-hero__inner { padding: 120px 0 40px; }
	h1 { font-size: 2.15rem; }
	.bmc-hero__photo { height: 320px; border-radius: 24px; }
	.bmc-header .bmc-logo,
	.bmc-header .custom-logo-link,
	.bmc-header .bmc-logo__img,
	.bmc-header .custom-logo-link img {
		width: 64px;
		height: 64px;
		max-width: 64px;
	}
	.bmc-float-card__meta { display: none; }
	.bmc-float-card__label { font-size: 0.78rem; }
}

@media (max-width: 375px) {
	.bmc-logo__name { font-size: 1rem; }
	.bmc-section { padding: 52px 0; }
}
