/**
 * Phorte Home — mobile layout corrections.
 *
 * The selectors are scoped to the Home page and the current Elementor
 * container IDs so product/catalog templates remain untouched.
 */

@media (max-width: 1024px) {
	body.home,
	body.home .elementor,
	body.home .elementor-element-130 {
		max-width: 100%;
		overflow-x: clip;
	}

	/* The track may remain wider than the viewport, but the page must not. */
	body.home .elementor-element-7b113d9d,
	body.home .elementor-element-7b113d9d .swiper,
	body.home .elementor-element-7b113d9d .jet-listing-grid {
		max-width: 100%;
		overflow: hidden;
	}

	body.home .elementor-element-7b113d9d .jet-listing-grid {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	body.home img,
	body.home video,
	body.home iframe {
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	/* Home type scale: keep the Phorte hierarchy readable without global Woo overrides. */
	body.home .elementor-widget-heading h1.elementor-heading-title {
		font-size: 32px !important;
		font-weight: 900 !important;
		letter-spacing: -0.02em !important;
		line-height: 1.08 !important;
	}

	body.home .elementor-widget-heading h2.elementor-heading-title {
		font-size: 26px !important;
		font-weight: 900 !important;
		letter-spacing: -0.02em !important;
		line-height: 1.12 !important;
	}

	body.home .elementor-widget-heading h3.elementor-heading-title {
		font-size: 21px !important;
		font-weight: 800 !important;
		letter-spacing: -0.01em !important;
		line-height: 1.2 !important;
	}

	body.home .elementor-widget-heading p.elementor-heading-title {
		font-size: 12px !important;
		font-weight: 900 !important;
		letter-spacing: 0.12em !important;
		line-height: 1.25 !important;
		text-transform: uppercase;
	}

	/* Popular courses: one readable card per row instead of three squeezed cards. */
	body.home .elementor-element-71b0a170 .jet-listing-grid__items,
	body.home .elementor-element-71b0a170 .jet-listing-grid__items.grid-col-mobile-3,
	body.home .ph-course-listing-slot .jet-listing-grid__items {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 16px !important;
		margin: 0 !important;
		width: 100% !important;
	}

	body.home .elementor-element-71b0a170 .jet-listing-grid__item,
	body.home .ph-course-listing-slot .jet-listing-grid__item {
		box-sizing: border-box;
		min-width: 0 !important;
		max-width: 100% !important;
		flex-basis: 100% !important;
		padding: 0 !important;
		width: 100% !important;
	}

	body.home .elementor-element-71b0a170 .ph-course-card,
	body.home .ph-course-listing-slot .ph-course-card {
		min-width: 0;
		width: 100%;
	}

	/* Areas remain a horizontal interaction, contained inside their section. */
	body.home .elementor-element-7b113d9d .swiper-wrapper {
		max-width: none;
	}

	body.home .elementor-element-7b113d9d .swiper-slide,
	body.home .elementor-element-7b113d9d .jet-listing-grid__item {
		min-width: 0;
	}

	/* Final CTA: remove the desktop split padding and stack the conversion content. */
	body.home .elementor-element-35a7fc2 {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		padding: 24px !important;
	}

	body.home .elementor-element-35a7fc2 > .elementor-widget,
	body.home .elementor-element-35a7fc2 > .elementor-element-76cfaa6d {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.home .elementor-element-35a7fc2 > .elementor-element-76cfaa6d {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}

	body.home .elementor-element-35a7fc2 .elementor-heading-title,
	body.home .elementor-element-35a7fc2 .elementor-widget-text-editor {
		max-width: 100%;
		width: 100%;
	}

	body.home .elementor-element-35a7fc2 > .elementor-element-76cfaa6d .elementor-button {
		min-height: 56px;
		width: 100%;
	}
}

@media (min-width: 768px) and (max-width: 899px) {
	body.home .elementor-element-71b0a170 .jet-listing-grid__items,
	body.home .ph-course-listing-slot .jet-listing-grid__items {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 20px !important;
	}

	body.home .elementor-element-71b0a170 .jet-listing-grid__item,
	body.home .ph-course-listing-slot .jet-listing-grid__item {
		max-width: 50% !important;
		flex-basis: 50% !important;
	}
}

@media (max-width: 380px) {
	body.home .elementor-element-35a7fc2 {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}

