body{
	position: relative;
}

header{
	position: absolute;
	top:0px;
	left:0px;
	width:100%;
	z-index: 2;
}

.home-header{
	height: 700px;
	background-position: center center;
	background-size: cover;
	position: relative;
}

.secondary-header{
	height: 400px;
	background-position: center center;
	background-size: cover;
	position: relative;
}

.wave-bottom{
	position: absolute;
	bottom:-1px;
	left:0px;
	width:100%;
}

.up-1{
	position: relative;
	top:-1px;
}

.nav-row .logo, .nav-row .nav-contents{
	
}

.nav-row .logo{
	flex-grow: 0;
}

.nav-row .nav-contents{
	flex-grow: 1;
}

.nav-row .logo img{
	width:150px;
	height: auto;
	display: block;
	margin-right: 40px;
}

.em{
	background-color: white;
	justify-content: start;
	align-items: center;
	width:100%;
	border-radius: 50px;
	overflow: hidden;
	margin:6px 0 25px 0;
	font-size: 16px;
}

.em-icon{
	flex-grow:0;
	background-color: #CF223F;
	color: white;
	font-size: 24px;
	
}

.em-message{
	flex-grow: 1;
	color: #CF223F;
	font-weight: 600;
}

.em-message a{
	color: #CF223F;
}

.em-message a:hover{
	color: #1F3358;
}

header{
	background-image: url('../images/top-grad.png');
	background-size: contain;
	background-repeat: repeat-x;
	padding-bottom:150px;
}

.home-header{
	text-align: center;
	text-shadow: 3px 3px 5px rgba(0,0,0,0.3);
}

.home-header .home-header-sub{
	font-size: 32px;
	font-weight: 600;
}

.home-header h1{
	font-size: 75px;
	font-weight: 700;
	text-align: center;
}

.secondary-header p{
	font-size: 55px;
	font-weight: 600;
	margin-top:70px;
	text-align: center;
}

.home-circles{
	margin-top:-75px;
}

.circle-item{
	width: 180px;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.circle-item .circle{
	background-color: #1F3358;
	border: 1px solid white;
	border-radius: 200px;
	width: 130px;
	height:130px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.circle-item .circle img{
	width: 60px;
}

.circle-item a{
	color: #1F3358;
	text-decoration: none;
}

.circle-item:hover a{
	color: #76B5EA;
	cursor: pointer;
}

.circle-item:hover .circle{
	background-color: #76B5EA;
}

.circle-item img.circle-off{
	display: block;
}

.circle-item:hover img.circle-off{
	display: none;
}

.circle-item img.circle-on{
	display: none;
}

.circle-item:hover img.circle-on{
	display: block;
}

.home-features .featured-col{
	width:100%;
	height:400px;
	background-position: center center;
	background-size: cover;
	position: relative;
	overflow: hidden;
}

.featured-overlay{
	position: absolute;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	background-color: rgba(0,0,0,0.3);
	opacity: 1;
	transition: 0.1s opacity linear;
	z-index: 3;
}

.featured-photo{
	position: absolute;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	transition: 0.1s all linear;
	height:400px;
	background-position: center center;
	background-size: cover;
	z-index: 2;
}

.featured-content{
	position: relative;
	width:100%;
	height:100%;
	display: flex;
	flex-direction: column;
	color: white;
	justify-content: center;
	align-items: flex-start;
	padding:0px 25px;
	z-index: 4;
}

.featured-content.large{
	padding:0px 50px;
}

.featured-content p.top-title{
	font-weight: 600;
	font-size: 22px;
	margin-bottom:5px;
	opacity:1;
	transition: 0.1s opacity linear;
}

.featured-content a{
	font-weight: 700;
	font-size: 36px;
	color: white;
	text-decoration: none;
	line-height: 1.2em;
	border-radius: 200px;
}

.home-features .featured-col:hover a{
	background-color: rgba(255,255,255,0.6);
	color: #1F3358;
}

.featured-content p.sub-title{
	margin-bottom:0px;
	margin-top:20px;
	opacity:1;
	transition: 0.1s opacity linear;
}

.home-features .featured-col:hover p.top-title,.home-features .featured-col:hover p.sub-title,.home-features .featured-col:hover .featured-overlay{
	opacity: 0;
}

.home-features .featured-col:hover .featured-photo{
	transform: scale(1.1);
}

.featured-button{
	position: absolute;
	z-index: 4;
	bottom:-100px;
	left:0px;
	width:100%;
	text-align:center;
	transition: 0.1s all linear;
}

.home-features .featured-col:hover .featured-button{
	bottom:20px;
}

.featured-button>div{
	display: inline-block;
	text-decoration: none;
	background-color: #76B5EA;
	color: white;
	font-weight: 700;
	font-size: 18px;
	padding:8px 20px;
	text-transform: uppercase;
	cursor: pointer;
	border-radius: 200px;
}

.news-content a{
	font-weight: 600;
	text-decoration: none;
}

.news-card:hover a{
	color: #1F3358 !important;
}

p.news-date{
	font-size: 12px;
}

.news-card{
	background-color: white;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}

.news-card.sharp{
	border-radius:0p;
}

.news-photo{
	aspect-ratio: 16/12;
	background-size: cover;
	background-position: center center;
}

.news-card.sharp .news-photo{
	border-radius: 20px;
	overflow: hidden;
}

a.cta-button{
	display: inline-block;
	color: white;
	text-transform: uppercase;
	background-color: #1F3358;
	font-weight: 700;
	font-size: 18px;
	padding:10px 25px;
	border-radius: 50px;
	text-decoration: none;
}

a.cta-button.small{
	font-size: 14px;
	padding:6px 18px;
	border-radius: 50px;
	text-decoration: none;
}

a.cta-button:hover{
	background-color: #76B5EA;
}

a.cta-button.dark-gradient{
	background: linear-gradient(to bottom, #000,#1F3358);
}

a.cta-button.dark-gradient:hover{
	background:none;
	background-color: #1F3358;
}

.towns-we-serve{
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 25px;
}

.map-container{
	aspect-ratio: 20/18;
	position: relative;
	overflow: hidden;
}

.nj{
	position: absolute;
	width:33%;
	left:50%;
	transform: translateX(-50%);
}

.fact{
	position: absolute;
	width:400px;
	height:300px;
}

.fact-1{
	top:0;
	left:10%;
}

.fact-2{
	top:0;
	right:10%;
}

.fact-3{
	top:25%;
	left:0px;
}

.fact-4{
	top:25%;
	right:0px;
}

.fact-5{
	top:55%;
	left:10%;
}

.fact-6{
	top:55%;
	right:10%;
}

.fact-7{
	left:50%;
	bottom:0px;
	transform:translateX(-50%);
}

.connector{
	width:350px;
	border-top:1px solid black;
	position: absolute;
	top:45%;
	left:45%;
	transform: rotate(-123deg);
	transform-origin: 0 0;
	display: none;
}

.connector.connection-1{
	display: block;
	transform: rotate(-123deg);
	width:350px;
}

.connector.connection-2{
	display: block;
	transform: rotate(-43deg);
	width:430px;
}

.connector.connection-3{
	display: block;
	transform: rotate(-165deg);
	width:210px;
}

.connector.connection-4{
	display: block;
	transform: rotate(-10deg);
	width:360px;
}

.connector.connection-5{
	display: block;
	transform: rotate(-220deg);
	width:200px;
}

.connector.connection-6{
	display: block;
	transform: rotate(30deg);
	width:320px;
}

.connector.connection-7{
	display: block;
	transform: rotate(80deg);
	width:310px;
}

.fact-circles{
	width: 35%;
	position: relative;
	aspect-ratio: 1;
}

.circle-ring,.circle-icon{
	position: absolute;
	left:0px;
	top:0px;
}

.circle-ring{
	opacity: 0;
	transition: 0.1s linear all;
}

.fact:hover .circle-ring{
	opacity: 1;
}

.circle-icon{
	aspect-ratio: 1;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	transition: 0.1s linear all;
}

.fact:hover .circle-icon{
	transform: scale(0.6);
}

.hidden-fact{
	opacity: 0;
	transition: 0.1s linear all;
}

.fact:hover .hidden-fact{
	opacity: 1;
}

.social-links-home a{
	color: #1F3358;
	display: inline-block;
	margin-left:10px;
	font-size: 32px;
}

.social-links-home a:hover{
	color: #76B5EA;
}

.fpo-square{
	aspect-ratio: 1;
	background-color: #ccc;
}

.resource-comps img{
	height: 100px;
	width:auto;
}

.bottom-border{
	border-bottom: 1px solid #ccc;
}

.lead-doc-container{
	border: 1px solid #ccc;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: row;
	width:100%;
	justify-content: center;
	align-items: center;
}

.lead-doc-image{
	aspect-ratio: 1;
	background-position: center center;
	background-size: cover;
	flex-grow:0;
	min-height: 150px;
}

.lead-doc-content{
	flex-grow: 1;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width:100%;
}

footer ul, footer li{
	list-style-type: none;
	margin:0px;
	padding:0px;
}

footer li a{
	color: #1F3358;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 13px;
} 

.breadcrumbs, .breadcrumbs a{
	color: #8e8e8e;
	text-decoration: none;
}

.breadcrumbs a:hover{
	color: #1F3358;
}

.rounded-corners{
	border-radius: 20px;
	overflow: hidden;
}

div.reports-menu{
	background-color: #e5eeeb;
	border-radius: 20px;
}

div.reports-menu a{
	text-decoration: none;
	color: #1F3358;
}

div.reports-menu a:hover{
	color: black;
}

.accordion{
	border-radius:0px !important;
}

.accordion-item:first-of-type, .accordion-item:first-of-type>.accordion-header .accordion-button{
	border-radius: 0px !important;
	border-top-left-radius: 0px !important;
	border-top-right-radius: 0px !important;
}

.accordion-item:last-of-type, .accordion-item:last-of-type>.accordion-header .accordion-button{
	border-radius: 0px !important;
	border-bottom-left-radius: 0px !important;
	border-bottom-right-radius: 0px !important;
}

.accordion-button{
	font-weight: 600;
	color: #1F3358;
}

.accordion-button:not(.collapsed){
	background-color: white !important;
	font-weight: 600;
	color: #1F3358;
	border-bottom:0px solid #fff;
	box-shadow: none !important;
}

.accordion-item{
	border:0px solid #fff;
	border-bottom:1px solid #ccc;
}

.accordion-body{
	padding-top:0px;
}

.about-block{
	background: linear-gradient(to bottom, #9ebdb3, #1f3558);
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	color: white;
	height:100% !important;
}

span.breadcrumb_last{
	color: #1F3358 !important;
	font-weight: 600 !important;
}

img.staff-photo{
	width:50%;
	height:auto;
	display: block;
	margin:0 auto 15px auto;
	border-radius: 20px;
}

img.cs-icon-big{
	height:100px;
	width: auto;
}

a.cs-icon-square{
	display: block;
	text-decoration: none;
}

a.cs-icon-square:hover{
	background-color: black !important;
}

.alternating-row{
	margin-bottom:40px;
	align-content: center;
	align-items: center;
	justify-content: center;
}

.alternating-row:nth-child(even){
	flex-direction: row-reverse;
}

.alert-col{
	border:1px solid #CF223F;
	border-top:0px solid #fff;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	background-color: color(display-p3 0.972 0.918 0.925);
}

.contact-box{
	height: 100%;
	width:100%;
	border: 1px solid #ccc;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
	overflow: hidden;
}

div.no-positions{
	background-color: white;
	padding:15px 50px;
	border-radius: 100px;
	border:1px solid #ccc;
	display: inline-block;
	position: relative;
	left:50%;
	transform: translateX(-50%);
}

.cs-menu{
	display: flex;
	width: 100%;
	flex-direction: row;
	justify-content: space-between;
}

.cs-menu-item{
	position: relative;
	width:10% !important;
}

.cs-icon-circle{
	aspect-ratio: 1;
	background-color: #1F3358;
	padding:40px;
	border-radius: 300px;
	overflow: hidden;
}
.cs-icon-circle img{

}

.cs-menu-item a{
	color: #1F3358;
	text-align: center !important;
	text-decoration: none;
	font-size: 14px;
	display: block;
	margin-top:8px;
}

.cs-menu-item:hover .cs-icon-circle{
	background-color: color(display-p3 0.503 0.619 0.886);
}

.document-button:hover{
	background-color: #1F3358;
}


.document-button a{
	text-decoration: none;
	color: #1F3358;
}

.document-button:hover a{
	color: white;
}

table tr:first-child{
	background-color: #d0e2ff;
}

.mpwc-slider img{
	height: 250px;
	width: auto;
}

@media (max-width:1399.98px){
	.nav-row .logo img{
		width:150px;
	}
	
	.connector.connection-1{
		display: block;
		transform: rotate(-123deg);
		width:250px;
	}
	
	.connector.connection-2{
		display: block;
		transform: rotate(-43deg);
		width:330px;
	}
	
	.connector.connection-3{
		display: block;
		transform: rotate(-165deg);
		width:110px;
	}
	
	.connector.connection-4{
		display: block;
		transform: rotate(-10deg);
		width:260px;
	}
	
	.connector.connection-5{
		display: block;
		transform: rotate(-220deg);
		width:100px;
	}
	
	.connector.connection-6{
		display: block;
		transform: rotate(30deg);
		width:220px;
	}
	
	.connector.connection-7{
		display: block;
		transform: rotate(80deg);
		width:210px;
	}
}

@media (max-width: 1199.98px) {
	header{
		position: static;
		padding-bottom:0px;
		background-color: #1F3358;
		background-image: none;
	}
	nav{
		padding-bottom:20px;
		padding-top:20px;
	}
	
	.home-header{
		height: 600px;
	}
	
	.home-header .home-header-sub{
		font-size: 28px;
	}
	
	.home-header h1{
		font-size: 50px;
	}
	
	.connector{
		display: none !important;
	}
	
	.fact{
		position: static;
		width:50%;
		height:auto;
		margin:0 auto 30px auto;
	}
	
	.hidden-fact{
		opacity: 1;
	}
	
	.fact:hover .circle-ring{
		opacity: 0;
	}
	
	.map-container{
		height: auto;
		aspect-ratio: auto;
	}
	
	.fact:hover .circle-icon{
		transform: scale(1);
	}
	
	.fact-7{
		transform:none;
	}
	
	.towns-we-serve{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 25px;
	}
	
	p#breadcrumbs{
		margin-top:25px;
	}
	div.cs-menu{
		display: none !important;
	}
	
}

@media (max-width: 991.98px) {
	
	.home-header{
		height: 500px;
	}
	
	.home-header .home-header-sub{
		font-size: 22px;
	}
	
	.home-header h1{
		font-size: 36px;
	}
	
	.home-circles{
		margin-top:-75px;
	}
	
	.circle-flex-container{
		flex-wrap: wrap !important;
	}
	
	.circle-item{
		width: 180px;
		margin-bottom:20px;
	}
	
	.circle-item .circle{
		background-color: #1F3358;
		border: 1px solid white;
		border-radius: 200px;
		width: 130px;
		height:130px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.circle-item .circle img{
		width: 60px;
	}
	
	.fact{
		width:75%;
	}

	.mobile-nav ul{
		text-align: center;
	}
	
	.em-message{
		font-size: 14px;
	}
	
	.secondary-header{
		height: 300px;

	}
	
	.secondary-header p{
		font-size: 48px;
		line-height: 1.2em;
		margin-top:0px;
	}
	
	.featured-content, .featured-content.large{
		padding:0px 0px;
		height: 500px;
	}
	
	.featured-photo{
		height: 500px;
	}
	.home-features .featured-col {
		height: 500px;
	}
	
	
}

@media (min-width: 1199.98px)
{
	 #navCollapse.collapse{
		  display: block !important;
	  }
}
@media (max-width: 767.98px) {
	.up-1{
		top:-9px;
	}
	
	.wave-bottom{
		bottom:-5px;

	}
}