body {
  background: url(../imgs/background.png) no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.body {
  margin:0;
  font-family:"Open Sans",sans-serif;
  font-size:16px;
  background-color:#535353;
  color:#000;
  line-height:1.25;
  overflow-y:scroll
}

.body--adventure {
  background-color:#323232
}

.layout-page-container {
  margin:0 auto;
  max-width:100%
}

@media only screen and (min-width:993px) {
  .layout-page-container {
    max-width:910px
    }
}

.grid {
  display:-ms-grid;
  display:grid;
  -ms-grid-columns:1fr 1fr 1fr;
  grid-template-columns:repeat(3,[col] 1fr);
  background-color:#c6c6c6
}

@media only screen and (min-width:993px) {
  .grid {
    padding:.5em
    }
}

.grid-item {
  -ms-grid-column:1;
  -ms-grid-column-span:3;
  grid-column:col 1/span 3
}

.grid-item--project {
  -ms-grid-row:1;
  grid-row:1
}

@media only screen and (min-width:993px) {
  .grid-item--project {
    -ms-grid-row:1;
    grid-row:1;
    -ms-grid-column:1;
    -ms-grid-column-span:2;
    grid-column:col 1/span 2;
    margin-right:.25em
    }
}

.grid-item--side {
  -ms-grid-row:2;
  grid-row:2
}

@media only screen and (min-width:993px) {
  .grid-item--side {
  -ms-grid-row:1;
  grid-row:1;
  -ms-grid-column:3;
  -ms-grid-column-span:1;
  grid-column:col 3/span 1;
  margin-left:.25em
  }
}

.grid-item--latest {
  display:none
}

@media only screen and (min-width:993px) {
  .grid-item--latest {
  display:block;
  -ms-grid-row:2;
  grid-row:2;
  -ms-grid-column:1;
  -ms-grid-column-span:1;
  grid-column:col 1/span 1;
  margin-right:.25em;
  margin-top:.5em
  }
}

.grid-item--news {
  -ms-grid-row:3;
  grid-row:3
}

@media only screen and (min-width:993px) {
  .grid-item--news {
    -ms-grid-row:2;
    grid-row:2;
    -ms-grid-column:2;
    -ms-grid-column-span:2;
    grid-column:col 2/span 2;
    margin-left:.25em;
    margin-top:.5em
    }
}

.header {
  display:none
}

@media only screen and (min-width:993px) {
  .header {
  display:block;
  margin:0;
  padding:0;
  border:0
  }
}

.header__image {
  max-width:100%;
  display:block
}

.nav {
  background-color:#000
}

.nav__bar {
  display:none
}

@media only screen and (min-width:993px) {
  .nav__bar {
    display:flex;
    flex-wrap:wrap;
    list-style:none;
    margin:0;
    -webkit-margin-before:0;
    margin-block-start:0;
    -webkit-margin-after:0;
    margin-block-end:0;
    -webkit-margin-start:0;
    margin-inline-start:0;
    -webkit-margin-end:0;
    margin-inline-end:0;
    -webkit-padding-start:0;
    padding-inline-start:0;
    justify-content:center
    }
}

.nav__item {
  padding:.5em;
  text-decoration:none;
  color:#fff;
  text-align:center
}

.nav__item--heart::after {
  content:url(../imgs/icons/heart.gif);
  padding-left:1em;
  padding-right:0;
  vertical-align:middle
}

.nav__link {
  text-decoration:none;
  color:#fff
}

.nav__link:hover {
  color:#daed87
}

.nav__link:focus {
  outline:1px solid #daed87
}

.sidenav {
  width:100%
}

@media only screen and (min-width:993px) {
  .sidenav {
    display:none
    }
}

.sidenav__bar {
  padding:.5em;
  display:flex;
  flex-direction:row;
  justify-content:space-around;
  background-color:#000
}

@media only screen and (min-width:601px) {
  .sidenav__bar {
    justify-content:space-between
    }
}

.sidenav__bar--vertical {
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  list-style-type:none;
  background:#fff
}

.sidenav__slideout {
  z-index:900;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  position:fixed;
  top:0;
  left:-300px;
  width:75%;
  max-width:300px;
  height:100%;
  background-color:#fff;
  overflow-y:auto;
  overflow-x:hidden;
  transition:all .5s ease-in-out
}

.sidenav__slideout--open {
  transform:translate(300px,0)
}

.sidenav__heading {
  color:#fff;
  background-color:#b95c00;
  font-family:"Fira Sans",sans-serif;
  font-size:1.125em;
  padding:.5em
}

.sidenav__item {
  display:block;
  font-family:"Open Sans",sans-serif;
  font-weight:600
}

.sidenav__item--logo {
  flex:1
}

.sidenav__logo {
  display:block;
  width:90%;
  max-width:300px;
  margin:0 auto
}

.sidenav__link {
  text-decoration:none;
  text-align:left;
  color:#000;
  display:block;
  width:80%;
  padding:.5em;
  margin:.25em auto .25em 1em;
  border-bottom:1px solid #000
}

.sidenav__link--final {
  margin-bottom:.75em
}

.sidenav__link:visited {
  color:#000
}

.sidenav__shade {
  display:block;
  z-index:895;
  position:fixed;
  top:0;
  width:100%;
  height:100%;
  background-color:rgba(0,0,0,.75);
  opacity:0;
  transform:translate(-150%,0);
  transition:opacity .5s ease-in-out
}

.sidenav__shade--open {
  transform:translate(0,0);
  opacity:1
}

.project-splash {
  display:flex;
  flex-wrap:wrap;
  flex-direction:column;
  justify-content:space-between
}

.project {
  padding-top:1em;
  padding-bottom:.5em;
  border-bottom:4px solid #000;
  background-color:#eee;
  display:block
}

@media only screen and (min-width:993px) {
  .project {
    padding:0;
    border:.5em solid #eee;
    margin:.25em auto;
    position:relative
    }
}

@media only screen and (min-width:993px) {
  .project:hover .project__navigation {
    background-color:rgba(0,0,0,.75);
    opacity:1
    }
}

@media only screen and (min-width:993px) {
  .project:hover .project__link {
    display:block
    }
}

.project--ve {
  background-color:#535353
}

@media only screen and (min-width:993px) {
  .project--ve {
    margin-top:0;
    background-color:#eee
    }
}

.project__photo {
  max-width:100%;
  height:auto;
  display:block
}

@media only screen and (min-width:601px) {
  .project__photo {
    margin:0 auto
  }
}

@media only screen and (min-width:993px) {
  .project__photo {
    margin:0;
    padding:0;
    transition:all .3s ease-out;
    width:100%
    }
}

.project__navigation {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-around
}

@media only screen and (min-width:601px) {
  .project__navigation {
    max-width:600px;
    margin:0 auto;
    padding:.75em 0;
    flex-direction:row-reverse
    }
}

@media only screen and (min-width:993px) {
  .project__navigation {
    position:absolute;
    top:0;
    max-height:200px;
    padding:0;
    width:100%;
    height:100%;
    flex-direction:column;
    flex-wrap:wrap;
    justify-content:center;
    opacity:0;
    transition:all .3s ease-out
    }
}

.project__link {
  display:inline-block;
  padding:.75em 1em;
  width:14em;
  margin-top:1em;
  border-radius:1em;
  font-family:"Fira Sans",sans-serif;
  border:1px solid #6c8400;
  background-color:#6c8400;
  color:#fff;
  font-size:1em;
  text-decoration:none;
  text-align:center
}

@media only screen and (min-width:601px) {
  .project__link {
    margin-top:0;
    max-width:14em
    }
}

@media only screen and (min-width:993px) {
  .project__link {
    max-height:1.5em;
    max-width:40%;
    margin:.5em auto;
    display:none
    }
}

.project__link:active {
  transform:translateY(.1em)
}

.project__link--orange {
  border:1px solid #b95c00;
  background-color:#b95c00
}

.project__link--white {
  border:1px solid #FFFFFF;
  background-color:#FFFFFF;
  color:#000000;
}

.project__link--teal {
  border:1px solid #0989A0;
  background-color:#0989A0
}

.side-project-splash {
  background-color:#eee
}

@media only screen and (min-width:993px) {
  .side-project-splash {
    background-color:transparent;
    padding:0
    }
}

.side-project-splash__title {
  margin:0;
  border:0;
  padding:.5em 1em;
  font-family:"Fira Sans",sans-serif;
  font-size:1.375em;
  font-weight:600;
  display:block;
  text-align:center
}

@media only screen and (min-width:601px) {
  .side-project-splash__title {
    padding:.5em;
    text-align:center
    }
}

@media only screen and (min-width:993px) {
  .side-project-splash__title {
    display:none
    }
}

.side-project-splash__category {
  border-bottom:4px solid #000;
  display:flex;
  justify-content:space-around
}

@media only screen and (min-width:993px) {
  .side-project-splash__category {
    display:block;
    border:none
    }
}

.side-project {
  padding:.5em;
  margin:0 0 .5em 0;
  border:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-evenly
}

@media only screen and (min-width:993px) {
  .side-project {
    margin:0 auto .5em auto;
    padding:.5em;
    background-color:#eee;
    transition:all .15s ease-out
    }
}

@media only screen and (min-width:993px) {
  .side-project:hover {
    transform:translateY(.1em)
    }
}

.side-project__photo {
  width:100%
}

.side-project__photo--web {
  display:none
}

@media only screen and (min-width:993px) {
  .side-project__photo--web {
    display:block
    }
}

.side-project__photo--mobile {
  display:block
}

@media only screen and (min-width:993px) {
  .side-project__photo--mobile {
    display:none
    }
}

.side-project__caption {
  margin:0;
  border:0;
  display:block;
  color:#fff;
  background-color:#000;
  text-align:center;
  padding:.25em;
  max-width:100%;
  font-family:"Fira Sans",sans-serif
}

@media only screen and (min-width:993px) {
  .side-project__caption {
    display:none
    }
}

.side-project__link {
  text-decoration:none;
  display:inline-block
}

.side-project__link:active {
  transform:translateY(.1em)
}

.latest-pages {
  display:none
}

@media only screen and (min-width:993px) {
  .latest-pages {
    display:block;
    white-space:nowrap;
    overflow:hidden
    }

}

.latest-pages__headline {
  margin:0;
  padding:1em 1em;
  border:0;
  font-family:"Fira Sans",sans-serif;
  font-size:1.375em;
  font-weight:600;
  display:block;
  background-color:#eee
}

.latest-pages__log {
  margin:0;
  padding:1em 1em;
  border:0;
  list-style:none;
  display:block;
  background-color:#eee
}

.latest-pages__item {
  font-family:"Open Sans",sans-serif;
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:16px;
  line-height:1.5;
  font-weight:600
}

.latest-pages__date {
  color:#000
}

.latest-pages__link {
  text-decoration:none;
  color:#6c8400
}

.latest-pages__link--all {
  text-align:center;
  font-size:1.125em;
  display:block;
  background-color:#eee;
  padding:.5em .5em 1em .5em;
  margin:0
}

.latest-pages__link:visited {
  color:#364200
}

.latest-pages__link:focus {
  outline:1px solid #6c8400
}

.latest-pages__link:active {
  transform:translateY(.1em)
}

.latest-pages__link:hover {
  color:#92b200
}

.latest-pages__link:hover .latest-pages__date {
  color:#92b200
}

.news {
  background-color:#eee;
  padding:.5em
}

@media only screen and (min-width:601px) {
  .news {
    padding:1em
    }
}

.news__headline {
  margin:0;
  padding:.5em;
  border:0;
  font-family:"Fira Sans",sans-serif;
  font-size:1.375em;
  font-weight:600;
  display:block;
  text-align:center
}

@media only screen and (min-width:993px) {
  .news__headline {
    text-align:left
    }
}

.news__article {
  padding:1em .5em;
  font-size:110%;
  border-bottom:1px solid #000
}

@media only screen and (min-width:993px) {
  .news__article {
    font-size:100%
    }
}

.news__article:last-child {
  border-bottom:none
}

.news__byline {
  margin:0;
  padding:0;
  border:0;
  vertical-align:baseline;
  font-style:italic;
  font-size:16px
}

.news__article a {
  color:#6c8400;
  text-decoration:none
}

.news__article img {
  max-width:100%
}

.news__article a:visited {
  color:#364200
}

.news__article a:hover {
  color:#92b200
}

.body {
  margin:0;
  font-family:"Open Sans",sans-serif;
  font-size:16px;
  background-color:#535353;
  color:#000;
  line-height:1.25;
  overflow-y:scroll
}

.body--adventure {
  background-color:#323232
}

.nav {
  background-color:#000
}

.nav__bar {
  display:none
}

@media only screen and (min-width:993px) {
  .nav__bar {
    display:flex;
    flex-wrap:wrap;
    list-style:none;
    margin:0;
    -webkit-margin-before:0;
    margin-block-start:0;
    -webkit-margin-after:0;
    margin-block-end:0;
    -webkit-margin-start:0;
    margin-inline-start:0;
    -webkit-margin-end:0;
    margin-inline-end:0;
    -webkit-padding-start:0;
    padding-inline-start:0;
    justify-content:center
    }
}

.nav__item {
  padding:.5em;
  text-decoration:none;
  color:#fff;
  text-align:center
}

.nav__item--heart::after {
  content:url(../imgs/icons/heart.gif);
  padding-left:1em;
  padding-right:0;
  vertical-align:middle
}

.nav__link {
  text-decoration:none;
  color:#fff
}

.nav__link:hover {
  color:#daed87
}

.nav__link:focus {
  outline:1px solid #daed87
}

.sidenav {
  width:100%
}

@media only screen and (min-width:993px) {
  .sidenav {
    display:none
    }
}

.sidenav__bar {
  padding:.5em;
  display:flex;
  flex-direction:row;
  justify-content:space-around;
  background-color:#000
}

@media only screen and (min-width:601px) {
  .sidenav__bar {
    justify-content:space-between
    }
}

.sidenav__bar--vertical {
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  list-style-type:none;
  background:#fff
}

.sidenav__slideout {
  z-index:900;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  position:fixed;
  top:0;
  left:-300px;
  width:75%;
  max-width:300px;
  height:100%;
  background-color:#fff;
  overflow-y:auto;
  overflow-x:hidden;
  transition:all .5s ease-in-out
}

.sidenav__slideout--open {
  transform:translate(300px,0)
}

.sidenav__heading {
  color:#fff;
  background-color:#b95c00;
  font-family:"Fira Sans",sans-serif;
  font-size:1.125em;
  padding:.5em
}

.sidenav__item {
  display:block;
  font-family:"Open Sans",sans-serif;
  font-weight:600
}

.sidenav__item--logo {
  flex:1
}

.sidenav__logo {
  display:block;
  width:90%;
  max-width:300px;
  margin:0 auto
}

.sidenav__link {
  text-decoration:none;
  text-align:left;
  color:#000;
  display:block;
  width:80%;
  padding:.5em;
  margin:.25em auto .25em 1em;
  border-bottom:1px solid #000
}

.sidenav__link--final {
    margin-bottom:.75em
}

.sidenav__link:visited {
  color:#000
}

.sidenav__shade {
  display:block;
  z-index:895;
  position:fixed;
  top:0;
  width:100%;
  height:100%;
  background-color:rgba(0,0,0,.75);
  opacity:0;
  transform:translate(-150%,0);
  transition:opacity .5s ease-in-out
}

.sidenav__shade--open {
  transform:translate(0,0);
  opacity:1
}

.body-container {
  background-color:#4b4b4b;
  padding-bottom:20px;
  margin:0 auto;
  max-width:950px;
  width:100%
}

.content-container {
  background-color:#636363
}

.advmap {
  max-width:860px;
  width:100%;
  background-color: #cecece;
  padding:20px 0;
  position:relative;
  margin:0 auto;
  box-sizing:border-box;
  text-align:center
}

.advmap__title {
  margin:0 0 20px 0;
  line-height:.75em;
  font-size:16vw;
  font-family:'Courier New',Courier,monospace
}

@media only screen and (min-width:450px) {
  .advmap__title {
    font-size:3.75rem
    }
}

.advmap__section {
  max-width:640px;
  width:100%;
  margin:5px auto 0 auto;
  display:-ms-grid;
  display:grid;
  -ms-grid-columns:1fr 1fr 1fr;
  grid-template-columns:1fr 1fr 1fr;
  margin-bottom:20px
}

@media only screen and (min-width:360px) {
  .advmap__section {
    -ms-grid-columns:auto 1fr 1fr 1fr auto;
    grid-template-columns:auto repeat(3,1fr) auto;
    margin:10px auto 20px auto
    }
}

@media only screen and (min-width:450px) {
  .advmap__section { 
    -ms-grid-columns:auto 1fr 1fr 1fr 1fr auto;
    grid-template-columns:auto repeat(4,1fr) auto;
    margin:10px auto 20px auto
    }
}

@media only screen and (min-width:550px) {
  .advmap__section {
    -ms-grid-columns:auto 1fr 1fr 1fr 1fr 1fr auto;
    grid-template-columns:auto repeat(5,1fr) auto;
    margin:20px auto 20px auto
    }
}

.advmap__section-wrapper {
  position:relative;
  z-index:10;
  padding:0 10px;
}

.section__aside {
  -ms-grid-row:1;
  -ms-grid-row-span:99;
  grid-row:1/100;
  margin:0;
  max-width:100%;
  flex-direction:column;
  align-items:center;
  justify-content:space-around;
  top:50px;
  display:none;
  width:48px;
  height:100%;
  background-color:#000;
  border:8px solid #000;
  border-radius:10px;
  border-image-source:url(../imgs/advmap/aside_container.png);
  border-image-slice:8;
  border-image-repeat:repeat;
  box-sizing:border-box
}

.section__aside--left {
  -ms-grid-column:1;
  grid-column:1
}

.section__aside--left img {
  width:28px
}

.section__aside--right {
  -ms-grid-column:4;
  grid-column:4
}

.section__aside--right img {
  width:24px
}

@media only screen and (min-width:360px) {
  .section__aside--right {
    -ms-grid-column:5;
    grid-column:5
    }
}

@media only screen and (min-width:450px) {
  .section__aside--right {
    -ms-grid-column:6;
    grid-column:6
    }
}

@media only screen and (min-width:550px) {
  .section__aside--right {
    -ms-grid-column:7;
    grid-column:7
    }
}

.section__aside:empty {
  border:0;
  background-color:transparent
}

@media only screen and (min-width:360px) {
  .section__aside {
    display:flex
    }
}

.advmap__head-wrapper {
  display:inline-block;
  position:relative
}

.advmap__head-wrapper__text-positioner {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  color:#fff;
  letter-spacing:.025rem;
  font-family:Verdana,Geneva,Tahoma,sans-serif;
  box-sizing:border-box;
  padding-left:26.87%;
  padding-right:.68%;
  padding-top:5px;
  font-size:4vw
}

@media only screen and (min-width:450px) {
  .advmap__head-wrapper__text-positioner {
    font-size:1.2rem;
    padding-top:15px
    }
}

.advmap__head-title {
  color:#000;
  display:block;
  font-size:4.25vw
}

@media only screen and (min-width:450px) {
  .advmap__head-title {
    font-size:1.35rem
    }
}

.advmap__head {
  max-width:100%;
  vertical-align:bottom
}

.advmap__item {
  max-width:100%;
  vertical-align:bottom
}

@media only screen and (min-width:850px) {
  .advmap__fadedsides {
    width:100%;
    height:100%;
    top:0;
    background-image:url(../imgs/advmap/fadedsides.png);
    background-repeat:repeat-y;
    background-size:contain;
    position:absolute
    }
}

@-webkit-keyframes repeatText {
  from {background-position-x:0} to {background-position-x:75px}
}

@keyframes repeatText {
  from {background-position-x:0} to {background-position-x:75px}
}

.social {
  display:flex;
  justify-content:space-evenly;
  background-color:#000;
  color:#fff;
  padding:.5em;
  max-width:100%
}

@media all and (-ms-high-contrast:none),(-ms-high-contrast:active) {
  .social {
    justify-content:space-around
    }
}

@supports (-ms-accelerator:true) {
  .social {
    justify-content:space-around
    }
}

@supports (-ms-ime-align:auto) {
  .social {
    justify-content:space-around
    }
}

.social__icon {
  max-width:56px
}