/*!
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme.
Version: 1.0.0
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence-child
Author: VL
*/

/* OEIG theme customizations
-------------------------------------------------------------- */
:root {
	--primary: var(--global-palette4, #1d2f5d);
	--accent: var(--global-palette1, #bd2025);
	--alternative: var(--global-palette2, #d3a243);
	
	
	--font-body: "effra", sans-serif;							/* 300, 400, 500, 700, 900 */
	--font-headline: "berthold-baskerville-pro", sans-serif;	/* 400, 400i, 700 */
	
	interpolate-size: allow-keywords;
}

a {
	/* increase distance of link underlines from text above it,
	to prevent optical illusion of "orphan periods" at the bering and/or end of links in some instances */
	text-underline-offset: 3px; 
}

/* Helpers */
.form-msg-danger {
	color: var(--accent);
}
.text-balance {
	text-wrap: balance;
}



/* Hero */
.entry-hero {
	margin-block-start: 1rem;
}
.entry-title {
	font-family: var(--font-headline);
}

.site .entry-hero-container-inner .entry-header {
	margin-block-start: 4rem;
}
.site .hero-section-overlay {
	/* height: clamp(400px, 40vh, 600px); */
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	transform: translateX(0);
}
	@media screen and (min-width: 1280px) {
		.site .hero-section-overlay {
			/* shift hero image to right align with right side of content container on large viewports */
			/* transform: translateX(calc( (100vw - var(--global-content-width)) / 2 * -1)); */
			
			width: calc(100vw - (100vw - var(--global-content-width)) / 2);
		}
		.site .hero-section-overlay .cta-button {
			font-size: 120%;
		}
	}

	/* Hero CTA	 */
	.site .hero-section-overlay .cta-button {
		display: block;
		position: absolute;
		bottom: 2rem;
		right: 2rem;
		
		z-index: 1;
	}
	

/* Content  */
.entry-content-wrap {
	padding: 0;
}

/* Main Menu */
.site .site-header-section-center {
	justify-content: flex-end;
}

/* Quick Nav */
.site-top-footer-wrap .site-container {
	
}
.menu-quick-nav-container {
	--section-bg: var(--primary);
	color: #fff;
	
	background-color: var(--section-bg, #fff);
	box-shadow: -50vw 0 0 0 var(--section-bg),
				-25vw 0 0 0 var(--section-bg),
				 25vw 0 0 0 var(--section-bg),
				 50vw 0 0 0 var(--section-bg);
}
	.menu-quick-nav-container ul {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.menu-quick-nav-container .menu-item {
		flex-grow: 1;
		align-content: center;
		padding-inline: 2%;
		/* max-width: 320px; */
		
		text-transform: uppercase;
		text-wrap: balance;
		
		font-size: clamp(1rem, 1rem + 1.5vw, 2rem);
		font-family: var(--font-body);
		font-weight: 600;
	}
	.menu-quick-nav-container .menu-item + .menu-item {
		border-top: 2px solid currentcolor;
	}
	.menu-quick-nav-container .menu-item a {
		display: block;
		padding-block: 2rem;
		color: inherit;
		line-height: 1.3;
	}
	.menu-quick-nav-container .menu-item a:hover {
		color: var(--alternative);
	}
	
	@media screen and (min-width: 800px) {
		.menu-quick-nav-container {
			padding-block: 2.5rem;
		}
		.menu-quick-nav-container ul {
			flex-direction: row;
			flex-wrap: wrap;
		}
		.menu-quick-nav-container .menu-item {
			flex-basis: 33%;
			max-width: 320px;
		}
		.menu-quick-nav-container .menu-item + .menu-item {
			border-top: 0;
			border-left: 2px solid currentcolor;
		}
	}
	
	
/* Footer Widgets */
.site-middle-footer-wrap,
.site-bottom-footer-wrap {
	font-size: 80%;
}

.site-footer-row,
.site-footer-row .wp-block-heading {
	color: var(--primary);
}
.site-footer-row .wp-block-heading {
	font-size: 24px;
	font-weight: 500;
}
.site-footer-row p {
	margin-bottom: .5rem;
	font-weight: 400;
	line-height: 1.3;
}
.site-middle-footer-inner-wrap .widget.widget_block {
	margin-bottom: .25rem;
}
	.site-middle-footer-inner-wrap .widget.widget_block a {
		color: inherit;
		white-space: nowrap;
	}
	.site-middle-footer-inner-wrap .widget.widget_block > p:first-child {
		margin-block-start: 0;
	}
	.footer-logo-block {
		
	}
		.footer-logo-block figure {
			max-width: 200px;
			margin-bottom: 1rem;
		}
		.footer-logo-block .wp-block-media-text__content {
			/* padding-inline: 5%; */
		}
		
	.site-middle-footer-inner-wrap .site-footer-section:last-child {
		flex-direction: column;
	}
		.site-middle-footer-inner-wrap .site-footer-section:last-child .footer-widget-area {
			margin-inline-start: 0;
		}
		.site-middle-footer-inner-wrap .site-footer-section:last-child .wp-block-list {
			margin-block-start: 1rem;
			margin-inline-start: 0;
			padding: calc(0.5em / 2);
			list-style: none;
			font-weight: 500;
		}
		.site-middle-footer-inner-wrap .site-footer-section:last-child .wp-block-list a {
			color: inherit;
		}
	
/* Footer Nav */
.footer-navigation .menu {
	flex-direction: column;
}

	.footer-menu-container .menu-item {
		line-height: 1.3;
		
	}
	
	

/* *** Components *** */

/* WP Block Details */
.wp-block-details {
	overflow: hidden;
}
	.wp-block-details > summary {
		list-style-type: none; /* hide marker in FF */
		position: relative;
		display: flex;
		justify-content: space-between;
		align-items: center;
		
		border-bottom: 2px solid var(--alternative);
		margin-block: .5rem;
		padding: .25rem 0;
		
		color: var(--primary);
		font-weight: 700;
		font-size: 28px;
	}
		.wp-block-details > summary::-webkit-details-marker,
		.wp-block-details > summary::marker {
			display: none; /* hide marker in other browsers */
		}
		.wp-block-details > summary::after {
			content: "";
			display: block;
			box-sizing: border-box;
			
			margin-inline: .5rem;
			padding: .3rem;
			width: 10px;
			height: 10px;
			
			border-bottom: 2px solid;
			border-right: 2px solid;
			transform: rotate(-45deg);
			transition: .3s transform ease-in-out;
			
			order: 1;
		}
		.wp-block-details[open] > summary::after {
			transform: rotate(45deg);
		}
	
	/* Animation with fallback; requires :root{interpolate-size: allow-keywords;}  */
	@supports (interpolate-size: allow-keywords) and selector(::details-content) {
		.wp-block-details::details-content {
			overflow: hidden;
			transition: 
				block-size .3s,
				content-visibility .3s;
			transition-behavior: allow-discrete;
			block-size: 0;
		}
		.wp-block-details[open]::details-content {
			block-size: auto;
		}
	}
	@supports not (interpolate-size: allow-keywords) {
		.wp-block-details > summary {
			cursor: pointer;
			transition: 
				margin .3s ease-out,
				content-visibility .3s;
		}
		.wp-block-details[open] > summary {
			margin-bottom: 1rem;
		}
	}




/* GravityForm plugin redefined styles */
.site .gform_wrapper  {
	--gf-ctrl-btn-padding-y: 1em;
	--gf-ctrl-btn-padding-x: 2em;
	--gf-ctrl-btn-padding-x-md: 1.5em;
	--gf-ctrl-btn-font-size: 22px;
	--gf-ctrl-btn-font-size-md: 26px;
	--gf-ctrl-btn-font-weight: 700;
	--gf-ctrl-btn-radius: .75rem;
	--gf-ctrl-btn-bg-color-primary: var(--global-palette-btn-bg);
	--gf-ctrl-btn-bg-color-hover-primary: var(--global-palette-btn-bg-hover);
	
	--gf-ctrl-label-font-size-primary: 1.2rem; /* labels */
	--gf-ctrl-label-font-size-secondary: 1rem; /* checkbox & radio labels */
	--gf-ctrl-label-font-size-tertiary: 1rem; /* sub-labels: address, etc. */
	--gf-ctrl-desc-font-size: 1rem; /* input descriptions  */
}