/* Standard Mobile-First Responsiveness (Tablet & Mobile) */

/* General safe-reset to prevent any lateral scroll */
html,
body {
	overflow-x: hidden !important;
	width: 100vw;
}

@media (max-width: 912px) {
	.full-width {
		padding: 50px 5% !important;
	}

	/* SERVICES: Force 2 columns on tablet, 1 on mobile */
	.services-container,
	.pillars-grid {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
		width: 100% !important;
	}

	.pillar-card {
		padding: 40px 20px !important;
	}

	.service-divider {
		display: none !important;
	}

	/* PARTNERS: 3 columns on tablet */
	.brands-grid {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 15px !important;
	}

	/* CONTACT: Stack early */
	.contact-fluid-container {
		flex-direction: column !important;
		gap: 30px !important;
	}

	.contacto-info-full,
	.contact-form-full {
		width: 100% !important;
		min-width: unset !important;
		padding: 30px 5% !important;
	}
}

@media (max-width: 500px) {

	/* HERO */
	.hero-content h1 {
		font-size: 1.8rem !important;
	}

	/* SERVICES: Force 1 column on mobile */
	.services-container,
	.pillars-grid {
		grid-template-columns: 1fr !important;
		gap: 25px !important;
	}

	.cta-box {
		padding: 40px 20px !important;
		border-radius: 30px !important;
	}

	/* PARTNERS: Force 1 column on mobile */
	.brands-grid {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}

	.brand-item {
		height: 140px !important;
	}

	/* WHOWEARE (Orbital): Stack and Scale */
	.tech-container {
		grid-template-columns: 1fr !important;
	}

	.tech-visual-wrapper {
		order: -1;
		margin-bottom: 30px;
	}

	.tech-visual {
		width: 260px !important;
		height: 260px !important;
	}
}