/* start >>> not used anymore. retaining the code for backward compatibility */
.has-default-color { color: var(--color-default) !important; }
.has-darker-color { color: var(--color-darker) !important; }
.has-primary-color { color: var(--color-primary) !important; }
.has-highlight-color { color: var(--color-highlight) !important; }

.has-default-background-color { background: var(--color-default) !important; }
.has-darker-background-color { background: var(--color-darker) !important; }
.has-primary-background-color { background: var(--color-primary) !important; }
.has-highlight-background-color { background: var(--color-highlight) !important; }
/* end <<< not used anymore. retaining the code for backward compatibility */



.has-kd-default-color { color: var(--color-default) !important; }
.has-kd-darker-color { color: var(--color-darker) !important; }
.has-kd-primary-color { color: var(--color-primary) !important; }
.has-kd-highlight-color { color: var(--color-highlight) !important; }

.has-kd-default-background-color { background: var(--color-default) !important; }
.has-kd-darker-background-color { background: var(--color-darker) !important; }
.has-kd-primary-background-color { background: var(--color-primary) !important; }
.has-kd-highlight-background-color { background: var(--color-highlight) !important; }

:where(.wp-block-columns.is-layout-flex) {
	grid-gap: 3.8em;
}

.kd-font--normal {
	font-weight: 400 !important;
}

.acf-block-preview * {
	box-sizing: border-box;
}
.acf-block-preview {
	font-family: 'Inter', sans-serif;
	/*font-size: 0.938vw;*/
	font-size: 18px;
	letter-spacing: -.02em;
	color: var(--color-default);
}
.acf-block-preview a, .acf-block-preview  a * {
	transition: .3s ease;
}
.wp-block-buttons.kd-button--wide-gap {
	gap: clamp(10px, 1.8vw + .1px, 35px);
}
.acf-block-preview .kd-button {
	text-decoration: none;
}
.acf-block-preview .kd-button:hover {
	color: #fff;
}
#kd-main .kd-anchor a {
	font-weight: 700;
	display: inline-flex;
	align-items: center;
}
#kd-main .kd-anchor a:not(.kd-button) {
	color: inherit !important;
	text-decoration: none;
}
#kd-main .kd-anchor a:not(.kd-button):hover {
	color: var(--color-highlight) !important;
}
#kd-main .kd-anchor a:after {
	content: "\f105";
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
	margin-left: 15px;
	transition: .3s ease;
}
#kd-main .kd-anchor a:hover:after {
	transform: translateX(10px);
}

#kd-main a.kd-link {
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	color: #23202E;
	text-decoration: none;
}
#kd-main a.kd-link:hover {
	color: var(--color-highlight);
}
#kd-main a.kd-link:after {
	content: "\f105";
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
	margin-left: 15px;
	transition: .3s ease;
}
#kd-main a.kd-link:hover:after {
	transform: translateX(10px);
}

body.kd-body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.kd-container {
	width: 100%;
	max-width: 1542px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}
body p.kd-container {
	max-width: 1542px;
}
.kd-container--small {
	max-width: 1160px;
}
.wp-block-button .wp-block-button__link {
	border-radius: 7.82209px;
	
	font-size: 0.67em;
	text-transform: uppercase;
	border-radius: 3px;
	font-weight: 700;
	height: 40px;
	text-align: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
#kd-main .wp-block-button .wp-block-button__link:hover {
	background: var(--color-highlight) !important;
}
#kd-main .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--color-primary) !important;
	color: #fff !important;
}
.wp-block-button.is-style-outline {}
.kd-button {
	border-radius: 7.82209px;
	
	font-size: 0.67em;
	border: none;
	cursor: pointer;
	color: #fff;
	background: var(--color-primary);
	text-transform: uppercase;
	border-radius: 3px;
	font-weight: 700;
	width: 164px;
	height: 40px;
	text-align: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: .3s ease;
}
.wp-block-button.wp-block-button--large a {
	border-width: 3px !important;
	font-size: 18px !important;
	padding: 3.276em 5.33em !important;
}
.kd-button:hover {
	background: var(--color-highlight);
}
a.kd-button, button.kd-button {
	text-decoration: none;
}
.kd-button--highlight {
	background: var(--color-highlight);
}
.kd-button--highlight:hover {
	background: var(--color-primary);
}
.kd-button--outline {
	background: transparent;
	border: solid 3px #000;
}
.kd-button--outline-green,
.is-style-outline-green .wp-block-button__link {
	background: transparent !important;
	background-color: transparent !important;
	border: 2px solid #00853e !important;
	color: #00853e !important;
}
.kd-button--outline-green:hover,
#kd-main .wp-block-button.is-style-outline-green .wp-block-button__link:hover {
	background: #00853e !important;
	background-color: #00853e !important;
	color: #fff !important;
}
.kd-button--crosshair {
	background: transparent;
	position: relative;
}
.kd-button--crosshair span {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
	transition: .3s ease opacity, .15s ease transform;
}
.kd-button--crosshair:hover span {
	opacity: 0;
	transform: scaleX(1.1);
}
.kd-button--crosshair:hover {
	background: var(--color-highlight);
	opacity: 1;
	transition-delay: .15s;
}
.kd-button--crosshair__top:before,
.kd-button--crosshair__top:after,
.kd-button--crosshair__bottom:before,
.kd-button--crosshair__bottom:after {
	content:  '';
	position: absolute;
	width: 12.51px;
	height: 12.51px;
	background: transparent url('../svg/ico-crosshair.svg') no-repeat 0 0 / 100% 100% scroll;
}
.kd-button--crosshair__top:before {
	top: 0;
	left: 0;
}
.kd-button--crosshair__top:after {
	top: 0;
	right: 0;
	transform: rotate(90deg);
}
.kd-button--crosshair__bottom:before {
	bottom: 0;
	left: 0;
	transform: rotate(270deg);
}
.kd-button--crosshair__bottom:after {
	bottom: 0;
	right: 0;
	transform: rotate(180deg);
}
.kd-button--blog-archive-link {
	width: 100%;
	max-width: 297px;
	display: flex;
	margin-left: auto;
	margin-right: auto;
	letter-spacing: .04em;
}
#kd-main {
	flex: 1 1 auto;
}
#kd-main > :not([id^="kd-"]):not(.wp-block-group) {
	width: 100%;
	max-width: 1542px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
}
/*#kd-main > :first-child:not([id^="kd-"]) {*/
#kd-main > :first-child:not(.kd-hero):not(.kd-page-banner) {
	margin-top: 180px;
}
.kd-main h1 {
	font-size: 3.05em;
	line-height: 1.3;
	font-weight: 400;
	color: inherit;
}
.kd-main h2 {
	font-size: 1.94em;
	line-height: 1.3;
	font-weight: 500;
	color: inherit;
}
.kd-main h3 {
	font-size: 1.38em;
	line-height: 1.3;
	font-weight: 400;
	color: inherit;
}
@media screen and (max-width: 1160px) {
	.kd-main h2 br { display: none; }
}
.wp-block-column > p,
.wp-block-column > ul,
#kd-main > p,
#kd-main > ul,
#kd-main > ol,
.wp-block-group > p,
.wp-block-group > ul,
.wp-block-group > ol {
	line-height: 1.94;
	margin-bottom: 30px;
}
#kd-main > ul,
.wp-block-group > ul,
.wp-block-column > ul  {
	padding-left: 45px !important;
	list-style: disc;
}
#kd-main > ol,
.wp-block-group > ol {
	list-style: auto;
	padding-left: 45px !important;
}
#kd-main > ul ul,
#kd-main > ul ol,
#kd-main > ol ul,
#kd-main > ol ol
.wp-block-group > ul ul,
.wp-block-group > ul ol,
.wp-block-group > ol ul,
.wp-block-group > ol ol {
	padding-left: 20px;
}
#kd-main a:not(.kd-button):not(.kd-link) {
/*	color: var(--color-primary);*/
	color: inherit;
}
#kd-main a:not(.kd-button):not(.kd-link):hover {
	color: var(--color-primary);
}
.mini-title {
	font-weight: 700;
	font-size: 1.2em;	
	line-height: 1.59;
	color: inherit;
	margin: 0;
}
.footnote {
	font-weight: 700;
	font-size: .78em;
	color: inherit;
	margin: 0;
}
.kd-main small {
	font-style: italic;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.67em;
	letter-spacing: -0.02em;
	display: block;
}






.kd-carouselbrand .slick-track {
	display: flex;
	align-items: center;
/*	grid-gap: 80px;*/
}
.kd-carouselbrand__item img {
	margin: 0 auto;
	filter: grayscale(1);
}
.kd-carouselbrand .slick-slide {
	flex: 0 0 auto;
	padding: 0 20px;
}




.kd-testimonials {
	padding-left: 33px;
	padding-right: 33px;
	margin-bottom: 100px;
}
.kd-testimonials .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
}
.kd-testimonials .slick-arrow.slick-prev { left: 0; }
.kd-testimonials .slick-arrow.slick-next { right: 0; }
.kd-testimonials ul.slick-dots {
	text-align: center;
	margin-top: 50px;
}
.kd-testimonials ul.slick-dots li {
	display: inline-block;
	margin-right: 7.5px;
}
.kd-testimonials ul.slick-dots li:last-child { margin-right:0; }
.kd-testimonials ul.slick-dots li button {
	overflow: hidden;
	background: none;
	border: 2px solid #C9C9C9;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	text-indent: -9999px;
	padding: 0;
	margin: 0;
	cursor: pointer;
}
.kd-testimonials ul.slick-dots li.slick-active button {
	background: #C9C9C9;
}
.kd-testimonials__item p {
	line-height: 1.5;
}
.kd-testimonials__item-text {
	text-align: center;
	margin-bottom: 90px;
}
.kd-testimonials__item-author {
	font-weight: 700;
	text-align: center;
}
.wp-block-group .schema-faq {
	width: 100%;
	max-width: 1542px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 96px !important;
}
.schema-faq-section {
	background: #FFFFFF;
	border: 1px solid #E5E5E5;
	padding: 0 55px;
	margin-bottom: 22px;
}
.schema-faq-question {
	font-weight: 700;
	font-size: 1em;
	line-height: 1.2em;
	color: var(--color-primary);
	display: block;
	padding: 32px 23px 25px 0;
	position: relative;
	cursor: pointer;
	transition: .3s ease;
}
.schema-faq-question:after {
	content: "\f107";
    font-weight: 900;
    font-family: "Font Awesome 6 Free";
    font-size: 20px;
    line-height: 10px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: .3s ease;
}
.schema-faq-question:hover {
	color: var(--color-highlight);
}
.schema-faq-answer {
	line-height: 1.94;
	color: #3C4858;
	padding-top: 25px;
	padding-bottom: 31px;
	display: none;
}
.block-editor-block-list__block > .schema-faq .schema-faq-section .schema-faq-answer,
.schema-faq-section.active .schema-faq-answer {
	display: block;
}
.schema-faq-section.active .schema-faq-question {
	border-bottom: solid 1px #E5E5E5;
}
.schema-faq-section.active .schema-faq-question:after {
	transform: translateY(-50%) rotate(-180deg);
}




.mapsvg-wrap {
	font-size: 16px;
	line-height: 1.5;	
}
.mapsvg-controller-view h5 {
    font-size: 1.3em;
    font-weight: 700;
    color: var(--color-primary);
}
.mapsvg-controller-view ul {
    padding-left: 2em;
    list-style: disc;
}
.mapsvg-sidebar-right .mapsvg-controller-view-content {
    background: var(--color-darker);
}
.mapsvg-sidebar-right .mapsvg-directory-item.selected,
.mapsvg-sidebar-right .mapsvg-directory-item:hover {
	background: var(--color-default);
}
.mapsvg-sidebar-right .mapsvg-directory-item {
	color: #ddd;
}




.kd-button--claim-js a:hover {
	color: var(--color-highlight) !important;
}


.nowrap {
	white-space: nowrap;
}
@media screen and (min-width: 767px) {
	.clm-2 {
		column-count: 2;
		column-gap: 30px;
	}
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
/*	padding-top: 57%;*/
	position: relative;
     padding-top: 23%; 
    height: 312px;
    max-width: 550px;
    margin: 0 auto;
}
.wp-block-embed-youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}



#gform_wrapper_8 .gfield_label {
	display: block;
	margin-bottom: 10px;
	font-weight: bold;
}
#gform_wrapper_8 input[type="submit"] {
	border-radius: 7.82209px;
    font-size: 0.67em;
    border: none;
    cursor: pointer;
    color: #fff;
    background: var(--color-primary);
    text-transform: uppercase;
    border-radius: 3px;
    font-weight: 700;
    width: 164px;
    height: 40px;
    text-align: center;
    align-items: center;
    justify-content: center;
    transition: .3s ease;
    margin-left: auto;
    margin-top: 30px;
    display: block;
}
#gform_wrapper_8 input[type="submit"]:hover {
    background: var(--color-highlight);
}
#gform_wrapper_8 .gform_submission_error {
	font-size: 0.78em;
	font-weight: 700;
	margin-bottom: 1.42857em;
	color: #ac6c6c;
}
#gform_wrapper_8 .gfield_validation_message {
	font-size: 0.56em;
    color: #ac6c6c;
    margin-top: 5px;
}
#gform_confirmation_message_8 {
	background: #ecfaec;
    color: #425b42;
    border: solid #607d60 3px;
    border-radius: 3px;
    margin-top: 30px;
    padding: 1em;
    text-align: center;
}
.gfield--type-honeypot {
	display: none !important;
}



body.kd-page-surfaces-2024 .kd-page-banner .kd-button {
	width: 320px;
}

#kd-gallery-sponsors {
    display: flex;
    gap: 70px;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
}
#kd-gallery-sponsors {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: clamp(30px, 5.93220339vw + .1px, 70px);
    padding-left: 20px;
    padding-right: 20px;
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
}
#kd-gallery-sponsors .wp-block-image {
	width: auto !important;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

#kd-contest-rules {
	border: 2px solid #00853E;
	max-width: 868px;
	padding: 60px 30px 40px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 33px;
}
#kd-contest-rules p {
	line-height: 1.38;
}
#kd-contest-rules + p small {
	display: block;
	max-width: 663px;
	margin: 0 auto;
}
@media screen and (max-width: 908px) {
	#kd-contest-rules {
		margin-left: 20px;
		margin-right: 20px;
	}
}


#kd-gallery-sponsors.kd-gallery-sponsors--absda {
	max-width: 1600px;
	gap: clamp(30px, 3vw + .1px, 70px);
}


.kd-form-stylized {
	line-height: 1.5;
	font-size: 16px;
}
.kd-form-stylized .gform_body {
	margin-bottom: 30px;
}
.kd-form-stylized .gform_fields {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 10px;
}
.kd-form-stylized .gform_fields > * {
	grid-column: span 2;
}
.kd-form-stylized h2 {
	font-size: 1.94em;
	line-height: 1.3;
	font-weight: 500;
	color: inherit;
	margin-bottom: 25px;
}
.kd-form-stylized form {
	display: block;
	margin-top: 25px;
}
.kd-form-stylized .gfield_label {
	font-weight: bold;
	font-size: 14px;
}
.kd-form-stylized input[type="text"],
.kd-form-stylized input[type="tel"],
.kd-form-stylized input[type="email"],
.kd-form-stylized textarea {
	font-size: 14px;
	width: 100%;
    height: 43px;
    border: solid 1px #aaa;
    border-radius: 3px;
    margin-top: 3px;
}
.kd-form-stylized textarea {
	height: 100px;
}
.kd-form-stylized input[type="submit"] {
	border-radius: 7.82209px;
	
	font-size: 0.67em;
	border: none;
	cursor: pointer;
	color: #fff;
	background: var(--color-primary);
	text-transform: uppercase;
	border-radius: 3px;
	font-weight: 700;
	width: 164px;
	height: 40px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: .3s ease;
	margin: 0 auto;
}
.kd-form-stylized input[type="submit"]:hover {
	background: var(--color-highlight);
}
.kd-form-stylized .gfield_required {
	color: #a04d4d;
}
.kd-form-stylized .gform_submission_error {
	font-size: 0.78em;
	font-weight: 700;
	margin-bottom: 1.42857em;
	color: #ac6c6c;
}
.kd-form-stylized .gfield_validation_message {
	font-size: 0.56em;
    color: #ac6c6c;
    margin-top: 5px;
}
.kd-form-stylized .gform_confirmation_message {
	background: #ecfaec;
    color: #425b42;
    border: solid #607d60 3px;
    border-radius: 3px;
    margin-top: 30px;
    padding: 1em;
    text-align: center;
}
.kd-form-stylized {
	max-width: 100%;
}
.kd-form-stylized__first-time-user-program--address {
	margin-bottom: -10px;
}
.kd-form-stylized__first-time-user-program--address .ginput_container {
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 10px;
}
.kd-form-stylized__first-time-user-program--address .ginput_container .ginput_full {
	grid-column: span 3;
}
.kd-form-stylized .gfield--width-half {
	grid-column: span 1;
}
body .pum-theme-4637 .pum-title, .pum-theme-enterprise-blue .pum-title {
	font-weight: 500;
	font-family: 'Inter', sans-serif;
	color: var(--color-primary);
}
body .pum-theme-4637 .pum-content, .pum-theme-enterprise-blue .pum-content {
	font-weight: 400;
	font-family: 'Inter', sans-serif;
}

.kd-no-padding,
.kd-no-padding .kd-container {
	padding: 0 !important;
}
.kd-align-full,
.kd-align-full .kd-container {
	max-width: 100% !important;
	width: 100% !important;
}
.kd-buttons--inline .wp-block-button__link {
    width: auto !important;
}