html {
	scroll-behavior: smooth;
}

body {
	overflow-x: hidden;
}

img,
video,
iframe {
	max-width: 100%;
	height: auto;
}

.wp-block-image img,
.woocommerce-product-gallery img {
	height: auto;
}

.entry-content,
.site-main {
	word-wrap: break-word;
}

.woocommerce ul.products {
	gap: clamp(14px, 2vw, 28px);
}

@media (max-width: 1024px) {
	.ct-container,
	.site-main,
	.entry-content {
		max-width: 100%;
	}

	.woocommerce ul.products[class*="columns-"] {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	html,
	body {
		width: 100%;
		max-width: 100%;
		overflow-x: hidden;
	}

	body {
		font-size: 16px;
	}

	.ct-container,
	.site-main,
	.entry-content,
	.wp-site-blocks {
		max-width: 100% !important;
		overflow-x: hidden;
	}

	.wp-block-cover,
	.ct-hero-section,
	.hero-section,
	[class*="hero"] {
		box-sizing: border-box;
		min-height: calc(100svh - 72px) !important;
		padding: 86px 18px 110px !important;
		overflow: hidden;
		background-position: center !important;
	}

	.wp-block-cover__image-background,
	.wp-block-cover video {
		object-position: center !important;
	}

	.wp-block-cover__inner-container,
	.ct-hero-section .ct-container,
	.hero-section .ct-container,
	[class*="hero"] .ct-container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	.wp-block-cover h1,
	.ct-hero-section h1,
	.hero-section h1,
	[class*="hero"] h1 {
		max-width: 92vw !important;
		margin-left: auto !important;
		margin-right: auto !important;
		font-size: clamp(34px, 10vw, 44px) !important;
		line-height: 1.16 !important;
		letter-spacing: 0 !important;
		text-wrap: balance;
	}

	.wp-block-cover p,
	.ct-hero-section p,
	.hero-section p,
	[class*="hero"] p {
		max-width: 88vw !important;
		margin-left: auto !important;
		margin-right: auto !important;
		font-size: clamp(14px, 4vw, 16px) !important;
		line-height: 1.65 !important;
	}

	.wp-block-button__link,
	.button,
	button,
	input[type="submit"] {
		min-height: 42px;
	}

	.wp-block-buttons,
	.wp-block-button {
		justify-content: center !important;
	}

	.wp-block-columns {
		gap: 18px;
	}

	.woocommerce ul.products[class*="columns-"] {
		grid-template-columns: 1fr !important;
	}

	.site-main {
		overflow: hidden;
	}
}

@media (min-width: 641px) and (max-width: 1180px) {
	.wp-block-columns {
		gap: 24px;
	}

	.woocommerce div.product {
		gap: 28px;
	}
}
