* {
margin: 0;
padding: 0;
--grey: #4E4949;
--lightgrey: #e1e1e1;
--darkgrey: #232121;
--green:#41B1B9;
--lightgreen:#7ECCD2;
--orange:#D57D52;
--lightorange: #E3AC90;
--addyheightW: 0px; /*200px*/
--addyheightM: 0px; /*140px*/
--addyheightN: 0px; /*120px*/
--addydisplay: none;
--tbheightW:215px;
--tbheightM:175px;
--tbheightN:130px;
}

@font-face {
  font-family: 'Gruppo';
  font-style: normal;
  font-weight: 400;
  src: local('Gruppo Regular'), local('Gruppo-Regular'), url('../fonts/Gruppo-Regular.ttf') format('truetype');
}

body {
font-family: 'Gruppo', sans-serif;
font-size:18px;
background-color: var(--grey);
color: var(--lightgrey);
}

a {
    text-decoration:none;
    color: var(--lightgrey);
}

h3 {
    font-size: 54px;
    font-family: 'Bebas Neue', sans-serif;
    line-height:1;
}

h2 {
    font-size: 30px;
    font-family: 'Bebas Neue', sans-serif;
}

h1 {
    font-size: 24px;
    font-family: 'Bebas Neue', sans-serif;
}
p {
  padding:10px;
}

.blur {
  filter: blur(3px);
}

.overlay {
  position:fixed;
  display:none;
  height:100vh;
  width:100vw;
  background-color:rgb(0,0,0,.7);
  z-index:2000;
}

.titlebar {
  position:fixed;
  display:block;
  top:0px;
  left:0px;
  width:100vw;
  height:var(--tbheightW);
  z-index:100;
  background-color:var(--grey);
}

.titlebar_shift {
    top:-17px;
}

.mainlogo {
  position:relative;
  display:inline-block;
  vertical-align:bottom;
  height:200px;
  margin:5px 10px 10px 15px;
}

.maintitle {
  position:relative;
  display:inline-block;
  vertical-align:bottom;
  height:53px;
  margin-bottom:28px;
}

.maintitlecaption {
    position:relative;
    display:block;
    top:-27px;
    left:175px;
    font-size:16px;
}

.addy {
  position:fixed;
  display:var(--addydisplay);
  top:0px;
  right:0px;
  width:50vw;
  height:var(--addyheightW);
  z-index:110;
  background-color:var(--grey);
  border: 1px solid green;
}

.container {
  position:relative;
  display:block;
  margin:0px;
  padding:0px 10px 10px 80px;
  top:var(--tbheightW);
  overflow:hidden;
}

.menu_box_open {
  position:fixed;
  display:block;
  text-align:right;
  padding:10px 20px 10px 20px;
  top:calc(var(--tbheightW) + var(--addyheightW));
  left:-20px;
  width:180px;
  line-height: 1.4;
  background-color:var(--grey);
  border: 4px solid #fff;
  border-radius:20px;
  -webkit-border-radius:20px;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
}

.menu_box_closed {
  position:fixed;
  display:block;
  text-align:right;
  padding:10px 20px 10px 20px;
  top:calc(var(--tbheightW) + var(--addyheightW));
  left:-220px;
  width:150px;
  line-height: 1.4;
  background-color:var(--grey);
  border: 4px solid #fff;
  border-radius:20px;
  -webkit-border-radius:20px;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
}


.menu_item {
  position:relative;
  -webkit-text-stroke-width:2px;
  font-size:24px;
  transform:translateX(-45%);
  color:var(--lightgrey);
  z-index:1001;
}

.menu_item:hover .famenu::before {
  content: "\f061";
  font-family: "FontAwesome";
  font-weight: 100;
  display: inline-block;
}

.menu_item:hover {
  color:var(--green);
  cursor:pointer;
}

.menu_button_close {
  position:fixed;
  display:none;
  top:calc(var(--tbheightW) + var(--addyheightW));
  left:220px;
  padding:10px 15px 13px 15px;
  border-radius:50%;
  background-color:var(--green);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.menu_button_open {
  position:fixed;
  display:block;
  top:calc(var(--tbheightW) + var(--addyheightW));
  left:15px;
  padding:10px 12px 12px 12px;
  border-radius:50%;
  background-color:var(--orange);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:1002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.search_button_close {
  position:fixed;
  display:none;
  top:calc(65px + var(--tbheightW) + var(--addyheightW));
  left:310px;
  padding:10px 15px 13px 15px;
  border-radius:50%;
  background-color:var(--green);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.search_button_open {
  position:fixed;
  display:block;
  top:calc(65px + var(--tbheightW) + var(--addyheightW));
  left:15px;
  padding:10px 12px 12px 12px;
  border-radius:50%;
  background-color:var(--orange);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:1002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.search_box_open {
  position:fixed;
  display:block;
  text-align:right;
  padding:10px 20px 10px 20px;
  top:calc(60px + var(--tbheightW) + var(--addyheightW));
  left:-30px;
  width:280px;
  line-height: 1.4;
  background-color:var(--grey);
  border: 4px solid #fff;
  border-radius:20px;
  -webkit-border-radius:20px;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
}

.search_box_closed {
  position:fixed;
  display:block;
  text-align:right;
  padding:10px 20px 10px 20px;
  top:calc(60px + var(--tbheightW) + var(--addyheightW));
  left: -340px;
  width:280px;
  line-height: 1.4;
  background-color:var(--grey);
  border: 4px solid #fff;
  border-radius:20px;
  -webkit-border-radius:20px;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .25);
  z-index:2002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
}

.mail_button {
  position:fixed;
  display:block;
  top:calc(130px + var(--tbheightW) + var(--addyheightW));
  left:15px;
  padding:10px 12px 12px 12px;
  border-radius:50%;
  background-color:var(--orange);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:1002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.merch_button {
  position:fixed;
  display:block;
  top:calc(195px + var(--tbheightW) + var(--addyheightW));
  left:15px;
  padding:10px 12px 12px 12px;
  border-radius:50%;
  background-color:var(--orange);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:1002;
  -webkit-transition: left .3s ease;
	-ms-transition: left .3s ease;
	transition: left .3s ease;
  cursor:pointer;
}

.content_box {
  position:relative;
  display:inline-block;
  width:31%;
  height:15vw;
  margin:5px;
  border-radius:20px;
  border: 1px solid var(--lightgrey);
  overflow:hidden;
  cursor:pointer;
}

.content_box_thumb {
  position:relative;
  display:block;
  height:50%;
  width:100%;
  background-color: var(--darkgrey);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: transform 0.3s ease;
}

.content_box_thumb:hover {
  transform: scale(1.1);
}

.content_box_caption {
  position:relative;
  display:block;
  padding:5px 10px 3px 10px;
  font-size: 2vw;
  line-height:.8;
  -webkit-text-stroke-width:1px;
}

.content_box_date {
  position:absolute;
  display:block;
  bottom:8px;
  padding: 0px 10px 0px 10px;
  font-size: 15px;
  -webkit-text-stroke-width:1px;
}

.content_box_thumbcredit {
  position:relative;
  display:block;
  padding: 0px 10px 0px 10px;
  font-size: 12px;
}

.content_tag_box {
  position:absolute;
  display:block;
  bottom:0px;
  right:0px;
  padding: 10px;
  text-align:right;
}

.content_tag {
  position:relative;
  display:inline-block;
  -webkit-text-stroke-width:2px;
  background-color:var(--green);
  color:var(--grey);
  padding:5px 8px 5px 8px;
  border-radius:10px;
  font-size:14px;
}

.content_modal {
  position:fixed;
  display: none;
  width: 500px;
  height: 500px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  border: 4px solid #fff;
  background-color:var(--grey);
  color:var(--lightgrey);
  border-radius:20px;
  overflow:hidden;
  z-index:2002;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
}

.content_modal_thumb {
  position:relative;
  display:block;
  height:40%;
  width:100%;
  background-color: var(--darkgrey);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.content_modal_caption {
  position:relative;
  display:block;
  padding:5px 10px 5px 10px;
  font-size: 24px;
  -webkit-text-stroke-width:1px;
}

.content_modal_date {
  position:relative;
  display:block;
  padding: 0px 10px 0px 10px;
  font-size: 15px;
  -webkit-text-stroke-width:1px;
}

.content_modal_description {
  position:relative;
  display:block;
  padding: 0px 10px 0px 10px;
  font-size: 20px;
}

.content_modal_tag_box {
  position:absolute;
  display:block;
  top:35%;
  right:0px;
  padding: 10px;
  text-align:right;
}

.content_modal_tag {
  position:relative;
  display:inline-block;
  -webkit-text-stroke-width:1px;
  background-color:var(--green);
  color:var(--grey);
  padding:5px 8px 5px 8px;
  margin: 0px 2px 0px 2px;
  border-radius:20px;
  font-size:12px;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  text-transform: lowercase;
  cursor:pointer;
}

.content_modal_visit_box {
  position:absolute;
  display:block;
  -webkit-text-stroke-width:1px;
  bottom:10px;
  right:10px;
  padding: 10px 12px 10px 12px;
  text-align:right;
  background-color:var(--orange);
  color:var(--grey);
  font-size: 18px;
  border-radius:20px;
  cursor:pointer;
  -webkit-box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  box-shadow: 0px 6px 24px 0px rgba(0, 0, 0, .45);
  z-index:2002;
}

.content_modal_close_button {
  position:absolute;
  display:block;
  top:10px;
  right:8px;
  padding:10px 12px 12px 12px;
  border-radius:50%;
  background-color:var(--green);
  -webkit-border-radius:50%;
  -webkit-box-shadow: 0px 6px 18px 0px rgba(0, 0, 0, .65);
  box-shadow: 0px 6px 18px 0px rgba(0, 0, 0, .65);
  cursor:pointer;
  z-index:5000;
}

.modal_open {
    overflow: hidden;
    height: 100%;
}

.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }

.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

video {
  /* override other styles to make responsive */
  width: 100%    !important;
  height: auto   !important;
}

.footer {
  position:fixed;
  width:100vw;
  bottom:0px;
  left:0px;
  height:40px;
}

.footer_content {
  position:relative;
  width:100%;
  text-align:center;
  font-size: 11px;
  color:var(--lightgrey);
  background-color:var(--grey);
  height:25px;
}

.footer_cap {
  position:relative;
  width:100%;
  background-image:url(../images/footercap.png);
  background-repeat: repeat-x;
  height:15px;
}

input, textarea, select {
  padding:5px 10px 5px 10px;
  border-radius:10px;
  box-shadow: none;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  border:none;
  outline: none;
  font-size: 16px !important;
}

input:focus,
select:focus,
textarea:focus {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  box-shadow: none;
  outline: none;
}

button {
    background: none;
    border: none;
    margin: 0;
    padding: 0;
    font: inherit;
    text-align: inherit;
    appearance: none;
    outline: none;
    box-shadow: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px auto;
}

th, td {
  border: 1px solid var(--darkgrey);
  padding: 4px;
  text-align: center;
}

th {
  background-color: var(--darkgrey);
}

@media (max-width: 900px) {
  .titlebar {
    top:var(--addyheightM);
    height:var(--tbheightM);
  }

  .titlebar_shift {
    top:-18px;
}

  .mainlogo {
    height:160px;
  }
  .maintitle {
    height:40px;
    margin-bottom:26px;
  }

  .maintitlecaption {
    top:-27px;
    left:145px;
    font-size:14px;
}
  .addy {
    display:var(--addydisplay);
    width:100vw;
    height:var(--addyheightM);
  }
  .container {
    top:var(--tbheightM);
  }

  .menu_box_open {
    top:calc(var(--tbheightM) + var(--addyheightM));
  }

  .menu_box_closed {
    top:calc(var(--tbheightM) + var(--addyheightM));
  }

  .menu_button_close {
    top:calc(var(--tbheightM) + var(--addyheightM));
  }

  .menu_button_open {
    top:calc(var(--tbheightM) + var(--addyheightM));
  }

  .search_button_close {
    top:calc(65px + var(--tbheightM) + var(--addyheightM));
  }

  .search_button_open {
    top:calc(65px + var(--tbheightM) + var(--addyheightM));
  }

  .search_box_open {
    top:calc(60px + var(--tbheightM) + var(--addyheightM));
  }

  .search_box_closed {
    top:calc(60px + var(--tbheightM) + var(--addyheightW));
  }

  .mail_button {
    top:calc(130px + var(--tbheightM) + var(--addyheightM));
  }

  .merch_button {
    top:calc(195px + var(--tbheightM) + var(--addyheightM));
  }

  .content_box {
    width:47%;
    height:170px;
  }

  .content_box_caption {
    font-size: 20px;
    line-height: .9;
  }

  .content_box_date {
    font-size: 14px;
  }

  .content_tag {
    font-size:14px;
  }

  .content_modal {
    width: 440px;
  }

  .content_modal_description {
    font-size: 18px;
  }

}

@media (max-width: 400px) {
  .titlebar {
    top:var(--addyheightN);
    height:var(--tbheightN);
  }

  .titlebar_shift {
    top:-18px;
}

  .mainlogo {
    height:120px;
  }
  .maintitle {
    height:40px;
    margin-bottom:25px;
  }

  .maintitlecaption {
    top:-27px;
    left:115px;
    font-size:12px;
}
  .addy {
    display:var(--addydisplay);
    width:100vw;
    height:var(--addyheightN);
  }
  .container {
    top:var(--tbheightN);
  }

  .menu_box_open {
    top:calc(10px + var(--tbheightN) + var(--addyheightN));
  }

  .menu_box_closed {
    top:calc(10px + var(--tbheightN) + var(--addyheightN));
  }
  .menu_button_close {
    top:calc(10px + var(--tbheightN) + var(--addyheightN));
  }

  .menu_button_open {
    top:calc(10px + var(--tbheightN) + var(--addyheightN));
  }

  .search_button_close {
    top:calc(75px + var(--tbheightN) + var(--addyheightN));
  }

  .search_button_open {
    top:calc(75px + var(--tbheightN) + var(--addyheightN));
  }

  .search_box_open {
    top:calc(70px + var(--tbheightN) + var(--addyheightN));
  }

  .search_box_closed {
    top:calc(70px + var(--tbheightN) + var(--addyheightN));
  }

  .mail_button {
    top:calc(140px + var(--tbheightN) + var(--addyheightN));
  }

  .merch_button {
    top:calc(160px + var(--tbheightM) + var(--addyheightM));
  }

  .content_box {
    width:89%;
    height:140px;
  }

  .content_box_caption {
    font-size: 18px;
    line-height: 1;
  }

  .content_box_date {
    font-size: 12px;
  }

  .content_tag {
    font-size:12px;
  }
  .content_modal {
    width: 350px;
  }

  .content_modal_description {
    font-size: 16px;
  }
}