/*
 * jQuery FlexSlider v2.2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */


/* Browser Resets
*********************************/
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;}

/* Icon Fonts
*********************************/
/* Font-face Icons */
@font-face {
	font-family: 'flexslider-icon';
	src:url('fonts/flexslider-icon.eot');
	src:url('fonts/flexslider-icon.eot?#iefix') format('embedded-opentype'),
		url('fonts/flexslider-icon.woff') format('woff'),
		url('fonts/flexslider-icon.ttf') format('truetype'),
		url('fonts/flexslider-icon.svg#flexslider-icon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* FlexSlider Necessary Styles
*********************************/
.flexslider {margin: 0; padding: 0;}
.flexslider .slides > li {display: none; -webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {width: 100%; display: block; padding-right: 1%;}
.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "\0020"; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .slides {display: block;}
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}

/* FlexSlider Default Theme
*********************************/
.flexslider { margin: 0 0 60px; background: #fff; border: 4px solid #fff; position: relative;}
.flex-viewport { max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; -o-transition: all 1s ease; transition: all 1s ease; }
.loading .flex-viewport { max-height: 300px; }
.flexslider .slides { zoom: 1; }
.carousel li { margin-right: 5px; }

/* Direction Nav */
.flex-direction-nav {*height: 0;}
.flex-direction-nav a  { text-decoration:none; display: block; width: 40px; height: 40px; margin: -20px 0 0; position: absolute; top: 50%; z-index: 10; overflow: hidden; opacity: 0; cursor: pointer; color: rgba(0,0,0,0.8); text-shadow: 1px 1px 0 rgba(255,255,255,0.3); -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }
.flex-direction-nav .flex-prev { left: -50px; }
.flex-direction-nav .flex-next { right: -50px; text-align: right; }
.flexslider:hover .flex-prev { opacity: 0.7; left: 10px; }
.flexslider:hover .flex-next { opacity: 0.7; right: 10px; }
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover { opacity: 1; }
.flex-direction-nav .flex-disabled { opacity: 0!important; filter:alpha(opacity=0); cursor: default; }
.flex-direction-nav a:before  { font-family: "flexslider-icon"; font-size: 40px; display: inline-block; content: '\f001'; }
.flex-direction-nav a.flex-next:before  { content: '\f002'; }

/* Pause/Play */
.flex-pauseplay a { display: block; width: 20px; height: 20px; position: absolute; bottom: 5px; left: 10px; opacity: 0.8; z-index: 10; overflow: hidden; cursor: pointer; color: #000; }
.flex-pauseplay a:before  { font-family: "flexslider-icon"; font-size: 20px; display: inline-block; content: '\f004'; }
.flex-pauseplay a:hover  { opacity: 1; }
.flex-pauseplay a.flex-play:before { content: '\f003'; }

/* Control Nav */
.flex-control-nav {width: 100%; position: absolute; bottom: -40px; text-align: center;}
.flex-control-nav li {margin: 0 6px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 11px; height: 11px; display: block; background: #666; background: rgba(0,0,0,0.5); cursor: pointer; text-indent: -9999px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); -moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); -o-box-shadow: inset 0 0 3px rgba(0,0,0,0.3); box-shadow: inset 0 0 3px rgba(0,0,0,0.3); }
.flex-control-paging li a:hover { background: #333; background: rgba(0,0,0,0.7); }
.flex-control-paging li a.flex-active { background: #000; background: rgba(0,0,0,0.9); cursor: default; }

.flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .flex-active {opacity: 1; cursor: default;}

@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev { opacity: 1; left: 10px;}
  .flex-direction-nav .flex-next { opacity: 1; right: 10px;}
}


.grid-button {
	/* background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	background-image: url("../images/grid.png");
	color: #333;
	font-size: 16px;
	padding: 8px 16px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	transition: all 0.3s ease;
	position: relative;
	z-index: 1; */
	transform: scale(0.8) translate(0%, 20%);
  }
  
  /* .grid-button-test {
	background-image: url("../images/grid.png");
	max-width: 50%;
  } */
  
  .grid-button::before {
	/* content: "";
	background-color: #ccc;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scale(1);
	z-index: -1;
	transition: transform 0.3s ease; */
  }
  
  .grid-button:hover::before {
	/* transform: scale(1.2); */
  }
  
  .contact-sheet {
	  display: grid;
	  grid-template-columns: repeat(4, 1fr);
	  grid-gap: 3px;
	  overflow: hidden;
	  max-height: 0;
	  transition: max-height 0.3s ease-in-out;
	}
	
  .contact-sheet.open {
	  max-height: 100%; /* set to a value that fits your content */
	  padding-bottom: 5%;
  }
  
  .contact-sheet li img {
	max-width: 100%;
	height: auto;
  }
  
  .contact-sheet li {
	list-style: none;
  }
  
  .grid-dots div {
	width: 35px;
	height: 5px;
	background-color: black;
	margin: 6px 0;
  }
  
  
  .loader {
	width: 16px;
	height: 16px;
	box-shadow: 0 30px, 0 -30px;
	border-radius: 4px;
	background: currentColor;
	display: block;
	position: relative;
	transform: translate(-150%, -20px);
	color: #CCC;
	box-sizing: border-box;
	animation: animloader 2s ease infinite;
  }
  
  .loader::after,
  .loader::before {
	content: '';
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	box-shadow: 0 30px, 0 -30px;
	border-radius: 4px;
	background: currentColor;
	color: #CCC;
	position: absolute;
	left: 30px;
	top: 0;
	animation: animloader 2s 0.2s ease infinite;
  }
  
  .loader::before {
	animation-delay: 0.4s;
	left: 60px;
  }
  
  @keyframes animloader {
	0% {
	  top: 0;
	  color: white;
	}
  
	50% {
	  top: 30px;
	  color: rgba(255, 255, 255, 0.2);
	}
  
	100% {
	  top: 0;
	  color: #CCC;
	}
  }
  
  
  
  .mygrid {
	width: 16px;
	height: 16px;
	box-shadow: 0 20px, 0 -20px;
	border-radius: 4px;
	background: currentColor;
	display: block;
	position: relative;
	transform: translate(-150%, -20px);
	color: #CCC;
	box-sizing: border-box;
	/* animation: animmygrid 2s ease infinite; */
  }
  
  .mygrid::after,
  .mygrid::before {
	content: '';
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	box-shadow: 0 20px, 0 -20px;
	border-radius: 4px;
	background: currentColor;
	color: #CCC;
	position: absolute;
	left: 20px;
	top: 0;
	/* animation: animmygrid 2s 0.2s ease infinite; */
  }
  
  .mygrid::before {
	/* animation-delay: 0.4s; */
	left: 40px;
  }
  
  /* @keyframes animmygrid {
	0% {
	  top: 0;
	  color: white;
	}
  
	50% {
	  top: 30px;
	  color: rgba(255, 255, 255, 0.2);
	}
  
	100% {
	  top: 0;
	  color: #CCC;
	}
  } */
  
  
  
  .myflow {
	width: 16px;
	height: 16px;
	box-shadow: 0 20px, 0 -20px;
	border-radius: 4px;
	background: currentColor;
	display: block;
	position: relative;
	transform: translate(-150%, -20px);
	color: #CCC;
	box-sizing: border-box;
	/* animation: animmygrid 2s ease infinite; */
  }
  
  
  .myflow::after,
  .myflow::before {
	content: '';
	box-sizing: border-box;
	width: 16px;
	height: 16px;
	box-shadow: 0 20px, 0 -20px;
	border-radius: 4px;
	background: currentColor;
	color: #CCC;
	position: absolute;
	left: 20px;
	top: 0;
	/* animation: animmyflow 2s 0.2s ease infinite; */
  }
  
  .myflow::before {
	/* animation-delay: 0.4s; */
	left: 40px;
  }
  
  /* @keyframes animmyflow {
	0% {
	  top: 0;
	  color: white;
	}
  
	50% {
	  top: 30px;
	  color: rgba(255, 255, 255, 0.2);
	}
  
	100% {
	  top: 0;
	  color: #CCC;
	}
  } */
  
  
  
  .grid-list {
	--color: #FFF;
	--background: #FFF;
	--background-hover: #EEE;
	--icon-color: #CCC;
	padding: 6px 12px 6px 8px;
	margin: 0;
	display: flex;
	outline: none;
	position: relative;
	border: none;
	border-radius: 9px;
	background: var(--b, var(--background));
	cursor: pointer;
	-webkit-appearence: none;
	-webkit-tap-highlight-color: transparent;
	transform: scale(var(--scale, 1)) translateZ(0) rotate(90deg);
	transition: transform 0.15s, background 0.4s;
  }
  .grid-list:active {
	--scale: .95;
  }
  .grid-list:hover {
	--b: var(--background-hover);
  }
  .grid-list.without-text {
	--background: #FFF;
	--background-hover: #EEE;
	--icon-color: #CCC;
	padding: 6px;
  }
  .grid-list .icon {
	width: 24px;
	height: 24px;
	position: relative;
	margin-left: 1px;
	margin-top: 1px;
  }
  .grid-list .icon i {
	position: absolute;
	left: var(--left, 4px);
	top: var(--top, 4px);
	display: block;
	border-radius: 2px;
	width: var(--width, 7px);
	height: var(--height, 7px);
	background: var(--icon-color);
	-webkit-animation: var(--name, var(--dots-name, none)) var(--duration, var(--dots-duration, 0.5s)) var(--easing, var(--dots-easing, linear)) forwards var(--delay, var(--dots-delay, 0s));
			animation: var(--name, var(--dots-name, none)) var(--duration, var(--dots-duration, 0.5s)) var(--easing, var(--dots-easing, linear)) forwards var(--delay, var(--dots-delay, 0s));
  }
  .grid-list .icon .dots i:nth-child(1) {
	--left: 0;
	--top: 0;
  }
  .grid-list .icon .dots i:nth-child(2) {
	--left: 8px;
	--top: 0;
  }
  .grid-list .icon .dots i:nth-child(3) {
	--left: 16px;
	--top: 0;
  }
  .grid-list .icon .dots i:nth-child(4) {
	--left: 0;
	--top: 8px;
  }
  .grid-list .icon .dots i:nth-child(5) {
	--left: 8px;
	--top: 8px;
  }
  .grid-list .icon .dots i:nth-child(6) {
	--left: 16px;
	--top: 8px;
  }
  .grid-list .icon .dots i:nth-child(7) {
	--left: 0;
	--top: 16px;
  }
  .grid-list .icon .dots i:nth-child(8) {
	--left: 8px;
	--top: 16px;
  }
  .grid-list .icon .dots i:nth-child(9) {
	--left: 16px;
	--top: 16px;
  }
  .grid-list .icon .lines {
	--name: var(--lines-name, none);
	--duration: var(--lines-duration, .15s);
	--easing: var(--lines-easing, linear);
	--delay: var(--lines-delay, 0s);
  }
  .grid-list .icon .lines i {
	--left: 2px;
	--top: -4px;
	--height: 9px;
	--width: 20px;
	transform: translateY(20%) translateZ(0) scaleX(0);
  }
  .grid-list .icon .lines i:nth-child(2) {
	--top: 6px;
  }
  .grid-list .icon .lines i:nth-child(3) {
	--top: 16px;
  }
  .grid-list.animation {
	--span-name: text;
	--dots-name: back;
	--lines-name: scale-down;
  }
  .grid-list.animation .lines i {
	transform-origin: 0 50%;
  }
  .grid-list.animation .lines i:nth-child(3), .grid-list.animation .lines i:nth-child(4) {
	transform-origin: 100% 50%;
  }
  .grid-list.animation.active {
	--span-name: text-active;
	--dots-name: move;
	--lines-name: scale;
	--lines-duration: .15s;
	--lines-delay: .3s;
  }
  .grid-list.animation.active .lines i {
	transform-origin: 100% 50%;
  }
  .grid-list.animation.active .lines i:nth-child(3), .grid-list.animation.active .lines i:nth-child(4) {
	transform-origin: 0 50%;
  }
  
  @-webkit-keyframes text {
	0% {
	  opacity: var(--o-active);
	  transform: translateY(var(--y-active)) translateZ(0);
	}
	100% {
	  opacity: var(--o-default);
	  transform: translateY(var(--y-default)) translateZ(0);
	}
  }
  
  @keyframes text {
	0% {
	  opacity: var(--o-active);
	  transform: translateY(var(--y-active)) translateZ(0);
	}
	100% {
	  opacity: var(--o-default);
	  transform: translateY(var(--y-default)) translateZ(0);
	}
  }
  @-webkit-keyframes text-active {
	0% {
	  opacity: var(--o-default);
	  transform: translateY(var(--y-default)) translateZ(0);
	}
	100% {
	  opacity: var(--o-active);
	  transform: translateY(var(--y-active)) translateZ(0);
	}
  }
  @keyframes text-active {
	0% {
	  opacity: var(--o-default);
	  transform: translateY(var(--y-default)) translateZ(0);
	}
	100% {
	  opacity: var(--o-active);
	  transform: translateY(var(--y-active)) translateZ(0);
	}
  }
  @-webkit-keyframes move {
	50% {
	  transform: translate(var(--x-middle, 0), var(--y-middle, 0)) scale(0.4);
	}
	100% {
	  transform: translate(var(--x-end, 0), var(--y-end, 0)) scale(0.4);
	}
  }
  @keyframes move {
	50% {
	  transform: translate(var(--x-middle, 0), var(--y-middle, 0)) scale(0.4);
	}
	100% {
	  transform: translate(var(--x-end, 0), var(--y-end, 0)) scale(0.4);
	}
  }
  @-webkit-keyframes back {
	0%, 15% {
	  transform: translate(var(--x-end, 0), var(--y-end, 0)) scale(0.4);
	}
	50% {
	  transform: translate(var(--x-back, 0), var(--y-back, 0)) scale(0.5);
	}
	100% {
	  transform: translate(var(--x-back-end, 0), var(--y-back-end, 0)) scale(1);
	}
  }
  @keyframes back {
	0%, 15% {
	  transform: translate(var(--x-end, 0), var(--y-end, 0)) scale(0.4);
	}
	50% {
	  transform: translate(var(--x-back, 0), var(--y-back, 0)) scale(0.5);
	}
	100% {
	  transform: translate(var(--x-back-end, 0), var(--y-back-end, 0)) scale(1);
	}
  }
  @-webkit-keyframes scale {
	100% {
	  transform: translateY(20%) translateZ(0) scaleX(1);
	}
  }
  @keyframes scale {
	100% {
	  transform: translateY(20%) translateZ(0) scaleX(1);
	}
  }
  @-webkit-keyframes scale-down {
	0% {
	  transform: translateY(20%) translateZ(0) scaleX(1);
	}
	100% {
	  transform: translateY(20%) translateZ(0) scaleX(0);
	}
  }
  @keyframes scale-down {
	0% {
	  transform: translateY(20%) translateZ(0) scaleX(1);
	}
	100% {
	  transform: translateY(20%) translateZ(0) scaleX(0);
	}
  }
  html {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
  }
  
  * {
	box-sizing: inherit;
  }
  *:before, *:after {
	box-sizing: inherit;
  }