* {
	box-sizing: border-box;
}
html, body {
	min-height: 100%;
	background: #fff;
	color: #000;
}
	/* sets the body height of the browser, so that backgrounds and div heights work correctly. Color and background will almost certainly be altered; they are just placeholders */

body {
	font-size: 1.4rem;
	text-rendering: optimizeLegibility;
}
	/* sets the base font size for the document; turns on kerning pairs and ligatures */

body, ul, ol, dl {
	margin: 0;
}
	/* ensures that older browsers will display HTML5 elements correctly */


a:visited, a:link{
	color: #0cb89f;
	font-weight: 600;
}
	/* begins to set up font sizes relative to base rem – h1 has been used as an example */

p { 
	-ms-word-break: break-all;
	word-break: break-all;
	word-break: break-word;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
} 
	/* sets hyphenation by default on paragraphs */

textarea { 
	resize: vertical;
}
 /* changes textarea resizing from "both" (UA default) to vertical only */
 
table { border-collapse: collapse; }
td {
	padding: .5rem;
}
	/* causes tables to actually look like tables */

img { 
	border: none;
	max-width: 100%;
	height: auto;
}

	/* removes outlines from linked images (for older browsers and IE), sets up images for responsive design layout */
	
input[type="submit"]::-moz-focus-inner, 
	input[type="button"]::-moz-focus-inner {
		border : 0px;
	}
	/* removes the inner border effect from focused buttons for form elements in Firefox */

input[type="search"] { 
	-webkit-appearance: textfield;
} 
input[type="submit"] { 
	-webkit-appearance:none;
}
	/* removes the OS X appearance from HTML5 search inputs and submit buttons when viewed in Safari */

input:required:after {
	color: #f00;
	content: " *";
}
	/* sets up required form fields with the conventional following red asterix */
input[type="email"]:invalid { 
	background: #f00;
}
	/* causes a visual alert in browsers that do client-side checking of HTML5 email field – this may already be the default in some browsers. */

sub, sup { 
	line-height: 0;
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-500 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/open-sans-v34-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-500.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-500.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/open-sans-v34-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-600.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/open-sans-v34-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-500italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('fonts/open-sans-v34-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-500italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600italic - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('fonts/open-sans-v34-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v34-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v34-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v34-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v34-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v34-latin-600italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}


ul li{
	color: #32305f;
}

/*__________________________________________________________________________________________________________________________________*/

/* Main Parts */

body{
	font-family: 'Open Sans';
	font-size: 16px;
	margin-bottom: 30px;
}

header{
	background: no-repeat url("img/bg_new_4.png");
	max-width: 2500px;
	min-height: 500px;
	padding: 20px 0 0 0;
	-webkit-box-shadow: inset -1px -22px 20px -21px rgba(0,0,0,0.75);
	-moz-box-shadow: inset -1px -22px 20px -21px rgba(0,0,0,0.75);
	box-shadow: inset -1px -22px 20px -21px rgba(0,0,0,0.75);
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

nav{
	float: left;
	clear: left;
	width: 300px;
	margin-top: 100px;
}
nav a{
	width: 90%;
	display: block;
	padding: 10px;
	background: #fff;
	color: black;
	margin-bottom: 10px;
	border-top-right-radius: 20px; 
	border-bottom-right-radius: 20px; 
	transition: width 0.5s;
	transition-timing-function: ease;
}
nav a:hover{
	width: 100%;
}

figure{
	max-width: 600px;
	float: right;
	clear: right; 
	width: calc(100% - 340px);
	margin-left: 40px;
}

/*___Secondary Parts___*/

h1{
	font-size: 32px;
	font-weight: 800;
	margin-top: 0;
	color: #0cb89f;
}
h2{
	font-size: 27px;
	color: #0cb89f;
}
h3{
	color: #0cb89f;
	font-size: 24px;
}
h4{
	color: #0cb89f;
	font-size: 20px;
}

.center{
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
	display: block;
	clear: both;
}

.center ul li{
	line-height: 2em!important;
}

.greyBG{
	background: #f6f6f6;
	display: block;
	clear: both;
    padding: 60px 0 90px 0;
}

a{
	list-style: none;
	text-decoration: none;
}

.nohref{
	pointer-events: none;
}

p{
	line-height: 115%;
	color: #32305f;
}
.pad-60px{
	padding-top: 60px;
}

.buttonAside, .btn-short, .btn{
	padding: 15px 10px;
	text-align: center;
	background: #8fadd8; 
	border: none; 
	min-height: 50px;
	width: auto;
	margin-bottom: 15px; 
	border-radius: 25px; 
	cursor: pointer; 
	transition: 0.5s;
	color: #FFF!important;
}
.buttonAside{
	width: 70%;
	display: block;
}
.icons .buttonAside{
	width: 100%;
	font-size: 16px;
	display: block;
}

.buttonAside:hover, .btn-short:hover, .btn:hover{
	background: #FC9C27; 
}
.buttonAside span > *{
	font-family: 'Open Sans';
}

.btn-short{
	max-width: 300px;
}
.btn{
	display: inline-block;
	margin: 20px 0; 
}

a.btn{
	padding: 15px;
}

.opacityBox{
	background: #FFF;
	background: rgba(255, 255, 255, 0.6);
	padding: 20px 50px;
	border-radius: 5px;
}

.textContent{
	margin-top: 30px;
	width: 70%;
	float: left; 
	display: inline-block;
	margin-bottom: 50px;
}

aside{
	margin-top: 80px;
	width: 25%;
	margin-left: 5%;
	float: right;
}

#full{
	width: 100%;
	clear: both;
	float: none;
	flex: none;
	
}

.floatright{
	float: right;
}

/*LOCATIONS ____________________________*/

.locations{
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.locations > div{
	-webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 1 24%;
    -ms-flex: 0 1 24%;
    flex: 0 1 24%;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;

	padding: 40px;
	border: 1px solid #8fadd8;
	border-radius: 10px;
	text-align: center;
	background: #fff;
}
.locations > div p{
	font-size: 16px;
}

.locations > div figure{
	background: #fdc480;
	width: 130px;
	height: 130px;
	border-radius: 70px;
	clear: both; 
	display: flex;
  align-items: center;
  justify-content: center;
	margin: 0 auto 20px auto;
	padding: 0;
	float: none;
	text-align: center;
}

.locations > div img{
	text-align: center;
	width: 80px;
	height: 80px;
	vertical-align: middle;
}


/*flexyboxcards ____________________________*/

.flexyBoxCards{
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
.flexyBoxCards article{
	-webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 0 49%;
    -ms-flex: 0 0 49%;
    flex: 0 0 49%;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
	
	clear: both;
	padding: 25px 25px 35px 25px;
	box-shadow: 0 1px 2px #aaa;
	background: white;
	border-radius: 3px;
	user-select: none;
	animation: fly-in-from-left .5s 1s ease both;
	transform-origin: top left;
	margin-bottom: 2%;
}
.flexyBoxCards article > div{
	width: 55%;
	float: left;
	margin-right: 30px;
}
.flexyBoxCards article > aside{
	float: right;
	max-width: calc(55% - 30px);
	margin-top: 0;
}
.flexyBoxCards h4, h3{
	margin-top: 0;
	width: 100%;
	display: block;
}
.flexyBoxCards i{
	font-size: 100px;
	color: #fdc480; 
	margin-top: 40px;
}

.full{
	background: url('img/bg_travelkids.png');
	clear: both; 
	min-height: 200px;
	width: 100%;
	-webkit-box-shadow: inset 1px 2px 10px 4px rgba(0,0,0,0.35); 
	box-shadow: inset 1px 2px 10px 4px rgba(0,0,0,0.35);
	padding: 30px 0;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.otherBG{
	background: #fdc480;
}

footer{
	clear: both; 
	background: #496691;
	padding: 50px 0; 
	width: 100%;
	display: inline-block;
	width:100%;
	min-height: 200px; 
}
footer a{
	display: block;
	margin-bottom: 20px;
	color: #0cb89f;
	font-weight: bold;
	cursor: pointer;
	max-width: 150px;
}
.box p{
	color: #FFF;
}

.row1{
	float: left;
	width: 60%;
}

.row2{
	float: right;
	width: 30%;
	margin-left: 10%;
	text-align: right;
}

.segmentWithPicture{
	margin-bottom: 20px;
	padding-bottom: 20px;
	display: inline-block;
	width: 100%;
	background: #f6f6f6;
	padding: 25px;
	border-radius: 15px;
}

.imgSegment{
	max-width: 30%;
	width: 100%;
	float: left;
	padding-right: 15px;
	padding-bottom: 15px;
	clear: none;
	margin: 0;
}

.contentSegment{
	float: right; 
	max-width: 65%;
}


/*Responsive Media _____________________________________________________________*/


@media screen and (max-width: 1250px) {
	.center{
		padding: 30px;
	} 
	figure{
		max-width: 500px;
	}
	nav{
		width: 250px;
	}
	nav a{
		width: 100%;
	}
}

@media screen and (max-width: 900px) {
	
	figure{
		width: 80%;
		float: none; 
		clear: both; 
		max-width: 100%;
	}
	nav{
		float: none; 
		clear: both; 
		width: 100%;
		margin: 0 0 30px 0;
		display: inline-block;
	}
	nav a{
		width: 19%;
		float: left;
		margin-right: 1%;
		border-radius: 50px;
		text-align: center;
	}
	.buttonAside {
		width: 100%;
	}
	
}

@media screen and (max-width: 750px) {
	
	header, figure{
		padding-top: 0;
		margin-top: 0;
	}
	
	figure{
		width: 80%;
		float: none; 
		clear: both; 
		max-width: 100%;
		margin: 0 auto;
	}
	nav{
		float: none; 
		clear: both; 
		width: 100%;
		margin: 0;
	}
	nav a{
		width: 100%;
		float: none;
		margin-right: 0;
		border-radius: 50px;
		text-align: center;
	}
	.textContent, aside {
		width: 100%;
		margin-top: 40px;
		margin-bottom: 25px;
	}
	
	.locations{
		-webkit-flex-direction: column;
		flex-direction: column; 
		-ms-flex-direction: column;
	}
	
	.locations > div{
		flex: 0 0 100%;
		margin-bottom: 30px;
	}
	aside{
		text-align: center; 
		width: 100%;
	}
	aside > img{
		max-width: 70%;
		
	}
	.btn-short {
		max-width: 100%;
	}
	.flexyBoxCards article {
		-webkit-flex: 0 0 100%;
		-ms-flex: 0 0 100%;
		flex: 100%;
	}
	
	.btn{
		min-width: 150px;
	}
	
	.imgSegment{
		float: none!important; 
		clear: both!important; 
		max-width: 50%!important;
		margin: 0 auto!important;
		
	}
	.contentSegment{
		width: 100%!important;
		max-width: 100%!important;
		float: none!important;
		clear: both!important; 
	}
	
	.center ul li {
		line-height: 1.4em!important;
	}
	
}


@media screen and (max-width: 500px) {
	
	.flexyBoxCards article{
		margin-bottom: 30px;
	
	}
	.flexyBoxCards article > div, .flexyBoxCards article > aside{
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		float: none;
		clear: both; 
		max-width: 100%;
	}
	.flexyBoxCards aside img{
		max-width: 100%;
		margin-top: 20px;
	}
}


@media screen and (max-width: 440px) {
	.row1, .row2, .row2 a{
		width: 100%;
		text-align: center;
		margin-left: 0;
		margin-right: 0;
		float: none;
		clear: both; 
		max-width: 100%;
	}
	
	footer a {
		display: block;
		max-width: 100%;
		font-size: 20px;
	}
	
}