/* ----- Footer ----- */
.site-footer {
	overflow: hidden;
}

.site-footer.compact div.footer-links {
	width: 100%;
}

.site-footer.compact footer {
	width: auto;
	border: none;
	margin-bottom: 1.5em;
}

.site-footer.compact .featured-pages {
	margin: 1.56em 0 0 0;
}

.site-footer.compact footer p {
	color: #818080;
}

/* ----- Header ----- */
div.main .page-header {
	padding-top: 0;
	border-bottom: 1px solid #e3e3e3;
	background-image: url(../images/header-key-bg.png);
	background-repeat: no-repeat;
	background-position: center bottom;
}

.page-header div.container {
	padding-bottom: 0;
}

div.main .page-header .page-headline {
	margin: 0;
	padding: 2.18em 0 1.87em 0;
}

.main .page-header .button {
	color: #005f4d;
	margin: 0.41em 0 0 0;
}

.page-header h2, .page-header .page-desc {
	color: #989898;
	font-size: 0.875em;
	font-weight: 300;
	font-family: 'MuseoSans', sans-serif;
}

.page-desc span {
	display: block;
	color: #006d5c;
	font-size: 1.35em;
	margin-bottom: 1.21em;
}

.page-header+* {
	margin-top: 3.75em;
}

/* ----- Hero ribbon ----- */
.hero-ribbon {
	width: 100%;
	height: 11.25em;
	color: #ffffff;
	display: table;
	text-align: center;
	margin-bottom: 1.87em;
	background-size: cover;
	background-position: center;
}

.hero-ribbon-middle {
	display: table-cell;
	vertical-align: middle;
}

.hero-ribbon-title {
	margin: 0 0 0.2em 0;
	color: #ffffff;
	font-size: 2.5em;
	font-weight: bold;
	line-height: normal;
	text-transform: uppercase;
	text-shadow: 0 0.075em 0.025em rgba(0, 0, 0, 0.3);
}

.hero-ribbon-desc {
	color: #2c7465;
	font-size: 0.75em;
	font-weight: 600;
	border-radius: 0.31em;
	padding: 0.31em 1.06em;
	display: inline-block;
	text-transform: uppercase;
	background-color: #ffffff;
}

.hero-ribbon-title .font-icons {
	font-size: 0.35em;
	margin: 0 0.42em;
	position: relative;
	top: -0.71em;
}

/* ----- Brand section ----- */
.brand-section .row>[class*="col-"] {
	border: none;
}

.awards {
	padding: 0;
	display: table;
}

.awards h3 {
	font-size: 1.37em;
	font-weight: 700;
	margin-bottom: 1.3em;
	text-transform: uppercase;
}

.awards-middle {
	display: table-cell;
	vertical-align: middle;
}

ul.awards-list>li {
	max-width: 3em;
	margin-right: 1em;
}

/* ----- Offer countdown ----- */
.offer-countdown {
	margin-top: 0.31em;
	text-align: center;
}

.offer-countdown-content p {
	margin: 0;
}

.offer-countdown-content .offer-countdown-title {
	color: #1c1c1c;
	font-size: 0.87em;
	text-transform: uppercase;
	margin-bottom: -0.31em;
}

.offer-countdown-content .offer-countdown-timer {
	font-size: 1.37em;
	color: #949494;
	font-weight: 700;
	line-height: 1.5;
}

.offer-countdown-content .offer-countdown-timer span {
	color: #ed2939;
	font-size: 2em;
}

/* ----- Compare section ----- */
.comparison-chart .product-feature.feature-checked figure .font-icons {
	color: #000000;
}

.product-item.image-top header {
	margin-bottom: 0;
}

.product-item.image-top.product-small .product-title {
	font-size: 0.9em;
	text-transform: uppercase;
}

.product-item.image-top.product-small .product-title a {
	color: #006d54;
}

.product-item.image-top.product-small .product-title span {
	display: block;
}

.product-item .buy-block .button {
	min-width: auto;
}

/* ----- Featured section ----- */
.featured-section .row {
	margin-left: -0.93em;
	margin-right: -0.93em;
}

.featured-section .row > * {
	margin: 0;
	padding: 0 0.93em;
	width: 100%;
	margin-bottom: 1.56em;
}

/* ----- Progress bar section ----- */
.progress-bar-section p {
	color: #777777;
	font-size: 0.87em;
}

.progress-bar-section-title {
	color: #777777;
	font-size: 1.18em;
	font-weight: 300;
	font-family: 'MuseoSlab', serif;
}

/* ----- Progress bars ----- */
.progress-bars li {
	padding: 0;
	font-size: 0.93em;
	font-weight: 700;
	color: #757575;
	margin-bottom: 0.4em;
}

.progress-bars li:before {
	display: none;
}

.progress-bar {
	width: 80%;
	color: #ffffff;
	display: inline-block;
	background-color: #aad4ee;
}

.progress-bar.green {
	background-color: #5cc0b1;
}

.progress-bar.green .progress {
	background-color: #469480;
}

.progress {
	display: block;
	padding: 0.6em 1.33em 0.53em 2.86em;
	background-color: #64b1e0;
}

.progress img {
	height: 2.2em;
	margin: -0.66em 0.26em -0.66em -2.2em;
}

.progress-bar-result {
	display: inline-block;
	margin-left: 0.33em;
}

/* ----- Product list ----- */
.product-list-item {
	width: 100%;
	padding: 1.68em 1.87em 2.06em 1.87em;
	display: table;
	border: 1px solid #e9e9e9;
	margin-bottom: 3em;
}

.product-list-item.last {
	margin-bottom: 0;
}

.product-list-item figure {
	padding-bottom: 1.87em;
	vertical-align: middle;
}

.product-list-item figure img {
	width: 6.25em;
}

.product-list-item-content {
	display: block;
}

.product-list-item-content p {
	line-height: 1.68;
}

.product-list-item-title {
	font-size: 1.56em;
	font-weight: 500;
	margin-bottom: 0.62em;
}

.product-list-item-subtitle {
	color: #006d5c;
	font-size: 0.93em;
	font-weight: 300;
	margin-bottom: 0;
}

.product-list-item-info {
	font-size: 1em;
	font-weight: 300;
	margin-bottom: 0.62em;
	font-family: 'Museo Cyrl', sans-serif;
}

.product-list-item-title + .product-list-item-info {
	margin-top: -0.75em;
}

/* ----- Reviews list ----- */
.reviews-list-image {
	margin-bottom: 1.07em;
}

/* ----- Services list ----- */
.featured-section .services-list .price, .featured-section ul.services-list .price {
	padding-top: 0;
}

.featured-section .services-list h2, .featured-section ul.services-list h2 {
	padding: 0 0.5em 0 0.75em;
	vertical-align: middle;
}

/* ----- Media queries ----- */
@media screen and (min-width: 993px) {
	ul.awards-list>li {
		max-width: 6em;
	}
}

@media screen and (min-width: 769px) {
	.site-footer.compact footer {
		float: left;
	}

	.site-footer.compact .featured-pages {
		float: right;
	}

	.main .page-header .page-headline {
		width: 50%;
		float: left;
	}

	.hero-ribbon {
		width: 43%;
		float: right;
		margin-bottom: 0;
	}

	.featured-section .row > * {
		width: 33.333333%;
		margin-bottom: 0;
	}

	.product-list-item-content {
		display: table-cell;
	}

	.product-list-item figure {
		width: 20%;
		text-align: center;
		padding: 0 1.87em 0 0;
		display: table-cell;
	}

	.page-header h2, .page-header .page-desc {
		padding-left: 1.68em;
	}

	.main .page-header .button {
		color: #005f4d;
		margin: 0.41em 0 0 2.16em;
	}
}

@media screen and (max-width: 768px) {
	body {
		padding: 0;
	}
	.site-header {
		position: static;
	}

	.site-header .menu-utility {
		float: none;
		display: block;
		padding-top: 4em;
		text-align: center;
		margin-bottom: 1.25em;
	}

	.site-header .menu-utility > li {
		float: none;
		margin-bottom: 0.8em;
	}

	.site-header .menu-utility > li > a {
		margin: 0;
	}
}