/* Fonts */
@font-face {
  font-family: 'Gotham';
  src: url('/assets/woff/Gotham-Book.woff') format('woff');
  font-weight:400;
}
@font-face {
  font-family: 'Gotham';
  src: url('/assets/woff/Gotham-Medium.woff') format('woff');
  font-weight:500;
}
@font-face {
  font-family: 'Gotham';
  src: url('/assets/woff/Gotham-Bold.woff') format('woff');
  font-weight:600;
}

/*
CSS RESET
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	font-family: "Gotham", sans-serif;
	vertical-align: baseline;
  box-sizing:border-box;
	-webkit-font-smoothing: antialiased;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
  box-sizing:border-box;
}
body {
	line-height: 1;
  color:#15214e;
}
body.noscroll {
  position:fixed;
  top:0;
  overflow:hidden;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.cf {
  clear:both;
  width:100%;
  display:block;
}

h1 {
	/* text-transform:uppercase; */
	font-size:52px;
	font-family:"Gotham", sans-serif;
	font-weight:600;
}
h2 {
	font-size:32px;
	font-family:"Gotham", sans-serif;
	font-weight:600;
}
img {
	width:100%;
}
.container {
	max-width:1100px;
	padding:0 40px;
	margin:0 auto;
}
.container.text {
	max-width:900px;
}
sup {
	font-size:10px;
	position:relative;
	top:-6px;
}
em {
	font-style:italic;
}
strong {
	font-weight:600;
}

header {
	position:fixed;
	z-index:100;
	top:0;
	left:0;
	width:100%;
	color:white;
	transition:background-color 0.2s ease, border-bottom 0.2s ease;
	border-bottom:1px solid transparent;
}
header .inner {
	padding:16px 6vw;
	display:flex;
	align-items:center;
	justify-content: space-between;
}

input, textarea {
  border-radius:0px;
}
header .logo svg {
	height: 100px;
	width: auto;
	transition:fill 0.2s ease, height 0.2s ease, margin 0.2s ease;
}
/*header:not(.scrolled) .logo svg * {
	fill:white;
}*/

header .links .social, header .links .search-button, header .links .menu-button {
	display:inline-block;
}

header .social  {
	margin-right:3vw;
}
header .social a {
	color:white;
	display:inline-block;
	margin-right:6px;
	font-size:14px;
	transition:color 0.2s ease;
}

header .search-button {
	margin-right:3vw;
	font-size:16px;
	cursor:pointer;
}
header .search-button span {
	transition:color 0.2s ease;
}
header .search-button svg {
	height: 15px;
  width: auto;
  display: inline-block;
  vertical-align: middle;
  margin-left: 12px;
  margin-top: -3px;
}

header .menu-button {
	font-size:16px;
	cursor:pointer;
}
header .menu-button span {
	transition:color 0.2s ease;
}
header .menu-button svg {
	height: 13px;
	width: auto;
	display: inline-block;
	vertical-align: middle;
	margin-left: 12px;
	margin-top: -2px;
}
header .search-button svg * {
	transition:fill 0.2s ease 0s;
}
header .menu-button svg * {
	transition:fill 0.2s ease 0s;
}

header.scrolled {
	background:white;
	border-bottom:1px solid #eee;
}
header.scrolled .social a, header.scrolled .search-button span, header.scrolled .menu-button span {
	color:#15214e;
}
header.scrolled .search-button svg *, header.scrolled .menu-button svg rect {
	fill:#15214e;
}
header.scrolled .logo #subtext {
	opacity:0;
	height:0;
}
header.scrolled .logo svg {
	height: 72px;
	margin-bottom: -16px;
}



.menu {
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background:linear-gradient(120deg, #009866, #2d368e);
	z-index:200;
	transition: opacity 0.2s ease-out;
	pointer-events:none;
	opacity:0;
	color:white;
}

.menu.active {
	opacity:1;
	pointer-events:all;
}

.menu .inner {
	padding:2vw 6vw;
}
.menu .col {
	float:left;
	width:30%;
}
.menu a {
	text-decoration:none;
	color:white;
	display:block;
	font-size: 1.4vw;
	margin-bottom:0.4vw;
	font-weight:400;
}
.menu a:hover {
	text-decoration:underline;
}
.menu .copyright {
	font-size:10px;
	margin-top:4vw;
}
.menu .social {
	margin-top:0.6vw;
}
.menu .social a {
	display:inline-block;
	font-size:0.8vw;
	margin-right:0.4vw;
}
.menu h3 {
	text-transform:uppercase;
	font-weight:600;
	font-size: 1.4vw;
	margin-bottom:1.4vw;
}
.menu .hs {
	margin-top:5vw;
}
.menu .logo svg {
	width:9vw;
	height:auto;
	margin-bottom:2vw;
}
.menu .supp {
	font-weight:600;
	margin-bottom:1.4vw;
}
.menu .close-menu {
	cursor: pointer;
	position: fixed;
	right: 4vw;
	top: 2vw;
	padding: 2vw;
}
.menu .close-menu img {
	width:20px;
}





.search {
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background:linear-gradient(120deg, #009866, #2d368e);
	z-index:200;
	transition: opacity 0.2s ease-out;
	pointer-events:none;
	opacity:0;
	color:white;
}

.search.active {
	opacity:1;
	pointer-events:all;
}
.search .inner {
	padding:2vw 6vw;
}
.search .close-search {
	cursor: pointer;
	position: absolute;
	right: 4vw;
	top: 2vw;
	padding: 2vw;
}
.search .close-search img {
	width:20px;
}
.search .logo svg {
	width:9vw;
	height:auto;
	margin-bottom:2vw;
}
.search #q {
	box-sizing:border-box;
	border: none;
	border-bottom: 4px solid white;
	-webkit-appearance: none;
	outline: none;
	color: white;
	background: transparent;
	border-radius: 0px;
	width: 50%;
	margin: 0 auto;
	display: block;
	margin-top: 5vw;
	font-size: 3vw;
	padding-bottom: 0.5vw;
	padding-left: 3vw;
	background:url('/assets/images/search.svg');
	background-repeat:no-repeat;
  background-size: 1.8vw;
  background-position: 0% 45%;
}
#q::placeholder {
	color:white;
	opacity:0.3;
}
#results {
	width: 50%;
	margin: 0 auto;
	padding-top: 1vw;
	margin-top: 1vw;
	overflow: scroll;
	height: calc(100vh - 20vw);
}
#results a {
	color:white;
	text-decoration:none;
	display:block;
	cursor:pointer;
	margin-bottom:2vw;
}
#results h3 {
	font-size:2vw;
	font-weight:900;
}
#results h4 {
	font-size:2vw;
	font-weight:900;
	cursor:pointer;
}
#results p {
	cursor:pointer;
}










footer {

}
footer .logo {
	width:13vw;
	height:auto;
}
footer .hf {
  background-color:#f0f0f0;
  background-image:url('/assets/images/hf-footer.svg');
  background-repeat: no-repeat;
  background-position: 100%;
  background-size: contain;
}
footer .hf .container {
	padding: 60px 40px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
footer .hf .links {
	padding-left:6vw;
	display:flex;
	justify-content: center;
	align-items:center;
}
footer .hf .links > div {
	margin-right:6vw;
}
footer .hf .links h3 {
	text-transform:uppercase;
	font-weight:600;
	margin-bottom:8px;
}
footer .hf .links a {
	display:block;
	color:#14214e;
	text-decoration: none;
	padding:8px 0;
}


footer .hs {
	 background:#15214e;
}
footer .hs .container {
  display:flex;
  padding:60px 40px;

  color:white;
}
footer .hs .links {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding-left:6vw;
}
footer .hs .links .column {
	width:auto;
	margin-right:6vw;
}
footer .hs .links a {
	color:white;
	text-decoration: none;
	display:block;
	padding:8px 0;
}
footer .bottom {
	padding:30px 0;
	color:#6d707d;
	background:#0b1127;
	font-size:12px;
}
footer .bottom .container {
  display:flex;
  justify-content: space-between;
}
footer .bottom .social a {
	color:#6d707d;
	margin-left:12px;
}
footer .bottom .social {
  order:1;
}
footer .bottom .copyright {
  order:0;
}
.mobile-only {
  display:none;
}

@media screen and (max-width:1100px) {

  .menu a {
    font-size:1.8vw;
  }
  .menu h3 {
    font-size:1.8vw;
  }
  .menu .social a {
    font-size:1.4vw;
  }

}



@media screen and (max-width:768px) {
  .desktop-only {
    display:none;
  }
  .mobile-only {
    display:block;
  }
  .container {
    padding:0 20px;
  }
  .mobile-only.flex {
    display:flex;
  }
  h1 {
    font-size:42px;
  }
  header .logo svg {
    height:82px;
  }

  .logo svg #subtext {
    display:none;
  }
  header .inner {
    padding:12px 6vw;
  }
  header .links .social {
    display:none;
  }
  header .menu-button span {
    display:none
  }
  header .links .search-button {
    display:none;
  }

  header .menu-button {
    height: 50px;
    padding: 10px 10px;
  }
  .menu {
    overflow-y:scroll;
    padding-bottom:160px;
  }
  .menu .close-menu {
    right: 29px;
    top: 22px;
    padding: 7px;
  }
  .menu .col {
    float:none;
    width:100%;
  }
  .menu .logo svg {
    width: 100px;
    margin-bottom: 50px;
  }
  .menu a {
    font-size:18px;
    margin-bottom:10px;
  }
  .menu .supp {
    margin-bottom:14px;
  }
  .menu .hs {
    margin-top:40px;
  }
  .menu h3 {
    font-size: 18px;
    margin-top: 40px;
    margin-bottom: 10px;
  }
  .menu .copyright {
    font-size:14px;
    margin-top:12px;
  }
  .menu .social {
    margin-top:60px;
  }
  .menu .social a {
    font-size:16px;
    margin-right:18px;
  }
  footer .hf .container {
    display:block;
  }
  footer .hf .links {
    padding-left:0;
    justify-content: space-between;
  }
  footer .hf {
    background-image:none;
  }
  footer .logo {
    width: 40vw;
    margin-bottom: 30px;
  }


  footer .hs .container {
    display:block;
  }
  footer .hs .links {
    padding-left:0;
    justify-content: space-between;
    display:block;
  }
  footer .hs {
    background-image:none;
  }

  footer .bottom .container {
    display:block;
  }
  footer .bottom .social a {
    margin-right: 42px;
    margin-left: 0;
    font-size: 18px;
  }
  footer .bottom .copyright {
    font-size:12px;
    margin-top:10px;
  }

  header.scrolled .menu-button {
    padding-top:16px;
  }



}
