/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/montserrat-v25-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* montserrat-700 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('../fonts/montserrat-v25-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/montserrat-v25-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}


/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, main {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}


:root {
  --primary-color: #37586A;
	--secondary-color: #D1E4EC;
	--spacing: 20px;
}

*,
*:after,
*:before{
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: 'Montserrat', sans-serif;
  color: var(--primary-color);
	font-size: 18px;
	line-height: 1.2;
}

@media only screen and (min-width: 768px) {  
	body {
		font-size: 20px;
	}
}

a {
	color: inherit;
  text-decoration: none;
}

h2 {
	font-size: 2.2rem;
	font-weight: 700;
}

h2.bigtext {
	width: 100%;
	max-width: 1200px;
}

h3 {
	font-size: 1.3rem;
	font-weight: 700;
}

h3.quote {
	width: 100%;
	max-width: 1200px;
}

h4 {
	text-align: center;
}

h5 {
	font-weight: 700;
}

@media only screen and (min-width: 768px) {  
	h2 {
		font-size: 3rem;
	}
	h3 {
		font-size: 2rem;
	}
}
@media only screen and (min-width: 1170px) {
	h2 {
		font-size: 4.4rem;
	}
	h3 {
		font-size: 2.5rem;
	}
}

img {
	width: 100%;
	height: auto;
}

.bold {
	font-weight: 700;
}

.center {
	text-align: center;
}

.main {
	margin-top: calc(var(--spacing) * 4);
}

.header-logo {
	position: absolute;
	width: 120px;
	top: var(--spacing);
	right: var(--spacing);
	z-index: 100;
}

#menu {
	display: none;
	z-index: 100;
}

.mobilemenu {
	display: block;
	position: absolute;
	top: var(--spacing);
	left: var(--spacing);
}

@media only screen and (min-width: 768px) {
  .header-logo {
  	position: absolute;
  	width: 150px;
  	top: calc(var(--spacing) * 1.5);
  	right: calc(var(--spacing) * 3);
  }
  
  #menu {
		display: block;
  	position: absolute;
  	top: calc(var(--spacing) * 2);
  	left: calc(var(--spacing) * 3);
  }
	.mobilemenu {
		display: none;
	}
}
@media only screen and (min-width: 1170px) {
  .header-logo {
  	position: absolute;
  	width: 200px;
  	top: calc(var(--spacing) * 1.5);
  	right: calc(var(--spacing) * 4);
  }
  
  #menu {
		display: block;
  	position: absolute;
  	top: calc(var(--spacing) * 2);
  	left: calc(var(--spacing) * 4);
  }
	.mobilemenu {
		display: none;
	}
}

/* menu style */



ul.menu {
	display: flex;
	flex-direction: row;
}

.menu li {
	margin: 0 3px;
}

.menu li {
	padding-right: var(--spacing);
}

.menu a {
	position: relative;
}

li.active {
	border-bottom: 1px solid var(--primary-color);
}

.menu a::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--primary-color);
  transform-origin: bottom right;
  transform: scaleX(0);
  transition: transform 0.5s ease;
}

.menu a:hover::before {
  transform-origin: bottom left;
  transform: scaleX(1);
}

/* menu end */

.intro {
	display: block;
	height: 100vh;
	width: 100%;
	background: radial-gradient(50% 100%, #E8FDFF 8%, #A7C6D7 95%);
	background: conic-gradient(#E8FDFF 45deg 10%, #A7C6D7, #A7C6D7, #E8FDFF);
	
}

.logo {
	display: none;
	position: absolute;
	width: 200px;
	bottom: calc(var(--spacing) * 2);
	right: var(--spacing);
}

.bigmenu {
  font-size: 2.2rem;
  line-height: 1;
	font-weight: 700;
	padding-top: var(--spacing);
	padding-right: var(--spacing);
	padding-left: var(--spacing);
}

.bigmenu li {
	border-bottom: 1px solid white;
	padding-top: var(--spacing);
	padding-bottom: var(--spacing);
}

@media only screen and (min-width: 768px) {
  .logo {
		display: block;
  	bottom: calc(var(--spacing) * 2);
  	right: calc(var(--spacing) * 3);
  }
	.adress {
		bottom: calc(var(--spacing) * 2);
		left: calc(var(--spacing) * 3);
	}
	.bigmenu {
    font-size: 3rem;
		padding-top: var(--spacing);
		padding-right: calc(var(--spacing) * 3);
		padding-left: calc(var(--spacing) * 3);
  }
	.bigmenu li {
		padding-top: var(--spacing);
		padding-bottom: var(--spacing);
	}
}
@media only screen and (min-width: 1170px) {
  .logo {
		display: block;
  	bottom: calc(var(--spacing) * 3);
  	right: calc(var(--spacing) * 4);
  }
	.adress {
		bottom: calc(var(--spacing) * 3);
		left: calc(var(--spacing) * 4);
	}
	.bigmenu {
    font-size: 4.4rem;
		padding-top: var(--spacing);
		padding-right: calc(var(--spacing) * 4);
		padding-left: calc(var(--spacing) * 4);
  }
	.bigmenu li {
		padding-top: calc(var(--spacing) * 2);
		padding-bottom: calc(var(--spacing) * 2);
	}
}

.content {
	display: block;
	padding-top: calc(var(--spacing) * 2);
	padding-right: var(--spacing);
	padding-bottom: calc(var(--spacing) * 6);
	padding-left: var(--spacing);
}

.text {
	display: block;
	padding-top: calc(var(--spacing) * 2);
	padding-right: var(--spacing);
	padding-bottom: calc(var(--spacing) * 2);
	padding-left: var(--spacing);
}

.text p {
	width: 100%;
	max-width: 800px;
	padding-top: calc(var(--spacing) / 2);
	padding-bottom: calc(var(--spacing) / 2);
	font-weight: 700;
	line-height: 1.5;
}

@media only screen and (min-width: 768px) {  
	.content {
		padding-top: calc(var(--spacing) * 3);
		padding-right: calc(var(--spacing) * 3);
		padding-bottom: calc(var(--spacing) * 8);
		padding-left: calc(var(--spacing) * 3);
  }
	.text {
		display: block;
		padding-top: calc(var(--spacing) * 3);
		padding-right: calc(var(--spacing) * 4);
		padding-bottom: calc(var(--spacing) * 3);
		padding-left: calc(var(--spacing) * 4);
	}
}
@media only screen and (min-width: 1170px) {
	.content {
		padding-top: calc(var(--spacing) * 4);
		padding-right: calc(var(--spacing) * 4);
		padding-bottom: calc(var(--spacing) * 10);
		padding-left: calc(var(--spacing) * 4);
  }
	.text {
		display: block;
		padding-top: calc(var(--spacing) * 4);
		padding-right: calc(var(--spacing) * 8);
		padding-bottom: calc(var(--spacing) * 4);
		padding-left: calc(var(--spacing) * 8);
	}
}

.blue {
	background-color: var(--secondary-color);
}

.footer, .footer-info {
	padding-top: calc(var(--spacing) * 4);
}

@media only screen and (min-width: 768px) {  
	.footer, .footer-info {
		padding-top: calc(var(--spacing) * 8);
	}
}

.footer-info {
	position: relative;
	padding-right: var(--spacing);
	padding-left: var(--spacing);
	padding-bottom: var(--spacing);
}

.footer h4 {
	padding-left: var(--spacing);
	text-align: left;
}

.footermenu {
  font-size: 2.2rem;
  line-height: 1;
	font-weight: 700;
	padding-right: var(--spacing);
	padding-left: var(--spacing);
}

.footermenu li {
	border-bottom: 1px solid var(--primary-color);
	padding-top: var(--spacing);
	padding-bottom: var(--spacing);
}

.adress {
	display: block;
	position: absolute;
	bottom: calc(var(--spacing) * 4);
	left: var(--spacing);
}

.contact .subnav {
	position: absolute;
	bottom: calc(var(--spacing) * 2);
	left: var(--spacing);
}

@media only screen and (min-width: 768px) {
  .logo {
		display: block;
  	bottom: calc(var(--spacing) * 2);
  	right: calc(var(--spacing) * 3);
  }
	.adress {
		bottom: calc(var(--spacing) * 4);
		left: calc(var(--spacing) * 3);
	}
	.contact .subnav {
		bottom: calc(var(--spacing) * 2);
		left: calc(var(--spacing) * 3);
	}
	.footer-info {
		padding-right: calc(var(--spacing) * 3);
		padding-left: calc(var(--spacing) * 3);
		padding-bottom: calc(var(--spacing) * 3);
	}
	.footer h4 {
		padding-left: calc(var(--spacing) * 3);
	}
	.footermenu {
    font-size: 3rem;
		padding-right: calc(var(--spacing) * 3);
		padding-left: calc(var(--spacing) * 3);
  }
	.footermenu li {
		padding-top: var(--spacing);
		padding-bottom: var(--spacing);
	}
}
@media only screen and (min-width: 1170px) {
  .logo {
		display: block;
  	bottom: calc(var(--spacing) * 3);
  	right: calc(var(--spacing) * 4);
  }
	.adress {
		bottom: calc(var(--spacing) * 5);
		left: calc(var(--spacing) * 4);
	}
	.contact .subnav {
		bottom: calc(var(--spacing) * 3);
		left: calc(var(--spacing) * 4);
	}
	.footer-info {
		padding-right: calc(var(--spacing) * 4);
		padding-left: calc(var(--spacing) * 4);
		padding-bottom: calc(var(--spacing) * 4);
	}
	.footer h4 {
		padding-left: calc(var(--spacing) * 4);
	}
	.footermenu {
    font-size: 4.4rem;
		padding-right: calc(var(--spacing) * 4);
		padding-left: calc(var(--spacing) * 4);
  }
	.footermenu li {
		padding-top: calc(var(--spacing) * 2);
		padding-bottom: calc(var(--spacing) * 2);
	}
}

.footermenu a {
	padding-left: 0;
	transition: padding-left .3s ease-in-out;
}

.footermenu a:hover {
	padding-left: var(--spacing);
	transition: padding-left .3s ease-in-out;
}

.footermenu [aria-current="page"] {
	display: none;
}

.subnav ul {
	display: flex;
	flex-direction: row;
}

.subnav li:first-child {
	padding-right: var(--spacing);
}

.company {
	font-weight: 700;
	position: static;
	bottom: var(--spacing);
	right: var(--spacing);
	margin-top: var(--spacing);
}

@media only screen and (min-width: 1170px) {
  .company {
  	position: absolute;
  	bottom: calc(var(--spacing) * 4);
  	right: calc(var(--spacing) * 4);
  }
}

.content-box-left, .content-box-right {
	display: block;
}

.content-item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

@media only screen and (min-width: 768px) {  
	.content-box-left {
		display: flex;
		flex-direction: row;
	}
	.content-box-right {
		display: flex;
		flex-direction: row-reverse;
	}
	.content-item {
		width: 50%;
	}
}

@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

.fade-in {
  opacity:0;
  -webkit-animation:fadeIn ease-in 1; 
  -moz-animation:fadeIn ease-in 1;
  animation:fadeIn ease-in 1;

  -webkit-animation-fill-mode:forwards; 
  -moz-animation-fill-mode:forwards;
  animation-fill-mode:forwards;

  -webkit-animation-duration:.5s;
  -moz-animation-duration:.5s;
  animation-duration:.5s;
}

.fade-in:nth-child(1) {
  -webkit-animation-delay: 0.5s;
  -moz-animation-delay: 0.5s;
  animation-delay: 0.5s;
}



