/*
Theme Name: Hot Coffee Company
Theme URI:
Author: Big Pixel Creative
Author URI: https://www.bigpixelcreative.com/
Description:
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: hcc
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

_s is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
#cta-nav-banner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #d81617;
    height: 72px;
    z-index: 99999;
    align-items: center;
    justify-content: center;
    display: flex;
    align-items: center;
    padding: 0 20px;
}
#cta-nav-banner * {
    color: #FFFFFF !important;
    font-weight: 600;
}
#cta-nav-banner p {
    font-size: 16px;
    margin: 0;
}
#cta-nav-banner a {
    text-transform: uppercase;
    font-size: 16px;
    position: relative;
    overflow: hidden;
    display: inline-block;
    line-height: 1.27;
    border: 2px solid #fff;
    padding: 10px 20px;
    text-decoration: none;
    margin-left: 20px;
    transition: all .25s ease-in-out;
}
#cta-nav-banner a span {
    z-index: 2;
    position: relative;
    transition: all .25s ease-in-out;
}
#cta-nav-banner a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  height: 100%;
  background: #fff;
  -webkit-transform: translateY(3px);
  -webkit-transform: translateY(-200px);
  -ms-transform: translateY(-200px);
  transform: translateX(-200px);
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  -o-transition: transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
}
#cta-nav-banner a:hover::after {
  -webkit-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
}
#cta-nav-banner a:hover span {
    color: #d81617 !important;
}
#cta-nav-banner #closeBanner {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background: none;
    padding: 0;
    margin-left: 40px;
}
#cta-nav-banner .d-flex {
    display: flex;
    align-items: center;
}
.move-up {
    top: 0 !important;
    margin-top: 0 !important;
}
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

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

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
	text-decoration: none;
}

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

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

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

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

small {
	font-size: 80%;
}

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

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

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

figure {
	margin: 1em 40px;
}

hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

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

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

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

input {
	line-height: normal;
}

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

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

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

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

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #222222;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em {
	font-style: italic;
}

i {
	font-style: normal;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #333;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
    outline: none;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

a:focus {
	outline: thin dotted;
}

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

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
	width: 100%;
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

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

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33333%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66667%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28571%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11111%;
}

.gallery-caption {
	display: block;
}




/*---- Custom Code ----*/

.outer-wrapper {
	margin: 0 auto;
	max-width: 2000px;
	-webkit-box-shadow: 0px 0px 50px 10px rgba(0,0,0,0.1);
	        box-shadow: 0px 0px 50px 10px rgba(0,0,0,0.1);
			overflow: hidden; /* added */
}

.site-main {
	padding: 50px 0 100px;
}

.page-template-contact .site-main, .page-template-home .site-main {
	padding: 0;
}

.wrapper {
	margin: 0 auto;
	max-width: 1400px;
	width: 100%;
}

.cta-btn {
	padding: 12px 38px;
	/* font-size: 15px; */
	font-size: 16px;
	text-transform: uppercase;
	/* font-weight: 500; */
	font-weight: 600;
	position: relative;
	/* z-index: 10; */
	z-index: 1;
	cursor: pointer;
}

	.cta-btn-red {
		color: #fff !important;
        text-decoration: none !important;
		background: transparent;
		border: 4px solid #d81717;
		display: inline-block;
		overflow: hidden;
	    -webkit-transition: color 0.6s;
	    -o-transition: color 0.6s;
	    transition: color 0.6s;
	}

		.cta-btn-red:after {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: #d81717;
			-webkit-transition: -webkit-transform 0.6s ease;
			transition: -webkit-transform 0.6s ease;
			-o-transition: transform 0.6s ease;
			transition: transform 0.6s ease;
			transition: transform 0.6s ease, -webkit-transform 0.6s ease;
			z-index: -1;
		}

			.cta-btn-red:hover:after, .cta-btn-white:hover:after, .cta-btn-grey:hover:after {
				-webkit-transform: translateX(100%);
				-ms-transform: translateX(100%);
				transform: translateX(100%);
			}

		.cta-btn-red:hover {
			color: #d81717 !important;
		}

	.cta-btn-white {
		color: #222222;
		background: transparent;
		border: 4px solid #fff;
		display: inline-block;
		overflow: hidden;
		-webkit-transition: color 0.6s;
		-o-transition: color 0.6s;
		transition: color 0.6s;
	}

		.cta-btn-white:after {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: #fff;
			-webkit-transition: -webkit-transform 0.6s ease;
			transition: -webkit-transform 0.6s ease;
			-o-transition: transform 0.6s ease;
			transition: transform 0.6s ease;
			transition: transform 0.6s ease, -webkit-transform 0.6s ease;
			z-index: -1;
		}

		.cta-btn-white:hover {
			color: #fff;
		}

	.cta-btn-grey {
		color: #ffffff;
		background: transparent;
		border: 4px solid #222222;
		display: inline-block;
		overflow: hidden;
		-webkit-transition: color 0.6s;
		-o-transition: color 0.6s;
		transition: color 0.6s;
	}

		.cta-btn-grey:after {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			background: #222222;
			-webkit-transition: -webkit-transform 0.6s ease;
			transition: -webkit-transform 0.6s ease;
			-o-transition: transform 0.6s ease;
			transition: transform 0.6s ease;
			transition: transform 0.6s ease, -webkit-transform 0.6s ease;
			z-index: -1;
		}

		.cta-btn-grey:hover {
			color: #222222;
		}

.page-title {
	width: 100%;
	display: block;
	margin: 0 0 50px 0;
	text-align: center;
}

	.page-title h1 {
		margin: 0;
		font-size: 50px;
		font-weight: bold;
		line-height: 0.86;
		display: block;
		color: #d81717;
		padding-bottom: 20px;
		position: relative;
	}

		.page-title h1:after {
		    content: '';
		    position: absolute;
		    bottom: 0;
		    left: 50%;
		    -webkit-transform: translateX(-50%);
		        -ms-transform: translateX(-50%);
		            transform: translateX(-50%);
		    height: 2px;
		    width: 35px;
		    background: #222222;
		}

/* Header */

.site-header {
    background: url(images/coffee-beans.jpeg) no-repeat center center fixed;
    background-size: cover;
	/* margin-top: 115px; */
	margin-top: 105px;
	position: relative;
}
.site-header .wrapper {
	z-index: 9;
    position: relative;
}
.site-header:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgb(34,34,34);
	background: linear-gradient(180deg, rgba(34,34,34,1) 0%, rgba(34,34,34,0.9472163865546218) 35%, rgba(34,34,34,0.8995973389355743) 100%);
}

.header-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /* padding: 40px 0 30px; */
	padding: 40px 0 20px;
    /* position: relative; */
    z-index: 999;
	position: fixed;
	width: 100%;
	max-width: 1400px;
    top: 0;
}
.header-container .background {
	width: 100vw;
    position: absolute;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    background: #222;
    height: 100%;
    top: 0;
} 

	.page-template-home .header-container {
		margin-bottom: 50px;
	}

	.page-template-home .header-container:after, .page-template-contact .header-container:after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		height: 1px;
		width: 100%;
		/* background: rgba(255,255,255,0.2); */
		background: #fff;
	    pointer-events: none;
	}

	.header-left {
	    width: 270px;
	    float: left;
	    position: relative;
	}

	.header-right {
	    width: calc(100% - 270px);
	    display: -webkit-box;
	    display: -ms-flexbox;
	    display: flex;
	    -ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	    -webkit-box-align: center;
	    -ms-flex-align: center;
	    align-items: center;
        position: absolute;
	    top: calc(50% + 17px);
	    right: 0;
	    -webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	    transform: translateY(-50%);
	}

		.header-right .facebook {
			position: absolute;
			top: 22px;
			right: 0;
			font-size: 20px;
		}

			.header-right .facebook a {
				color: #fff;
			}

		.header-right .contact-info {
		    float: left;
		    width: 100%;
		    font-size: 14px;
			text-align: right;
		}

			.header-right .contact-info > div {
			    display: inline-block;
			    margin-left: 20px;
			    text-transform: uppercase;
			}

				.header-right .contact-info strong {
				    line-height: 0.82;
				    letter-spacing: 0.7px;
				    color: #fff;
				    font-weight: 500;
				    font-size: 14px;
				    opacity: 0.4;
				}

				.header-right .contact-info span {
				    color: #fff;
				    font-weight: 300;
				    font-size: 14px;
				    opacity: 0.4;
				}

				.header-right .contact-info a {
				    color: #fff;
				    font-weight: 300;
				    font-size: 14px;
				    opacity: 0.4;
				}

					.header-right .contact-info a:hover {
					    opacity: 0.8;
					}

		.menu-button, .menu-close {
			display: none;
		}

		.header-right .nav {
		    float: left;
		    width: 100%;
		    margin-top: 5px;
			/* padding-right: 36px; */
		}

		.header-right .current-menu-item a::before {
			height: 2px !important;
		}

			.header-right > .nav > nav {
				text-align: right;
				display: block;
			}

				.header-right > .nav > nav > div > ul {
					margin: 0;
				}

				.header-right > .nav > nav > div > ul > li {
					display: inline-block;
				}

				.header-right > .nav > nav > div > ul > li:not(:first-child) {
					/* margin-left: 25px; */
					margin-left: 40px;
				}

					.header-right > .nav > nav > div > ul > li > a {
						color: #fff;
						text-transform: uppercase;
						/* font-size: 15px;*/
						font-size: 16px;
						font-weight: 600; 
					    letter-spacing: 0.8px;
					    position: relative;
					    overflow: hidden;
					    display: block;
				    	padding-bottom: 28px;
					}

						.header-right > .nav > nav > div > ul > li > a:before {
						    content: '';
						    position: absolute;
						    bottom: 28px;
							/* bottom: 0; */
						    left: 0;
						    width: 100%;
						    height: 0px;
						    background: #d81717;
						    -webkit-transition: height 0.3s ease;
						    -o-transition: height 0.3s ease;
						    transition: height 0.3s ease;
						}

							.header-right > .nav > nav > div > ul > li > a:hover:before {
								height: 2px;
							}

					.header-right > .nav > nav > div > ul > li.menu-item-has-children > a {
						padding-right: 20px;	
					}

						.header-right > .nav > nav > div > ul > li.menu-item-has-children > a:after {
						    content: '';
							width: 0; 
							height: 0; 
							border-left: 5px solid transparent;
							border-right: 5px solid transparent;
							border-top: 5px solid #fff;
						    position: absolute;
						    top: 9px;
						    right: 0;
						}

					.header-right .sub-menu {
					    position: absolute;
					    top: calc(100% - 7px);
						/* top: calc(100% + 7px); */
					    background: #fff;
					    text-align: left;
					    padding: 0 40px;
					    margin: 0;
					    max-height: 0px;
					    -webkit-transition: max-height 0.4s ease, padding 0.4s ease;
					    -o-transition: max-height 0.4s ease, padding 0.4s ease;
					    transition: max-height 0.4s ease, padding 0.4s ease;
					    overflow: hidden;
					    list-style-type: none;
					    z-index: 999;
					    -webkit-box-shadow: 0 0 20px 7.5px rgba(0,0,0,0.1);
					            box-shadow: 0 0 20px 7.5px rgba(0,0,0,0.1);
					}

						.header-right .sub-menu:before {
						    content: '';
						    position: absolute;
						    top: 0;
						    left: 0;
						    width: 20px;
						    height: 2px;
						    background: #d81717;
						    -webkit-transition: -webkit-transform 0.4s ease;
						    transition: -webkit-transform 0.4s ease;
						    -o-transition: transform 0.4s ease;
						    transition: transform 0.4s ease;
						    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
						    -webkit-transform: translateY(-15px);
						        -ms-transform: translateY(-15px);
						            transform: translateY(-15px);
						}

							.header-right > .nav > nav > div > ul > li:hover .sub-menu:before {
							    -webkit-transform: translateY(20px);
							        -ms-transform: translateY(20px);
							            transform: translateY(20px);
							}

						.header-right .sub-menu:after {
						    content: 'Services';
						    position: absolute;
						    top: 0;
						    left: 40px;
						    text-transform: uppercase;
						    font-weight: 800;
						    font-size: 13px;
						    color: #d81717;
						    line-height: 1;
						    -webkit-transition: -webkit-transform 0.4s ease;
						    transition: -webkit-transform 0.4s ease;
						    -o-transition: transform 0.4s ease;
						    transition: transform 0.4s ease;
						    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
						    -webkit-transform: translateY(-15px);
						        -ms-transform: translateY(-15px);
						            transform: translateY(-15px);
						}

							.header-right > .nav > nav > div > ul > li:hover .sub-menu:after {
							    -webkit-transform: translateY(15px);
							        -ms-transform: translateY(15px);
							            transform: translateY(15px);
							}

						.header-right > .nav > nav > div > ul > li:hover .sub-menu {
						    padding: 50px 40px 20px;
						    max-height: 1000px;
						}

						.header-right .sub-menu li:not(:last-child) {
							margin-bottom: 10px;
						}

							.header-right .sub-menu li a {
							    color: #222;
							    font-weight: 600;
							    text-transform: uppercase;
							    font-size: 15px;
							    -webkit-transition: color 0.4s ease;
							    -o-transition: color 0.4s ease;
							    transition: color 0.4s ease;
							}

								.header-right .sub-menu li a:hover, .header-right .sub-menu .current-menu-item a {
									color: #d81717;
								}



/*---- Footer ----*/

.footer-top {
	position: relative;
    /* background: #191919; */
	background: #222;
    padding: 75px 0;
	height: 410px;
}

.footer-top .three-in-row {
	width: 33.3%;
    float: left;
	display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: fit-content;
}

.footer-top .three-in-row h2 {
	font-size: 16px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
}

.footer-top .three-in-row a {
	font-size: 16px;
	color: #CCCCCC;
	transition: all .25s ease-in-out;
}

.footer-top .three-in-row a span {
	padding-right: 8px;
}
.footer-top .three-in-row a span:before {
	color: #d81717;
}

.footer-top .three-in-row a:hover {
	color: #d81717;
	transition: all .25s ease-in-out;
}

.footer-top > div ul {
	display: flex;
    justify-content: center;
	flex-wrap: wrap;
	margin: 0 0 90px 0;
    padding-left: 0;
}

.footer-top > div ul li {
	list-style: none;
    padding-right: 90px;
}

.footer-top > div ul li:last-of-type {
	padding-right: 0;
}

.footer-top > div ul li:first-of-type a {
	position: relative;
	font-size: 20px;
    color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li:first-of-type a:after {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #d81717;
	opacity: 0;
	transition: all .25s ease-in-out;
}
.footer-top > div ul li:first-of-type a:hover {
	margin-bottom: 30px;
	transition: all .25s ease-in-out;
}
.footer-top > div ul li:first-of-type a:hover:after {
	opacity: 1;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li a {
    font-size: 20px;
    color: #CCCCCC;
	position: relative;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li a:hover {
    color: #d81717;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li:not(:first-of-type) a:hover:after {
	opacity: 1;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li:not(:first-of-type) a:after {
    content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -25px;
    background: url('images/arrow-next.svg');
    background-size: contain;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
	opacity: 0;
	transition: all .25s ease-in-out;
}

.footer-top > div ul li:first-of-type a:hover {
	transform: translateY(-5px);
}

.footer-top > div > div:first-of-type a img {
	max-width: 296px;
}

	.footer-top > div > div {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}

	.footer-top p {
		/* font-size: 13px; */
		margin: 0;
		/* color: #9b9b9b; */
		font-size: 16px;
		color: #CCCCCC;
		max-width: 300px;
		/* text-align: right; */
		float: left;
	}

	.newsletter-form {
		position: relative;
	    float: left;
	    width: calc(100% - 325px);
	    margin-left: 25px;
	}

		.newsletter-form .gform_body {
			float: left;
			width: calc(100% - 200px);
		}

			.newsletter-form ul {
				list-style-type: none;
				margin: 0;
				padding: 0;
			}

				.newsletter-form ul li {
				    width: calc(50% - 20px);
				    float: left;
				    margin: 0 20px 0 0;
				}

					.newsletter-form ul li .ginput_container {
						position: relative;
						overflow: hidden;
					}

						.newsletter-form ul li .ginput_container:after {
							content: '';
							position: absolute;
							bottom: 0;
							left: 0;
							width: 100%;
							height: 2px;
							background: #d81717;
							-webkit-transition: -webkit-transform 0.4s ease;
							transition: -webkit-transform 0.4s ease;
							-o-transition: transform 0.4s ease;
							transition: transform 0.4s ease;
							transition: transform 0.4s ease, -webkit-transform 0.4s ease;
							-webkit-transform: translateX(-100%);
							    -ms-transform: translateX(-100%);
							        transform: translateX(-100%);
						}

							.newsletter-form ul li.gfield_error .ginput_container:after {
								-webkit-transform: translateX(0%);
								    -ms-transform: translateX(0%);
								        transform: translateX(0%);
							}

					.newsletter-form label {
						display: none;
					}

					.newsletter-form input {
					    width: 100%;
					    background: #222;
					    color: #474747;
					    font-size: 13px;
					    padding: 15px 20px;
					    font-style: italic;
					    border: none;
					    border-radius: 0;
					}

		.newsletter-form .gform_footer {
		    float: left;
		    width: 200px;
		}

			.newsletter-form button {
				width: 100%;
			}

				.newsletter-form i {
					font-style: normal;
				    padding-right: 10px;
				}

					.newsletter-form i:before {
						font-size: 15px;
					}

						.newsletter-form button:hover {
							color: #d81717;
						}

			.newsletter-form .validation_message {
				display: none;
			}

			.newsletter-form .validation_error {
				color: #d81717;
				padding-bottom: 5px;
			}

			.newsletter-form .gform_confirmation_message {
			    background: #7fcc7f;
			    color: #086d08;
			    padding: 20px 40px;
			    font-weight: 600;
			}

.footer-bottom {
	/* background: #222222; 
	padding: 40px 0; */
	background: #d81717;
    padding: 20px 0;
    line-height: 1;
}

.menu-footer-menu-container {
	float: left;
}

	.footer-bottom ul {
		list-style-type: none;
		margin: 0;
		padding: 0;
	}

		.footer-bottom li {
			display: inline-block;
		}

		.footer-bottom li:not(:first-child) {
			margin-left: 15px;
		}

		.footer-bottom li:last-child:before {
			display: inline-block;
			color: #fff;
			position: relative;
			top: 1px;
		}

			.footer-bottom li a {
				color: #7f7f7f;
				font-size: 12px;
				position: relative;
				overflow: hidden;
				display: inline-block;
			}

				.footer-bottom li:last-child a {
					padding-left: 5px;
				}

				.footer-bottom li a:after {
				    content: '';
				    position: absolute;
				    bottom: 0;
				    left: 0;
				    width: 100%;
				    height: 2px;
				    background: #7f7f7f;
				    -webkit-transform: translateY(3px);
				        -ms-transform: translateY(3px);
				            transform: translateY(3px);
				    -webkit-transition: -webkit-transform 0.6s ease;
				    transition: -webkit-transform 0.6s ease;
				    -o-transition: transform 0.6s ease;
				    transition: transform 0.6s ease;
				    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
				}

					.footer-bottom li a:hover:after {
					    -webkit-transform: translateY(0px);
					        -ms-transform: translateY(0px);
					            transform: translateY(0px);
					}

	.footer-copy {
		/* float: right; */
		width: 100%;
		float: left;
	}

		.footer-copy p, .footer-copy a {
			margin: 0;
			/* color: #9b9b9b; */
			color: #fff;
			font-size: 12.8px;
			display: flex;
			justify-content: center;
		}

		.footer-copy span {
			float: left;
			padding-right: 5px;
		}

		.footer-copy a {
			position: relative;
			overflow: hidden;
			display: inline-block;
			float: left;
		}

			.footer-copy a:after {
			    content: '';
			    position: absolute;
			    bottom: 0;
			    left: 0;
			    width: 100%;
			    height: 2px;
			    background: #7f7f7f;
			    -webkit-transform: translateY(3px);
			        -ms-transform: translateY(3px);
			            transform: translateY(3px);
			    -webkit-transition: -webkit-transform 0.6s ease;
			    transition: -webkit-transform 0.6s ease;
			    -o-transition: transform 0.6s ease;
			    transition: transform 0.6s ease;
			    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
			}

				.footer-copy a:hover:after {
				    -webkit-transform: translateY(0px);
				        -ms-transform: translateY(0px);
				            transform: translateY(0px);
				}

/*---- Homepage ----*/

.home-header {
	margin: 0;
	/* padding: 75px 0; */
	padding: 105px 0 75px 0;
}

.slider {
	position: relative;
}

	.home-header .slick-prev, .home-header .slick-next {
	    opacity: 0.3;
	    -webkit-transition: opacity 0.4s ease;
	    -o-transition: opacity 0.4s ease;
	    transition: opacity 0.4s ease;
	}
	    .home-header .slick-prev:hover, .home-header .slick-next:hover {
	        opacity: 1;
	    }

	    .slick-prev:before, .slick-next:before {
	    	font-family: 'flaticon';
	    }

	    	.slick-prev:before {
				content: '\f102';
	    	}

	    	.slick-next:before {
				content: '\f101';
	    	}

	 .homeheader .slick-dots {
	 	bottom: -45px;
	 }

	.slick-dots li {
		width: 9px;
		height: 9px;
	}

		.slick-dots li button:before {
			color: #fff;
			font-size: 11px;
		}

		.slick-dots li.slick-active button:before {
			color: #fff;
		}

	.slick-slide img {
		display: inline-block;
	}

		.home-testimonials .slick-slide img {
			border-radius: 100%;
			/* added */
			width: 36px;
			height: 36px;
			/* object-fit: contain; */
			object-fit: cover;
		}

	.slider-image {
		float: left;
		max-width: 50%;
		width: 100%;
		text-align: right;
		padding-right: 25px;
	}

	.slider-content {
	    float: left;
	    width: 50%;
	    padding-left: 25px;
	    color: #fff;
	    position: absolute;
	    right: 0;
	}

		.slider-content h1 {
			/* font-size: 50px;
			font-weight: bold;
			max-width: 430px; */
			font-size: 49px;
			font-weight: 600;
			max-width: 560px;
		    line-height: 0.86;
		    display: block;
		    /* margin: 0 0 20px; */
			margin: 0 0 27px;
		}

		.slider-content p {
			/* font-size: 18px;
			max-width: 450px; */
			display: block;
			/* margin: 0 0 20px; */
			font-size: 20px;
			max-width: 600px;
			margin: 0 0 40px;
		}

.home-services, .home-brands {
	width: 100%;
	display: block;
	padding: 80px 0;
}

.home-brands {
	padding: 0 0 80px 0;
}

	.home-services-title, .home-testimonials-title, .home-brands-title {
		text-align: center;
		margin-bottom: 40px;
	}

		.home-services-title p, .home-testimonials-title p, .home-brands-title p {
			font-size: 14px;
			font-weight: 500;
			color: #616161;
			margin: 0;
			padding-bottom: 5px;
		}

		.home-services-title h2, .home-testimonials-title h2, .home-brands-title h2 {
			font-size: 32px;
			font-weight: 700;
			margin: 0;
			padding-bottom: 20px;
			position: relative;
			line-height: 30px;
			color: #222;
			display: block;
		}

			.home-services-title h2:after, .home-testimonials-title h2:after, .home-brands-title h2:after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 50%;
				-webkit-transform: translateX(-50%);
				    -ms-transform: translateX(-50%);
				        transform: translateX(-50%);
				height: 2px;
				width: 35px;
				background: #d81717;
			}

.home-services-container {
	padding: 0 100px;
}

	.home-services-container .service {
		float: left;
		width: calc((100% / 3) - 20px);
		margin-bottom: 40px;
		text-align: center;
	}

		.home-services-container .service:first-child {
			margin-right: 20px;
		}

		.home-services-container .service:nth-child(2) {
			margin-right: 10px;
			margin-left: 10px;
		}

		.home-services-container .service:nth-child(3) {
			margin-left: 20px;
		}

		.home-services-container .service img {
			width: 100%;
			display: block;
		}

		.home-services-container .service h3 {
			margin: 0;
			font-size: 18px;
			margin: 30px 0 15px;
			font-weight: 500;
		    line-height: 1.45;
		    letter-spacing: 0.3px;
		}

		.home-services-container .service p {
			margin: 0;
			color: #9b9b9b;
			margin-bottom: 20px;
		    padding: 0 25px;
	        font-size: 12.4px;
		    line-height: 1.83;
		}

		.home-services-container .service a {
			color: #d81717;
			text-transform: uppercase;
			/* font-size: 14px; */
			font-size: 16px;
			/* font-weight: 500; */
			font-weight: 600;
			position: relative;
			overflow: hidden;
			display: inline-block;
		    line-height: 1.27;
			border: 2px solid #d81717;
			padding: 16px 35px;
			transition: all .25s ease-in-out;
			text-decoration: none;
		}

		.home-services-container .service a span {
			z-index: 2;
			position: relative;
			transition: all .25s ease-in-out;
		}

			.home-services-container .service a:after {
			    content: '';
			    position: absolute;
			    bottom: 0;
			    left: 0;
			    width: 100%;
			    /* height: 2px; */
				height: 100%;
			    background: #222;
			    /* -webkit-transform: translateY(3px);
			        -ms-transform: translateY(3px);
			            transform: translateY(3px); */
				-webkit-transform: translateY(-200px);
					-ms-transform: translateY(-200px);
						transform: translateX(-200px);
			    -webkit-transition: -webkit-transform 0.6s ease;
			    transition: -webkit-transform 0.6s ease;
			    -o-transition: transform 0.6s ease;
			    transition: transform 0.6s ease;
			    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
			}

			.home-services-container .service a:hover {
				border-color: #222;
				color: #fff;
				transition: all .25s ease-in-out;
			}
				.home-services-container .service a:hover:after {
				    -webkit-transform: translateY(0px);
				        -ms-transform: translateY(0px);
				            transform: translateY(0px);
				}

.home-brands-container {
	padding: 0 150px;
}

.home-brands .brand {
    float: left;
    width: calc(25% - 20px);
    text-align: center;
    min-height: 160px;
    margin: 10px;
    position: relative;
}

	.home-brands .brand img {
		max-width: 175px;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%);
		    -ms-transform: translate(-50%,-50%);
		        transform: translate(-50%,-50%);
	    -webkit-filter: grayscale(100%);
	            filter: grayscale(100%);
	    -webkit-transition: opacity 0.3s ease, -webkit-filter 0.3s ease;
	    transition: opacity 0.3s ease, -webkit-filter 0.3s ease;
	    -o-transition: filter 0.3s ease, opacity 0.3s ease;
	    transition: filter 0.3s ease, opacity 0.3s ease;
	    transition: filter 0.3s ease, opacity 0.3s ease, -webkit-filter 0.3s ease;
	    opacity: 0.3;
	}

		.home-brands a:hover img {
			-webkit-filter: grayscale(0%);
			        filter: grayscale(0%);
			opacity: 1;
		}

.home-about-top {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

	.home-about-top > div:not(:last-child) {
		width: 50%;
		background: url(images/coffee.jpg) no-repeat;
		background-size: cover;
		height: auto;
	}

		.home-about-top > div:first-child {
			background: #d81717;
			color: #fff;
			/* text-align: right; */
			padding: 100px;
			position: relative;
		}

			.home-about-top > div:first-child h1, .home-about-top > div:first-child h2 {
			    margin: 0 0 30px;
			    /* font-size: 36px;
			    font-weight: 700; */
				font-size: 31px;
				font-weight: 600;
			    line-height: 1.1;
			    /* max-width: 450px; */
			    /* float: right; */
			    clear: both;
			}

			.home-about-top > div:first-child p {
				margin: 0 0 20px;
				/* font-size: 14px; */
				font-size: 16px;
				line-height: 1.63;
			    /* max-width: 400px; */
			    /* float: right; */
			    clear: both;
			}

			.home-about-top > div:first-child p:last-of-type {
				margin: 0 0 25px;
			}

			.home-about-top > div:first-child a {
				/* float: right; */
				clear: both;
				color: #d81717;
			}

			.home-about-top > div:first-child a:hover {
				color: #ffffff;
			}

		.home-about-top > div:nth-child(2) img {
			width: 100%;
		}

.home-about-bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

	.home-about-bottom > div {
		width: 50%;
	}

	.home-about-bottom > div:first-child {
		background: url(images/roasters.png) no-repeat;
		background-size: cover;
		height: auto;
		background-position: 50% 50%;
	}

	.home-about-bottom > div:not(:first-child) {
		color: #fff;
		padding: 100px;
	}

	.home-about-bottom > div:nth-child(2) {
		background: #3d3c3c;
	}

		.home-about-bottom > div:not(:first-child) h1, .home-about-bottom > div:not(:first-child) h2 {
		    margin: 0 0 30px;
		    /* font-size: 36px;
		    font-weight: 700; */
			font-size: 31px;
			font-weight: 600;
		    line-height: 1.1;
		    /* max-width: 450px; */
		    float: left;
		    clear: both;
		}

		.home-about-bottom > div:not(:first-child) p {
			margin: 0 0 20px;
			/* font-size: 14px; */
			font-size: 16px;
			line-height: 1.63;
			/* max-width: 400px; */
			float: left;
			clear: both;
		}

		.home-about-bottom > div:not(:first-child) p:last-of-type {
			margin: 0 0 25px;
		}

		.home-about-bottom > div:not(:first-child) a {
			float: left;
			clear: both;
		}

		.home-about-title {
			display: block;
			position: relative;
			padding-bottom: 20px;
			margin-bottom: 20px;
		}

			.home-about-title strong {
			    font-size: 12px;
			    font-weight: bold;
			    line-height: 2.38;
			}

			.home-about-title h2 {
				font-size: 23px;
				font-weight: bold;
				line-height: 1.12;
				letter-spacing: -0.5px;
				margin: 0;
			}

			.home-about-title:after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				background: #fff;
				height: 2px;
				width: 32px;
			}

.home-testimonials {
	padding: 100px 0;
	text-align: center;
}

.home-testimonials .wrapper {
	position: relative;
}
	
	.home-testimonials .slick-dots li button:before {
	    color: #646464!important;
	}

	.testimonial {
	    padding: 40px;
	    margin: 40px 0;
	    min-height: 310px;
	}

	.testimonial.slick-center {
		-webkit-box-shadow: 0px 0px 20px -5px rgba(0,0,0,0.2);
		        box-shadow: 0px 0px 20px -5px rgba(0,0,0,0.2);
	}

	.home-testimonials-container .slick-track > div:not(.slick-center) {
	    opacity: 0.5;
	}

	.home-testimonials .wrapper .slick-prev,
	.home-testimonials .wrapper .slick-next {
		top: 55% !important;
	}

	.home-testimonials-container .slick-prev:before,
	.home-testimonials-container .slick-next:before {
		content: '';
	}

	.home-testimonials-container .prev img,
	.home-testimonials-container .next img {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	}

	/* .home-testimonials-container .slick-prev:before,
	.home-testimonials-container .slick-next:before {
		background: url('../hcc/images/arrow.svg');
		background-size: 90%;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		width: 25px;
		height: 25px;
		display: block;
	}

	.home-testimonials-container .slick-next:before {
		transform: rotate(180deg);	
	} */

		.testimonial .quote i {
			font-style: normal;
		}

			.testimonial .quote i:before {
				font-size: 25px;
			}

		.testimonial .quote p {
			font-size: 13px;
			font-style: italic;
			color: #9b9b9b;
			margin: 30px 0;
			line-height: 23px;
		    line-height: 1.79;
		    letter-spacing: 0.2px;
		}

		.testimonial .quote-info {
			position: relative;
		    display: -webkit-box;
		    display: -ms-flexbox;
		    display: flex;
		    width: 100%;
		    -webkit-box-pack: center;
		        -ms-flex-pack: center;
		            justify-content: center;
		    text-align: left;
		    -webkit-box-align: center;
		        -ms-flex-align: center;
		            align-items: center;
		}

			.testimonial-content {
				padding-left: 15px;
			}

			.testimonial .quote-info h3 {
				margin: 0;
				color: #282828;
				font-size: 14px;
			    line-height: 1.38;
			    letter-spacing: 0.3px;
			    display: block;
			}

			.testimonial .quote-info small {
				color: #d81717;
				font-size: 12px;
			    line-height: 1.27;
			    display: block;
			    font-weight: 700;
			}

/*---- Sidebar----*/

.sidebar {
	float: left;
    width: 275px;
    position: relative;
}

	.sidebar > div:first-child {
		margin-bottom: 40px;
	}

	.sidebar h3, .sidebar h2 {
	    color: #b2b2b2;
	    padding: 0;
	    margin: 0 0 20px;
	    text-transform: uppercase;
	}

	.sidebar ul {
	    margin: 0;
	    padding: 0;
	    list-style-type: none;
	}

		.sidebar li {
			margin: 0;
			padding: 5px 0;
		}

		.sidebar .btn {
			-webkit-appearance: none;
			background: none;
			border: none;
			padding: 0;
			margin: 0;
			-webkit-transition: font-size 0.4s, font-weight 0.4s;
			-o-transition: font-size 0.4s, font-weight 0.4s;
			transition: font-size 0.4s, font-weight 0.4s;
			font-size: 15px;
		}

			.sidebar .parent .btn {
			    font-weight: 600;
			}

			.sidebar .child {
			    padding-left: 10px;
			    position: relative;
			    margin: 0 0 0 5px;
			    padding: 5px 0 5px 10px;
			    font-size: 14px;
			}

				.sidebar .child:before {
					position: absolute;
					content: '';
					top: 0;
					left: 0;
					width: 2px;
					height: 100%;
					background: rgba(0,0,0,0.2);
				}

			.sidebar .btn.active {
			    font-size: 18px;
			    font-weight: 600;
			    color: #d81717;
			}

/*---- Products ----*/

.products-wrapper #alert {
    display: none;
	position: absolute;
    top: 50%;
	left: 55%;
    transform: translate(-50%,-50%);
	font-size: 31px;
	font-weight: 600;
	color: #B2B2B2;
}

.products-container {
	float: left;
	width: calc(100% - 275px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 30px;
}

	
	#msg-box {
		display: none;
	}

	.filter-title {
	    position: absolute;
	    top: -30px;
	    left: 10px;
	}

		.filter-title h2 {
			margin: 0;
			font-size: 20px;
		    /* font-weight: 300; */
			font-weight: 400;
		}

		.filter-title h2 > span {
		    color: #b2b2b2;
		    display: inline-block;
		    margin: 0 50px 0 0;
		}
		.products-filter, .brands-filter {
			font-weight: 600;
			color: #d81717;
		}
	.product-single {
		float: left;
		width: calc((100% / 3) - 20px);
		background: #fff;
		margin: 10px;
	}

		.product-image {
			width: 100%;
			text-align: center;
			min-height: 382px;
			position: relative;
		    border: 1px solid #e6e6e6;
		    border-bottom: none;
	        padding: 20px;
    	    display: -webkit-box;
    	    display: -ms-flexbox;
    	    display: flex;
    		-webkit-box-align: center;
    		    -ms-flex-align: center;
    		        align-items: center;
		    -webkit-box-pack: center;
		        -ms-flex-pack: center;
		            justify-content: center;
		}

			.product-image a {
				max-width: 100%;
				width: 100%;
			}

			.product-image img {
				max-width: 100%;
				max-height: 300px;
				width: auto;
			}

		.product-title {
		    min-height: 86px;
		    margin: 0;
		    padding: 10px 30px;
		    background: #6c6c6c;
	        display: -webkit-box;
	        display: -ms-flexbox;
	        display: flex;
		    -webkit-box-align: center;
		        -ms-flex-align: center;
		            align-items: center;
		}

			.product-title h2 {
				margin: 0;
				font-size: 22px;
				color: #fff;
				line-height: 22px;
			}

		.product-content {
			padding: 30px 40px;
		    background: #3d3d3d;
			min-height: 172px; /**/
		}

			.product-content p {
				margin: 0 0 10px;
				background: #3d3d3d;
				color: #fff;
			}

			.product-content > div > a {
				color: #ff4444;
				display: inline-block;
				position: relative;
				font-weight: 600;
				overflow: hidden;
			}

				.product-content > div > a:after {
					content: '';
					position: absolute;
					bottom: -2px;
					left: 0;
					width: 100%;
					height: 2px;
					background: #ff4444;
					-webkit-transition: bottom 0.6s ease;
					-o-transition: bottom 0.6s ease;
					transition: bottom 0.6s ease;
				}

					.product-content > div > a:hover:after {
	    				bottom: 0;
					}

	.single-products .breadcrumbs {
		margin-bottom: 50px;
	}

	.single-products .breadcrumbs .internal-breadcrumb {
		color: #B2B2B2;
		transition: all .25s ease-in-out;
	}

	.single-products .breadcrumbs .internal-breadcrumb:hover {
		color: #d81717;
		text-decoration: underline;
		transition: all .25s ease-in-out;
	}

	.single-products .breadcrumbs .internal-breadcrumb.current {
		color: #d81717;
		font-weight: 600;
	}

	.single-products .breadcrumbs .internal-breadcrumb.current:hover {
		text-decoration: none;
	}

	.single-products .breadcrumbs span {
		padding: 0 12px;
	}

	.single-products .breadcrumbs span:before {
		color: #B2B2B2;
	}

	.single-product-image {
		float: left;
		/* max-width: 500px; */
		width: 50%;
		margin-right: 50px;
		text-align: center;
	}

		.single-product-image img {
			max-height: 600px;
			width: auto;
		}

	.single-product-content {
		float: left;
		/* width: calc(100% - 550px); */
		width: calc(50% - 50px);
		/* margin-bottom: 50px; */
		margin-bottom: 95px;
	}

		.single-product-content strong {

		}

		.single-product-title h1 {
			color: #d81717;
			margin: 0 0 20px;
		}

		.single-product-description p {
			margin: 0 0 20px;
		}

		.single-product-features, .single-product-downloads {
			position: relative;
			margin-top: 20px;
			padding-top: 20px;
		}

		.single-product-features h2 {
			color: #444444;
			text-transform: uppercase;
			font-weight: 600;
		}

			.single-product-features ul {
				margin: 0;
				/* padding: 10px 0 10px 30px; */
				padding: 0 0 10px 30px;
			}

			/* .single-product-features:before, .single-product-downloads:before {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 2px;
				background: rgba(0,0,0,0.1);
			} */

		.single-product-downloads a {
			position: relative;
			color: #d81717;
			margin-top: 20px;
			padding-left: 40px;
			display: inline-block;
			margin-left: 20px;
			-webkit-transition: color 0.4s;
			-o-transition: color 0.4s;
			transition: color 0.4s;
		}

			.single-product-downloads a:before {
				content: '\f100';
    			font-family: 'flaticon';
    			position: absolute;
    			top: 50%;
    			left: 0;
				-webkit-transform: translateY(-50%);
				    -ms-transform: translateY(-50%);
				        transform: translateY(-50%);
				color: #d81717;
				font-size: 28px;
				-webkit-transition: color 0.4s;
				-o-transition: color 0.4s;
				transition: color 0.4s;
			}

			.single-product-downloads a:hover, .single-product-downloads a:hover:before {
				color: #222222;
			}

			.single-product-content .open-product-contact,
			.single-product-content .cta-btn-white {
				margin-top: 25px;
			}

			.single-product-content .cta-btn-white {
				border: 3px solid #d81717;
				color: #d81717;
				padding: 13px 38px;
				position: relative;
				margin-left: 20px;
			}

			.single-product-content .cta-btn-white:after {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: #d81717;
				-webkit-transition: -webkit-transform 0.6s ease;
				transition: -webkit-transform 0.6s ease;
				-o-transition: transform 0.6s ease;
				transition: transform 0.6s ease;
				transition: transform 0.6s ease, -webkit-transform 0.6s ease;
				-webkit-transform: translateX(-100%);
				-ms-transform: translateX(-100%);
				transform: translateX(-100%);
				z-index: -1;
			}

			.single-product-content .cta-btn-white:hover:after {
				-webkit-transform: translateX(0%);
				-ms-transform: translateX(0%);
				transform: translateX(0%);
			}

			.single-product-content .cta-btn-white:hover {
				color: #fff;
			}

	.product-contact {
	    text-align: center;
	    /* width: 190px;
	    max-width: 800px; */
		display: inline-block;
	    margin: 30px auto;
	    /* display: block; */
	    clear: both;
	    background: #d81717;
	    height: 54px;
	    -webkit-transition: width 0.4s;
	    -o-transition: width 0.4s;
	    transition: width 0.4s;
		width: fit-content;
		height: auto;
		position: fixed;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		visibility: hidden;
		opacity: 0;
		padding: 20px 100px 0;
		transition: all 0.25s ease-in-out;
	}

	.single-products .overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
		background: rgb(0 0 0 / 30%);
		visibility: hidden;
		opacity: 0;
		transition: all 0.25s ease-in-out;
	}

	.single-products .overlay.active {
		z-index: 999999999;
		visibility: visible;
		opacity: 1;
		transition: all 0.25s ease-in-out;
	}

		.product-contact.active {
			/* width: 100%; */
			width: fit-content;
			height: auto;

			z-index: 9999999999;
			visibility: visible;
			opacity: 1;
			transition: all 0.25s ease-in-out;
		}

		.product-contact #close {
			position: absolute;
			top: 10px;
			right: 20px;
			font-size: 30px;
			color: #fff;
			cursor: pointer;
			transition: all .25s ease-in-out;
		}
		.product-contact #close:hover {
			color: #222;
			transition: all .25s ease-in-out;
		}

		.product-contact p {
			font-size: 16px;
			color: #fff;
			font-weight: 600;
			margin-top: 0;
		}

		.product-contact a:hover {
			color: #fff;
		}

		.product-contact form {
			max-height: 0;
		    max-width: 600px;
		    width: 100%;
		    margin: 0 auto;
			overflow: hidden;
			-webkit-transition: max-height 0.4s;
			-o-transition: max-height 0.4s;
			transition: max-height 0.4s;
		}

			.product-contact form.active {
				max-height: 3000px;
				/* margin-bottom: 50px; */
				margin-bottom: 35px;
				/* padding-bottom: 30px; */
			}

			.product-contact ul {
				margin: 0;
				padding: 0;
				list-style-type: none;
			}

				.product-contact li:nth-child(4) input {
					pointer-events: none;
					background: #dcdcdc;
				}

			.product-contact label {
				display: none;
			}

			.product-contact input[type="text"], .product-contact textarea {
				padding: 10px 20px;
				width: 100%;
				margin-bottom: 10px;
			}

			.product-contact input[type="submit"] {
				padding: 20px 40px;
				font-size: 15px;
				text-transform: uppercase;
				font-weight: 500;
				position: relative;
				z-index: 10;
			    color: #fff;
			    background: transparent;
			    border: 4px solid #fff;
			    display: inline-block;
			    overflow: hidden;
			    -webkit-transition: background 0.4s, color 0.4s;
			    -o-transition: background 0.4s, color 0.4s;
			    transition: background 0.4s, color 0.4s;
			}

				.product-contact input[type="submit"]:hover {
				    color: #d81717;
				    background: #fff;
				}

	.related-products {
		width: 100%;
		float: left;
	    background: rgba(0,0,0,0.03);
	    padding: 50px 20px;
	}

	.related-products > div {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

		.related-products > div > h2 {
			width: 100%;
		    margin: 0;
		    font-weight: bold;
		    line-height: 0.86;
		    display: block;
		    color: #d81717;
		    padding-bottom: 20px;
		    position: relative;
		    text-align: center;
		    margin-bottom: 20px;
		}

			.related-products > div > h2:after {
			    content: '';
			    position: absolute;
			    bottom: 0;
			    left: 50%;
			    -webkit-transform: translateX(-50%);
			        -ms-transform: translateX(-50%);
			            transform: translateX(-50%);
			    height: 2px;
			    width: 35px;
			    background: #222222;
			}

		.related-products > div > div:not(:last-child) {
			width: calc(25% - 20px);
			float: left;
			background: #fff;
			margin: 10px;
			padding: 20px;
			-webkit-box-shadow: 0px 1px 10px 2px rgba(0, 0, 0, 0.01);
			        box-shadow: 0px 1px 10px 2px rgba(0, 0, 0, 0.01);
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
		}

			.related-image {
			    width: 100%;
			    text-align: center;
			    min-height: 240px;
			    position: relative;
			}

				.related-image img {
				    max-width: 100%;
				    max-height: 240px;
				    width: auto;
				    height: auto;
				    position: absolute;
				    top: 50%;
				    left: 50%;
				    -webkit-transform: translate(-50%,-50%);
				        -ms-transform: translate(-50%,-50%);
				            transform: translate(-50%,-50%);
				}

			.related-title {
			    min-height: 72px;
			    margin: 0;
			    width: 100%;
			}

			.related-single > a {
				margin-top: auto;
			    color: #d81717;
			    display: inline-block;
			    position: relative;
			    font-weight: 600;
			    overflow: hidden;
			}

				.related-single > a:after {
				    content: '';
				    position: absolute;
				    bottom: -2px;
				    left: 0;
				    width: 100%;
				    height: 2px;
				    background: #d81717;
				    -webkit-transition: bottom 0.6s ease;
				    -o-transition: bottom 0.6s ease;
				    transition: bottom 0.6s ease;
				}

					.related-single > a:hover:after {
					    bottom: 0;
					}

/*---- Services Template ----*/
.page-template-services .site-main {
	padding: 50px 0 0;
}
.services-container {
	/* padding: 0 250px; */
	padding: 0 300px;
}

	.services-container > div:not(:last-child) {
		margin-bottom: 75px;
	}

	.service-banner {
		/* height: 329px; */
		height: 415px;
		display: flex;
		align-items: center;
		margin: 57px 0;
    	color: #fff;
		max-width: 1400px;
		position: relative;
		width: 100%;
	}
	.service-banner .background {
		width: 100vw;
		position: absolute;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		background-size: cover !important;
		background-position: 50% 50% !important;
		background-repeat: no-repeat !important;
		filter: grayscale(1);
		height: 100%;
		top: 0;
	}
	.service-banner .background:after {
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		background: #222222;
		opacity: .7;
	}
	.service-banner h2 {
		font-size: 25px;
		position: absolute;
		z-index: 1;
		width: 125%;
		display: block;
		left: 50%;
		transform: translateX(-50%);
	}

		.service-content h2 {
			/* color: #d81717; */
			color: #444444;
			text-transform: uppercase;
			/* font-size: 22px; */
			font-size: 25px;
			line-height: 38px;
		}
		.service-content a {
			color: #d81717;
    		text-decoration: underline;
			transition: all .25s ease-in-out;
		}	
		.service-content a:hover {
			color: #444444;
			transition: all .25s ease-in-out;
		}
		.service-content h3 {
			color: #444444;
			font-size: 25px;
			line-height: 38px;
		}

		.service-content strong {
			color: #d81717;
			font-weight: 600;
		}

		.service-content p {
			font-size: 18px;
		}

		.service-content ul, .service-content ol {
			margin: 0 0 20px;
			font-size: 18px;
		}

			.service-content li {
				counter-increment: list;
				list-style-type: none;
				position: relative;
			}

				.service-content li:before {
					color: #d81717;
					/* font-weight: 800;
					left: -32px; */
					font-weight: 600;
					left: -50px;
					position: absolute;
					text-align: right;
					width: 26px;
				}

				.service-content ol li:before {
					content: counter(list) ".";
				}

				.service-content ul li:before {
					content: "•";
					left: -40px;
					width: 8px;
					height: 8px;
					font-size: 33px;
					top: -13px;
				}

			.service-content li:not(:last-child) {
			    margin-bottom: 10px;
			}

		.services-container .service-image {
		    position: relative;
		    /* width: calc(100% + 100px); */
			width: calc(100% + 300px);
		    /* margin: 40px -50px 0; */
			/* margin: 40px -50px 90px; */
			margin: 40px -150px 90px;
		}

		.services-container .service-image.full-width {
			width: 100vw;
			left: 50%;
			right: 50%;
			margin-left: -50vw;
			margin-right: -50vw;
			/* height: 329px; */
			background-size: cover !important;
			background-position: 50% 50% !important;
			background-repeat: no-repeat !important;
			height: 415px;
			margin-bottom: 0;
			margin-top: 55px;
			top: 25px;
		}

			.services-container .service-image img {
				max-width: 100%;
			    width: 100%;
			    display: block;
			}

		.coffee-availability {
		    background: #d81717;
		    color: #fff;
		    text-align: center;
		    padding: 30px;
		}

			.coffee-availability p {
				margin: 0;
			}

/*---- About Page ----*/

.page-template-about .content-container,
.page-template-liquidline .content-container {
	padding: 0 250px;
}

.page-template-liquidline .page-title h1 {
    line-height: 1;
}
.page-template-liquidline .about-content .cta-btn-red {
    margin-top: 25px;
}
.page-template-liquidline .site-main {
    padding: 50px 0 0 0;
}
.page-template-liquidline .full-width-img {
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    /* height: 329px; */
    background-size: cover !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    height: 415px;
    margin-bottom: 0;
    margin-top: 55px;
    top: 25px;
    position: relative;
}

	.about-content > p {
	    font-size: 18px;
	}

	.about-content a {
		color: #d81717;
		text-decoration: underline;
		transition: all .25s ease-in-out;
	}	
	.about-content a:hover {
		color: #444444;
		transition: all .25s ease-in-out;
	}

	.about-boxes {
		position: relative;
	    width: calc(100% + 400px);
	    margin: 40px -200px 50px;
	    display: -webkit-box;
	    display: -ms-flexbox;
	    display: flex;
	}

		.about-box {
			float: left;
			width: calc((100% / 3) - 10px);
			background: #d81717;
			padding: 40px;
			color: #fff;
		}

			.about-box:not(:last-child) {
				margin-right: 15px;
			}

			.about-box h3, .about-box h2 {
			    text-transform: uppercase;
			    font-size: 22px;
			    margin: 0 0 20px;
			}

			.about-box p {
				padding: 0;
				margin: 0;
			}

			.about-box ul {
				padding: 0 0 0 20px;
				margin: 0;
			}

/*---- Contact Page ----*/

.page-template-contact .site-header {
    background: transparent;
    z-index: 10;
    position: relative;
}

.map {
	top: -182px;
	width: 100%;
	height: 732px;
	margin-bottom: -182px;
}

.contact-container {
	background: #fff;
	margin: 0 auto -50px;
	padding: 100px;
	position: relative;
	top: -150px;
	-webkit-box-shadow: 0px 1px 73px 0 rgba(0, 0, 0, 0.12);
	        box-shadow: 0px 1px 73px 0 rgba(0, 0, 0, 0.12);
}

	.contact-intro {
		width: 100%;
	}

		.contact-intro h1 {
			margin: 0 0 50px;
			font-size: 25px;
		}

			.contact-intro h1 p {
				margin: 0;
			}

	.contact-box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

		.contact-form {
			width: calc(60% - 50px);
			margin-right: 50px;
			position: relative;
		}

		.contact-form .cta-btn .flaticon-send-mail {
			display: none;
		}

			.contact-form:after {
				content: '';
				position: absolute;
				top: 0;
				right: -52px;
				height: 100%;
				width: 1px;
				background: #d81717;
			}

			.contact-form ul {
				list-style-type: none;
				padding: 0;
				margin: 0;
			}

				.contact-form ul li {
					position: relative;
				}

					.contact-form ul li.gfield_error {
						position: relative;
					}

						.contact-form ul li.gfield_error:after {
						    content: '';
						    position: absolute;
						    bottom: 0;
						    left: 0;
						    width: 100%;
						    height: 2px;
						    background: #d81717;
						}

				.contact-form label, .contact-form .validation_message {
					display: none;
				}

				.contact-form input[type="text"], .contact-form textarea {
					width: 100%;
					display: block;
					-webkit-appearance: none;
					-moz-appearance: none;
					     appearance: none;
					background: #fff;
					margin-bottom: 15px;
					padding: 10px 20px;
					font-size: 16px;
				}

				.contact-form .cta-btn i {
					font-style: normal;
					padding-right: 5px;
				}

				.contact-form .validation_error {
					background: #d81717;
					color: #fff;
					font-weight: 600;
					padding: 20px;
					margin-bottom: 20px;
				}

			.contact-form .gform_footer {
				margin-top: 30px;
			}

		.contact-details {
			width: 40%;
			position: relative;
		}

			.contact-details > div {
				position: absolute;
				top: 50%;
				left: 50px;
				-webkit-transform: translateY(-50%);
				    -ms-transform: translateY(-50%);
				        transform: translateY(-50%);
			}

				.contact-details strong {
					text-transform: uppercase;
					margin-bottom: 5px;
					font-size: 16px;
				}

				.contact-details p {
					margin: 0 0 20px;
				}
				.contact-details a {
					color: #222222;
					transition: all .25s ease-in-out;
				}
				.contact-details a:hover {
					color: #d81717;
					transition: all .25s ease-in-out;
				}

				.contact-details .facebook {
					color: #3b5999;
					margin: 0 10px 0 0;
					-webkit-transition: color 0.6s ease;
					-o-transition: color 0.6s ease;
					transition: color 0.6s ease;
				}

				.contact-details .twitter {
					color: #55acee;
					margin: 0 10px 0 0;
					-webkit-transition: color 0.6s ease;
					-o-transition: color 0.6s ease;
					transition: color 0.6s ease;
				}

					.contact-details a:hover {
						/* color: #222; */
						color: #d81717;
					}

					.contact-details i {
						font-style: normal;
					}

						.contact-details i:before {
							font-size: 50px;
						}

/* Blog */

.blog-featured {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

	.blog-featured h2, .blog-container h2 {
		width: 100%;
		font-size: 28px;
		margin: 0 0 20px;
	}

	.blog-featured > div {
		float: left;
		width: calc((100% / 3) - 30px);
	}

	.blog-featured > div:first-of-type {
		margin-right: 30px;
	}

	.blog-featured > div:nth-of-type(2) {
		margin: 0 15px;
	}

	.blog-featured > div:nth-of-type(3) {
		margin-left: 30px;
	}

		.blog-featured-single a {
			color: #fff;
		}

		.blog-featured-image {
		    width: 100%;
		    height: 300px;
		    background-size: cover;
		    background-repeat: no-repeat;
		    position: relative;
		    -webkit-box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.4);
		            box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.4);
		    overflow: hidden;
		}

			.blog-featured-image > div {
				position: absolute;
				bottom: 10px;
				left: 20px;
				width: calc(100% - 40px);
				z-index: 2;
			}

				.blog-featured-image a {
					color: #fff;
					display: inline-block;
					clear: both;
				}

				.blog-featured-image small {
					color: rgba(255,255,255,0.6);
					display: block;
					font-size: 12px;
				}

				.blog-featured-image i {
					position: absolute;
					top: 50%;
					right: 0;
					-webkit-transform: translate(60px, -50%);
					    -ms-transform: translate(60px, -50%);
					        transform: translate(60px, -50%);
					-webkit-transition: opacity 0.6s, -webkit-transform 0.4s;
					transition: opacity 0.6s, -webkit-transform 0.4s;
					-o-transition: transform 0.4s, opacity 0.6s;
					transition: transform 0.4s, opacity 0.6s;
					transition: transform 0.4s, opacity 0.6s, -webkit-transform 0.4s;
					opacity: 0;
				}

					.blog-featured-single:hover i {
						-webkit-transform: translate(0px, -50%);
						    -ms-transform: translate(0px, -50%);
						        transform: translate(0px, -50%);
						opacity: 1;
					}

			.blog-featured-image:after {
			    content: '';
			    position: absolute;
			    top: 0;
			    bottom: 0;
			    left: 0;
			    right: 0;
			    z-index: 1;
			    zoom: 1;
			    background-image: -webkit-linear-gradient(rgba(0,0,0,0) 30%,rgba(0,0,0,0.9) 100%);
			    background-image: -o-linear-gradient(rgba(0,0,0,0) 30%,rgba(0,0,0,0.9) 100%);
			    background-image: -webkit-gradient(linear,left top, left bottom,color-stop(30%, rgba(0,0,0,0)),to(rgba(0,0,0,0.9)));
			    background-image: linear-gradient(rgba(0,0,0,0) 30%,rgba(0,0,0,0.9) 100%);
			    -webkit-transition: -webkit-transform 0.4s;
			    transition: -webkit-transform 0.4s;
			    -o-transition: transform 0.4s;
			    transition: transform 0.4s;
			    transition: transform 0.4s, -webkit-transform 0.4s;
			    -webkit-transform: translateY(30%);
			        -ms-transform: translateY(30%);
			            transform: translateY(30%);
			}

				.blog-featured-single a:hover > div:after {
					-webkit-transform: translateY(0%);
					    -ms-transform: translateY(0%);
					        transform: translateY(0%);
				}

		.blog-featured-single p {
			padding: 20px 20px 0;
			margin: 0;
			font-size: 14px;
		}

.blog-container {
	display: block;
	margin-top: 50px;
}

	.blog-posts {
		float: left;
		width: calc(100% - 400px);
	}

		.blog-single {
			width: 100%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			clear: both;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
		}

		.blog-single:not(:first-of-type) {
			margin-top: 40px;
		}

			.blog-single-image {
			    width: 250px;
			    height: 175px;
			    background-size: cover;
			    background-repeat: no-repeat;
			    position: relative;
			    -webkit-box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.4);
			            box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.4);
			    overflow: hidden;
			}

				.blog-single-image i {
					position: absolute;
					top: 50%;
					left: 50%;
					-webkit-transform: translate(-50%, -50%);
					    -ms-transform: translate(-50%, -50%);
					        transform: translate(-50%, -50%);
					color: #fff;
					z-index: 2;
					opacity: 0;
					-webkit-transition: opacity 0.4s;
					-o-transition: opacity 0.4s;
					transition: opacity 0.4s;
				}

					.blog-single-image:hover i {
						opacity: 1;
					}

				.blog-single-image:before {
					content: '';
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					background: #000;
					opacity: 0;
					pointer-events: none;
					-webkit-transition: opacity 0.4s;
					-o-transition: opacity 0.4s;
					transition: opacity 0.4s;
					z-index: 1;
			   		border-radius: 10px;
				}

					.blog-single-image:hover:before {
						opacity: 0.5;
					}

			.blog-single-content {
			    width: calc(100% - 290px);
			    margin-left: 40px;
			    -ms-flex-item-align: center;
			        align-self: center;
			    padding-right: 30px;
			}

				.blog-single strong {
					display: block;
				}

				.blog-single small {
					display: block;
					font-style: 12px;
					opacity: 0.6;
				}

				.blog-single p {
					margin: 10px 0;
				}

				.blog-single-content a {
				    color: #d81717;
				    text-transform: uppercase;
				    font-size: 14px;
				    font-weight: 500;
				    position: relative;
				    overflow: hidden;
				    display: inline-block;
				    line-height: 1.27;
				}

					.blog-single-content a:after {
						content: '';
					    position: absolute;
					    bottom: 0;
					    left: 0;
					    width: 100%;
					    height: 2px;
					    background: #222;
					    -webkit-transform: translateY(3px);
					        -ms-transform: translateY(3px);
					            transform: translateY(3px);
					    -webkit-transition: -webkit-transform 0.6s ease;
					    transition: -webkit-transform 0.6s ease;
					    -o-transition: transform 0.6s ease;
					    transition: transform 0.6s ease;
					    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
					}

						.blog-single-content a:hover:after {
						    -webkit-transform: translateY(0px);
						        -ms-transform: translateY(0px);
						            transform: translateY(0px);
						}

	.blog-sidebar {
		width: 350px;
		float: left;
		margin-left: 50px;
		position: relative;
	}

		.blog-sidebar:before {
			content: '';
			position: absolute;
			top: 0;
			left: -26px;
			height: 100%;
			width: 2px;
			background: #d81717;
		}

.error-404 {
	margin: 100px 0;
}

	.error-title {
		width: 100%;
		position: relative;
		text-align: center;
	}

		.error-title span {
		    font-size: 350px;
		    line-height: 0.8;
		}

		.error-title img {
			max-width: 270px;
			margin: 0 10px;
		}

	.error-404 .page-content {
		text-align: center;
	}

		.error-404 .page-content p {
			padding-top: 50px;
			font-size: 22px;
		}