/* -------------------- MISC -------------------- */

html {
  background: white;
  font-size: 16px;
}

a:focus, a:hover {
  text-decoration: none;
}

.h-flex{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.h-flex.center{
  align-items: center;
}

.v-flex{
  display: flex;
  flex-direction: column;
  align-items: space-between;
}

.v-flex.center{
  justify-content: center;
}




/* -------------------- HEADER -------------------- */

.logo {
  padding: 15px 0px;
  display: inline-block;
}

.logo img{
  height: 60px;
}



/* --- Navigation --- */

.main-nav ul{  
  margin: 0px;
  padding: 0px;
  display: flex;
}

.main-nav ul li{  
  list-style: none;
  margin-right: 30px;
}

.main-nav ul li:last-child{ 
  margin-right: 0px;
} 

.main-nav ul li a{  
  font-size: 1rem;
  font-weight: 300;
  display: inline-block;
}




/* --- Slide Navigation --- */
#slide_nav{
  display: none;
}

#slide_content{
  background-color: white;
}




/* --- Hamburger --- */

.burger-wrapper{
  display: none;
}

.hamburger {
  padding: 10px;
  cursor: pointer;
}

.hamburger-box {
  position: relative;
  width: 30px;
  height: 18px;
}

.hamburger .hamburger-inner, 
.hamburger .hamburger-inner:after, 
.hamburger .hamburger-inner:before {
  background-color: black;
}

.hamburger-inner, 
.hamburger-inner:after, 
.hamburger-inner:before {
  position: absolute;
  width: 30px;
  height: 2px;
  transition: 0.3s;
  background-color: #000;
}

.hamburger-inner {
  top: 50%;
  display: block;
  margin-top: -2px;
}

.hamburger-inner:before {
  top: -8px;
}

.hamburger-inner:after {
  bottom: -8px;
  width: 10px;
}

.hamburger-inner:after, 
.hamburger-inner:before {
  display: block;
  content: "";
}

.hamburger--arrow .hamburger-inner{
  background-color: rgba(0, 0, 0, 0) !important;
}

.hamburger--arrow .hamburger-inner:before {
  transform: translate3d(-8px,2px,0) rotate(-40deg) scaleX(.7);
}

.hamburger--arrow .hamburger-inner:after {
  transform: translate3d(-8px,-2px,0) rotate(40deg) scaleX(.7);
  width: 30px;
}




.banner {
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  width:100%;
  height:40vh;
}





/* -------------------- CONTENT -------------------- */

main {
  min-height: 80vh;
}



/* -------------------- FOOTER -------------------- */





/* -------------------- BOOTSTRAP 4 MEDIAQUERIES -------------------- */

/* This is the top-down version of bootstrap mediaquery where large desktop is the default (no mediaquery) version */

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {


/* --- SLIDE NAV --- */

header{
  position: relative;
  background: white;
  z-index: 1;
  transition: 0.3s transform;
}

#slide_nav{
  height: 100%;
  width: 100%;
  display: block;
  background: #262626;
  position: fixed;
  top: 0;
  right: 0;
  padding-right: 50vw;
}

#slide_content{
  background: white;
  min-height: 100vh;
  box-shadow: -6px 0px 40px rgb(0, 0, 0, 0.2);
  transform: translateX(0px);
  transition: 0.3s transform;
}

#slide_content.open,
header.open{
  transform: translateX(50vw);
}

#slide_nav.open .side-nav-content{
  opacity: 1;
}

.side-nav-content{
  opacity: 0;
  margin: 26px;
  margin-top: 75px;
  font-size: 1rem;
  transition: 0.3s;
}

.side-nav-content .active{
  color: white;
}

.side-nav-content ul{
  padding: 0;
  list-style: none;
}



.logo img{
  height: 50px;
}

.burger-wrapper{
  display: inline-block;
}

}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {}

