@charset "utf-8";

body,div,dl,dt,dd,p,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,blockquote,form{margin:0;padding:0;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;margin:0;padding:0;}
ul,ol{list-style:none;}
img,a img{border:none;}
*:link,*:visited{text-decoration:none;}
*:active,*:focus{outline:0;}
a[x-apple-data-detectors] { color: inherit !important; text-decoration: none !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important; }
table{border-collapse:collapse;border-spacing:0;}
label,button{cursor:pointer;}
input,textarea,select{font-family:inherit;font-size:inherit;padding:0;margin:0;vertical-align:middle;}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
input[type=number]{-moz-appearance:textfield;}
input, textarea, button, select, label, a { -webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: transparent; }
button, input[type=submit], input[type=password] { -webkit-appearance: none; border-radius: 0; }
textarea, input[type=text], input[type=email], input[type=tel], input[type=url], input[type=search] { -webkit-appearance: none; border-radius: 0; }

::-moz-selection { background-color: #002878; color: #FFF; }
::selection { background-color: #002878; color: #FFF; }

@font-face { font-family: Gotham; src: url(GothamPro.eot); src: url(GothamPro.woff2) format("woff2"),url(GothamPro.woff) format("woff"),url(GothamPro.ttf) format("truetype"),url(GothamPro.svg#GothamPro) format("svg"),url(GothamPro.eot?#iefix) format("embedded-opentype"); font-weight: 400; font-style: normal; }
@font-face { font-family: Gotham; src: url(GothamPro-Medium.eot); src: url(GothamPro-Medium.woff2) format("woff2"),url(GothamPro-Medium.woff) format("woff"),url(GothamPro-Medium.ttf) format("truetype"),url(GothamPro-Medium.svg#GothamPro-Medium) format("svg"),url(GothamPro-Medium.eot?#iefix) format("embedded-opentype"); font-weight: 500; font-style: normal; }
strong { font-weight: 500; }

/*fade in effects*/
@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.fade-in { opacity:0;-webkit-animation:fadeIn ease-in 1;-moz-animation:fadeIn ease-in 1;animation:fadeIn ease-in 1;-webkit-animation-fill-mode:forwards;-moz-animation-fill-mode:forwards;animation-fill-mode:forwards;-webkit-animation-duration:0.5s;-moz-animation-duration:0.5s;animation-duration:0.5s; }

html 					{ overflow-y: scroll; }
body 					{ background-color: #FFF; color: #111; font-family: "Gotham", sans-serif; font-size: 16px; line-height: 1; }
body.noscroll			{ overflow: hidden; }
.page-layout			{ padding-top: 100px; }
.inner                  { padding: 0 100px; overflow: hidden; }
.inner:after			{ clear: both; content: ""; display: table; }
.clear:after			{ clear: both; content: ""; display: table; }
.left	                { float: left; }
.right	                { float: right; }

body::before { background: #002878; content: ""; height: 100%; width: 8px; pointer-events: none; position: fixed; top: 0; left: 0; z-index: 99999; }

.mob-header { display: none; }
.mob-nav { display: none; }

/* HEADER
-------------------------------------------------------------------------------------------------*/
.page-header { background: #FFF; border-bottom: 2px solid #edeeef; display: flex; align-items: center; justify-content: space-between; position: relative; height: 120px; transition: all .1s ease-out; position: fixed; top: 0; left: 0; right: 0; z-index: 1; padding: 0 100px; }
.page-header:hover { border-color: #edeeef; }
.page-header-on { border-color: #edeeef; }
.page-header a.logo { display: block; }
.page-header a.logo img { height: 70px; width: auto; }
.page-header a.logo:hover { opacity: 0.8; }

.page-nav {  }
.page-nav ul { font-family: "Gotham"; font-size: 20px; }
.page-nav ul li { display: block; float: left; position: relative; }
.page-nav ul li a { border-bottom: 1px solid #FFF; color: #646566; cursor: pointer; display: block; line-height: 40px; margin-left: 40px; }
.page-nav ul li a:hover	{ border-bottom: 1px solid #002878; color: #002878; }
.page-nav ul li.on a { border-bottom: 1px solid #dcdddf; color: #111; }


/* FOOTER
-------------------------------------------------------------------------------------------------*/
body.entry-contact .page-footer .banner { display: none; }
.page-footer .banner			{ padding: 60px 0; background-color: #f6f7f8; border-top: 1px solid #edeeef; border-bottom: 1px solid #edeeef; }
.page-footer .banner .inner		{ max-width: 1000px; }
.page-footer .banner p			{ color: inherit; }
.page-footer .row1				{ padding: 60px 0; border-bottom: 1px solid #edeeef; }
.page-footer .row2				{ padding: 50px 0; }
.page-footer .inner>div			{ float: left; padding-right: 5%; width: 20%; }
.page-footer .inner>.middle		{ width: 45%; }
.page-footer .inner>.middle p	{ max-width: 600px; }

.page-footer p 				{ color: #002878; font-size: 13px; line-height: 1.8; margin-bottom: 0; }
.page-footer a        	 	{ -moz-transition: all .1s ease-out; -o-transition: all .1s ease-out; -webkit-transition: all .1s ease-out; transition: all .1s ease-out; }
.page-footer a				{ color: #002878; text-decoration: underline; }
.page-footer a:hover		{ opacity: 0.5; }
.page-footer a.logo			{ display: block; height: 70px; width: 70px; }
.page-footer a.logo img		{ height: auto; width: 100%; }
.page-footer a.logo:hover   { opacity: 0.8; }

/* CONTENT
-------------------------------------------------------------------------------------------------*/
h1 { color: #002878; font-size: 55px; font-family: "Gotham"; font-weight: 400; letter-spacing: -0.03em; line-height: 1; margin: 0 0 40px;  }
h2 { color: #002878; font-size: 40px; font-family: "Gotham"; font-weight: 400; line-height: 1.2; margin: 0 0 25px; }
h3 { color: #002878; font-size: 30px; font-family: "Gotham"; font-weight: 400; line-height: 1.2; margin: 0 0 25px; }

.page-content hr 			{ background-color: #edeeef; border: none; clear: both; color: #edeeef; height: 2px; line-height: 1; margin: 0; overflow: hidden; width: 100%; }
.page-content a				{ color: #002878; text-decoration: underline; }
.page-content a:hover		{ color: #646566; text-decoration: underline; }
.page-content a,
.page-content button        { -moz-transition: all .1s ease-out; -o-transition: all .1s ease-out; -webkit-transition: all .1s ease-out; transition: all .1s ease-out; }
.page-content a[href^="tel:"] { text-decoration: none; }

.page-content p				{ color: #111; font-size: 16px; font-weight: 400; line-height: 1.6; margin: 0 0 25px; }
.page-content ul, 
.page-content ol			{ font-size: 16px; line-height: 1.6; margin: 0 0 25px 25px; }
.page-content ul ul,
.page-content ul ol,
.page-content ol ol,
.page-content ol ul 		{ font-size: 100%; margin: 5px 0 5px 25px; }
.page-content ul 			{ list-style-type: disc; }
.page-content ul ul 		{ list-style-type: circle; }
.page-content ul ul ul 		{ list-style-type: square; }
.page-content ol 			{ list-style-type: decimal; }
.page-content ol ol 		{ list-style-type: lower-alpha;	}
.page-content ol ol ol		{ list-style-type: lower-roman; }
.page-content li			{ margin-bottom: 10px; }

.page-content figure:last-child,
.page-content p:last-child,
.page-content ol:last-child,
.page-content ul:last-child{ margin-bottom: 0; }
.page-content h1:only-child,
.page-content h2:only-child,
.page-content h3:only-child,
.page-content figure:only-child,
.page-content p:only-child,
.page-content ol:only-child,
.page-content ul:only-child{ margin-bottom: 0; }

body.vegas-container{ position:static; z-index:-2; }
.vegas-overlay{ opacity: 0.75; background: #002878; }
.vegas-overlay,.vegas-slide,.vegas-slide-inner,.vegas-timer,.vegas-wrapper{position:absolute;top:0;left:0;bottom:0;right:0;overflow:hidden;border:none;padding:0;margin:0}.vegas-timer{top:auto;bottom:0;height:2px}.vegas-timer-progress{width:0;height:100%;background:#fff;-webkit-transition:width ease-out;transition:width ease-out}.vegas-timer-running .vegas-timer-progress{width:100%}.vegas-slide,.vegas-slide-inner{margin:0;padding:0;background:center center no-repeat;-webkit-transform:translateZ(0);transform:translateZ(0)}body .vegas-container{overflow:hidden!important;position:relative}.vegas-video{min-width:100%;min-height:100%;width:auto;height:auto}
body.vegas-container>.vegas-overlay,body.vegas-container>.vegas-slide,body.vegas-container>.vegas-timer{position:fixed;z-index:-1}:root body.vegas-container>.vegas-overlay,:root body.vegas-container>.vegas-slide,_::full-page-media,_:future{bottom:-76px}.vegas-transition-fade,.vegas-transition-fade2{opacity:0}.vegas-transition-fade-in,.vegas-transition-fade2-in{opacity:1}.vegas-transition-fade2-out{opacity:0}.vegas-transition-blur,.vegas-transition-blur2{opacity:0;-webkit-filter:blur(32px);filter:blur(32px)}.vegas-transition-blur-in,.vegas-transition-blur2-in{opacity:1;-webkit-filter:blur(0);filter:blur(0)}.vegas-transition-blur2-out{opacity:0}.vegas-transition-flash,.vegas-transition-flash2{opacity:0;-webkit-filter:brightness(25);filter:brightness(25)}.vegas-transition-flash-in,.vegas-transition-flash2-in{opacity:1;-webkit-filter:brightness(1);filter:brightness(1)}.vegas-transition-flash2-out{opacity:0;-webkit-filter:brightness(25);filter:brightness(25)}.vegas-transition-negative,.vegas-transition-negative2{opacity:0;-webkit-filter:invert(100%);filter:invert(100%)}.vegas-transition-negative-in,.vegas-transition-negative2-in{opacity:1;-webkit-filter:invert(0);filter:invert(0)}.vegas-transition-negative2-out{opacity:0;-webkit-filter:invert(100%);filter:invert(100%)}.vegas-transition-burn,.vegas-transition-burn2{opacity:0;-webkit-filter:contrast(1000%) saturate(1000%);filter:contrast(1000%) saturate(1000%)}.vegas-transition-burn-in,.vegas-transition-burn2-in{opacity:1;-webkit-filter:contrast(100%) saturate(100%);filter:contrast(100%) saturate(100%)}.vegas-transition-burn2-out{opacity:0;-webkit-filter:contrast(1000%) saturate(1000%);filter:contrast(1000%) saturate(1000%)}.vegas-transition-slideLeft,.vegas-transition-slideLeft2{-webkit-transform:translateX(100%);transform:translateX(100%)}.vegas-transition-slideLeft-in,.vegas-transition-slideLeft2-in{-webkit-transform:translateX(0);transform:translateX(0)}.vegas-transition-slideLeft2-out,.vegas-transition-slideRight,.vegas-transition-slideRight2{-webkit-transform:translateX(-100%);transform:translateX(-100%)}.vegas-transition-slideRight-in,.vegas-transition-slideRight2-in{-webkit-transform:translateX(0);transform:translateX(0)}.vegas-transition-slideRight2-out{-webkit-transform:translateX(100%);transform:translateX(100%)}.vegas-transition-slideUp,.vegas-transition-slideUp2{-webkit-transform:translateY(100%);transform:translateY(100%)}.vegas-transition-slideUp-in,.vegas-transition-slideUp2-in{-webkit-transform:translateY(0);transform:translateY(0)}.vegas-transition-slideDown,.vegas-transition-slideDown2,.vegas-transition-slideUp2-out{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.vegas-transition-slideDown-in,.vegas-transition-slideDown2-in{-webkit-transform:translateY(0);transform:translateY(0)}.vegas-transition-slideDown2-out{-webkit-transform:translateY(100%);transform:translateY(100%)}.vegas-transition-zoomIn,.vegas-transition-zoomIn2{-webkit-transform:scale(0);transform:scale(0);opacity:0}.vegas-transition-zoomIn-in,.vegas-transition-zoomIn2-in{-webkit-transform:scale(1);transform:scale(1);opacity:1}.vegas-transition-zoomIn2-out,.vegas-transition-zoomOut,.vegas-transition-zoomOut2{-webkit-transform:scale(2);transform:scale(2);opacity:0}.vegas-transition-zoomOut-in,.vegas-transition-zoomOut2-in{-webkit-transform:scale(1);transform:scale(1);opacity:1}.vegas-transition-zoomOut2-out{-webkit-transform:scale(0);transform:scale(0);opacity:0}.vegas-transition-swirlLeft,.vegas-transition-swirlLeft2{-webkit-transform:scale(2) rotate(35deg);transform:scale(2) rotate(35deg);opacity:0}.vegas-transition-swirlLeft-in,.vegas-transition-swirlLeft2-in{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0);opacity:1}.vegas-transition-swirlLeft2-out,.vegas-transition-swirlRight,.vegas-transition-swirlRight2{-webkit-transform:scale(2) rotate(-35deg);transform:scale(2) rotate(-35deg);opacity:0}.vegas-transition-swirlRight-in,.vegas-transition-swirlRight2-in{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0);opacity:1}.vegas-transition-swirlRight2-out{-webkit-transform:scale(2) rotate(35deg);transform:scale(2) rotate(35deg);opacity:0}.vegas-animation-kenburns{-webkit-animation:kenburns ease-out;animation:kenburns ease-out}@-webkit-keyframes kenburns{0%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes kenburns{0%{-webkit-transform:scale(1.5);transform:scale(1.5)}100%{-webkit-transform:scale(1);transform:scale(1)}}.vegas-animation-kenburnsUp{-webkit-animation:kenburnsUp ease-out;animation:kenburnsUp ease-out}@-webkit-keyframes kenburnsUp{0%{-webkit-transform:scale(1.5) translate(0,10%);transform:scale(1.5) translate(0,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsUp{0%{-webkit-transform:scale(1.5) translate(0,10%);transform:scale(1.5) translate(0,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsDown{-webkit-animation:kenburnsDown ease-out;animation:kenburnsDown ease-out}@-webkit-keyframes kenburnsDown{0%{-webkit-transform:scale(1.5) translate(0,-10%);transform:scale(1.5) translate(0,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsDown{0%{-webkit-transform:scale(1.5) translate(0,-10%);transform:scale(1.5) translate(0,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsLeft{-webkit-animation:kenburnsLeft ease-out;animation:kenburnsLeft ease-out}@-webkit-keyframes kenburnsLeft{0%{-webkit-transform:scale(1.5) translate(10%,0);transform:scale(1.5) translate(10%,0)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsLeft{0%{-webkit-transform:scale(1.5) translate(10%,0);transform:scale(1.5) translate(10%,0)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsRight{-webkit-animation:kenburnsRight ease-out;animation:kenburnsRight ease-out}@-webkit-keyframes kenburnsRight{0%{-webkit-transform:scale(1.5) translate(-10%,0);transform:scale(1.5) translate(-10%,0)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsRight{0%{-webkit-transform:scale(1.5) translate(-10%,0);transform:scale(1.5) translate(-10%,0)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsUpLeft{-webkit-animation:kenburnsUpLeft ease-out;animation:kenburnsUpLeft ease-out}@-webkit-keyframes kenburnsUpLeft{0%{-webkit-transform:scale(1.5) translate(10%,10%);transform:scale(1.5) translate(10%,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsUpLeft{0%{-webkit-transform:scale(1.5) translate(10%,10%);transform:scale(1.5) translate(10%,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsUpRight{-webkit-animation:kenburnsUpRight ease-out;animation:kenburnsUpRight ease-out}@-webkit-keyframes kenburnsUpRight{0%{-webkit-transform:scale(1.5) translate(-10%,10%);transform:scale(1.5) translate(-10%,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsUpRight{0%{-webkit-transform:scale(1.5) translate(-10%,10%);transform:scale(1.5) translate(-10%,10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsDownLeft{-webkit-animation:kenburnsDownLeft ease-out;animation:kenburnsDownLeft ease-out}@-webkit-keyframes kenburnsDownLeft{0%{-webkit-transform:scale(1.5) translate(10%,-10%);transform:scale(1.5) translate(10%,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsDownLeft{0%{-webkit-transform:scale(1.5) translate(10%,-10%);transform:scale(1.5) translate(10%,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}.vegas-animation-kenburnsDownRight{-webkit-animation:kenburnsDownRight ease-out;animation:kenburnsDownRight ease-out}@-webkit-keyframes kenburnsDownRight{0%{-webkit-transform:scale(1.5) translate(-10%,-10%);transform:scale(1.5) translate(-10%,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}@keyframes kenburnsDownRight{0%{-webkit-transform:scale(1.5) translate(-10%,-10%);transform:scale(1.5) translate(-10%,-10%)}100%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0)}}

/* PAGE
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.page-intro { background-color: #f6f7f8; padding: 60px 100px; }
.page-intro .intro-text { max-width: 1000px; }
.page-intro p,
.page-intro ul,
.page-intro ol { color: #646566; }

.content-block 			{ margin: 50px 0; }
.full-width 			{ max-width: 1600px; }
.full-width .text		{ max-width: 1000px; }
.two-columns 			{ max-width: 1600px; }
.content-block .half 	{ width: 45%; }

.page-content figure { margin-bottom: 25px; }
.page-content .content-block figure img { height: auto; width: 100%; }
.page-content .content-block figure img.no-transform { display: block; margin: 0 auto; width: auto; max-width: 100%; }

.floating-image figure { margin: 0; }
.floating-image figure.width-full { width: 90%; max-width: 1600px; }
.floating-image figure.width-half { width: 45%; }
.floating-image figure.align-left { float: left; }
.floating-image figure.align-right { float: right; }

/* show hide */
.show-hide * { transition: none; }
.show-hide { position: relative; margin: 20px 0; max-width: 1200px; }
.show-hide:first-child { margin-top: 60px; }
.show-hide:last-of-type { margin-bottom: 60px; }


.show-hide>h3 { cursor: pointer; margin: 0; font-size: 22px; position: relative; }
.show-hide>h3 span { border-bottom: 1px solid #edeeef; color: #111; display: block; padding-bottom: 10px; padding-right: 30px; }

.show-hide>h3 span:after { content:"+"; font-size: 30px; color: #DDD; position: absolute; top: 0; right: 0; line-height: 25px; }
.show-hide-on>h3 span:after { content:"-"; color: #002878; }
.show-hide>h3 span:hover .heading:after { color: #002878; }

.show-hide .content-block { display: none; margin: 30px 0 0; }
.show-hide-on>h3 span,
.show-hide:hover>h3 span { border-bottom: 1px solid #002878; color: #002878; }

.video-block { max-width: 1200px;}
.video-block video { width: 100%; height: auto; }
.video-block .video { position: relative; padding-bottom: 56.25%; /* 16:9 */ padding-top: 25px; height: 0; }
.video-block .video iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }

/* HOME
------------------------------------------------------------------------------------------------------------------------------------------------------*/
body.section-home::before { display: none; }
.section-home .page-layout { padding: 0; }
.section-home .page-header { display: none; }
.home-content { height: 100vh; min-height: 660px; position: relative; border: 10px solid #FFF; box-sizing: border-box; }

.home-inner { position: absolute; bottom: 0; left: 0; width: 100%; }
.home-inner h1 { color: #FFF; line-height: 1.25; margin: 0; padding: 60px; max-width: 70%; }
.home-blocks { background-color: rgba(0,40,120,0.3); margin: 1px; width: auto; }
.home-blocks .block { float: left; width: 25%; }
.home-blocks .block a { background-color: rgba(255,255,255,0.2); border-top: 3px solid transparent; color: rgba(255,255,255,0.7); font-size: 20px; display: block; padding: 50px 60px; margin: 2px 1px 1px; }
.home-blocks .block strong { color: #FFF; display: block; font-size: 26px; font-weight: 400; margin: 0; }

.home-blocks .block:nth-child(2) a { background-color: rgba(255,255,255,0.15); }
.home-blocks .block:nth-child(3) a { background-color: rgba(255,255,255,0.10); }
.home-blocks .block:nth-child(4) a { background-color: rgba(255,255,255,0.05); }
.home-blocks .block a:hover { background-color: rgba(255,255,255,0.25); border-top: 3px solid #FFF; color: #FFF; }

.home-content a.logo	   { display: block; position: absolute; top: 50px; left: 50px; }
.home-content a.logo img   { height: auto; width: 100%; }
.home-content a.logo:hover { opacity: 0.8; }

.home-content a.login-button		{ position: absolute; top: 50px; right: 50px; border: 2px solid rgba(255,255,255,0.3); color: #FFF; display: block; font-size: 14px; letter-spacing: 0.05em; font-weight: 500; line-height: 36px; text-transform: uppercase; padding: 0 12px; }
.home-content a.login-button:hover 	{ border: 2px solid #FFF; color: #FFF; }

/* SERVICES
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.services-content .page-intro { padding-bottom: 180px; }
.services-content .services { background-color: #f6f7f8; position: relative; overflow: visible; }
.services-content .background-images { height: 700px; }
.services-content .services-inner { position: absolute; top: -100px; left: 0; right: 0; }
.services-content .services-inner .inner { display: flex; justify-content: space-between; max-width: 1800px; }
.services-content .services-inner a { background-color: #FFF; border-top: 2px solid #f1f2f3; display: block; min-height: 350px; width: 30%; padding: 30px 30px 60px; position: relative; box-sizing: border-box; text-decoration: none; }
.services-content .services-inner a p { line-height: 1.5; }
.services-content .services-inner a span { color: #646566; position: absolute; bottom: 0; left: 0; padding: 30px; }

.services-content .services-inner a:hover { border-color: #002878; }
.services-content .services-inner a:hover span { color: #002878; }

/* TEAM
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.team-content .page-intro { background-color: #FFF; }
.team-content .team { background-color: #f6f7f8; position: relative; padding-top: 250px; padding-bottom: 100px; }
.team-content .background-images { height: 700px; position: absolute; top: 0; left: 0; right: 0; }
.team-content .team-inner { background-color: #FFF; margin: 0 auto; position: relative; padding: 30px; max-width: 1800px; }

.team-inner article { float: left; padding: 30px; width: 33.33%; box-sizing: border-box; }
.team-inner article:nth-child(3n+1) { clear: both; }
.team-inner article figure { margin-bottom: 20px; }
.team-inner article img { display: block; height: auto; width: 100%; }
.team-inner article header { padding-right: 55px; position: relative; }
.team-inner article header a { display: block; position: absolute; top: 0; right: 0; }
.team-inner article header a:hover { opacity: 0.5; }
.team-inner p.name { color: #111; font-size: 20px; font-weight: 500; margin-bottom: 5px; }
.team-inner p.role { color: #646566; margin-bottom: 20px; }
.team-inner .text p { color: #111; font-size: 15px; margin-bottom: 20px; }

.board-of-advice { background-color: #f6f7f8; padding-bottom: 100px; }
.board-of-advice .centered-text { width: 80%; max-width: 800px; text-align: center; margin-left: auto; margin-right: auto; margin-bottom: 100px; }
.board-of-advice .centered-text p { color: #646566; }
.board-of-advice .board-person { background-color: #FFF; margin: 0 auto 10px; padding: 30px; max-width: 1600px; }
.board-of-advice header { float: left; padding: 30px; width: 33.33%; box-sizing: border-box; }
.board-of-advice p.name { color: #111; font-size: 20px; font-weight: 500; margin-bottom: 5px; }
.board-of-advice p.role { color: #646566; margin-bottom: 20px; }
.board-of-advice .text { float: left; padding: 30px; width: 66.66%; box-sizing: border-box; max-width: 800px; }
.board-of-advice .text p { color: #111; font-size: 15px; margin-bottom: 20px; }

/* INSIGHTS
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.insights-content { background-color: #f6f7f8; }
.insights-content article { background-color: #FFF; border-bottom: 2px solid #f1f2f3; display: block; margin-bottom: 30px; max-width: 1400px; padding: 30px; position: relative; }
.insights-content article .heading h3 { padding-right: 40px; }
.insights-content article .heading:after { content:"+"; font-size: 30px; color: #DDD; position: absolute; top: 0; right: 0; }
.insights-content .summary-on .heading:after { content:"-"; color: #002878; }
.insights-content article:hover .heading:after { color: #002878; }

.insights-content article .heading { cursor: pointer; margin: 0; position: relative; }
.insights-content article .summary { display: none; margin: 20px 0 0; max-width: 800px; }

.insights-content article p.link { display: inline-block; }
.insights-content article p.link a { color: #646566; }
.insights-content article p.link a:hover { color: #002878; }

/* CONTACT
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.contact-content { background-color: #f6f7f8; position: relative; min-height: 750px; }
.contact-content .background-images { height: 600px; }
.contact-content .page-intro { background-color: transparent; }
.contact-content .page-intro h1 { color: #FFF; }

.contact-content .contact-blocks { position: absolute; top: 600px; left: 0; width: 100%; }
.contact-content .contact-blocks .inner { max-width: 1600px; margin: 0 auto; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.contact-content .contact-blocks .block { background-color: #002878; float: left; margin-right: 2.66%; position: relative; width: 23%; }
.contact-content .contact-blocks .block:last-child { margin-right: 0; }
.contact-content .contact-blocks .block:after { content: ""; display: block; padding-bottom: 100%; }
.contact-content .contact-blocks .block>div { position: absolute; top: 0; left: 0; text-align: center; width: 100%; color: #FFF; }
.contact-content .contact-blocks .block strong { color: #FFF; display: block; font-size: 18px; margin: 30% 0 10px; }
.contact-content .contact-blocks .block p { color: #FFF; font-size: 15px; }
.contact-content .contact-blocks .block a { color: #FFF; }
.contact-content .contact-blocks .block a:hover { opacity: 0.8; }

.contact-content .contact-blocks .block:nth-child(2) { background-color: #0d337f; }
.contact-content .contact-blocks .block:nth-child(3) { background-color: #1a3e86; }
.contact-content .contact-blocks .block:nth-child(4) { background-color: #26488c; }

.contact-form .form-block .inner { padding-top: 10vh; margin: 0 auto; max-width: 900px; }

/* CLIENT LOGIN
------------------------------------------------------------------------------------------------------------------------------------------------------*/
.client-login 						{ background-color: #f6f7f8; }
.client-login .login-forms 			{ padding-bottom: 100px; max-width: 1600px; }
.client-login .login-forms .half 	{ width: 45%; padding: 40px; box-sizing: border-box; background-color: #FFF; -webkit-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.05); -moz-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.05); box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.05); }

/* FORMS */

form 				{ margin-bottom: 40px; }
label			  	{ display: block; color: #111; font-family: "Gotham"; font-size: 15px; font-weight: 500; line-height: 1.5; margin-bottom: 8px; }
input			  	{ background: #f6f7f8; border: 1px solid #f6f7f8; color: #646566; display: block; font-size: 16px; height: 45px; margin-bottom: 25px; padding: 0 10px; }
select			  	{ background: #f6f7f8; border: 1px solid #f6f7f8; color: #646566; display: block; font-size: 16px; height: 45px; margin-bottom: 25px; padding: 0 10px; }
textarea		   	{ background: #f6f7f8; border: 1px solid #f6f7f8; color: #646566; display: block; font-size: 16px; height: 120px; margin-bottom: 25px; padding: 10px; }
input:focus,
input:hover,
select:focus,
select:hover,
textarea:focus,
textarea:hover	   	{ background: #f6f7f8; border: 1px solid #ddd; color: #111; }
input,
textarea	       	{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
form button         { background: #FFF; border: 2px solid #002878; color: #002878; display: inline-block; font-family: "Gotham"; font-size: 14px; font-weight: 500; letter-spacing: 0.05em; line-height: 36px; margin-top: 15px; padding: 0 20px; text-transform: uppercase; }
form button			{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
form button:hover   { background: #002878; border: 2px solid #002878; color: #FFF; }

.form-block { background-color: #f6f7f8; margin: 0 !important; }
.form-block .inner { max-width: 1400px; }
.form-block form { background-color: #FFF; padding: 30px; }

.form-block form p { font-size: 16px; }

.form-block .freeform-pages { border-bottom: 2px solid #f1f2f3; display: flex; margin: 0 0 40px; }
.form-block .freeform-pages li { display: block; margin: 0 20px 0 0; padding: 10px 0; font-size: 15px; font-weight: 500; line-height: 20px; position: relative; }
.form-block .freeform-pages li span.on { color: #002878; font-weight: 500; display: block; }
.form-block .freeform-pages li span.on:after { content: ''; border-bottom: 2px solid #002878; display: block; position: absolute; bottom: -2px; left: 0; width: 100%; }

.form-block form label { font-weight: 400 !important; }
.form-block form .freeform-label {  color: #002878; font-weight: 500 !important; font-size: 16px; margin: 0 0 5px; }
.form-block form .freeform-input-only-label { font-weight: 400 !important; }
.form-block form .input-group-one-line label { font-weight: 400 !important; }


.form-block form .freeform-input[type=checkbox] { height: 20px !important; margin: 0; }
.form-block form .freeform-input[type=radio] { height: 20px !important; margin: 0; }

.form-block form .button-add { background-color: #FFF; border: 1px solid #111; color: #111; padding: 0; width: 100%; }
.form-block form .button-add:hover { border: 1px solid #666;  }
.form-block form table { margin-top: 20px; width: 100%; }
.form-block form table input { margin: 0; width: 100%; }
.form-block form table td { padding: 4px; box-sizing: border-box; }
.form-block form table tr th { text-align: left; font-weight: 500; padding: 4px; }
.form-block form table button { border: none; line-height: 1; height: 40px; margin: 0; }

.form-block form .freeform-instructions { color: #666 !important; font-size: 16px !important; margin: 10px 0 10px !important; }
.freeform-form-has-errors { color: red !important; font-weight: 18px; font-weight: 500; margin-bottom: 20px; }
.freeform-row .freeform-column .freeform-errors { clear: both; margin: 0 !important; padding: 10px 0 0 !important; }

.form-block .freeform-row .buttons { border-top: 1px solid #EEE; margin-top: 20px; padding: 20px 0 0; }
.form-block .freeform-row .buttons button { float: none; }

#form-input-children td { padding: 4px 4px 4px 0; }
#form-input-children td:nth-child(1) { width: 40%; }
#form-input-children td:nth-child(2) { width: 220px; }

/* MEDIA QUERIES
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media (max-height:700px) {
	.home-inner h1 { font-size: 40px; }
}

@media (min-width:1400px) {
	.page-content p { font-size: 17px; line-height: 1.5; }
	.page-content ul, 
	.page-content ol { font-size: 17px; line-height: 1.5; }
}
@media (min-width:1600px) {
	.page-layout { padding-top: 120px; }
	.page-nav { height: 119px; }
	.page-nav ul { margin-top: 40px; margin-bottom: 40px; }
	.page-nav a.login-button { top: 40px; }
	.page-header a.symbol { top: 40px; }

	h1 { font-size: 60px; }

	.home-inner h1 { padding: 80px; max-width: 1100px; }
	.home-blocks .block a { font-size: 20px; padding: 80px 90px; }
	.home-blocks .block strong { font-size: 30px; }
	.home-content a.logo { top: 90px; left: 90px; }
	.home-content a.login-button { top: 90px; right: 90px; }

	.page-intro { padding: 80px 100px; }
	.page-intro p,
	.page-intro ul,
	.page-intro ol { font-size: 20px; }

	.team-content .background-images { height: 800px; }
	.team-content .team-inner { padding: 40px; }
	.team-inner article { padding: 40px; }
	.contact-content .contact-blocks .block strong { font-size: 22px; }
	.contact-content .contact-blocks .block p { font-size: 18px; }

}
@media (min-width:1900px) {
	.team-content .background-images { height: 900px; }
	.team-inner article { width: 25%; }
	.team-inner article:nth-child(3n+1) { clear: none; }
	.team-inner article:nth-child(4n+1) { clear: both; }
}
@media (max-width:1300px) {
	.page-header { height: 100px; padding: 0 60px; }
	.page-header a.logo img { height: 60px; }
	.page-nav ul { font-size: 18px; }
	.page-footer a.logo { height: 60px; width: 60px; }
	.inner { padding: 0 60px; }

	h1 { font-size: 45px; margin: 0 0 20px; }
	h2 { font-size: 40px; margin: 0 0 20px; }
	h3 { font-size: 30px; margin: 0 0 20px; }

	.home-inner h1 { padding: 50px; }
	.home-blocks { margin: 0; }
	.home-blocks .block a {font-size: 18px; margin: 1px; padding: 50px; }
	.home-blocks .block strong { font-size: 26px; }
	.home-content a.logo { top: 50px; left: 50px; }
	.home-content a.login-button { top: 50px; right: 50px; }

	.page-intro { padding: 60px; }
	.page-intro p,
	.page-intro ul,
	.page-intro ol { font-size: 18px; }

	.show-hide .content-block { margin: 20px 0 ; }
	.show-hide { margin: 20px 0; }
	.show-hide>h3 { font-size: 20px; }

	.services-content .services-inner a h3 { font-size: 25px; }
	.services-content .services-inner a p { font-size: 15px; line-height: 1.4; }

	.team-content .background-images { height: 600px; }
	.team-content .team { padding-top: 150px; }
	.team-content .team-inner { padding: 20px; }
	.team-inner article { padding: 20px; }
	.team-content p.name { font-size: 18px; }

	.contact-content .contact-blocks .block { margin-right: 1.33%; width: 24%; }
}

@media (max-width:1100px) {
	.page-layout { padding-top: 80px; }
	.page-header { display: none; }
	.inner { padding: 0 40px; }
	.left { float: none; margin-bottom: 20px; }
	.right { float: none; }
	body::before { display: none; }

    .mob-header { background-color: #002878; display: block; position: fixed; top: 0; left: 0; height: 80px; width: 100%; z-index: 1000; }
    .mob-header a.logo { display: block; height: 40px; width: 107px; margin: 20px; background-image: url('/assets/images/logo-white.svg'); background-repeat: no-repeat; background-position: 0 0; -webkit-background-size: 107px 40px; -o-background-size: 107px 40px; background-size: 107px 40px; }

    .mob-header .hamburger { background-color: transparent; position: absolute; top: 0; right: 0; padding: 28px 20px; display: inline-block; cursor: pointer; opacity: 1; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; border: 0; overflow: visible; } 
    .mob-header .hamburger-box { width: 30px; height: 22px; display: inline-block; position: relative; }
    .mob-header .hamburger-inner { background-color: #FFF; display: block; top: 50%; }
    .mob-header .hamburger-inner, 
    .mob-header .hamburger-inner::before, 
    .mob-header .hamburger-inner::after { background-color: #FFF; width: 30px; height: 1px; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
    .mob-header .hamburger-inner::before,
    .mob-header .hamburger-inner::after { content: ""; display: block; }
    .mob-header .hamburger-inner::before { top: -8px; }
    .mob-header .hamburger-inner::after { bottom: -8px; }
    .mob-header .hamburger--squeeze .hamburger-inner { transition-duration: 0.075s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
    .mob-header .hamburger--squeeze .hamburger-inner::before { transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
    .mob-header .hamburger--squeeze .hamburger-inner::after { transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
    .mob-header-active .hamburger { opacity: 0.5; }
    .mob-header-active .hamburger .hamburger-inner { transform: rotate(45deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
    .mob-header-active .hamburger .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
    .mob-header-active .hamburger .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }
    
    .mob-header-on a.logo { background-image: url('/assets/images/symbol-white.svg'); -webkit-background-size: 40px; -o-background-size: 40px; background-size: 40px; }
    .mob-header-active a.logo { background-image: url('/assets/images/symbol-white.svg'); -webkit-background-size: 40px; -o-background-size: 40px; background-size: 40px; opacity: 0.5; }
    
	.mob-nav { background: #002878; display: none; overflow-y: auto; text-align: center; position: fixed; top: 80px; left: 0; bottom: 0; right: 0; width: 100%; z-index: 999; }
    .mob-nav ul li { display: block; margin: 0; }
    .mob-nav ul li a { color: #FFF; display: block; font-size: 20px; line-height: 120px; }
    .mob-nav ul>li.on>a { color: rgba(255,255,255,0.5); }

    .mob-nav ul li:nth-child(5) a { background-color: rgba(255,255,255,0.25); }
    .mob-nav ul li:nth-child(4) a { background-color: rgba(255,255,255,0.20); }
    .mob-nav ul li:nth-child(3) a { background-color: rgba(255,255,255,0.15); }
    .mob-nav ul li:nth-child(2) a { background-color: rgba(255,255,255,0.10); }
    .mob-nav ul li:nth-child(1) a { background-color: rgba(255,255,255,0.05); }

	.page-footer a.logo { height: 40px; width: 40px; }
	.page-footer .banner { padding: 30px 20px; }
	.page-footer .row1 { padding: 10px 0; border-top: 1px solid #edeeef; }
	.page-footer .row2 { padding: 10px 0; }
	.page-footer .inner { padding: 0; }
	.page-footer .inner>div { float: none; padding: 10px 20px; width: auto; }
	.page-footer .inner>.middle { width: auto; }

	h1 { font-size: 40px; margin: 0 0 20px; }
	h2 { font-size: 30px; margin: 0 0 20px; }
	h3 { font-size: 20px; margin: 0 0 20px; }

	.section-home .mob-header { background-color: transparent; }
    .section-home .mob-header-on,
    .section-home .mob-header-active { background-color: #002878; }

	.home-content { border: none; min-height: 600px; }
	.home-blocks .block { float: none; width: 100%; }
	.home-blocks .block a {  border: none; font-size: 15px; padding: 25px 20px; }
	.home-blocks .block a:hover {  border: none; }
	.home-blocks .block strong { font-size: 18px; }
	.home-content a.logo { display: none; }
	.home-content a.login-button { display: none; }

	.page-intro { padding: 60px 40px 40px; }
	.page-intro .half { width: auto; max-width: 700px; }

	.show-hide { margin: 20px 0; }

	.services-content .services-inner .inner { flex-direction: column; justify-content: flex-start; }
	.services-content .services-inner a { margin-bottom: 20px; min-height: 100px; width: 100%; }

	.content-block .half { width: auto; }
	.team-content .text p { font-size: 14px; }

	.board-of-advice .centered-text { margin-bottom: 60px; }

	.insights-content article { padding: 20px; }
	.insights-content article .half { width: auto; }
	.insights-content article p.link { position: relative; bottom: auto; left: auto; padding: 0; margin-top: 20px; }

	.contact-content { padding: 0; min-height: 200px; }
	.contact-content .background-images { height: 50vh; }
	.contact-content .contact-blocks { position: relative; top: auto; left: auto; }
	.contact-content .contact-blocks .inner { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); padding: 2px 2px 0; }
	.contact-content .contact-blocks .block { float: none; margin: 0 0 2px; padding: 20px; width: auto; }
	.contact-content .contact-blocks .block>div { position: relative; top: auto; left: auto; text-align: left; }
	.contact-content .contact-blocks .block:after { display: none; }
	.contact-content .contact-blocks .block strong { margin: 0 0 10px; }

	.contact-form .form-block .inner { padding-top: 50px; }

	.client-login .login-forms .half { width: 100%; float: none; }

}

@media (max-width:900px) {
	.team-content .background-images { height: 800px; }
	.team-content .team-inner { padding: 20px; }
	.team-inner article { padding: 20px; width: 50%; }
	.team-inner article:nth-child(3n+1) { clear: none; }
	.team-inner article:nth-child(odd) { clear: both; }

	.board-of-advice .board-person { padding: 20px; }
	.board-of-advice header { padding: 20px; }
	.board-of-advice .text { padding: 20px; }
}

@media (max-width:720px) {
	html { overflow-y: visible; }
	.inner { margin: 0 auto; padding: 0 20px; width: auto; }
	.left { float: none; margin-bottom: 20px; }
	.right { float: none; }

	h1 { font-size: 30px; margin: 0 0 20px; }
	h2 { font-size: 25px; margin: 0 0 20px; }
	h3 { font-size: 20px; margin: 0 0 20px; }

	.page-content p,
	.page-content ul,
	.page-content ol { font-size: 15px; line-height: 1.4; margin-bottom: 20px; }
	.page-content figure { margin-bottom: 20px; }

	label, input, textarea { font-size: 15px; }

	.home-inner h1 { font-size: 24px; padding: 20px; max-width: 500px; }

	.page-intro { padding: 40px 20px 30px; }
	.page-intro p,
	.page-intro ul,
	.page-intro ol { font-size: 16px; }

	.content-block { margin: 30px 0; }
	.show-hide { margin: 20px 0; }
	.show-hide .content-block { margin: 15px 0 0; }
	.show-hide>h3 { font-size: 16px; }

	.home-content { height: 85vh; }

	.content-block .half { width: auto; }

	.services-content .page-intro { padding-bottom: 150px; }
	.services-content .background-images { height: 500px; }
	.services-content .services-inner a { border-color: #002878; }
	.services-content .services-inner a h3 { font-size: 20px; margin-bottom: 10px; }
	.services-content .services-inner a p { display: none; }
	
	.team-content .team-inner { background-color: transparent; max-width: 500px; padding: 0; }
	.team-inner article { background-color: #FFF; clear: none; float: none; padding: 20px; margin-bottom: 20px; width: 100%; }

	.board-of-advice header { float: none; padding: 0; width: 100%; }
	.board-of-advice .text { float: none; padding: 0; width: 100%; }

	.client-login .login-forms .half { padding: 20px; }

}