/*
Theme Name:     Kadence Echo
Theme URI:      https://echo-factory.com/
Template:       kadence
Author:         Echo-Factory
Author URI:     https://echo-factory.com/
Description:    Lightning-fast performance theme for modern websites.  Child theme by Echo-Factory.
Version:        1.0
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* Declare variables */
:root {
	--global-kb-spacing-sm: 20px;
	--global-kb-spacing-md: 40px;
	--global-kb-spacing-lg: 80px;
	--global-kb-spacing-xl: 102px;
	
	--global-kb-gap-sm: 20px;
	--global-kb-gap-md: 36px;
	--global-kb-gap-lg: 102px;
	
	--global-row-gutter-md: 36px;
	
	--font-size-d1: 72px;
	--font-size-d2: 60px;
	--font-size-d3: 48px;
	--font-size-d4: 36px;
	--font-size-d5: 30px;
	--font-size-d6: 24px;
	--font-size-d7: 20px;
	--font-size-d8: 18px;
		
	--line-height-d1: 1;
	--line-height-d2: 1;
	--line-height-d3: 1;
	--line-height-d4: 40px;
	--line-height-d5: 36px;
	--line-height-d6: 32px;
	--line-height-d7: 28px;
	--line-height-d8: 24px;
	
	/* 	Paragraph sizes */
	--font-size-pl: 20px;
	--font-size-pm: 18px;
	--font-size-ps: 16px;
	--font-size-pxs: 14px;

	--line-height-pl: 32px;
	--line-height-pm: 27px;
	--line-height-ps: 22px;
	--line-height-pxs: 20px;
}

@media (width <= 767px) {
	:root {
		--global-kb-spacing-md: 32px;
		--global-kb-spacing-lg: 48px;
	}
}

/* Typography */
.heading--display-3 {
	font-size: var(--font-size-d3);
	line-height: var(--line-height-d3);
}

.heading--display-5 {
	font-size: var(--font-size-d5);
	line-height: var(--line-height-d5);
}

.heading--display-6 {
	font-size: var(--font-size-d6);
	line-height: var(--line-height-d6);
}

.heading--display-7 {
	font-size: var(--font-size-d7);
	line-height: var(--line-height-d7);
	font-weight: 700;
}

.heading--display-8 {
	font-size: var(--font-size-d8);
	line-height: var(--line-height-d8);
	font-weight: 700;
}

p.has-medium-font-size {
	--wp--preset--font-size--medium: var(--font-size-pm);
	font-size: var(--font-size-pm);
	line-height: var(--line-height-pm);
}

/* Buttons */
a.btn--outline-white,
.kb-buttons-wrap a.btn--outline-white.button.kb-btn-global-outline {
	color: var(--global-palette9);
	border-color: var(--global-palette9);
}

a.btn--outline-white:hover,
.kb-buttons-wrap a.btn--outline-white.button.kb-btn-global-outline:hover {
	color: var(--global-palette3);
	background-color: var(--global-palette9);
}

.button.kb-btn-global-outline:not(.has-text-color):hover {
	background-color: var(--global-palette3);
}

/* Hero */
.hero > .kt-inside-inner-col:has(> .kb-row-layout-wrap:only-child) {
	padding-top: 256px;
}

/* Icons */
.kb-svg-icon-wrap {
	--global-kb-spacing-lg: 64px;
}

/* Text/Heading Margins */
.single-content h2,
.single-content h3 {
	margin-top: 0;
}

.single-content h2:last-child {
	margin-bottom: 0.5em;
}

/* Cards */
.card--icon {
	border: 2px solid #A3A4AE;
	border-radius: 8px;
	padding: 32px;
}

.card__icon {
	margin-bottom: 1em;
}

.card--clickable:hover > .kt-inside-inner-col {
	background-color: var(--wp--preset--color--kb-palette-11)
}

.card--small-font .card__title {
	font-size: var(--font-size-d6);
	line-height: var(--line-height-d6);
	font-weight: 700;
}

.card--small-font .card__description {
	font-size: var(--font-size-pm);
	line-height: var(--line-height-pm);
}

.card--platform .kt-image-overlay-wrap {
	border-radius: 8px;
	background-color: var(--global-palette3);
}

.card--platform .image-overlay-title {
	font-size: var(--font-size-d8);
	line-height: var(--line-height-d8);
}

.card_image--overlay .kt-image-overlay-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.card_image--overlay .kt-image-overlay-inner>* {
	display: inline-block;
}

.card_image--overlay .kt-image-overlay-inner::after {
	content: '';
	background: url('https://prodefense.kinsta.cloud/wp-content/uploads/2026/06/pd_platforms_link_icon.svg') no-repeat center center / contain;
	height: 20px;
	width: 20px;
	display: inline-block;
	color: var(--global-palette9);
	margin-right: 10px;
	flex-shrink: 0;
}

/* Sticky columns + cards (will use to animate later) */
.sticky-column__card {
	border: 2px solid #3D3937;
	border-radius: 8px;
	padding: 28px;
	background-color: transparent;
}

/* Marquee */
.marquee h1, .marquee h2, .marquee p {
	color: var(--wp--preset--color--kb-palette-11);
	font-size: 60px;
	line-height: 1em;
}

.marquee h1:last-child, .marquee h2:last-child, .marquee p:last-child {
	margin-bottom: 0;
}

/* Slider */
.slider.kb-advanced-slider .kb-splide .splide__arrow--next {
	right: 5px;
}

.slider.kb-advanced-slider .kb-splide .splide__arrow--prev {
	left: 5px;
}

.slider.kb-advanced-slider .slider__eyebrow {
	font-weight: 700;
	font-style: Bold;
	font-size: 12px;
	leading-trim: NONE;
	line-height: 18px;
	letter-spacing: 10%;
	text-transform: uppercase;
	margin-bottom: 1em;
}

.slider.kb-advanced-slider .slider__title {
	font-size: 36px;
	line-height: 1;
}

.slider.kb-advanced-slider .wp-block-kadence-slide:nth-child(3n+1) .kb-advanced-slide-inner-wrap.kb-slide-align-left.kb-slide-valign-null {
	background-color: var(--wp--preset--color--kb-palette-11);
}

.slider.kb-advanced-slider .wp-block-kadence-slide:nth-child(3n+2) .kb-advanced-slide-inner-wrap.kb-slide-align-left.kb-slide-valign-null {
	background-color: #CACAD3;
}

.slider.kb-advanced-slider .wp-block-kadence-slide:nth-child(3n+3) .kb-advanced-slide-inner-wrap.kb-slide-align-left.kb-slide-valign-null {
	background-color: var(--global-palette3);
}

/* Carousel */
.carousel--platforms .kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item__caption {
	padding-bottom: 43px;
}

/* Icon Lists */
.icon-list > .kt-svg-icon-list:not(.specificity-1):not(.specificity-2) {
	margin-bottom: 0;	
	grid-row-gap: 10px;
}

.icon-list .kt-svg-icon-list-text {
	font-size: var(--font-size-pm);
	line-height: var(--line-height-pm);
}

/* Staggered-Column Row */
.row--staggered-columns .row--staggered-columns__wrapper > .kt-inside-inner-col {
	display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-template-rows: auto 320px auto; /* row2 = the fixed overlap band */
	  gap: 20px;
}

.row--staggered-columns .staggered-column__text--left {
	grid-column: 1; 
	grid-row: 1;
	align-self: end;
	padding-right: var(--global-kb-spacing-lg);
}

.row--staggered-columns .staggered-column__image--left {
	grid-column: 1; 
	grid-row: 2 / span 2; 
	align-self: start;
	margin-top: 1em;
}

.row--staggered-columns .staggered-column__image--right {
	grid-column: 2; 
	grid-row: 1 / span 2; 
	align-self: end;
}

.row--staggered-columns .staggered-column__text--right {
	grid-column: 2; 
	grid-row: 3;          
	align-self: start;
}

@media (max-width: 767px) {
	.row--staggered-columns .row--staggered-columns__wrapper > .kt-inside-inner-col {
		display: flex;
		flex-direction: column;
		row-gap: 24px;
	}
  
	.row--staggered-columns .staggered-column__text--left  { 
		order: 1;
		padding-right: 0;
	}
	
	.row--staggered-columns .staggered-column__image--left   { 
		order: 2; 
	}
	
	.row--staggered-columns .staggered-column__text--right { 
		order: 3; 
	}
	
	.row--staggered-columns .staggered-column__image--right  { 
		order: 4;
	}
}

/* Header */
.menu__button {
	margin-left: 1em;
}

.main-navigation .primary-menu-container > ul > li.menu-item.menu__button a {
	background-color: var(--global-palette6);
	color: var(--global-palette9);
	border-bottom: 4px solid var(--global-palette1);
}

.main-navigation .primary-menu-container > ul > li.menu-item.menu__button a:hover {
	background-color: var(--global-palette3);
}

.menu__button a:hover::after,
.menu__button a:focus::after, 
.menu__button a:active::after, 
.header-navigation[class*=header-navigation-style-underline] .header-menu-container>ul>li>a:after {
	display: none;
}

/* Footer */
.footer__nav-item > h2 {
	font-size: var(--font-size-d7);
	line-height: var(--line-height-d7);
	font-weight: 700;
	font-family: 'Nordique Pro', Helvetica;
	margin-bottom: 1em;
}

.footer__nav-item > h3 {
	color: var(--global-palette9);
	font-size: var(--font-size-pm);
	line-height: var(--line-height-pm);
	font-weight: 400;
	font-family: Helvetica;
}

.footer__nav-item:hover > h3 {
	color: var(--wp--preset--color--kb-palette-11);
}

/* Forms */
.pd-contact-form_wrapper .gform_heading {
	display: none;
}

.pd-contact-form label,
.pd-contact-form label.gfield_label.gform-field-label,
.pd-contact-form legend,
.pd-contact-form legend.gfield_label.gform-field-label {
	text-transform: uppercase;
	font-weight: 700;
}

.pd-contact-form .gfield_required.gfield_required_asterisk {
	font-size: 18px;
	font-weight: 700;
}

.pd-contact-form .gfield_radio input {
	background-color: transparent;
	border-color: var(--global-palette3);
	border-width: 2px;
}

.pd-contact-form > .gform-footer.gform_footer.top_label input[type="submit"].gform_button.button {
	font-family: "Nordique Pro", Helvetica;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 1.08px;
	text-transform: uppercase;
	padding: 12px 24px;
}

.pd-contact-form .ginput_container,
.pd-contact-form .ginput_container input:not([type="radio"]),
.pd-contact-form .ginput_container textarea {
	border: none;
	box-shadow: none;
}