/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ===============
    ALL: IE Fixes
   =============== */

.ie7 .title {
    padding-top: 20px;
}

/* ==========================================================================
   Custom styles
   ========================================================================== */

* {-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}

body {
    margin:0; padding:0; font-family: 'Roboto', sans-serif;
}

p, h1, h2, h3, a {
    margin: 0; padding: 0; color: #58595B; font-weight: 400;
}

h1 {
    font-size: 78px; line-height: 1; font-weight: 900;    
}

h2 {
    font-size: 48px; line-height: 1; font-weight: 900;
}

h3 {
    font-size: 24px; font-weight: 900; line-height: 30px;
}

p {
    font-size: 16px;
}

a {
    font-size: 14px; font-weight: 900; text-decoration: none; cursor: pointer;  
}

a {
  opacity: 1;
  transition: opacity 0.2s linear;
}

a:hover {
  opacity: 0.5;
}

.multi-p {
    -webkit-column-count: 2; /* Chrome, Safari, Opera */
    -moz-column-count: 2; /* Firefox */
    column-count: 2;
    -webkit-column-gap: 50px; /* Chrome, Safari, Opera */
    -moz-column-gap: 50px; /* Firefox */
    column-gap: 50px;     
}

.cenV {
    font-size: 0;
}

.cenV:before {
    content: ""; display: inline-block; height: 100%; vertical-align: middle;
}

.cenV > * {
    display: inline-block; vertical-align: middle; 
}

.btn {
    padding: 5px 10px; border-radius: 10px; background-color: rgba(0,0,0,0.6); display: inline-block;
    -webkit-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
}

.direct_wrap {
    text-align: center;
}

.direct_wrap .btn {
    color: #FFF; margin: 30px 0 30px 0;
}

/* ==========================================================================
   COLUMNS */

.maxW {
    width: 100%; max-width: 1080px; margin: 0 auto; box-sizing: border-box; padding: 0 50px;
}

.col-1, .col-2, .col-3, .col-4, .col-3-1, .col-2-1-1 {
    font-size: 0;
}

.col-1 img, .col-2 img, .col-3 img, .col-4 img, .col-3-1 img, .col-2-1-1 img {
    width: 100%;
}

.col-1 > div, .col-2 > div, .col-3 > div, .col-4 > div, .col-3-1 > div, .col-2-1-1 > div {
    display: inline-block; vertical-align: top; box-sizing: border-box; padding: 30px;
}

.col-1 > div {
    width: 100%; 
}

.col-2 > div {
    width: 50%;
}

.col-3 > div {
    width: 33.33%; 
}

.col-4 > div {
    width: 25%; 
}

.col-3-1 > div:first-of-type {
    width: 75%;
}

.col-3-1 > div:last-of-type {
    width: 25%;
}

.col-2-1-1 > div {
    width: 25%;
}

.col-2-1-1 > div:first-of-type {
    width: 50%;
}

.fullBG {
    width: 100%; padding-top: 300px; padding-bottom: 200px; background-color: grey; position: relative; z-index: -1; position: relative;
}

.bg-img {
    background-repeat: no-repeat; background-size: cover;
    width: 100%; height: 100%; opacity: 0.6; position: absolute; top: 0; left: 0; z-index: -1;
}

.bg-desc * {
    color: #FFF; text-align: right;
}

.bg-desc h2 {
    margin-bottom: 20px;
}

/* ==========================================================================
   THEME */

body.theme-green header * {
    color: #84B864;
}

body.theme-green header table.nav-wrap tr:first-of-type td {
    border-right: 1px solid #84B864;
}

body.theme-green footer {
    background-color: #84B864;
}

.loading {
    background-image: url('../img/loading.gif');
    background-repeat: no-repeat; background-position: center; background-size: 30px auto;
}

/* ==========================================================================
   HEADER */

header, menu-wrap {
    width: 100%; position: fixed; top: 20px; left: 0; right: 0; z-index: 99;
}

header * {
    color: #FFF;
}

.logo {
    width: 100px; float: left;    
}   

.logo img {
    width: 100%;
}

table.nav-wrap {
    width: auto; float: right; margin-top: 35px;
}

table.nav-wrap td {
    width: 130px; text-align: center;
}

table.nav-wrap tr:first-of-type td {
    border-right: 1px solid #FFF;
}

.drop-nav i {
    margin-left: 5px;
}

table.nav-wrap .drop-down {
    display: none;
}

table.nav-wrap .drop-down a {
    display: block; margin-top: 10px; opacity: 0;
}

.menu-btn {
    position: fixed; top: 50px; right: 35px; z-index: 99; cursor: pointer; display: none;
    background-color: #84B864; padding: 5px 10px; border-radius: 10px;
    -webkit-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);       
}

.menu-btn i {
    font-size: 38px; color: #FFF;
}

.menu {
    width: 100%; height: 100%; background-color: #84b864; position: fixed; top: 0; right: 0; transform: translateX(100%); z-index: 98;
    box-sizing: border-box; padding: 35px; text-align: center;
}

.menu div > div {
    margin-bottom: 20px;     
}

.menu a {
    font-size: 22px; color: #FFF;
}

.close-menu {
    text-align: right; margin-bottom: 20px;
}

.close-menu i {
    font-size: 40px;
}

/* ==========================================================================
   HOME SLIDER */

.home-slider {
    width: 100%; position: relative; overflow: hidden;
    padding-top: 280px; padding-bottom: 200px; 
}

.slider-nav {
    margin-bottom: 20px;
}

.slider-nav .left-btn, .home-slider .right-btn {
    width: 30px; height: 30px; text-align: center; line-height: 30px; background-color: rgba(0,0,0,0.6); border-radius: 30px; cursor: pointer;
    -webkit-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);    
}

.slider-nav .left-btn {
    margin-right: 10px;
}

.slider-indi {
    margin-left: 20px;
}

.slider-indi > div {
    width: 5px; height: 5px; border: 1px solid #FFF; border-radius: 5px; margin-left: 5px;
}

.slider-indi > div:first-of-type {
    background-color: #FFF; margin-left: 0;
}

.slider-more * {
    color: #FFF;
}

.slider-more .btn {
    margin-top: 50px;
}

.slide-bg {
    height: 100%; position: absolute; top: 0; left: 0; z-index: -1;
    font-size: 0; background-color: grey;
}

.slide-bg > div {
    width: 25%; height: 100%; display: inline-block;
    background-repeat: no-repeat; background-position: center; background-size: cover; opacity: 0.6;
}

.slide-title {
    text-transform: uppercase; 
}

/* ==========================================================================
   ABOUT */

.green-text h2 span, .green-text h3 span {
    font-weight: 300;  color: #58595B;
}   

.green-text h2, .green-text h3 {
    color: #84B864;
}   

.box-title {
    padding-top: 50px; 
}

.box-title .btn {
    color: #FFF; margin-top: 30px;
}

.box-title-r {
    text-align: right;
}

.box-title h2 {
    margin-bottom: 10px;
}

.box-title h3 {
    margin-bottom: 30px;
}

.about-img1 {
    margin-top: -100px; margin-bottom: -5px; position: relative; z-index: -1;
}

.we-are {
    text-align: center; margin-top: 30px;
}

.we-img {
    width: 100%; height: auto; background-color: grey; margin-bottom: 30px;
}

.we-are h3 {
    margin-bottom: 5px;
}

.mob_show {
    display: none !important;
}


/* ==========================================================================
   SERVICES */

.service-list {
    background-color: #84B864; margin-top: -60px; margin-bottom: 30px;
    -webkit-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);    
}

.service-list > div {
    width: 100%; max-width: 530px; box-sizing: border-box; padding: 0 10px; 
}

.service-list p {
    color: #FFF; display: block; margin-bottom: 5px; font-size: 18px;
}

.service-list a:last-of-type {
    margin-bottom: 0;
}


.service-list h3 {
    margin-bottom: 10px;
}

.service-col hr {
    margin: 25px 0; opacity: 0;
}

.service-col h3 {
    margin-bottom: 10px;
}

.service-col p {
    margin-bottom: 20px;
}

.service-col img {
    display: block; width: 100%;
}

.garden-img {
    margin: -100px auto; position: relative; z-index: -1;
}

/* ==========================================================================
   CONTACT */

.contact {
    padding-top: 180px; padding-bottom: 100px;
 }

.map {
    width: 100%; height: 400px;
    -webkit-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);
    box-shadow: 0px 5px 10px -4px rgba(0,0,0,0.4);    
}

.contact-wrap h3, .contact-wrap p {
    margin-bottom: 10px;
}

.contact-wrap h3:last-of-type {
    margin-top: 20px;
}

.contact-wrap p:last-of-type {
    margin-bottom: 0px;
}

/* ==========================================================================
   FOOTER */

div.footerPush {
    width: 100%; height: 50px;
}   

footer {
     width: 100%; padding: 100px 0; background-color: #84b864;
}

.footer * {
    color: #FFF;
}

.footer h3, .contact-wrap h3 {
    margin-bottom: 20px;
}

.footer .btn {
    margin-top: 20px;
}

.ft-about p:first-of-type {
    margin-bottom: 10px;
}

.ft-services a {
    font-weight: 400; display: block; width: 100%; padding: 5px 0; border-bottom: 1px solid #FFF;
}

.ft-services a:first-of-type {
    padding-top: 0;
}

.ft-contact img {
    width: 18px; float: left;
}

.ft-contact p  {
    width: auto; margin-left: 25px;
}

.ft-contact > div {
    margin-bottom: 10px;
}

.ft-contact > div:last-of-type {
    margin-bottom: 0px;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 960px) {

/* ==========================================================================
   HEADER */

table.nav-wrap {
    display: none;
}

.menu-btn {
    display: block;
}

header, menu-wrap {
    top: 0px;
}

/* ==========================================================================
   COLUMNS */

.maxW {
    padding-left: 10px; padding-right: 10px;
}   

.col-4 > div {
    width: 50%; padding: 25px 25px; 
}

.col-3-1 > div:first-of-type {
    width: 50%;
}

.col-3-1 > div:last-of-type {
    width: 50%;
}

.col-2-1-1 > div {
    width: 50%;
}

.col-2-1-1 > div:first-of-type {
    width: 100%;
}

/* ==========================================================================
   ABOUT */

.about-img1 {
    margin-top: -80px; position: relative; z-index: -1;
}

} /*end*/

@media only screen and (max-width: 640px) {

h1 {
    font-size: 38px; line-height: 1; font-weight: 900;    
}

h2 {
    font-size: 26px; line-height: 1; font-weight: 900;
}    

h3 {
    font-size: 18px; font-weight: 900; line-height: 1;
}

/* ==========================================================================
   COLUMNS */

.col-2 > div {
    width: 100%;
}

.col-3 > div {
    width: 100%;
}  

.col-3-1 > div:first-of-type {
    width: 100%; margin-bottom: 50px;
}

.col-3-1 > div:last-of-type {
    width: 100%;
}

.col-4 > div {
    width: 100%; padding: 25px 25px; 
} 

.col-2-1-1 > div {
    width: 100%;
}

.col-2-1-1 > div:first-of-type {
    width: 100%;
}

/* ==========================================================================
   ABOUT & SERVICES */

.box-title-r {
    text-align: left;
}

.we-are {
    text-align: left;
}

.mob_hide {
    display: none !important;
}

.mob_show {
    display: block !important;
}

.garden-img {
    margin: 0px auto;
}


/* ==========================================================================
    CONTACT */

.contact {
    padding-top: 180px; padding-bottom: 20px; 
}

/* ==========================================================================
   SERVICES */

.fullBG {
    padding-top: 150px; padding-bottom: 150px;
}

.bg-desc * {
    text-align: left;
}

/* ==========================================================================
   FOOTER */

div.footerPush {
    height: 0px;
}   

footer {
    padding: 25px 0;
}

} /*end*/

/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}