/* ==========================================================================
   INDUVRA — RESPONSIVE
   Breakpoints: mobile < 768 · tablet 768–1023 · desktop 1024+ · large 1400+.
   Mobile is treated as its own layout, not a shrunken desktop.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Large desktop (1400+)
   -------------------------------------------------------------------------- */
@media (min-width: 1400px) {
	.induvra-container,
	.induvra-section__inner {
		padding-inline: var(--space-lg);
	}
}

/* --------------------------------------------------------------------------
   Tablet (768 – 1023)
   -------------------------------------------------------------------------- */
@media (max-width: 1023px) {
	:root {
		--font-size-hero: 46px;
		--font-size-h1: 40px;
		--font-size-h2: 32px;
		--font-size-h3: 22px;
	}

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

	.induvra-split {
		gap: var(--space-xl);
	}

	.induvra-section {
		padding-block: var(--space-xl);
	}

	.induvra-section--loose {
		padding-block: var(--space-2xl);
	}
}

/* --------------------------------------------------------------------------
   Mobile (< 768)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	:root {
		--font-size-hero: 38px;
		--font-size-h1: 32px;
		--font-size-h2: 28px;
		--font-size-h3: 21px;
		--font-size-body: 15px;
	}

	.induvra-container,
	.induvra-section__inner {
		padding-inline: var(--space-sm);
	}

	.induvra-section {
		padding-block: var(--space-xl);
	}

	.induvra-section--loose {
		padding-block: var(--space-2xl);
	}

	.induvra-grid--2,
	.induvra-grid--3,
	.induvra-grid--4 {
		grid-template-columns: minmax(0, 1fr);
	}

	.induvra-split {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--space-lg);
	}

	.induvra-split .induvra-split__media {
		order: 0;
	}

	.induvra-section-heading--split {
		flex-direction: column;
		align-items: flex-start;
	}

	.induvra-btn,
	.induvra-button,
	.woocommerce .button,
	input[type="submit"] {
		min-height: 50px;
	}
}

/* --------------------------------------------------------------------------
   Visibility helpers
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	.induvra-hide-mobile {
		display: none !important;
	}
}

@media (min-width: 768px) {
	.induvra-show-mobile {
		display: none !important;
	}
}
