/**
 * SGE — Mobile content alignment (≤767px).
 * Left-align section copy site-wide. Does not affect header chrome or carousel dots.
 */

@media (max-width: 767px) {
	/* Section headers, intros, and copy blocks */
	#main [class*="sge-"][class*="__header"],
	#main [class*="sge-"][class*="__head"],
	#main [class*="sge-"][class*="__hero"],
	#main [class*="sge-"][class*="__intro"],
	#main [class*="sge-"][class*="__lead"],
	#main [class*="sge-"][class*="__desc"],
	#main [class*="sge-"][class*="__copy"],
	#main [class*="sge-"][class*="__title-band"],
	#main [class*="sge-"][class*="__eyebrow"],
	#main [class*="sge-"][class*="__heading"],
	#main [class*="sge-"][class*="__subtitle"],
	#main [class*="sge-"][class*="__title"]:not(.sge-btn),
	#main [class*="sge-"][class*="__text-wrap"],
	#main [class*="sge-"][class*="__title-wrap"],
	#main [class*="sge-"][class*="__complete__head"],
	#main [class*="sge-"][class*="__categories__head"],
	#main [class*="sge-"][class*="__details__copy"],
	#main .sge-pdp-mid,
	#main .sge-pdp-prose,
	.elementor-location-single [class*="sge-"][class*="__header"],
	.elementor-location-single [class*="sge-"][class*="__head"],
	.elementor-location-single [class*="sge-"][class*="__hero"],
	.elementor-location-single [class*="sge-"][class*="__intro"],
	.elementor-location-single [class*="sge-"][class*="__lead"],
	.elementor-location-single [class*="sge-"][class*="__desc"],
	.elementor-location-single [class*="sge-"][class*="__copy"],
	.elementor-location-single [class*="sge-"][class*="__title-band"],
	.elementor-location-single [class*="sge-"][class*="__eyebrow"],
	.elementor-location-single [class*="sge-"][class*="__heading"],
	.elementor-location-single [class*="sge-"][class*="__subtitle"],
	.elementor-location-single [class*="sge-"][class*="__title"]:not(.sge-btn),
	.elementor-location-single .sge-pdp-mid,
	.elementor-location-single .sge-pdp-prose {
		text-align: left !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-inline: 0 !important;
		justify-content: flex-start !important;
		align-items: flex-start !important;
	}

	#main [class*="sge-"][class*="__header"],
	#main [class*="sge-"][class*="__head"],
	.elementor-location-single [class*="sge-"][class*="__header"],
	.elementor-location-single [class*="sge-"][class*="__head"] {
		max-width: none !important;
	}

	[class*="sge-"][class*="__title-band"]::before,
	[class*="sge-"][class*="__title-band"]::after {
		display: none !important;
	}

	[class*="sge-"][class*="__title-band"] {
		gap: 0 !important;
	}

	/* CTA / action rows */
	#main [class*="sge-"][class*="__actions"],
	#main [class*="sge-"][class*="__cta-row"],
	#main [class*="sge-"][class*="__mobile-cta"],
	#main [class*="sge-"][class*="__filters"],
	.elementor-location-single [class*="sge-"][class*="__actions"],
	.elementor-location-single [class*="sge-"][class*="__cta-row"],
	.elementor-location-single [class*="sge-"][class*="__mobile-cta"],
	.elementor-location-single [class*="sge-"][class*="__filters"] {
		justify-content: flex-start !important;
		align-items: flex-start !important;
	}

	/* Page-specific blocks */
	.sge-clients__hero,
	.sge-clients__title,
	.sge-clients__lead,
	.sge-clients__eyebrow,
	.sge-shop-hero__inner,
	.sge-shop-hero__title,
	.sge-shop-hero__lead,
	.sge-shop-hero__eyebrow,
	.sge-journal__header,
	.sge-logos__heading {
		text-align: left !important;
		margin-inline: 0 !important;
		max-width: none !important;
		text-wrap: pretty;
	}

	.sge-vision__card-title,
	.sge-trust__step-label {
		text-align: left !important;
	}

	.sge-clients__stat,
	.sge-clients__filter {
		text-align: left !important;
		justify-content: flex-start !important;
	}

	.sge-contact-details__grid--count-5 .sge-contact-details__card:last-child {
		justify-self: start !important;
		max-width: none !important;
	}

	.sge-imgbreak--align-center .sge-imgbreak__inner {
		align-items: flex-start !important;
		text-align: left !important;
		justify-content: flex-end;
	}

	.sge-imgbreak--align-center .sge-imgbreak__inner > * {
		margin-inline: 0 !important;
	}

	.sge-whatsapp-cta__card,
	.sge-journal__empty,
	.sge-footer__bottom {
		text-align: left !important;
	}

	/* PDP / Woo hero column */
	body.sge-pdp .elementor-location-single .elementor-align-center,
	body.sge-pdp .elementor-location-single .elementor-align-center .elementor-widget-container,
	body.single-product .elementor-location-single .elementor-align-center,
	body.single-product .elementor-location-single .elementor-align-center .elementor-widget-container,
	body.sge-pdp .elementor-widget-woocommerce-breadcrumb,
	body.sge-pdp .elementor-widget-woocommerce-product-title,
	body.sge-pdp .elementor-widget-woocommerce-product-short-description,
	body.sge-pdp .elementor-widget-woocommerce-product-additional-information,
	body.sge-pdp .elementor-widget-text-editor,
	body.sge-pdp .sge-getprice__price,
	body.sge-pdp .sge-getprice__panel,
	body.sge-pdp .sge-getprice__reassure {
		text-align: left !important;
	}

	body.sge-pdp .sge-getprice__panel ~ .e-con,
	body.sge-pdp .elementor-widget-woocommerce-product-add-to-cart ~ .e-con {
		align-items: flex-start !important;
		justify-content: flex-start !important;
	}

	/* Elementor page content (exclude site header) */
	#main .elementor-align-center,
	#main .elementor-align-center .elementor-widget-container,
	#main .elementor-widget-heading.elementor-align-center .elementor-heading-title,
	#main .elementor-widget-text-editor.elementor-align-center,
	.elementor-location-single .elementor-align-center,
	.elementor-location-single .elementor-align-center .elementor-widget-container,
	.elementor-location-single .elementor-widget-heading.elementor-align-center .elementor-heading-title,
	.elementor-location-single .elementor-widget-text-editor.elementor-align-center {
		text-align: left !important;
	}

	#main .e-con.e-parent.elementor-align-center,
	.elementor-location-single .e-con.e-parent.elementor-align-center {
		align-items: flex-start !important;
		justify-content: flex-start !important;
	}

	/* Keep carousel dots centered */
	.sge-reviews__dots,
	.sge-pia__mobile-dots {
		justify-content: center !important;
		align-items: center !important;
	}

	/*
	 * Home hero (sgehero01) — bottom-align the full content stack
	 * (headline, CTAs, yellow line, stats) with breathing room under the line.
	 */
	body.home .elementor-element-sgehero01 {
		--min-height: 100svh !important;
		min-height: 100svh !important;
		--flex-direction: column !important;
		flex-direction: column !important;
		--justify-content: flex-end !important;
		justify-content: flex-end !important;
		--align-items: stretch !important;
		align-items: stretch !important;
		--padding-top: 5rem !important;
		--padding-bottom: calc(1.35rem + env(safe-area-inset-bottom, 0px)) !important;
		padding-top: 5rem !important;
		padding-bottom: calc(1.35rem + env(safe-area-inset-bottom, 0px)) !important;
	}

	body.home .elementor-element-sgeheroc1 {
		--min-height: 0 !important;
		min-height: 0 !important;
		--justify-content: flex-start !important;
		justify-content: flex-start !important;
		flex: 0 0 auto !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	body.home .elementor-element-sgeherost {
		--padding-top: 1.15rem !important;
		padding-top: 1.15rem !important;
		--padding-bottom: 0 !important;
		padding-bottom: 0 !important;
		--gap: 0.9rem 0 !important;
		--row-gap: 0.9rem !important;
		margin-top: 1.15rem !important;
		margin-bottom: 0 !important;
		align-self: stretch !important;
		flex: 0 0 auto !important;
	}

	body.home .elementor-element-sgeherost > .e-con-inner {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		align-items: flex-start !important;
		gap: 0.9rem 0 !important;
	}

	body.home .elementor-element-sgeherost .elementor-widget-heading,
	body.home .elementor-element-sgeherost .elementor-widget-heading .elementor-widget-container,
	body.home .elementor-element-sgeherost .elementor-heading-title {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.home .elementor-element-sgeherost .elementor-widget-text-editor,
	body.home .elementor-element-sgeherost .elementor-widget-text-editor .elementor-widget-container,
	body.home .elementor-element-sgeherost .elementor-widget-text-editor p {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.home .elementor-element-sgest01,
	body.home .elementor-element-sgest02,
	body.home .elementor-element-sgest03,
	body.home .elementor-element-sgest04 {
		--gap: 0.3rem 0 !important;
		--row-gap: 0.3rem !important;
		gap: 0.3rem !important;
	}
}
