/*
Theme Name: Uncode Child
Description: Child theme for Uncode theme
Author: Undsgn™
Author URI: http://www.undsgn.com
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/

/* ===============
   Variables
   =============== */
   :root {
	/* Primary (navy/blue) */
	--primary: #0B1832;
	--primary-500: #003384;
	--primary-400: #004AC2;
	--primary-300: #4E84DB;
	--primary-200: #9EC2FB;
	--primary-100: #C8DCFD;
	--primary-0: #EAF2FF;

	/* Secondary (deep purple / purple) */
	--secondary: #150168;
	--secondary-600: #2C00BD;
	--secondary-500: #5633CA;
	--secondary-400: #8066D7;
	--secondary-300: #AB99E4;
	--secondary-200: #DACCF2;

	/* Neutrals (black, gray, white) */
	--black: #000000;
	--soft-gray: #E9E8ED;
	--white: #FFFFFF;
	--neutral-500: #333333;
	--neutral-400: #666666;
	--neutral-300: #999999;
	--neutral-200: #CCCCCC;
	--neutral-100: #E5E5E5;
	--neutral-100: #F8F8F8;

	/* Hover transition (matches Uncode .ui-transition-fast timing) */
	--hover-transition: color 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86),
		background-color 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86),
		border-color 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86),
		opacity 200ms cubic-bezier(0.785, 0.135, 0.15, 0.86);

	/* Gravity Forms — base field chrome (Figma) */
	--gf-field-border: #d5ccf2;
	--gf-field-focus: var(--secondary-600);
	--gf-placeholder: var(--neutral-300);
	--gf-placeholder-active: var(--neutral-200);
	--gf-field-radius: 6px;
	--gf-field-pad-y: 16px;
	--gf-field-pad-x: 24px;
	--gf-field-gap: 16px;
	/* Horizontal gutter between fields in the same row (matches GF foundation --gf-field-gap-x) */
	--gf-field-gap-x: 12px;

	/* Gravity Forms — multi-step progress and step indicators */
	--gf-progress-track: var(--secondary-200);
	--gf-progress-fill: var(--secondary-600);
	--gf-progress-height: 6px;
	--gf-progress-radius: 3px;
	--gf-step-size: 28px;
	--gf-step-gap-x: 24px;
	--gf-step-gap-y: 8px;
	--gf-chevron: var(--neutral-500);
}

/* ===============
   Global
   =============== */
body {
	text-wrap: pretty;
	font-weight: 400;
	line-height: 1.4;
}

p, li, dt, dd, dl, address, label, small, pre, code, 
span.tab-excerpt, .menu-smart .block-wrapper-parent p, 
.menu-smart .block-wrapper-parent li, .menu-smart .block-wrapper-parent dt, 
.menu-smart .block-wrapper-parent dd, .menu-smart .block-wrapper-parent dl, 
.menu-smart .block-wrapper-parent address, .menu-smart .block-wrapper-parent label, 
.menu-smart .block-wrapper-parent small, .menu-smart .block-wrapper-parent pre, 
.menu-smart .block-wrapper-parent code, .menu-smart .block-wrapper-parent span.tab-excerpt {
	line-height: 1.4;
}

h1, h2, h3, h4, h5, h6 {
	text-wrap: balance;
}

h1 {
	font-weight: 600;
	line-height: 1 !important;
}

h2 {
	font-weight: 500;
	line-height: 1.1 !important;
}

h3 {
	font-weight: 500;
	line-height: 1.2 !important;
	margin-bottom: 24px;
}

h4 {
	font-weight: 500;
	line-height: 1.2 !important;
}

h5 {
	font-weight: 500;
	line-height: 1.4 !important;
}

h6 {
	font-weight: 500;
	line-height: 1.4 !important;
}

h1 strong, h2 strong, h3 strong {
	color: var(--primary-400);
}

.style-dark h1 strong,
.style-dark h2 strong,
.style-dark h3 strong {
	color: var(--primary-200);
}

a,
button,
input[type="submit"],
input[type="button"],
[role="button"] {
	transition: var(--hover-transition);
}

/* Row default padding-block: 108px only when row has no custom padding preset (no/single/triple/etc.). 72px top/bottom when viewport < 569px. */
.main-container .row-container .row-parent:not(.no-top-padding):not(.one-top-padding):not(.single-top-padding):not(.triple-top-padding):not(.quad-top-padding):not(.penta-top-padding):not(.exa-top-padding):not(.no-bottom-padding):not(.one-bottom-padding):not(.single-bottom-padding):not(.triple-bottom-padding):not(.quad-bottom-padding):not(.penta-bottom-padding):not(.exa-bottom-padding),
.block-wrapper-parent .row-container .row-parent:not(.no-top-padding):not(.one-top-padding):not(.single-top-padding):not(.triple-top-padding):not(.quad-top-padding):not(.penta-top-padding):not(.exa-top-padding):not(.no-bottom-padding):not(.one-bottom-padding):not(.single-bottom-padding):not(.triple-bottom-padding):not(.quad-bottom-padding):not(.penta-bottom-padding):not(.exa-bottom-padding),
.has-unblock .row-container .row-parent:not(.no-top-padding):not(.one-top-padding):not(.single-top-padding):not(.triple-top-padding):not(.quad-top-padding):not(.penta-top-padding):not(.exa-top-padding):not(.no-bottom-padding):not(.one-bottom-padding):not(.single-bottom-padding):not(.triple-bottom-padding):not(.quad-bottom-padding):not(.penta-bottom-padding):not(.exa-bottom-padding) {
	padding-top: 108px;
	padding-bottom: 108px;

	@media (max-width: 568px) {
		padding-top: 72px;
		padding-bottom: 72px;
	}
}

.flex-row {
	display: flex !important;
	flex-direction: row;
	gap: 1rem;
}

.uncode-single-media-wrapper img {
    max-width: max-content !important;
}

.style-dark .ira-recognition-logo img {
    filter: brightness(0) invert(1);
}

/* ===============
   Uncode Theme Overrides
   =============== */

.color-accent-darker, body.textual-accent-color .post-content p:not(.entry-small):not(.panel-title):not(.t-entry-member-social) a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content p:not(.entry-small):not(.panel-title):not(.t-entry-member-social) a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content p:not(.entry-small):not(.panel-title):not(.t-entry-member-social) a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content ul:not(.menu-smart):not(.nav-tabs):not(.pagination) a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content ul:not(.menu-smart):not(.nav-tabs):not(.pagination) a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content ul:not(.menu-smart):not(.nav-tabs):not(.pagination) a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dt a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dt a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dt a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dd a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dd a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dd a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dl a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dl a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content dl a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content address a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content address a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content address a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content label a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content label a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content label a.active:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content small a:not(.btn-text-skin):hover:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content small a:not(.btn-text-skin):focus:not(.btn):not(.unmenu-block *), body.textual-accent-color .post-content small a.active:not(.btn):not(.unmenu-block *) {
	color: var(--secondary) !important;
}

body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .menu-borders:not(.needs-after), body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .menu-borders.needs-after::after, body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .menu-smart, body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .menu-smart > li, body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .navbar-nav-last > *:first-child::after, body:not(.menu-force-opacity):not(.navbar-hover) .menu-transparent.menu-light .navbar-nav-first > *:first-child::after {
    border-color: #F3F2F2;
}

.single-block-padding {
    padding-block: 32px;
}

.tab-pane.active.single-block-padding {
    padding: 0;
}

.uncode-wrapper.uncode-list ul > li {
    padding: 0 0 .5em 2.5em;
    font-size: 18px;

	
	i {
		margin-right: 0.5em;
		font-size: 1.75em;
		line-height: 1;
		position: relative;
		top: 0.2em;
		margin-left: -1.5em;
		width: 1em;
		display: inline-block;
	}
	
}

.text-lead, .text-lead:not(ul):not(ol) > *, .text-lead > *:not(ul):not(ol):not(li) {
    margin: 18px 0px 0px 0px;
}

.text-lead, .text-lead:not(ul):not(ol) > * {
    line-height: 1.4;
}

.text-lead {	
	h1 {
		line-height: 1 !important;
	}

	h2 {
		line-height: 1.1 !important;
	}

	h3 {
		line-height: 1.2 !important;
	}

	h4 {
		line-height: 1.2 !important;
	}

	h5 {
		line-height: 1.4 !important;
	}

	h6 {
		line-height: 1.4 !important;
	}
}

/* ===============
   Header
   =============== */
/* Logo */
.logo-customizer img[src$=".svg"],
.logo-customizer img[src*=".svg?"] {
	object-fit: contain;
	height: auto;
	max-height: 50px;
	width: auto;
	max-width: 200px;
}

/* Mega menu */
.megamenu-block-wrapper {
	padding: 0 !important;
}

.menu-mobile-default .ira-mega-menu .menu-smart a, .ira-mega-menu a { padding: 0 !important; }

.ira-mega-menu .menu.unmenu-block {
	margin-top: 24px !important;
}

.ira-mega-menu .unmenu-block .unmenu-title a {
	width: 100%;
	padding: 0 !important;
	font-weight: 500 !important;
}

.ira-mega-menu .unmenu-block .un-submenu li a span,
.ira-mega-menu .unmenu-block .unmenu-title a span,
.ira-mega-menu a span {
	width: 100%;
	padding: 8px 16px;
	border-radius: 8px;
}

.ira-mega-menu .unmenu-block .un-submenu li a span:hover, 
.ira-mega-menu .unmenu-block .unmenu-title a span:hover,
.ira-mega-menu a span:hover  {
	background: var(--neutral-100);
}

/*Sticky Menu*/
body:not(.menu-force-opacity):not(.menu-scroll-transparency:not(.navbar-hover))[class*=hmenu-] .menu-primary.is_stuck .menu-container {
	box-shadow: none !important;
}


/* menu-call-to-action-menu Override*/
#menu-call-to-action-menu #menu-item-8445 a {
	padding-right: 0 !important;
}

#menu-call-to-action-menu {
	margin-left:4px!important;
	padding-left:4px!important;
}

/* Open Account button */
.open-account {
    display: flex !important;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 16px 24px !important;
    background: var(--secondary-600) !important;
    color: var(--white) !important;
    line-height: 140%;
    border: 1px solid var(--primary-400) !important;
    box-shadow: none;
}

.open-account:hover {
    background: var(--primary-400) !important;
    color: var(--white) !important;
}

.navbar.is_stuck ul.menu-icons a {
    color: var(--purple-600) !important;
	
	&:hover {
		color: var(--purple) !important;
	}
}

ul.menu-smart.sm.menu-icons.menu-smart-social.mobile-hidden.tablet-hidden {
    padding-left: 8px !important;
}

/* Mobile menu: dividers only between top-level items */
.is_mobile_open > ul > li {
	border-bottom: 1px solid var(--neutral-100) !important;
	padding: 0 20px !important;
	margin: 0 20px !important;
	width: calc(100% - 40px) !important;
}


/* ===============
   Footer
   =============== */


/* Newsletter form */

footer #gform_wrapper_4 {
	
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--primary-0);

	.gform_heading { 
		display: none;
	}

	form {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		gap: 16px;
		width: 100%;
	}

	.gform_body {
		flex: 1;
		min-width: 0;
		order: 0;
	}

	.gform_footer {
		flex: none;
		order: 1;
		padding: 0 !important;
		margin: 0 !important;
        border: none !important;
        background: none !important;
        width: auto !important;
	}

	.gform_fields {
		display: block !important;
		grid-template-columns: none !important;
		grid-row-gap: 0 !important;
	}

	.gform_fields .gfield {
		flex: 1;
		margin: 0;
		padding: 0;
	}

	.gfield_label,
	.gfield_description {
		display: none;
	}

	input[type="email"], input[type="text"].gform_email {
		background: transparent !important;
		border: none !important;
		padding-left: 0 !important;
		font-size: 18px !important;
		line-height: 1.4;
		color: var(--white);
	}

	input[type="email"]::placeholder,
	input[type="text"].gform_email::placeholder {
		color: rgba(255, 255, 255, 0.5);
	}

	.gform_footer input[type="submit"], 
	.gform_footer .gform_button, 
	.gform_footer button[type="submit"] {
		padding: 16px 24px;
		height: 48px;
		background: var(--secondary-600) !important;
		border: none !important;
		margin: 0 !important;
		font-size: 18px;
		font-weight: 600 !important;
		line-height: 0 !important;
		color: var(--white) !important;
		cursor: pointer;
		transition: background 0.2s ease;
	}

	.gform_footer input[type="submit"]:hover,
	.gform_footer .gform_button:hover,
	.gform_footer button[type="submit"]:hover {
		background: var(--secondary) !important;
	}

	/* Form title (e.g. "Sign up to our newsletter") when displayed above */
	.gform_heading,
	.gform_title {
		font-family: 'District Pro', sans-serif;
		font-weight: 600;
		font-size: 24px;
		line-height: 120%;
		color: var(--white);
		opacity: 0.5;
		margin: 0 0 16px 0;
	}

	.gform_heading + form {
		margin-top: 0;
	}
}


/* Legal menu */
#menu-legal {
	width: fit-content;
}

#menu-legal a {
	text-decoration: underline;
}

/* ===============
   Gravity Forms — base (all forms; footer newsletter overrides these styles)

   Scoped to `.gform_wrapper.gravity-theme` so these rules beat the plugin's
   theme.min.css without relying on !important or load order.
   =============== */

.gform_required_legend {
	display: none;
}

.gform_wrapper.gravity-theme form {
	box-sizing: border-box;
}

.gform_wrapper.gravity-theme *,
.gform_wrapper.gravity-theme *::before,
.gform_wrapper.gravity-theme *::after {
	box-sizing: border-box;
}

/* Content stays left-aligned; only buttons and step indicators are centered */
/* .gform_wrapper.gravity-theme,
.gform_wrapper.gravity-theme .gform-body,
.gform_wrapper.gravity-theme .gform_body {
	text-align: left !important;
} */


/* Left Align checkboxes */
.ginput_container_checkbox{
	text-align: left;
}

/*
 * Layout: 12-column grid (same model as Gravity Forms “foundation” theme).
 * Field widths from the form editor map to grid-column span — no per-form CSS needed.
 */
.gform_wrapper.gravity-theme .gform_fields {
	display: grid !important;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--gf-field-gap-x);
	row-gap: var(--gf-field-gap);
	width: 100%;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield {
	grid-column: 1 / -1;
	min-width: 0;
}

/* GF 2.5+ width classes (12-column spans); direct-child keeps specificity above the default full-row rule */
.gform_wrapper.gravity-theme .gform_fields > .gfield--width-full,
.gform_wrapper.gravity-theme .gform_fields > .gfield--width-12-12,
.gform_wrapper.gravity-theme .gform_fields > li.gfield.gfield--width-full {
	grid-column: span 12;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-eleven-twelfths {
	grid-column: span 11;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-five-sixths {
	grid-column: span 10;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-three-quarter {
	grid-column: span 9;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-two-thirds {
	grid-column: span 8;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-seven-twelfths {
	grid-column: span 7;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-half,
.gform_wrapper.gravity-theme .gform_fields > .gfield--width-6-12 {
	grid-column: span 6;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-five-twelfths {
	grid-column: span 5;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-third {
	grid-column: span 4;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-quarter {
	grid-column: span 3;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-one-sixth {
	grid-column: span 2;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield--width-one-twelfth {
	grid-column: span 1;
}

/* Legacy GF column classes (pre–CSS-grid conversion) */
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_full_width,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_full_width_field {
	grid-column: span 12;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_left_half,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_right_half {
	grid-column: span 6;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_left_third,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_middle_third,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_right_third {
	grid-column: span 4;
}

.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_first_quarter,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_second_quarter,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_third_quarter,
.gform_wrapper.gravity-theme .gform_fields > .gfield.gf_fourth_quarter {
	grid-column: span 3;
}

@media (max-width: 568px) {
	.gform_wrapper.gravity-theme .gform_fields {
		grid-template-columns: minmax(0, 1fr);
	}

	.gform_wrapper.gravity-theme .gform_fields > .gfield {
		grid-column: 1 / -1 !important;
	}
}

/* Name field only: First / Last side by side */
.gform_wrapper.gravity-theme .gfield--type-name .ginput_complex {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	width: 100%;
	align-items: start;
}

.gform_wrapper.gravity-theme .gfield--type-name .ginput_complex span {
	display: block;
	width: 100%;
	padding: 0 !important;
}

@media (max-width: 568px) {
	.gform_wrapper.gravity-theme .gfield--type-name .ginput_complex {
		grid-template-columns: 1fr;
	}
}

/* Remove extra list / field spacing from theme + GF */
.gform_wrapper.gravity-theme ul.gform_fields,
.gform_wrapper.gravity-theme .gform_fields {
	list-style: none;
	margin: 0;
	padding: 0;
}

.gform_wrapper.gravity-theme .gfield {
	margin: 0 !important;
	padding: 0 !important;
}

/* Keep non-visible helper fields from consuming grid slots */
.gform_wrapper.gravity-theme .gfield.gform_validation_container,
.gform_wrapper.gravity-theme .gfield.gform_hidden {
	display: none !important;
}

.gform_wrapper.gravity-theme .gfield_description,
.gform_wrapper.gravity-theme .instruction {
	font-size: 16px;
	line-height: 1.4;
	color: var(--neutral-400);
	margin-top: 6px;
}

/* Screen-reader-only labels (design uses placeholders; a11y retained) */
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme legend.gfield_label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Restore visible labels on choice controls (checkbox/radio) */
.gform_wrapper.gravity-theme .gfield_checkbox .gchoice label,
.gform_wrapper.gravity-theme .gfield_radio .gchoice label,
.gform_wrapper.gravity-theme .ginput_container_checkbox label,
.gform_wrapper.gravity-theme .ginput_container_radio label {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	clip: auto !important;
	overflow: visible !important;
	white-space: normal !important;
}

/* Inputs & textarea */
.gform_wrapper.gravity-theme input[type="text"],
.gform_wrapper.gravity-theme input[type="email"],
.gform_wrapper.gravity-theme input[type="tel"],
.gform_wrapper.gravity-theme input[type="url"],
.gform_wrapper.gravity-theme input[type="number"],
.gform_wrapper.gravity-theme input[type="password"],
.gform_wrapper.gravity-theme textarea {
	appearance: none;
	width: 100%;
	min-height: 57px;
	margin: 0 !important;
	padding: var(--gf-field-pad-y) var(--gf-field-pad-x) !important;
	font-weight: 500;
	font-size: 18px !important;
	line-height: 1.4;
	color: var(--neutral-500);
	background: var(--white) !important;
	border: 1px solid var(--gf-field-border) !important;
	border-radius: var(--gf-field-radius) !important;
	box-shadow: none !important;
	transition: var(--hover-transition);
}

/* Make the DOB container full width */
.gfield--type-date .ginput_container.ginput_complex.gform-grid-row {
  display: flex !important;
  max-width: 100% !important;
  width: 100% !important;
}

.gfield--type-date .gform-grid-col {
  flex: 1 1 0 !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.gfield--type-date .gform-grid-col input {
  width: 100% !important;
  box-sizing: border-box;
}

/* Address field full width */
.gfield--type-address .ginput_container_address {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px;
}

.gfield--type-address .ginput_container_address span.ginput_full {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

.gfield--type-address .ginput_container_address span.ginput_left,
.gfield--type-address .ginput_container_address span.ginput_right {
  flex: 1 1 calc(50% - 6px) !important;
  max-width: calc(50% - 6px) !important;
  padding: 0 !important;
}

.gfield--type-address .ginput_container_address span.address_zip {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

.gfield--type-address .ginput_container_address span input,
.gfield--type-address .ginput_container_address span select {
  width: 100% !important;
  box-sizing: border-box;
}



/* Select: no ::placeholder on native <select>; color comes from the control itself */
.gform_wrapper.gravity-theme select {
	appearance: none;
	width: 100%;
	min-height: 57px;
	margin: 0 !important;
	padding: var(--gf-field-pad-y) var(--gf-field-pad-x) !important;
	padding-right: 44px !important;
	font-weight: 500;
	font-size: 18px !important;
	line-height: 1.4;
	cursor: pointer;
	background: var(--white) !important;
	border: 1px solid var(--gf-field-border) !important;
	border-radius: var(--gf-field-radius) !important;
	box-shadow: none !important;
	transition: var(--hover-transition);
	color: var(--neutral-500);
}

/*
 * Placeholder styling: GF's first option is usually value="". With required selects,
 * :invalid = placeholder showing → use placeholder gray; :valid = real choice → body text color.
 */
.gform_wrapper.gravity-theme select:invalid {
	color: var(--gf-placeholder);
}

.gform_wrapper.gravity-theme select:valid {
	color: var(--neutral-500);
}

.gform_wrapper.gravity-theme select:focus:invalid {
	color: var(--gf-placeholder-active);
}

.gform_wrapper.gravity-theme select option {
	color: var(--neutral-500);
}

.gform_wrapper.gravity-theme select option[value=""] {
	color: var(--gf-placeholder);
}

/* Select chevron — CSS caret matching the design; replaces any prior UI glyph */
.gform_wrapper.gravity-theme .ginput_container_select {
	position: relative;
}

.gform_wrapper.gravity-theme .ginput_container_select::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 24px;
	width: 10px;
	height: 10px;
	border-right: 2px solid var(--gf-chevron);
	border-bottom: 2px solid var(--gf-chevron);
	transform: translateY(-70%) rotate(45deg);
	pointer-events: none;
}

.gform_wrapper.gravity-theme textarea {
	min-height: 180px;
	resize: vertical;
	align-items: flex-start;
}

.gform_wrapper.gravity-theme input::placeholder,
.gform_wrapper.gravity-theme textarea::placeholder {
	color: var(--gf-placeholder);
	opacity: 1;
}

.gform_wrapper.gravity-theme input:focus,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme textarea:focus {
	outline: none;
	border-color: var(--gf-field-focus) !important;
}

.gform_wrapper.gravity-theme input:focus::placeholder,
.gform_wrapper.gravity-theme textarea:focus::placeholder {
	color: var(--gf-placeholder-active);
}

/* Validation */
.gform_wrapper.gravity-theme .gfield_error input,
.gform_wrapper.gravity-theme .gfield_error select,
.gform_wrapper.gravity-theme .gfield_error textarea {
	border-color: #c02b0a !important;
}

.gform_wrapper.gravity-theme .gfield_description.validation_message,
.gform_wrapper.gravity-theme .validation_message {
	color: #c02b0a;
	font-size: 14px;
	margin-top: 6px;
}

/* Multi-step progress bar */
.gform_wrapper.gravity-theme .gf_progressbar_wrapper {
	margin: 0 0 calc(var(--gf-field-gap) * 1.5);
	padding: 0;
}

.gform_wrapper.gravity-theme .gf_progressbar_title {
	display: none;
}

.gform_wrapper.gravity-theme .gf_progressbar {
	height: var(--gf-progress-height) !important;
	border-radius: var(--gf-progress-radius) !important;
	background: var(--gf-progress-track);
	padding: 0;
	box-shadow: none;
}

.gform_wrapper.gravity-theme .gf_progressbar_percentage {
	height: var(--gf-progress-height) !important;
	border-radius: var(--gf-progress-radius) !important;
	background: var(--gf-progress-fill) !important;
}

.gform_wrapper.gravity-theme .gf_progressbar_percentage span {
	display: none;
}

/* Multi-step indicators (numbered steps) */
.gform_wrapper.gravity-theme .gf_page_steps {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: var(--gf-step-gap-y) var(--gf-step-gap-x);
	margin: 0 0 calc(var(--gf-field-gap) * 1.5);
	padding: 0;
	border: 0;
	list-style: none;
}

.gform_wrapper.gravity-theme .gf_step {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	font-size: 14px;
	color: var(--neutral-400);
	opacity: 1;
}

.gform_wrapper.gravity-theme .gf_step span {
	padding: 0;
}

.gform_wrapper.gravity-theme .gf_step_number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--gf-step-size);
	height: var(--gf-step-size);
	line-height: 1;
	font-size: 13px;
	font-weight: 600;
	color: var(--neutral-500);
	background: var(--white);
	border: 1px solid var(--gf-field-border);
	border-radius: 50%;
}

.gform_wrapper.gravity-theme .gf_step_active {
	color: var(--secondary-600);
}

.gform_wrapper.gravity-theme .gf_step_active .gf_step_number,
.gform_wrapper.gravity-theme .gf_step_completed .gf_step_number {
	background: var(--secondary-600);
	border-color: var(--secondary-600);
	color: var(--white);
}

/* Completed step: plugin paints the circle via ::before and the check via ::after */
.gform_wrapper.gravity-theme .gf_step_completed .gf_step_number::before {
	top: -1px;
	left: -1px;
	width: var(--gf-step-size);
	height: var(--gf-step-size);
	background: var(--secondary-600);
	border: 1px solid var(--secondary-600);
	border-radius: 50%;
}

.gform_wrapper.gravity-theme .gf_step_completed .gf_step_number::after {
	font-size: 14px;
	color: var(--white);
}

/* Footer / page footer: full-width buttons with centered labels */
.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	width: 100%;
	margin: var(--gf-field-gap) 0 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.gform_wrapper.gravity-theme .gform_footer .gform_button,
.gform_wrapper.gravity-theme .gform_footer button[type="submit"],
.gform_wrapper.gravity-theme .gform_page_footer input[type="submit"],
.gform_wrapper.gravity-theme .gform_page_footer .gform_button,
.gform_wrapper.gravity-theme .gform_page_footer button,
.gform_wrapper.gravity-theme .gform_page_footer .gform_next_button,
.gform_wrapper.gravity-theme .gform_page_footer .gform_previous_button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex: 1 1 100%;
	width: 100% !important;
	min-height: 57px;
	margin: 0 !important;
	padding: var(--gf-field-pad-y) var(--gf-field-pad-x) !important;
	font-family: 'District Pro', sans-serif;
	font-size: 18px;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--white) !important;
	background: var(--secondary-600) !important;
	border: 1px solid var(--secondary-600) !important;
	border-radius: var(--gf-field-radius) !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: var(--hover-transition);
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_footer .gform_button:hover,
.gform_wrapper.gravity-theme .gform_footer button[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_page_footer input[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_page_footer .gform_button:hover,
.gform_wrapper.gravity-theme .gform_page_footer button:hover,
.gform_wrapper.gravity-theme .gform_page_footer .gform_next_button:hover {
	background: var(--secondary) !important;
	border-color: var(--secondary) !important;
	color: var(--white) !important;
}

/* Previous button: outlined secondary treatment */
.gform_wrapper.gravity-theme .gform_page_footer .gform_previous_button {
	background: var(--white) !important;
	color: var(--secondary-600) !important;
	border: 1px solid var(--secondary-600) !important;
}

.gform_wrapper.gravity-theme .gform_page_footer .gform_previous_button:hover {
	background: var(--secondary-600) !important;
	color: var(--white) !important;
	border-color: var(--secondary-600) !important;
}

.gform_wrapper.gravity-theme .gform_heading {
	margin-bottom: var(--gf-field-gap);
}

.gform_wrapper.gravity-theme .gform_title {
	margin: 0 0 0.5em;
}

/* Spinner */
.gform_wrapper.gravity-theme .gform_ajax_spinner {
	margin-left: 8px;
	vertical-align: middle;
}
/* ===============
   IRA Button (WPBakery element)
   =============== */
.ira-btn-container {
	display: inline-block;
	margin-right: 1em;
}

a.ira-btn {
	display: inline-flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 16px 24px;
	gap: 8px;
	text-decoration: none;
	transition: var(--hover-transition) !important;
	border-radius: 8px;
	font-weight: 400;
	font-size: 18px;
	line-height: 1;
	letter-spacing: -0.01em;
	height: 57px;
}

.ira-btn__arrow {
	display: inline-flex;
	flex-shrink: 0;
	color: currentColor;
}

.ira-btn__arrow svg {
	display: block;
	width: 18px;
	height: 18px;
}

a.ira-btn.ira-btn--primary {
	background-color: var(--secondary-600);
	color: var(--white) !important;
	border: 1px solid var(--primary-400);
}

a.ira-btn.ira-btn--primary:hover {
	background-color: var(--primary-400);
	color: var(--white) !important;
	border-color: var(--primary-400);
}

a.ira-btn.ira-btn--outlined {
	background-color: transparent;
	color: var(--secondary-600);
	border: 1px solid var(--secondary-600);
}

a.ira-btn.ira-btn--outlined:hover {
	background-color: var(--secondary);
	color: var(--white);
	border-color: var(--secondary);
}

a.ira-btn.ira-btn--white {
	background-color: var(--white);
	color: var(--secondary-600);
	border: 1px solid var(--white);
}

a.ira-btn.ira-btn--white:hover {
	background-color: var(--primary-0);
	border-color: var(--primary-0);
}

a.ira-btn.ira-btn--unboxed {
	background-color: transparent;
	color: var(--secondary-600);
	border: none;
}

a.ira-btn.ira-btn--unboxed:hover {
	color: var(--secondary);
}

a.ira-btn.ira-btn--text_only {
	background: none;
	border: none;
	color: var(--secondary-600);
	text-decoration: underline;
}

a.ira-btn.ira-btn--text_only:hover {
	color: var(--secondary);
}

.style-dark {
	
	a.ira-btn.ira-btn--outlined {
        color: var(--white);
        border: 1px solid var(--primary-200);
		background:transparent;
    }
	
	a.ira-btn.ira-btn--outlined:hover {
		color: var(--white);
		border: 1px solid var(--white);
		background:transparent;
	}
	
	a.ira-btn.ira-btn--white:hover {
		background-color: var(--secondary-200);
		border-color: var(--secondary-200);
		color: var(--secondary-600);
	}
	
	a.ira-btn.ira-btn--unboxed {
		color: var(--white);
	}
	
	a.ira-btn.ira-btn--unboxed:hover {
		color: var(--secondary-200);
	}
	
	a.ira-btn.ira-btn--text_only {
		color: var(--white);
	}
	
	a.ira-btn.ira-btn--text_only:hover {
		color: var(--secondary-200);
	}

}

/* ===============
   IRA Icon Box (WPBakery element)
   =============== */
/* Equal-height boxes in WPBakery rows: pass height from .uncell down to .ira-icon-box */
.uncont:has(> .ira-icon-box) {
	height: 100%;
}

.ira-icon-box {
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	padding: 2rem;
	border-radius: 1rem;
	height: 100%;
}

.ira-icon-box--align-left {
	text-align: left;
	align-items: flex-start;
}

.ira-icon-box--align-center {
	text-align: center;
	align-items: center;
}

.ira-icon-box--align-right {
	text-align: right;
	align-items: flex-end;
}

.ira-icon-box__icon-wrap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.ira-icon-box__icon-wrap--boxed {
	padding: 1rem;
	border-radius: 0.5rem;
}

.ira-icon-box__icon-wrap--boxed .ira-icon-box__icon {
	display: block;
}

.ira-icon-box__icon.ira-icon-box__icon--small {
	font-size: 18px;
	width: 18px;
	height: 18px;
}

.ira-icon-box__icon.ira-icon-box__icon--medium {
	font-size: 36px;
	width: 36px;
	height: 36px;
}

.ira-icon-box__icon.ira-icon-box__icon--regular {
	font-size: 48px;
	width: 48px;
	height: 48px;
}

.ira-icon-box__icon.ira-icon-box__icon--large {
	font-size: 72px;
	width: 72px;
	height: 72px;
}

.ira-icon-box__icon-wrap--boxed .ira-icon-box__icon--small {
	font-size: 18px;
}

.ira-icon-box__icon-wrap--boxed .ira-icon-box__icon--medium {
	font-size: 36px;
}

.ira-icon-box__icon-wrap--boxed .ira-icon-box__icon--regular {
	font-size: 48px;
}

.ira-icon-box__icon-wrap--boxed .ira-icon-box__icon--large {
	font-size: 72px;
}

.ira-icon-box__heading {
	margin-top: .5rem;
}

.ira-icon-box__content {
	margin-top: .5rem;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.ira-icon-box__content.text-lead {
	font-size: 1.125em;
}

.ira-icon-box__content.text-small {
	font-size: 0.875em;
}

.ira-icon-box__link-wrap {
	margin-top: auto;
	margin-bottom: 0;
	padding-top: 1.5rem
}

.ira-icon-box__link {
	display: inline-flex;
	align-items: center;
	font-size: 1.125em;
	gap: 8px;
	text-decoration: none;
	transition: var(--hover-transition) !important;
}

a.ira-icon-box__link.text-accent-color:hover {
	color: var(--secondary) !important;
}

.ira-icon-box__link-arrow {
    color: currentColor;
    margin-top: 2px;
}

.ira-icon-box__link-arrow svg {
	display: block;
	width: 18px;
	height: 18px;
}

/* ===============
   IRA Testimonial (WPBakery element)
   =============== */
/* .ira-testimonial-section {
} */

.ira-testimonial-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 3rem;
}

.ira-testimonial-header__title-col {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 700px;
}

.ira-testimonial-header__title {
	margin: 0;
}

.ira-testimonial-header__rating-col {
	flex: 0 0 auto;
}

.ira-testimonial-rating {
	width: fit-content;
	text-align: right;

	@media (max-width: 984px) {
		text-align: left;
	}
}

.ira-testimonial-rating__value {
	font-size: clamp(48px, 39.8182px + 2.2727vw, 68px);
	font-weight: 600;
	line-height: 1;
}

.ira-testimonial-rating__reviews {
	margin-top: 0.25rem;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4;
}

.ira-testimonial-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 4rem;
}

@media (max-width: 991px) {
	.ira-testimonial-grid {
		grid-template-columns: 1fr;
	}
}

/* Show All: masonry-style gallery (same 3-col / single-col breakpoints as grid) */
.ira-testimonial-grid--masonry {
	display: block;
	column-count: 3;
	column-gap: 4rem;
}

@media (max-width: 991px) {
	.ira-testimonial-grid--masonry {
		column-count: 1;
	}
}

.ira-testimonial-grid--masonry .ira-testimonial__card {
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	margin-bottom: 4rem;
	width: 100%;
}

.ira-testimonial__card {
	display: flex;
	flex-direction: column;
}

.ira-testimonial__stars {
	display: flex;
	align-items: center;
	gap: 0.15rem;
	margin-bottom: 0.75rem;
}

.ira-testimonial__star {
	display: inline-flex;
	color: var(--primary-400);
}

.ira-testimonial__star-svg {
	display: block;
	width: 31px;
	height: 29px;
}

.ira-testimonial__star--half {
	width: 15.5px; /* show only left half of star */
	max-width: 15.5px;
	overflow: hidden;
	flex-shrink: 0;
}

/* Keep SVG full size so the clipped half matches other stars */
.ira-testimonial__star--half .ira-testimonial__star-svg {
	min-width: 31px;
	width: 31px;
	flex-shrink: 0;
}

.ira-testimonial__star--empty {
	color: var(--neutral-200);
}

.ira-testimonial__quote {
	margin: 0 0 1rem 0;
}

.ira-testimonial__quote p:last-child {
	margin-bottom: 0;
}

.ira-testimonial__author {
	margin-top: 1rem;
}

.ira-testimonial__author-name {
	display: block;
	font-style: normal;
}

.ira-testimonial__author-meta {
	display: block;
	color: var(--neutral-300);
}

/* ===============
   IRA Video (WPBakery element)
   =============== */
.ira-video {
	display: block;
}

.ira-video__trigger {
	display: block;
	text-decoration: none;
	color: inherit;
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	transition: var(--hover-transition);
}

.ira-video__trigger:hover .ira-video__play {
	opacity: 1;
	transform: scale(1.05);
}

.ira-video__preview-wrap {
	display: block;
	position: relative;
	aspect-ratio: 16 / 9;
	background: var(--neutral-100);
}

.ira-video__preview {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ira-video__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--secondary-600);
	opacity: 0.9;
	transition: var(--hover-transition);
}

.ira-video__play svg {
	width: 80px;
	height: 80px;
	max-width: 20%;
}

/* ===============
   IRA Bio Card (WPBakery element)
   =============== */
   .ira-bio-card {
	display: block;
	background: var(--white);
	border: 1px solid var(--primary-100);
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: var(--hover-transition);
}

.ira-bio-card:hover {
	border-color: var(--primary-200);
}

.ira-bio-card__image-wrap {
	position: relative;
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
}

.ira-bio-card__image {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

.ira-bio-card__body {
	padding: 1.25rem;
}

.ira-bio-card__name {
	margin: 0 0 0.25rem 0;
	font-size: inherit;
	font-weight: 600;
	line-height: 1.2;
}

.ira-bio-card__title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0;
	font-size: inherit;
	font-weight: 400;
	line-height: 1.3;
}

.ira-bio-card__linkedin {
	display: inline-flex;
	flex-shrink: 0;
	color: #0a66c2;
}

.ira-bio-card__linkedin-icon {
	width: 20px;
	height: 20px;
}

/* ===============
   WPBakery saved templates
   =============== */

.ira-steps {
	
	h5 {
		color: var(--neutral-400);

		a {
			color: var(--secondary-600);

			&:hover {
				color: var(--secondary) !important;
			}
		}
	}
	
	.style-dark {
		
		.text-accent-color {
			color: #fff !important;
		}
		
		h5 {
			color: var(--neutral-0);

			a {
				color: var(--secondary-400);

				&:hover {
					color: var(--secondary-600) !important;
				}
			}
		}	
	}
}

.ira-price-box {
	
	.ira-btn-container, .ira-btn {
		width: 100%;
		margin-top: 8px !important;
	}
	
	.vc_custom_heading_wrap.heading-inline {
		margin-top: 0 !important;
		display: block;

		.heading-text.el-text {
			display: flex;
			gap: 8px;
			align-items: baseline;
		}
	}
	
	.uncode-wrapper {
		margin: 0 !important;
	}
}

/* ===============
   Widget: IRA Social Share
   =============== */

.ira-social-share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ira-social-share__item {
	margin: 0;
	padding: 0;
}

.ira-social-share__link {
	display: inline-flex;
	align-items: center;
	line-height: 0;
	color: var(--primary, #0b1832);
	transition: var(--hover-transition);
}

.ira-social-share__link:hover,
.ira-social-share__link:focus-visible {
	opacity: 0.75;
}

.ira-social-share__icon {
	display: block;
}

/* ===============
   Resources & Blog Posts
   =============== */

.single-resource {
	.post-media {
		border-radius: 16px;
		overflow: hidden;
	}
	
	.post-title {
		font-size: clamp(30px, 25.9091px + 1.1364vw, 40px);
	}
	
	.post-info {
		display: none;
	}
}

.single-post {
	.post-media {
		border-radius: 16px;
		overflow: hidden;
	}
	
	.post-title {
		font-size: clamp(30px, 25.9091px + 1.1364vw, 40px);
	}
	

}

.post-content .post-info {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0;
	
	a {
		color: var(--secondary-600);
		text-decoration: underline;
		
		&:hover {
			color: var(--secondary);
		}
	}
	
	.author-info { display: none; }
}

	.t-entry-meta {
		display: inline-block;
		margin-right: 8px !important;
		
		.t-entry-category, .t-entry-date {
			font-size: 16px !important;
			
				a {
					color: var(--secondary-600) !important;
					text-decoration: underline;

					&:hover {
						color: var(--secondary);
					}
				}
		}
	}

.sidebar-widgets.gform_widget, .sidebar-widgets#block-2 {
    background: var(--neutral-100);
    padding: 32px;
    border-radius: 16px;
	
	h3 {
		padding: 0 !important;
		border: none !important;
		font-weight: 600;
	}
	
}

.wp-block-group.has-primary-0-background-color, .wp-block-group.has-gray-100-background-color {
	background: var(--primary-0);
	border-radius: 1rem;
	margin-top: 1rem;
}

.wp-block-list.is-style-checkmark {
    --checkmark-size: 1.5em;
    list-style: none !important;
    padding-left: 0 !important;
}

.wp-block-list.is-style-checkmark li {
    padding-left: calc(var(--checkmark-size) + .5rem);
    position: relative;
}

.wp-block-list.is-style-checkmark li:before {
    content: "\e116";
    font-family: 'uncodeicon' !important;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.wp-block-list.is-style-checkmark-green {
    --checkmark-size: 1.5rem;
    list-style: none !important;
    padding-left: 0 !important;
}

.wp-block-list.is-style-checkmark-green li {
    padding-left: calc(var(--checkmark-size) + .5rem);
    position: relative;
}

.wp-block-list.is-style-checkmark-green li:before {
    content: "\e116";
    font-family: 'uncodeicon' !important;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

/* ===============
   Shortcode: Article CTA [article_cta]
   =============== */

.ira-article-cta {
	margin: 1.75em 0;
	border-radius: 16px;
	overflow: hidden;
	color: var(--primary);
	box-shadow: 0 1px 3px rgba(11, 24, 50, 0.08);
}

.ira-article-cta__grid {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	align-items: stretch;
	min-height: 0;
}

.ira-article-cta__main {
	background: var(--primary-0);
	padding: clamp(24px, 4vw, 40px);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.25rem;
}

.ira-article-cta__body {
	width: 100%;
	font-size: 1rem;
	line-height: 1.55;
}

.ira-article-cta__body > :first-child {
	margin-top: 0;
}

.ira-article-cta__body > :last-child {
	margin-bottom: 0;
}

.ira-article-cta__body h1,
.ira-article-cta__body h2,
.ira-article-cta__body h3,
.ira-article-cta__body h4 {
	color: var(--primary);
	margin: 0 0 0.5em;
	font-weight: 700;
	line-height: 1.25;
}

.ira-article-cta__body p {
	margin: 0 0 0.85em;
}

.ira-article-cta__body ul,
.ira-article-cta__body ol {
	margin: 0 0 0.85em 1.1em;
	padding: 0;
}

.ira-article-cta__body a {
	color: var(--primary-500);
	text-decoration: underline;
}

.ira-article-cta__body a:hover,
.ira-article-cta__body a:focus-visible {
	color: var(--primary-400);
}

/* Match IRA Button (WPBakery): `ira-btn ira-btn--primary` — see .ira-btn rules above. */
.ira-article-cta__main > .ira-btn-container {
	margin-top: auto;
}

.ira-article-cta__aside {
	background: var(--primary-200);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: clamp(20px, 4vw, 36px);
	min-height: 180px;
}

.ira-article-cta__icon-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 220px;
}

.ira-article-cta__svg {
	display: block;
	width: 100%;
	height: auto;
	max-width: 200px;
}

.ira-article-cta__icon-img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 200px;
	object-fit: contain;
}

@media (max-width: 699px) {
	.ira-article-cta__grid {
		grid-template-columns: 1fr;
	}

	.ira-article-cta__aside {
		min-height: 140px;
	}
}

/* ===============
   Unique Style Classes
   =============== */

@media (max-width: 959px) {
.hide-bg-mobile .srcset-bg {
	background-image: none !important;
}
}

.navy500-right-corner {
	background: #003384;
	background: linear-gradient(190deg, rgba(0, 51, 132, 1) 0%, rgba(11, 24, 50, 1) 50%) !important;
}
.border-radius-top-0 img {
	border-radius:0 0 16px 16px !important;
}

/* Product CTA Grid */
a.product-cta-item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: var(--primary);
    background: #F4F2FC;
    border: 2px solid #F4F2FC;
    border-radius: 16px;
    padding: 18px 24px;
    gap: 18px;
}

a.product-cta-item:hover {
  border:2px solid #2C00BD;
}

.product-cta-item-title {
  display: flex;
  flex-wrap: nowrap;
  gap:18px;
}

.product-cta-item-title h5 {
    align-self: center;
    margin: 0;
    padding: 0;
    text-align: left;
}

.product-cta-arrow {
    display: flex;
    justify-content: center;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    background: var(--secondary-0);
    background-color: #2C00BD;
}

.product-cta-arrow img {
    width: 18px;
}

@media screen and (min-width: 959px) and (max-width: 1200px) {
  .product-cta-arrow {
    display: none;
  }
}


/* Footer CTA with Keypoints */
.footer-feature-list {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: stretch;
  gap: 24px;
  width:100%;
  padding:24px 48px;
  border-radius:16px;
  border:1px solid #9EC2FB;
  background: rgba(0, 74, 194, 0.5);
  background: linear-gradient(180deg, rgba(0, 74, 194, 0.5), rgba(0, 74, 194, 0.15));
}

.footer-feature-item {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#fff;
}

.footer-feature-item p {
  margin-top:0;
  font-size:18px;
  font-weight:500;
  color:#EAF2FF;
}

.footer-feature-spacer {
  position:relative;
  display:block;
  height:1px;
  width:100%;
  background: #4E84DB;
}

@media (max-width: 568px) {
  .footer-feature-list {
    padding:24px 24px;
  }
}

/* TEMP FIX TO HIDE TESTIMONIAL META */
.ira-testimonial__author-meta {
	display:none !important;
}

.grecaptcha-badge {
	visibility: hidden;
}