@charset "utf-8";
/* CSS Document */


html, body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-optical-sizing: auto;
	font-family: "roboto", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #0c110f;
	background: #000;
}

/** Banner **/
#banner {
	width: 100%;
	padding: 10px 0 10px 0;
	border-bottom: 0.5px solid #b9f803;
}
#banner-logo {
	width: 100%;
	height: 60px;
	text-align: center;
	margin: 0 auto;
}
#banner-logo img {
	height: 100%;
}
#banner-navi {
	width: 100%;
}
#banner-contact {
	width: 100%;
	padding: 10px 0 0 0;
	text-align: center;
	font-size: 1.25em;
	color: #fff;
	font-weight: 900;
}
#banner-navigation {
	width: 100%;
	padding: 0;
	margin: 0 0 0 0;
}
@media (min-width: 992px) {
#banner {
	padding: 10px 2% 10px 2%;
}
#banner-logo {
	margin-top: 15px;
	width: 300px;
	height: auto;
}
#banner-logo img {
	height: 100%;
	width: 100%;
	object-fit: contain;
}
#banner-navi {
	width: 100%;
}
#banner-contact {
	padding: 10px 0 0 0;
	font-size: 1.65em;
	text-align: right;
}
#banner-navigation {
	width: 100%;
	padding: 10px 0 0 0;
	margin: 0;
}
}
@media (min-width: 1200px) {
#banner {
	padding: 10px 2% 10px 2%;
}
#banner-contact {
	padding: 10px 0 0 0;
	font-size: 1.65em;
}
}
@media (min-width: 1400px) {
#banner {
	padding: 10px 8% 10px 8%;
}
#banner-logo {
	margin-top: 15px;
	width: 320px;
	heigh: auto;
}
}
@media (min-width: 1600px) {
#banner {
	padding: 10px 10% 10px 10%;
}
}

/* Content */
#content-index {
	
}
#content {
	padding: 50px 0;
	background: #fff;
}
.page-section {
	padding: 50px 2%;
}
@media (min-width: 1200px) {
.page-section {
	padding: 50px 5%;
}
}
@media (min-width: 1400px) {
.page-section {
	padding: 50px 10%;
}
}

.text-pic {
	width: 100%;
	height: 200px;
	margin: 0 0 20px 0;
}
.text-pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (min-width: 992px) {
.text-pic {
	width: 100%;
	height: 300px;
	margin: 0 0 20px 0;
}
}
@media (min-width: 1400px) {
.text-pic {
	width: 100%;
	height: 400px;
	margin: 0 0 20px 0;
}
}


/* Form */
.quote-form {
	font-weight: 800;
	text-align: center;
}
.quote-form h3 {
	background: #99cc00;
	padding: 8px 10px;
	color: #fff;
	text-transform: uppercase;
	font-size: 1.25em;
}
.form-panel {
	border: 1px solid #99cc00;
	text-align: center;
	padding: 10px 10px;
	margin: 10px 10px 10px 0;
	width: 230px;
	display: inline-block;
	background-color: #fff;
}
.form-panel h4 {
	font-size: 1em;
	background: #000;
	color: #fff;
	padding: 5px 0;
}
.form-panel p {
	font-size: 1em;
}
.form-panel label.form-check-label {
	font-size: 1em
}
label.form-check-label {
	font-size: 1em;
	font-weight: 400;
}
textarea.form-control {
	background: #eaeaea;
	border: none;
	border-radius: 0;
}
input.form-control {
	background: #eaeaea;
	border: none;
	border-radius: 0;
}
.contact-list {
	text-align: center;
	padding: 0 0 40px 0;
}
form {
	padding: 0;	
	border: none;
	text-align: center;
}
@media (min-width: 768px) {
.quote-form {
	margin: 50px 0 0 0;
	text-align: left;
}
}@media (min-width: 992px) {
form {
	padding-left: 30px;	
	border-left: .5px dotted #000;
	text-align: left;
}
.contact-list {
	text-align: right;
	padding: 0 0 40px 0;
}
}

/** Jumbo **/
#jumbo {
	width: 100%;
	background-image: url("../images/jumbo01.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 0 2%;
}
#jumbo-text-container {
	width: 95%;
	background: rgba(0,0,0,0.8);
	padding: 30px 10px 30px 10px;
	margin: 0 auto;
	text-align: center;
}
#jumbo-strap {
	width: 100%;
	padding: 10px 2% 25px 2%;
	background-color: #aee302;
}
.jumbo-strap-teaser {
	margin: 5px 0;
	text-align: center;
}
.jumbo-strap-icon {
	width: 50px;
	height: 40px;
	margin: 5px auto 10px auto;
}
.jumbo-strap-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.jumbo-strap-text span {
	font-weight: 900;
	letter-spacing: 0.5px;
}
@media (min-width: 442px) {
#jumbo-text-container {
	width: 95%;
	padding: 50px 10px 60px 10px;
}
}
@media (min-width: 576px) {
#jumbo-text-container {
	width: 80%;
	padding: 70px 10px 80px 10px;
}
}
@media (min-width: 768px) {
#jumbo-text-container {
	width: 70%;
	padding: 50px 10px 50px 10px;
}
}
@media (min-width: 992px) {
#jumbo {
	width: 100%;
	background-image: url("../images/jumbo01.jpg");
	background-position: right -50px center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 0 2%;
}
#jumbo-text-container {
	width: 60%;
	padding: 60px 20px 60px 30px;
	margin: 0;
	text-align: left;
}
#jumbo-strap {
	padding: 10px 0 15px 0;
}
.jumbo-strap-teaser {
	margin: 5px 0;
	text-align: left;
}
.jumbo-strap-icon {
	width: 50px;
	height: 40px;
	float: left;
	margin: 5px 10px;
}
}
@media (min-width: 1200px) {
#jumbo {
	background-position: right -10px center;
	padding: 0 4%;
}
#jumbo-text-container {
	width: 55%;
	padding: 60px 20px 60px 30px;
	margin: 0;
	text-align: left;
}
#jumbo-strap {
	padding: 20px 2% 25px 2%;
}
}
@media (min-width: 1400px) {
#jumbo {
	background-position: right 50px center;
	padding: 0 10%;
}
#jumbo-text-container {
	width: 65%;
	padding: 70px 50px 70px 50px;
	margin: 0;
	text-align: left;
}
#jumbo-strap {
	padding: 20px 10% 25px 10%;
}
}
@media (min-width: 1600px) {
#jumbo-text-container {
	width: 60%;
	padding: 90px 50px 90px 50px;
	margin: 0;
	text-align: left;
}
}
@media (min-width: 1800px) {
#jumbo-text-container {
	width: 50%;
	padding: 90px 50px 90px 50px;
	margin: 0;
	text-align: left;
}
}

/** Colour fills */
.greenfill {
	background: #aee302;
	color: #0c110f;
}
.whitefill {
	background: #fff;
	color: #0c110f;
}
.blackfill {
	background: #0c110f;
	color: #fff;
}
.dkgreenfill {
	background: #07140f;
	color: #fff;
}
.greentxt {
	color: #aee302;
}
.whitetxt {
	color: #fff;
}
.blacktxt {
	color: #000;
}
.greenborder {
	border: 1px solid #aee302!important;
}

/** Services **/
#services {
	padding: 50px 2%;
	background: #fff;
}
.service-panel {
	
}
.service-text {
	padding: 10px 0;
	text-align: center;
}
.service-panel-icon {
	width: 50px;
	height: 50px;
	margin: 0 0 10px 0;
}
.service-panel-icon img {
	width: 100%;
	height: 100%;
}
.service-panel-text {
	padding: 20px;	
}
.service-panel-pic {
	width: 100%;
	height: 150px;
}
.service-panel-pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (min-width: 992px) {
#services {
	padding: 100px 2%;
}
.service-panel-text {
	padding: 30px;	
}
.service-panel-pic {
	height: 200px;	
}
.service-text {
	padding: 10px 20%;
	text-align: center;
}
}
@media (min-width: 1200px) {
#services {
	padding: 100px 2%;
}
.service-panel-text {
	padding: 40px;	
}
}
@media (min-width: 1400px) {
#services {
	padding: 100px 10%;
}
}

/* Intro */
.intro {
	margin: 0 0 20px 0;
	padding: 0;
	text-align: center;
}
hr.intro-rule {
	border-bottom: 1px solid #aee302;
	width: 50%;
	float: left;
}
hr.intro-rule-center {
	border-bottom: 1px solid #aee302;
	width: 50%;
}
@media (min-width: 992px) {
.intro {
	margin: 0 0 40px 0;
	padding: 0 10%;
}
}

/* Packages */
#packages {
	width: 100%;
	padding: 50px 2%;
	background: #000;
}
.packages-panel {
	width: 100%;
	padding: 30px;
	border: 1px solid rgba(255,255,255,0.1);
	margin: 0 0 20px 0;
	posiion: relative;
}
.packages-popular {
	display: inline-block;
	background: #aee302;
	text-transform: uppercase;
	padding: 5px 15px;
	position: absolute;
	top: -34px;
	left: -1px;
	color: #000;
}
@media (min-width: 768px) {
.packages-panel {
	width: 100%;
	margin: 0 0 20px 0;
}
}
@media (min-width: 1400px) {
#packages {
	padding: 100px 10%;
}
.packages-panel {
	width: 100%;
	padding: 60px 30px;
	border: 1px solid rgba(255,255,255,0.1);
	margin: 20px 0 20px 0;
}
}

/* Halftone Back */
.halftone {
	background-image: url("../images/halftone-wht.svg");
	background-position: left -200px top -200px;
	background-repeat: no-repeat;
	background-size: 120%;
	opacity: 0.05;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -50;
}

/* Gallery */
#gallery {
	background: #fff;
	padding: 20px 10px;
}
.gallery-pic {
	width: 100%;
	height: 150px;
	margin: 0 0 20px 0;
}
.gallery-pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (min-width: 768px) {
#gallery {
	padding: 50px 10px;
}
.gallery-pic {
	height: 300px;
}
}

/* Process */
#process {
	background: #fff;
	padding: 20px 2% 50px 2%;
	background-size: 110%;
	background-repeat: no-repeat;
	background-position: left bottom 20px;
	height: auto;
}
.process-panel {
	width: 100%;
	height: auto;
	padding: 30px;
}

@media (min-width: 1400px) {
#process {
	padding: 50px 10% 50px 10%;
	background-size: 50%;
	background-position: left  bottom 20px;
}
}

/* Footer **/
#footer {
}
#footer-cta {
	background: #aee302;
	width: 100%;
	padding: 40px 2%;
	text-align: center;
}
#footer-cta h2 {
	font-size: 2em;
	font-weight: 900;
	color: #fff;
}
#footer-cta p {
	font-size: 1.25em!important;
	font-weight: 900;
}
#footer-cta p a {
	color: #000;
}
#footer-cta p a:hover {
	color: rgba(0,0,0,0.5);
}
#footer-contact {
	background: #000;
	width: 100%;
	padding: 50px 0;
	text-align: center;
}
#footer-logo {
	width: 200px;
	height: auto;
	margin: 0 auto;
}
#footer-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#footer-copyright {
	text-align: center;
	color: #fff;
}
@media (min-width: 768px) {
#footer-cta {
	background-image: url("../images/footerpic.png");
	background-position: right -180px center;
	background-repeat: no-repeat;
	background-size: 60%;
	text-align: left;
}
#footer-cta-text {
	width: 60%;	
}
}
@media (min-width: 992px) {
#footer-cta {
	padding: 50px 2%;
}
#footer-cta-text {
	width: 65%;	
}
#footer-cta h2 {
	font-size: 2.5em;
}
#footer-cta p {
	font-size: 1.5em!important;
}
#footer-contact {
	text-align: left;
	padding: 50px 5%;
}
}
@media (min-width: 1200px) {
#footer-cta {
	padding: 50px 3%;
	background-position: right -160px center;
	background-size: 50%;
}
}
@media (min-width: 1400px) {
#footer-cta {
	padding: 50px 11%;
	background-position: right center;
	background-size: 50%;
}
#footer-cta-text h2 {
	font-size: 3.25em;
}
}

/* Links */
a, p a { 
	color: #aee302;
	font-weight: 900;
}
a:hover, p a:hover { 
	color: #aee302;
	text-decoration: underline;
}
.greenfill p a { 
	color: #000;
	font-weight: 900;
}
.greenfill p a:hover { 
	color: #000;
	text-decoration: underline;
}
#footer a { 
	color: #fff;
	text-decoration: underline;
}
#footer a:hover { 
	color: #aee302;
	text-decoration: underline;
}

/* Lists */
.contact-list ul {
	list-style: none;
	margin-left: -40px;
	font-weight: 500;
	font-size: 1em;
	text-align: center;
	list-style-position: inside;
}
.page-section ul {
	list-style-position: inside;
}
.page-section li {
	font-size: 1em;
	margin: 3px;
}
@media (min-width: 992px) {
.contact-list ul {
	text-align: right;
}
}
.page-section li {
	font-size: 1.2em;
}
ul.packages-bullets {
 	list-style-type: none;
	margin: 20px 0 40px -15px;
}
ul.packages-bullets li {
	font-size: 1.1em;
	line-height: 1.5em;
	font-weight: 500;
	letter-spacing: 0.5px;
	margin: 0 0 5px 0;
}
ul.packages-bullets li:before {
	content: '';
	display: inline-block;
	height: 20px;
	width: 20px;
	background-size: contain;
	background-image: url("../images/tickbullet-green.svg");
	background-repeat: no-repeat;
	background-position: center;
	margin: 0 5px 0 -25px;
	position: relative;
	bottom: -5px;
	list-style-position: inside;
}
#footer ul {
	list-style-type: none;
	margin-left: -38px;
}

/** Text **/
.smallheader {
	text-transform: uppercase;
	color: #aee302;
	letter-spacing: 2px;
	font-weight: 900;
	font-size: .9em;
	line-height: 1.1em;
	display: block;
	margin: 0 0 10px 0;
}
#jumbo-text-container h1 {
	font-size: 2.25em;
	font-weight: 900;
	line-height: 1em;
	margin: 0 0 10px 0;
}
#jumbo-text-container p {
	font-size: 1.1em;
	font-weight: 500;
	line-height: 1.4em;
	margin: 20px 0 20px 0;
	letter-spacing: 0.5px;
	color: #fff;
}
.content-index h2 {
	font-size: 1.75em;
	font-weight: 900;
	line-height: 1.1em;
}
.content-index h2+p {
	font-size: 1.25em;
	font-weight: 700;
}
h1 {
	font-size: 2.5em;
	font-weight: 900;
	line-height: 1em;
}
h2 {
	font-size: 1.5em;
	font-weight: 900;
	line-height: 1.1em;
}
h3 {
	font-size: 1.5em;
}
h4 {
	color: #aee302;
	text-transform: uppercase;
	font-size: 1.25em;
}
h1+p {
	font-size: 1.25em;
	font-weight: 700;
}
p {
	font-size: 1em;
}
#footer p {
	color: #fff;
	font-size: 1em;
}
#jumbo-strap p {
	color: #000;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.3em;
	text-transform: uppercase;
	margin: 0;
}
#jumbo-strap p+p {
	color: #000;
	font-size: .9em;
	font-weight: 400;
	line-height: 1.1em;
	text-transform: none;
	margin: 0;
}
@media (min-width: 576px) {
#jumbo-text-container h1 {
	font-size: 2.75em;
	margin: 0 0 10px 0;
}
}
@media (min-width: 768px) {
#jumbo-text-container h1 {
	font-size: 3.5em;
	margin: 0 0 10px 0;
}
}
@media (min-width: 992px) {
.smallheader {
	font-size: 1.2em;
}
#jumbo-text-container h1 {
	font-size: 4em;
	margin: 0 0 10px 0;
}
#jumbo-text-container p {
	font-size: 1.3em;
}
@media (min-width: 1200px) {
#jumbo-text-container h1 {
	font-size: 4.5em;
	margin: 0 0 10px 0;
}
#jumbo-text-container p {
	font-size: 1.5em;
}
.content-index h2 {
	font-size: 3.5em;
}
.content-index h2+p {
	font-size: 1.5em;
}
.content-index h3 {
	font-size: 2em;
	font-weight: 900;
}
#packages h2 {
	font-size: 3.5em;
}
#packages h2+p {
	font-size: 1.5em;
}
#packages h3 {
	font-size: 2em;
	font-weight: 900;
}
h1 {
	font-size: 3.5em;
}
h2 {
	font-size: 1.75em;
}
h1+p {
	font-weight: 700;
	font-size: 1.5em;
}
p {
	font-size: 1.2em;
}
#jumbo-strap p {
	font-size: 1.1em;
}
#jumbo-strap p+p {
	font-size: 1em;
}
}
@media (min-width: 1400px) {
#jumbo-text-container h1 {
	font-size: 5.5em;
	margin: 0 0 10px 0;
}

}


Roboto Light {
font-family: "roboto", sans-serif;
font-weight: 300;
font-style: normal;
}
Roboto Regular {
font-family: "roboto", sans-serif;
font-weight: 400;
font-style: normal;
}
Roboto Medium {
font-family: "roboto", sans-serif;
font-weight: 500;
font-style: normal;
}
Roboto SemiBold {
font-family: "roboto", sans-serif;
font-weight: 600;
font-style: normal;
}
Roboto Bold {
font-family: "roboto", sans-serif;
font-weight: 700;
font-style: normal;
}
Roboto ExtraBold {
font-family: "roboto", sans-serif;
font-weight: 800;
font-style: normal;
}
Roboto Black {
font-family: "roboto", sans-serif;
font-weight: 900;
font-style: normal;
}