.container-header {
	background: #fefefe;
	text-align: center;
	margin:     0 auto;
}
.container-header .navbar-brand img {
	width:     340px;
	height:    80px;
	min-width: 340px;
	border:    none;
}
.container-banner {
	text-align: center;
	margin:     0 auto;
	max-width:  100%;
	background: #fefefe;
}
.container-hero {
	text-align: center;
	margin:     0 auto;
	max-width:  100%;
	padding:    40px 0;
	background: rgb(0, 73, 160);
	color:      #fefefe;
}
.hero-module {
	max-width:   90%;
	line-height: 1.1;
	text-align:  center;
	margin:      0 auto 24px;
}
@media (min-width: 640px) {
	.hero-module {
		max-width: 80%;
	}
}
@media (min-width: 900px) {
	.hero-module {
		max-width: 800px;
	}
}
.hero-module h1 {
	margin-bottom:  24px;
	font-size:      3.4rem;
	letter-spacing: -1px;
	font-weight:    bold;
	color:          inherit;
}
.hero-module p {
	margin:              0 0 24px;
	display:             block;
	margin-block-start:  1em;
	margin-block-end:    1em;
	margin-inline-start: 0;
	margin-inline-end:   0;
	font-size:           18px;
	font-weight:         300;
	line-height:         1.4;
}
.container-services {
	display:               grid;
	max-width:             1150px;
	grid-template-columns: repeat(1, 1fr);
	grid-column-gap:       40px;
	grid-row-gap:          40px;
	background-color:      #f6f7f8;
	color:                 #303030;
	text-align:            center;
	margin:                0 auto;
}
.container-services img {
	margin-top: 0;
	text-align: center;
}
@media (min-width: 600px) {
	.container-services {
		grid-template-columns: repeat(1, 1fr);
	}
}
@media (min-width: 900px) {
	.container-services {
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows:        1fr;
	}
	.container-services img {
		margin-top: 60px;
	}
}
.features-intro .features-title {
	margin:     0 0 48px 0;
	text-align: left;
}
.features-intro.style-1 {
	list-style: none;
	margin:     0 auto;
	padding:    48px 20px;
	background: #f6f7f8;
	text-align: center;
}
.features-intro.style-1 ul {
	list-style: none;
	margin:     0;
	padding:    0;
	text-align: left;
}
.features-intro.style-1 li {
	margin-bottom: 36px;
	padding-left:  72px;
	position:      relative
}
.features-intro.style-1 li strong {
	background-color: #909090;
	border-radius:    50%;
	color:            #fff;
	font-size:        24px;
	display:          block;
	height:           48px;
	line-height:      48px;
	position:         absolute;
	top:              6px;
	left:             0;
	text-align:       center;
	width:            48px
}
.features-intro.style-1 li .line-icon {
	background: #e0e0e0;
	display:    block;
	width:      1px;
	height:     100%;
	position:   absolute;
	top:        53px;
	left:       23px
}
.container-architecture {
	display:               grid;
	grid-template-columns: repeat(1, 1fr);
	grid-column-gap:       0;
	grid-row-gap:          15px;
	background-color:      #fefefe;
	color:                 #303030;
	text-align:            left;
	margin:                0 15px;
	max-width:             100%;
}
@media (min-width: 640px) {
	.container-architecture {
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows:        1fr;
		grid-column-gap:       30px;
		grid-row-gap:          30px;
	}
}
@media (min-width: 900px) {
	.container-architecture {
		max-width:             1150px;
		text-align:            center;
		grid-template-columns: repeat(3, 1fr);
		grid-column-gap:       40px;
		grid-row-gap:          20px;
		margin:                0 auto;
	}
}
.features-intro.style-2 {
	padding:    48px 0;
	text-align: left;
}
.features-intro.style-2 .icon img {
	text-align: left;
	margin:     10px 0;
}
.features-intro.style-2 .feature-item {
	border:             1px solid #e0e0e0;
	border-radius:      2px;
	margin-bottom:      24px;
	padding:            24px;
	text-align:         left;
	-webkit-transition: all .35s;
	transition:         all .35s
}
.features-intro.style-2 .feature-item:hover {
	border-color: #909090
}
.features-intro.style-2 .hilite {
	border:     2px solid #3498db;
	box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.08)
}
.features-intro.style-2 .hilite .fa {
	color: #3498db
}
.features-intro.style-2 .fa {
	color:     #606060;
	font-size: 40px
}
.features-intro.style-2 .badge-new {
	background-color: #008c31;
	color:            #fff;
	display:          inline-block;
	font-weight:      normal;
	margin-top:       -10px
}
.section-title {
	font-size:      32px;
	padding-bottom: 12px;
	margin:         0 0 24px;
	position:       relative;
	text-align:     center;
}
.section-title:before {
	background-color: #3498db;
	content:          "";
	display:          block;
	height:           3px;
	position:         absolute;
	left:             50%;
	bottom:           0;
	margin-left:      -30px;
	width:            60px;
}
.section-desc {
	color:      #909090;
	font-size:  18px;
	margin:     0 10% 24px;
	text-align: center;
}
.container-quote {
	display:               grid;
	width:                 auto;
	max-width:             1150px;
	grid-template-columns: repeat(1, 1fr);
	grid-auto-rows:        1fr;
	grid-column-gap:       40px;
	grid-row-gap:          40px;
	text-align:            left;
	margin:                0 auto;
}
.carousel-control-next, .carousel-control-prev {
	color: #666;
}
