/* Rules needed only by the Next.js port (not part of production CSS) */
/* COLOR HEX CODES:
orange: #F1C031;
green: #1a5f4b;
dark grey: #333132;
light grey: #ebebeb;
*/

@charset "UTF-8";

@font-face {
	font-family: "Roboto";
	src: url("url('https://fonts.googleapis.com/css?family=Playfair+Display:400,400i,700,700i&display=swap');");
}

/* Accordion Panel Styling */

/* HAMBURGER MENU */


/* LOADING ANIMATION */

/* BANNER IMG ICONS */

/* HEADER STYLES*/

/* styling hamburger menu*/

/*stying dropdown menu li and hover */

/* Desktop only hover - white background */
@media (min-width: 992px) {
	.mega-nav li:hover {
		background-color: white !important;
		transition: 0.8s;
		font-weight: 600 !important;
	}
}

/* Mobile - no white background on hover */
@media (max-width: 991px) {
	.mega-nav li:hover {
		background-color: transparent !important;
	}
	.mega-nav li a:hover {
		color: #F1C031 !important;
	}
}

/* styling for navigation captions/headers */
/*this styles the width of the dropdown menu*/

/* NAVIGATION MENU */



/*this removes dots to show the top menu (social icons and cta button) */
/* this removes the spacing underneath the banner image*/


/* HOMEPAGE BODY */


/* INDIVIDUAL HOMEPAGE */

/* CORPORATE HOMEPAGE */

/* BLOG */
/* ABOUT US */


/* MEET OUR TEAM */ 


/* FOOTER STYLES*/
/*  CONTACT PAGE  */

/* WEALTH MANGEMENT PAGE */


/* WORKPLACE WELLNESS */
/* this was part of the phone section that was removed, un-comment styling if we want it back
.workplaceWellnessPhoneLabels h3 {
	color: #f1c031;
}
*/


/* RETIREMENT PLAN SERVICES */

/* FIDUCIARY PROTECTION */

/* EMPLOYEE OUTCOMES */
/* BUSINESS CONSULTING */


/* ACCOUNT LOGIN PAGE */

#wealthCenterButton,
#retirementAccountButton {
	width: 100% !important;
	padding-top: 14px;
	font-family: 'Arial', sans-serif;
	padding-bottom: 15px;
	border-radius: 8px;
	font-weight: 700;
	border: 2px solid #1a5f4b;
	font-size: 14px;
	height: 49px;
	display: block;
	text-align: center;
}
#wealthCenterButton:hover,
#retirementAccountButton:hover {
	color: #333132 !important;
	border: 2px solid #1a5f4b;
	opacity: 1;
	transition: .5s;
}


/* FINANCIAL PLANNING */

/* COMING SOON */


/* MODAL STYLING */


/* CORONAVIRUS POPUP STYLING */




/* BLOG LAYOUT STYLING */
/* node node-nd-blog contextual-links-region clearfix container */
/*
div .taxonomyRow {
	margin-left: 20px;
	margin-right: 20px;
}
*/

/* ============================================
   MOBILE MENU STYLES FOR REACT STATE MANAGEMENT
   ============================================ */

/* Mobile menu toggle - show menu when c-shown class is added */
@media (max-width: 991px) {
	.c-mega-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: #333132;
		z-index: 9999;
		padding: 15px 0;
	}

	.c-mega-menu.c-shown {
		display: block !important;
	}

	.c-mega-menu .nav.navbar-nav {
		flex-direction: column;
		width: 100%;
	}

	.c-mega-menu .nav.navbar-nav > li {
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,0.1);
	}

	.c-mega-menu .nav.navbar-nav > li > a {
		padding: 15px 20px;
		display: block;
		color: #fff !important;
	}

	/* Services dropdown in mobile */
	.c-mega-menu .dropdown-menu {
		position: static !important;
		width: 100% !important;
		background: #444 !important;
		border: none !important;
		box-shadow: none !important;
		display: none;
		padding: 0;
		margin: 0 !important;
	}

	.c-mega-menu .dropdown-menu.c-shown {
		display: block !important;
	}

	.c-mega-menu .dropdown-menu li {
		width: 100%;
		background: transparent !important;
	}

	.c-mega-menu .dropdown-menu li:hover {
		background: transparent !important;
	}

	.c-mega-menu .dropdown-menu a {
		padding: 12px 30px !important;
		color: #fff !important;
		display: block;
		background: transparent !important;
		border: none !important;
		outline: none !important;
		box-shadow: none !important;
	}

	.c-mega-menu .dropdown-menu a:hover,
	.c-mega-menu .dropdown-menu a:focus,
	.c-mega-menu .dropdown-menu a:active {
		background: rgba(255,255,255,0.1) !important;
		color: #F1C031 !important;
		border: none !important;
		outline: none !important;
		box-shadow: none !important;
	}

	/* Fix for individual/corporate link hover in mobile */
	.c-mega-menu li.individual-link a,
	.c-mega-menu li.corporate-link a {
		background: transparent !important;
	}

	.c-mega-menu li.individual-link a:hover,
	.c-mega-menu li.corporate-link a:hover {
		background: rgba(255,255,255,0.1) !important;
	}

	/* Remove all default hover box styles */
	.c-mega-menu .tb-megamenu-subnav,
	.c-mega-menu .mega-col-nav,
	.c-mega-menu .tb-megamenu-column {
		background: transparent !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.c-mega-menu .tb-megamenu-item {
		background: transparent !important;
	}

	.c-mega-menu .tb-megamenu-item:hover {
		background: transparent !important;
	}

	.c-mega-menu .tb-megamenu-item a {
		background: transparent !important;
	}

	.c-mega-menu .tb-megamenu-item a:hover {
		background: rgba(255,255,255,0.1) !important;
		color: #F1C031 !important;
	}

	/* Hamburger menu toggle button */
	.c-hor-nav-toggler {
		display: block !important;
	}
}

/* ============================================
   UTILITY CLASSES - CUSTOM CSS
   ============================================ */

/* Hero Section Styles */
.hero-banner {
	position: relative;
	width: 100%;
	height: min(500px, 41.6667vw);
	overflow: hidden;
}

@media (max-width: 500px) {
	.hero-banner {
		height: 50px;
	}
	.hero-banner__image,
	.hero-banner__overlay {
		display: none;
	}
}

.hero-banner__stage {
	z-index: 2;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: min(100%, 1200px);
	height: 100%;
}

.hero-banner__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

.hero-banner__overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.hero-banner__overlay--light {
	background: rgba(0, 0, 0, 0.1);
}

.hero-banner__overlay--medium {
	background: rgba(0, 0, 0, 0.3);
}

.hero-banner__overlay--dark {
	background: rgba(0, 0, 0, 0.48);
}

.hero-banner__overlay--darker {
	background: rgba(0, 0, 0, 0.52);
}

.hero-banner__content {
	position: absolute;
	z-index: 2;
	display: block;
}

/* Background Colors */
.bg-green {
	background-color: #1a5f4b;
}

.bg-dark-gray {
	background-color: #333132;
}

.bg-medium-gray {
	background-color: #636161;
}

.bg-light-gray {
	background-color: #ebebeb;
}

.bg-white {
	background-color: #ffffff;
}

/* Text Colors */
.text-white {
	color: #fff;
}

.text-green {
	color: #1a5f4b;
}

.text-orange {
	color: #F1C031;
}

.text-dark-gray {
	color: #333132;
}

.text-muted {
	color: #5c6873;
}

.text-slate {
	color: #3f444a;
}

/* Section Spacing */
.section-padding-sm {
	padding-top: 30px;
	padding-bottom: 30px;
}

.section-padding-md {
	padding-top: 40px;
	padding-bottom: 40px;
}

.section-padding-lg {
	padding-top: 60px;
	padding-bottom: 60px;
}

.section-margin-sm {
	margin-top: 20px;
	margin-bottom: 20px;
}

.section-margin-md {
	margin-top: 40px;
	margin-bottom: 40px;
}

.section-margin-lg {
	margin-top: 60px;
	margin-bottom: 60px;
}

.content-top-margin {
	margin-top: 0;
}

/* Padding Utilities */
.px-40 {
	padding-left: 40px;
	padding-right: 40px;
}

.py-15 {
	padding-top: 15px;
	padding-bottom: 15px;
}

.py-20 {
	padding-top: 20px;
	padding-bottom: 20px;
}

.pt-30 {
	padding-top: 30px;
}

.pb-30 {
	padding-bottom: 30px;
}

.mb-20 {
	margin-bottom: 20px;
}

.mb-30 {
	margin-bottom: 30px;
}

.mb-40 {
	margin-bottom: 40px;
}

.mb-50 {
	margin-bottom: 50px;
}

.mt-20 {
	margin-top: 20px;
}

.mt-40 {
	margin-top: 40px;
}

.mt-80 {
	margin-top: 80px;
}

/* Text Alignment */
.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

/* Font Sizes */
.font-16 {
	font-size: 16px;
}

.font-18 {
	font-size: 18px;
}

.font-19 {
	font-size: 19px;
}

.font-20 {
	font-size: 20px;
}

.font-22 {
	font-size: 22px;
}

.font-25 {
	font-size: 25px;
}

.font-28 {
	font-size: 28px;
}

.font-30 {
	font-size: 30px;
}

/* Font Weights */
.font-weight-500 {
	font-weight: 500;
}

.font-weight-600 {
	font-weight: 600;
}

/* WE Section Special Styling */
.we-text-large {
	font-size: 120px;
	color: #F1C031;
}

.we-text-xlarge {
	font-size: 150px;
	color: #F1C031;
}

/* Stats Counter Section */
.stats-section {
	margin-bottom: 30px;
	margin-top: 40px;
	padding-bottom: 40px;
	text-align: center;
}

/* Parallax/Background Image Sections */
.parallax-section {
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}

/* Responsive Image */
.img-cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.img-full-width {
	width: 100%;
}

/* Flexbox utilities */
.d-flex {
	display: flex;
}

.align-items-center {
	align-items: center;
}

.justify-content-center {
	justify-content: center;
}

.flex-wrap {
	flex-wrap: wrap;
}

/* Container utilities */
.max-width-800 {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}

.max-width-900 {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

/* Additional Margin Utilities */
.mb-15 {
	margin-bottom: 15px;
}

.my-25 {
	margin-top: 25px;
	margin-bottom: 25px;
}

/* Additional Padding Utilities */
.py-25 {
	padding-top: 25px;
	padding-bottom: 25px;
}

.pt-20 {
	padding-top: 20px;
}

.pl-20 {
	padding-left: 20px;
}

/* Font Size */
.font-26 {
	font-size: 26px;
}

/* List Styles */
.list-disc {
	list-style: disc;
}

/* Image Utilities */
.img-center-block {
	height: 100%;
	margin: auto;
	display: block;
}

h3.c-main-title-square {
	text-transform: uppercase;
}

/* Careers Page Hero Extensions */
.hero-banner__objects {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hero-banner__title-container {
	width: 91.6667%;
	text-align: center;
}

.hero-banner__title {
	margin-top: 0;
	letter-spacing: 1px;
	text-transform: uppercase;
}
/* Hero layer text (production sets this per slide via inline <style>) */
.hero-banner__stage .md-object {
	z-index: 1000 !important;
	font-size: 4em;
	font-weight: 700;
	font-family: "Roboto Condensed";
	text-transform: uppercase;
}

/* Hero title entrance (production: md-slider easein, start 200ms) */
.hero-banner__content {
	animation-duration: 0.6s;
	animation-delay: 0.5s;
	animation-fill-mode: both;
}
.hero-anim-rotateIn {
	animation-name: rotateIn;
}
.hero-anim-fadeIn {
	animation-name: fadeIn;
}

/* Contact info card no longer sits beside the (removed) form */
.contactInfoCard {
	height: auto;
}

/* match line spacing of the other mega-menu headers */
li.individual-link a {
	line-height: 1.3;
}

/* smaller team headshots (desktop/tablet) */
@media (min-width: 761px) {
	.teamPortrait img {
		width: 213px;
	}
}

.teamMemberParagraph h1,
.teamMemberParagraph h3 {
	text-align: center;
}
