/* 
===================
| default styling |
===================
*/

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,500,600,700&display=swap');

* {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	transition-duration: 0.5s;
	text-decoration: none;
	font-weight: 400;
	color: #b5b5b5;
	margin: 0;
	padding: 0px;
	outline: none;
	box-sizing: border-box;
}

/* 
====================
| specific classes |
====================
*/

/* empty */

/* 
==============
| components |
==============
*/

/* == anchor group == */
.anchor-group {
	list-style-type: none;
}
.anchor-group > li {
	padding-top: 3px;
	padding-bottom: 3px;
}
.anchor-group > li.badge-heading {
	padding-top: 0px;
	padding-bottom: 0px;
}
.anchor-group > li > a {
	text-decoration: none;
	color: #fff;
	cursor: pointer;
}
.anchor-group > li > a:hover { 
	color: #000;
}
/* == thumb == */
.thumb {
	margin: 0; 
	position: relative;
	overflow: hidden;
}
.thumb:hover {
	cursor: pointer;
}
.thumb-lg {
	height: 400px;
}
.thumb-sm {
	height: 155px;
}
.thumb:hover .thumb-inner-image {
	transform: scale(1.1);
}
.thumb-overlay {
	background: rgba(5, 7, 8, 0.75);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.thumb-inner-text {
	position: absolute; 
	top: 50%; 
	transform: translateY(-50%); 
	display: block; 
	box-sizing: border-box; 
	width: 100%; 
	text-align: center;
	z-index: 2;
	color: #dce8ec;
}
.thumb-inner-image {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
/* == social icon == */
.social-icon {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.social-icon:hover {
	background: #050708;
	cursor: pointer;
}
/* == badge == */
.badge {
	padding: 2px 10px;
	box-sizing: border-box;
	display: inline-block;
}
/* == spacer == */
.spacer {
	display: block;
	width: 100%;
	overflow: hidden;
}
.spacer-5 {
	height: 5px;
}
.spacer-10 {
	height: 10px;
}
.spacer-15 {
	height: 15px;
}
.spacer-20 {
	height: 20px;
}
.spacer-25 {
	height: 25px;
}
.spacer-30 {
	height: 30px;
}
.spacer-35 {
	height: 35px;
}
.spacer-40 {
	height: 40px;
}
.spacer-45 {
	height: 45px;
}
.spacer-50 {
	height: 50px;
}
.spacer-55 {
	height: 55px;
}
.spacer-60 {
	height: 60px;
}
.spacer-65 {
	height: 65px;
}
.spacer-70 {
	height: 70px;
}
.spacer-75 {
	height: 75px;
}
.spacer-80 {
	height: 80px;
}
.spacer-85 {
	height: 85px;
}
.spacer-90 {
	height: 90px;
}
.spacer-95 {
	height: 95px;
}
.spacer-100 {
	height: 100px;
}
/* == separator == */
.separator {
	height: 5px;
	width: 25px;
	background: #000;
}
/* == input custom == */
.input-custom {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	height: 45px;
}
.input-custom input {
	border: 0;
	padding: 0;
	margin: 0;
	flex-grow: 1;
	background: transparent;
}
.input-custom input::placeholder {
	color: #79818a;
}
/* == select custom == */
.select-custom {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	height: 45px;
	padding: 0 15px;
}
.select-custom select {
	border: 0;
	padding: 0;
	margin: 0;
	background: transparent;
	-webkit-appearance: none;
    -moz-appearance: none;
	flex-grow: 1;
	color: #79818a;
}
.textarea-custom {
	border: 0;
	padding: 0;
	margin: 0;
	resize: none;
	min-height: 400px;
	height: 400px;
	color: #79818a;
}
.textarea-custom::placeholder {
	color: #79818a;
}
.textarea-custom::-webkit-input-placeholder {
	color: #79818a;
}
.textarea-custom:-moz-placeholder {
	color: #79818a;
}
.textarea-custom::-moz-placeholder {
	color: #79818a;
}
.textarea-custom:-ms-input-placeholder {
	color: #79818a;
}
.textarea-custom::placeholder {
	color: #79818a;
}
/* == button custom == */
.btn-custom {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	border: 0;
	background: transparent;
}
.btn-lg {
	height: 60px;
}
.btn-sm {
	height: 45px;
}
.
/* == icon == */
.icon {
	position: relative;
}
.icon-start {
	margin: 0px 15px 0px 0px;
}
.icon-end {
	margin: 0px 0px 0px 15px;
}
/* == breadcrumbs == */
.breadcrumbs {
	list-style-type: none;
	display: flex;
	align-items: center;
}
.breadcrumbs > li {
	padding: 0 5px;
	display: flex;
}
/* == pagination == */
.pagination {
	list-style-type: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
.pagination > li {
	margin: 0 5px;
	width: 40px;
	text-align: center;
}
.pagination > li > a {
	display: flex;
	height: 40px;
	width: 40px;
	align-items: center;
	justify-content: center;
	background: #000;
	color: #fff;
	border-radius: 100%;
}
.pagination > li > a:hover {
	cursor: pointer;
	background: #c61010;
}
/* == modal == */ 
.modal-overlay { 
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .8);
	z-index: 3;
}
.modal {
	position: relative;
	width: 600px;
}
.modal-close {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
	height: 45px;
	width: 45px;
	align-items: center;
	justify-content: center;
}

/* 
========
| grid |
========
*/

.grid-1-12, 
.grid-2-12,
.grid-3-12,
.grid-4-12, 
.grid-5-12, 
.grid-6-12,
.grid-7-12,
.grid-8-12,
.grid-9-12,
.grid-10-12,
.grid-11-12,
.grid-12-12,
.grid-12-5c {
	padding: 10px;
	box-sizing: border-box;
}
/* == normal grid sizes == */
.grid-1-12 {
	width: 8.3%;
}
.grid-2-12 {
	width: 16.6%;
}
.grid-3-12 {
	width: 24.9%;
}
.grid-4-12 {
	width: 33.2%;
}
.grid-5-12 {
	width: 41.5%;
}
.grid-6-12 {
	width: 49.8%;
}
.grid-7-12 {
	width: 58.1%;
}
.grid-8-12 {
	width: 66.4%;
}
.grid-9-12 {
	width: 74.7%;
}
.grid-10-12 {
	width: 83%;
}
.grid-11-12 {
	width: 91.3%;
}
.grid-12-12 {
	width: 100%;
}
/* == custom grid sizes == */
.grid-12-5c {
	width: 20%;
}

/* 
===========
| spacing |
===========
*/

/* == padding == */
.p-0 {
	padding: 0px;
}
.p-5 {
	padding: 5px;
}
.p-10 {
	padding: 10px;
}
.p-15 {
	padding: 15px;
}
.p-20 {
	padding: 20px;
}
.p-25 {
	padding: 25px;
}
.p-30 {
	padding: 30px;
}
.p-35 {
	padding: 35px;
}
.p-40 {
	padding: 40px;
}
.p-45 {
	padding: 45px;
}
.p-50 {
	padding: 50px;
}
.px-5 {
	padding-right: 5px;
	padding-left: 5px;
}
.px-10 {
	padding-right: 10px;
	padding-left: 10px;
}
.px-15 {
	padding-right: 15px;
	padding-left: 15px;
}
.px-20 {
	padding-right: 20px;
	padding-left: 20px;
}
.px-25 {
	padding-right: 25px;
	padding-left: 25px;
}
.px-30 {
	padding-right: 30px;
	padding-left: 30px;
}
.px-35 {
	padding-right: 35px;
	padding-left: 35px;
}
.px-40 {
	padding-right: 40px;
	padding-left: 40px;
}
.px-45 {
	padding-right: 45px;
	padding-left: 45px;
}
.px-50 {
	padding-right: 50px;
	padding-left: 50px;
}
.py-5 {
	padding-top: 5px;
	padding-bottom: 5px;
}
.py-10 {
	padding-top: 10px;
	padding-bottom: 10px;
}
.py-15 {
	padding-top: 15px;
	padding-bottom: 15px;
}
.py-20 {
	padding-top: 20px;
	padding-bottom: 20px;
}
.py-25 {
	padding-top: 25px;
	padding-bottom: 25px;
}
.py-30 {
	padding-top: 30px;
	padding-bottom: 30px;
}
.py-35 {
	padding-top: 35px;
	padding-bottom: 35px;
}
.py-40 {
	padding-top: 40px;
	padding-bottom: 40px;
}
.py-45 {
	padding-top: 45px;
	padding-bottom: 45px;
}
.py-50 {
	padding-top: 50px;
	padding-bottom: 50px;
}
.pr-0 {
	padding-right: 0;
}
.pr-5 {
	padding-right: 5px;
}
.pr-10 {
	padding-right: 10px;
}
.pr-15 {
	padding-right: 15px;
}
.pr-20 {
	padding-right: 20px;
}
.pr-25 {
	padding-right: 25px;
}
.pr-30 {
	padding-right: 30px;
}
.pr-35 {
	padding-right: 35px;
}
.pr-40 {
	padding-right: 40px;
}
.pr-45 {
	padding-right: 45px;
}
.pr-50 {
	padding-right: 50px;
}
.pl-0 {
	padding-left: 0px;
}
.pl-5 {
	padding-left: 5px;
}
.pl-10 {
	padding-left: 10px;
}
.pl-15 {
	padding-left: 15px;
}
.pl-20 {
	padding-left: 20px;
}
.pl-25 {
	padding-left: 25px;
}
.pl-30 {
	padding-left: 30px;
}
.pl-35 {
	padding-left: 35px;
}
.pl-40 {
	padding-left: 40px;
}
.pl-45 {
	padding-left: 45px;
}
.pl-50 {
	padding-left: 50px;
}
.pt-0 {
	padding-top: 0px;
}
.pt-5 {
	padding-top: 5px;
}
.pt-10 {
	padding-top: 10px;
}
.pt-15 {
	padding-top: 15px;
}
.pt-20 {
	padding-top: 20px;
}
.pt-25 {
	padding-top: 25px;
}
.pt-30 {
	padding-top: 30px;
}
.pt-35 {
	padding-top: 35px;
}
.pt-40 {
	padding-top: 40px;
}
.pt-45 {
	padding-top: 45px;
}
.pt-50 {
	padding-top: 50px;
}
.pb-0 {
	padding-bottom: 0px;
}
.pb-5 {
	padding-bottom: 5px;
}
.pb-10 {
	padding-bottom: 10px;
}
.pb-15 {
	padding-bottom: 15px;
}
.pb-20 {
	padding-bottom: 20px;
}
.pb-25 {
	padding-bottom: 25px;
}
.pb-30 {
	padding-bottom: 30px;
}
.pb-35 {
	padding-bottom: 35px;
}
.pb-40 {
	padding-bottom: 40px;
}
.pb-45 {
	padding-bottom: 45px;
}
.pb-50 {
	padding-bottom: 50px;
}
/* == margin == */
.m-auto {
	margin-left: auto;
	margin-right: auto;
}
.m-0 {
	margin: 0px;
}
.m-5 {
	margin: 5px;
}
.m-10 {
	margin: 10px;
}
.m-15 {
	margin: 15px;
}
.m-20 {
	margin: 20px;
}
.m-25 {
	margin: 25px;
}
.m-30 {
	margin: 30px;
}
.m-35 {
	margin: 35px;
}
.m-40 {
	margin: 40px;
}
.m-45 {
	margin: 45px;
}
.m-50 {
	margin: 50px;
}
.mx-5 {
	margin-left: 5px;
	margin-right: 5px;
}
.mx-10 {
	margin-left: 10px;
	margin-right: 10px;
}
.mx-15 {
	margin-left: 15px;
	margin-right: 15px;
}
.mx-20 {
	margin-left: 20px;
	margin-right: 20px;
}
.mx-25 {
	margin-left: 25px;
	margin-right: 25px;
}
.mx-30 {
	margin-left: 30px;
	margin-right: 30px;
}
.mx-35 {
	margin-left: 35px;
	margin-right: 35px;
}
.mx-40 {
	margin-left: 40px;
	margin-right: 40px;
}
.mx-45 {
	margin-left: 45px;
	margin-right: 45px;
}
.mx-50 {
	margin-left: 50px;
	margin-right: 50px;
}
.my-5 {
	margin-top: 5px;
	margin-bottom: 5px;
}
.my-10 {
	margin-top: 10px;
	margin-bottom: 10px;
}
.my-15 {
	margin-top: 15px;
	margin-bottom: 15px;
}
.my-20 {
	margin-top: 20px;
	margin-bottom: 20px;
}
.my-25 {
	margin-top: 25px;
	margin-bottom: 25px;
}
.my-30 {
	margin-top: 30px;
	margin-bottom: 30px;
}
.my-35 {
	margin-top: 35px;
	margin-bottom: 35px;
}
.my-40 {
	margin-top: 40px;
	margin-bottom: 40px;
}
.my-45 {
	margin-top: 45px;
	margin-bottom: 45px;
}
.my-50 {
	margin-top: 50px;
	margin-bottom: 50px;
}
.mr-0 {
	margin-right: 0;
}
.mr-5 {
	margin-right: 5px;
}
.mr-10 {
	margin-right: 10px;
}
.mr-15 {
	margin-right: 15px;
}
.mr-20 {
	margin-right: 20px;
}
.mr-25 {
	margin-right: 25px;
}
.mr-30 {
	margin-right: 30px;
}
.mr-35 {
	margin-right: 35px;
}
.mr-40 {
	margin-right: 40px;
}
.mr-45 {
	margin-right: 45px;
}
.mr-50 {
	margin-right: 50px;
}
.ml-0 {
	margin-left: 0px;
}
.ml-5 {
	margin-left: 5px;
}
.ml-10 {
	margin-left: 10px;
}
.ml-15 {
	margin-left: 15px;
}
.ml-20 {
	margin-left: 20px;
}
.ml-25 {
	margin-left: 25px;
}
.ml-30 {
	margin-left: 30px;
}
.ml-35 {
	margin-left: 35px;
}
.ml-40 {
	margin-left: 40px;
}
.ml-45 {
	margin-left: 45px;
}
.ml-50 {
	margin-left: 50px;
}
.mt-0 {
	margin-top: 0px;
}
.mt-5 {
	margin-top: 5px;
}
.mt-10 {
	margin-top: 10px;
}
.mt-15 {
	margin-top: 15px;
}
.mt-20 {
	margin-top: 20px;
}
.mt-25 {
	margin-top: 25px;
}
.mt-30 {
	margin-top: 30px;
}
.mt-35 {
	margin-top: 35px;
}
.mt-40 {
	margin-top: 40px;
}
.mt-45 {
	margin-top: 45px;
}
.mt-50 {
	margin-top: 50px;
}
.mb-0 {
	margin-bottom: 0px;
}
.mb-5 {
	margin-bottom: 5px;
}
.mb-10 {
	margin-bottom: 10px;
}
.mb-15 {
	margin-bottom: 15px;
}
.mb-20 {
	margin-bottom: 20px;
}
.mb-25 {
	margin-bottom: 25px;
}
.mb-30 {
	margin-bottom: 30px;
}
.mb-35 {
	margin-bottom: 35px;
}
.mb-40 {
	margin-bottom: 40px;
}
.mb-45 {
	margin-bottom: 45px;
}
.mb-50 {
	margin-bottom: 50px;
}

/* 
==========
| colors |
==========
*/

/* == colors == */
.c-primary { 
	color: #8892a0!important;
}
.c-secondary {
	color: #03071E!important;
}
.c-light {
	color: #ddd!important;
}
.c-s-light {
	color: #eaeaea!important;
}
.c-white {
	color: #fff!important;
}
/* == backgrounds == */
.b-primary {
	background: #457B9D;
}
.b-secondary {
	background: #E63946;
}
.b-light {
	background: #A8DADC;
}
.b-s-light {
	background: #F1FAEE;
}
.b-white {
	background: #fff;
}

/*
========
| font |
========
*/

/* == sizing == */
.font-bg {
	font-size: 25px!important;
}
.font-lg {
	font-size: 18px!important;
}
.font-md {
	font-size: 15px!important;
}
/* == styling == */
.font-bold {
	font-weight: 700;
}
.font-semi-bold {
	font-weight: 600;
}
.font-medium {
	font-weight: 500;
}
.font-normal {
	font-weight: 400;
}
.font-light {
	font-weight: 300;
}

/* 
=================
| text aligment |
=================
*/

.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.text-justify {
	text-align: justify;
}

/* 
===================
| flex directions |
===================
*/

.row {
	flex-direction: row;
}
.column {
	flex-direction: column;
}

/* 
========================
| flex items alignment |
========================
*/ 

.align-items-start {
	align-items: flex-start;
}
.align-items-center {
	align-items: center;
}
.align-items-baseline {
	align-items: baseline;
}
.align-items-stretch {
	align-items: stretch;
}
.align-items-end {
	align-items: flex-end;
}

/* 
==============================
| flex items justify content |
==============================
*/

.justify-content-start {
	justify-content: flex-start;
}
.justify-content-center {
	justify-content: center;
}
.justify-content-space-between {
	justify-content: space-between;
}
.justify-content-space-around {
	justify-content: space-around;
}
.justify-content-space-evenly {
	justify-content: space-evenly;
}
.justify-content-end {
	justify-content: flex-end;
}

/* 
=============================
| flex items self alignment |
=============================
*/

.align-self-auto {
	align-self: auto;
}
.align-self-center {
	align-self: center;
}
.align-self-start {
	align-self: start;
}
.align-self-end {
	align-self: end;
}
.align-self-self-start {
	align-self: self-start;
}
.align-self-self-end {
	align-self: self-end;
}
.align-self-flex-start {
	align-self: flex-start;
}
.align-self-flex-end {
	align-self: flex-end;
}
.align-self-baseline {
	align-self: baseline;
}
.align-self-first-baseline {
	align-self: first baseline;
}
.align-self-last-baseline {
	align-self: last baseline;
}
.align-self-stretch {
	align-self: stretch;
}

/* 
=============
| flex wrap |
=============
*/

.flex-wrap {
	flex-wrap: wrap;
}
.flex-nowrap {
	flex-wrap: nowrap;
}
.flex-reverse {
	flex-wrap: wrap-reverse;
}

/*
===========
| borders |
===========
*/

/* == global border width == */
.brd-1 {
	border-width: 1px;
}
.brd-2 {
	border-width: 2px;
}
.brd-3 {
	border-width: 3px;
}
.brd-4 {
	border-width: 4px;
}
.brd-5 {
	border-width: 5px;
}
/* == borders alignment == */
.brd-box {
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
}
.brd-bottom {
	border-bottom-style: solid;
}
.brd-top {
	border-top-style: solid;
}
.brd-left {
	border-left-style: solid;
}
.brd-right {
	border-right-style: solid;
}
/* == borders colors == */
.brd-c-light {
	border-color: #97a7ad;
}
.brd-c-s-light {
	border-color: #c0d2d8;
}

/*
=================
| border-radius |
=================
*/

.brd-rad-5 {
	border-radius: 5px;
}
.brd-rad-10 {
	border-radius: 10px;
}
.brd-rad-15 {
	border-radius: 15px;
}
.brd-rad-20 {
	border-radius: 20px;
}
.brd-rad-25 {
	border-radius: 25px;
}
.brd-rad-30 {
	border-radius: 30px;
}
.brd-rad-35 {
	border-radius: 35px;
}
.brd-rad-40 {
	border-radius: 40px;
}
.brd-rad-45 {
	border-radius: 45px;
}
.brd-rad-50 {
	border-radius: 50px;
}
.brd-rad-100 {
	border-radius: 100%;
}

/*
===================
| default classes |
===================
*/

.wrap {
	display: flex;
}
.container {
	width: 1200px;
	overflow: hidden;
}
.grow {
	flex-grow: 1;
}
.box-shadow {
	box-shadow: 0 1px 2px rgba(0,0,0,.25);
}

/*
===============
| positioning |
===============
*/

.absolute {
	position: absolute;
}
.fixed {
	position: fixed;
}
.relative {
	position: relative;
}

/* 
=============
| overflows	|
=============
*/ 

.ov-hidden {
	overflow: hidden;
}
.ov-visible {
	overflow: visible;
}
.ov-scroll {
	overflow: scroll;
}
.ov-x-scroll {
	overflow-x: scroll;
}
.ov-y-scroll {
	overflow-y: scroll;
}

/*
===================
| RWD breakpoints |
===================
*/

@media screen and (min-width: 1000px) and (max-width: 1200px) {
	.container {
		width: 1000px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
	.container {
		width: 768px;
	}
}

@media screen and (max-width: 768px) {
	.container {
		width: 90%;
	}
}