/* Description: Master CSS file */

/*****************************************
Table Of Contents:
- General Styles
- Navigation
- Header
- Introduction
- Features
- Details 1
- Details 2
- Details 3
- Statistics
- Conclusion
- Footer
- Copyright
- Back To Top Button
- Media Queries
******************************************/

/*****************************************
Colors:
- Backgrounds - light gray #f1f9fc
- Buttons, icons - purple #594cda
- Buttons, icons - red #eb427e
- Headings text - black #252c38
- Body text - dark gray #6b747b
******************************************/


/**************************/
/*     General Styles     */
/**************************/
body,
html {
    width: 100%;
	height: 100%;
}

body, p {
	color: #6b747b; 
	font: 400 1rem/1.625rem "Open Sans", sans-serif;
}

h1 {
	color: #252c38;
	font-weight: 700;
	font-size: 2.5rem;
	line-height: 3.125rem;
	letter-spacing: -0.5px;
}

h2 {
	color: #252c38;
	font-weight: 700;
	font-size: 2.125rem;
	line-height: 2.625rem;
	letter-spacing: -0.4px;
}

h4 {
	color: #252c38;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 2rem;
	letter-spacing: -0.2px;
}

h5 {
	color: #252c38;
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.625rem;
}

.h1-large {
	font-size: 2.875rem;
	line-height: 3.5rem;
}

.p-large {
	font-size: 1.125rem;
	line-height: 1.75rem;
}

.p-small {
	font-size: 0.875rem;
	line-height: 1.5rem;
}

.li-space-lg li {
	margin-bottom: 0.5rem;
}

a {
	color: #6b747b;
	text-decoration: underline;
}

a:hover {
	color: #6b747b;
	text-decoration: underline;
}

.purple {
	color: #594cda;
}

.bg-gray {
	background-color: #f1f9fc;
}

.btn-solid-lg {
	display: inline-block;
	padding: 1.625rem 1.75rem 1.625rem 1.75rem;
	border: 1px solid #594cda;
	border-radius: 32px;
	background-color: #594cda;
	color: #ffffff;
	font-weight: 600;
	font-size: 1.28rem;
	line-height: 0;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-solid-lg:hover {
	border: 1px solid #594cda;
	background-color: transparent;
	color: #594cda; /* needs to stay here because of the color property of a tag */
	text-decoration: none;
}

.btn-solid-lg.secondary {
	border: 1px solid #eb427e;
	background-color: #eb427e;
}

.btn-solid-lg.secondary:hover {
	border: 1px solid #eb427e;
	background: transparent;
	color: #eb427e; /* needs to stay here because of the color property of a tag */
}

.form-group {
	position: relative;
	margin-bottom: 1.25rem;
}

.form-control-submit-button {
	display: inline-block;
	width: 100%;
	height: 3.25rem;
	border: 1px solid #594cda;
	border-radius: 32px;
	background-color: #594cda;
	color: #252c38;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 0;
	cursor: pointer;
	transition: all 0.2s;
}

.form-control-submit-button:hover {
	border: 1px solid #252c38;
	background-color: transparent;
	color: #252c38;
}

/* Fade-move Animation For Details Lightbox - Magnific Popup */
/* at start */

/* animate in */

/* animate out */

/* dark overlay, start state */

/* animate in */
/* animate out */
/* end of fade-move animation for details lightbox - magnific popup */


/**********************/
/*     Navigation     */
/**********************/
.navbar {
	background-color: #f1f9fc;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 0.875rem;
}

.navbar .navbar-brand {
	padding-top: 0.125rem;
	padding-bottom: 0.125rem;
}

.navbar .logo-image img {
    width: 240px;
	height: 40px;
}

.offcanvas-collapse {
	position: fixed;
	top: 3.25rem; /* adjusts the height between the top of the page and the offcanvas menu */
	bottom: 0;
	left: 100%;
	width: 100%;
	padding-right: 1rem;
	padding-left: 1rem;
	overflow-y: auto;
	visibility: hidden;
	background-color: #f1f9fc;
	transition: visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out;
	transition: transform .3s ease-in-out, visibility .3s ease-in-out, -webkit-transform .3s ease-in-out;
}

.navbar .navbar-nav {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.navbar .nav-item .nav-link {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	color: #6b747b;
	text-decoration: none;
	transition: all 0.2s ease;
}

.navbar .nav-item .nav-link:hover {
	color: #ff6e84;
}

/* Dropdown Menu */
/* end of dropdown menu */

.navbar .navbar-toggler {
	padding: 0;
	border: none;
	font-size: 1.25rem;
}


/*****************/
/*    Header     */
/*****************/
.header {
	padding-top: 7rem;
	padding-bottom: 7rem;
	background: linear-gradient(rgba(197, 234, 249, 1), rgba(255, 255, 255, 1));
	text-align: center;
}

.header .text-container {
	margin-bottom: 4rem;
}

.header .h1-large {
	margin-bottom: 1.25rem;
}

.header .p-large {
	margin-bottom: 2rem;
}

.header .btn-solid-lg {
	margin-right: 0.25rem;
	margin-bottom: 1.25rem;
	margin-left: 0.25rem;
}


/************************/
/*     Introduction     */
/************************/
.basic-1 {
	padding-top: 1rem;
	padding-bottom: 3.5rem;
	text-align: center;
}

.basic-1 p {
	color: #252c38;
	font-size: 1.875rem;
	line-height: 2.625rem;
}


/********************/
/*     Features     */
/********************/
.cards-1 {
	padding-top: 4rem;
	padding-bottom: 1.5rem;
	text-align: center;
}

.cards-1 .card {
	margin-bottom: 3.5rem;
	padding: 3.125rem 1rem 2.125rem 1rem;
	border: none;
	border-radius: 16px;
	background-color: #f1f9fc;
}

.cards-1 .card-image {
	margin-bottom: 1.5rem;
}

.cards-1 .card-image img {
	width: 70px;
	height: 70px;
	margin-right: auto;
	margin-left: auto;
}

.cards-1 .card-body {
	padding: 0;
}

.cards-1 .card-title {
	margin-bottom: 0.375rem;
}


/*********************/
/*     Details 1     */
/*********************/
.basic-2 {
	padding-top: 3rem;
	padding-bottom: 4.5rem;
}

.basic-2 h2 {
	margin-bottom: 1.5rem;
}

.basic-2 .text-container {
	margin-bottom: 4rem;
}


/*********************/
/*     Details 2     */
/*********************/


/*********************/
/*     Details 3     */
/*********************/


/**********************/
/*     Statistics     */
/**********************/
.counter {
	padding-top: 2rem;
	padding-bottom: 4.5rem;
	text-align: center;
}

.counter #counter {
	margin-bottom: 0.75rem;
}

.counter #counter .cell {
	display: inline-block;
	width: 124px;
	margin-right: 1.5rem;
	margin-bottom: 3.5rem;
	margin-left: 1.5rem;
	vertical-align: top;
}

.counter #counter .counter-value {
	color: #252c38;
	font-weight: 700;
	font-size: 3.25rem;
	line-height: 3.75rem;
	vertical-align: middle;
}

.counter #counter .counter-info {
	margin-bottom: 0;
	font-size: 0.875rem;
	vertical-align: middle;
}



/**********************/
/*     Conclusion     */
/**********************/
.basic-5 {
	padding-top: 4.5rem;
	padding-bottom: 7.5rem;
	background: url('../images/conclusion-background.jpg') center center no-repeat;
	background-size: cover;
	text-align: center;
}

.basic-5 .image-container {
	margin-bottom: 4rem;
}

.basic-5 p {
	margin-bottom: 2.25rem;
	color: #252c38;
	font-size: 1.875rem;
	line-height: 2.625rem;
}

.basic-5 .btn-solid-lg {
	margin-right: 0.25rem;
	margin-bottom: 1.25rem;
	margin-left: 0.25rem;
}


/******************/
/*     Footer     */
/******************/
.footer {
	padding-top: 6rem;
	padding-bottom: 3rem;
	background: linear-gradient(rgba(255, 255, 255, 1), rgba(197, 234, 249, 1));
	text-align: center;
}

.footer a {
	text-decoration: none;
}

.footer h4 {
	margin-bottom: 1.875rem;
}


/*********************/
/*     Copyright     */
/*********************/
.copyright {
	padding-top: 1.5rem;
	background-color: #c5eaf9;
	text-align: center;
}

.copyright a {
	text-decoration: none;
}


/******************************/
/*     Back To Top Button     */
/******************************/


/***********************/
/*     Extra Pages     */
/***********************/
.ex-header {
	padding-top: 8.5rem;
	padding-bottom: 4rem;
	background-color: #f1f9fc;
}


/*************************/
/*     Media Queries     */
/*************************/	
/* Min-width 768px */
@media (min-width: 768px) {

	/* Header */
	.header {
		padding-top: 9rem;
	}
	/* end of header */


	/* Extra Pages */
	/* end of extra pages */
}
/* end of min-width 768px */


/* Min-width 992px */
@media (min-width: 992px) {
	
	/* General Styles */
	/* end of general styles */


	/* Navigation */
	.navbar {
		padding-top: 1.75rem;
		background-color: transparent;
		border-bottom: none;
		transition: all 0.2s;
	}

	.offcanvas-collapse {
		position: static;
		top: auto;
		bottom: auto;
		left: auto;
		width: auto;
		padding-right: 0;
		padding-left: 0;
		background-color: transparent;
		overflow-y: visible;
		visibility: visible;
	}

	.navbar .navbar-nav {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.navbar .nav-item .nav-link {
		padding-right: 0.625rem;
		padding-left: 0.625rem;
	}
	/* end of navigation */


	/* Header */
	.header {
		text-align: left;
	}

	.header .text-container {
		margin-top: 8rem;
	}

	.header .btn-solid-lg {
		margin-right: 0.5rem;
		margin-left: 0;
	}
	/* end of header */


	/* Introduction */
	.basic-1 p {
		width: 930px;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of introduction */


	/* Details 1 */
	.basic-2 {
		padding-top: 4rem;
	}

	.basic-2 .text-container {
		margin-bottom: 0;
	}
	/* end of details 1 */


	/* Details 2 */
	/* end of details 2 */


	/* Details Lightbox */
	/* end of details lightbox */


	/* Details 3 */
	/* end of details 3 */


	/* Features */
	.cards-1 .card {
		display: inline-block;
		width: 296px;
		vertical-align: top;
	}

	.cards-1 .card:nth-of-type(3n+2) {
		margin-right: 1rem;
		margin-left: 1rem;
	}
	/* end of features */


	/* Statistics */
	.counter {
		padding-top: 5rem;
	}
	/* end of statistics */




	/* Conclusion */
	.basic-5 {
		text-align: left;
	}

	.basic-5 .image-container {
		margin-bottom: 0;
	}

	.basic-5 .text-container {
		margin-top: 6rem;
	}

	.basic-5 .btn-solid-lg {
		margin-right: 0.5rem;
		margin-left: 0;
	}
	/* end of conclusion */


	/* Footer */
	.footer h4 {
		width: 45rem;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of footer */


	/* Copyright */
	.copyright {
		text-align: left;
	}

	.copyright .list-unstyled li {
		display: inline-block;
		margin-right: 1rem;
	}

	.copyright .statement {
		text-align: right;
	}
	/* end of copyright */


	/* Extra Pages */
	/* end of extra pages */
}
/* end of min-width 992px */


/* Min-width 1200px */
@media (min-width: 1200px) {

	/* General Styles */
	.h1-large {
		font-size: 3.125rem;
		line-height: 3.75rem;
	}
	/* end of general styles */


	/* Header */
	.header {
		padding-top: 11rem;
		padding-bottom: 8rem;
	}

	.header .text-container {
		margin-top: 10rem;
		margin-right: 3rem;
	}

	.header .image-container {
		text-align: right;
	}
	/* end of header */


	/* Features */
	.cards-1 .card {
		width: 350px;
		padding-right: 3rem;
		padding-left: 3rem;
	}

	.cards-1 .card:nth-of-type(3n+2) {
		margin-right: 1.5rem;
		margin-left: 1.5rem;
	}
	/* end of features */


	/* Details 1 */
	.basic-2 .text-container {
		margin-top: 4.25rem;
	}

	.basic-2 .image-container {
		margin-left: 3.5rem;
	}
	/* end of details 1 */


	/* Details 2 */
	/* end of details 2 */


	/* Details Lightbox */
	/* end of details lightbox */


	/* Details 3 */
	/* end of details 3 */


	/* Statistics */
	.counter #counter .cell {
		margin-right: 2.875rem;
		margin-left: 2.875rem;
	}

	.counter #counter .counter-value {
		font-size: 3.75rem;
		line-height: 4.25rem;
	}
	/* end of statistics */




	/* Conclusion */
	.basic-5 .text-container {
		margin-top: 11.5rem;
		margin-left: 3rem;
	}
	/* end of conclusion */


	/* Extra Pages */
	/* end of extra pages */
}
/* end of min-width 1200px */


/******************************/
/*     Back To Top Button     */
/******************************/
a.back-to-top {
	position: fixed;
	z-index: 999;
	right: 12px;
	bottom: 12px;
	display: none;
	width: 42px;
	height: 42px;
	border-radius: 30px;
	background: #343e48 url("../images/up-arrow.png") no-repeat center 47%;
	background-size: 18px 18px;
	text-indent: -9999px;
}

a:hover.back-to-top {
	background-color: #000000;
}
