/**
 * Custom button classes (nb-button-*)
 *
 * Two usage patterns are supported:
 *
 * 1. Direct — class on the <a> or <button> element:
 *      <a class="nb-button-primary" href="...">Label</a>
 *
 * 2. Nectar CTA wrapper — class added to the .nectar-cta element in WPBakery.
 *    Salient renders: .nectar-cta > h6 > .link_wrap > a.link_text
 *    The "Nectar CTA compatibility" section below handles this case.
 *
 * Classes:
 *   nb-button-primary   — Yellow fill. Primary call to action.
 *   nb-button-secondary — Outlined navy. Secondary call to action.
 *   nb-button-tertiary  — Text + arrow. Tertiary link on light backgrounds.
 *   nb-button-ghost     — Text + arrow. For use on dark/image backgrounds.
 */


/* ─── Shared base ─────────────────────────────────────────────────────────── */
.nb-button,
.nb-button-primary,
.nb-button-secondary,
.nb-button-tertiary,
.nb-button-quarternary,
.nb-button-ghost {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	&[data-alignment="center"] {
		display: flex;
        width: fit-content;
        margin: 0 auto;
	}
	&.w-100 {
		width: 100%;
		h1,
		h2,
		h3,
		h4,
		h5,
		h6 {
			width: 100%;
		}
		.link_text {
			width: 100%;
			justify-content: center;
			span {
				text-align: center;
			}
		}
	}
}

#header-outer[data-lhe="default"] #top nav > ul > li.nb-button-menu > a {
	padding: 12px 24px !important;
	background: #d54439;
	text-transform: uppercase;
	color: #fff !important;
	border: 2px solid transparent !important;
	font-weight: 700 !important;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

#header-outer[data-lhe="default"] #top nav > ul > li.nb-button-menu > a:hover {
	color: #fff !important;
	background: #591813 !important;
}


/* ─── Primary: yellow fill ────────────────────────────────────────────────── */


.nb-button-primary:has(.link_wrap) {
	padding: 0;
	border: none;
}

.nb-button-primary {
	background-color: #d54439;
	color: #fff;
	border: 2px solid transparent;

	&[class*="vc_custom_"] {
		padding-top: 0 !important;
		background-color: unset;
		.cta_button {
			border-bottom: none !important;
			color: #fff !important;
			padding: 12px 24px !important;
			background-color: #d54439 !important;
			&:hover {
				background-color: #591813 !important;
				color: #fff !important;
			}
		}
	}
	.link_text {
		padding: 12px 24px !important;
	}
}

.nb-button-primary:hover,
.nb-button-primary:focus {
	background-color: #591813;
	color: #fff;
}


/* ─── Secondary: outlined navy ────────────────────────────────────────────── */

.wpb_wrapper:has(.nb-button-secondary) {
	text-align: center;
}

.nb-button-secondary:has(.link_wrap) {
	padding: 0;
	border: none;
}

.nb-button-secondary {
	background-color: #fff;
	color: #092F55;
	border: 2px solid #092F55;

	&[class*="vc_custom_"] {
		padding-top: 12px !important;
		.cta_button {
			border-bottom: none !important;
			color: #092F55 !important;
		}
	}
	.link_text {
		padding: 12px 24px !important;
	}
}

.nb-button-secondary:hover,
.nb-button-secondary:focus {
	background-color: #E0F6FD;
	color: #092F55;
	border-color: #092F55;
}


/* ─── Tertiary: text + arrow (dark, for light backgrounds) ───────────────── */

.nb-button-tertiary,
.leadership-team .wpb_text_column a {
	padding: 0 !important;
	background: transparent;
	color: #092F55;
	font-size: 16px !important;
	text-transform: uppercase !important;
	border: none;
	&[class*="vc_custom_"] {
		padding-top: 0 !important;
		.cta_button {
			border-bottom: none !important;
			color: #092F55 !important;
		}
	}
	&.w-100 {
		width: 100%;
		h1,
		h2,
		h3,
		h4,
		h5,
		h6 {
			width: fit-content;
		}
		.link_text {
			width: 100%;
			justify-content: center;
			span {
				text-align: center;
			}
		}
	}
}

.nb-button-tertiary::after,
.leadership-team .wpb_text_column a::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23092F55'/%3E%3C/svg%3E");
	display: inline-block;
	line-height: 0;
	transition: transform 0.2s ease;
	margin-left: 8px;
}

.nb-button-tertiary:hover,
.nb-button-tertiary:focus,
.leadership-team .wpb_text_column a:focus,
.leadership-team .wpb_text_column a:hover {
	color: #07538A;
}

.nb-button-tertiary:hover::after,
.nb-button-tertiary:focus::after,
.leadership-team .wpb_text_column a:hover::after
.leadership-team .wpb_text_column a:focus::after {
	transform: translateX(4px);
}

.posts-container .link-wrap a {
	padding: 0 !important;
	background: transparent !important;
	color: #092F55 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	border: none !important;
	&:after {
		content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23092F55'/%3E%3C/svg%3E");
		display: inline-block;
		line-height: 0;
		transition: transform 0.2s ease;
		margin-left: 8px;
	}
}


/* ─── Quaternary: text + arrow (light, for dark backgrounds) ───────────────── */

.nb-button-quarternary {
	background-color: #092F55;
	font-size: 16px;
	text-transform: uppercase;
	color: #fff;
	border: 2px solid #092F55;
}

.nb-button-quarternary::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23ffffff'/%3E%3C/svg%3E");
	display: inline-block;
	line-height: 0;
	transition: transform 0.2s ease;
	margin-left: 8px;
}

.nb-button-quarternary:hover::after,
.nb-button-quarternary:focus::after {
	transform: translateX(4px);
}

/* ─── Ghost: text + arrow (for dark/image backgrounds) ───────────────────── */

.nb-button-ghost {
	padding: 0 !important;
	background: transparent;
	color: #fff;
	border: none;
	&[class*="vc_custom_"] {
		padding-top: 0 !important;
		.cta_button {
			border-bottom: none !important;
			color: #fff !important;
		}
	}
}

.nb-button-ghost::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23ffffff'/%3E%3C/svg%3E");
	display: inline-block;
	line-height: 0;
	transition: transform 0.2s ease;
}

.nb-button-ghost:hover,
.nb-button-ghost:focus {
	color: rgba(255, 255, 255, 0.75);
}

.nb-button-ghost:hover::after,
.nb-button-ghost:focus::after {
	transform: translateX(4px);
}


/* ─── Nectar CTA compatibility ────────────────────────────────────────────── */
/*
 * When an nb-button-* class is added to a .nectar-cta element, Salient's
 * wrapper markup sits between the class and the actual link:
 *
 *   div.nectar-cta.nb-button-*
 *     h6 [inline style="color: ..."]   ← Salient adds this; must be neutralised
 *       span.link_wrap
 *         a.link_text                  ← styles and arrow land here
 *           span.text
 */

/* Neutralise the inline color Salient writes on the heading element.
 * The heading tag (h1–h6) is set per-element in the page builder and varies. */
.nectar-cta[class*="nb-button-"] h1,
.nectar-cta[class*="nb-button-"] h2,
.nectar-cta[class*="nb-button-"] h3,
.nectar-cta[class*="nb-button-"] h4,
.nectar-cta[class*="nb-button-"] h5,
.nectar-cta[class*="nb-button-"] h6 {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	letter-spacing: inherit !important;
	text-transform: uppercase !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Flatten the link_wrap span so it doesn't add layout */
.nectar-cta[class*="nb-button-"] .link_wrap {
	display: contents;
}

/* ── Tertiary via nectar-cta ── */

.nectar-cta.nb-button-tertiary .link_text {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	color: #092F55 !important;
	background: transparent !important;
	border: none !important;
	text-decoration: none;
	transition: color 0.2s ease;
}

.nectar-cta.nb-button-tertiary .link_text::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23092F55'/%3E%3C/svg%3E");
	display: inline-block;
	line-height: 0;
	transition: transform 0.2s ease;
}

.nectar-cta.nb-button-tertiary .link_text:hover,
.nectar-cta.nb-button-tertiary .link_text:focus {
	color: #07538A !important;
	background: transparent !important;
}

.nectar-cta.nb-button-tertiary .link_text:hover::after,
.nectar-cta.nb-button-tertiary .link_text:focus::after {
	transform: translateX(4px);
}

/* ── Ghost via nectar-cta ── */

.nectar-cta.nb-button-ghost .link_text {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	color: #fff !important;
	background: transparent !important;
	border: none !important;
	text-decoration: none;
	transition: color 0.2s ease;
}

.nectar-cta.nb-button-ghost .link_text::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23ffffff'/%3E%3C/svg%3E");
	display: inline-block;
	line-height: 0;
	transition: transform 0.2s ease;
}

.nectar-cta.nb-button-ghost .link_text:hover,
.nectar-cta.nb-button-ghost .link_text:focus {
	color: rgba(255, 255, 255, 0.75) !important;
	background: transparent !important;
}

.nectar-cta.nb-button-ghost .link_text:hover::after,
.nectar-cta.nb-button-ghost .link_text:focus::after {
	transform: translateX(4px);
}

/* ── Primary via nectar-cta ── */

.nectar-cta.nb-button-primary .link_text {
	display: inline-flex;
	align-items: center;
	padding: 12px 24px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	color: #fff !important;
	background-color: #d54439 !important;
	border: 2px solid transparent !important;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.nectar-cta.nb-button-primary .link_text:hover,
.nectar-cta.nb-button-primary .link_text:focus {
	background-color: #591813 !important;
	color: #fff !important;
}

/* ── Secondary via nectar-cta ── */

.nectar-cta.nb-button-secondary .link_text {
	display: inline-flex;
	align-items: center;
	padding: 12px 24px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	color: #092F55 !important;
	background-color: #fff !important;
	border: 2px solid #092F55 !important;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.nectar-cta.nb-button-secondary .link_text:hover,
.nectar-cta.nb-button-secondary .link_text:focus {
	background-color: #E0F6FD !important;
	color: #092F55 !important;
}


/* -- Nectar Recent Posts Slider -- */

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button {
	background-color: #092F55 !important;
	color: #fff !important;
	border: 2px solid #092F55 !important;
	padding: 12px 24px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
}

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button .icon-button-arrow {
	display: none !important;
}

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.81501 5.62106C8.06166 5.83037 8.06166 6.16965 7.81501 6.37895L1.37589 11.843C1.12924 12.0523 0.729406 12.0523 0.482755 11.843L0.184988 11.5904C-0.0616628 11.3811 -0.0616628 11.0417 0.184988 10.8324L5.87978 6.00001L0.184988 1.16755C-0.0616628 0.958242 -0.0616628 0.618956 0.184988 0.409654L0.482755 0.156977C0.729406 -0.0523252 1.12924 -0.0523252 1.37589 0.156977L7.81501 5.62106Z' fill='%23ffffff'/%3E%3C/svg%3E") !important;
	display: inline-block !important;
	line-height: 0 !important;
	transition: transform 0.2s ease !important;
	margin-left: 8px !important;
}

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button:hover {
	background-color: #071E3E !important;
	color: #fff !important;
	border-color: #071E3E !important;
}

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button:hover::after {
	transform: translateX(4px) !important;
}

.nectar-recent-posts-slider_multiple_visible .recent-post-container.container .nectar-button:hover span {
	transform: none !important;
}


/* -- wistia buttons -- */

.w-channel-big-button {
	padding: 12px 24px !important;
	background-color: #FCD116 !important;
	color: #000 !important;
	border: 2px solid transparent;
	&:hover,
	&:focus {
		background-color: #DAB619 !important;
		color: #000 !important;
	}
}