html {
	font-size: 10px;
}

@media only screen and (max-width: 1024px) {
	html {
		font-size: 9.375px;
	}
}

@media only screen and (max-width: 768px) {
	html {
		font-size: 10px;
	}
}

@media only screen and (max-width: 400px) {
	html {
		font-size: 9.375px;
	}
}

html,
body {
	height: 100%;
}

body {
	background: #141515;
	font-family: 'muli-regular', sans-serif;
	font-size: 1.6rem;
	line-height: 1.875;
	color: #767676;
	margin: 0;
	padding: 0;
}

/* -------------------------------------------------------------------
 * links - (_document-setup)
 * ------------------------------------------------------------------- */

a,
a:visited {
	color: #0087cc;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

a:hover,
a:focus {
	color: #39b54a;
}

/* ===================================================================
 *  03. typography & general theme styles - (_document-setup.scss)
 *
 * ------------------------------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6,
.h01,
.h02,
.h03,
.h04,
.h05,
.h06 {
	font-family: 'montserrat-regular', sans-serif;
	color: #151515;
	font-style: normal;
	text-rendering: optimizeLegibility;
	margin-bottom: 2.4rem;
}

h3,
.h03,
h4,
.h04 {
	margin-bottom: 1.5rem;
}
h5,
.h05,
h6,
.h06 {
	margin-bottom: 1.2rem;
}
h1,
.h01 {
	font-size: 3.1rem;
	line-height: 1.35;
	letter-spacing: -0.1rem;
}

@media only screen and (max-width: 600px) {
	h1,
	.h01 {
		font-size: 2.6rem;
		letter-spacing: -0.07rem;
	}
}

h2,
.h02 {
	font-size: 2.4rem;
	line-height: 1.25;
}
h3,
.h03 {
	font-size: 2rem;
	line-height: 1.5;
}
h4,
.h04 {
	font-size: 1.7rem;
	line-height: 1.76;
}
h5,
.h05 {
	font-size: 1.4rem;
	line-height: 1.7;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}
h6,
.h06 {
	font-size: 1.3rem;
	line-height: 1.85;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
}

p img {
	margin: 0;
}

p.lead {
	font-family: 'muli-light', sans-serif;
	font-size: 2.1rem;
	line-height: 1.857;
	color: #838383;
	margin-bottom: 3.6rem;
}

@media only screen and (max-width: 768px) {
	p.lead {
		font-size: 2rem;
	}
}

em,
i,
strong,
b {
	font-size: 1.6rem;
	line-height: 1.875;
	font-style: normal;
	font-weight: normal;
}
em,
i {
	font-family: 'muli-italic', sans-serif;
}
strong,
b {
	font-family: 'muli-bold', sans-serif;
}

small {
	font-size: 1.1rem;
	line-height: inherit;
}

blockquote {
	margin: 3rem 0;
	padding-left: 5rem;
	position: relative;
}

blockquote:before {
	content: '\201C';
	font-size: 10rem;
	line-height: 0px;
	margin: 0;
	color: rgba(0, 0, 0, 0.3);
	font-family: arial, sans-serif;
	position: absolute;
	top: 3.6rem;
	left: 0;
}

blockquote p {
	font-family: 'muli-light', sans-serif;
	padding: 0;
	font-size: 1.9rem;
	line-height: 1.895;
}

blockquote cite {
	display: block;
	font-size: 1.3rem;
	font-style: normal;
	line-height: 1.615;
}

blockquote cite:before {
	content: '\2014 \0020';
}

blockquote cite a,
blockquote cite a:visited {
	color: #838383;
	border: none;
}

abbr {
	font-family: 'muli-bold', sans-serif;
	font-variant: small-caps;
	text-transform: lowercase;
	letter-spacing: 0.05rem;
	color: #838383;
}

var,
kbd,
samp,
code,
pre {
	font-family: Consolas, 'Andale Mono', Courier, 'Courier New', monospace;
}

pre {
	padding: 2.4rem 3rem 3rem;
	background: #f1f1f1;
}

code {
	font-size: 1.4rem;
	margin: 0 0.2rem;
	padding: 0.3rem 0.6rem;
	white-space: nowrap;
	background: #f1f1f1;
	border: 1px solid #e1e1e1;
	border-radius: 3px;
}

pre > code {
	display: block;
	white-space: pre;
	line-height: 2;
	padding: 0;
	margin: 0;
}

pre.prettyprint > code {
	border: none;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
	text-decoration: none;
}

mark {
	background: #fff49b;
	color: #000;
}

hr {
	border: solid rgba(0, 0, 0, 0.1);
	border-width: 1px 0 0;
	clear: both;
	margin: 2.4rem 0 1.5rem;
	height: 0;
}

/* -------------------------------------------------------------------
 * Lists - (_document-setup.scss)
 * ------------------------------------------------------------------- */

ol {
	list-style: decimal;
}

ul {
	list-style: disc;
}

li {
	display: list-item;
}

ol,
ul {
	margin-left: 1.7rem;
}

ul li {
	padding-left: 0.4rem;
}

ul ul,
ul ol,
ol ol,
ol ul {
	margin: 0.6rem 0 0.6rem 1.7rem;
}

ul.disc li {
	display: list-item;
	list-style: none;
	padding: 0 0 0 0.8rem;
	position: relative;
}

ul.disc li::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #39b54a;
	position: absolute;
	left: -17px;
	top: 11px;
	vertical-align: middle;
}

dt {
	margin: 0;
	color: #39b54a;
}

dd {
	margin: 0 0 0 2rem;
}

/* -------------------------------------------------------------------
 * Spacing - (_document-setup)
 * ------------------------------------------------------------------- */

button,
.button {
	margin-bottom: 1.2rem;
}

fieldset {
	margin-bottom: 1.5rem;
}

input,
textarea,
select,
pre,
blockquote,
figure,
table,
p,
ul,
ol,
dl,
form,
.fluid-video-wrapper,
.ss-custom-select {
	margin-bottom: 3rem;
}

/* -------------------------------------------------------------------
 * floated image - (_document-setup)
 * ------------------------------------------------------------------- */

img.pull-right {
	margin: 1.5rem 0 0 3rem;
}

img.pull-left {
	margin: 1.5rem 3rem 0 0;
}

/* -------------------------------------------------------------------
 * block grids paddings
 * ------------------------------------------------------------------- */

.bgrid {
	padding: 0 20px;
}

@media only screen and (max-width: 1024px) {
	.bgrid {
		padding: 0 18px;
	}
}

@media only screen and (max-width: 768px) {
	.bgrid {
		padding: 0 15px;
	}
}

@media only screen and (max-width: 600px) {
	.bgrid {
		padding: 0 10px;
	}
}

@media only screen and (max-width: 400px) {
	.bgrid {
		padding: 0;
	}
}

/* -------------------------------------------------------------------
 * tables - (_document-setup.scss)
 * ------------------------------------------------------------------- */

table {
	border-width: 0;
	width: 100%;
	max-width: 100%;
	font-family: 'muli-regular', sans-serif;
}

th,
td {
	padding: 1.5rem 3rem;
	text-align: left;
	border-bottom: 1px solid #e8e8e8;
}

th {
	color: #151515;
	font-family: 'montserrat-bold', sans-serif;
}

td {
	line-height: 1.5;
}

th:first-child,
td:first-child {
	padding-left: 0;
}

th:last-child,
td:last-child {
	padding-right: 0;
}

.table-responsive {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* -------------------------------------------------------------------
 * pace.js styles - center simple  - (_document-setup.scss)
 * ------------------------------------------------------------------- */

.pace {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	z-index: 2000;
	position: fixed;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 5px;
	width: 150px;
	background: #dedede;
	overflow: hidden;
}

.pace .pace-progress {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	max-width: 150px;
	position: fixed;
	z-index: 2000;
	display: block;
	position: absolute;
	top: 0;
	right: 100%;
	height: 100%;
	width: 100%;
	background: #39b54a;
}

.pace.pace-inactive {
	display: none;
}

.oldie .pace {
	display: none;
}

/* ===================================================================
 *  06. buttons - (_button-essentials.scss)
 *
 * ------------------------------------------------------------------- */

.button,
button,
input[type='submit'],
input[type='reset'],
input[type='button'] {
	display: inline-block;
	font-family: 'montserrat-regular', sans-serif;
	font-size: 1.5rem;
	height: 5.4rem;
	line-height: calc(5.4rem - 0.6rem);
	padding: 0 3rem;
	margin: 0 0.3rem 1.2rem 0;
	color: #222222;
	text-decoration: none;
	cursor: pointer;
	text-align: center;
	white-space: nowrap;
	border-radius: 0.5rem;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	background-color: #c5c5c5;
	border: 0.3rem solid #c5c5c5;
}

.button:hover,
button:hover,
input[type='submit']:hover,
input[type='reset']:hover,
input[type='button']:hover,
.button:focus,
button:focus,
input[type='submit']:focus,
input[type='reset']:focus,
input[type='button']:focus {
	background-color: #b8b8b8;
	border-color: #b8b8b8;
	color: #000000;
	outline: 0;
}

.button.button-primary,
button.button-primary,
input[type='submit'].button-primary,
input[type='reset'].button-primary,
input[type='button'].button-primary {
	background-color: #39b54a;
	border-color: #39b54a;
	color: #ffffff;
}

.button.button-primary:hover,
button.button-primary:hover,
input[type='submit'].button-primary:hover,
input[type='reset'].button-primary:hover,
input[type='button'].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type='submit'].button-primary:focus,
input[type='reset'].button-primary:focus,
input[type='button'].button-primary:focus {
	background: #309a3f;
	border-color: #309a3f;
}

button.full-width,
.button.full-width {
	width: 100%;
	margin-right: 0;
}

button.medium,
.button.medium {
	height: 5.7rem !important;
	line-height: calc(5.7rem - 0.6rem) !important;
}

button.large,
.button.large {
	height: 6rem !important;
	line-height: calc(6rem - 0.6rem) !important;
}

button.stroke,
.button.stroke {
	background: transparent !important;
	color: #a5a5a5 !important;
}

button.stroke:hover,
.button.stroke:hover {
	border: 0.3rem solid #39b54a;
	color: #39b54a;
}

button.pill,
.button.pill {
	padding-left: 3rem !important;
	padding-right: 3rem !important;
	border-radius: 1000px;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/* ===================================================================
 *  08. common and reusable theme styles
 *
 * ------------------------------------------------------------------- */

h1.intro-header {
	font-family: 'montserrat-regular', sans-serif;
	font-size: 3.4rem;
	line-height: 1.324;
	color: #151515;
	position: relative;
	padding-bottom: 3.6rem;
}

h1.intro-header::before {
	display: block;
	content: '';
	height: 2px;
	width: 70px;
	background-color: #39b54a;
	position: absolute;
	left: 0;
	bottom: 0;
}

.wide {
	max-width: 1300px;
}

.narrow {
	max-width: 800px;
}

/* -------------------------------------------------------------------
 * responsive:
 * common styles
 * ------------------------------------------------------------------- */

@media only screen and (max-width: 768px) {
	h1.intro-header {
		font-size: 3.1rem;
	}
}

@media only screen and (max-width: 600px) {
	h1.intro-header {
		font-size: 2.6rem;
	}
}

/* ===================================================================
 *  10. home - (_site-layout.scss)
 *
 * ------------------------------------------------------------------- */

#home {
	width: 100%;
	height: 786px;
	min-height: 786px;
	background-color: transparent;
	position: relative;
	display: table;
	background-image: url('/images/landing_bg.jpg') !important;
}

#home .shadow-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	background: -moz-linear-gradient(left, black 0%, black 20%, transparent 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(left, black 0%, black 20%, transparent 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, black 0%, black 20%, transparent 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000', GradientType=1);
	/* IE6-9 */
}

#home .overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	background-color: #000000;
}

.no-js #home {
	background: #151515;
}

.home-content {
	display: table-cell;
	width: 100%;
	height: 100%;
	vertical-align: bottom;
}

.home-content .contents {
	position: relative;
}

.home-content-left {
	padding: 15rem 0 12rem 40px;
	position: relative;
	width: 55%;
}

.home-content-left img {
	padding-bottom: 3em;
	width: 550px;
}

.home-content-left h3 {
	color: rgba(255, 255, 255, 0.8);
	font-size: 1.6rem;
	line-height: 1.5;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
	margin-bottom: 2.4rem;
}

.home-content-left h1,
.home-content-left h2 {
	font-family: 'montserrat-regular', sans-serif;
	letter-spacing: -0.05rem;
	line-height: 1.269;
	color: #ffffff;
	margin-bottom: 9rem;
}

.home-content-left h1 {
	font-size: 2.8rem;
}

.home-content-left h2 {
	font-size: 2.2rem;
}

.home-content-left .button.stroke {
	color: #ffffff !important;
	border-color: #ffffff;
	margin: 0 0.6rem 1.2rem;
	padding: 0 2.2rem;
	min-width: 188px;
}

.home-content-left .button.stroke span[class*='icon'] {
	margin-right: 5px;
	position: relative;
	top: 2px;
}

.home-content-left .button.stroke:hover,
.home-content-left .button.stroke:focus {
	background-color: white !important;
	color: #000000 !important;
}

.home-image-right {
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	padding-top: 21rem;
	z-index: 500;
	width: 50%;
	text-align: right;
}

.home-image-right img {
	vertical-align: bottom;
	width: 75%;
}

/* home social-list */

.home-social-list {
	position: absolute;
	right: 42px;
	top: 50%;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 2.2rem;
	line-height: 1.75;
	text-align: center;
	-webkit-transform: translateY(-55%);
	-ms-transform: translateY(-55%);
	transform: translateY(-55%);
}

.home-social-list::before {
	display: block;
	content: '';
	width: 2px;
	height: 42px;
	background-color: rgba(255, 255, 255, 0.15);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 12px;
}

.home-social-list li {
	padding-left: 0;
}

.home-social-list li a,
.home-social-list li a:visited {
	color: #ffffff;
}

.home-social-list li a:hover,
.home-social-list li a:focus,
.home-social-list li a:active {
	color: #44c455;
}

/* scroll down */

.home-scrolldown {
	position: absolute;
	bottom: 0;
	right: 0;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	transform-origin: right top;
	float: right;
}

.home-scrolldown i {
	padding-left: 9px;
}

.home-scrolldown a:hover,
.home-scrolldown a:focus {
	color: #44c455 !important;
}

html[data-useragent*='MSIE 10.0'] .home-scrolldown,
.oldie .home-scrolldown {
	display: none;
}

.scroll-icon {
	display: inline-block;
	font-family: 'montserrat-medium', sans-serif;
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 0.3rem;
	color: #ffffff !important;
	background: transparent;
	position: relative;
	top: 36px;
	right: 42px;
	-webkit-animation: animate-it 3s ease infinite;
	animation: animate-it 3s ease infinite;
}

.scroll-icon i {
	font-size: 2.4rem;
	position: relative;
	bottom: -6px;
}

/* vertical animation */

@-webkit-keyframes animate-it {
	0%,
	60%,
	80%,
	100% {
		-webkit-transform: translateX(0);
	}
	0%,
	60%,
	80%,
	100% {
		transform: translateX(0);
	}
	20% {
		-webkit-transform: translateX(-5px);
	}
	20% {
		transform: translateX(-5px);
	}
	40% {
		-webkit-transform: translateX(20px);
	}
	40% {
		transform: translateX(20px);
	}
}

@keyframes animate-it {
	0%,
	60%,
	80%,
	100% {
		-webkit-transform: translateX(0);
	}
	0%,
	60%,
	80%,
	100% {
		transform: translateX(0);
	}
	20% {
		-webkit-transform: translateX(-5px);
	}
	20% {
		transform: translateX(-5px);
	}
	40% {
		-webkit-transform: translateX(20px);
	}
	40% {
		transform: translateX(20px);
	}
}

/* -------------------------------------------------------------------
 * responsive:
 * home section
 * ------------------------------------------------------------------- */

@media only screen and (max-width: 1300px) {
	.home-image-right {
		right: 5rem;
	}
}

@media only screen and (max-width: 1200px) {
	#home {
		overflow: hidden;
	}
	.home-content {
		vertical-align: middle;
	}
	.home-content-left {
		padding: 18rem 0 12rem 40px;
	}
	.home-content-left h3 {
		font-size: 1.5rem;
	}
	.home-content-left h1 {
		font-size: 4.8rem;
	}
	.home-image-right {
		padding-top: 18rem;
	}
	.home-image-right img {
		vertical-align: top;
		width: 70%;
	}
}

@media only screen and (max-width: 1100px) {
	.home-content-left h1 {
		font-size: 4.6rem;
	}
}

@media only screen and (max-width: 1024px) {
	.home-content-left {
		width: 60%;
		padding: 18rem 6rem 12rem 4rem;
	}
	.home-content-left h3 {
		font-size: 1.5rem;
	}
	.home-content-left h1 {
		font-size: 4.2rem;
	}
	.home-image-right {
		width: 40%;
		padding-top: 120px;
	}
	.home-image-right img {
		vertical-align: top;
		width: 100%;
	}
}

@media only screen and (max-width: 900px) {
	#home {
		height: auto;
		min-height: 840px;
	}
	#home,
	.home-content {
		display: block;
		text-align: center;
	}
	.home-content-left {
		width: 94%;
		position: static;
		padding: 15rem 6rem 366px;
		margin: 0 auto;
	}
	.home-content-left h1 {
		margin-bottom: 3.6rem;
	}
	.home-image-right {
		width: 400px;
		right: auto;
		top: auto;
		left: 50%;
		bottom: 0;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		padding: 0;
		margin-bottom: -378px;
	}
}

@media only screen and (max-width: 768px) {
	#home {
		min-height: auto;
	}
	.home-content-left h3 {
		font-size: 1.4rem;
	}
	.home-content-left h1 {
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 600px) {
	.home-content-left {
		padding: 12rem 6rem 366px;
	}
	.home-content-left h1 {
		font-size: 3.3rem;
	}
	.home-content-left .button.stroke {
		width: 100%;
		min-width: 0;
		max-width: 280px;
	}
	.home-social-list {
		font-size: 2rem;
		right: 30px;
	}
	.scroll-icon {
		top: 21px;
	}
}

@media only screen and (max-width: 500px) {
	.home-social-list,
	.home-scrolldown {
		display: none;
	}
	.home-content-left {
		padding: 12rem 2.5rem 366px;
		width: 100%;
	}
	.home-content-left h1 {
		font-size: 3rem;
	}
}

@media only screen and (max-width: 400px) {
	.home-content-left {
		padding: 12rem 0 300px;
	}
	.home-content-left .button.stroke {
		margin: 0 0 1.2rem 0;
	}
	.home-image-right {
		width: 320px;
		margin-bottom: -298px;
	}
}
/* ===================================================================
 *  15. footer styles - (_site-layout.scss)
 *
 * ------------------------------------------------------------------- */

footer {
	padding-top: 9rem;
	padding-bottom: 4.2rem;
	font-size: 1.5rem;
	line-height: 2.7rem;
	color: rgba(255, 255, 255, 0.25);
}

footer a,
footer a:visited {
	color: #39b54a;
}

footer a:hover,
footer a:focus {
	color: white;
}

footer h4 {
	color: white;
	font-size: 1.5rem;
	padding-bottom: 2.4rem;
	margin-bottom: 2.4rem;
	position: relative;
}

footer h4::before {
	content: '';
	display: block;
	width: 120px;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.05);
	position: absolute;
	left: 0;
	bottom: 0;
}

footer ul {
	list-style: none;
	margin: 0;
}

footer ul li {
	padding-left: 0;
}

footer ul a,
footer ul a:visited {
	color: rgba(255, 255, 255, 0.25);
}

.footer-social-list {
	font-size: 1.8rem;
	margin-top: 10px;
	margin-bottom: 3rem;
}

.footer-subscribe {
	display: flex;
	flex-direction: column;
	align-content: flex-end;
	align-items: flex-end;
}

.footer-social-list li {
	display: inline-block;
	margin-right: 8px;
}
.social {
	font-size: 18pt;
}
.footer-social-list li:last-child {
	margin-right: 0;
}

.footer-site-links .list-links {
	margin-bottom: 3rem;
}

.footer-bottom {
	margin-top: 6.6rem;
	text-align: center;
}

.footer-bottom .copyright span {
	display: inline-block;
}

.footer-bottom .copyright span::after {
	content: '|';
	display: inline-block;
	padding: 0 1rem 0 1.2rem;
	color: rgba(255, 255, 255, 0.1);
}

.footer-bottom .copyright span:last-child::after {
	display: none;
}

/* -------------------------------------------------------------------
 * go to top
 * ------------------------------------------------------------------- */

#go-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 600;
	display: none;
}

#go-top a,
#go-top a:visited {
	text-decoration: none;
	border: 0 none;
	display: block;
	height: 60px;
	width: 60px;
	line-height: 60px;
	text-align: center;
	background: black;
	color: rgba(255, 255, 255, 0.5);
	text-align: center;
	text-transform: uppercase;
	border-radius: 5px;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#go-top a i,
#go-top a:visited i {
	font-size: 18px;
	line-height: inherit;
}

#go-top a:hover,
#go-top a:focus {
	color: #ffffff;
}

/* -------------------------------------------------------------------
 * responsive:
 * footer
 * ------------------------------------------------------------------- */

@media only screen and (max-width: 1024px) {
	.footer-main > .row {
		max-width: 800px;
	}
	.footer-info,
	.footer-contact,
	.footer-site-links {
		margin-bottom: 1.2rem;
	}
	.footer-subscribe {
		clear: both;
	}
}

@media only screen and (max-width: 768px) {
	.footer-main > .row {
		max-width: 600px;
	}
	.footer-logo {
		margin-left: auto;
		margin-right: auto;
	}
	.footer-info {
		text-align: center;
	}
	#go-top {
		bottom: 0;
		right: 0;
	}
	#go-top a,
	#go-top a:visited {
		border-radius: 5px 0 0 0;
	}
}

@media only screen and (max-width: 600px) {
	.footer-main .row {
		max-width: 480px;
	}
	.footer-main h4 {
		padding-bottom: 0;
		margin-bottom: 2.4rem;
	}
	.footer-main h4::before {
		display: none;
	}
	.footer-main ul.list-links {
		width: 80%;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.footer-main ul.list-links li a {
		display: block;
		border-bottom: 1px solid rgba(255, 255, 255, 0.03);
		padding: 0.6rem 0;
	}
	.footer-main ul.list-links li:first-child a {
		border-top: 1px solid rgba(255, 255, 255, 0.03);
	}
	.footer-contact,
	.footer-site-links,
	.footer-subscribe {
		text-align: center;
	}
	.footer-bottom {
		padding-bottom: 0.6rem;
	}
	.footer-bottom .copyright span {
		display: block;
	}
	.footer-bottom .copyright span::after {
		display: none;
	}
}

.row {
	width: 94%;
	max-width: 1170px;
	margin: 0 auto;
}

.row:after {
	content: '';
	display: table;
	clear: both;
}

.row .row {
	width: auto;
	max-width: none;
	margin-left: -20px;
	margin-right: -20px;
}

[class*='col-'],
.bgrid {
	float: left;
}

[class*='col-'] + [class*='col-'].end {
	float: right;
}

[class*='col-'] {
	padding: 0 20px;
}

.col-one {
	width: 8.33333%;
}

.col-two,
.col-1-6 {
	width: 16.66667%;
}

.col-three,
.col-1-4 {
	width: 25%;
}

.col-four,
.col-1-3 {
	width: 33.33333%;
}

.col-five {
	width: 41.66667%;
}

.col-six,
.col-1-2 {
	width: 50%;
}

.col-seven {
	width: 58.33333%;
}

.col-eight,
.col-2-3 {
	width: 66.66667%;
}

.col-nine,
.col-3-4 {
	width: 75%;
}

.col-ten,
.col-5-6 {
	width: 83.33333%;
}

.col-eleven {
	width: 91.66667%;
}

.col-twelve,
.col-full {
	width: 100%;
}

.group:after {
	content: '';
	display: table;
	clear: both;
}

/* Misc Helper Styles */

.is-hidden {
	display: none;
}

.is-invisible {
	visibility: hidden;
}

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

.overflow-hidden {
	overflow: hidden;
}

.remove-bottom {
	margin-bottom: 0;
}

.half-bottom {
	margin-bottom: 1.5rem !important;
}

.add-bottom {
	margin-bottom: 3rem !important;
}

.no-border {
	border: none;
}

.full-width {
	width: 100%;
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.pull-left {
	float: left;
}

.pull-right {
	float: right;
}

.pull-down {
}

.align-center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
html {
	font-family: sans-serif;
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

footer,
section {
	display: block;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

main {
	display: block;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}

a:active,
a:hover {
	outline-width: 0;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b,
strong {
	font-weight: inherit;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

dfn {
	font-style: italic;
}

mark {
	background-color: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

audio,
video {
	display: inline-block;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

img {
	border-style: none;
}

svg:not(:root) {
	overflow: hidden;
}

button,
input,
optgroup,
select,
textarea {
	font-family: sans-serif;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html [type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	display: inline-block;
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type='checkbox'],
[type='radio'] {
	box-sizing: border-box;
	padding: 0;
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
	height: auto;
}

[type='search'] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details,
menu {
	display: block;
}

summary {
	display: list-item;
}

canvas {
	display: inline-block;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

/* ===================================================================
 *  02. basic/base setup styles - (_basic.scss)
 *
 * ------------------------------------------------------------------- */

html {
	font-size: 62.5%;
	box-sizing: border-box;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	font-weight: normal;
	line-height: 1;
	text-rendering: optimizeLegibility;
	word-wrap: break-word;
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: none;
}

body,
input,
button {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

/* -------------------------------------------------------------------
 * Media - (_basic.scss)
 * ------------------------------------------------------------------- */

img,
video {
	max-width: 100%;
	height: auto;
}

/* -------------------------------------------------------------------
 * Typography resets - (_basic.scss)
 * ------------------------------------------------------------------- */

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	-webkit-font-variant-ligatures: common-ligatures;
	-moz-font-variant-ligatures: common-ligatures;
	font-variant-ligatures: common-ligatures;
	text-rendering: optimizeLegibility;
}

em,
i {
	font-style: italic;
	line-height: inherit;
}

strong,
b {
	font-weight: bold;
	line-height: inherit;
}

small {
	font-size: 60%;
	line-height: inherit;
}

ol,
ul {
	list-style: none;
}

li {
	display: block;
}

/* -------------------------------------------------------------------
 * links - (_basic.scss)
 * ------------------------------------------------------------------- */

a {
	text-decoration: none;
	line-height: inherit;
}

a img {
	border: none;
}

/* -------------------------------------------------------------------
 * modal
 * ------------------------------------------------------------------- */
/* Modal container, initially hidden below the viewport */
.modal {
	position: fixed;
	left: 0;
	bottom: -100%; /* Hidden position */
	width: 100%;
	height: 100%; /* Full height to cover the screen */
	background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
	display: flex;
	justify-content: center;
	align-items: flex-end; /* Align content to the bottom */
	transition: bottom 0.5s ease-in-out;
	z-index: 1000; /* Ensure it appears above other elements */
}

/* Modal content box */
.modal-content {
	background-color: #fff;
	width: 90%;
	max-width: 800px;
	margin-bottom: 20px;
	border-radius: 8px;
	text-align: center;
	margin-bottom: 100px;
}

.modal-header {
	margin: 0;
	height: 75px;
	font-size: 2.2rem;
	font-weight: 700;
	color: #274856;
	padding: 0;
	background-color: rgb(245, 245, 245);
	border-bottom: 1px solid #e9ecef;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}

.modal-title {
	padding: 20px;
}
.modal-close {
	cursor: pointer;
	font-size: 2.5rem;
	color: darkgrey;
	padding: 20px;
}

.modal-body {
	height: 650px;
	overflow-y: auto;
	padding: 15px;
}
.modal-footer {
	height: 75px;
	border-top: 1px solid #e9ecef;
	background-color: rgb(245, 245, 245);
	width: 100%;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
}

.modal-button {
	border-radius: 10px;
	height: 40px;
	margin-top: 18px;
	margin-right: 25px;
	float: right;
	cursor: pointer;
}

.modal-submit {
	padding: 10px;
	background: #274856;
	border: 2px solid #274856;
	color: lightgray;
	display: inline-block;
	width: 100%;
	height: 100%;
	border-radius: 10px;
}

/* Show the modal by changing bottom to 0 */
.modal.show {
	bottom: 0;
}
