/*   
Theme Name: Evergreen Rabbit Control Theme
Theme URI: http://www.evergreenrabbitcontrol.co.uk/
Description: Evergreen Rabbit Control Theme
Author: Rooster Marketing
Author URI: http://www.roostermarketing.com
Version: 1
*/

*/
* Global CSS resets for most HTML elements
 * Removes all browser-specific styling
*/

/* Ensure all elements don't expand their specified width with padding, borders etc. */
*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

/* Remove browser-specific styling (margin, padding etc.) from most major HTML elements */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li, 
fieldset, form, label, legend, input, textarea, select, 
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 1;
    outline: 0;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    border: 0;
}

ol, ul {
    list-style: none inside none;
}

input[type="button"],
input[type="submit"],
input[type="tel"],
input[type="email"],
input[type="text"],
input[type="file"],
textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    -webkit-border-radius: 0;
       -moz-border-radius: 0;
            border-radius: 0;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none; 
    margin: 0; 
}

select {
    -webkit-border-radius: 0;
       -moz-border-radius: 0;
            border-radius: 0;
}

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

/* Display settings for HTML5 elements for legacy browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

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

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

body {
    font-size: 16px;
    line-height: 1.4;
    font-family: "mrs-eaves",serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin:0;
    padding:0;
    color: #fff;
    border: 8px solid #fff;
    opacity: 1;
    transition: 1s opacity;
}

body.fade-out {
    opacity: 0;
    transition: none;
}

h1, h2, h3, h4, h5, h6{
    font-family: "trajan-pro-3",serif;
    font-weight: 400;
}

h1, 
h2,
h3 {
    font-size: 2em;
    line-height: 1.2;
    margin-bottom: 25px;
    letter-spacing: 0.04em;
}

p + h2,
p + h3,
ul + h2,
ul + h3 {
    margin-top: 45px;
}

h4 {
    font-size:22px;
}

h5 {
    font-size:20px;
}

h6 {
    font-size:18px;
}

p, a, ul {
    letter-spacing: 0.02em;
}

p {
    font-size: 16px;
    font-weight: 400;
    margin-top: 0;
    letter-spacing: 0.02em;
    margin-bottom: 1em;
}

p:last-of-type {
    margin-bottom: 0;
}

ul{
    padding: 0;
    margin: 0;
}
  
a {
    text-decoration: none;
    cursor: pointer;
    color: #fff;
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

a:hover{
    text-decoration:none;
}

.cover {
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.read-more {
    font-family: "trajan-pro-3",serif;
    font-size: 1.250em;
    font-style: normal;
    line-height: 1.6;
    position: relative;
    display: inline-block;
    text-align: center;
    cursor: pointer;
}

.read-more:before,
.read-more:after {
    content: '';
    display: block;
    position: absolute;
    height: 1px;
    width: 40px;
    top: 16px;
    background-color: #fff;
}

.read-more:before {
    left: -48px;
}

.read-more:after {
    right: -48px;
    float: right;
}

.indent p.intro-text,
.intro-text {
    font-family: "trajan-pro-3",serif;
    font-style: normal;
    font-size: 1.375em;
    letter-spacing: 0.04em;
    line-height: 1.363;
    margin-bottom: 20px;
}

.top-centre {
    top: 50%;
    position: absolute;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.3s ease-in-out;
       -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
         -o-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out;
}

.centered {
    top: 50%;
    left: 50%;
    position: absolute;
    -webkit-transform: translate(-50%);
    -moz-transform: translate(-50%);
    transform: translate(-50%);
    -webkit-transition: all 0.3s ease-in-out;
       -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
         -o-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out;
}

.large-italic,
.indent p.large-italic {
    font-style: italic;
    font-size: 2.000em;
    line-height: 1.312;
}

/*========================
Header
========================*/
header {
    position: absolute;
    width: -webkit-calc(100% - 16px);
    width: -moz-calc(100% - 16px);
    width: calc(100% - 16px);
    z-index: 999;
    padding: 15px;
    font-family: "trajan-pro-3",serif;
}

header ul{
    list-style-type: none;
}

header .top-header {
    margin-bottom: 10px;
}

header.home-header .top-header {
    margin-bottom: 15px;
}

.no-touchevents header a:hover {
    color: #FDE4A4;
}

/*========================
Main Menu
========================*/
#main-nav {
    display: block;
    text-align: center;
    margin-bottom: 50px;
}

header.home-header #main-nav {
    margin-bottom: 75px;
}

#second-nav {
    float: right;
    display: inline-block;
}

#header-widget {
    display: inline-block;
    font-style: normal;
}

#header-widget a,
#header-widget p {
    font-style: normal;
}

.logo {
    margin: 0 auto;
    display: block;
    position: relative;
    /* width: 100%; */
    max-width: 200px;
}

.home-header .logo {
    max-width: 250px;
}

.main-menu li {
    display: inline-block;
    /*margin-right: 30px;*/
    padding: 10px 15px;
}

.main-menu li:last-of-type {
    margin-right: 0;
}

.main-menu li a {
    color: #fff;
    font-family: "trajan-pro-3",serif;
    font-size: 1em;
}

.main-menu li.level-0 > a {
    padding-bottom: 20px;
}

.second-menu li {
    display: inline-block;
    margin-right: 15px;
}

.second-menu li:last-of-type {
    margin-right: 0;
}

.second-menu li a {
    font-size: 0.875em;
}

.main-menu li .sub-wrap {
    visibility: hidden;
    opacity: 0;
    z-index: -1;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
    text-align: left;
    top: 90px;
    -webkit-transition: all 0.3s ease-in-out;
       -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
         -o-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out;
}

.main-menu li.level-0 > .sub-wrap .sub-menu {
    padding: 30px 0;
}

.main-menu li .sub-wrap .sub-menu li {
   width: 25%;
   float: left;
   margin-right: 0;
   padding: 0 0;
}

.main-menu li .sub-wrap .sub-menu li a {
    font-size: 0.938em;
    line-height: 1.6666;
    padding-bottom: 8px;
    display: inline-block;
    padding-right: 20px;
}

.main-menu li .sub-wrap .sub-menu li .sub-menu {
    display: none;
}

.no-touchevents .main-menu li:hover > .sub-wrap {
    display: block;
    visibility: visible;
    opacity: 1;
    z-index: 1;
}
/*========================
Top banner
========================*/
.top-banner-wrap {
    position: relative;
    margin-bottom: 8px;
}

.top-banner-wrap .banner-text {
    position: absolute;
    width: 100%;
    bottom: 80px;
    z-index: 100;
    text-align: center;
}

.top-banner-wrap.fallback-banner .banner-text,
.top-banner-wrap.no-slider .banner-text {
    bottom: 40px;
}

.top-banner-wrap .text-wrap {
    width: 100%;
    max-width: 800px;
    padding: 0 20px;
    margin: 0 auto;
    text-align: center;

}

.top-banner-wrap .banner-text hr {
    width: 150px;
    border: none;
    height: 1px;
    background-color: #fff;
    margin: 0 auto;
    margin-bottom: 25px;
    display: block;
}

.top-banner-wrap.no-slider .banner-text h1,
.top-banner-wrap.no-slider .banner-text hr {
    margin-bottom: 20px;
}

.top-banner-wrap .banner-text p {
    font-size: 1.8em;
    line-height: 1.3;
    font-style: italic;
    letter-spacing: 0.02em
}

.top-banner {
    position: relative;
    height: 620px;
    text-align: center;
}

.top-banner-wrap {
    height: 620px;
}

.home-banner.top-banner-wrap,
.home-banner .top-banner {
    height: -webkit-calc(100vh - 16px);
    height: -moz-calc(100vh - 16px);
    height: calc(100vh - 16px);
}

.top-banner .item {
    height: 100%;
}

.owl-carousel.owl-drag.banner-slider .owl-item {
    float: left;
    height: 100%;
    height: 620px;
}

.home-banner .top-banner.owl-carousel.owl-drag.banner-slider .owl-item {
    height: -webkit-calc(100vh - 16px);
    height: -moz-calc(100vh - 16px);
    height: calc(100vh - 16px);
}

.owl-carousel.owl-drag.banner-slider .owl-dots {
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;    
    bottom: 30px;
}

.owl-carousel.owl-drag.banner-slider .owl-dot {
    text-align: center;
    margin: 0 auto;
    display: inline-block;
    margin-right: 30px;
}

.owl-carousel.owl-drag.banner-slider .owl-dot:last-of-type {
    margin-right: 0;
}

.owl-carousel.owl-drag.banner-slider .owl-dot span {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #74744B;
    float: left;
    opacity: 0.9;
    display: inline-block;
    float: left;
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.owl-carousel.owl-drag.banner-slider .owl-dot.active span {
    background-color: #FDE4A4;
}

.dark-overlay {
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: #000;
    opacity: 0.3;
    top: 0;
    left: 0;
}

/*========================
Mobile menu
========================*/
#mobile-wrapper {
    display: none;
    overflow: auto;
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    z-index: 9999;
    padding: 23px 40px 40px 40px;
    border: 8px solid #fff;
}

#mobile-menu {
    display: block;
}

#mobile-menu .logo {
    margin-bottom: 50px;
    margin-top: 12px;
}

#mobile-wrapper .overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0.7;
    background-color: #000;
    border: 8px solid #fff;
}

body #mobile-wrapper {
    overflow: auto;
}

body #inner-menu {
    height: 100%;
    width:100%;
    position: relative;
}

.mobile-menu li.level-0 {
    font-size: 1em;
    font-family: "trajan-pro-3",serif;
    margin-bottom: 20px;
}

.mobile-menu li {
    display: block;
    font-family: "mrs-eaves",serif;
    position: relative;
}

.mobile-menu li .sub-menu li a {
    font-family: "mrs-eaves",serif;
    font-size: 1.250em;
    font-style: italic;
    padding: 2.5px 0;
    display: inline-block;
    padding: 2.5px 30px 2.5px 0;
}

.mobile-menu li a {
    color: #fff;
}

.mobile-menu li .sub-menu {
    display: none;
    padding-top: 10px;
}

.mobile-menu li .sub-menu li .sub-menu {
    padding-top: 15px;
    padding-bottom: 15px;
}

/*Mobile expand*/
.mobile-menu li .mobile-expand {
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: ease-in-out 0.3s;
    -moz-transition: ease-in-out 0.3s;
    -o-transition: ease-in-out 0.3s;
    -ms-transition: ease-in-out 0.3s;
    transition: ease-in-out 0.3s;
}

.mobile-menu li .mobile-expand.open {
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
    top: 1px;
}

.mobile-menu li .sub-menu li .mobile-expand {
    position: absolute;
    right: 10px;
    top: 6px;
}

.mobile-menu li .mobile-expand .down-arrow {
    width: 28px;
    height: 28px;
    line-height: 28px;
    position: relative;
}

.mobile-menu li .mobile-expand .down-arrow:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 10px;
    height: 10px;
    top: 6px;
    left: 6px;
    margin-top: 2px; 
    text-align: center;    
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    -webkit-transition: ease-in-out 0.3s;
    -moz-transition: ease-in-out 0.3s;
    -o-transition: ease-in-out 0.3s;
    -ms-transition: ease-in-out 0.3s;
    transition: ease-in-out 0.3s;   
}

.mobile-contact {
    display: none;
}
/*========================
Hamburger
========================*/
#nav-toggle { 
    float: right; 
    display: none;
    position: absolute;
    right: 10px;
    top: 20px;
}

#mobile-wrapper #nav-toggle {
    right: 10px;
    top: 22px;
}

#nav-toggle { cursor: pointer; padding: 10px 35px 16px 0px; }
#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
  cursor: pointer;
  border-radius: 1px;
  height: 2px;
  width: 30px;
  background: white;
  position: absolute;
  display: block;
  content: '';
}

#nav-toggle span:before {
  top: -8px; 
}
#nav-toggle span:after {
  bottom: -8px;
}

#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
  transition: all 500ms ease-in-out;
}
#nav-toggle.active span {
  background-color: transparent;
}
#nav-toggle.active span:before, #nav-toggle.active span:after {
  top: 0;
}
#nav-toggle.active span:before {
  transform: rotate(45deg);
}
#nav-toggle.active span:after {
  transform: rotate(-45deg);
}

/*========================
CTA Section
========================*/
.section {
    margin-bottom: 8px;
}

.cta-section {
    padding: 70px 0 70px 0;
    text-align: center;
    position: relative;
}

.touchevents .cta-section {
    padding: 70px 0 70px 0;
}


.cta-section .container {
    max-width: 1110px;
    position: relative;
}

.cta-section p {
    font-size: 1.563em;
    line-height: 1.312;
}

.cta-section .read-more {
    position: absolute;
    bottom: -120px;
    opacity: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.touchevents .cta-section .read-more {
    bottom: inherit;
    opacity: 1;
    position: relative;
    left: inherit;
    -webkit-transform: none;
    -moz-transform: none;
    transform: none;
}

.no-touchevents .cta-section:hover .read-more {
    opacity: 1;
    bottom: -60px;
}

.cta-section .overlay {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    background-color: #998773;
    opacity: 0.8;
}

/*========================
Link blocks
========================*/
.link-blocks .link-block {
    height: 500px;
    margin-bottom: 8px;
    text-align: center;
    position: relative;
    background-position: center center;
}

.link-block .overlay {
    position: absolute;
    height: 100%;
    width: 100%;
    top : 0;
    left: 0;
    opacity: 0.3;
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.no-touchevents .link-block:hover a .overlay {
    opacity: 0.6;
}

.no-touchevents .link-blocks-section .link-block:hover .overlay {
    opacity: 0.8;
}

.link-block .text-wrap {
    position: absolute;
    bottom: 60px;
    width: 100%;
    max-width: 470px;
    padding: 0 20px;
    z-index: 1;
    margin: 0 auto;
    left: 0;
    right: 0;
}

.link-block.full-width .text-wrap {
    max-width: 510px;
}

.link-block .text-wrap h3 {
    margin-bottom: 15px;
    font-size: 1.7em;
}

.link-block .text-wrap p {
    font-size: 1.4em;
    line-height: 1.312;
}

.hidden-content {
    display: none;
    padding-bottom: 15px;
}

.touchevents .hidden-content {
    display: block;
}

.touchevents .hidden-content {
    padding: 0 0 15px 0;
}

/*========================
Columns
========================*/
.one-third {
    width: -webkit-calc(33.3333333% - 5.33333333333px);
    width: -moz-calc(33.3333333% - 5.33333333333px);
    width: calc(33.3333333% - 5.33333333333px);
    float: left;
    margin-right: 8px;
}

.one-third:nth-of-type(3n+3) {
    margin-right: 0;
}

.one-half {
    width: -webkit-calc(50% - 4px);
    width: -moz-calc(50% - 4px);
    width: calc(50% - 4px);
    float: left;
    margin-right: 8px;
}

.one-half:nth-of-type(2n+2) {
    margin-right: 0;
}

.one-half{
    width: -webkit-calc(50% - 4px);
    width: -moz-calc(50% - 4px);
    width: calc(50% - 4px);
    float: left;
    margin-right: 8px;
}

.one-half:nth-of-type(2n+2) {
    margin-right: 0;
}


.two-thirds {
    width: -webkit-calc(66.6666666% - 3.33333333333px);
    width: -moz-calc(66.6666666% - 3.33333333333px);
    width: calc(66.6666666% - 3.33333333333px);
    float: left;
    margin-right: 8px;
}

.full-width {
    width: 100%;
    display: block;
    clear: both;
}

.two-thirds + .one-third,
.one-third + .two-thirds {
    margin-right: 0;
}

/*========================
Affiliates section
========================*/
.affiliates {
    background-color: #D8D8CD;
    padding: 40px 0 20px 0;
    color: #454545;
    text-align: center;
}

.affiliates .text-wrap {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
}

.affiliates .text-wrap h3,
.affiliates .text-wrap h2 {
    margin-bottom: 15px;
}

.affiliates .text-wrap p {
    margin-bottom: 30px;
    font-size: 1.563em;
    line-height: 1.28;
}

.affiliates .logos {
    display: inline-block;
    margin: 0 auto;
}

.affiliates .client-logo {
    float: left;
    display: inline-block;
    width: 20%;
    padding: 0 10px 20px 10px;
    margin-top: 20px;
}

.affiliates .logo img {
    margin: 0 auto;
    text-align: center;
}

/*========================
Basic link blocks
========================*/
.one-fourth {
    width: -webkit-calc(25% - 33.75px);
    width: -moz-calc(25% - 33.75px);
    width: calc(25% - 33.75px);
    margin-right: 45px;
    float: left;
}

.one-fourth:nth-of-type(4n+4) {
    margin-right: 0;
}

.basic-link-blocks {
    color: #454545;
    padding: 50px 0 0 0;
    overflow: hidden;
}

.basic-content + .basic-link-blocks {
    padding: 20px 0 0 0;
}

.container.large {
    max-width: 1500px;
}

.basic-link-blocks .link-block {
    text-align: center;
    margin-bottom: 50px;
}

.basic-link-blocks .link-block p {
    font-style: normal;
    line-height: 1.470;
    font-size: 1.063em;
    font-family: "trajan-pro-3",serif;
}

.basic-link-blocks .link-block a {
    color: #454545;
}

.basic-link-blocks .link-block h3 {
    font-size: 1em;
    margin-bottom: 30px;
    margin-bottom: 30px;
}

.basic-link-blocks .link-block .image-wrap {
    position: relative;
}

.basic-link-blocks .link-block .content-wrap {
    padding-top: 40px;
}

.basic-link-blocks .link-block .image {
    height: 240px;
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.no-touchevents .basic-link-blocks .link-block:hover .image {
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
         -o-transform: scale(1.1);
            transform: scale(1.1);
}

.basic-link-blocks .link-block .overlay {
    opacity: 0;
}

.basic-link-blocks .link-block .centered.read-more {
    top: 60%;
    z-index: 1;
    color: #fff;
    width: 100%;
    width: auto;
    font-size: 1em;
}

.basic-link-blocks .link-block .centered.read-more:before, 
.basic-link-blocks .link-block .centered.read-more:after {
    width: 30px;
    top: 12px;
}

.basic-link-blocks .link-block .centered.read-more:before {
    left: -38px;
}

.basic-link-blocks .link-block .centered.read-more:after {
    right: -38px;
}

.no-touchevents .basic-link-blocks .link-block:hover .centered{
    top: 44%;
}

/*========================
Basic Content + Hero content
========================*/
.indent {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

.indent p {
    font-size: 1.063em;
    line-height: 1.470;
}

.basic-content a {
    color: #8D8D6C;
    font-weight: 600;
}

.no-touchevents .basic-content a:hover {
    color: #7F7F5A;
}

.basic-content {
    color: #454545;
}

.basic-content img {
    width: 100%;
}

.basic-content p {
    color: #454545;
}

.basic-slider .slider .image {
   position: relative;
   height: 400px;
   background-position: center center;
}

.basic-slider .slider .image span.caption {
   color: #fff;
   position: absolute;
   bottom: 15px;
   left: 15px;
}

.basic-slider .owl-carousel.owl-drag.slider .owl-item {
    opacity: 0.7;
}

.basic-slider .owl-carousel.owl-drag.slider .owl-item.active {
    opacity: 1;
}

.basic-content {
    padding: 50px 0;
}

.basic-content + .basic-content {
    padding: 0 0 50px 0;
}

.basic-content .image-wrap,
.basic-content .basic-slider {
    padding-bottom: 40px;
}

.basic-content p:last-of-type + ul {
    margin-top: 15px;
}

#content-wrapper ul {
    list-style-type: disc;
    margin-bottom: 20px;
}

/*Basic content carousel*/
.basic-content .basic-slider {
    position: relative;
}

.owl-next.disabled,
.owl-prev.disabled {
    display: none;
}

.basic-content .owl-carousel.slider .owl-nav.disabled {
    display: block;
}

.basic-content .owl-carousel.slider .slider-controls {
    position: absolute;
    top: 47%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
}

.basic-content .owl-carousel.slider .slider-control {
    position: absolute;
}

.basic-content .owl-carousel.slider .slider-control img  {
    width: 30px;
}

.basic-content .owl-carousel.slider .slider-control.prev {
    left: 220px;
}

.basic-content .owl-carousel.slider .slider-control.next {
    right: 220px;
}

span.caption {
    font-size: 1.063em;
    line-height: 1.8;
}

.basic-content .image-wrap span.caption {
    padding: 15px 0 0 0;
    display: block;
}

/*Basic content video*/
.basic-content .video-wrap {
    position: relative;
    margin-bottom: 60px;
}

.basic-content .video-wrap .play {
    left: 0;
    right: 0;
    width: 40px;
    margin: 0 auto;
}

.basic-content .video-wrap .play-btn {
    width: 20px;
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.basic-content .video-wrap a span.title {
    position: absolute;
    width: 100%;
    max-width: 660px;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 50px;
    text-align: center;
    font-size: 2.500em;
    line-height: 1.25;
    color: #fff;
    padding: 0 20px;
}

.basic-content .video-wrap .overlay {
    background-color: #000;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    opacity: 0.4;
}

.gradient {
    position: absolute;
    width: 100%;
    height: 60px;
    bottom: 0;
    opacity: 0.4;
    background: #000; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(transparent, #000); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(transparent, #000); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(transparent, #000); /* For Firefox 3.6 to 15 */
    background: linear-gradient(transparent, #000); /* Standard syntax */
}

.ie9 .gradient,
.ie8 .gradient {
    background: transparent; /* For browsers that do not support gradients */
}

#html5-lightbox-overlay {
    background-color: rgb(61,70,72)!important;
}

/*========================
Related Link blocks
========================*/
.related-title-wrap {
    background-color: #513E3A;
    padding: 15px;
    color: #fff;
    margin-bottom: 8px;
    font-family: "trajan-pro-3",serif;
    text-align: center;
}

.related-title-wrap h3 {
    margin-bottom: 0;
}

.basic-link-blocks .blog-list .link-block {
    margin-bottom: 60px;
}

.basic-link-blocks .blog-list .link-block .overlay {
    background-color: #000;
}

.touchevents .basic-link-blocks .link-block .overlay {
    opacity: 0.6;
}

.touchevents .basic-link-blocks .link-block .read-more {
    top: 45%;
}

.touchevents .basic-link-blocks .link-block .centered.read-more {
    top: 45%;
}

.load-posts {
    text-align: center;
    padding-bottom: 20px;
}

.load-posts .read-more {
    color: #454545;
    margin-bottom: 40px;
}

.load-posts .read-more:before,
.load-posts .read-more:after {
    background-color: #454545;
}

.posts-wrapper .basic-link-blocks .link-block p { 
    font-style: normal;
    line-height: 1.470;
    font-size: 1.063em;
   letter-spacing: 0.04em;
}

/*========================
Contact Page
========================*/
.contact-section .contact {
    color: #545454;
}

.contact-section .contact .content-wrap {
    color: #545454;
    position: relative;
    padding: 40px;
}

.contact-section .contact .content-wrap p {
    font-size: 1.125em;
}

/*========================
Map Section
========================*/
.google-maps {
    position: relative;
    overflow: hidden;
}

#map-canvas .acf-map {
  width: 100%;
  height:100%;
  height: 100vh;
  border: none;
  margin: 0;
}

/* fixes potential theme css conflict */
#map-canvas .acf-map img {
  max-width: inherit !important;
}

.map-info {
    color: #454545;
}
/*========================
Loader
========================*/
@-webkit-keyframes scale {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; }
  45% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
    opacity: 0.7; }
  80% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }
@keyframes scale {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; }
  45% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
    opacity: 0.7; }
  80% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

.ball-pulse > div:nth-child(1) {
  -webkit-animation: scale 1.3s -0.24s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: scale 1.3s -0.24s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.ball-pulse > div:nth-child(2) {
  -webkit-animation: scale 1.3s -0.12s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: scale 1.3s -0.12s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.ball-pulse > div:nth-child(3) {
  -webkit-animation: scale 1.3s 0s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: scale 1.3s 0s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.ball-pulse > div {
  background-color: #A1AC9D;
  width: 32px;
  height: 32px;
  border-radius: 100%;
  margin: 2px;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  display: inline-block; }

/*========================
Remove borders on apple products
========================*/
input, textarea {
  -moz-border-radius:0!important;
  -webkit-border-radius:0!important;
  -webkit-appearance: none;
  -moz-appearance:    none;
  appearance:         none;
  overflow: auto;
}

/*========================
Contact form 7 styles
========================*/
.contact-section div.wpcf7 {
    width: 100%;
    max-width: 500px;
    margin-bottom: 40px;
}

.wpcf7-submit {
    font-family: "trajan-pro-3",serif;
    font-size: 0.750em;
    font-style: normal;
    line-height: 1.6;
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 5px 30px;
    cursor: pointer;
    color: #545454;
	margin-bottom: 20px;
    background-color: transparent;
    border-top: 1px solid #545454;
    border-bottom: 1px solid #545454;
}

.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 input[type="number"],
.wpcf7 input[type="text"],
.wpcf7 textarea {
    width: 100%;
    font-size: 1em;
    padding: 0 10px;
    color: #545454;
    font-family: "mrs-eaves", serif;
    border-bottom: 1px solid #545454;
    -webkit-transition: all 0.5s ease-in-out;
       -moz-transition: all 0.5s ease-in-out;
        -ms-transition: all 0.5s ease-in-out;
         -o-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 input[type="number"],
.wpcf7 input[type="text"]{
    height: 38px;
}

.wpcf7 textarea {
    padding: 10px;
}

.wpcf7 input[type="tel"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="number"]:focus,
.wpcf7 input[type="text"]:focus,
.wpcf7 textarea:focus {
    background-color: #DFE3DF;
}

.wpcf7 textarea {
    resize: none;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    font-size: 0.750em;
    color: #545454;
    font-family: "trajan-pro-3",serif;
}
::-moz-placeholder { /* Firefox 19+ */
    font-size: 0.750em;
    color: #545454;
    font-family: "trajan-pro-3",serif;
}
:-ms-input-placeholder { /* IE 10+ */
    font-size: 0.750em;
    color: #545454;
    font-family: "trajan-pro-3",serif;
}
:-moz-placeholder { /* Firefox 18- */
    font-size: 0.750em;
    color: #545454;
    font-family: "trajan-pro-3",serif;
}

span.wpcf7-not-valid-tip {
    display: none !important;
}

div.wpcf7 form input.wpcf7-not-valid,
div.wpcf7 form textarea.wpcf7-not-valid,
div.wpcf7 form select.wpcf7-not-valid {
    border-color: #d8000c;
    background-color: #ffbaba;
}

div.wpcf7 div.wpcf7-response-output {
    width: 100%;
    font-weight: 300;
    font-size: 0.875em;
    line-height: 1.6;
    letter-spacing: 0.02em;
    margin: 0 0 30px;
    padding: 18px 14px;
}

div.wpcf7 .wpcf7-response-output.wpcf7-validation-errors {
    color: #d8000c;
    border: 1px solid #d8000c;
    background-color: #ffbaba;
}

div.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok {
    color: #4f8a10;
    border: 1px solid #4f8a10;
    background-color: #dff2bf;
}

.checkbox.gdpr-terms {
	clear: both;
	padding: 0 0 10px 0;
}

.checkbox.gdpr-terms label {
	font-size: 0.813rem;
	color: #545454;
	font-family: "mrs-eaves", serif;
}

.checkbox.gdpr-terms label a {
	display: inline-block;
	color: #545454;
}

.no-touchevents .checkbox.gdpr-terms label a:hover {
	text-decoration: underline;
}

.checkbox.gdpr-terms input[type="checkbox"] {
	margin: 0 8px 5px 0;
	position: relative;
	width: 15px;
	height: 15px;
	top: 2px;
	cursor: pointer;
	display: inline;
	-webkit-appearance: checkbox;
    -moz-appearance: checkbox;
	appearance: checkbox;
}

.checkbox.gdpr-terms .wpcf7-list-item {
	margin: 0;
}

.checkbox.gdpr-terms .wpcf7-list-item-label {
	display: inline;
}

.wpcf7-form-control-wrap select {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid #545454;
    height: 38px;
    margin-top: 0.5em;
    margin-bottom: 1em;
}

.wpcf7 label {
	font-size: 0.82em;
	color: #545454;
	font-family: "trajan-pro-3", serif;
}


/*========================
Footer
========================*/
.above-footer {
    background-color: #8D8D6C;
    padding: 15px;
    color: #fff;
    margin-bottom: 8px;
    font-family: "trajan-pro-3",serif;
    text-align: center;
}

.above-footer p {
    font-size: 1.563em;
    font-style: normal;
    word-break: break-all;
}

footer ul{
    list-style-type: none;
}

footer .footer-top {
    background-color: #DFE3DF;
    padding: 50px 0 10px 0;
    color: #454545;
    margin-bottom: 8px;
}

footer .footer-top .menu-main-menu-container li {
    display: inline-block;
    width: 20%;
    text-align: center;
    font-family: "trajan-pro-3",serif;
    float: left;
}

footer .footer-top .menu-main-menu-container li.level-0 {
    margin-bottom: 40px;
}

footer .footer-top .menu-main-menu-container li.level-0 > a {
    margin-bottom: 15px;
    display: block;
}

footer .footer-top .menu-main-menu-container li a {
    color: #454545;
    line-height: 1.6;
}

.no-touchevents footer .footer-top .menu-main-menu-container li a:hover {
    color: #74744B;
}

footer .footer-top .menu-main-menu-container li .sub-menu {
    display: block;
}

footer .footer-top .menu-main-menu-container li .sub-menu li {
    width: 100%;
    display: block;
}

footer .footer-top .menu-main-menu-container li .sub-menu li a {
    font-size: 0.875em;
    font-family: "mrs-eaves",serif;
    font-style: normal;
    padding: 2px 15px;
    display: inline-block;
}

footer .footer-top .menu-main-menu-container li .sub-menu li .sub-menu {
    display: none;
}

footer .footer-bottom {
    padding: 50px 0;
    background-color: #A1ACA1;
    color: #454545;
    text-align: center;
}

footer .footer-bottom .container {
    max-width: 1000px;
}

footer .footer-bottom p {
    font-size: 0.875em;
}

footer .footer-bottom p,
footer .footer-bottom a {
    line-height: 1.833;
    font-family: "mrs-eaves",serif;
    font-style: normal;
}

footer .footer-bottom a {
    color: #454545;
}

footer .menu-social-icons-container {
    margin-bottom: 20px;
}

.menu-social-icons-container ul li {
    display: inline-block;
    margin-right: 20px;
}

.menu-social-icons-container ul li:last-of-type {
    margin-right: 0;
}

.menu-social-icons-container ul li a {
    font-size: 25px;
}

.no-touchevents .menu-social-icons-container ul li:hover a {
    color: #74744B;
}

footer .menu-legal-menu-container {
    margin: 10px 0;
}

.menu-legal-menu-container ul li {
    display: inline-block;
    margin-right: 10px;
}

.menu-legal-menu-container ul li:last-of-type {
    margin-right: 0;
}

.menu-legal-menu-container ul li a {
    font-size: 0.875em;
}

.no-touchevents footer a:hover {
    color: #74744B;
}
/*========================
Browser update notice
========================*/
.ie8notice{
    color: #fff;
    position: fixed;
    top: 0;
    z-index: 999999;
    width: 500px;
    padding: 30px;
    background-color: #0098e0;
}

.ie8notice a {
  color: #ffffff;
  font-weight: 700;
}
    
.ie8notice strong {
  font-weight: 700;
}

.ie8notice ul.important-notice {
  padding: 0;
  list-style-type: 0;
}

.ie8notice ul.important-notice li {
  display: block;
  margin-right: 10px;
}

.ie8notice ul.important-notice li img {
  vertical-align: middle;
}

.ie8notice ul.important-notice li.uppercase {
  text-transform: uppercase;
  font-size: 1.2em;
  vertical-align: middle;
}

.firefox .wpcf7 input[type="tel"], 
.firefox .wpcf7 input[type="email"], 
.firefox .wpcf7 input[type="number"], 
.firefox .wpcf7 input[type="text"], 
.firefox .wpcf7 textarea {
    padding: 8px 10px;
}

.ie .main-menu li .sub-wrap,
.edge .main-menu li .sub-wrap {
    top: 100px;
}
@media screen and (max-width : 1200px) { 

    .one-fourth {
        width: -webkit-calc(33.3333333% - 20px);
        width: -moz-calc(33.3333333% - 20px);
        width: calc(33.3333333% - 20px);
        margin-right: 30px;
    }

    .one-fourth:nth-of-type(4n+4) {
        margin-right: 30px;
    }

    .one-fourth:nth-of-type(3n+3) {
        margin-right: 0;
    }

    .home .basic-link-blocks .link-block.link-block-4 {
        display: none;
    }

}

@media screen and (max-width : 1024px) { /* Ipad horizontal */

    #main-nav,
    #second-nav,
    #header-widget {
        display: none;
    }

    header.home-header .top-header,
    header .top-header {
        margin-bottom: 0;
    }

    .logo {
        margin-top: 20px;
        max-width: 180px;
    }

    .affiliates .client-logo {
        padding: 0 10px 0 10px;
    }

    #nav-toggle { 
        display: block;
        position: absolute;
        right: 10px;
        top: 20px;
    }

    .mobile-contact {
        display: block;
        position: absolute;
        top: 20px;
        left: 10px;
    }

    .mobile-contact {
        -webkit-transition: none;
           -moz-transition: none;
            -ms-transition: none;
             -o-transition: none;
                transition: none;
    }

    .mobile-contact .fa {
        width: 25px;
        height: 25px;
        background-color: #fff;
        color: #454545;
        text-align: center;
        line-height: 25px;
        border-radius: 50%;
    }

    .no-touchevents .mobile-contact a:hover .fa {
        color: #000;
    }

    .basic-content .owl-carousel.slider .slider-control.prev {
        left: 20px;
    }

    .basic-content .owl-carousel.slider .slider-control.next {
        right: 20px;
    }

    .affiliates .text-wrap p {
        margin-bottom: 10px;
    }

    .related-section.link-blocks .link-block,
    .related-section.link-blocks .link-block.one-third,
    .related-section.link-blocks .link-block.two-thirds,
    .related-section.link-blocks .link-block.full-width {
        width: -webkit-calc(50% - 4px);
        width: -moz-calc(50% - 4px);
        width: calc(50% - 4px);
        float: left;
        clear: none;
    }

}

@media screen and (max-width : 1000px) {

    .link-blocks .link-block,
    .link-blocks .link-block.one-third,
    .link-blocks .link-block.two-thirds,
    .link-blocks .link-block.full-width {
        width: -webkit-calc(50% - 4px);
        width: -moz-calc(50% - 4px);
        width: calc(50% - 4px);
        float: left;
        margin-right: 8px;
        clear: none;
    }

    .link-blocks .link-block:nth-child(2n+2),
    .link-blocks .link-block.one-third:nth-child(2n+2),
    .link-blocks .link-block.two-thirds:nth-child(2n+2),
    .link-blocks .link-block.full-width:nth-child(2n+2) {
        margin-right: 0!important;
    }

    .link-block .text-wrap {
        bottom: 40px;
    }

    footer .footer-top .menu-main-menu-container li {
        width: 25%;
    }

    .contact-section .one-third,
    .contact-section .two-thirds {
        width: -webkit-calc(50% - 4px);
        width: -moz-calc(50% - 4px);
        width: calc(50% - 4px);
    }

    #map-canvas .acf-map {
        height: 500px;
    }

}

@media screen and (max-width : 840px) { 

    .one-fourth {
        width: -webkit-calc(50% - 15px);
        width: -moz-calc(50% - 15px);
        width: calc(50% - 15px);
        margin-right: 30px;
    }

    .one-fourth:nth-of-type(3n+3) {
        margin-right: 30px;
    }

    .one-fourth:nth-of-type(2n+2) {
        margin-right: 0;
    }

    .home .basic-link-blocks .link-block.link-block-3 {
        display: none;
    }

    .affiliates .client-logo {
        width: 33.3333333%;
    }

    h1, 
    h2,
    h3 {
        font-size: 1.250em;
        margin-bottom: 20px;
        letter-spacing: 0.04em;
    }

    .cta-section p,
    .link-block .text-wrap p,
    .top-banner-wrap .banner-text p,
    .large-italic, .indent p.large-italic,
    .basic-content .video-wrap a span.title {
        font-size: 1.250em;
        line-height: 1.35;
    }

    .above-footer p,
    .affiliates .text-wrap p {
        font-size: 1.2em;
    }

    .basic-content .video-wrap a span.title {
        bottom: 15px;
    }

    .basic-content .video-wrap .play-btn {
        display: none;
    }

    .read-more {
        font-size: 1.063em;
        line-height: 1.882;
    }

    .link-blocks .link-block {
        height: 350px;
    }
    
    .home-banner .top-banner.owl-carousel.owl-drag.banner-slider .owl-item,
    .home-banner.top-banner-wrap,
    .home-banner .top-banner {
        height: 550px;
    }

    .no-touchevents .cta-section:hover .read-more {
        bottom: -60px;
    }

}

@media screen and (max-width : 768px) { /* iPad */

    .grid-1,
    .grid-2,
    .grid-3,
    .grid-4,
    .grid-5,
    .grid-6,
    .grid-7,
    .grid-8,
    .grid-9,
    .grid-10,
    .grid-11,
    .grid-12 {
        width: 100%;
    }

    footer .footer-top .menu-main-menu-container li {
        width: 33.3333333%;
    }

    .contact-section .one-third,
    .contact-section .two-thirds {
        width: 100%;
        margin-right: 0;
    }

}

@media screen and (max-width : 750px) { 


    .home-header .logo {
        max-width: 180px;
    }

    .owl-carousel.owl-drag.banner-slider .owl-dots {
        bottom: 30px;
    }

    .cta-section {
        padding: 60px 0 60px 0;
    }

    .link-blocks .link-block,
    .related-section.link-blocks .link-block,
    .related-section.link-blocks .link-block.one-third,
    .related-section.link-blocks .link-block.two-thirds,
    .related-section.link-blocks .link-block.full-width,
    .link-blocks .link-block.one-third,
    .link-blocks .link-block.two-thirds,
    .link-blocks .link-block.full-width {
        width: 100%;
        margin-right: 0;
    }

    footer .footer-top .menu-main-menu-container li.level-0 {
        margin-bottom: 20px;
    }

    footer .footer-top {
        padding: 40px 0 20px 0;
    }

    footer .footer-bottom {
        padding: 40px 0;
    }

    .basic-content {
        padding: 40px 0;
    }

    .container {
        padding-left: 10px;
        padding-right: 10px;
    }

    #mobile-wrapper {
        padding: 23px 30px 15px 30px;
    }

    .top-banner,
    .top-banner-wrap {
        height: 470px;
    }

    .owl-carousel.owl-drag.banner-slider .owl-item {
        height: 470px;
    }

    .basic-link-blocks .link-block .content-wrap {
        padding-top: 30px;
    }

    .basic-link-blocks .link-block h3 {
        margin-bottom: 20px;
    }

    .basic-content + .basic-link-blocks {
        padding: 0 0 0 0;
    }

}

@media screen and (max-width : 620px) { 

    .one-fourth {
        width: 100%;
        margin-right: 0;
    }

    .home .basic-link-blocks .link-block.link-block-2 {
        display: none;
    }

    .no-touchevents .basic-link-blocks .link-block:hover .image {
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }

    .one-fourth:nth-of-type(3n+3) {
        margin-right: 0;
    }

    footer .footer-top .menu-main-menu-container li {
        width: 50%;
    }

    .basic-link-blocks .link-block .image {
        height: 300px;
    }

}

@media screen and (max-width : 568px) { /*iphone5 Horizontal*/
    
    footer .footer-top .menu-main-menu-container li {
        width: 100%;
    }

}

@media screen and (max-width : 450px) { 

    .affiliates .client-logo {
        width: 50%;
    }

}

@media screen and (min-width : 740px) and (max-height : 700px) {

    .home-banner .top-banner.owl-carousel.owl-drag.banner-slider .owl-item, 
    .home-banner.top-banner-wrap, 
    .home-banner .top-banner {
        height: 700px;
    }

}
