/* ---------- Updated Brand Colors ---------- */
.text-blue,
.data-\[visible\=true\]\:text-blue[data-visible=true],
.bg-blue-light .text-red,
.wysiwyg--generic h2,
.wysiwyg--generic h3,
.wysiwyg--generic h4,
.gravity-theme.gform-theme--no-framework .gform_confirmation_message {
	color: #081430;
}

.bg-blue {
	background-color: #081430;
}

.bg-blue\/50 {
	background-color: rgba(8,20,48,0.5);
}

.bg-blue-light {
	background-color: #89c7ed;
}

.bg-blue-light .border-blue-20 {
	border-color: #081430;
}

.text-white .border-blue-20 {
	border-color: #fff;
}

.text-white .border-red {
	border-color: rgba(185,15,42,1);
}

.before\:bg-blue\/75:before {
	background-color: rgba(8,20,48,0.65);
}

@media (hover: hover) and (pointer: fine) {
	.hover\:text-blue:hover {
		color: #081430;
	}
	
	.hover\:text-blue-40:hover {
		color: rgba(8,20,48,0.4);
	}
	
	.hover\:bg-blue\/80:hover {
		background-color: rgba(8,20,48,0.8);
	}
}



/* ---------- Common ---------- */
@media (hover: hover) and (pointer: fine) {
	.wysiwyg a:not([class]):focus,
	.wysiwyg a:not([class]):hover {
		text-decoration: underline;
	}
}



/* ---------- Header ---------- */
header core-header {
	padding-right: clamp(2.4rem,-1.6rem + 6.67vw,8rem) !important;
	padding-left: clamp(2.4rem,-1.6rem + 6.67vw,8rem) !important;
}

header .logo-wrap {
	display: flex;
	text-decoration: none;
}

header .logo-wrap .logo {
	flex-shrink: 0;
	width: auto;
	height: 3.125vw;
	min-height: 45px;
	pointer-events: none;
}

header .logo-wrap .divider {
	flex-shrink: 0;
	width: 1px;
	height: 3.125vw;
	min-height: 45px;
	margin: 0 1.55vw;
	background-color: #d3d6e0;
}

@media (max-width: 1299px) {
	header .logo-wrap .divider {
		margin: 0 20px;
	}
}

@media (max-width: 899px) {
	header .logo-wrap .logo {
		min-height: 40px;
	}
	
	header .logo-wrap .divider {
		min-height: 40px;
		margin: 0 16px;
	}
}

@media (max-width: 899px) and (min-width: 800px) {
	header core-header {
		padding-right: 3vw !important;
		padding-left: 3vw !important;
	}
}

@media (min-width: 800px) {
	header #main-menu > .js-main-menu-item > a.t\:bg-red {
		background-color: rgba(185,15,42,1);
		color: #fff;
	}
}

@media (max-width: 799px) {
	header .logo-wrap .logo {
		min-height: 38px;
	}
	
	header .logo-wrap .divider {
		min-height: 38px;
		margin: 0 14px;
	}
	
	header #main-menu > .js-main-menu-item > a.t\:bg-red span {
		background-color: rgba(185,15,42,1);
		color: #fff;
	}
}



/* ---------- Footer ---------- */
footer .border-blue-80 {
	border-color: #213367;
}

footer .logo-wrap {
	display: inline-flex;
	margin-bottom: 4.85vw;
	text-decoration: none;
}

footer .logo-wrap .logo {
	flex-shrink: 0;
	width: auto;
	height: 5.32vw;
	min-height: 55px;
	pointer-events: none;
}

footer .logo-wrap .divider {
	flex-shrink: 0;
	width: 1px;
	height: 5.32vw;
	min-height: 55px;
	margin: 0 3.12vw;
	background-color: #213367;
}

@media (max-width: 999px) {
	footer .logo-wrap {
		margin-bottom: 50px;
	}
}

@media (max-width: 799px) {
	footer .logo-wrap {
		margin-bottom: 40px;
	}
	
	footer .logo-wrap .logo {
		height: 7.72vw;
		min-height: 50px;
	}
	
	footer .logo-wrap .divider {
		height: 7.72vw;
		min-height: 50px;
		margin: 0 25px;
	}
}



/* ---------- Forms ---------- */
.gform_wrapper {
	margin: 0 clamp(2.4rem,-1.6rem + 6.67vw,8rem) 9.6rem clamp(2.4rem,-1.6rem + 6.67vw,8rem);
}

.contact-page-form .gform_wrapper {
	margin: 0 !important;
}

.gform_wrapper .gform_heading .gform_title,
.gform_wrapper .gform_heading .gform_description {
	display: none;
}

.gform_wrapper .gfield_select {
	background-color: transparent;
}

.gform_wrapper .gform_validation_errors {
	outline: none;
}

.gform_wrapper .gfield--type-turnstile {
	margin: -3px 0 6px;
	padding: 0 !important;
	border: none !important;
}

@media (min-width: 800px) {
	.gform_wrapper {
		margin-bottom: 13.6rem;
	}
	
	.gform_wrapper .gfield--type-turnstile {
		margin: -0.2vw 0 0.8vw;
	}
}



/* ---------- Blocks ---------- */
#main-content article.w-full > figure.block-large-image:first-child {
	margin-bottom: -5rem;
	padding-bottom: 0;
}

@media (min-width: 800px) {
	#main-content article.w-full > figure.block-large-image:first-child {
		margin-bottom: -10.5rem;
	}
}



/* ---------- Swiper ---------- */
.swiper-thumbs .swiper-slide:not(.swiper-slide-thumb-active):hover span:after {
	display: none;
}



/* ---------- News & Insights ---------- */
body.blog #main-content .news-grid > h1,
body.blog #main-content .js-swiper > h2 {
	text-align: left;
}

body.blog #main-content .news-grid:first-child {
	padding-top: 14rem;
}

body.blog #main-content .news-grid:first-child > h1 {
	padding-bottom: 5px;
	font-size: clamp(2.8rem,1.37rem + 2.38vw,4.8rem);
	line-height: clamp(3rem,1.43rem + 2.62vw,5.2rem);
}

@media (min-width: 800px) {
	body.blog #main-content .news-grid {
		padding-bottom: 13.6rem;
	}
	
	body.blog #main-content .news-grid:first-child {
		padding-top: 23.6rem;
	}
	
	body.blog #main-content .news-grid:first-child > h1 {
		padding-bottom: 8px;
	}
}



/* ---------- Contact ---------- */
body.page-template-template-contact #intro {
	padding-bottom: 4.4rem;
}

body.page-template-template-contact #intro .copy {
	margin-bottom: 3.6rem;
}

body.page-template-template-contact #intro .button .icon {
	transform: rotate(90deg); -moz-transform: rotate(90deg); -webkit-transform: rotate(90deg);
}

body.page-template-template-contact #map {
	padding-bottom: 3.7rem;
}

body.page-template-template-contact #map .map-wrap {
	position: relative;
}

body.page-template-template-contact #map .map-wrap .location-pin {
	position: absolute;
	z-index: 1;
	width: 1.05vw;
	min-width: 6.5px;
	aspect-ratio: 1;
	border-radius: 100%; -moz-border-radius: 100%; -webkit-border-radius: 100%;
	background-color: #b90f2a;
	cursor: pointer;
}

body.page-template-template-contact #map .map-wrap .location-pin-hq {
	width: 1.55vw;
	min-width: 8.5px;
	border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0;
	background: url('static/map-pin-hq.svg') no-repeat center center transparent;
	background-size: cover;
}

body.page-template-template-contact #map .map-wrap .location-tooltip {
	display: none;
}

body.page-template-template-contact #map .map-wrap .graphic {
	width: 100%;
	pointer-events: none;
}

body.page-template-template-contact .qtip-custom {
	max-width: none;
	border-color: #081430;
	border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;
	background-color: #081430;
	font-size: 14px;
	line-height: 1.45em;
	letter-spacing: 2%;
	color: #fff;
}

body.page-template-template-contact .qtip-custom .qtip-content {
	padding: 22px 30px 19px 20px;
	word-wrap: normal;
}

body.page-template-template-contact .qtip-custom .qtip-content h6 {
	margin-bottom: 12px;
	font-size: 0.93em;
	font-weight: bold;
	line-height: normal;
	letter-spacing: 3%;
	color: #89c7ed;
}

body.page-template-template-contact .qtip-custom .qtip-content a {
	text-decoration: none;
	color: inherit;
}

body.page-template-template-contact #states {
	padding-bottom: 7.2rem;
}

body.page-template-template-contact #states .state {
	border-bottom: 1px solid #d3d6e0;
}

body.page-template-template-contact #states .accordion-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 3.28rem 0;
	user-select: none; -ms-user-select: none; -moz-user-select: none; -webkit-user-select: none;
}

body.page-template-template-contact #states .accordion-title.toggle {
	cursor: pointer;
}

body.page-template-template-contact #states .accordion-title h4 {
	width: 100%;
	overflow: hidden;
	margin-right: 6rem;
	line-height: normal;
	white-space: nowrap;
	text-overflow: ellipsis;
}

body.page-template-template-contact #states .accordion-title .icon {
	flex-shrink: 0;
	position: relative;
	width: 1.9rem;
	height: 1.9rem;
}

body.page-template-template-contact #states .accordion-title .icon .horz {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #b90f2a;
	transform: translateY(-50%); -moz-transform: translateY(-50%); -webkit-transform: translateY(-50%);
}

body.page-template-template-contact #states .accordion-title .icon .vert {
	position: absolute;
	top: 0;
	left: 50%;
	width: 2px;
	height: 100%;
	background-color: #b90f2a;
	opacity: 1;
	transform: translateX(-50%); -moz-transform: translateX(-50%); -webkit-transform: translateX(-50%);
	transition: opacity 0.3s; -moz-transition: opacity 0.3s; -webkit-transition: opacity 0.3s;
}

body.page-template-template-contact #states .accordion-title.active .icon .vert {
	opacity: 0;
}

body.page-template-template-contact #states .accordion-panel {
	display: none;
	position: relative;
	top: 0.56rem;
	padding-bottom: 4.59rem;
}

body.page-template-template-contact #states .accordion-panel .offices {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 5rem;
	row-gap: 3.7rem;
	opacity: 0;
	transition: opacity 0.3s; -moz-transition: opacity 0.3s; -webkit-transition: opacity 0.3s;
}

body.page-template-template-contact #states .accordion-panel .offices.one {
	grid-template-columns: repeat(1, 1fr);
}

body.page-template-template-contact #states .accordion-panel.open .offices {
	opacity: 1;
}

body.page-template-template-contact #states .accordion-panel .office {
	font-size: 1.6rem;
	line-height: 2.4rem;
	letter-spacing: 2%;
}

body.page-template-template-contact #states .accordion-panel .office h6 {
	font-size: 0.875em;
	line-height: 1.25em;
	letter-spacing: 3%;
}

body.page-template-template-contact #states .accordion-panel .office a {
	text-decoration: none;
	color: inherit;
}

body.page-template-template-contact #states .accordion-panel .office .nowrap {
	white-space: nowrap;
}

body.page-template-template-contact #states .accordion-panel .office .address {
	margin-top: 1.4rem;
}

body.page-template-template-contact #states .accordion-panel .office .contact {
	margin-top: 1.12rem;
}

body.page-template-template-contact #contact {
	padding-top: 7.2rem;
}

@media (max-width: 1299px) {
	body.page-template-template-contact #states .accordion-panel .offices {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 999px) {
	body.page-template-template-contact #states .accordion-panel .offices {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 799px) {
	body.page-template-template-contact #intro {
		padding-bottom: 1.2rem;
	}
	
	body.page-template-template-contact #intro .copy {
		margin-bottom: 2.5rem;
	}
	
	body.page-template-template-contact #map {
		padding-bottom: 1.9rem;
	}
	
	body.page-template-template-contact .qtip-custom {
		font-size: 12px;
	}
	
	body.page-template-template-contact .qtip-custom .qtip-content {
		padding: 17px 25px 14px 15px;
	}
	
	body.page-template-template-contact .qtip-custom .qtip-content h6 {
		margin-bottom: 10px;
	}
	
	body.page-template-template-contact #states {
		padding-bottom: 4.75rem;
	}
	
	body.page-template-template-contact #states .accordion-title {
		padding: 2.64rem 0;
	}
	
	body.page-template-template-contact #states .accordion-title h4 {
		font-size: 2.1rem;
	}
	
	body.page-template-template-contact #states .accordion-title .icon {
		width: 1.6rem;
		height: 1.6rem;
	}
	
	body.page-template-template-contact #states .accordion-panel {
		top: 0.13rem;
		padding-bottom: 3.13rem;
	}
	
	body.page-template-template-contact #states .accordion-panel .offices {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2.7rem;
	}
	
	body.page-template-template-contact #states .accordion-panel .office {
		font-size: 1.5rem;
		line-height: 2.1rem;
	}
	
	body.page-template-template-contact #states .accordion-panel .office .address {
		margin-top: 1.1rem;
	}
	
	body.page-template-template-contact #states .accordion-panel .office .contact {
		margin-top: 1rem;
	}
	
	body.page-template-template-contact #contact {
		padding-top: 4.75rem;
	}
}



/* ---------- Anniversary Party RSVP ---------- */
body.page-id-3497 {
	background-color: #081430;
}

body.page-id-3497 #main-content,
body.page-id-3497 #main-content .text-blue {
	color: #fff;
}

body.page-id-3497 #main-content #site-back-to-top,
body.page-id-3497 #main-content .pre-footer-cta {
	display: none;
}

body.page-id-3497 #main-content article.w-full > figure.block-large-image {
	margin-bottom: -10.5rem;
}

body.page-id-3497 #main-content article.w-full > div.w-full {
	padding-top: 15.5rem;
	padding-bottom: 5.3rem;
}

body.page-id-3497 #main-content article.w-full > div.w-full div {
	display: block;
}

body.page-id-3497 #main-content article.w-full > div.w-full h1 {
	display: none;
}

body.page-id-3497 #main-content article.w-full > div.w-full p {
	max-width: 780px;
	line-height: 1.4em;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield {
	border-color: #ae824d;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield.gfield_error {
	border-color: #b90f2a;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield .gfield_label {
	background-color: #081430;
	color: #ae824d;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield.gfield_error .gfield_label {
	color: #b90f2a;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield input {
	min-height: 0;
	line-height: normal;
	color: #fff;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield select {
	background-color: transparent;
	color: #fff;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield select option {
	color: #000;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gfield--type-select svg {
	color: #ae824d;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gform_button span.text-15 {
	color: #fff;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gform_button span.border {
	border-color: #ae824d;
	color: #ae824d;
}

body.page-id-3497 #main-content article.w-full .gform_wrapper .gform_button:hover span.border {
	background-color: #ae824d;
	color: #fff;
}

body.page-id-3497 #main-content article.w-full .gform_confirmation_wrapper {
	margin: 3rem clamp(2.4rem,-1.6rem + 6.67vw,8rem) 13rem;
}

body.page-id-3497 #main-content article.w-full .gform_confirmation_wrapper .gform_confirmation_message {
	font-size: clamp(1.7rem,1.49rem + .36vw,2rem);
	font-weight: 400;
	line-height: 1.4em;
	color: #ae824d;
}

body.page-id-3497 footer {
	padding-top: 1.3rem;
	background-color: #081430;
}

@media (min-width: 1500px) {
	body.page-id-3497 #main-content article.w-full > div.w-full p {
		max-width: 52vw;
	}
}



/* ---------- Block - Feature Boxes ---------- */
.block-feature-boxes {
	padding-top: 4rem;
}

.block-feature-boxes .feature-boxes-content {
	max-width: 93.75rem;
}

.block-feature-boxes .feature-boxes-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 3.75vw;
	row-gap: 3.75vw;
	margin-top: 7.75rem;
}

.block-feature-boxes .feature-boxes-grid:first-child {
	margin-top: 0;
}

.block-feature-boxes .feature-boxes-item {
	padding: 5.17rem 4.25rem 4.97rem;
	border-radius: 12px;
	background-color: #081430;
	text-align: center;
	color: #fff;
}

.block-feature-boxes .feature-boxes-item.steel {
	background-color: #213367;
}

.block-feature-boxes .feature-boxes-item.copper {
	background-color: #f79220;
}

.block-feature-boxes .feature-boxes-item.flame {
	background-color: #b90f2a;
}

.block-feature-boxes .feature-boxes-item-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 9.35rem;
	height: 9.35rem;
	margin: 0.47rem auto 4.22rem;
}

.block-feature-boxes .feature-boxes-item-icon:last-child {
	margin-bottom: 0.65rem;
}

.block-feature-boxes .feature-boxes-item-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	pointer-events: none;
}

.block-feature-boxes .feature-boxes-item-details h5 {
	margin-bottom: 1.22rem;
}

.block-feature-boxes .feature-boxes-item-details h5:last-child {
	margin-bottom: 0.2rem;
}

.block-feature-boxes .feature-boxes-item-details p {
	max-width: 45rem;
	margin: 0 auto;
	font-size: 1.5rem;
	line-height: 2.4rem;
	letter-spacing: 2%;
}

@media (max-width: 799px) {
	.block-feature-boxes {
		padding-top: 0;
		padding-bottom: 9.6rem;
	}
	
	.block-feature-boxes .feature-boxes-grid {
		margin-top: 4.5rem;
	}
	
	.block-feature-boxes .feature-boxes-item {
		padding: 3rem 2.5rem;
		border-radius: 10px;
	}
	
	.block-feature-boxes .feature-boxes-item-icon {
		width: 6.5rem;
		height: 6.5rem;
		margin-bottom: 2rem;
	}
	
	.block-feature-boxes .feature-boxes-item-details h5 {
		margin-bottom: 1rem;
	}
	
	.block-feature-boxes .feature-boxes-item-details p {
		font-size: 1.4rem;
		line-height: 2rem;
	}
}

@media (max-width: 599px) {
	.block-feature-boxes .feature-boxes-grid {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2rem;
	}
}



/* ---------- Experts Section/Form ---------- */
#experts {
	display: flex;
	justify-content: space-between;
	margin-top: 2rem;
}

#experts .contacts {
	width: 43.75vw;
}

#experts .contacts .list {
	margin-top: 5rem;
}

#experts .form {
	width: 37.5vw;
	margin-top: 0.75vw;
}

#experts .form #experts-form {
	display: flex;
	flex-direction: column;
	height: 100%;
}

#experts .form #experts-form .gform_wrapper {
	margin: 0;
}

#experts .form #experts-form .gform_confirmation_wrapper {
	margin-top: auto;
	margin-bottom: auto;
}

#experts .form #experts-form .gform_confirmation_message {
	font-weight: 500;
}

@media (min-width: 800px) {
	#experts .contacts .list .t\:basis-contact,
	#experts .contacts .list .t\:basis-author {
		flex-basis: 35.75%;
	}
}

@media (min-width: 1024px) {
	#experts .contacts .list .t\:basis-contact + .tl\:pt-118 {
		padding-top: 7.75vw;
	}
}

@media (max-width: 799px) {
	#experts {
		flex-direction: column;
		margin-top: 1rem;
	}
	
	#experts .contacts {
		width: 100%;
	}
	
	#experts .contacts .list {
		margin-top: 3.5rem;
	}
	
	#experts .form {
		width: 100%;
		margin-top: 5rem;
	}
	
	#experts .form #experts-form .gform_confirmation_message {
		text-align: center;
	}
}



/* ---------- Frank Powers RSVP ---------- */
body.page-id-3648 #main-content > article > div.w-full {
	width: 40vw;
	min-width: 425px;
	margin: 0 auto;
	padding-top: 19.6rem;
	padding-bottom: 6.9rem;
}

body.page-id-3648 #main-content > article > div.w-full .t\:grid {
	display: block;
	margin: 0;
	text-align: center;
}

body.page-id-3648 #main-content > article > div.w-full .t\:grid h1 {
	margin-bottom: 0;
}

body.page-id-3648 #main-content > article > div.w-full .t\:grid div.text-blue {
	margin-top: 1.9rem;
	font-weight: inherit;
}

body.page-id-3648 #main-content > article > .gform_wrapper {
	width: 50vw;
	min-width: 550px;
	margin: 0 auto 10rem;
}

body.page-id-3648 #main-content > article > .gform_confirmation_wrapper {
	margin-bottom: 9.4rem;
	text-align: center;
}

@media (max-width: 799px) {
	body.page-id-3648 #main-content > article > div.w-full {
		width: 400px;
		max-width: 80%;
		min-width: 0;
		padding-top: 12rem;
		padding-bottom: 4.5rem;
	}
	
	body.page-id-3648 #main-content > article > div.w-full .t\:grid div.text-blue {
		margin-top: 1.3rem;
	}
	
	body.page-id-3648 #main-content > article > div.w-full .t\:grid div.text-blue br {
		display: none;
	}
	
	body.page-id-3648 #main-content > article > .gform_wrapper {
		width: 500px;
		max-width: 85%;
		min-width: 0;
		margin-bottom: 7.5rem;
	}
	
	body.page-id-3648 #main-content > article > .gform_confirmation_wrapper {
		margin-bottom: 6.9rem;
	}
}