@import url("https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,700italic,300,400,600,700");
/* Typography */
body,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
}

#content h1, #content h2, #content h3, #content h4, #content h5, #content h6 {
    font-weight: 600;
	color: #d40d43;
}

@media screen and (min-width: 64em) {
	#content h1, #content h2, #content h3, #content h4, #content h5, #content h6 {
		font-weight: 400;
	}
}

hr {
    border: 0;
    height: 0;
    border-top: 1px solid rgba(0,0,0,.1);
    border-bottom: 1px solid rgba(255,255,255,.3);
	max-width: 71.250rem;
}

ul {
	list-style: circle;
}

.button {
	font-weight: 600;
}

.crumbs {
	font-size: 0.688rem;
	font-weight: 300;
	color: #999;
}

/* Row */
.row {
	max-width: 71.250rem;
}

.row-padding {
	padding: 2rem 0;
}

.no-bottom-padding {
	padding-bottom: 0;
}

.collapse-padding {
	padding-left: 0.9375rem;
    padding-right: 0.9375rem;
}

@media screen and (min-width: 64em) {
	.row-padding {
		padding: 4rem 0;
	}
	
	.no-bottom-padding {
		padding-bottom: 0;
	}
	
	.collapse-padding {
		padding-left: 0;
		padding-right: 0;
	}
}

/* Intro */
.home-intro {
	background-image: linear-gradient(rgba(0,0,0,0.4),rgba(0,0,0,0.2)), url(../img/intro-bg-small.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.home-intro .row {
	padding: 4rem 0;
}

.page-intro {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-image: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.5)), url(../img/hero-bg-small.jpg);
}

.page-intro .row {
	padding: 1rem 0;
}

.page-intro h1 {
	margin: 0 0 1rem;
	padding: 1rem 0;
	border-bottom: solid 3px #d40d43;
	text-transform: uppercase;
	letter-spacing: 0.2rem;
	text-shadow: 1px 2px 5px rgba(0,0,0,0.75);
}

.intro-logo img {
	max-width: 200px;
}

.home-intro a {
	text-shadow: 1px 2px 5px rgba(0,0,0,0.75);
}

.intro-button {
	padding-top: 1rem;
	opacity: 0.75;
	color: #f5f5f5;
	transition: all 0.2s ease-in-out 0s;
}

.intro-button:active, .intro-button:focus {
	opacity: 0.75;
	color: #f5f5f5;
}

.intro-button:hover {
	opacity: 1;
	color: #f5f5f5;
}


@media screen and (min-width: 40em) {
	.home-intro {
		background-image: linear-gradient(rgba(0,0,0,0.4),rgba(0,0,0,0.2)), url(../img/intro-bg-medium.jpg);
	}
	
	.page-intro {		
		background-image: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.5)), url(../img/hero-bg-medium.jpg);
	}
}

@media screen and (min-width: 64em) {
	.home-intro {
		background-image: linear-gradient(rgba(0,0,0,0.4),rgba(0,0,0,0.2)), url(../img/intro-bg-large.jpg);
	}
	
	.home-intro .row {
		padding: 6rem 0;
	}
	
	.intro-logo img {
		max-width: 400px;
	}
}

/* Header */
#header {
	position: relative;		
	padding: 0;
	z-index: 100;
	box-shadow: 0 0.125rem 0.5rem rgba(0,0,0,0.75);
}

@media screen and (min-width: 64em) {
	#header {
		box-shadow: none;
	}
}

/* Menu */
.toggle-nav {
	padding: 1rem;
}

.toggle-img img {
	max-width: 175px;
}

.toggle-btn {
	cursor: pointer;
	font-size: 1.75rem;
	line-height: 1;
	color: #d40d43;
}

.main-nav {
	display: none;
	padding: 0;
}

.sticky-nav {
	position: fixed;
	display: none;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 100;
}

.main-nav , .sticky-nav {
	box-shadow: none;	
}

.menu > li > a {
	font-weight: 600;
	padding: 1rem 1.5rem;
	color: #f5f5f5;
	background: transparent;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.75);
	transition: all 0.2s ease-in-out 0s;
}

.menu > li > a:hover {
	color: #d40d43;
}

@media screen and (min-width: 64em) {
	.main-nav {
		display: block !important;
	}
	
	.main-nav.hide {
		visibility: hidden;
	}
	
	.main-nav , .sticky-nav {
		box-shadow: 0 0.125rem 0.5rem rgba(0,0,0,0.75);	
	}
	
	.menu > li > a {
		font-size: 0.875rem;
		padding: 1.25rem 0.75rem;
	}
}


/* Hero */
@media screen and (min-width: 64em) {
	#hero-large {
		border-bottom: solid 5px #d40d43;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		background-attachment: scroll;		
		background-image: linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.5)), url(../img/hero-bg-large.jpg);
	}
	
	.hero-large {
		padding: 0;
	}
	
	.hero-logo-large {
		padding-top: 1rem;
	}
	
	.hero-logo-large img {
		max-width: 125px;
	}
	
	.hero-text-large img {
		max-width: 260px;
	}
}

/* Image */
.img-border {
    border: solid 1px rgba(0,0,0,.3);
}

.img-box {
	position: relative;
}

.img-box::before {
	content: "";
	display: block;
	padding-top: 100%; 	/* initial ratio of 1:1*/
}

.img-box-img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: #ececec;
}

/* ratios */
.ratio2-1::before{
	padding-top: 50%;
}
.ratio1-2::before{
	padding-top: 200%;
}
.ratio4-3::before{
	padding-top: 75%;
}
.ratio16-9::before{
	padding-top: 56.25%;
}


/* Portfolio */
.img-feed-img {
	cursor: pointer;	
}

.btn_container {
	text-align: center;
	margin: 1.25rem 0;
}

.load_btn {
	font-weight: 600;
	margin: 0;
}

.loading i {
	color: #d40d43 !important;
}

.feed-img .img-box-img {
	cursor: pointer;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

@media screen and (min-width: 64em) {
	.img-box.feed-img {
		margin-bottom: 1.875rem;
	}
	
	.img-box.feed-img::before {
		padding-top: 56.25%;
	}
	
	.btn_container {
		margin: 0 0 1.25rem 0;
	}
}

/* About */
.about-img {
	position: relative;
}

.about-img div {
	position: absolute;
	top: 0;
	left: 0.9375rem;
	bottom: 0;
	right: 0.9375rem;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

#recycle h4 {
	color: #00CC00;
}

/* Home Page Services */
.srv-home-itm {
	padding-top: 0;
    padding-bottom: 0.9375rem;
}

.srv-home-itm .img-box-img {
	display: flex;
	justify-content: center;
	align-items: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.srv-home-img-txt {
	flex-grow: 1;
}

.srv-home-img-txt p {
	margin: 0;
	padding: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.35rem;
	background: rgba(0,0,0,0.5);
	text-shadow: 1px 1px 2px rgba(0,0,0,0.9);
}
.srv-home-itm .img-box-img p {
	transition: color 0.2s linear 0s;
}
.srv-home-itm .img-box-img:hover p {
	color: #d40d43;
}

.services-home-button  {
	margin: 0.9375rem 0 0 0;
}

@media screen and (min-width: 40em) {
	.srv-home-itm {
		padding-bottom: 1.875rem;
	}
}

@media screen and (min-width: 64em) {
	.services-home-button {
		margin: 0;
	}
}		

/* Home Page Ratings */
#reviews h2 {
	color: #f5f5f5;
}

.rating {
	margin-bottom: 1rem;
}

.orbit-bullets button {
	width: 1.2rem;
    height: 1.2rem;
    margin: 0.2rem;
	border: solid 2px #f5f5f5;
	background-color: #d40d43;
	transition: all 0.2s linear 0s;
}

.orbit-bullets button:hover, .orbit-bullets button.is-active{
	background-color: #f5f5f5;
}

/* Home Page News */

.news-home-button {
	margin: 0.9375rem 0 0 0;
}
@media screen and (min-width: 40em) {
	.news-home-button {
		margin: 0;
	}
}

/* Home Page Portfolio */

.portfolio-home-button  {
	margin: 1.875rem 0 0 0;
}

@media screen and (min-width: 64em) {
	.portfolio-home-button {
		margin: 0;
	}
}

/* News Feed */

.news-itm {
	display: flex;
	flex-direction: column;
	padding-top: 0;
	padding-bottom: 0.9375rem;
	background: linear-gradient(#f4f4f4,#f4f4f4) no-repeat;
	background-origin: content-box;
}

.news-itm .news-img .img-box-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.news-itm .news-txt {
	flex-grow: 1;
	padding: 1rem;
}

.news-itm .news-txt p {
	margin: 0;
}

.news-itm .news-btn, .news-itm .news-date {
	padding: 0 1rem 1rem;
}

.news-itm .news-btn p {
	font-size: 0.875rem;
	color: #999;
	margin: 0;
}

.news-itm .news-date p {
	margin: 0;
}

.news-itm .news-btn a.button {
	margin: 0;
}

@media screen and (min-width: 40em) {
	.news-itm {
		padding-bottom: 1.875rem;
	}
}

/* News Post */
.news-list {
	margin-bottom: 1rem;
}

.multi-img .news-img {
	margin: 0;
}

.news-list .news-img .img-box-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.news-list .img-box-img {
	cursor: pointer;
}

.single-img .img-box.news-img::before {
	padding-top: 56.25%;
}

#video-player {
	margin: 0 0 1em 0;
	border: solid 1px #2f2f2f;
}

.news-date {
	font-size: 0.875rem;
	font-weight: 300;
	color: #d40d43;
}

@media screen and (min-width: 64em) {	
	.news-list.multi {
		margin-bottom: 0;
	}
	
	.multi-img .news-img {
		margin: 0 0 1.875rem 0;
	}
}

/* News Side Panel */
.news-sp-itm {	
	display: flex;
	flex-direction: column;
	padding-bottom: 1.875rem;
	background: linear-gradient(#f4f4f4,#f4f4f4) no-repeat;
	background-origin: content-box;
}

.news-sp-itm .news-sp-img .img-box-img {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.news-sp-itm .news-sp-img {
	background: #ececec;
}

.news-sp-itm .news-sp-txt {
	flex-grow: 1;
	padding: 1rem;
}

.news-sp-itm .news-sp-date {
	font-size: 0.875rem;
	font-weight: 300;
	color: #d40d43;
	padding: 0 1rem 1rem;
}

.news-sp-itm .news-sp-date p {
	margin: 0;
}

.news-sp-itm .news-sp-btn {
	padding: 0 1rem 1rem;
}

.news-sp-itm p {
	font-size: 0.875rem;
	margin: 0;
}

.news-sp-itm a.button {
	font-size: 0.75rem;
	font-weight: 400;
	padding: 0.75em;
	margin: 0;
}

@media screen and (min-width: 64em) {
	.news-sp-itm {
		padding-top: 0;
		padding-bottom: 0.9375rem;
	}
	
	.news-sp-button {
		width: 100%;
	}
}

/* Contact Form */
#result, #sending {
    display: none;
}

#formResults > div {
	padding-bottom: 1.5rem;
}

#contactForm label.error {
	color: #F00;
}


/* Google Map */
.embed-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 Ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 64em) {
	.embed-container {
		padding-bottom: 0;
		height: 100%;
	}
}

.logos div {
	display: inline-block;
}

.div-link {
	cursor: pointer;
}

/* Services */
.srv-itm {
	
	padding-top: 0;
	padding-bottom: 0.9375rem;
	background: linear-gradient(#f4f4f4,#f4f4f4) no-repeat;
	background-origin: content-box;
}

.srv-img {
	background: #ececec;
}

.srv-itm .srv-img {
	margin: 0;
}

.srv-itm .srv-img .img-box-img {
	display: flex;
	justify-content: center;
	align-items: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.srv-itm .srv-img .img-box-img .srv-img-txt {
	flex-grow: 1;
}

.srv-itm .srv-img .img-box-img .srv-img-txt p {
	margin: 0;
	padding: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.35rem;
	color: #f5f5f5;
	background: rgba(0,0,0,0.5);
	text-shadow: 1px 1px 2px rgba(0,0,0,0.9);
}

.srv-itm .srv-img .img-box-img p {
	transition: color 0.2s linear 0s;
}
.srv-itm .srv-img .img-box-img:hover p {
	color: #d40d43;
}

.srv-itm .srv-txt {
	padding: 1rem;
}

.srv-itm .srv-btn {
	padding: 0 1rem 1rem;
}

.srv-itm .srv-btn a.button {
	margin: 0;
}

@media screen and (min-width: 40em) {
	.srv-itm {
		padding-bottom: 1.875rem;
		display: flex;
		flex-direction: column;
	}
	
	.srv-itm .srv-txt {
		flex-grow: 1;
	}
}


/* Service Details */
.srv-dtl .srv-img {
	margin-bottom: 1rem;
}

/* Services Side Panel List */
.srvlist-itm {
	margin-bottom: 0.375rem;
}
.srvlist-itm:last-of-type {
	margin-bottom: 0;
}

.srvlist-img {
	padding-right: 0;
}

.srvlist-txt {
	font-size: 0.875rem;
}

/* Social Buttons */
.social-buttons {
	margin-bottom: 1rem;
}

@media screen and (min-width: 64em) {
	.contact.social-buttons {
		margin-bottom: 0;
	}
}

/* Quote */
.quote-text p {
	margin-bottom: 1rem;
	font-weight: 600;
}

.quote-btn a {
	display: block;
	line-height: 1;
	color: #d40d43;
	font-weight: 600;
	background: #f5f5f5;
	opacity: 1;
	border: none;
    border-radius: 3px;
    padding: 0.85em 1em;
	transition: all 0.2s linear 0s;
}

.quote-btn a:hover {
	opacity: 0.9;
}

@media screen and (min-width: 64em) {
	.quote-text p {
		margin-bottom: 0;
	}
}

/* Footer */
.footer-list {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
}

.footer-list li {
	height: 2.5rem;
}

.footer-list-icon, .footer-list-text {
	line-height: 2.5rem;
}

.footer-list-icon {
    vertical-align: middle;
	margin-right: 1rem;
}

#footer h4 {
	color: #d40d43;
}

.footer-list-icon,
.footer-list-text,
#sub-footer,
#footer a,
#footer p {
	color: #ababab;
	transition: color 0.2s linear 0s;
}

#footer a:hover {
	color: #d40d43;
}

#sub-footer {	
	font-size: 0.875rem;
}

.sub-footer-hr div {
	margin: 2rem 0 1rem;
	border-top: solid 3px #d40d43;
}

.footer-logo img {
	max-width: 125px;
	padding-bottom: 2em;
}

@media screen and (min-width: 64em) {
	.footer-logo img {
		max-width: 175px;
		padding-bottom: 2em;
	}
}

/* Background Colours */
.bg-color-default {
	background-color: #fefefe !important;
	color: #0a0a0a;
}

.bg-color-purple {
	background-color: #d40d43 !important;
	color: #f5f5f5;
}

.bg-color-grey-dark {
	background-color: #2f2f2f !important;
	color: #f5f5f5;
}

.bg-color-black {
	background-color: #202020 !important;
	color: #f5f5f5;
}

/* Back to Top Button */
a.back-to-top {
	display: none;	
	position: fixed;
	bottom: 0.9375rem;
	right: 0.9375rem;
	padding: 0.625rem 1rem;
	margin: 0;
	text-align: center;
	z-index: 101;
	outline: none;
	background: rgba(212,13,67,0.7);
	color: rgba(255,255,255,0.7);
	box-shadow: 0 3px 5px rgba(0,0,0,0.40);
}

a.back-to-top i {
	font-size: 1.5rem;
	line-height: 1;
}

/* Message Box */
.mb_info, .mb_success, .mb_warning, .mb_error {
	border: 1px solid;
	margin: 0;
	padding:15px 10px 15px 50px;
	background-repeat: no-repeat;
	background-position: 10px center;
}
.mb_info {
	color: #00529B;
	background-color: #BDE5F8;
	background-image: url('../img/message-box/info.png');
}
.mb_success {
	color: #4F8A10;
	background-color: #DFF2BF;
	background-image:url('../img/message-box/success.png');
}
.mb_warning {
	color: #9F6000;
	background-color: #FEEFB3;
	background-image: url('../img/message-box/warning.png');
}
.mb_error {
	color: #D8000C;
	background-color: #FFBABA;
	background-image: url('../img/message-box/error.png');
}