@font-face
{
	font-family: "OpenSansLight";
	src: local("Open Sans Light"), url("OpenSans-Light.ttf") format("truetype");
}

*
{
	box-sizing: border-box;
}

html
{
	overflow-y: scroll;
	height: 100%;
	font-size: 100%;
}

body
{
	font: normal 14px/20px Arial, Helvetica, sans-serif;
	font-family: "OpenSansLight", Arial, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 20px;
	margin: 0;
	padding: 0;
	color: #d6dadd;
	background: #2e2f34 url("page.jpg") 50% 50% fixed repeat;
	min-height: 100%;
}

a
{
  color: #C5E9FE;
	text-decoration: none;
	transition: color 200ms ease-in-out;
}

a:hover
{
	color: #FFFFFF;
	text-shadow: 0 0 6px rgba(224,243,254,0.5);
}

img
{
	line-height: 0;
}

/* --------------------------------- */

::-moz-selection { background: rgba(224,243,254,0.3); color: #FFFFFF; }
::selection { background: rgba(224,243,254,0.3); color: #FFFFFF; }

img::selection { background: transparent; }
img::-moz-selection { background: transparent; }

button[disabled], input[disabled] { cursor: default; }
[hidden] { display: none; }

/* --------------- */

p, hr, dl, blockquote, pre, fieldset, figure { margin: 15px 0; }
dl { padding-left: 30px; }
dd { margin-left: 40px; }
h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 25px 0 15px 0; text-rendering: optimizelegibility; }
h1 { font-size: 36px; line-height: 36px; }
h2 { font-size: 24px; line-height: 24px; }
h3 { font-size: 18px; line-height: 18px; }
h4, h5, h6 { font-size: 16px; line-height: 16px; }
small { font-size: 11px; }
button, input[type='button'], input[type='submit'] { padding: 2px 3px; }

h1 { text-transform: uppercase; }
h4 { color: #fff; }
p, hr, ul, ol, dl, blockquote, pre, fieldset, figure { margin: 20px 0; }
ul, ol { padding: 0; }
em, small { color: #8b8d8e; }
strong { color: #fff; }

/* --------------------------------- */

.button-default,
.button-primary
{
	position: relative;
	display: inline-block;
	padding: 5px 13px;
	border-radius: 2px;
	text-transform: uppercase;
}

.button-default:before,
.button-primary:before
{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: 50% 0;
	background-repeat: no-repeat;;
}

.button-default:focus:before,
.button-primary:focus:before { background: none; }

.button-default:hover,
.button-primary:hover
{
	animation-name: bounce;
	animation-duration: 300ms;
	animation-fill-mode: both;
}

@keyframes bounce
{
	0%, 100% { transform: translateY(0); }
	30% { transform: translateY(3px); }
	60% { transform: translateY(-3px); }
}

.button-default
{
	border-bottom: 1px solid #191919;
	border-bottom: 1px solid rgba(0,0,0,0.6);
	background: url("button_default.png") 50% 0 repeat-x;
	box-shadow: 0 1px 1px rgba(0,0,0,0.3);
	color: #8A8C8C;
	text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
}

.button-default:before
{
	background-image: url("button_default_effect.png");
}

.button-default:focus
{
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.8), inset 0 0 12px rgba(0,0,0,0.7), 0 1px 0 rgba(255,255,255,0.1);
	background: #222;
	background: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 100%);
}

.button-primary
{
  display: inline-block;
	color: #313E4A;
	background-color: #E1F0FB;
	text-shadow: 0 1px 0 rgba(255,255,255,0.5);
	box-shadow: inset 0 0 12px rgba(71,95,118,0.8), inset 0 0 8px rgba(0,0,0,0.3), 0 1px 1px rgba(0,0,0,0.3);
}

.button-primary:before
{
	background-image: url("button_primary_effect.png");
}

.button-primary:focus
{
	box-shadow: inset 0 1px 1px rgba(0,0,0,0.3), inset 0 0 12px rgba(71,95,118,1), inset 0 0 8px rgba(0,0,0,0.5);
}

.button-primary:hover
{
	color: #2B6C91;
}

/* --------------------------------- */

@media (min-device-width: 1025px)
{
	.page-bg
	{
		min-height: 900px;
		background: url("page_gradient_light.svg") 50% -400px fixed no-repeat, url("page_gradient_dark.svg") 50% 0 fixed no-repeat;
		background-size: auto, auto;
		background-size: 1200px 900px, 2560px 400%;
	}
}

.wrapper
{
	max-width: 1080px;
	padding: 5px 0;
	margin: auto;
	padding-bottom: 60px;
}

/* --------------------------------- */

.grid-block
{
	display: flex;
	grid-gap: 10px;
}

.grid-block.vertical
{
	flex-direction: column;
}

.grid-block.flex1 > *
{
	flex: 1;
}

.grid-block.flex25 > *:first-child
{
	flex: 1;
}

.grid-block.flex25 > *:last-child
{
	width: max-content;
	max-width: 25vw;
}

.grid-block.flex30 > *:first-child
{
	flex: 1;
	max-width: 70%;
}

.grid-block.flex30 > *:last-child
{
	width: max-content;
	max-width: 30%;
}

.grid-block.flex35 > *:first-child
{
	flex: 1;
	max-width: 65%;
}

.grid-block.flex35 > *:last-child
{
	width: max-content;
	max-width: 35%;
}

.grid-block.flex40 > *:first-child
{
	flex: 1;
	max-width: 60%;
}

.grid-block.flex40 > *:last-child
{
	width: max-content;
	max-width: 40%;
}

.grid-block.flex50 > *
{
	flex: 1;
	width: 50%;
	max-width: 50%;
}

@media (max-width: 1000px)
{
	.grid-block
	{
		flex-direction: column;
		width: 100%;
		max-width: none;
	}

	.grid-block.flex25 > *:first-child,
	.grid-block.flex25 > *:last-child,
	.grid-block.flex30 > *:first-child,
	.grid-block.flex30 > *:last-child,
	.grid-block.flex35 > *:first-child,
	.grid-block.flex35 > *:last-child,
	.grid-block.flex40 > *:first-child,
	.grid-block.flex40 > *:last-child,
	.grid-block.flex50 > *
	{
		width: 100%;
		max-width: none;
	}
}

/* ---------------- */

.section
{
	position: relative;
	margin-top: 25px;
}

.section:before
{
	content: "";
	display: block;
	position: absolute;
	top: -15px;
	right: 5px;
	left: 5px;
	height: 10px;
	background: url("section_before.png") 0 0 repeat-x;
}

/* ---------------- */

.grid-box
{
	padding: 20px;
	background: url("section.png") 50% 50% repeat;
	box-shadow: inset 0 0 30px rgba(0,0,0,0.1);
}

.grid-box h1
{
	font-size: 38px;
	margin-top: 0;
	color: #FFFFFF;
	text-shadow: 0 0 6px rgba(224,243,254,0.5);
}

.grid-box .module-title
{
	font-size: 20px;
	line-height: 20px;
	margin: 0 0 15px 0;
	text-align: center;
	color: #FFFFFF;
	text-shadow: 0 0 6px rgba(224,243,254,0.5);
}

.grid-box > :first-child
{
  margin-top: 0;
}

.grid-box > :last-child
{
  margin-bottom: 0;
}

.grid-box img
{
	max-width: 100%;
}

.grid-box p.center
{
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* --------------------------------- */

#header
{
  padding: 7px 7px;
}

#header .logo
{
	display: flex;
	align-items: center;
}

#header .max-logo
{
  margin: -20px -10px -20px -20px;
  z-index: 100;
}

#header .max-logo img
{
  max-width: 300px;
  height: auto;
}

#header .headerbar
{
  margin: 8px 0 8px 0;
}

#header .headerbar img
{
	max-width: 300px;
  height: auto;
}

/* ---------------- */

#menubar
{
	display: flex;
	align-items: center;
  padding: 4px;
  border-top: 1px solid #000;
  border-top: 1px solid rgba(0,0,0,0.3);
  border-bottom: 1px solid #343434;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  border-radius: 3px;
  background: #242424;
  background: rgba(0,0,0,0.08);
  box-shadow: inset 0 0 3px rgba(0,0,0,0.3);
}

/* ---------------- */

#menubar .social-container
{
	display: flex;
	margin-left: auto;
	align-items: center;
}

#menubar .social-container .phone
{
	font-size: 19px;
	line-height: 130%;
	margin-right: 12px;
}

#menubar .socialone .button-default
{
  padding: 0px;
  margin: 0;
}

#menubar .socialone img
{
	width: 38px;
	height: auto;
	padding: 5px 5px 0px 5px;
	margin: 0px;
}

/* --------------------------------- */

#footer
{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	text-align: center;
	margin: 0 auto;
	z-index: 9999;
}

#footer .menu-dropdown
{
	background-color: #000000;
	transition: background 0.3s ease-out 0s;
}

#footer .menu-dropdown:hover
{
  background-color: #303030;
}

#footer .menu-dropdown > img
{
	width: 40px;
	height: 40px;
}

#footer .menu-dropdown > img:last-child
{
  margin-left: auto;
}

/* --------------------------------- */

.max-micro
{
	display: inline-block;
	width: 100%;
	height: auto;
	margin: 0;
	float: left;
	padding: 20px;
	border-radius: 4px 4px 4px 4px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
	border: 1px dashed #51514f;
	background-color: transparent;
}

.team-container
{
	display: flex;
	flex-wrap: wrap;
	grid-gap: 7px;
	align-items: center;
	justify-content: center;
	margin: auto;
}

.team-container img.thmb
{
	display: block;
	font-size: 12.16px;
	border-radius: 4px;
	width: 50px;
	height: auto;
	opacity: 0.8;
	transition: all 0.2s linear;
}

.team-container img.thmb:hover
{
	opacity: 1;
}

/* --------------------------------- */

@media (max-width: 500px)
{
	#header .logo
	{
		align-items: center;
	}
	#header .max-logo
	{
		display: none;
	}
	#header .headerbar
	{
		margin-left: auto;
		margin-right: auto;
	}
	#footer img
	{
		display: none;
	}
}

