/* Kingdom Impact Theme styles for ContainUR Pools */
html {
	scroll-behavior: smooth;
}

:root {
	--font-size-base: 16px;
	--font-size-sx: calc(calc(var(--font-size-xs) + var(--font-size-sm)) / 2);
	--font-size-ms: calc(calc(var(--font-size-md) + var(--font-size-sm)) / 2);
	--font-size-ml: calc(calc(var(--font-size-md) + var(--font-size-lg)) / 2);
	--font-size-lx: calc(calc(var(--font-size-xl) + var(--font-size-lg)) / 2);

	--spacing-sx: calc(calc(var(--spacing-sm) + var(--spacing-xs)) / 2);
	--spacing-ms: calc(calc(var(--spacing-sm) + var(--spacing-md)) / 2);
	--spacing-ml: calc(calc(var(--spacing-md) + var(--spacing-lg)) / 2);
	--spacing-lx: calc(calc(var(--spacing-lg) + var(--spacing-xl)) / 2);

}

.has-dark-transparent-header:not(.header-stuck) .site-header-wrap {
	--link-filter-hover: none !important;
}

/* WP Overrides */
:root :where(.wp-block-cover h1:not(.has-text-color)),
:root :where(.wp-block-cover h2:not(.has-text-color)),
:root :where(.wp-block-cover h3:not(.has-text-color)),
:root :where(.wp-block-cover h4:not(.has-text-color)),
:root :where(.wp-block-cover h5:not(.has-text-color)),
:root :where(.wp-block-cover h6:not(.has-text-color)) {
	color: var(--heading-color, var(--color-heading));
}

:root :where(.wp-block-cover p:not(.has-text-color)) {
	color: var(--body-color, var(--color-body));
}

/* Mai Sticky Header - some themes breakpoint at > 800px for stickiness */
.site-header {
	--site-header-position: sticky;
	--site-header-top: var(--body-top);
}

/* Disable Menu Hover Filter */
.menu-item-link {
	--menu-item-name-filter-hover: none;
}

/* Footer Credits */
.footer-credits {
	--link-color: var(--ki-black);
	--link-color-hover: var(--ki-blue);
	--link-text-decoration-offset: 1px;
}

.footer-credits p {
	color: var(--ki-black);
	font-size: var(--font-size-sm);
}

/* Mobile Column Reverse */
@media only screen and (min-width: 900px) {
	.mobile-only {
		display: none;
	}
}

@media only screen and (max-width: 781px) {
	.col-reverse {
		flex-direction: column-reverse;
	}
}

/* WP Default Blocks */
.wp-block-columns {
	--column-gap: var(--spacing-xl);
}

.wp-block-separator {
	--separator-block-margin-top: var(--spacing-lg);
	--separator-block-margin-bottom: var(--spacing-xl);
	--border: 2px solid var(--ki-gray);
	max-width: 75% !important;
	width: 75% !important;
}

/* Theme Base */
:root {
	--ki-navy: #264175;
	--ki-blue: #2669CD;
	--ki-orange: #F97706;
	--ki-gray: #F0F1F2;
	--ki-white: #FFFFFF;
	--ki-black: #2C2C2C;

	--heading-text-transform: uppercase;
}

/* Typography Notes 
 * Heading: Fjalla One
 * Body: Roboto 
 */
/* Starter preheading, heading, and subheading styling with variables */

.preheading {
	color: var(--preheading-color, inherit);
	font-size: var(--preheading-font-size, 1.25rem);
	font-family: var(--preheading-font-family, var(--body-font-family, inherit));
	font-weight: var(--preheading-font-weight, 400);
	font-style: var(--preheading-font-style, inherit);
	line-height: var(--preheading-line-height, 1.1);
	text-transform: var(--preheading-text-transform, uppercase);
	text-decoration: var(--preheading-text-decoration, none);
	letter-spacing: var(--preheading-letter-spacing, 1px);
}

.preheading-sm {
	text-transform: uppercase;
	letter-spacing: .1em;
	max-width: 450px;
}

.heading {
	color: var(--heading-color, inherit);
	font-size: var(--heading-font-size, 4rem);
	font-family: var(--heading-font-family, inherit);
	font-weight: var(--heading-font-weight, 600);
	font-style: var(--heading-font-style, inherit);
	line-height: var(--heading-line-height, 1.1);
	text-transform: var(--heading-text-transform, none);
	text-decoration: var(--heading-text-decoration, none);
	letter-spacing: var(--heading-letter-spacing, normal);
}

.subheading {
	color: var(--subheading-color, inherit);
	font-size: var(--subheading-font-size, 2rem);
	font-family: var(--subheading-font-family, var(--body-font-family, inherit));
	font-weight: var(--subheading-font-weight, 600);
	font-style: var(--subheading-font-style, inherit);
	line-height: var(--subheading-line-height, 1.1);
	text-transform: var(--subheading-text-transform, none);
	text-decoration: var(--subheading-text-decoration, none);
	letter-spacing: var(--subheading-letter-spacing, normal);
}

.is-style-subheading {
	font-style: normal;
	color: var(--body-color);
	margin-bottom: var(--spacing-xxs);
}

h3.is-style-subheading {
	font-size: var(--font-size-lg);
}


ul.checklist {
	list-style: none;
}

ul.checklist li::before {
	content: "✅";
	margin-left: -1.5em;
	margin-right: 0.35em;
}

/* Header */
.menu-toggle {
	--menu-toggle-color: var(--ki-navy);
}

.has-transparent-header:not(.header-stuck) {
	--site-header-background: rgba(255, 255, 255, .45);
}

@media only screen and (max-width: 899px) {
	.has-transparent-header:not(.header-stuck) {
		--site-header-background: rgba(255, 255, 255, .85);
	}
}

.has-transparent-header:not(.header-stuck) .site-header {
	backdrop-filter: blur(10px) saturate(115%);
	-webkit-backdrop-filter: blur(10px) saturate(115%);
}

.header-phone {
	font-weight: 900;
	font-family: var(--heading-font-family);
	font-size: var(--font-size-xl);
	--link-color: var(--ki-navy);
	--link-color-hover: var(--ki-orange);
	--link-text-decoration: none;
	--link-text-decoration-hover: none;
}

/*
.has-transparent-header:not(.header-stuck) .header-phone {
	--link-color: var(--ki-white);
	--link-color-hover: var(--ki-orange);
}
*/
.nav-header,
.mobile-menu {
	--menu-item-link-color: var(--ki-navy);
	--menu-item-link-color-hover: var(--ki-orange);
	--menu-font-family: var(--heading-font-family);
	--menu-font-size: var(--font-size-lg);
	--menu-text-transform: uppercase;
}

.has-dark-transparent-header:not(.header-stuck) .nav-header {
	--menu-item-link-color-hover: var(--ki-white);
}

.nav-header .sub-menu,
.mobile-menu .sub-menu {
	--menu-item-link-color: var(--ki-navy);
	--menu-item-link-color-hover: var(--ki-orange);
}

.header-buttons .button {
	--button-background: var(--ki-orange);
	--button-text-transform: uppercase;
	--button-font-size: var(--font-size-ml);
	--button-padding: .75em 1em;
	--button-font-family: var(--heading-font-family);
	--button-
}


/* Home Testimonials */
.home-testimonials .woa-testimonial-slider-container {
	padding-bottom: var(--spacing-ml);
}

.home-testimonials .woa-testimonial-slider-container button.design3 span {
	color: var(--ki-black) !important;
}

#woatestimonial_design3 .woatestimonial-card {
	max-height: 400px;
	padding-right: 0;
	padding-left: 0;
}

#woatestimonial_design3 .woatestimonial-card p {
	padding: 0;
}

/* WOA Functions */
.woa-phone-link {
	--link-text-decoration: none;
	--link-text-decoration-hover: none;
}

/* Blog Archive */
.blog.is-archive .entry-image-link:hover img {
	opacity: .8;
}

/* Blog Single */
.entry-meta-before-content {
	text-transform: uppercase;
	letter-spacing: .2em;
	font-style: normal;
	text-align: center;
	margin-bottom: var(--spacing-sm);
}

.entry-title-single {
	text-align: center;
	font-weight: 500;
	--entry-title-font-size: var(--font-size-xxxl);
	max-width: var(--breakpoint-lg);
	margin: 0 auto var(--spacing-lg) auto;
}

.entry-image-single,
.entry-content-single {
	max-width: var(--breakpoint-lg);
	margin: 0 auto var(--spacing-lg) auto;
}

.adjacent-entry-pagination {
	margin-top: var(--spacing-xl);
}

.adjacent-entry-pagination a .adjacent-entry-link-inner {
	transition: all ease-in 100ms;
	max-width: 500px;
}

.adjacent-entry-pagination a:hover .adjacent-entry-link-inner {
	transform: scale(1.02);
}

.adjacent-entry-pagination img {
	display: none;
}

/* Breadcrumbs */
.breadcrumb {
	--link-color: var(--ki-blue);
	opacity: .9;
}

.breadcrumb:hover {
	opacity: 1;
}

/* Contact */
.contact-info {
	--link-text-decoration: none;
	--woafx-social-icon-padding: 0;
}

.contact-info .wp-block-image img {
	width: 65px;
	max-width: 65px;
}

.contact-info h2 {
	font-size: var(--font-size-lg);
}

.contact-info .wp-block-group.is-vertical {
	--row-gap: 2px;
}

@media only screen and (min-width: 782px) {
	.contact-outer {
		padding: var(--spacing-xxl) 0 0 0;
	}
}


/* Map Embed */
.map-wrap {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	/* 16:9 aspect ratio — adjust as needed */
	height: 0;
	overflow: hidden;
}

.map-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* Design Form */
.gf-design-pool .gfield_label.gform-field-label {
	font-family: var(--heading-font-family);
	font-size: var(--font-size-xxl);
	color: var(--ki-navy);
	padding-top: var(--spacing-md);
}

.gf-design-pool .gfield_description {
	padding-bottom: var(--spacing-lg);
	font-size: var(--font-size-md);

}

/* Gravity Forms */
.gform-theme--framework {
	--gf-ctrl-outline-color-focus: var(--gfx-accent-color, var(--color-secondary)) !important;
	--gf-ctrl-border-color-focus: var(--gfx-accent-color, var(--color-secondary)) !important;
	--gf-ctrl-accent-color: var(--gfx-accent-color, var(--color-secondary)) !important;
	--gf-ctrl-choice-check-color: var(--gfx-accent-color, var(--color-secondary)) !important;
	--gf-color-primary: var(--color-primary) !important;
	--gf-color-primary-darker: var(--color-primary-dark) !important;
}

body .gform_wrapper .gform_footer input[type=submit]:hover,
.gform_page_footer .gfrom_next_button {
	background-color: var(--button-background, var(--color-primary)) !important;
	color: var(--button-color) !important;
	font-weight: var(--button-font-weight, var(--body-font-weight)) !important;
	text-transform: var(--button-text-transform, none) !important;
	font-family: var(--button-font-family, var(--body-font-family)) !important;
	border-radius: var(--button-border-radius, var(--border-radius)) !important;
	border: var(--button-border, 0) !important;
}

body .gform_wrapper .gform_footer input[type=submit]:hover,
body .gform_wrapper .gform_footer input[type=submit]:active,
body .gform_wrapper .gform_footer input[type=submit]:focus {
	background-color: var(--button-background-hover, var(--color-primary-dark, var(--button-background, var(--color-primary)))) !important;
	border: var(--button-border-hover, var(--button-border, 0)) !important;
	color: var(--button-color-hover, var(--button-color)) !important;
}

.gform-theme--foundation .gform_fields {
	--gf-form-gap-y: var(--spacing-sm, 1rem);
}

.gfield--type-html h2,
.gfield--type-html h3 {
	text-transform: none !important;
}

.gfield_label.gform-field-label {
	font-weight: 600 !important;
}

.gform-theme--framework .gform-field-label {
	--gf-local-font-size: var(--font-size-md);
}


/* Site Footer */
.site-footer {
	--woafx-social-icon-align: left;
}

.site-footer h2 {
	text-transform: uppercase;
	font-size: var(--font-size-lg);
}

.site-footer .nav-footer-quick-links .menu-item {
	justify-content: start;
	--menu-item-link-color: var(--ki-black);
	--menu-item-link-color-hover: var(--ki-blue);
	--menu-item-link-text-decoration-hover: underline;
}

.site-footer a {
	--link-color: var(--ki-black);
	--link-color-hover: var(--ki-blue);
}

.entry-archive .entry-meta-before-content {
	text-align: left;
	letter-spacing: .1em;
}