:root {
	interpolate-size: allow-keywords;
}
html {
	scroll-behavior: smooth;
}

body {
	scrollbar-gutter: stable both-edges;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

:where( h1, h2, h3, h4, h5, h6 ) {
	text-wrap: balance;
}

:where(p) {
	text-wrap: pretty;
}
:where(.entry-content a, .wp-block-query a) {
	color: inherit;
}
.no-underline a {
	text-decoration: none;
}
.fancy-underline :is(a, .wp-block-navigation-item .wp-block-navigation-submenu .wp-block-navigation-item__label):not(
	.wp-element-button,
	.wp-block-social-link-anchor,
	.custom-logo-link,
	.wp-block-read-more,
	.wp-block-navigation-item__content
) {
	background-repeat: no-repeat;
	background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
	transition: .3s ease;
	background-size: 0% 100%;
	text-decoration: none;

	&:hover {
		background-size: 100% 100%;
	}
}

.ken-burns-effect {
	overflow: hidden;

	> img.wp-block-cover__image-background,
	> .wp-block-image > img {
		animation: ken-burns 30s linear 0s infinite alternate;
	}
}
@keyframes ken-burns {
	0% {
		transform: scale(1.01);
	}
	50% {
		transform: scale(1.5);
	}
	100% {
		transform: scale(1.01);
	}
}

.wp-element-button {
	transition: color 0.3s, border-color 0.3s, background-color 0.3s;
}


.desktop-menu ul.wp-block-navigation {
	ul.wp-block-navigation-submenu {
		width: 270px !important;
		max-width: 100vw;
		padding: 42px 14px 42px 34px;
	}
}

#mobile-menu .wp-block-navigation .has-child {
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;

	.wp-block-navigation__submenu-container {
		position: static;
		width: 100% !important;
		border: 0px none;
	}

	a:has(~ [aria-expanded=true]) {
		color: var(--wp--preset--color--custom-orange) !important;
	}

	.wp-block-navigation-submenu__toggle {
		width: 44px;
		height: 44px;
		svg {
			width: 1.2em;
			height: 1.2em;
		}
	}
}
@media (width < 782px) {
	.mobile-font-size-14 {
		font-size: 14px;
	}
	footer.wp-block-template-part .mobile-font-size-14 {
		margin-block-start: 10px;
	}
}

.entry-content >
:is(
	.has-custom-light-green-background-color,
	.has-custom-soft-white-background-color
) +
:is(
	.has-custom-light-green-background-color,
	.has-custom-soft-white-background-color
) {
	border-block-start: 10px solid white;
}

.wp-block-read-more {
	transition: all 0.3s;
	&:hover {
		background-color: var(--wp--preset--color--custom-green);
		color: #fff !important;
	}
}

.wp-block-button:has(.wp-load-more__button) {
	width: 100%;

}
.wp-load-more__button {
	transition: all 0.3s;
	font-size: var(--wp--preset--font-size--medium);
	background-color: var(--wp--preset--color--custom-light-green);
	color: #000 !important;
	font-weight: 400 !important;
	border-radius: 10px;
	padding: 21px 24px;
	&:hover {
		background-color: var(--wp--preset--color--custom-green);
		color: #fff !important;
	}
}
.special-green-cards .wp-block-cover {
	overflow: hidden;
	a::before {
		content: "";
		position: absolute;
		top: -500px;
		bottom: -500px;
		left: -20px;
		right: -20px;
	}
	&::after {
		z-index: 1;
		content:"";
		position: absolute;
		top: 0; left: 0; bottom: 0; right: 0;
		background-color: var(--wp--preset--color--custom-dark-green, #325629) !important;
		opacity: 0;
		transition: opacity 0.3s linear;
	}
	span.wp-block-cover__background {
		z-index: 2;
		background-image: linear-gradient(180deg, rgb(50 86 41 / 0) 0%, var(--wp--preset--color--custom-dark-green, #325629) 100%);
		background-color: transparent !important;
		opacity: 1 !important;
	}
	.wp-block-cover__inner-container {
		z-index: 3;
		bottom: 0;
		transition: transform 0.3s, bottom 0.3s;
	}

	&:hover {
		&::after {
			opacity: 0.9;
		}
		.wp-block-cover__inner-container {
			transform: translateY(50%);
			bottom: 50%;
		}
	}
}
