:root {
	--jh-section-padding-y: 6.25rem;
	--jh-section-padding-y-md: 3.75rem;
	--jh-section-padding-x: 5rem;
	--jh-gutter-x: 1.5rem;
	--bar-height: 60px;
}

body {
	@media screen and (max-width: 1440px) {
		--jh-section-padding-x: 3rem;
	}
	@media screen and (max-width: 1100px) {
		--jh-section-padding-y: 4rem;
		--jh-section-padding-y-md: 2.5rem;
		--jh-section-padding-x: 2.5rem;
	}
	@media screen and (max-width: 768px) {
		--jh-section-padding-y: 2.5rem;
		--jh-section-padding-y-md: 2rem;
		--jh-section-padding-x: 1rem;
		--awb-typography5-font-size: 1.0625rem;
		/* --awb-typography7-font-size: 0.9375rem; */
		--button_font_size: 1.0625rem;
		--body_typography-font-size: 1.0625rem;
	}
	@media screen and (max-width: 370px) {
		--button_font_size: 0.9375rem;
		--button_padding-right: 10px;
		--button_padding-left: 10px;
	}

	/* h1,
	h2,
	h3,
	h4,
	h5 {
		a {
			color: inherit !important;
		}
	} */
}

h1 {
	#wrapper .fusion-title.fusion-title-text:has(> &),
	#wrapper #main & {
		--awb-margin-bottom: 1.5rem;
		--awb-margin-top: 0;
		--awb-margin-bottom-medium: 1.5rem;
		--awb-margin-top-medium: 0;
		--awb-margin-bottom-small: 1.5rem;
		--awb-margin-top-small: 0;
		margin-bottom: 1.5rem;
		margin-top: 0;
		@media screen and (max-width: 768px) {
			font-size: 2.25rem;
		}
	}
}

h2 {
	#wrapper .fusion-title.fusion-title-text:has(> &),
	#wrapper #main & {
		--awb-margin-bottom: 1.5rem;
		--awb-margin-top: 0;
		--awb-margin-bottom-medium: 1.5rem;
		--awb-margin-top-medium: 0;
		--awb-margin-bottom-small: 1.5rem;
		--awb-margin-top-small: 0;
		margin-bottom: 1.5rem;
		margin-top: 0;
		@media screen and (max-width: 768px) {
			font-size: 2rem;
		}
	}
}

h3 {
	#wrapper .fusion-title.fusion-title-text:has(> &),
	#wrapper #main & {
		--awb-margin-bottom: 1.25rem;
		--awb-margin-top: 0;
		--awb-margin-bottom-medium: 1.25rem;
		--awb-margin-top-medium: 0;
		--awb-margin-bottom-small: 1.25rem;
		--awb-margin-top-small: 0;
		margin-bottom: 1.25rem;
		margin-top: 0;
		@media screen and (max-width: 768px) {
			font-size: 1.5rem;
		}
	}
}

h4 {
	#wrapper .fusion-title.fusion-title-text:has(> &),
	#wrapper #main & {
		--awb-margin-bottom: 1.375rem;
		--awb-margin-top: 0;
		--awb-margin-bottom-medium: 1.375rem;
		--awb-margin-top-medium: 0;
		--awb-margin-bottom-small: 1.375rem;
		--awb-margin-top-small: 0;
		margin-bottom: 1.375rem;
		margin-top: 0;
		@media screen and (max-width: 768px) {
			font-size: 1.25rem;
		}
	}
}
html:has(#wpadminbar ~ #boxed-wrapper .jh-announcement-bar:not(.hide)) {
	margin-top: calc(32px + var(--bar-height)) !important;
	&:has(.fusion-tb-header .fusion-container-stuck) {
		margin-top: 32px !important;
	}
}
html:has(.jh-announcement-bar:not(.hide)) {
	margin-top: var(--bar-height) !important;
	&:has(.fusion-tb-header .fusion-container-stuck) {
		margin-top: 0 !important;
	}
}
#wpadminbar ~ #boxed-wrapper:has(.jh-announcement-bar:not(.hide)) .jh-announcement-bar {
	top: 32px !important;
}
/* Header */
.fusion-tb-header {
	.nonhundred-percent-fullwidth.fusion-fullwidth.fullwidth-box {
		@media screen and (max-width: 1250px) {
			padding-left: 0;
			padding-right: 0;
		}
		& > .fusion-builder-row {
			padding-left: var(--jh-section-padding-x);
			padding-right: var(--jh-section-padding-x);

			@media screen and (max-width: 1250px) {
				padding-left: 2rem;
				padding-right: 2rem;
			}
		}
	}
	.awb-menu__open-nav-submenu-hover {
		&:before {
			color: var(--awb-color7);
		}
	}

	.fusion-image-element {
		transition: width 0.2s ease;
	}

	.fusion-sticky-container.fusion-container-stuck .fusion-image-element {
		width: 100px;
	}

	.jh-announcement-bar {
		position: fixed;
		width: 100%;
		top: 0;
		left: 0;
		width: 100%;
		height: var(--bar-height);
		z-index: 200000;
		padding: 12px 0;
		transition: opacity 0.2s ease;
		align-items: center !important;
	}
	.fusion-container-stuck ~ .jh-announcement-bar:not(.hide) {
		z-index: -10000;
		opacity: 0;
		transition: opacity 0.2s ease;
	}

	#menu-main {
		@media screen and (min-width: 1100.995px) {
			justify-content: flex-end !important;
		}
	}
}

/* .fusion-builder-live .fusion-tb-header .jh-announcement-bar.hide {
	display: flex !important;
	opacity: 0.5 !important;
	position: static !important;
} */

/* --link_color: var(--awb-custom_color_2) !important;
	--link_hover_color: var(--awb-custom_color_3); */

/* Main */
#wrapper {
	.fusion-title {
		a {
			color: inherit !important;
		}
	}
}
#wrapper main#main .nonhundred-percent-fullwidth.fusion-fullwidth.fullwidth-box,
#wrapper .fusion-page-title-bar .nonhundred-percent-fullwidth.fusion-fullwidth.fullwidth-box {
	@media screen and (max-width: 768px) {
		--awb-custom_typography_1-font-size: 1.25rem;
	}

	@media screen and (max-width: 1100px) {
		padding-left: 0;
		padding-right: 0;
	}

	& > .fusion-builder-row,
	& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
		padding: var(--jh-section-padding-y) var(--jh-section-padding-x);
		padding-left: var(--jh-section-padding-x);
		padding-right: var(--jh-section-padding-x);

		.fusion-layout-column {
			/* --awb-spacing-left-large: 1rem !important;
			--awb-spacing-right-large: 1rem !important; */
			--awb-spacing-left-large: 0.75rem !important;
			--awb-spacing-right-large: 0.75rem !important;
		}
	}

	&.no-padding-top {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			padding-top: 0;
		}
	}
	&.no-padding-bottom {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			padding-bottom: 0;
		}
	}
	&.no-padding-y {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			padding-top: 0;
			padding-bottom: 0;
		}
	}
	&.custom-padding {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			padding-top: 0;
			padding-bottom: 0;
			padding-left: 0;
			padding-right: 0;
		}
	}

	&.boxed-section {
		& > .fusion-builder-row > .fusion-layout-column,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row > .fusion-layout-column {
			padding: var(--jh-section-padding-y-md) var(--jh-section-padding-x);
			background-color: var(--awb-color1);
		}
	}

	&.narrow-section {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			max-width: 1140px !important;
		}
	}

	&.post-width {
		max-width: 924px;
		margin: 0 auto !important;
	}

	&.hero {
		/* --awb-background-image */
		position: relative;
		--awb-background-size: auto 100% !important;
		/* background-position: center right; */
		background-image: none;
		@media screen and (max-width: 768px) {
			background-image: none !important;
			background-color: #ffffff;
			&:before {
				display: none;
			}
			&:after {
				display: none;
			}
		}
		&:before {
			content: "";
			position: absolute;
			top: 0;
			right: 0;
			width: 55%;
			height: 100%;
			background-image: var(--awb-background-image);
			background-size: cover;
			background-position: center;
		}
		&:after {
			content: "";
			position: absolute;
			inset: 0;
			left: 40%;
			/* width: 56%; */
			width: 35%;
			height: 100%;
			/* background-color: salmon; */
			background: linear-gradient(90deg, var(--awb-background-color) 30%, rgba(255, 255, 255, 0) 100%);
		}

		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			&:has(.fusion-image-element) {
				@media screen and (max-width: 768px) {
					padding-top: 0 !important;
					padding-bottom: 0 !important;
					padding-left: 0 !important;
					padding-right: 0 !important;
					height: 100%;
				}
			}
		}
		& > .fusion-builder-row > .fusion-layout-column,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row > .fusion-layout-column {
			max-width: 762px;
			padding: 2.5rem 2rem;
			position: relative;
			@media screen and (max-width: 768px) {
				padding: 1.5rem 1rem;
				margin-bottom: 0 !important;
				max-width: 100%;
				background-color: #ffffff;
			}
			&:before {
				content: "";
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				background-color: var(--awb-color1);
				opacity: 0.88;
				z-index: -1;
			}
		}
		.fusion-layout-column:has(.fusion-image-element) {
			padding: 0;
			margin-bottom: 0 !important;
			@media screen and (max-width: 768px) {
				padding: 0;
			}
			&:before {
				display: none;
			}
			.fusion-column-wrapper {
				margin-left: 0 !important;
				margin-right: 0 !important;
			}
		}

		.fusion-title:not(:has(+ .fusion-text)) {
			margin-bottom: 0 !important;
		}
	}

	&.home-hero {
		position: relative;
		@media screen and (max-width: 768px) {
			background-image: none !important;
		}
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			&:has(.fusion-image-element) {
				@media screen and (max-width: 768px) {
					padding-top: 0 !important;
					padding-bottom: 0 !important;
					padding-left: 0 !important;
					padding-right: 0 !important;
				}
			}
		}
		& > .fusion-builder-row > .fusion-layout-column,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row > .fusion-layout-column {
			max-width: 680px;
			padding: 2.5rem 2rem;
			position: relative;
			@media screen and (max-width: 768px) {
				padding: 1.5rem 1rem;
				max-width: 100%;
			}
			&:before {
				content: "";
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				background-color: var(--awb-color1);
				opacity: 0.88;
				z-index: -1;
			}
		}
		.fusion-layout-column:has(.fusion-image-element) {
			padding: 0;
			margin-bottom: 0 !important;
			@media screen and (max-width: 768px) {
				padding: 0;
			}
			&:before {
				display: none;
			}
			.fusion-column-wrapper {
				margin-left: 0 !important;
				margin-right: 0 !important;
			}
		}
	}

	&.plain-hero {
		& > .fusion-builder-row,
		& > .fusion-builder-container-content > .fusion_builder_row > .fusion-builder-row {
			padding-top: 2.5rem;
			padding-bottom: 2.5rem;
		}
	}

	&.supports-section > div {
		@media screen and (max-width: 768px) {
			flex-direction: column !important;
		}
	}

	.supporters-grid {
		/* background-color: red; */
		& > .fusion-column-wrapper {
			width: 500px !important;
			max-width: 100% !important;
			margin: 0 auto !important;
			& > .fusion-builder-row {
				display: grid;
				grid-template-columns: repeat(3, 1fr);
				margin: 0 auto !important;
				align-content: center;
				justify-items: center;
				@media screen and (max-width: 500px) {
					display: flex;
					flex-wrap: wrap;
					justify-content: center;
					& > * {
						flex-basis: 48%;
					}
					/* grid-template-columns: repeat(2, 1fr); */
				}
				& > .fusion-layout-column {
					width: 100% !important;
					width: 100% !important;
					max-width: 100% !important;
				}
			}
		}
	}

	&.jh-single-testimonial {
		.jh-single-testimonial__text,
		.fusion-testimonials {
			display: flex;
			position: relative;
			column-gap: 50px;
			align-items: flex-start;
			@media screen and (max-width: 768px) {
				column-gap: 16px;
			}
			@media screen and (max-width: 400px) {
				column-gap: 8px;
			}
			&:before,
			&:after {
				display: inline-block;
				font-size: 150px;
				font-family: "Playfair Display";
				line-height: 0.4;
				color: var(--awb-textcolor);
				margin-top: 20px;

				@media screen and (max-width: 768px) {
					font-size: 80px;
					/* margin-top: 10px; */
				}
				@media screen and (max-width: 400px) {
					font-size: 50px;
				}
			}
			&:before {
				content: "“";
			}
			&:after {
				content: "”";
			}
		}
	}

	.fusion-form-element-required {
		text-decoration: none !important;
	}

	.fusion-form-consent-field {
		display: flex;
		align-items: center;
		column-gap: 8px;
		.fusion-form-label-wrapper {
			label {
				margin-bottom: 0 !important;
				cursor: pointer;
			}
		}
		.fusion-form-checkbox {
			order: -1;
			margin-right: 0;
			input {
				-webkit-appearance: none;
				-moz-appearance: none;
				height: 18px;
				width: 18px;
				box-sizing: border-box;
				box-shadow: none;
				background-image: none;
				vertical-align: middle;
				display: inline-flex;
				align-items: center;
				justify-content: center;

				position: static;
				border: 1px solid;
				border-color: var(--awb-color8) !important;
				opacity: 1 !important;
				padding: 0;
				background-color: #ffffff;
				cursor: pointer;
				&:checked {
					background-color: var(--awb-color8);
					border-color: var(--awb-color8);
					&:before {
						content: "\f00c";
						font: var(--fa-font-solid);
						font-weight: 600;
						font-size: 14px;
						display: inline-block;
						text-rendering: auto;
						-webkit-font-smoothing: antialiased;
						color: #fff;
					}
				}
			}
			label {
				display: none !important;
				&:before {
					border-color: var(--awb-color8) !important;
				}
			}
		}
	}

	.jh-transformation-grid.fusion-gallery-container {
		display: grid !important;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: max-content;
		/* max-width: 1000px !important; */
		@media screen and (max-width: 768px) {
			grid-template-columns: repeat(2, 1fr);
		}
		& > * {
			position: static !important;
		}
		& > *:not(.fusion-grid-column):not(.awb-gallery-buttons):not(.fusion-loading-container) {
			display: none !important;
		}
		.fusion-grid-column {
			width: 100% !important;
			max-width: 100% !important;
			.fusion-gallery-image {
				aspect-ratio: 90/100;
			}
		}

		img {
			height: 100%;
			object-fit: cover;
			object-position: center bottom;
		}
	}

	.jh-transformation-slider.fusion-slider-sc {
		.slides,
		.slides li,
		.slides li > span,
		.slides li > span img {
			height: 100%;
		}
		.slides img {
			object-fit: contain;
		}

		.flex-control-nav.flex-control-paging {
			transform: translateY(calc(100% + 1.25rem));
		}
	}

	.fusion-text:has(.fb-icon-element.circle-yes),
	.fb-icon-element.circle-yes {
		--awb-circlebordercolor: var(--awb-color8);
		--awb-circlecolor: var(--awb-color8) !important;
		--awb-iconcolor: var(--awb-color1);

		p {
			&:hover,
			&:focus {
				i {
					border-color: var(--awb-custom_color_1);
					background-color: var(--awb-custom_color_1) !important;
					color: var(--awb-color1);
				}
			}
		}
	}

	.link-btn.fusion-button {
		padding: 0;
		background-color: transparent;
		border: none;
		text-decoration: underline;
		text-underline-offset: 0.15em;
		color: var(--button_gradient_top_color);
		span {
			color: var(--button_gradient_top_color);
		}
		&:hover,
		&:focus {
			color: var(--awb-color8);
			span {
				color: var(--awb-color8);
			}
		}
	}

	.fusion-layout-column {
		@media screen and (max-width: 768px) {
			--awb-transform: 0 !important;
			--awb-transform-hover: 0 !important;
			transform: none !important;
		}
		&:hover,
		&:focus {
			@media screen and (max-width: 768px) {
				transform: none !important;
			}
		}
	}

	.fusion-text ul {
		list-style: none;
		padding-left: 0;
		margin-top: 0;

		li {
			padding-bottom: 1.5rem;
			position: relative;
			padding-left: 1.5em;

			&:last-of-type {
				padding-bottom: 0;
			}

			&:before {
				content: "\f058";
				font: var(--fa-font-solid);
				font-weight: 600;
				font-size: 90%;
				display: inline-block;
				text-rendering: auto;
				-webkit-font-smoothing: antialiased;
				position: absolute;
				top: 8px;
				left: 0;
				color: var(--awb-color8);
			}
		}
	}

	.arrow-list.fusion-text ul {
		li:before {
			content: "\f0a9";
		}
	}

	.fusion-button .fusion-button-text {
		text-align: center;
	}

	.fusion-image-element:has(> .image-full) {
		height: 100%;
	}

	.image-full {
		width: 100%;
		height: 100%;

		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}

	div[data-elfsight-app-lazy] {
		& > div {
			max-width: var(--site_width) !important;
		}
	}

	.jh-service-item {
		margin-bottom: 1.5rem !important;
		.fusion-column-wrapper {
			background-color: var(--awb-color1);
			padding-bottom: 2.5rem;
			box-shadow: 0px 3px 6px #00000029;
			& > *:not(.fusion-image-element) {
				padding-left: 1.25rem;
				padding-right: 1.25rem;
			}
		}
		.fusion-image-element {
			margin-bottom: 1.875rem;
			.fusion-imageframe {
				width: 100%;
				aspect-ratio: 3/2;

				img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
		}
	}

	.fusion-builder-row:has(> .jh-card),
	.fusion-builder-row:has(> .jh-service-item) {
		align-items: stretch;
	}

	.jh-card {
		.fusion-column-wrapper {
			background-color: var(--awb-color1);
			padding-bottom: 3.125rem;
			box-shadow: 0px 3px 6px #00000029;
			height: 100%;
			& > *:not(.fusion-image-element) {
				padding-left: 1.25rem;
				padding-right: 1.25rem;
			}
		}
		.fusion-image-element {
			margin-bottom: 1.875rem;
			.fusion-imageframe {
				width: 100%;
				aspect-ratio: 400 /300;

				img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
		}
	}

	/* FAQ */
	.fusion-faq-post.faqs {
		.panel-title {
			& > a {
				flex-direction: row-reverse;
				justify-content: space-between;
				padding-top: 1.5rem !important;
				padding-bottom: 1.5rem !important;
				padding-left: 0 !important;
				padding-right: 0 !important;

				@media screen and (max-width: 768px) {
					padding-top: 1rem !important;
					padding-bottom: 1rem !important;
				}
			}

			.fusion-toggle-heading {
				margin-left: 0 !important;
			}
			.fusion-toggle-icon-wrapper .fa-fusion-box {
				font-size: 2rem !important;
				background-color: transparent !important;
				border: none !important;
				&:before {
					font-size: inherit !important;
					width: unset !important;
				}
				&.awb-icon-plus:before {
					content: "+";
					font-family: "Playfair Display" !important;
					font-weight: 400 !important;
				}
				&.awb-icon-minus:before {
					content: "-";
					font-family: "Playfair Display" !important;
					font-weight: 400 !important;
				}
			}
		}
		.panel-heading h3 {
			margin-bottom: 0 !important;
		}
		&:first-child .panel-title > a {
			padding-top: 0 !important;
			@media screen and (max-width: 768px) {
				padding-top: 0 !important;
			}
		}
	}
}

/* Footer */
.fusion-tb-footer.fusion-footer {
	.fusion-footer-widget-area {
		.nonhundred-percent-fullwidth.fusion-fullwidth.fullwidth-box {
			@media screen and (max-width: 1100px) {
				padding-left: 0;
				padding-right: 0;
			}
			& > .fusion-builder-row {
				padding-left: var(--jh-section-padding-x);
				padding-right: var(--jh-section-padding-x);
			}
		}
	}

	.jh-footer__info-text {
		max-width: 460px;
		margin-left: 0;
		@media screen and (max-width: 768px) {
			margin-bottom: 1rem;
		}

		+ div {
			.fusion-layout-column {
				@media screen and (max-width: 768px) {
					margin-bottom: 0;
				}
			}
		}
	}

	.jh-footer {
		@media screen and (max-width: 991px) {
		}

		.fusion-image-element img {
			max-width: 150px;
			@media screen and (max-width: 768px) {
				width: 60%;
			}
		}
	}

	.jh-copyright {
		@media screen and (max-width: 768px) {
			.fusion-column-wrapper {
				justify-content: center;
			}
		}
	}
}

.fusion-builder-live .hide {
	display: flex !important;
	opacity: 0.5 !important;
	position: static !important;
}
.hide {
	display: none !important;
}

.jh-read-more {
	position: relative;
	.fusin-text {
		transition: all 0.2s ease;
	}
	.toggle-read-more {
		overflow: hidden;
		display: -webkit-box;
		line-clamp: 14;
		-webkit-line-clamp: 14;
		-webkit-box-orient: vertical;
	}

	.link-btn {
		font-size: var(--awb-font-size);
		line-height: var(--awb-line-height);
		font-family: var(--awb-text-font-family);
		background-color: transparent;
		border: none;
		padding: 0;
		text-decoration: underline;
		color: var(--awb-custom_color_2);
		display: inline-block;
		text-align: left;
		cursor: pointer;
		/* position: absolute;
		bottom: 0;
		right: 0;
		z-index: 1; */
	}
}

.formkit-form {
	margin: 0 auto;
	margin-bottom: 0 !important;
	& > div {
		padding-top: 1rem !important;
	}

	.formkit-submit {
		align-self: center;
		span {
			text-transform: uppercase;
			letter-spacing: 1.8px;
		}
	}

	.formkit-powered-by-convertkit-container {
		display: none !important;
	}

	.formkit-fields {
		flex-direction: column;
	}
}
