/* Table of Content
==================================================
	#Site Styles
	#Media Queries

/* #Site Styles
================================================== */

/* Wraps
-------------------------------------------------- */

	#headerWrap, #breadcrumbWrap, #sliderWrap, #mapWrap, #contentWrap, #secondaryWrap, .section, #footerWrap, .lr, .rl {
		width: 100%;
		position: relative;
	}

    #headerHolder {
        background: #111;
        height: 100px;
        transition: all 400ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    }
        #headerHolder.shadow {
            height: 80px;
        }
	
	#headerWrap {
		padding: 25px 0;
		z-index: 501;
		background: #111;
		transition: all 400ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
	}
        .shadow #headerWrap {
            padding: 15px 0 5px;
        }
	
	#breadcrumbWrap {
		clear: both;
		background: #e62a38;
		padding: 12px 0 12px;
		z-index: 100;
	}
	
	#sliderWrap {
		background: #000;
		z-index: 100;
	}
	
	#contentWrap {
		padding: 75px 0 55px;
	}
		#contentWrap.underSlide {
			padding-top: 0;
		}
		#contentWrap.withParallax {
			padding-bottom: 0;
		}
		
	#secondaryWrap {
		padding: 55px 0 65px;
		background: #fff;
	}
	
	#mapWrap {
		padding: 0;
		background: #fff;
		border-bottom: 1px solid rgba(0,0,0,0.25);
	}
	
	.section {
		padding: 55px 0 55px;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	
	#footerWrap {
		padding: 190px 0 40px;
		background: #111 url(../images/bg-footer.png) center top repeat-x;
	}
	
	.parallax {
		height: 500px;
		background: transparent;
	}
		.parallax.sub {
			height: 400px;
		}
		
	.bgGrey {
		background: #f3f3f3;
		padding: 75px 0 55px;
		margin-bottom: 75px;
		border-bottom: 1px solid rgba(054,45,36,0.1);
	}

        .bgGrey p.icon a::after {
            background: url('../images/sprite.png') no-repeat -180px -145px;
            background-size: 500px 500px;
        }
        .bgGrey p.icon a:hover::after {
            background: url('../images/sprite.png') no-repeat -150px -145px;
            background-size: 500px 500px;
        }


/* Header
-------------------------------------------------- */

#logo a {
	position: relative;
    bottom: 0;
	z-index: 10;
	display: block;
	background: url('../images/sprite.png') no-repeat 0 0;
	background-size: 500px 500px;
	width: 209px;
	height: 50px;
	transition: all 350ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
}
    .shadow #logo a {
        background: url('../images/sprite.png') no-repeat 0 2px;
        background-size: 250px 250px;
        width: 105px;
        height: 27px;
    }
	
#nav {
    margin-top: 15px;
	transition: margin 350ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
}
    .shadow #nav {
        margin-top: 5px;
    }

/* sub navigation */

ul.subNav, ul.subNav li {
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.subNav {
	margin: 0 0 40px;
}

    ul.subNav li a {
        font-family: 'Montserrat', sans-serif;
        font-size: 14px;
        display: block;
        padding: 10px 10px 9px;
        margin-bottom: 2px;
        border-radius: 3px;
        color: #e62a38;
        box-sizing: border-box;
        background: #ebe6ee;
    }

ul.subNav li a:after, ul.subNav li li a:after {
	display: block;
	content: "";
	float: right;
	background: url('../images/sprite.png') no-repeat -165px -145px;
	background-size: 500px 500px;
	width: 7px;
	height: 12px;
	margin-right: 0;
	margin-top: 5px;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
	ul.subNav li a:hover::after {
		background: url('../images/sprite.png') no-repeat -150px -145px;
		background-size: 500px 500px;
	}

ul.subNav li a.selected, ul.subNav li a.selected:hover {
	background: #e62a38;
	color: #fff;
}
	ul.subNav li a.selected::after {
		background: url('../images/sprite.png') no-repeat -180px -145px;
		background-size: 500px 500px;
		width: 7px;
		height: 12px;
		margin-top: 5px;
	}

ul.subNav li a:hover {
	color: #210f33;
	padding-left: 10px;
	background: #cfc5d8;
}


	/* sub sub */
		ul.subNav li ul {
			margin: 0;
		}
		
		ul.subNav li li a:after {
			display: none;
		}
	
		ul.subNav li li a {
			text-transform: none;
			color: #545555;
			background: #f1f1f1;
			display: block;
			padding: 10px 0 10px 20px;
		}
		ul.subNav li li a:hover {
			color: #000;
			background: rgba(17,55,157,0.1);
			padding: 10px 0 10px 25px;
		}
		ul.subNav li li a.selected, ul.subNav li li a.selected:hover {
			background: rgba(17,55,157,0.2);
			font-weight: 700;
			color: #11379d;
			padding-left: 20px;
		}
		ul.subNav li li a.selected::after {
			background: url('../images/sprite.png') no-repeat -150px -145px;
			background-size: 500px 500px;
			width: 7px;
			height: 12px;
		}


/* Breadcrumb
-------------------------------------------------- */
	
#breadcrumbWrap ul, #breadcrumbWrap li {
	list-style: none;
	padding: 0;
	margin: 0;
}

#breadcrumbWrap li, #breadcrumbWrap a {
	font-size: 14px;
	float: left;
	margin: 0;
	color: #f9f5fc;
}

#breadcrumbWrap li .divider {
	color: #f9f5fc;
}


/* Map & results
-------------------------------------------------- */
		
#gMap {
	max-width: 100%;
	height: 550px;
	margin-bottom: 35px;
}
		
		
/* Content
-------------------------------------------------- */

.postit {
    text-align: center;
    margin-bottom: 20px !important;
    padding: 0 0 35px;
    position: relative;
    display: inline-block;
    background: #eee;
    box-sizing: border-box;
    border-bottom: 1px solid #d1d1d1;
}
    .postit, .postit * {
        -webkit-transition: all 0.3s ease-out;
        -moz-transition: all 0.3s ease-out;
        -o-transition: all 0.3s ease-out;
        transition: all 0.3s ease-out;
    }
.postit:hover {
    background: #fafafa;
}
    .postit h4 {
        margin-bottom: 10px;
        color: #e62a38;
        margin: 0px 25px;
    }
    .postit:hover h4 {
        color: #111;
    }
.postit h5 {
	color: #777; 
	margin-bottom: 20px;    
}
    .postit h5::before {
        content: "";
        display: inline-block;
        width: 16px;
        height: 20px;
        background: url('../images/sprite.png') no-repeat -210px -150px;
        background-size: 500px 500px;
        margin-right: 8px;
        vertical-align: middle;
    }

.postit p {
	margin: 0px 25px; 
	color: #111;  
    font-size: 14px;
    line-height: 22px;
}

.postit img {
    margin-bottom: 30px;
}
    .postit:hover img {
        filter: brightness(1.15);
    }

/* gallery */

.galleryIntro {
	text-align: center;
	background: #eee;
	margin-bottom: 20px;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
	border-radius: 3px;
	overflow: hidden;
}
	.galleryIntro img.scale {
		margin-bottom: 15px;
	}
	.galleryIntro:hover {
		background: rgba(17,55,157,0.15);
	}
	.galleryIntro h4 {
		margin: 0 10px 18px;
	}
	
.folioHolder {
	margin-bottom: 20px;
}

	
/* video embed */

.embedVideo {
	position: relative;
	padding-bottom: 56.25%; /* 16/9 ratio */
	padding-top: 0; /* IE6 workaround*/
	height: 0;
	overflow: hidden;
	margin: 0 0 30px 0;
}

.embedVideo iframe,
.embedVideo object,
.embedVideo embed,
.embedVideo video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.intro {
	margin-bottom: 50px;
}

.person figcaption {
    font-style: normal;
}


/* call out box */

.callOut {
	background: #eee;
	padding: 22px 20px 6px 24px;
	margin-bottom: 20px !important;
	box-sizing: border-box;
	-webkit-box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.3);
}

/* quick points */

.quickPoint {
	text-align: center;
}

.quickPoint img {
	width: auto;
	height: 100px; 
	margin-bottom: 15px;
	transition: all 200ms ease-out;
}

.quickPoint a:hover img {
	filter: gray;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
	margin-top: -15px;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.quickPoint p {
	font-size: 14px;
	text-transform: uppercase;
}

/* news */

.row.story h2 {
	margin-bottom: 5px;
}
.row.story h4 {
	margin-bottom: 10px;
}
	
		
/* Footer
-------------------------------------------------- */

#goTop a {
	display: block;
	background: url('../images/sprite.png') no-repeat -350px 0;
	background-size: 500px 500px;
	width: 24px;
	height: 14px;
	float: right;
	margin-top: 5px;
}

#goTop a:hover {
	display: block;
	background: url('../images/sprite.png') no-repeat -350px -32px;
	background-size: 500px 500px;
}

#footerWrap ul, #footerWrap li {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}

#footerWrap li {
	font-size: 15px;
	margin: 0 0 3px;
}

#footerWrap p {
	font-size: 15px;
	color: #fff;
	line-height: 22px;
	margin-right: 0;
}

#footerWrap a {
    text-decoration: none;
    color: #e62a38;
}

#footerWrap a:hover {
	color: #fff;
}

#footerWrap img.scale {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    max-width: 32px;
}

#fmLogo {
	width: 120px;
	height: 13px;
	background: url('../images/sprite.png') no-repeat 0 -195px;
	background-size: 500px 500px;
}


/* #Media Queries
================================================== */

	@media only screen and (min-width: 1280px) and (max-width: 1480px) {
        body {
            font-size: 15px;
            line-height: 23px;
        }
        h1 {
            font-size: 46px;
            line-height: 54px;
        }
        h2 {
            font-size: 30px;
            line-height: 38px;
        }
		.bgGrey {
			padding: 65px 0 55px;
			margin-bottom: 55px;
		}
        #headerHolder {
            height: 82px;
        }

        #headerWrap {
            padding: 20px 0 18px;
        }
        #logo a {
            background: url('../images/sprite.png') no-repeat 0 0;
            background-size: 431px 431px;
            width: 180px;
            height: 42px;
        }
		#nav {
			margin-top: 14px;
		}
		
		.callOut p, .callOut li {
			font-size: 14px;
			line-height: 22px;
		}
	}
	
	/* standard desktop and below  */
	@media only screen and (max-width: 1279px)  {
		
		body, .postit p {
			font-size: 14px;
			line-height: 22px;
		}
		h1 {
			font-size: 44px;
			line-height: 52px;
		}
		h2 {
			font-size: 28px;
			line-height: 36px;
		}
		p.lead {
			font-size: 18px;
			line-height: 26px;
		}
        #footerWrap li {
            font-size: 14px;
        }
        #footerWrap p {
            font-size: 14px;
            line-height: 21px;
        }
		.bgGrey {
			padding: 55px 0 45px;
			margin-bottom: 45px;
		}
        #breadcrumbWrap {
            padding: 10px 0 10px;
        }
		#social li a {
			width: 24px;
			height: 24px;
			background-size: 375px 375px !important;
		}
			#social li a.fb  {
				background: url('../images/sprite.png') no-repeat -27px -322px;
			}
			#social li a.in  {
				background: url('../images/sprite.png') no-repeat -54px -322px;
			}
			#social li a.tw  {
				background: url('../images/sprite.png') no-repeat 0 -322px;
			}
		
				#social li a.fb:hover {
					background: url('../images/sprite.png') no-repeat -27px -346px;
				}
				#social li a.in:hover {
					background: url('../images/sprite.png') no-repeat -54px -346px;
				}
				#social li a.tw:hover  {
					background: url('../images/sprite.png') no-repeat 0 -462px;
				}
	}

	/* Tablet Landscape size to wide monitor  */
	@media only screen and (min-width: 960px) and (max-width: 1279px) {
		
		input[type="text"],  input[type="password"],  input[type="email"],  textarea,  select {
			width: 280px;
		}
		
		#headerHolder {
			height: 62px;
		}
		#headerWrap {
    		padding: 15px 0 11px;
		}
        #logo a {
            background: url('../images/sprite.png') no-repeat 0 0;
            background-size: 335px 335px;
            width: 140px;
            height: 33px;
        }
        #nav {
            margin-top: 8px;
            transition: margin 350ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
        }
        .shadow #nav {
            margin-top: 5px;
        }
		#contentWrap {
			padding: 45px 0 25px;	
		}
		
		.bgGrey {
			padding: 55px 0 35px;
			margin-bottom: 55px;
		}
				
		.quickPoint img {
			height: 60px; 
		}

	}
	
	/* Tablet Portrait and below  */
	@media only screen and (max-width: 959px) 
	{
		body, .postit p {
			font-size: 14px;
			line-height: 22px;
		}
		h1 {
			font-size: 42px;
			line-height: 52px;
		}
		h2 {
			font-size: 34px;
			line-height: 42px;
		}
		p.lead {
			font-size: 17px;
			line-height: 25px;
		}
		
		input[type="text"],  input[type="password"],  input[type="email"],  textarea,  select, .button, button, input[type="submit"], input[type="reset"], input[type="button"] {
			font-size: 14px;
		}
		
		.quickPoint img {
			height: 60px; 
		}
		
		#headerHolder {
			height: 86px;
		}
		#headerWrap {
   			padding: 20px 0 20px;
		}
		
		#social {
			margin-top: 7px;
		}
				
		#contentWrap, #secondaryWrap {
			padding: 45px 0 45px;
		}
		
		#footerWrap p, #footerWrap li {
			font-size: 13px;
			line-height: 21px;
		}
        .twoCol,
        .threeCol {
            column-count: 2;
        }
	}

	/* Tablet Portrait size to standard 960  */
	@media only screen and (min-width: 768px) and (max-width: 959px) {
				
		.no-mob-all{
			display: none;
		}
		.mob-only-all {
			display: block !important;
		}
		.no-tab-p {
			display: none !important;
		}
		.tab-only {
			display: block !important;
		}
		
		.matchLabel {
			margin-left: 0 !important;
		}
		
		#logo a {
			background: url('../images/sprite.png') no-repeat 0 0;
			background-size: 260px 260px;
			width: 172px;
			height: 38px;
		}
				
		#nav {
			margin-top: 0;
		}
		
		#breadcrumb ul {
			margin: 0;
		}
		
	}

	/* All Mobile Sizes  */
	@media only screen and (max-width: 767px) {
		
		body {
			font-size: 15px;
			line-height: 23px;
		}		
		.no-mob, .no-mob-all {
			display: none !important;
		}
		.mob-only, .mob-only-all {
			display: block !important;
		}
		h1 {
			font-size: 34px;
			line-height: 42px;
		}
		h2 {
			font-size: 26px;
			line-height: 34px;
		}
		h3 {
			font-size: 21px;
			line-height: 29px;
		}
		h4 {
			font-size: 16px;
			line-height: 24px;
		}
		p.lead {
			font-size: 16px;
			line-height: 24px;
		}
		
		hr, hr.narrow {
			padding-top: 10px;
			margin: 0 0 30px !important;
		}
        .twoCol,
        .threeCol {
            column-count: 1;
        }
		.infogrid th, .infogrid td {
			font-size: 13px
		}
		
		.matchLabel {
			margin-left: 0 !important;
		}
		
		#headerHolder {
			height: 108px;
		}
		#headerWrap {
			padding: 15px 0 0;
			border-bottom: none
		}
			
		#nav {
			margin-top: 0;
		}
        #logo a {
            background: url('../images/sprite.png') no-repeat 0 0;
            background-size: 335px 335px;
            width: 140px;
            height: 33px;
            margin-bottom: 15px;
        }
		.mob-spacer {
			padding: 24px 0 44px;
		}
		.noUi-target {
			margin-top: 32px;
		}
		
		#breadcrumb ul {
			margin: 0;
		}
        ul.subNav li a {
            font-size: 13px;
        }
		ul.subNav li a.selected::after {
			background: url('../images/sprite.png') no-repeat -150px -100px;
			background-size: 500px 500px;
			width: 11px;
			height: 14px;
			margin-top: 1px;
			margin-right: 8px;
			transform: rotate(-90deg);
		}
		
		.parallax {
			display: none;
		}
		
		#footerWrap {
			padding: 100px 0 40px;
			background: #111 url(../images/bg-footer.png) center top repeat-x;
			background-size: 960px 85px;
		}
		
		#footerWrap hr {
			padding-top: 15px
		}
		
		#footerWrap li {
			font-size: 13px;
		}
		
		#footerWrap p {
			font-size: 13px;
			line-height: 20px;
		}
        #footerWrap img.scale {
            max-width: 150px;
        }
		
	}

	/* Mobile Landscape Size to Tablet Portrait  */
	@media only screen and (min-width: 480px) and (max-width: 767px) {
		#gMap {
			height: 360px
		}

	}

	/* Mobile Portrait Size to Mobile Landscape Size  */
	@media only screen and (max-width: 479px) {
		
		.no-mob-p {
			display: none !important;
		}
		
		.mob-only-p {
			display: block;
		}
		
		#gMap {
			height: 300px
		}
	}
