/*——————————————————————————————————————————————————
	HEADER
  ——————————————————————————————————————————————————*/

header {
  /* backdrop-filter: blur(30px);
  background: rgba(46,45,44,0.15);
  transition:all 0.2s ease; */
  z-index:15;
}
/* .menu header {
  backdrop-filter: blur(0px);
  background: rgba(46,45,44,0);
  z-index:15;
} */

#main {
  padding-top:105px;
}

/*——————————————————————————————————————————————————
	HAMBURGER
  ——————————————————————————————————————————————————*/

body.overflow {
	overflow:hidden;
}
.menubutton {
	position: relative;
  cursor:pointer;
}	
.menubutton span {
	width: 28px;
	margin: 4px 0px;
  display: block;
  height: 2px;
  display: flex;
  position:absolute;
  top:50%;
  left: 50%;
  margin-left: -14px;
	margin-top:0px;
	transition: transform 0.25s ease 0s, margin 0.25s ease 0.25s;
}
.menubutton span:first-child {
	margin-top:-8px;
}
.menubutton span:nth-child(2) {
	opacity:1;
	transition: opacity 0s ease 0.25s;
}
.menubutton span:last-child {
	margin-top:8px;
}
.menubutton .inner {
	position:absolute;
	width:100%;
	left:0;
	top:0;
	height:100%;
	transform-origin:50% 50%;
	transition: all 0.5s ease;
}
.menubutton.active .inner {
	transform: rotate(0deg);
	transition: all 0.5s ease 0.5s;
}
.menubutton.active span:first-child {
	margin-top:0px;
	transform: rotate(-45deg);
  transition: transform 0.25s ease 0.25s, margin 0.25s ease 0s;
}
.menubutton.active span:nth-child(2) {
	opacity:0;	
	transition: opacity 0s ease 0.25s;
}
.menubutton.active span:last-child {
	transform: rotate(45deg);
	margin-top:0px;
	transition: transform 0.25s ease 0.25s, margin 0.25s ease 0s;
}
.menubutton {
  width: 50px;
  height: 50px;
  -webkit-appearance: none;
  border: none;
  z-index: 20;
}
.menubutton span, .menubutton.active#searchclose span {
	background:#FF4947;
}
.menubutton.active span {
	background:#2e2d2c;
}

/*——————————————————————————————————————————————————
	MOBILE BACKGROUND
  ——————————————————————————————————————————————————*/

.mobilebackground-container {
  pointer-events:none;
  opacity:0;
  transition:opacity 0.3s ease;
}
.mobilebackground {
  background-color:transparent;
  background-image:url('../img/menu.png');
  background-repeat:no-repeat;
  background-size:cover;
  top:0%;
  height:150%;
  background-position:right center;
  transform:translate(20%, 0%);
  transition:transform 0.3s ease;
  width: 120%;
  right: 0;
}
.menu .mobilebackground-container{
  opacity:1;
  transition:opacity 0.6s ease;
}
.menu .mobilebackground {
  background-position:right center;
  transform:translate(0%, -20%);
}

/*——————————————————————————————————————————————————
	MOBILE MENU
  ——————————————————————————————————————————————————*/

.menu-container {
  pointer-events:none;
  z-index:9;
}
.menu .menu-container {
  pointer-events:all;
}

/*——————————————————————————————————————————————————
	NAV FADE IN
  ——————————————————————————————————————————————————*/

#nav {
  opacity:0;
  transition:opacity 0.3s ease;
}
.menu	#nav {
  opacity:1;
  transition:opacity 0.6s ease;
}
#nav ul, #nav ul li {
  list-style:none;
  margin-bottom:0px;
}

/*——————————————————————————————————————————————————
	ACCORIDION MENU
  ——————————————————————————————————————————————————*/

.text-left {
  text-align:left;
}
.main_menu {
  padding:0px;
  border-top:2px solid black;
}
.main_menu .menu-item {
  list-style:none;
  width:100%;
}
.main_menu .menu-item a {
  display:block;
  text-decoration: none;
}
.main_menu > .menu-item > a {
  display: block;
  padding: 15px 0px;
  text-decoration: none;
  font-size: 36px;
  color: #000;
  line-height: 1;
  position:relative;
}
.main_menu > .menu-item {
  border-bottom: 2px solid #000;
}
.main_menu .menu-item-has-children a::after {
  content: "+";
  display: inline-block;
  font-weight: 400;
  float: right;
  font-family: helvetica;
  font-weight: 300;
  right: 5px;
  position: absolute;
  top: calc(50% - 2px);
  transform: translateY(-50%);
  line-height: 0px;
  font-size: 33px;
}
.main_menu .menu-item-has-children a.active::after {
  content: "–";
}
.main_menu .menu-item-has-children .sub-menu a:after {
  display:none;
}
.main_menu .sub-menu {
  padding:0;
  margin:0;
  padding: 0px 0px 15px 0px;
  float:left;
  display:none;
  width: 100%;
}
@media all and (min-width:768px) {
  .main_menu .sub-menu {
    width: 80%;
  }
}
.main_menu .sub-menu > li {
  width: 50%;
  float:left;
  padding: 2px 0px;
}
.main_menu .sub-menu a {
  color: #fff;
  border:none;
  color: #000;
}
.main_menu .sub-menu li:last-child {
  border:none;
}
.main_menu .sub-menu .sub-menu {
  display:none !important;
}

/* ——————————————————————————————————————————————————
	CHILD SUB-MENU
  ——————————————————————————————————————————————————*/

.sub-nav ul {
  list-style: none;
  text-align:center;
}
.sub-nav li {
  margin: 6px 8px 4px;
  position:relative;
  display:inline-block;
}
.sub-nav li.current_page_item:after {
  content:'';
  position:absolute;
  width:100%;
  height:1px;
  background:#FF4947;
  bottom:-2px;
  left:0;
}

/*——————————————————————————————————————————————————
	SEARCH
  ——————————————————————————————————————————————————*/

.alm-reveal > * {
	opacity:0;
}
#searchform input {
  display: block;
  padding: 15px 0px;
  text-decoration: none;
  font-size: 36px;
  color: #000 !important;
  line-height: 1;
  position:relative;
  border-bottom: 2px solid #000;
  background:transparent;
  transition: background-color 3000s ease 3000s;
  font-family: 'Sneak', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#searchform input::-webkit-input-placeholder {
  color: #000 !important;
}
#searchform input:-moz-placeholder { /* Firefox 18- */
  color: #000 !important;  
}
#searchform input::-moz-placeholder {  /* Firefox 19+ */
  color: #000 !important;  
}
#searchform input:-ms-input-placeholder {  
  color: #000 !important;  
}

#searchform input#searchsubmit {
  background:url('../img/icon-search.svg') no-repeat center center;
  background-size:30px;
  position: absolute;
  right: 0px;
  top: 0px;
  border-bottom: 0px;
}

/* ——————————————————————————————————————————————————
	NAV
  ——————————————————————————————————————————————————*/
 /*
 nav ul li {
  width:100%;
  text-align: center;
  display:block;
  position: relative;
  font-size:15px;
  line-height:30px;
}
@media all and (min-width:1024px) {
  nav {
    padding:30px 0px;	
  }
  nav ul li {
    line-height:30px;
    display:inline-block;
    text-align: right;
    width:auto;
    margin-bottom:0px;
  }
  #main-menu {
    max-width: 760px;
    margin-left: auto;
  }
  #menu-main > li:last-child > a {
    padding-right:0px;
  }
}
.sub-menu {
	margin-bottom:0px;
	padding-left:0px;
}
@media all and (min-width:1024px) {
	#mainnav li a {
    white-space: nowrap;
  }
	#mainnav {
		padding-top:10px;
	}
  #menu-main-1 {
    padding-left:0px;
    padding-right:0px;
  }
  #mainnav li {
    transition-duration: 0.5s;
  }
  #mainnav li:hover {
      cursor: pointer;
  }
  #mainnav ul li ul {
    visibility: hidden;
    opacity: 0;
    min-width: 5rem;
    position: absolute;
    transition: all 0.35s ease-in;
    left: 0;
    display: none;
    margin-bottom:0px;
  }
  .sub-menu {
    z-index: 100;
    padding: 10px 0px;
    background: #fff;
  }
  #mainnav ul li.menu-item:hover > ul, .menu-item-has-children a:hover ul.sub-menu,
  #mainnav ul li.menu-item:focus-within > ul,
  #mainnav ul li.menu-item ul:hover {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
  }
  div#mainnav div#navcontainer ul#menu-main li.menu-item-has-children:hover > ul.sub-menu, div#mainnav div#navcontainer ul#menu-main li.menu-item-has-children > ul.sub-menu > li.menu-item-has-children:hover ul.sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
  }
  #mainnav ul li ul li {
    clear: both;
    width: 100%;
    text-align: left;
    margin-bottom:0px;
  }
  #mainnav ul li ul li {
    text-align: left;
    text-transform:none;
    letter-spacing: 0px;
    padding: 0px 0px;
  }
  .scrollnav .sub-menu {
    background:transparent;
  }
  body:not(.scrollnav) #mainnav ul li ul li:hover {
    background:rgba(0,0,0,0.03)
  }
  #mainnav ul li ul li:hover {
    background:rgba(0,0,0,0.03)
  }
  #mainnav ul li ul li.menu-item-has-children {
    position:relative;
  }
  #mainnav ul li ul li ul {
    top:-10px;
    right: 100%;
    left: unset;
  }
  #mainnav li a {
    width: max-content;
    display:block;
    width: 100%;
    padding: 4px 20px;
  }
}
#searchclose {
  position: fixed;
  top: 11px;
  right: 13px;
}
@media all and (min-width:1024px) {
  #searchclose {
    display:none;
  }
}
@media all and (min-width:768px) {
  #searchclose {
    right: 30px;
  }
}
@media all and (max-width:1024px) {
  #mainnav {
    position:fixed;
    height:100%;
    top:0;
    right:0;
    width:100%;
    color:#fff;
    z-index:1;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    pointer-events: none;
    padding:0px;
    overflow: scroll;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    display:block;
    text-align:left;
  }
  #menu-main {
    padding: 30px 30px 40px;
    background:#FF4947;
    opacity:0;
    visibility: hidden;
    width: 320px;
    margin-left:auto;
    margin-bottom:0px;
  }
  nav ul li a {
    margin: 3px 0px;
    display: block;
  }
  #menu-main-1 {
    padding: 40px;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;    
  }
  .searchshow #mainnav, #mainnav.active {
    pointer-events:all;
  }
  #mainnav.active	#menu-main {
    visibility:visible;
    opacity:1;
  }
  nav {
    background: #fff;
    position: fixed;
    width: 100%;
    z-index: 100;
    top: 0;
    padding:15px 0px 10px 0px;
  }
  #main {
    padding-top:90px;
  }
  nav ul li {
    text-align:left;
  }
  nav ul li a  {
    text-transform:none;
    letter-spacing:0px;
  }
  #mainnav #navcontainer > ul > li > a {
    text-transform: uppercase;
    letter-spacing: 0.1em;
  }
  #mainnav #navcontainer > ul > li {
    margin-bottom: 20px;
  }
}
@media all and (max-width:768px) {
  .wrapper {
      padding: 0px 13px;
  }
}
@media all and (min-width:1024px) {
  #main {
    padding-top:132px;
    position:relative;
  }
}
#navigation {
  position: absolute;
  top: 0;
  z-index: 100;
  width: 100%;
}
.home #navigation, .page-template-page-home-php #navigation {
	position:fixed;
	background:transparent;
	top: 0;
	width:100%;
	left:0;
	z-index: 90;
}
@media all and (max-width:1024px) {
  #navigation {
    position:fixed !important;
    background:#fff;
  }
}
.home #navigation.stick {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background-color:transparent;
	z-index:100;
} 
*/