/*
	Theme Name: Freeskiers
	Author: Pär Henriksson, Björn
	Author URI: https://oninteractions.com/
	Version: 1.1
*/

@font-face {
	font-family: 'poppins_regular';
	src: url('./fonts/Poppins-Regular.ttf') format('truetype');
	font-weight: 100;
}

@font-face {
	font-family: 'poppins_bold';
	src: url('./fonts/Poppins-Bold.ttf') format('truetype');
	font-weight: 800;
}

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}

/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
	height: auto;
}
a {
	color:#444;
	text-decoration:none;
}
a:hover {
	color:#444;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

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

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

body {
	font-family: 'poppins_regular';
	font-size: 100%;
}
body.mobile_menu_open {
    position:fixed;
    overflow:hidden;
}
@media (max-width: 700px) {
  body {
	background: #424242;
  }
}

main {
	overflow: hidden;
}

input[type=submit] {
	border: none;
}

ul {
	list-style: none;
	margin:0;
	padding:0;
}

h1,h2,h3,h4,h5,h6 {
	letter-spacing: 0.03em;
	padding: 0;
    margin: 0;
    font-family: 'poppins_bold';
    color:#424242;
}

h1 {
	font-size: 80px;
    line-height: 1.4em;
    letter-spacing: 0.03em;
}
h2 {
	font-size: 1rem;
	font-weight: bold;
	position: relative;
}
p {
	display: block;
    position: relative;
	margin: 0 0 30px 0;
	font-size: 1em;
    line-height: 1.7em;
}
p,a,li {
	color:#424242;
	font-size: 15px;
}
p a,
p a:hover {
	color: #098ACB;
}
@media only screen and (min-width:1400px) {
	p, a, li {
		font-size: 19px;
	}
}
time {
	padding-left:27px;
	background-image: url(img/clock.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 18px auto;
}
button {
	border: none;
    border-radius: 18px;
    padding: 10px 18px;
}
img {
	width:100%;
}




/*
 * Structure
 */
.top-bar {
	width: 100%;
	padding: 8px 55px 6px 55px;
	background: #f2f2f2;
	color: #8E959B;
	font-weight: bold;
	margin: 55px 0 -20px 0;
	font-family: 'poppins_bold';
	position: relative;
	z-index: 2;
}
.top-bar-date {
	font-family: 'poppins_regular';
	font-size: 0.8em;
	line-height: 1.68em;
	display: inline-block;
	padding: 0 6px;
	margin: 0 10px 0 0;
	position: relative;
	top: -2px;
	background: rgba(255, 255, 255, 0.7);
	border-radius: 3px;
}
.top-bar-link {
	color: #8E959B;
	text-decoration: underline;
	font-size: 15px;
}
a.top-bar-link:hover {
	color: #098ACB;
	text-decoration: underline;
}
.top-bar-close {
	float: right;
	margin-left: 20px;
	height: 25px;
	width: 25px;
	text-align: center;
	border-radius: 50%;
	border: 1px solid #8E959B;
	cursor: pointer;
}

nav ul li {
	display: inline-block;
}
nav.main,
nav.sub {
	margin: 0 55px;
}
nav.main {
	position: fixed;
	padding: 15px 55px;
	margin: 0;
	width: 100%;
	z-index: 10;
	transition: background 500ms, box-shadow 500ms;
	background: #fff;
}
nav.main a {
	font-size: 15px;
}

@media (min-width: 1400px) {
  .top-bar {
	margin-top: 60px;
  }
}
@media (max-width: 1200px) {
  .top-bar {
	  margin-top: 80px;
  }
}
@media (max-width: 1100px) {
  .top-bar {
	padding: 7px 30px 7px 30px;
  }
}
@media (max-width: 700px) {
  .top-bar {
	padding: 7px 20px 7px 20px;
	margin-top: 50px;
  }
}


nav.main .right {
	text-align: right;
}
nav.sub {
	display: flex;
    align-items: center;
    justify-content: center;
	background-color: #ffffff;
}
nav.sub li {
	padding: 15px 0;
}
nav.main.scrolled {
	box-shadow: 0 2px 28px rgba(0,0,0,0.10), 0 2px 6px rgba(0,0,0,0.10);
}
nav.sub ul li {
	margin: 0 12px;
}
nav.main a,
nav.sub a {
	font-family: 'poppins_bold';
	color: #8E959B;
}
nav.main a {
	color: #424242;
}
nav.main li:hover a,
nav.sub li:hover a,
nav.main li.current_page a,
nav.sub li.current_page a {
	color: #098ACB;
}
.mobile_menu_icon {
	width: 40px;
	height: 40px;
	position: fixed;
	top:5px;
	right:20px;
	background-image: url(img/mobile_menu_icon.svg);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	z-index: 3000;
	display: none;
}
.mobile_menu_icon.open {
	background-image: url(img/mobile_menu_icon_open.svg);
}
.mobile_menu {
	position: fixed;
	display: none;
	align-items: center;
    display: flex;
	right:-100%;
	height: 100%;
	width:100%;
	overflow-y: auto;
	background-color: #098ACB;
	-webkit-transition: all 0.1s ease;                  
    -moz-transition: all 0.1s ease;                 
    -o-transition: all 0.1s ease;   
    -ms-transition: all 0.1s ease;          
    transition: all 0.1s ease;
    z-index: 2000;
}
.mobile_menu.open {
	right:0;
}
.mobile_menu > ul {
	width:100%;
}
.mobile_menu li {
	padding: 6px 0 6px 0;
}
.mobile_menu li a {
	font-size: 26px;
	color: #ffffff;
	padding: 0 0 0 60px;
	font-family: 'poppins_bold';
}
.mobile_menu li ul li a {
	font-family: 'poppins_regular';
	font-size: 23px;
}
.mobile_menu > ul > li {
	margin-right: 60px;
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-position: right center
}
.mobile_menu > ul > li.has_children {
	background-image:url(img/small_arrow.svg);
}
.mobile_menu ul.children {
	height: 0;
	overflow:hidden;
	padding-left:30px;
}
.mobile_menu li.open ul.children {
	margin: 9px 0;
}

@media only screen and (max-width:500px) {
	.mobile_menu li a {
		padding: 0 0 0 20px;
		font-size: 20px;
	}
	.mobile_menu ul > li {
		margin-right: 30px;
	}
	.mobile_menu li ul li a {
		font-size: 18px;
	}
}
@media only screen and (max-width:700px) {
	nav.sub {
		margin: 0;
		display: none;
	}
	nav.main {
		display: none;	
	}
	.mobile_menu_icon {
		display: block;
	}
}
.article article p,
.article article button,
.article article ul,
.article article .button,
.article article h2 {
	margin: 0 0 30px 50px;
}
@media only screen and (max-width:800px) {
	.article article p,
	.article article button,
	.article article ul,
	.article article .button,
	.article article h2 {
		margin: 0 0 30px 20px;
	}
}

.article article p:last-child {
	margin-bottom: 0;
}

.article article h2 {
	margin-bottom: 15px;
}
.article article p + ul {
	margin-top: -20px;
}
.article iframe {
	width: 700px;
	height: auto;
}
.article iframe.skidklubb-koanmalan {
	width: 100%;
	height: 1050px;
}
.article p,
.article ul,
.article iframe {
	max-width: 700px;
}
@media (min-width: 1075px) {
  .article iframe {
	height: 395px;
  }
  .article iframe.skidklubb-koanmalan {
	height: 1050px;
  }
}
@media (max-width: 1075px) {
  .article iframe {
	width: 622px;
	height: 350px;
  }
}
@media (max-width: 900px) {
  .article iframe {
	width: 500px;
	height: 281px;
  }
}
@media (max-width: 600px) {
  .article iframe {
	width: 290px;
	height: 163px;
  }
}
@media (max-width: 400px) {
  .article iframe {
	width: 240px;
	height: 134px;
  }
}

.section {
	list-style: none;

	-ms-box-orient: horizontal;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -moz-flex;
	display: -webkit-flex;
	display: flex;
}
.section.blue {
	background-color: #00C5FF;
	padding-top:60px;
}
.section.blue h1,
.section.blue p {
	color:#ffffff;
}
.section.blue p:before {
	background-color:#ffffff;
}
.section._hero {
	margin: 0;
	padding: 55px 55px 0 55px;
	position: relative;
}
.smaller_headline {
	font-size: 17px;
}

.header_margin {
	display: block;
    position: relative;
    margin-bottom: 30px;
}

.section.full_width_header {
	display:flex;
	flex-flow: row wrap;
}
.page_logo {
	position: absolute;
	width:260px;
	top: 20px;
	left: 30px;
	z-index: 2;
}
.page_logo-white {
	display: none;
}
.section.full_width_header .background {
	position: relative;
	display: flex;
	flex:1;
	min-height: 300px;
	background-size: cover;
	background-position: center center;
}
.section.full_width_header h1 {
	position: absolute;
	bottom:0;
	font-size: 60px;
	line-height: 1em;
	margin: auto 30px 30px 30px;
	color: #ffffff;
}
@media (max-width: 800px) {
	.page_logo {
		left: 20px;
	}
	.section.full_width_header h1 {
		margin: auto 20px 20px 20px;
	}
}
@media (max-width: 700px) {
	.page_logo-white {
		display: block;
	}
	.page_logo-color {
		display: none;
	}
}
@media (max-width: 600px) {
	.section.full_width_header h1 {
		font-size: 27px;
		line-height: 1.3em;
	}
}

.section.contact_page {
	margin: 0 auto;
}
.section.contact_page .sizer {
	width:50%;
	margin: 0 auto	0 7%;
}
@media only screen and (max-width:1200px) {
	.section.contact_page {
	    padding: 0 70px;
	}
	.section.contact_page .sizer {
	    width: 100%;
	    margin: 0 auto;
	}
}

.card {
	display: block;
	position: relative;
	box-shadow: 0 5px 8px rgba(0,0,0,0.2);
}
.card:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 15%;
	width: 70%;
	height: 50%;
	box-shadow: 0 2px 28px rgba(0,0,0,0.20);
	z-index: -1
}

.header_margin .card:after {
	box-shadow: 0 0px 50px rgba(0,0,0,0.4);
}

.section.trainers {
	padding: 15px 25px 60px 55px;
}
.section.trainers .sizer {
	display: flex;
	flex-flow: row wrap;
	margin: 0 7% 0 7%;
}
.section.trainers .sizer > h1 {
	width: 100%;
}

.ratio_3_2 {
	overflow: hidden;
    position: relative;
	padding-top: 66.67%
}
.ratio_3_2 img {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

@media only screen and (max-width:800px) {
	.section.trainers .sizer {
		margin: 0;
	}
	.section.trainers {
		padding: 15px 30px 60px 30px;
	}
}

.section.trainers .trainer {
	width: 25%;
	padding: 15px 30px 15px 0;
}
.section.trainers .trainer .card {
	margin: 0;
	padding: 15px;
	background: #fff;
}
.section.trainers .trainer .card .ratio_3_2 {
	margin: 0 0 20px 0;
}
.section.trainers .trainer .card h1 {
	color: #098ACB;
}
.section.trainers .trainer .card h1,
.section.trainers .trainer .card h2 {
	line-height: 1.8em;
}

@media only screen and (max-width:1200px) {
	.section.trainers .trainer {
		width: 50%;
	}
}
@media only screen and (max-width:800px) {
	.section.trainers .trainer {
		width: 100%;
		padding: 15px 0 15px 0;
	}
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper textarea {
	border:none
}

.gform_body ul {
	display:flex!important;
	flex-flow: row wrap;
	width: 100%;
}
.gform_wrapper ul li.gfield {
	width: 100%;
}
.gform_wrapper ul li.gfield.half {
	width: 50%;
}
.gform_wrapper ul li.gfield input {
	width: 100%!important;
}

section.section.newsletter_list {
	display: flex;
	flex-flow: row wrap;
	padding:30px calc(7% - 30px) 210px 7%;
	margin: 0 auto;
}
.section.newsletter_list h1 {
	width:100%;
	margin: 30px 0 30px 0;
}
.section.newsletter_list .list {
	display: flex;
	flex-flow: wrap;
	padding: 0;
	width:100%;
}

.section.newsletter_list .list .news {
	width:25%;
	padding: 0;
	margin-bottom: 30px;
}
.section.newsletter_list .list .news .card {
	background-color: #F7F7F7;
	padding: 15px 15px 30px 15px;
	margin: 0 30px 0 0;
}
.section.newsletter_list .list .news p {
	margin: 6px 0 30px 0;
}
.section.newsletter_list .list .news .button {
	background-color: #098ACB;
	font-family: 'poppins_bold';
	font-size: 14px;
}
.section.newsletter_list .list .news h3,
.section.newsletter_list .list .news time {
	font-size: 17px;
	margin-bottom: 4px;	
}

.post_date {
	color:#9D9FA2;
}
@media only screen and (max-width:1100px) {
	.section.newsletter_list {
		width: 100%;
	}
	.section.newsletter_list .list {
		flex-wrap: wrap;
	    padding: 0;
	}
	.section.newsletter_list .list .news {
		width: 50%;
	}
}
@media only screen and (max-width:700px) {
	.section.newsletter_list .list {
		flex-wrap: wrap;
	    padding: 0 30px;
	}
	.section.newsletter_list .list .news {
		width: 100%;
	}
	.section.newsletter_list .list .news .card {
		margin: 0;
	}
}

.section.contact {
	background-color: #098ACB;
}
.section.contact h1 {
	color: #ffffff;
	margin:55px 0 30px 0;
}
.section.contact .sizer {
	width:50%;
	margin:0 auto;
	display: flex;
	flex-flow: row wrap;
}	
.section.contact .col {
	display: flex;
	flex-wrap: wrap;
	height:200px;
	width: 33.333%;
	flex: 0 0 33.333%;
}
.section.contact .col .icon {
	width: 100%;
	height: 70px;
	background-repeat: no-repeat;
	background-position: center center;
}
.section.contact .col .content {
	width: 100%;
    margin-bottom: 60px;
    color:#ffffff;
    text-align: center;	
    font-family: 'poppins_bold';
    font-size: 15px;
}
.section.contact .col.telephone .icon {
	background-image: url(img/telefon.svg);
	background-size: 20% auto;
}
.section.contact .col.telephone:hover .icon {
	background-image: url(img/telefon_hover.svg);
}
.section.contact .col.mail .icon {
	background-image: url(img/mail.svg);
	background-size: 21% auto;
}
.section.contact .col.mail:hover .icon  {
	background-image: url(img/mail_hover.svg);
}
.section.contact .col.location .icon  {
	background-image: url(img/placeholder.svg);
	background-size: 15% auto;
}
.section.contact .col.location:hover .icon  {
	background-image: url(img/placeholder_hover.svg);
}
@media only screen and (max-width:1300px) {
	.section.contact .sizer {
		width:60%;
	}
}
@media only screen and (max-width:1000px) {
	.section.contact .sizer {
		width:80%;
	}
}
@media only screen and (max-width:800px) {
	.section.contact .col {
		height: 150px;
	}
	.section.contact .sizer {
		width:90%;
		padding-bottom: 30px;
	}
	.section.contact .col .icon {
		margin-bottom: 10px;
	}
	
}
@media only screen and (max-width:700px) {
	.section.contact .col {
		width: 100%;
		flex: 0 0 100%;
	}
	.section.contact .sizer {
		width:100%;
	}
	.section.contact .col .icon {
		background-size: auto 70%;
	}
	.section.contact .col.telephone .icon {
		background-size: auto 70%;
	}
	.section.contact .col.mail .icon {
		background-size: auto 55%;
	}
	.section.contact .col.location .icon  {
		background-size: auto 70%;
	}
}

.section.infobox .info {
	background-color: #F7F7F7;
	padding: 21px 21px;
}
.section.infobox h1.infotitle {
	padding:0;
	margin:0 0 5px 0;
}
.section.infobox .info p {
	padding:0;
	margin:0 0 15px 0;
}
.section.infobox .info p strong {
	color: #098ACB;
}

.section.documents .sizer {
	padding: 15px 55px 60px 55px;
}
.section.documents .sizer {
	margin: 0 7%;
	display: flex;
	flex-direction: row;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
}
.section.documents .sizer .file {
	flex:0 0 25%;
	padding:0 15px;
	margin-bottom: 30px;
}
.section.documents .sizer .file .card {
	display: flex;
	flex-direction: row;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding:18px 21px 30px 21px;
	height: 100%;
}
.section.documents .sizer .file .card h3 {
	margin-bottom: 13px;
	width:100%;
}
.section.documents .sizer .file .card p {
	width:100%;
}
.section.documents .sizer .file .card a.button {
	margin-top: auto;
}
	
.background_1 {
	position: relative;
	background-color: #F7F7F7;
/*	background-image: url(img/template/pexels-photo-1.png); */
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center bottom;
	z-index: 0;
	padding-bottom: 90px;
}
.background_1:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/kulle_gra.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_2 {
	position: relative;
	background-color: #F7F7F7;
	z-index: 0;
	padding-bottom: 100px;
}
.background_2:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/berg_white_left.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_3 {
	position: relative;
	background-color: #ffffff;
	z-index: 0;
	padding-bottom: 130px;
}
.background_3:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/berg_grey_right.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_4 {
	position: relative;
	background-color: #F7F7F7;
	z-index: 0;
	padding-bottom: 100px;
}
.background_4:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/low_kulle.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_5 {
	position: relative;
	background-color: #ffffff;
	z-index: -20;
}

.background_6 {
	position: relative;
	background-color: #F7F7F7;
	z-index: 0;
}
.background_6:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/pexels-photo-1.jpg);
	background-size: 100% auto;
	background-position: center top;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_7 {
	position: relative;
	background-color: #ffffff;
	z-index: 0;
}
.background_7:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/pexels-photo-3.png);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_8 {
	position: relative;
	background-color: #EDEFF1;
	z-index: 0;
	padding-bottom: 120px;
}
.background_8:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/berg_white_right.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}

.background_9 {
	position: relative;
	background-color: #F7F7F7;
	z-index: 0;
}

.background_10 {
	position: relative;
	background-color: #EDEFF1;
	z-index: 1;
}

.background_11 {
	position: relative;
	background-color: #EDEFF1;
	z-index: 0;
}
.background_11:before {
	content: ' ';
	position: absolute;
	bottom:-2px;
	left:0;
	height:100%;
	width:100%;
	background-image: url(img/template/berg_grey_right.svg);
	background-size: 100% auto;
	background-position: center bottom;
	background-repeat: no-repeat;
	z-index: -10;
}


.grey_background {
	background-color: #EDEEF1;
}

.align_right {
	margin-left: auto;
}

.pagination {
	display: flex;
}

.button,
.pagination a {
	font-size: 13px;
	font-family: poppins_bold;
	background-color: #098ACB;
	padding: 10px 25px;
	border-radius: 28px;
	border-style: solid;
	border-width: 2px;
	border-color: transparent;
	margin:0 auto;
	color: #ffffff;
	text-transform: uppercase;
	box-shadow: 1px 5px 9px rgba(0,0,0,0.2);
	display: inline-block;
}
.button:hover,
.pagination a:hover {
	background-color: transparent;
	border-color: #098ACB;
	color: #098ACB;
}

section.section.article .button,
.pagination a {

}

nav ul.left li {
	margin: 0 23px 0 0;
}
nav ul.right li {
	margin: 0 0 0 23px;
}

.neo-hero {
	width: 100%;
}
.neo-hero .card {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.hero-top {
	height: 400px;
	width: 100%;
	flex-shrink: 0;
	display: flex;
	background-size: cover;
	background-position: center center;
}
.top_header {
	width: 50%;
	height: 100%;
	flex-shrink: 0;
	position: relative;
}
.top_header h1 {
	position: absolute;
	bottom: 0;
	padding: 25px 30px 30px 30px;
	width: 100%;
	color: white;
}
.top_video {
	width: 50%;
	height: 100%;
	flex-shrink: 0;
}
.top_video p {
	width: 100%;
	height: 100%;
}
.top_video iframe {
	width: 100%;
	height: 100%;
}
.hero-area-1,
.hero-area-2 {
	width: 50%;
	flex-shrink: 0;
	height: 400px;
	background-size: cover;
	background-position: center center;
}
.hero-area-2 {
	background-position: center -111px;
}
@media (max-width: 700px) {
	.neo-hero .card  {
		display: block;
	}
	.top_header,
  .top_video,
  .hero-area-1,
  .hero-area-2 {
	width: 100%;
  }
	.hero-top {
		height: auto;
		display: block;
	}
	.top_header {
		height: 300px;
	}
	.top_video {
		height: 400px;
	}
}
.hero-area-1 a,
.hero-area-2 a {
	height: 100%;
	display: block;
	position: relative;
}
.hero-area-texts {
	position: absolute;
	bottom: 30px;
	padding: 25px 30px 30px 30px;
	width: 100%;
}
.hero-area-texts p {
	margin-bottom: 0;
}
.hero-area-1 .hero-area-texts {
	background: rgba(242, 242, 242, 0.95);
}
.hero-area-2 .hero-area-texts {
	background: rgba(247, 247, 247, 0.95);
}




/* Previous */
.hero .left_side {
	display: block;
	position: relative;
	float:left;
	width:33.333%;
	background-color: #999;
	overflow: hidden;
}
.hero .left_side img {
	-webkit-transition: all 0.1s ease;                  
    -moz-transition: all 0.1s ease;                 
    -o-transition: all 0.1s ease;   
    -ms-transition: all 0.1s ease;          
    transition: all 0.1s ease;
}
@keyframes mouseanim {
	from {
		background-size: 29px auto;
	}
	to {
		background-size: 33px auto;
	}
}
@keyframes mousearrowanim {
	from {
		background-position: center 75%;
	}
	to {
		background-position: center 90%;
	}
}
.computermouse {
	position: absolute;
	left:0;
	bottom:0;
	width:100%;
	height: 110px;
	background-image: url(img/computermouse_white.svg);
	background-repeat: no-repeat;
    background-position: center top;
    background-size: 31px auto;
    z-index: 1;

    -webkit-animation: mouseanim 0.3s ease-in infinite alternate;
	-moz-animation: mouseanim 0.3s ease-in infinite alternate;
	animation: mouseanim 0.3s ease-in infinite alternate;

	animation-play-state: paused;
}
.computermouse:before {
	content: "";
	position: absolute;
	left:0;
	bottom:0;
	width:100%;
	height: 110px;
	background-image: url(img/arrow_down.svg);
	background-repeat: no-repeat;
    background-position: center 75%;
    background-size: 18px auto;
    z-index: 1;
    -webkit-animation: mousearrowanim 0.9s ease-in infinite normal;
	-moz-animation: mousearrowanim 0.9s ease-in infinite normal;
	animation: mousearrowanim 0.9s ease-in infinite normal;

	animation-play-state: paused;
}
.hero .left_side:hover .computermouse {
	animation-play-state: running;
}
.hero .left_side:hover .computermouse:before {
	animation-play-state: running;
}
.hero .left_side img.mobile {
	display:none;
}
.hero .right_side {
	float:left;
	width:66.666%;
	background-color: #aaa;
	overflow: hidden;
} 
.hero .right_side.top {
	display: block;
	position: relative;
	display: flex;
    flex: 1;
    flex-direction: column;
    background-size: cover;
	background-position: center center;
}
.hero .right_side.top:before,
.section.full_width_header .background:before {
	content: "";
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height: 100%;
	opacity: 0.14;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dddddd+0,000000+100 */
	background: #000000; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #dddddd 0%, #000000 100%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #dddddd 0%,#000000 100%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #dddddd 0%,#000000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#000000',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
} 
.hero .right_side.top ._bottom {
	margin-top: auto;
	z-index: 10;
}

.hero .right_side.top h1,
.hero .right_side.top h2 {
	color: #ffffff;
}
.hero .right_side.top h1 {
	font-size: 60px;
	line-height: 1.2em;
	margin-left: 30px;
}
.hero .right_side.top h2 {
	font-size: 2.5vw;
    line-height: 1.3em;
    margin-left: 30px;
    margin-bottom: 30px;
}
.hero .right_side.bottom {
	display: flex;
	background-color: #fff;
	flex-direction: row;
} 
.hero .right_side.bottom .col {
	display: flex;
    flex-direction: column;
	overflow: hidden;
	padding-bottom: 15px;
} 
.hero .right_side.bottom .col h3 {
	text-align: center;
	margin: 30px 30px 0 30px;
	color: #8E989F;
} 
.hero .right_side.bottom .col p {
	text-align: center;
	margin: 15px 30px 30px 30px;
	color: #8E989F;
}
.hero .right_side.bottom .col p.grow {
	flex-grow: 1;
}
.hero .right_side.bottom .col p.align_bottom {
	margin-top: 0;
}


footer.section {
	flex-wrap: nowrap;
	padding: 55px 55px;
	margin: 0;
	width: 100%;
}
.footer-logos {
	width: 25%;
	flex-shrink: 1;
}
.footer-logos a {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}
.footer-logos img {
	width: 100%;
	max-width: 200px;
}
.footer-menu {
	width: 75%;
	flex-shrink: 1;
	padding-top: 13px;
}
.footer-menu ul {
	columns: 3;
}
.footer-menu li {
	display: block;
}
.footer-menu a {
	color: #098ACB;
	font-size: 17px;
	letter-spacing: 0.03em;
	font-family: 'poppins_bold';
	padding: 0 0 20px 20px;
	display: block;
}
@media (max-width: 800px) {
	footer.section {
		display: block;
		padding: 30px;
	}
	.footer-logos {
		width: 100%;
	}
	.footer-menu {
		width: 100%;
		padding-top: 10px;
	}
	.footer-menu ul {
		columns: unset;
	}
	.footer-menu a {
		padding-left: 0;
	}
}

/*
footer.section .col {
	flex: 0 0 20%;
}
footer.section .col h3 {
	margin-bottom: 12px;
}
footer.section .col h3,
footer.section .col ul {
	padding-left: 30px;
}
footer.section li:hover a {
	color: #098ACB;
}

footer section.pixeltokig {
	width: 100%;
}
section.pixeltokig h1 {
	font-size: 13px;
	font-weight: 100;
	padding: 8px 20px;
	text-align: center;
	font-family: 'poppins_regular';
	color:#424242;
	background-color: #F7F7F7;
}

footer.section .col li {
	line-height: 1.8em;
}
@media only screen and (max-width:900px) {
	footer {
		flex-wrap: wrap;
	}
	footer.section .col {
		width: 25%;
		flex: 0 0 25%;
	}
}
@media only screen and (max-width:800px) {
	footer.section .col {
		padding: 15px;
		flex: 0 0 33.333%;
	}
}
@media only screen and (max-width:600px) {
	footer.section .col {
		padding: 15px;
		flex: 0 0 100%;
	}
	footer.section .col img {
	    width:75%;
	}
	footer.section .col h3,
	footer.section .col ul {
		padding-left: 0;
	}
}
*/

.social_icons {
	display: flex;
	position: absolute;
	top: 0;
	right: 9px;
	height: 100%;
    align-items: center;
    justify-content: center;
	width: 40px;
	margin: 0;
	padding: 0;
}
.social_icons ul li {
	text-align: center;
    margin: 15px 0 15px 0;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    cursor: pointer;
}
.social_icons ul li a {
	display: block;
	position: relative;
}
.social_icons ul li.instagram {
	background-image: url(img/instagram.svg);
}
.social_icons ul li.instagram:hover {
	background-image: url(img/instagram_hover.svg);
}
.social_icons ul li.facebook {
	background-image: url(img/facebook.svg);
}
.social_icons ul li.facebook:hover {
	background-image: url(img/facebook_hover.svg);
}
.social_icons ul li.placeholder {
	background-image: url(img/plats.svg);
}
.social_icons ul li.placeholder:hover {
	background-image: url(img/plats_hover.svg);
}
.social_icons ul li.youtube {
	background-image: url(img/youtube.svg);
}
.social_icons ul li.youtube:hover {
	background-image: url(img/youtube_hover.svg);
}
@media (max-width: 1100px) {
	.social_icons {
		right: -5px;
	}
}


.col {
	flex:1;
} 

.article {
	display: flex;
	flex-flow: row;
	padding: 30px 4% 30px 4%;
}
section.section {
	padding: 55px 4% 30px 4%;
}
@media only screen and (min-width:1800px) {
	.article {
		display: flex;
		flex-flow: row;
		padding: 30px 20% 30px 20%;
	}
}

@media (max-width:1300px) {
	.hero .right_side.top {
		height: 100%;
	}
	.hero .right_side.top h1 {
	    font-size: 6vw;
	}
	.hero .right_side.top h2 {
		font-size: 1.9vw;
	}
	.hero .right_side.bottom {
		width: 100%;
	} 
	.hero .left_side img.desktop {
		display:none;
	}
	.hero .left_side img.mobile {
		display:block;
	}
	.hero .left_side {
		flex:none;
		display: block;
		width:50%;
	}
	.hero .right_side {
		flex-direction: none;
	    display: block;
		flex:none;
		width:50%;
	} 
	.hero .right_side .bottom .col {
	    background-color: #fff;
	    overflow: hidden;
	    width:33.33333%;
	}
}
@media only screen and (min-width:1100px) {
	section.section {
		width:100%;
	}
}
@media (max-width:1100px) {
	.article {
		display: flex;
		flex-flow: row;
		padding: 30px 55px 30px 55px;
	}
	section.section,
	section.section._hero {
		padding: 80px 30px 30px 30px;
		width:100%!important;
	}
	nav.main {
		padding-left: 30px;
		padding-right: 30px;
	}
	nav.sub {
		margin-left: 30px;
		margin-right: 30px;
		width: auto;
	}
	section.section._hero {
		padding-bottom: 0;
	}
}
@media (max-width:930px) {
	.hero .right_side.top h1 {
		font-size: 7vw;
		margin-left: 20px;
	}
	.hero .right_side.top h2 {
	    margin-left: 20px;
	    margin-bottom: 20px;
	}
}

@media (max-width:700px) {
	.hero .right_side.bottom {
		display: block;
	}
	.social_icons {
		display: none;
	}
	section.section {
		padding: 0 0 0 0;
	}
	section.section.newsletter_list {
		padding: 0 0 0 30px;
	}
	section.section._hero {
	    margin: 0;
	    padding: 0;
	    position: relative;
	}
	.hero .left_side {
	    display: none!important;
	}
	.hero .right_side.top {
		width: 100%!important;
		min-height: 350px;
	}
	.hero .right_side.top h1 {
		font-size: 14vw!important;
	}
	.hero .right_side.top h2 {
		display: none!important;
	}
}

.section_group {
	padding-top:60px;
}

.article article.col_1 {
	width: 65%;
}
.article article.col_2 {
	width: 35%;
}
.article.align_left article.col_1 {
	order:1;
	margin:0 auto 0 7%;
	padding: 0 7% 0 0;	
}
.article.align_left article.col_2 {
	order:2;
	margin:0 7% 0 auto;
}
.article.align_right article.col_1 {
	order:2;
	margin:0 7% 0 auto;
	padding: 0 0 0 7%;
}

.article.align_right article.col_2 {
	order: 1;
	margin: 0 auto	 0 7%;

	display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
	-webkit-align-items: flex-start;
    -webkit-justify-content: center;
    justify-content: center;
}
.article article .article_video {
	
}
.article article .article_video p {
	margin: 0;
}
.article article .article_video iframe {
	width: 100%;
	height: 280px;
	display: block;
}

@media only screen and (max-width:1100px) {
	.article.align_left article.col_1 {
		order:1;
		margin:0 auto 0 0;
		padding: 0 7% 0 0;	
	}
	.article.align_left article.col_2 {
		order:2;
		margin:0 3% 0 auto;
	}
	.article.align_right article.col_1 {
		order:2;
		margin:0 3% 0 auto;
		padding: 0 0 0 7%;
	}
	.article.align_right article.col_2 {
		order:1;
		margin:0 auto 0 3%;
	}
	.section.trainers .sizer {
	    display: flex;
	    flex-flow: row wrap;
	    margin: 0;
	}
}
@media only screen and (max-width:800px) {
	.section_group {
	    padding-top: 10px;
	}
	.article {
	    flex-wrap: wrap;
	}
	.header_margin {
	    margin-bottom: 0;
	}
	.article {
		padding: 0;
	}
	.article article p,
	.article article h2,
	article .button {
	    margin-left: 20px;
	}

	.article article.col_1 {
		width: 100%;
		padding:30px 20px 0 20px!important;
	}
	.article.align_right article.col_1 {
	    order: 2;
	    margin: 0 3% 0 auto;
	    padding: 0 0 0 7%;
	}

	.article article.col_2 {
		width: 100%;
		padding: 20px 20px;
	}
	.article article.col_2.image_side {
		margin: 0;
	}
	.article article.col_2.image_side .article_video iframe {
		height: 300px;
	}
}
@media (max-width: 400px) {
	.article article.col_2.image_side .article_video iframe {
		height: 200px;
	}
}

@media (max-width:400px) {
	article .button {
	    float: left;
	}
}

article {
	margin-bottom: 30px;
	padding: 0;
}

article.fill_right {
	flex: 1;
	flex-grow: 1;
	margin-right: 7%;
}
article.fill_left {
	flex: 1;
	flex-grow: 1;
	margin-left: 7%;
}
article h1 {
	margin: 0 0 30px 0;
}
.small_headline {
	font-size: 35px;
	color:#424242;
}
.section_headline {
	font-size: 60px;
	text-align: center;
	margin: 60px 0 0 0;
}
.light_blue {
	color: #098ACB;
}


.article.align_right article a.button {
	float:left;
}

article ul li {	
	list-style: none;
	background-image: url('img/snowflake_blue.svg');
	background-repeat: no-repeat;
	background-position: left 5px;
	background-size: 16px;
	padding-left: 25px;
	padding-bottom: 10px;
}

.article article > h2:first-of-type:before,
.article article > p:first-of-type:before {
	content: " ";
	position:absolute;
	width: 6px;
	height:50px;
	background-color: #098ACB;
	top: 3px;
	left: -48px;
}
@media (max-width: 800px) {
	.article article > h2:first-of-type::before,
	.article article > p:first-of-type::before {
		left: -19px;
	}
}
.contact h1 {
	width:100%;
	text-align: center;
}

.half_centered {
	display: flex;
	width:60%;
}
.half_centered .third {
	flex:1;
	width:60%;
	border:1px solid #444;
}

section.calendar {
	display: block;
	position: relative;
	width: 66.66%;
	margin: 0 auto;
}
section.calendar .sizer {
	display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}
#calendar ._calendar {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 70%;
	box-shadow: 0 5px 8px rgba(0,0,0,0.2);
	z-index: -1;
}
/*
#calendar:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 15%;
	width: 70%;
	height: 50%;
	box-shadow: 0 2px 28px rgba(0,0,0,0.20);
	z-index: -2;
}
*/
@media only screen and (max-width:700px) {
	section.calendar {
		width: 100%;
	}
	
}
@media only screen and (min-width:1200px) {
	section.calendar {
	    width: 80%;
	}
	.availability-calendar-nav input.cal-prev {
	    left: -60px!important;
	}
	.availability-calendar-nav input.cal-next {
	    right: -60px!important;
	}
}
@media only screen and (min-width:1800px) {
	section.calendar {
	    width: 90%;
	}
	.availability-calendar-nav input.cal-prev {
	    left: 60px!important;
	}
	.availability-calendar-nav input.cal-next {
	    right: 60px!important;
	}
}

#calendar {
	position: relative;
    width: 50%;
    align-self: flex-start; 
}
#calendar ._calendar {
	display: block;
    position: relative;
    background: #eeeeee;
    padding: 20px 40px;
    overflow: hidden;
    overflow: hidden;
}

section.calendar .sizer .events {
	width: 50%;
	padding-left: 120px;
	padding-top: 50px;
}
section.calendar .sizer .events article h1 {
	margin:0 0 5px 0;
}
.availability-calendar {
	width: 100%;
}
.availability-calendar td {
    padding: 0;
	font-weight: bold;
	text-align: center;
}
.availability-calendar-toolbar span:last-child {
    float: none;
}
.availability-calendar-toolbar {
	font-family: 'poppins_bold';
	padding-bottom: 0;
   	width: 100%;
	font-size: 35px;
    color: #424242;
	margin-bottom: 30px;
}

.availability-calendar .unavailable div {
	background-color: #80C3E5;
}
.availability-calendar td p {
	margin: 0;
}
.availability-calendar td p.today {
	border-radius: 30px;
	background-color: #098ACB;
	color:#fff;
}

.availability-calendar .unavailable._first div {
	left:-75px!important;
}
.availability-calendar .unavailable._last div {
	right:-75px!important;
}

.availability-calendar-nav input.cal-prev,
.availability-calendar-nav input.cal-next {
	border: none;
    background: none;
    color: transparent;
    margin-top: 45px;
}
.availability-calendar-nav input.cal-prev {
	position: absolute;
    left: -120px;
    top:50%;
    width: 50px;
    height: 50px;
    background-size: 100% auto;
	background-image: url(img/arrow_left.svg);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.availability-calendar-nav input.cal-prev:hover {
	background-image: url(img/arrow_left_hover.svg);
}
.availability-calendar-nav input.cal-next {
	position: absolute;
    right: -120px;
    top:50%;
    width: 50px;
    height: 50px;
    background-size: 100% auto;
	background-image: url(img/arrow_right.svg);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.availability-calendar-nav input.cal-next:hover {
	background-image: url(img/arrow_right_hover.svg);
}

.availability-calendar-nav input.cal-today {
	display: none;
}

.availability-calendar td.unavailable .last {
    right: 0;
}
.availability-calendar .unavailable .first {
    left: 0;
}
.availability-calendar th {
    padding: 15px 0 6px 0;
    font-size: 16px;
    font-weight: 100;
    color: #666666;
}
.availability-calendar td p {
    padding: 12px 0;
}
@media only screen and (max-width:1400px) {
	.availability-calendar td p {
	    padding: 8px 0;
	}
}
@media only screen and (max-width:1200px) {
	.availability-calendar td p {
	    padding: 4px 0;
	}
	section.calendar {
		width: 76%!important;
	}
	.availability-calendar-nav input.cal-prev {
		left: -70px;
	}
	.availability-calendar-nav input.cal-next {
		right: -70px;
	}
}
@media only screen and (max-width:1000px) {
	section.calendar .sizer .events {
	    padding-left: 90px;
	}
	.availability-calendar td p {
	    padding: 0 0;
	}
	#calendar ._calendar {
		padding: 20px 20px;
	}
}
@media only screen and (max-width:900px) {
	.availability-calendar th {
		font-size: 14px;
	}
	.availability-calendar td p {
	    padding: 0 0;
	    font-size: 14px;
	}
}
@media only screen and (max-width:800px) {
	section.calendar .sizer .events {
	    padding-left: 0;
	}
	.availability-calendar td p {
	    padding: 7px 0;
	}
	#calendar ._calendar {
		padding: 10px 20px;
		width: 100%;
    	margin: 0 auto;
	}
	#calendar {
	    width: 100%;
	    flex: 0 0 100%;
	    margin-bottom: 30px;
	}
	section.calendar .sizer .events {
	    width: 100%;
	    flex: 0 0 100%;
	}
	.availability-calendar-nav input.cal-prev {
		left: -65px;
	}
	.availability-calendar-nav input.cal-next {
		right: -65px;
	}
}
@media only screen and (max-width:700px) {
	.availability-calendar th {
		font-size: 12px;
	}
	.availability-calendar td p {
	    font-size: 12px;
	    padding: 5px 0;
	}
	.availability-calendar-nav input.cal-prev,
	.availability-calendar-nav input.cal-next {
	    width: 35px;
	    height: 35px;
	}
	.availability-calendar-nav input.cal-prev {
		left: -51px;
	}
	.availability-calendar-nav input.cal-next {
		right: -51px;
	}
}
@media only screen and (max-width:500px) {
	.availability-calendar td p {
	    padding: 1px 0;
	}
	.availability-calendar-nav input.cal-prev,
	.availability-calendar-nav input.cal-next {
	    width: 27px;
	    height: 27px;
	}
	.availability-calendar-nav input.cal-prev {
		left: -40px;
	}
	.availability-calendar-nav input.cal-next {
		right: -40px;
	}
}
@media only screen and (max-width:400px) {
	.availability-calendar-nav input.cal-prev,
	.availability-calendar-nav input.cal-next {
	    width: 24px;
	    height: 24px;
	}
	.availability-calendar-nav input.cal-prev {
		left: -30px;
	}
	.availability-calendar-nav input.cal-next {
		right: -30px;
	}
}

@media only screen and (max-width:800px) {
	.small_headline,
	.availability-calendar-toolbar {
		font-size: 27px;
	}
	.section_headline {
		font-size: 45px;
	}
}

section.logos_section {
	display: block;
	width:100%;
	background-color: #F7F7F7;
}
section.logos_section .sizer {
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	justify-content: center;
	width:80%;
	margin-left:10%;
	padding-bottom: 60px;
	background-color: #F7F7F7;
}
section.logos_section h1 {
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
section.logos_section .logo {
	display: flex;
	align-items: center;
	width: 20%;
	padding:15px 30px;
}
section.logos_section .logo img {
	width:100%;
	height: auto;
}
section.friends_section {
	display: flex;
	flex-direction: row;
	flex-flow: wrap;
	padding:0;
}

section.friends_section .box {
	display: flex;
	flex-wrap: wrap;
	width:50%;
	background-size: cover;
	background-color: #EDEEF1;
	min-height: 300px;
}
section.friends_section .box h1 {
	flex: 1;
	width: 100%;
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
}
section.friends_section .box .logos {
    display: flex;
    flex-wrap: wrap;
	width:100%;
	padding-bottom: 30px;
	padding-right: 30px;
	padding-left:55px;
}
section.friends_section .logo {
	align-items: center;
    display: flex;
	padding:15px 30px;
	flex: 0 0 33.333%;
}

@media only screen and (max-width:1000px) {
	section.logos_section .logo {
		width: 25%;
		padding:15px 30px;
	}
	section.friends_section .logo {
	    padding: 15px 15px;
	    flex: 0 0 33.333%;
	}
	section.friends_section .box .logos {
	    padding-right: 10%;
	    padding-left: 10%;
	}
}
@media only screen and (max-width:700px) {

	section.friends_section .box {
		width:100%;
		flex: 0 0 100%;
	}
}
@media only screen and (max-width:600px) {
	section.logos_section .logo {
		width: 33.333%;
		padding:15px 15px;
	}
}
@media only screen and (max-width:500px) {
	section.logos_section .logo {
		width: 33.333%;
		padding:15px 5px;
	}
	section.friends_section .logo {
	    flex: 0 0 50%;
	}
}



