html,
body {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,303b3d+32,000000+100 */
  background: #000000;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #000000 0%, #303b3d 32%, #000000 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #000000 0%, #303b3d 32%, #000000 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #000000 0%, #303b3d 32%, #000000 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  background: #fff;
  margin: 0;
  padding: 0;
  width: 100%;
}

* {
  box-sizing: border-box;
}

a,
div,
h1,
h2,
h3,
h4,
h5,
h6,
li,
ol,
p,
span,
table,
td,
th,
tr,
ul,
input,
select,
textarea {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  list-style: none;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

hr {
  width: 100%;
}

.row {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  width: 100%;
}

.col {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.row.flex-center,
.col.flex-align-center {
  justify-content: center;
}

.col.flex-center,
.row.flex-align-center {
  align-items: center;
}

.row.flex-start,
.col.flex-align-start {
  justify-content: flex-start;
}

.col.flex-start,
.row.flex-align-start {
  align-items: flex-start;
}

.row.flex-end,
.col.flex-align-end {
  justify-content: flex-end;
}

.col.flex-end,
.row.flex-align-end {
  align-items: flex-end;
}

.content-inner {
  margin: 0 auto;
  max-width: 1250px;
  width: 90%;
}

.content-inner.exempt {
  max-width: none;
}

.clickable,
.btn,
[data-href] {
  cursor: pointer;
}

.row.center {
  justify-content: center;
  text-align: center;
}

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

.bulleted-list,
.bulleted-list li {
  list-style: disc;
}

.bulleted-list li {
  margin-left: 20px;
}

/*----- IMAGES -----*/
.image,
.image img,
.image svg {
  display: block;
  overflow: hidden;
  width: 100%;
}

/*----- WRAPPER -----*/
#wrapper {
  min-height: 100vh;
  transition: transform ease-out .25s;
  width: 100%;
}

#wrapper>div {
  width: 100%;
}

/*----- HEADER -----*/
#header {
  box-shadow: 0px 2px 5px rgba(0, 0, 0, .15);
  z-index: 10;
}

#header .row {
  align-items: stretch;
  height: 100%;
}

#header .image {
  padding: 15px 0;
}

#header .mobile-only .row {
  align-items: center;
}

#header .mobile-only i {
  font-size: 40px;
}

/*----- MOBILE NAV -----*/
.mobile-nav {
  height: 100%;
  font-family: 'Montserrat', sans-serif;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transform: translateX(-200px);
  transition: transform ease-out .25s, opacity ease-out .25s;
  width: 200px;
}

body.mobile-nav-active {
  overflow: hidden;
}

.mobile-nav-active .mobile-nav {
  opacity: 1;
  transform: translateX(0);
}

.mobile-nav-active #wrapper {
  box-shadow: 0px 0px 5px rgba(0, 0, 0, .15);
  transform: translateX(200px);
  transform-origin: center;
  overflow: hidden;
}

.mobile-nav ul li {
  cursor: pointer;
}

.mobile-nav .has-submenu ul {
  margin-left: 10px;
}

.mobile-nav .has-submenu ul li {
  font-weight: 300;
  padding: 7.5px 0;
}

.mobile-nav>ul>li {
  font-weight: 600;
  padding: 15px 10px;
}

/*----- NAV -----*/
.nav {
  height: 100%;
  margin: 0 auto;
}

.nav>ul {
  display: flex;
  height: 100%;
  justify-content: flex-end;
  margin: 0 auto;
}

.nav ul li {
  text-align: left;
  width: 100%;
}

.nav>ul>li {
  align-items: center;
  display: inline-flex;
  height: 100%;
  justify-content: center;
  text-align: center;
}

.nav ul li a {
  display: block;
  margin: 0 auto;
  padding: 10px 20px;
  white-space: nowrap;
  width: 100%;
}

.nav .has-submenu {
  position: relative;
}

.nav>ul>li.has-submenu>.submenu {
  box-shadow: 0px 2px 5px rgba(0, 0, 0, .15);
  left: 0;
  position: absolute;
  top: 100%;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform ease-out .25s, opacity ease-out .25s;
  width: auto;
  z-index: 1;
}

.nav .has-submenu:hover .submenu {
  opacity: 1;
  transform: scaleY(1);
}

.nav .submenu li {
  display: block;
}

#header .mobile-only {
  display: none;
}

@media(max-width: 850px) {
  #header .row {
    justify-content: center;
  }

  #header .desktop-only {
    display: none;
  }

  #header .mobile-only {
    display: flex;
  }

  #header>.content-inner {
    width: 95%;
  }

  #header>.content-inner>.row {
    justify-content: flex-start;
  }

  #header .col.mobile-only+.col {
    flex: 1;
    margin-left: 10px;
  }
}