/* 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;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	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;
}


/*  Essential
----------------------------------------------------- */
sup {
	position: relative;
	font-size: 65%;
	line-height: 0;
	vertical-align: baseline;
	top: -0.4em;
}
strong, b {
	font-weight: bold;
}
em {
	font-style: italic;
}
figure {
	margin: 0;
	padding: 0;
}

p {
	margin-bottom: 1.875rem;
}

.font-big {
	font-size: 22px; /* 22px */
	line-height: 150%;
}

.font- {
	font-size: 22px; /* 22px */
	line-height: 150%;
}
.font-medium {
	font-size: 18px; /* 18px */
	line-height: 140%;
}
.font-normal {
	font-size: 16px; /* 16px */
	line-height: 140%;
}
.font-small {
	font-size: 14px; /* 14px */
	line-height: 140%;
}
.font-tiny {
	font-size: 12px;
	line-height: 140%;
}
.font-smaller{
	font-size: 12px;
	line-height: 18px;
}

@media (max-width:720px){
	.font-big {
		font-size: 18px; /* 18px */
		line-height: 140%;
	}
	.font-medium {
		font-size: 16px; /* 16px */
		line-height: 140%;
	}
	.font-normal {
		font-size: 14px; /* 14px */
		line-height: 140%;
	}
	.font-small {
		font-size: 12px;
		line-height: 140%;
	}
	.font-tiny {
		font-size: 12px;
		line-height: 140%;
	}
}

.clearfix:after {
   content: ".";
   visibility: hidden;
   display: block;
   height: 0;
   clear: both;
}
.img-full {
	max-width: 100%;
	height: auto;
}
.text-uppercase {
	text-transform: uppercase;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.float-right {
	float: right;
}


/*  Spacing
----------------------------------------------------- */
.px-big { padding-left: 6.25rem; padding-right: 6.25rem; }
.py-big { padding-top: 6.25rem; padding-bottom: 6.25rem; }
.pt-big { padding-top: 6.25rem; }
.pb-big { padding-bottom: 6.25rem; }
.pl-big { padding-left: 6.25rem; }
.pr-big { padding-right: 6.25rem; }
.px-medium { padding-left: 3.75rem; padding-right: 3.75rem; }
.py-medium { padding-top: 3.75rem; padding-bottom: 3.75rem; }
.pt-medium { padding-top: 3.75rem; }
.pb-medium { padding-bottom: 3.75rem; }
.pl-medium { padding-left: 3.75rem; }
.pr-medium { padding-right: 3.75rem; }
.px-regular { padding-left: 1.875rem; padding-right: 1.875rem; }
.py-regular { padding-top: 1.875rem; padding-bottom: 1.875rem; }
.pt-regular { padding-top: 1.875rem; }
.pb-regular { padding-bottom: 1.875rem; }
.pl-regular { padding-left: 1.875rem; }
.pr-regular { padding-right: 1.875rem; }
.px-small { padding-left: 0.938rem; padding-right: 0.938rem; }
.py-small{ padding-top: 0.938rem; padding-bottom: 0.938rem; }
.pt-small { padding-top: 0.938rem; }
.pb-small { padding-bottom: 0.938rem; }
.pl-small { padding-left: 0.938rem; }
.pr-small { padding-right: 0.938rem; }

.mx-big { margin-left: 5rem; margin-right: 5rem; }
.my-big { margin-top: 5rem; margin-bottom: 5rem; }
.mt-big { margin-top: 5rem; }
.mb-big { margin-bottom: 5rem; }
.ml-big { margin-left: 5rem; }
.mr-big { margin-right: 5rem; }
.mx-medium { margin-left: 3.75rem; margin-right: 3.75rem; }
.my-medium { margin-top: 3.75rem; margin-bottom: 3.75rem; }
.mt-medium { margin-top: 3.75rem; }
.mb-medium { margin-bottom: 3.75rem; }
.ml-medium { margin-left: 3.75rem; }
.mr-medium { margin-right: 3.75rem; }
.mx-regular { margin-left: 1.875rem; margin-right: 1.875rem; }
.my-regular { margin-top: 1.875rem; margin-bottom: 1.875rem; }
.mt-regular { margin-top: 1.875rem; }
.mb-regular { margin-bottom: 1.875rem; }
.ml-regular { margin-left: 1.875rem; }
.mr-regular { margin-right: 1.875rem; }
.mx-small { margin-left: 0.938rem; margin-right: 0.938rem; }
.my-small{ margin-top: 0.938rem; margin-bottom: 0.938rem; }
.mt-small { margin-top: 0.938rem; }
.mb-small { margin-bottom: 0.938rem; }
.ml-small { margin-left: 0.938rem; }
.mr-small { margin-right: 0.938rem; }
.mb-0 { margin-bottom: 0; }

@media (max-width:720px) {
	.py-big {
		padding-top:3.125rem;
		padding-bottom:3.125rem
	}
}
@media (min-width:768px) and (max-width:1200px){
	.py-big {
		padding-top:5rem;
		padding-bottom:5rem
	}
}

/* Display
----------------------------------------------------- */
.d-block { display: block; }
.d-inline-block { display: inline-block; }
.d-flex { display: flex; }
.d-none { display: none !important; }


/* Flex item
----------------------------------------------------- */
.d-flex.flex-align-end {
	align-items: flex-end;
}
.d-flex.flex-align-start {
	align-items: flex-start;
}
.d-flex.flex-align-center {
	align-items: center;
}
.d-flex.flex-justify-between {
	justify-content: space-between;
}
.d-flex.flex-justify-around {
	justify-content: space-around;
}
.d-flex.flex-justify-center {
	justify-content: center;
}
.d-flex.flex-justify-end {
	justify-content: flex-end;
}
.d-flex .order-2 {
	order: 2;
}


/* Flex item
----------------------------------------------------- */
.col-grid {
	display: flex;
    margin-left: -15px;
    margin-right: -15px;
    flex-wrap: wrap;
}
	.col-grid.no-gutters {
		margin-left: 0;
		margin-right: 0;
	}
.col-grid > .col-grid-item {
	padding-left: 15px;
	padding-right: 15px;
	box-sizing: border-box;
}
	.col-grid.no-gutters > .col-grid-item {
		margin-left: 0;
		margin-right: 0;
	}
.col-grid-onehalf > .col-grid-item {
	flex: 0 50%;
    max-width: 50%;
}
.col-grid-onethird > .col-grid-item {
	flex: 0 0 33%;
    max-width: 33%;
}
.col-grid-oneforth > .col-grid-item {
	flex: 0 0 0 25%;
    max-width: 25%;
}
.col-grid-onefifth > .col-grid-item {
	flex: 0 0 0 0 20%;
    max-width: 20%;
}


/* Custom check
----------------------------------------------------- */
.custom-check {
	display: block;
    position: relative;
    padding-left: 30px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 1em;
	line-height: 140%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.custom-check input { /* Hide the browser's default checkbox */
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.custom-check .checkmark { /* Create a custom checkbox */
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	height: 20px;
	width: 20px;
	border-radius: 2px;
	background-color: #fff;
}
.custom-check:hover input ~ .checkmark { /* On mouse-over, add a grey background color */
	background-color: #fff;
}
.custom-check input:checked ~ .checkmark { /* When the checkbox is checked, add a green background */
	background-color: #6AC346;
}
.custom-check .checkmark:after { /* Create the checkmark/indicator (hidden when not checked) */
	content: "";
	position: absolute;
	display: none;
}
.custom-check input:checked ~ .checkmark:after { /* Show the checkmark when checked */
	display: block;
}
.custom-check .checkmark:after { /* Style the checkmark/indicator */
	left: 7px;
    top: 3px;
    width: 4px;
    height: 8px;
	box-sizing: content-box;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* Responsive Video
----------------------------------------------------- */
.videoWrapper {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* Header
----------------------------------------------------- */
h1 {
	font-size: 3rem;
	line-height: 120%;
}
h2 {
	font-size: 2.750rem;
	line-height: 120%;
}
h3 {
	font-size: 2.15rem;
	line-height: 120%;
}
h4 {
	font-size: 1.625rem;
	line-height: 140%;
}


/* Container
----------------------------------------------------- */
.container-center {
	margin-left: auto;
	margin-right: auto;
}
.container-big-2 {
	max-width: 1170px;
}
.container-big {
	max-width: 960px;
}
.container-medium {
	max-width: 720px;
}
.container-small {
	max-width: 640px;
}
.container-tiny {
	max-width: 440px;
}
.container-tiny-2 {
	max-width: 370px;
}


/* Background color
----------------------------------------------------- */
.bg-darkgrey {  background-color: #333F48; color:#FFFFFF }
.bg-mediumgrey {  background-color: #E6E2E4; color:#7A126B }
.bg-black {  background-color: #111111; color:#CCCCCC }
.bg-blue { background-color: #3E8DDD; color: #fff }
.bg-darkblue { background-color: #11184F; color: #fff }
.bg-red { background-color: #E1140A; color: #fff; }
.bg-green { background-color: #6AC346; color: #fff }
.bg-purple { background-color: #8246AF; color: #fff }
.bg-orange { background-color: #FF6A00; color: #fff }
.bg-light-pink { background-color: #F1E1ED; color: #000000 }
.bg-pink { background-color: #F04187; color: #fff }
.bg-grey { background-color: #f2f3f4; color: #444444; }
.bg-lightgrey { background-color: #E9EAEC; color: #111111 }
.bg-white { background-color: #FFFFFF; color: #000000; }
.bg-grey_2 { background-color: #E4E4E5; color: #777777; }
.bg-lightRed { background-color: #FAECEB; color: #000000; }


/* Text Color
----------------------------------------------------- */
.text-black { color: #111111; }
.text-medium-black  { color: #444444; }
.text-white { color: #ffffff; }
.text-red { color: #E1251B; }
.text-blue { color: #3E8DDD; }
.text-green { color: #6AC346; }
.text-purple { color: #8246AF; }
.text-cyan { color: #46C8E1; }
.text-pink { color: #F04187; }
.text-orange { color: #FF6A00; }
.text-yellow { color: #FEE600; }
.text-darkgrey { color: #333F48; }
.text-lightgrey { color: #DDDDDD !important; }
.text-grey { color: #777777; }


/* Buttons
----------------------------------------------------- */

.btn {
    display:inline-block;
	border-radius: 0 !important;
    font-size:16px !important;
    line-height:1.1;
    padding:13px 25px !important;
    text-decoration:none;
    text-align:center;
    border-radius:unset;
    white-space:normal;
    cursor:pointer;
    transition: all .2s;
    color: #fff;
    font-weight: 700 !important;
}
.btn:hover {
    background: transparent;
    color: #ffffff;
    box-shadow: 0 0 10px rgba(0,0,0, 1);
}

.btn.btn-red {
	background-color: #E1251B !important;
	border: 2px solid #E1251B !important;
	color: #ffffff !important;
}
.btn.btn-red:hover {
    background: transparent !important;
    border: 2px solid #E1251B !important;
    color: #ffffff; 
    box-shadow: 0 0 10px rgba(0,0,0, 0.2);
}

.btn.btn-orange {
	background-color: #F26A52 !important;
	border: 2px solid #F26A52 !important;
	color: #ffffff;
}
.btn.btn-orange:hover {
    background: transparent !important;
    border: 2px solid #F26A52 !important;
    color: #F26A52; 
    box-shadow: 0 0 10px rgba(0,0,0, 0.2);
}

.btn.btn-arrow span {
  position: relative;
  display: inline-block;
}
.btn.btn-arrow span svg{
  position: absolute;
  top: 50%;
  right: 0;
  fill: #ffffff;
  transform: translateY(-50%);
}
.btn-arrow:hover svg path {
    fill: #ffffff;
}

.btn.btn-download {
	background-color: #E1251B !important;
	border: 2px solid #E1251B !important;
	color: #ffffff !important;
}
.btn.btn-download:hover {
    background: transparent !important;
    border: 2px solid #E1251B !important;
    color: #E1251B !important; 
    box-shadow: 0 0 10px rgba(0,0,0, 0.2);
}

.btn.btn-arrow-download span {
  position: relative;
  display: inline-block;
  padding-right: 20px;
}
.btn.btn-arrow-download span svg{
  position: absolute;
  top: 50%;
  right: 0;
  fill: #ffffff;
  transform: translateY(-50%);
}
.btn-arrow-download:hover svg path {
    fill: #E1251B;
}

/* List group
----------------------------------------------------- */
ul.list-empty {
	list-style-type: none;
}
ul.list-square {
	list-style-type: square;
}
ul.list-disc {
	list-style-type: disc;
	margin-left: 15px;
}
ul.list-decimal {
	list-style-type: decimal;
	margin-left: 15px;
}


/* Forms
----------------------------------------------------- */
input,
select,
textarea {
	width: 100%;
}
.form-group input,
.form-group select {
	padding: 10px 15px;
	border: 2px solid #ffffff;
	box-sizing: border-box;
	width: 100%;
	font-size: 1rem;
	font-family: inherit;
}
.form-group select {
	-moz-appearance: none; /* Firefox */
    -webkit-appearance: none; /* Safari and Chrome */
    appearance: none;
}
.form-group .form-custom-select {
	position: relative;
}
.form-group .form-custom-select:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -3px;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 6px solid #444;
}


/* Hack for IE
----------------------------------------------------- */
select::-ms-expand,
select:disabled.simple-control::-ms-expand {
   display: none;
   appearance: none;
}


/* Hover effect
----------------------------------------------------- */
.hover-lift {
	transition: all 0.2s ease-out;
}
.hover-lift:hover {
	transform: translateY(-10px);
	box-shadow: 0 3px 4px rgba(0,0,0, 0.05);
}


/* Animate content show on scroll
   Based on slidein.js
----------------------------------------------------- */
.come-in {
	transform: translateX(-80px);
	animation: come-in 1.5s ease forwards;
	opacity: 0;
}
@keyframes come-in {
	to {
		transform: translateX(0);
		opacity: 1;
	}
}
