/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

.granite-mobile-whatsapp {
	display: none;
}

h1.granite-semantic-page-title {
	--theme-font-size: 35px;
}

@media (max-width: 767px) {
	body.home {
		overflow-x: hidden;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) {
		display: none !important;
		min-height: 0 !important;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) + .e-con,
	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-box) {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		box-sizing: border-box;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) + .e-con {
		--gap: 10px 10px;
		--row-gap: 10px;
		--column-gap: 10px;
		--margin-bottom: 24px;
		--padding-top: 24px;
		--padding-right: 20px;
		--padding-bottom: 0;
		--padding-left: 20px;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) + .e-con > .e-con-inner,
	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-box) > .e-con-inner {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) + .e-con .elementor-heading-title {
		font-size: 30px;
		line-height: 1.2;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-carousel) + .e-con .elementor-widget-text-editor {
		font-size: 16px;
		font-weight: 500;
		line-height: 1.6;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-box) {
		--padding-right: 20px;
		--padding-left: 20px;
	}

	body.home .entry-content > .elementor > .e-con:has(.elementor-widget-image-box) > .e-con-inner {
		gap: 16px;
	}

	body.home .elementor-widget-image-box .elementor-image-box-wrapper {
		display: grid;
		width: 100%;
		max-width: 100%;
		grid-template-columns: 96px minmax(0, 1fr);
		gap: 14px;
		align-items: center;
		text-align: left !important;
	}

	body.home .elementor-widget-image-box .elementor-image-box-img {
		width: 96px !important;
		aspect-ratio: 1;
		margin: 0 !important;
		overflow: hidden;
	}

	body.home .elementor-widget-image-box .elementor-image-box-content {
		min-width: 0;
		max-width: 100%;
	}

	body.home .elementor-widget-image-box .elementor-image-box-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	body.home .elementor-widget-image-box .elementor-image-box-title {
		margin: 0 0 6px;
		font-size: 20px;
		line-height: 1.25;
	}

	body.home .elementor-widget-image-box .elementor-image-box-description {
		display: -webkit-box;
		overflow: hidden;
		margin: 0;
		font-size: 14px;
		line-height: 1.5;
		white-space: normal;
		overflow-wrap: anywhere;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
	}

	#header [data-device="mobile"] .ct-header-trigger {
		display: flex !important;
		--theme-icon-color: #1f2d35 !important;
		color: #1f2d35 !important;
		opacity: 1;
		visibility: visible;
	}

	#header [data-device="mobile"] .ct-header-trigger svg {
		fill: currentColor !important;
	}

	.granite-mobile-whatsapp {
		display: flex;
		position: fixed;
		right: 16px;
		bottom: 18px;
		bottom: calc(18px + env(safe-area-inset-bottom, 0px));
		z-index: 9999;
		width: 54px;
		height: 54px;
		align-items: center;
		justify-content: center;
		color: #fff;
		background: #25d366;
		border: 2px solid #fff;
		border-radius: 50%;
		box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24);
	}

	.granite-mobile-whatsapp svg {
		width: 28px;
		height: 28px;
		fill: currentColor;
	}

	.granite-mobile-whatsapp:focus-visible {
		outline: 3px solid #153f63;
		outline-offset: 3px;
	}
}
