/*
* Custom CSS
*
* Any custom theme CSS can be added below. All styles will be included on every front-end page.
*/



/************************************
 * Layout & General Structure
 ************************************/
body {
	overflow-x: hidden !important;
}

/************************************
 * Utilities & Helper Classes
 ************************************/
.mt-0 { margin-top: 0 !important; }
.mb-0 { margin-bottom: 0 !important; }
.pt-0 { padding-top: 0 !important; }
.pb-0 { padding-bottom: 0 !important; }
.mb-3 { margin-bottom: 3rem !important; }
.mt-5em-n { margin-bottom: -5em !important; z-index: 50; }
.pt-10 { padding-top: 10em !important; }


/************************************
 * Hero
 ************************************/

.hero--image {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/************************************
 * Frontpage
 ************************************/

 .differentiator-blockquote__inner {
	.differentiator-blockquote__text {
		font-size: 1.5rem;
		@media (min-width: 768px) {
			font-size: 2rem;
		}
	}
}


/************************************
 * Filters & Banks
 ************************************/
.js-filter {
	position: relative;
	z-index: 50;
	.js-filter-form-locations {
		text-align: center;
		margin-top: -4rem;
		margin-bottom: 2rem;
   		@media (min-width: 992px) {
			margin-top: -5.5rem;
		}
		select {
			background: var(--color-lightest);
			font-family: var(--font-family-headings, Crimson Pro, sans-serif);
			padding: 0.5rem 1.5rem;
			min-width: 200px;
			border: 1px solid var(--color-lighter);
			border-radius: var(--btn-border-radius);
			appearance: none;
			  -webkit-appearance: none;
			  -moz-appearance: none;
			  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='12' viewBox='0 0 24 24' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
			  background-repeat: no-repeat;
			  background-position: right 1rem center;
		}
	}
}

.banks--container {
	max-width: 1200px;
	margin: 0 auto;
	#select-bank {
		background: var(--color-lightest);
		font-family: var(--font-family-headings, Crimson Pro, sans-serif);
		padding: 0.5rem 1.5rem;
		min-width: 200px;
		border: 1px solid var(--color-lighter);
		border-radius: var(--btn-border-radius);
		appearance: none;
		  -webkit-appearance: none;
		  -moz-appearance: none;
		  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='12' viewBox='0 0 24 24' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
		  background-repeat: no-repeat;
		  background-position: right 1rem center;
	}
	.render-half {
		div {
			h2 {
				color: var(--color-primary);
			}
			padding: calc(var(--card-spacing-base)*3);
			border-radius: var(--card-border-radius);
			border: 1px solid var(--color-lighter);
			background: var(--color-lightest);
		}
	}
}

/************************************
 * Cards & Document Lists
 ************************************/
.logo-container {
	display: grid;
	grid-template-columns: 1fr;
	@media (min-width: 500px) {
		grid-template-columns: 1fr 1fr;
	}
	@media (min-width: 768px) {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

.cards--short .card {
	min-height: 260px;
}

.document-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1em;
	max-width: 1000px;
	margin: 0 auto;
}
.document-list a {
	justify-content: left;
	word-break: break-all;
}

/************************************
 * Locations & Team Lists
 ************************************/
.locations--list-container {
  position: relative;
  padding: calc(var(--card-spacing-base) * 3) 0;
  padding-bottom: 9rem;
  margin-bottom: -9rem;
  z-index: 1;
  &::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    background: var(--color-lightest);
    transform: translateX(-50%);
    z-index: -1;
  }
  h4.h3 {
    text-align: center;
    position: relative;
    z-index: 1;
    color: #d4bd72;
    margin-bottom: 2rem;
  }
}

.documents-list--container {
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(var(--card-min-width), 1fr));
	justify-content: start;
	&.page-content {
		max-width: 1200px;
	}
	.btn--icon {
		justify-content: flex-start;
		text-wrap: auto;
	}
}

.locations-list, .team-list {
  max-width: 1200px;
  margin: 0 auto;
  justify-items: center;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  grid-gap: 2rem !important;
  .card {
	  position: relative;
	  background: var(--color-white);
	  z-index: 50;
        padding: calc(var(--card-spacing-base) * 1);
    h3 {
	    margin-bottom: 0.25rem;
	    line-height: 1.1;
	    &:after {
		    content: none;
	    }
    }
    .location-title, .name-title {
	    position: relative;
	    margin-bottom: var(--card-spacing-base);
	    &:after {
		  content: "";
		  position: absolute;
		  left: 0;
		  width: 100px;
		  height: 1px;
		  background-color: var(--color-primary);
		  top: calc(100% + var(--card-spacing-base));
	    }
	    .location-brand {
		    font-style: italic;
		    font-size: 14px;
	    }
    }
    p {
	margin-bottom: 0;
	font-size: 16px;
    }
    .icon {
	margin-right: 5px;
    }
    .btn.btn--wire {
	font-family: var(--font-family-default);
	padding: 0.25rem 1rem;
	font-size: 12px;
	font-weight: 500;
	margin-top: 0.5rem;
    }
    .card__content {
	display: flex;
	flex-direction: column;
	gap: 1rem;
    }
    .location-label {
	color: var(--color-primary);
	font-size: 12px;
	letter-spacing: 1px;
	font-weight: 500;
	text-transform: uppercase;
	margin-bottom: 0.25rem;
    }
    .location-contact,
    .location-branchcontact {
		a {
		font-size: 16px;
		text-decoration: underline;
		color: var(--color-black);
		}
    }
    .location-branchcontact {
		p {
		line-height: 1.2;
		margin-bottom: 0.5rem;
		}
    }
  }
  @media screen and (min-width: 590px) {
    grid-gap: 2rem !important;
    .card {
	padding: calc(var(--card-spacing-base) * 2);
    }
  }
  @media screen and (min-width: 1200px) {
    grid-gap: 3rem !important;
    .card {
	padding: calc(var(--card-spacing-base) * 3);
    }
  }
}

.team-list {
	max-width: 1200px;
  margin: 0 auto;
  justify-items: center;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  grid-gap: 2rem !important;
  img {
	  border-radius: var(--card-border-radius) var(--card-border-radius) 0 0;
  }
  .card {
	  padding: 0;
	  background-color: var(--color-lighter);
	  border-color: var(--color-light);
  }
  .card-content {
	  padding: 0 calc(var(--card-spacing-base) * 2) calc(var(--card-spacing-base) * 2);
	  .name-title {
		  margin-bottom: 0.5rem;
		  &:after {
			  position: relative;
			  display: inline-block;
			  margin-top: 0.5rem;
			  top: auto;
		  }
	  }
	  .position {
		  font-style: italic;
	  }
  }
  @media screen and (min-width: 590px) {
	grid-gap: 2rem !important;
  }
}

/************************************
 * Page Content & Typography
 ************************************/
.page-template .content-container.is-style-light {
	--content-container-color-bg: var(--color-lightest);
}

.page-content {
	.has-xl-font-size {
		font-size: calc(var(--font-size-scaling-default)*1.25) !important;
	}
	.cards--centered {
		justify-content: center;
	}
	.content-container.is-style-transparent {
		padding: calc(var(--content-container-spacing-base) * 1);
		@media screen and (min-width: 1200px) {
			padding: calc(var(--content-container-spacing-base) * var(--content-container-padding-mult));
		}
	}
	.content-container__content {
		img {
			border-radius: var(--card-border-radius);
		}
		.content-container.content-sidebar {
			padding-top: 3em;
			border-radius: 0;
			border-top: 2px solid var(--color-primary);
			@media screen and (min-width: 1200px) {
				border-left: 2px solid var(--color-primary);
				border-top: 0;
				padding-top: 0;
			}
			h3 {
				font-size: 1.25rem;
				text-transform: uppercase;
				font-weight: 400;
				margin-bottom: 2rem;
				letter-spacing: 2.8px;
				color: var(--color-primary);
			}
		}	
	}
	blockquote {
		border: 0;
		  background: 0;
		  padding: calc(var(--spacing-lg) * 1) calc(var(--spacing-lg) * 2);
		  background: var(--color-lightest);
		  border: 1px solid var(--color-lighter);
		  border-radius: 10px;
		  cite {
			  margin-top: 0.5rem;
			font-size: calc(var(--font-size-scaling-default)*0.8);
		  }
	}
	.repeatable-feature-section:after {
		--feature-section-overlay: linear-gradient(10deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, .8) 85%, rgba(255, 255, 255, .7) 90%, rgba(255, 255, 255, .6) 100%);
	}

	/**
	 * Full-bleed repeatable feature section alignment fix
	 *
	 * The compiled theme CSS uses `left/right: 50vw`, which can cause a horizontal offset (gap on the left)
	 * and push the section content to the right. The standard full-bleed technique is `left/right: 50%`.
	 */
	.repeatable-feature-section:not(.wp-block .repeatable-feature-section) {
		left: 50% !important;
		right: 50% !important;
	}
	details {
		summary {
			font-size: 1.5rem;
			margin-bottom: 0.5rem;
			&::marker {
				margin-right: 1rem;
				color: var(--color-primary);
			}
		}
	}
	.two-col-list {
		columns: 1;
		-webkit-columns: 1;
		-moz-columns: 1;
		column-gap: 0;
		-webkit-column-gap: 0;
		-moz-column-gap: 0;
		@media (min-width: 1200px) {
			columns: 2;
			-webkit-columns: 2;
			-moz-columns: 2;
			column-gap: 2rem;
			-webkit-column-gap: 2rem;
			-moz-column-gap: 2rem;
		}
		li {
			margin-bottom: 0.5rem;
		}
		ul {
			margin-top: 0.25rem;
			list-style-type: circle;
			li {
				margin-bottom: 0.1rem;
				font-size: 0.9rem;
			}
		}
	}
}

/************************************
 * Navigation & Header
 ************************************/
.header__hamburger {
	padding: 0 calc(var(--header-padding-x) * 3) 0 calc(var(--header-padding-x) * 4) !important;
}

.button-burger__icon, .button-burger__icon:before, .button-burger__icon:after {
	width: 25px !important;
	height: 2px !important;
	--burger-icon-gutter: 3px !important;
}

.navigation__mobile-actions {
	display: none !important;
}

.mobile-only {
	display: none !important;
}

@media (max-width: 1199px) {
	.mobile-only {
		display: block !important;
	}
	.navigation__menu-item-toggle {
		transform: rotate(-90deg);
	}
}
.navigation--primary .navigation__submenu {
	z-index: 99;
	@media (min-width: 1200px) {
		left: -20px;
	}
	@media (min-width: 1200px) {
		.navigation__submenu--depth-1 {
			left: 100%;
		}
	}
	@media (max-width: 1199px) {
		.navigation__submenu-back {
			font-size: calc(var(--mobile-menu-item-font-size)*0.7);
			opacity: 0.7;
			letter-spacing: 3.2px;
			text-transform: uppercase;
		}
	}
	
	.navigation__submenu-item {
		text-align: center;
	}
	@media (max-width: 1199px) {
		padding: 0 3rem;
		top: calc(var(--header-margin-top) * -1 - 5px);
		li a {
			line-height: 1.2;
		}
	}
}
@media (max-width: 1199px) {
.navigation__submenu-back {
	font-size: calc(var(--mobile-menu-item-font-size)*0.7);
	opacity: 0.8;
}
}
	
.navigation__submenu-item--has-children .navigation__menu-item-toggle {
	transform: rotate(-90deg);
}

.header__cta {
	.navigation__submenu {
		border-radius: 0 0 var(--header-border-radius) var(--header-border-radius);
	}
	.header__cta-btn {
		&::before {
			mask-size: cover;
		}
		span {
			font-weight: 600;
		}
	}
}

/**
 * Header Actions dropdown (click to open)
 *
 * The theme’s compiled CSS only styles `.header__cta .header__cta-dropdown` (hover-open).
 * This mirrors that styling for the hardcoded dropdown under `.header__actions`,
 * but uses an `.is-open` class (toggled via `public/custom/scripts.js`) instead of hover.
 */
.header__action-dropdown {
	position: relative;
}

.header__action-dropdown span {
	font-weight: 600;
}

.header__action-dropdown .header__cta-dropdown {
	--submenu-color-background: var(--color-primary-600);
	--submenu-color-background-hover: var(--color-primary);
	--nav-color-text: var(--color-light);
	--submenu-expand-icon-color: var(--color-light);
	background: var(--submenu-color-background);
	border-radius: var(--header-border-radius);
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
	color: var(--submenu-color-text);
	display: block;
	font-family: var(--font-family-headings);
	left: 0;
	list-style: none;
	margin: 0;
	min-width: var(--submenu-min-width);
	opacity: 0;
	padding: 0;
	position: absolute;
	top: 100%;
	transform: translateY(10px);
	transition: all 0.2s ease;
	visibility: hidden;
	width: 100%;
	z-index: 999;
}

.header__action-dropdown:hover .header__cta-dropdown {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.header__action-dropdown.is-open .header__cta-dropdown {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.header__action-dropdown .header__cta-dropdown-item {
	background: var(--submenu-color-background);
	position: relative;
	transition: all 0.15s ease-out 0s;
	white-space: normal;
}

.header__action-dropdown .header__cta-dropdown-item-link {
	color: var(--submenu-color-text);
	display: flex;
	padding: var(--submenu-spacing) calc(var(--submenu-spacing) * 1.5);
}

.header__action-dropdown .header__cta-dropdown-item:hover {
	background: var(--submenu-color-background-hover);
}

.header__action-dropdown .header__cta-dropdown-item:last-of-type {
	border-bottom-left-radius: var(--header-border-radius);
	border-bottom-right-radius: var(--header-border-radius);
}

.header__action-dropdown .header__cta-dropdown-item:nth-of-type(1),
.header__action-dropdown .header__cta-dropdown-item:nth-of-type(2) {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.header__action-dropdown:hover .header__action-dropdown-icon,
.header__action-dropdown.is-open .header__action-dropdown-icon {
	transform: rotate(180deg);
}
.header__action-dropdown:hover .header__action.btn {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.header__action-dropdown-icon.icon {
	width: .9rem;
    height: .9rem;
	margin-left: calc(var(--submenu-spacing));
	transition: transform 0.2s ease;
}




@media (min-width: 1200px) {
    .header__cta:hover {
	    .header__cta-btn {
	    border-bottom-right-radius: 0;
    }
    }
    .header__cta .navigation__submenu-item {
	    white-space: wrap;
    }
}
   
.header__cta .header__cta-dropdown-item:nth-of-type(1) {
	border-top-right-radius: 0 !important;
	border-top-left-radius: 0 !important;
}

@media screen and (min-width: 1200px) {
	.navigation--primary .navigation__menu-item-link:hover {
		color: var(--color-primary);
	}
}

/************************************
 * Forms & Gravity Forms
 ************************************/
.gform_required_legend {
	font-size: 14px;
	font-style: italic;
}
.gform_wrapper.gform-theme--framework {
	max-width: none;
	input, select {
		font-size: 16px !important;
	}
	.gform_next_button {
		background-color: var(--color-primary) !important;
		color: var(--color-white) !important;
		&:hover {
			background-color: var(--color-primary-dark) !important;
		}
	}
	input[type=radio]::before {
		background-color: var(--color-primary) !important;
	}
	.gfield.gfield--type-choice.image-choices-field {
		.gfield_radio {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
			gap: 1rem;
			div {
				label {
					font-size: 14px;
					font-weight: 600;
					text-transform: uppercase;
				}
				.image-choices-choice-image-wrap {
					background-color: transparent;
					background-size: contain;
				}
			}
		}
	}
	.image-choices-field[class*=ic-theme--] .image-choices-choice-selected .image-choices-choice-text {
		color: var(--color-primary);
	}
	.ic-theme--simple .image-choices-choice-selected .image-choices-choice-image-wrap:after {
		box-shadow: inset 0 0 0 6px var(--color-primary);
	}
}




/************************************
 * Login Form (LWA)
 ************************************/
.lwa-form {
  max-width: 400px;
  margin: 2rem auto;
  padding: 2rem;
  background-color: #ffffff;
  border-radius: 1rem; /* match theme's card style */
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  font-family: inherit;
  color: #333;
}
.lwa-form label {
  display: block;
  font-weight: 600;
  font-size: 0.95rem;
  margin-bottom: 0.5rem;
  color: #2e2e2e;
}
.lwa-form input[type="text"],
.lwa-form input[type="password"] {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  font-size: 1rem;
  margin-bottom: 1.25rem;
  background-color: #f8f8f8;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.lwa-form input:focus {
  border-color: #b69737;
  background-color: #fff;
  outline: none;
}
.lwa-form .lwa-remember {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  margin-bottom: 1.25rem;
  color: #555;
}
.lwa-form .lwa-remember input[type="checkbox"] {
  margin-right: 0.5rem;
}
.lwa-form .lwa-links {
  text-align: right;
  font-size: 0.875rem;
  margin-top: 0.5rem;
}
.lwa-form .lwa-links a {
  color: #b69737;
  text-decoration: none;
}
.lwa-form .lwa-links a:hover {
  text-decoration: underline;
}
.lwa-form .lwa-status.lwa-error {
  background-color: #ffecec;
  color: #b00020;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
  font-weight: 600;
  font-size: 0.9rem;
}
.lwa-form #lwa_wp-submit {
	width: 100%;
}

/************************************
 * Divisions Subnav
 ************************************/
.secondary-child-nav {
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.1);
  width: 100%;
  z-index: 5;
  display: none;
  justify-content: center;
  pointer-events: none;
  @media (min-width: 500px) {
	  display: flex;
  }
  .secondary-child-nav__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  .secondary-child-nav__items {
    position: relative;
    display: flex;
    gap: 2em;
    justify-content: center;
    padding: 0.5rem 2rem;
    pointer-events: auto;
    z-index: 2;
    a {
	color: var(--color-white);
	font-family: var(--font-family-headings);
	font-weight: 600;
	font-size: 20px;
	opacity: 0.8;
	text-decoration: none;
	&.active {
	  color: var(--color-primary-400);
	  opacity: 1;
	}
    }
  }
}

/************************************
 * Footer & Quicklinks
 ************************************/

 .thirdparty-embed--scale {
	--embed-width: 440;
	--embed-height: 200;
	width: calc(var(--embed-width) * 1px);
	max-width: 100%;
}

.thirdparty-embed--scale iframe {
	width: calc(var(--embed-width) * 1px);
	height: calc(var(--embed-height) * 1px);
	border: 0;
	transform-origin: 0 0;
}

/* Below 440px: scale down to fit viewport width */
@media (max-width: 440px) {
	.thirdparty-embed--scale {
		height: calc(var(--embed-height) * (100vw / var(--embed-width)));
		overflow: hidden;
	}

	.thirdparty-embed--scale iframe {
		transform: scale(calc(100vw / var(--embed-width)));
	}
}
.footer__icons {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.footer__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 8px;
	border: 1px solid transparent;
	background: transparent;
	transition: background-color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

.footer__icon img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.footer__icon:hover,
.footer__icon:focus-visible {
	opacity: 0.8;
}

/**
 * Third-party iframe embed scaling (no control over iframe contents)
 *
 * Use with markup like:
 *   <div class="thirdparty-embed thirdparty-embed--scale">...<iframe>...</iframe>...</div>
 *
 * JS in `public/custom/scripts.js` will set a transform scale based on wrapper width.
 */
.thirdparty-embed--scale {
	width: 100%;
	max-width: 440px;
	overflow: hidden;
}

.thirdparty-embed--scale iframe {
	display: block;
	width: 440px;
	max-width: none;
	height: 200px;
	border: 0;
	transform-origin: 0 0;
}

.footer-quicklinks {
	h3 {
		color: var(--color-dark);
		font-size: 1.25rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 1px;
		margin-bottom: 1rem;
	}
	.footer-quicklinks__items {
		.footer-quicklinks__icon {
			color: var(--color-primary-dark);
		}
		.footer-quicklinks__item {
			border: 1px solid transparent;
			h3 {
				color: var(--color-dark);
				transition: color 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
			}
		}
		.footer-quicklinks__item:hover {
			background: var(--color-lightest);
			border: 1px solid var(--color-lighter);
			box-shadow: none;
			transform: none;
			h3 {
				color: var(--color-primary);
				transition: color 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
			}
			.footer-quicklinks__icon {
				color: var(--color-primary);
			}
		}
	}
}

/************************************
 * Sales Portal
 ************************************/
.salesportal--container {
	max-width: 1000px;
	margin: 0 auto;
	.portal-subnav {
		position: relative;
		z-index: 50;
		margin-bottom: 3rem;
		div {
			display: flex;
			gap: 2em;
			justify-content: center;
			margin-top: -2.5rem;
			a {
				color: var(--color-white);
				font-family: var(--font-family-headings);
				font-weight: 600;
				font-size: 20px;
				opacity: 0.8;
				&.active {
					color: var(--color-primary-400);
					opacity: 1;
				}
			}
		}
	}
	.salesportal--content {
		display: flex;
		.salesportal--content-files {
			flex: 1 1 50%;
			.file--subcat {
				margin-bottom: 0.5rem;
			}
		}
		.salesportal--content-freeresources {
			flex: 1 1 50%;
			margin-top: 1rem;
			div {
				background: var(--color-lightest);
				border-radius: var(--card-border-radius);
				border: 1px solid var(--color-lighter);
				padding: calc(var(--card-spacing-base) * 3);
			 }
		 }
	}
	
}

/************************************
 * User Dashboard
 ************************************/

.page-template-template-page-userdashboard {
	.dashboard--container {
		max-width: 1200px;
		.dashboard--content {
			display: flex;
			gap: 4rem;
			> div {
				flex: 1 1 50%;
				&#profile-details {
					background: var(--color-lightest);
					border-radius: var(--card-border-radius);
					border: 1px solid var(--color-lighter);
					padding: calc(var(--card-spacing-base) * 2);
					h2 {
						color: var(--color-primary);
					}
				}
			}
		}
		#marketing-order-table {
			th {
				background: var(--color-lightest);
				border-bottom: 1px solid var(--color-lighter);
				border-top: 1px solid var(--color-lighter);
				font-weight: 600;
				font-size: 14px;
				text-transform: uppercase;
				letter-spacing: 1px;
			}
		}
	}
}

/************************************
 * Marketing Products
 ************************************/

.page-template-template-page-marketing {
	.marketing-products--container {
		max-width: 1200px;
		.marketing-products--content {
			display: flex;
			gap: 4rem;
			> div {
				flex: 1 1 50%;
				&:last-child {
					background-color: var(--color-lightest);
					border-radius: var(--card-border-radius);
					border: 1px solid var(--color-lighter);
					padding: calc(var(--card-spacing-base) * 2);
					label {
						color: var(--color-dark);
						font-size: 12px;
						letter-spacing: 1px;
						font-weight: 500;
						text-transform: uppercase;
						margin-bottom: 0.25rem;
					}
					.login-remember {
						label {
							display: flex;
							gap: 0.5rem;
						}
					}
					.input {
						display: block;
						border-radius: 6px;
						padding: .5rem .75rem;
						&:hover {
							border-color: var(--color-primary);
						}
						&:focus {
							border-color: var(--color-primary);
							border-width: 2px;
							box-shadow: none;
						}
					}
					#wp-submit {
						transition: all .15s ease-out 0s;
						display: inline-block;
						padding: var(--btn-padding-top, var(--btn-padding-y)) var(--btn-padding-right, var(--btn-padding-x)) var(--btn-padding-bottom, var(--btn-padding-y)) var(--btn-padding-left, var(--btn-padding-x));
						border-radius: var(--btn-border-radius);
						line-height: var(--line-height-button);
						white-space: nowrap;
						text-decoration: none;
						cursor: pointer;
						font-family: var(--btn-font-family);
						font-size: var(--btn-font-size);
						font-weight: var(--btn-font-weight);
						background-color: var(--color-dark);
						color: var(--btn-color-text, var(--btn-color-text-initial));
						opacity: var(--btn-opacity);
						&:hover {
							opacity: 0.8;
							transition: all .15s ease-out 0s;
						}
					}
				}
			}
		}
	}
}

/************************************
 * Miscellaneous & Widgets
 ************************************/
.mnd-rates-widget {
	iframe {
		border: 0 !important;
	}
	.w-header {
		display: none;
	}
	.w-footer {
		display: none;
	}
}
.mnd-news-widget {
	iframe {
		border: 0 !important;
	}
	.w-header {
		display: none;
	}
	.w-footer {
		display: none;
	}
	.ss-content {
		right: 0;
	}
}
:where(.wp-block-columns.is-layout-flex.sidebar) {
	gap: 3em;
}

.button--container {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

/************************************
 * In-Content Sidebar Links
 ************************************/
.incontent-sidebar-links {
  opacity: 0;
  pointer-events: none;
  margin-top: 1rem;
  transition: opacity 0.3s ease;
  .btn {
	  justify-content: left;
	  min-width: 180px;
	  text-align: left;
  }
}
.incontent-sidebar-links.visible {
  opacity: 1;
  pointer-events: auto;
}

/************************************
 * Page Banner
 ************************************/
.page-banner__intro-text {
	a {
		color: white;
		text-decoration: underline;
	}
}
 
.page-banner__subtitle > :first-child {
  flex: 0 1 auto; /* don’t grow, shrink if needed, natural width */
}

.page-banner__subtitle > :last-child {
  flex: 1 1 0%;   /* grow and shrink to take remaining space */
}
