/* ########## Colors ######### */
.bg-color-1 {
	background: #ffefb3;
	color: #009fe3;;
}
.bg-color-2 {
	background: #428dcb;
	color: #fff;
}
.bg-color-3 {
	background: #ffe6ae;
}
.bg-color-4 {
	background: #fff;
	color: #000;
}
.col-bg-color .col {
    background: #f1f1f1;
    padding: 20px;
    color: #000;
}


hr {
   display: block;
   height: 1px;
   border: 0;
   border-top: 1px solid #fff;
   margin: 2em 0;
   padding: 0;
}


.col-bg-color-2 .col {
    background: #555;
    color: #fff;
    padding: 12px 20px;
}

/* ########## Icons ######### */

/* Embed Font Awesome Ver 4.7.0 */
@font-face {
	font-family:'fontawesome';
	src:url(../font-awesome/4.7.0/fonts/fontawesome-webfont_1793f04d41f5f31b.eot);
	src:url(../font-awesome/4.7.0/fonts/fontawesome-webfont_e2cf215f86fc79dd.eot) format('embedded-opentype'),
		url(../font-awesome/4.7.0/fonts/fontawesome-webfont_1793f04d41f5f31b.woff2) format('woff2'),
		url(../font-awesome/4.7.0/fonts/fontawesome-webfont_1793f04d41f5f31b.woff) format('woff'),
		url(../font-awesome/4.7.0/fonts/fontawesome-webfont_1793f04d41f5f31b.ttf) format('truetype'),
		url(../font-awesome/4.7.0/fonts/fontawesome-webfont_aac5ea51d724ad71.svg) format('svg');
}
.icon:before {
    font-family: fontawesome;
    width: 1em;
    text-align: center;
    display: inline-block;
}
.icon.spacer:before {
    margin-right:5px;
}
.icon-big:before {
    float: left;
    width: 100%;
    line-height: 45px;
    font-size: 45px;
	margin-bottom:10px;
}


/* Arrows - also used in list */
.arrow-share:before, .list-arrow-share ul li:before  { content: "\f064"; }
.arrow:before, .list-arrow ul li:before { content: "\f105"; }
.double-arrow:before, .list-double-arrow ul li:before  { content: "\f101"; }
.arrow-default:before, .list-arrow-default ul li:before  { content: "\f061"; }
.caret:before, .list-caret ul li:before  { content: "\f0da"; }
.arrow-bold:before, .list-arrow-bold ul li:before  { content: "\f054"; }
.long-arrow:before, .list-long-arrow ul li:before  { content: "\f178"; }
.check:before, .list-check ul li:before  { content: "\f00c"; }
.plus:before, .list-plus ul li:before  { content: "\f067"; }
/* Specific */
.phone:before { content: "\f095"; }
.home:before { content: "\f015"; }
.globe:before { content: "\f0ac"; }
.mail:before { content: "\f0e0"; }
.mail-open:before { content: "\f2b6"; }
.clock:before { content: "\f017"; }
.case:before { content: "\f0b1"; }
.users:before { content: "\f0c0"; }
.user:before { content: "\f007"; }
.calendar:before { content: "\f073"; }
.exclamation:before { content: "\f06a"; }
.pdf:before { content: "\f1c1"; }
.info:before { content: "\f05a"; }
.map-marker:before { content: "\f041"; }
.paper-plane:before { content: "\f1d8"; }
/* Social */
.facebook:before { content: "\f082"; }
.twitter:before { content: "\f081"; }
.xing:before { content: "\f169"; }
.youtube:before { content: "\f166"; }
.whatsapp:before { content: "\f232"; }
/* Animates */
.animate.mail:hover::before {
	content: "\f2b6";
	position:relative;
	top:-1px;	
}
.animate.phone:hover::before {
display: inline-block;
transform: rotate(45deg);	
-webkit-transition: all ease-in-out .6s;
-moz-transition: all ease-in-out .6s;
-o-transition: all ease-in-out .6s;
transition: all ease-in-out .6s;	
}

/* ########## Setup ######### */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	height: auto;
	width: auto\9; /* ie 7, 8, 9 */
	border: 0;
}
h1 {
	font-size: 2em;
	line-height: 1.1em;
	margin: 10px 0;
}
h2 {
	font-size: 1.5em;
	line-height: 1.6em;
	margin: 5px 0;
}
h3 {
    font-size: 1.25em;
    line-height: 1.35em;
    margin: 3px 0 12px;
    color: #428dcb;
}
h3.full-width {
    flex: 0 0 100%;
    max-width: 100%;
}
a {
    color: #fff;
    text-decoration: none;
}
a:hover, a:active {
	text-decoration: none;
}

body {
	font-family: 'Open Sans', sans-serif;	
	font-weight:400;
	font-size: 12px;
	color: #000;
	text-decoration: none;
	word-spacing: normal;
	line-height: 18px;
	margin: 0;
	padding: 0;
}

address {
    font-style: normal;
    float: left;
    width: 100%;
    padding: 15px;
    background: #fff;
    color: #000;
    margin-top: 10px;
}

/* ########## Buttons ######### */
.btn {
	font-weight: normal;
	text-align: center;
	display: inline-block;
	background: #fff;
	float:left;
	width:45%;
	color:#333;
	margin-bottom: 10px;
	position: relative;
	text-decoration: none;
	-webkit-transition: all ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s;
}
/* Basic button */
.btn-basic {
	padding: 12px 30px;
}
.btn-basic:hover {
	text-decoration: none;
	background: #333;
	color:#fff;
}
/* Hover icon efffect */
.btn-icon-effect {
	padding: 12px 0 12px 50px;
}
.btn-icon-effect:before {
	content: "\f0e0";
	font-family: fontawesome;
	position: absolute;
	left: 0;
	color: #fff;
	width: 50px;
    background: #292929;
	line-height: 39px;
	height: 100%;
	top: 0;
	font-size: 21px;	
}
.btn-icon {
    padding: 12px 0 12px 50px;
    background: #428dcb;
    color: #fff;
    font-weight: 700;
}
.btn-icon:before {
	font-family: fontawesome;
	position: absolute;
	left: 18%;
	color: #fff;
	width: 50px;
	line-height: 39px;
	height: 100%;
	top: 0;
	font-size: 21px;
	font-weight:400;
}
.btn-icon-effect:hover::before {
	background: #575757;
	content: "\f2b6";
}

span.btn.btn-icon.phone,
span.btn.btn-icon.phone a {
    background: #ffe6ae;
    color: #428dcb;
    font-weight: 700;
}

span.btn.btn-icon.phone:before {
    color: #428dcb;
    font-size: 30px;
    top: 2px;
}

/* Hover slide In*/
.btn-slide-in {
    padding: 12px 30px 12px 0px;
    line-height: 18px;
}
.btn-slide-in:hover {
	padding: 12px 30px 12px 30px;
}

.btn-slide-in:before {
    content: "\f2b7";
    font-family: fontawesome;
    color: #235262;
    font-size: 24px;
    position: relative;
    top: 2px;
    left: 2px;
    line-height: 0;
    opacity: 0;
}
.btn-slide-in:hover::before {
	opacity:1;
	left:-5px;
}


/* ########## Font transforms ######### */

.text-justify {	text-align: justify; }
.small {
    font-size: .75em;
    font-weight: 300;
}
.big { font-size: 1.25em; }
.uppercase { text-transform: uppercase; }
strong { font-weight:700; }
.text-center { text-align: center;}

/* ########## * Bahaviour ######### */

.light {
	opacity: .25;
}

.block {
    display: block;
    clear: both;
    float: left;
}

.clearfix {
	width:100%;
	float:left;
}

.centered {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.centered *{
    flex:1 1 100%;
	max-width: 100%;
}

.round .col {
  -webkit-border-radius: 5px; 
  -moz-border-radius: 5px; 
  border-radius: 5px; 
}

/* ########## Seperators ######### */

.seperator {
    float: left;
    height: 1px;
    width: 92%;
    margin: 15px 4% 0;
}

.seperator-inline {
    float: left;
    height: 1px;
    width: 100%;
    margin: 10px 0 15px;
}

/* ########## List ######### */

ul {
	padding: 0;
	margin: 0;
}
ul li {
    position: relative;
    list-style-type: none;
    margin-bottom: 13px;
    padding-left: 20px;
}
ul li:before {
    position: absolute;
    font-family: fontawesome;
    top: 0;
    left: 3px;
    color: #428dcb;	
}
.list-bullet ul li:before {
	content: "";
	width: 5px;
	height: 5px;
	background: #999;
	top: 6px;
	border-radius: 50%;
}

/* ########## Main ######### */

#wrapper {
	max-width: 720px;
	width: 100%;
	margin: 0 auto;
	background-color: #FFF;
	border: 1px solid #d2d2d2;
	-moz-box-shadow: 0px 0px 10px #999;
	-webkit-box-shadow: 0px 0px 10px #999;
	box-shadow: 0px 0px 10px #999;
	overflow: auto;
}

header, 
main, 
footer, 
section,
.headerimage,
.entry {
	width: 100%;
	float: left;
	position:relative;
}

/* ########## Headers######### */
header {
    text-align: center; /* Logo position */
}
.logo img {
    width: 100%;
    max-width: 300px;
    height: auto;
    vertical-align: middle;
    /* float: left; */
}
.entry-header-text {
    text-align: left;
}
header a img {
    margin: 30px 0;
}
.logo-bar {
    position: absolute;
    width: 100%;
    z-index: 999;
    top: 0;
    left: 0;
	text-align:right; /* Logo position */
	padding: 30px 4%;
	background: rgba(255, 255, 255, 0.3);
}
header .logo-bar a img {
    margin: 0;
}
.headerimage {
    float: left;
    width: 100%;
}
.entry {
    position: relative;
}
.entry-text {
    display: flex;
    justify-content: center;
    position: absolute;
    left: 0;
    bottom: 0;
    height: auto;
    width: 100%;
    padding: 15px 4%;
    margin: 0;
    background: rgba(255, 255, 255, 0.3);
}

/* ########## Section ######### */
section.bg {
    padding: 30px 4%;
}
section:not(.bg) {
    margin: 30px 0;
	padding: 0 4%;
}

section.bg.colored-2 {
    padding: 0;
}

section:not(.bg):nth-of-type(n+2) {
    margin: 30px 0 30px 0;
}
section:not(.bg):nth-of-type(n+2):last-of-type {
    margin: 30px 0;
}
section p {
	margin: 0 0 10px 0;
}
section p:last-child {
	margin: 0;
}
section.no-margin {
	margin:0;
}

/* ########## Cols ######### */
.col-2, .col-3, .col-4 {
    display: flex;
    flex-wrap: nowrap;
}

.flex-wrap {
	flex-wrap:wrap;
}

.col-2 .col {
	flex:1 1 47.5%;
	max-width:47.5%;
		position: relative;
}

.col-3 .col {
	flex:1 1 30%;
	max-width:30%;
}

.col-4 .col {
	flex:1 1 30%;
	max-width:30%;
}

.col-2 .col:first-child,
.col-3 .col:nth-of-type(-n+2),
.col-4 .col:nth-of-type(-n+3) {
	margin-right:2.5%;
}

.col-2 .col:nth-of-type(n+2),
.col-3 .col:nth-of-type(n+2),
.col-4 .col:nth-of-type(n+2){
	margin-left:2.5%;
}

/* Uneven col-2 */
.col-2-uneven .col:first-child {
	flex:1 1 70%;
	max-width: 70%;
}
.col-2-uneven .col:last-child {
	flex:1 1 25%;
	max-width: 25%;
}

/* Colored col-2 */
.colored-2 .col:first-child {
    background: #555555;
    padding: 15px 0 15px 4%;
}
.colored-2 .col:last-child {
    background: #292929;
    padding: 15px 4% 15px 0;
}
.colored-2.col-2-uneven .col:first-child {
	flex:1 1 70%;
	max-width: 70%;
}
.colored-2.col-2-uneven .col:last-child {
	flex:1 1 30%;
	max-width: 30%;
}
.colored-2.col-2 .col:first-child {
	padding-right:2.5%;
	margin-right:0;
}
.colored-2.col-2 .col:nth-of-type(n+2) {
    padding-left: 3%;
	margin-left:0;
}
/* Light Edge */
.light-edge .col:last-child:after {
    content: "";
    position: absolute;
    left: -1px;
    height: 100%;
    width: 1px;
    background: #56a7ea;
}

.light-edge .col:last-child:before {
    content: "";
    position: absolute;
    left: 0;
    height: 100%;
    width: 1px;
    background: #2978b9;
}

/* Header col */
.col-2.col-header > *:first-child {
    flex: 0 0 350px;
    max-width: 350px;
    padding: 0 0 0 4%;
    display: flex;
    /* align-items: center; */
    align-items: center;
    justify-content: start;
}

.col-2.col-header > *:last-child {
    flex: 1 1 100%;
    max-width: 100%;
    padding: 0 4% 0 4%;
    display: flex;
    align-items: center;
    /* padding: 0 0 0 15px; */
}

/* ########## Footer ######### */

footer {
	float: left;
	width: 100%;
	color: #000;
}

/* ########## Additional ######### */

/* Infobox */
.info-box .col {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
}

.info-box .icon:before {
    font-size: 24px;
    margin-top: 10px;
    display: inline-block;
}

.info-box .col span {
    flex:1 1 100%;
	max-width:100%;
}

/* Background image */
span.background-image {
    height: 100%;
    background: url(../img/bg-image.png);
    float: left;
    width: 100%;
    position: relative;
    background-position: center;
    background-size: cover;
}

.bg-text.big {
    position: absolute;
    height: 100%;
    width: 100%;
    padding: 15px 4%;
    display: flex;
    align-items: center;
}

.col.icons {
    display: flex;
        justify-content: space-between;
	
}

.col.icons  > .icon-check{
    display: flex;
    align-items: center;
    font-size: 1.2em;

}


.col.icons  > .icon-check:before{
   content: "\2611";
margin-right: 7px;
    display: inline-block;
}