/*------------------------------------------------------------------------------------------------------------*/

/*  THEME NAME: lamontdesign benchpress
/*  VERSION: 2.5.1
/*  LEVEL: LAMONTDESIGN
/*  AUTHOR: LAMONTDESIGN LTD
/*--------------------------------------------------------------------------------------------------------------*/

/* typography */

/* placeholder styles for input elements */

::-webkit-input-placeholder {
    color: #000;
    opacity: 1;
}

::-moz-placeholder {
    color: #000;
    opacity: 1;
}

::-ms-placeholder {
    color: #000;
    opacity: 1;
}

::placeholder {
    color: #000;
    opacity: 1;
}

* {
    font-family: 'Open Sans', sans-serif;
    font-variant-ligatures: none;
}

p, ul, ol {
    display: block;
    padding: 0;
    margin-bottom: 20px;
    margin-top: 0;
    width: 100%;
}

p, ul, ol, td, th, address, dl, code, caption, label {
    font-size: 1.6em;
    line-height: 1.6em;
    font-weight: 300;
    color: #585A59;
}

p code {
    font-size: 100%;
}

code, p>code, li>code, dd>code, td>code {
    background: #eee;
    padding: 0 5px 2px;
    border-radius: 4px;
    position: relative;
    top: -1px;
    margin: 0 3px 0 1px;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

input, textarea, select {
    font-size: 1.6em;
    color: #000 !important;
    margin-bottom: 0;
}

::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #000 !important;
}

::-moz-placeholder {
    /* Firefox 19+ */
    color: #000 !important;
}

:-ms-input-placeholder {
    /* IE 10+ */
    color: #000 !important;
}

:-moz-placeholder {
    /* Firefox 18- */
    color: #000 !important;
}

h1, h2, h3, h4, h5, h6 {
    padding: 0;
    margin-bottom: 20px;
    margin-top: 0;
    line-height: 1.1em;
    font-weight: 400;
    width: 100%;
    clear: both;
    font-family: 'Halant', serif;
    position: relative;
}

h1, h2, h3, h4, h5, h6 {
    color: #772D2F;
}

/* only apply em-based margins for typed content - this stops us having to override the margins in too many places when trying to line up other text. */

.content p {
    margin-top: 1em;
    margin-bottom: 2em;
    /*padding-left: 50px;
    padding-right: 50px;*/
}

/* Alan - added proportional content header margins  */

.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    margin-bottom: .4em;
    margin-top: .83em;
    line-height: 1.2em;
}

/* margin overrides where the text element is the first element in the container - this stops excessive space at the top of a content area */

.content h1:first-child, .content h2:first-child, .content h3:first-child, .content h4:first-child, .content h5:first-child, .content h6:first-child, .content p:first-child {
    margin-top: 0;
}

h1 {
    font-size: 5.5em;
    color: #772D2F;
}

h2 {
    font-size: 3.4em;
}

h3, .widgettitle {
    /* helps with wordpress, keeps widget titles consistent */
    font-size: 3em;
}

.widgettitle {
    margin-top: 0;
}

h4 {
    font-size: 2.2em;
}

h5 {
    font-size: 2em;
}

h6 {
    font-size: 1.4em;
}

a, input {
    -webkit-transition: color .25s ease, background-color .25s ease, opacity .25s ease;
    transition: color .25s ease, background-color .25s ease, opacity .25s ease;
}

a {
    text-decoration: none;
    outline: none;
    border: 0;
}

a:hover {
    outline: 0;
}

ul, ol {
    margin: 0 0 20px 0;
    padding: 0;
    list-style-type: none;
    display: inline-block;
    text-align: left;
    width: auto;
}

ul ul, ol ol, ul ol, ol ul {
    display: block;
}

.text-center ul, .text-center ol {
    margin: 0 auto 20px auto;
}

li {
    margin: 0;
    padding: 0;
}

ul ul, ol ol, ul ol, ol ul, ul.sidebar
/*kill off inheriting font sizes on uls and lis */

    {
    font-size: 100%;
    margin: 0;
}

main ol {
    list-style: decimal;
    padding-left: 20px;
}

main ul {
    list-style: disc;
    padding-left: 20px;
}

small {
    font-size: 80%;
}

blockquote {
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 2em;
    line-height: 1.4em;
    font-weight: normal;
    font-style: italic;
}

blockquote p, p blockquote
/* just incase */

    {
    font-size: 100%;
}

td, th {
    padding: 10px 15px;
    text-align: left;
    vertical-align: top;
}

/*** end typography ***/

a {
    color: #000;
}

/* buttons & controls */

.stnd-btn, .big-buttons a {
    background: #008AD3;
    text-transform: uppercase;
    font-family: 'Halant', serif;
    font-weight: 400;
    color: #fff;
    padding: 12px 30px;
    font-size: 1.6em;
    transition: box-shadow .25s ease;
    font-size: 10px;
    border-radius: 50px;
}

.stnd-btn:hover, .big-buttons a:hover {
    -webkit-box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    color: #fff;
}

input, textarea, select {
    border: none;
    color: #333;
    background: #e6dbd2;
    border-bottom: 1px solid #000;
}

input[type=submit], button {
    background: #4C306D;
    color: #fff;
    font-size: 1.6em;
    width: auto;
    padding: 20px;
    margin: 0 auto;
    float: none;
    display: block;
    min-width: 235px;
    text-transform: uppercase;
    border: none;
    max-width: 100%;
}
.searchform input[type=submit]
{
    max-width: 100%;
}

/*label
{
font-size: 1.4em;
}*/

/* end of buttons & controls */

/** main nav styles **/

header .widget_nav_menu {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    /* stop the nav menu shrinking; instead other header elements should shrink. avoids nav menu breaking onto 2 lines */
}

header .widget_nav_menu .menu {
    display: block;
    position: relative;
    margin: 0;
    list-style-type: none;
    padding: 0;
    text-align: left;
    /* alignment of child <li>s */
}

header .widget_nav_menu .menu li {
    display: inline-block;
    position: relative;
}

header .widget_nav_menu .menu li a {
    /* color: #fff; */
    white-space: nowrap;
}

header .widget_nav_menu .menu .Orange-upper a:hover {
    color: rgba(188, 198, 161, 0.3);
}

header .widget_nav_menu a, header .widget_nav_menu .nav-stub-span {
    /* top level link styles */
    color: #fff;
    font-size: 1.7em;
    padding: 0 15px;
    text-align: left;
    line-height: 2em;
    display: block;
    font-weight: 300;
    font-family: 'Open Sans',sans-serif;
}

header .widget_nav_menu a:hover, header .widget_nav_menu a:active, header .widget_nav_menu a:focus, header .widget_nav_menu .nav-stub-span:hover, header .widget_nav_menu .nav-stub-span:active, header .widget_nav_menu .nav-stub-span:focus {
    /* hover state for top level navigation link */
    color: rgba(255,255,255,.8);
}

header .widget_nav_menu li.current-menu-item>a, header .widget_nav_menu li.current-page-ancestor>a, header .widget_nav_menu li.current-menu-item>.nav-stub-span, header .widget_nav_menu li.current-page-ancestor>.nav-stub-span {
    /* currently active top level navigation link */
    color: rgba(255,255,255,.8);
}

header .widget_nav_menu .children {
    font-size: 100%;
}

header #header-top-bar .widget_nav_menu .children a {
    color: #fff !important;
    background: #215331;
    font-size: 16px;
    line-height: 1.8em;
    text-align: left;
    padding: 5px 20px;
}

/* header #header-top-bar .widget_nav_menu .children a::after {
    content: ".";
    color: #fff;
} */

header .widget_nav_menu .children li:last-child a {
    border-bottom: none;
}

header .widget_nav_menu .children a:hover, header .widget_nav_menu .children a:active, header .widget_nav_menu .children a:focus {
    /* hover state for child level navigation link */
    color: #4D4D4D;
}

header .widget_nav_menu .children li.current-menu-item a, header .widget_nav_menu .children li.current-page-ancestor a {
    /* active navigation child link */
    color: #4D4D4D;
}

header .widget_nav_menu .children {
    /* flyout subnav */
    background-color: transparent;
}

#header-top .widget_popup_button {
    -webkit-flex-grow: 0;
    flex-grow: 0;
}

/* header top bar sidebar styles */

#header-top-bar .widget {
    padding-top: 25px;
    padding-bottom: 25px;
    text-align: right;
    flex: 1 1 auto;
}

#header-top-bar .widget_nav_menu a {
    font-size: 1.6em;
    padding: 5px 8px;
    color: #406964;
    font-weight: 400;
    position: relative;
}

#header-top-bar .widget_nav_menu li:last-of-type a::after {
    display: none;
}

#header-top-bar .widget_nav_menu li:nth-last-of-type(2) a::after {
    display: none;
}

#header-top-bar .widget_nav_menu .menu .current-menu-item a, #header-top-bar .widget_nav_menu .menu .current-page-ancestor a, {
    color: #fff;
}

#header-top-bar a, #header-top-bar p {
    color: #000;
    font-weight: 600;
    font-size: 16px;
    padding: 0;
    font-family: 'Open Sans',sans-serif;
    letter-spacing: 0.04em;
}

#header-top-bar a:hover {
    color: #855125;
}

#header-top-bar a:last-of-type {
    color: #855125;
}

#header-top-bar a:last-of-type:hover {
    color: #000;
}

#header-top-bar p {
    margin-bottom: 0;
    line-height: 1.2;
}

/* end of header top bar styles */

/* styles for fixed header on desktop */

/* note, you may want to pad the top of the main div to allow space for content to display that this would otherwise overlap */

/* note2, this won't work on mobile as expected and will be shonky at best. override at mobile screen sizes. */

#header-top-bar-wrapper.fixed {
    position: fixed;
    z-index: 100;
    /*height: 175px;*/
    top: 0;
    /*-webkit-transition: opacity .2s ease, height .2s ease;
    transition: opacity .2s ease, height .2s ease;*/
    backface-visibility: hidden;
}

.logged-in #header-top-bar-wrapper.fixed {
    top: 32px;
}

.fixed #header-top-bar {
    overflow: hidden;
    /*height: 63px;*/
    -webkit-transition: height .2s ease;
    transition: height .2s ease;
}

#header-top-bar .row {
    padding-top: 0;
    padding-bottom: 0;
}

.fixed #header-top .widget.logo img {
    -webkit-transition: max-width .2s ease;
    transition: max-width .2s ease;
}
#header-top-bar-wrapper
{
    transition: transform .1s ease;
}
.fixed.scrolled#header-top-bar-wrapper {
    transform: translateY(-208px);
}

.fixed.scrolled #header-top .widget.logo img {
    max-width: 120px;
}

/* fade out the header when it gets the closed class. the closed class is added by javascript after the user has scrolled down enough and after a 1s timeout. */

/*#header-top-bar-wrapper.fixed.closed
{
opacity: 0;
}*/

body {
    /*   padding-top: 43px;*/
}

/* */

/** mobile navigation colours */

.mob-nav-wrapper>ul.menu {
    font-size: 1.4em;
}

.mob-nav-wrapper a, .mob-nav-wrapper .nav-stub-span {
    line-height: 1.6em;
    color: #000;
    border-bottom: 1px solid #855125;
    padding: 10px 20px 10px 20px;
}

.mob-nav-wrapper .children a {
    padding-left: 40px;
    background-color: rgba(133,81,37,.2);
}

/** end of mobile navigation colours */

/** end of header navigation */

/* main elements */

#header-mobile-bar {
    background: #fff;
}

#header-mobile-bar .hamburger-menu {
    background: #fff;
}

#header-mobile-bar .hamburger-menu span {
    background: #855125;
}

#header-top-bar {
    background: #fff;
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

.feature:hover {
    /* box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75); */
}

#header-top {
    background: rgba(00,00,00,.4);
    z-index: 2;
}
.no-header-images #header-top, .header-images-disabled #header-top {
    position: relative;
    background: #e6dbd2;
    margin-bottom: 40px;
}

main {
    /*padding-bottom: 50px;*/
    /* to space back to top link that pokes up from the footer */
}

.header-images-disabled main, .no-header-images main {
    /* pad the top of main if there are no header images */
    padding-top: 0;
}

footer {
    /*padding-top: 35px;*/
    /* for the footer "back to top" button */
    background: #855125;
    z-index: 4;
}

footer p {
    font-size: 1.4em;
    font-family: 'Halant', serif;
}

footer a:hover {
    color: #e4e4e4;
}

footer .widgettitle, footer h5 {
    color: #7C7C7C;
}

/*footer .sidebar-footer
{
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
}
footer .sidebar-footer .widget
{
-webkit-flex-basis: 100%;
flex-basis: 100%;
}
*/

footer .sidebar-footer .widget:not(.widget_content), footer .sidebar-footer-top .widget:not(.widget_content) {
    text-align: center;
}

#copyright {
    /* max-width: 1240px; */
    margin: auto;
    position: relative;
    background: #91623B;
}

#copyright p {
    margin: 0;
    font-size: 1.2em;
    color: #000;
}

#copyright a {
    color: #c2a892;
    text-decoration: underline;
}

#copyright a:hover {
    color: #e4e4e4;
}

/*******/

/* front page columns content */

/* height for header slider */

.ld-fadey-slider {
    /* initial dimensions of slider */
    /* height: 800px; */
    max-height: 800px;
    /*height: calc(100vh - 220px);
    max-height: 800px;*/
    /* % of viewport height */
    /*background-attachment : fixed;*/
    /* uncomment when you want to fix the header image (i.e doesn't move with scroll) */
}

.logged-in .ld-fadey-slider {
    height: calc(100vh - 199px);
}

/*
sized sliders - set these to pixels or use vh units for the different sizes.
NOTE: if using vh, include a height declaration in px before it as a fallback for old browsers.
*/

.ld-fadey-slider.slider-size-full {
    height: calc(100vh - 105px);
}

.logged-in .ld-fadey-slider.slider-size-full {
    height: calc(100vh - 137px);
}

.ld-fadey-slider.slider-size-large {
    height: 670px;
}

.ld-fadey-slider.slider-size-med {
    height: 555px;
}

.ld-fadey-slider.slider-size-small {
    height: 380px;
    min-height: 380px;
}

/* end of header slider height declarations


/* left / right buttons for h-slider and header image slider */

.ld-fadey-slider-nav {
    height: 50px;
    width: 50px;
    background: url(assets/images/elements/arrow.png) no-repeat center center;
    bottom: 50%;
    opacity: 1;
    display: none;
}

.ld-fadey-slider-nav {
    bottom: 50%;
    transform: translateY(50%);
}

.ld-fadey-slider-nav:hover {
    opacity: 1;
}

.h-slider-nav {
    /* nav for featured sliders */
}

.ld-fadey-slider-nav:hover, .h-slider-nav:hover {
    /*background : rgba(0,0,0,.6);*/
}

.ld-fadey-slider-nav.next, .h-slider-next {
    right: 20px;
}

header .ld-fadey-slider-nav.prev, header .h-slider-prev {
    left: 20px;
    transform: translateY(50%) rotate(-180deg);
}

.ld-fadey-slider-nav.prev, .h-slider-prev {
    left: 0;
    transform: rotate(-180deg);
}

/* tab nav - can be set to display: none; */

.ld-fadey-slider-tabs li a, .h-slider-tabs li a {
    border-radius: 50%;
    background: #e5e5e2;
    width: 10px;
    height: 10px;
    border: 1px solid #e5e5e2;
}

.h-slider-nav.h-slider-disabled {
    opacity: 0.4;
}

.ld-fadey-slider-tabs li.ld-fadey-slider-tab-here a, .h-slider-tabs li.slider_here a {
    background: #CDCCC7;
    transform: scale(1.4);
    border-color: #CDCCC7;
}

/* head / scroll down button */

.head-btn {
    display: block;
    background: url(assets/images/elements/down-arrow.png) no-repeat center center;
    margin: 20px auto;
    width: 70px;
    height: 70px;
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
    top: -90px;
    position: absolute;
    z-index: 10;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 0;
    display: none;
}

.ld_popover__close {
    /* close button for the LD Popover */
    background-color: #4C306D;
}

.head-btn:hover, .back-to-top-btn:hover, .head-btn:focus, .back-to-top-btn:focus, .ld_popover_close:focus, .ld_popover_close:focus, .widget.subnav .hamburger-menu:hover {
    /* hover state for back to top, popover close & scroll down buttons */
}

.back-to-top-btn {
    position: relative;
    -webkit-transform: rotate(-180deg) translateY(50%);
    transform: rotate(-180deg) translateY(50%);
    z-index: 10;
    margin: 0 auto;
    margin-bottom: -40px;
    display: none;
}

/* big gallery button */

.big-gallery {
    overflow: hidden;
    padding-bottom: 40px;
}

.big-gallery .row {
    height: auto;
    min-height: 0;
}

.big-gallery__btn {
    font-size: 1.6em;
    background: #fff;
    border: 1px solid #000;
}

.big-gallery__btn:hover, .big-gallery__btn:focus {
    /* hover state for gallery button */
}

.big-gallery img {
    width: 100%;
}

/* styles for google recaptcha box */

.g-recaptcha {
    margin-bottom: 20px;
}

/* header slider caption styling */

.caption-wrapper {
    background: transparent;
    top: 0;
    width: 100%;
    height: 100%;
}

.caption-wrapper .caption {
    height: auto;
    max-width: 100%;
    padding: 20px;
    margin: 0;
}

.caption-wrapper .row {
    flex-direction: column;
    height: 100%;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
}

.caption-wrapper .row .col {
    display: flex;
    align-content: center;
    flex-basis: auto;
    flex-direction: row;
    flex-grow: 0;
    margin-bottom: 35px !important;
    word-wrap: break-word;
    text-align: left;
}

.caption-wrapper .caption-link a {
    padding: 15px 40px;
    width: auto;
    display: inline-block;
    background: rgba(255, 255, 255, .6);
    -webkit-transition: background .25s ease;
    transition: background .25s ease;
    font-weight: 100;
    color: #7C7C7C;
    font-size: 0.8em;
    text-shadow: none;
}

.caption-wrapper .caption-link a:hover, .caption-wrapper .caption-link a:focus {
    background: rgba(255, 255, 255, .8);
}

.caption-wrapper .caption-title, .caption-wrapper .caption-text, .caption-wrapper .caption-link {
    padding-top: 10px;
    margin-bottom: 10px;
}

.caption-title p {
    font-size: 1.8em;
    color: #fff;
    font-weight: 300;
    line-height: 1.1em;
}

.caption-title p strong {
    font-weight: 700;
}

/* end of caption styling */

/* styles for featured items & posts */

.post {
    box-shadow: 0 0 10px rgba(149, 152, 138, 0.25);
    display: block;
    /*-webkit-transition : box-shadow .25s ease;
    transition         : box-shadow .25s ease;*/
}

/* for posts, grow the box shadow when hovered */

.post:hover, .post:focus {
    /*box-shadow : 0 0 10px rgba(149, 152, 138, .5);*/
}

/* alternate styling where the image of the post will darken on hover */

.post .thumb {
    position: relative;
}

.post .thumb::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: #000;
    z-index: 1;
    opacity: 0;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out;
}

.post:hover .thumb::after, .post:focus .thumb::after {
    opacity: .1;
}

/* feature styles */

.feature {
    display: block;
    height: 100%;
    transition: box-shadow .25s ease;
    box-shadow: 0px 0px 10px -8px rgba(0, 0, 0, 0.75);
    padding-bottom: 110px;
    background: #fff;
}

/* alternate styling where the image of the feature will darken on hover */

.feature .thumb {
    position: relative;
}

.feature .thumb::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: #fff;
    z-index: 1;
    opacity: 0;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out;
}

.feature:hover .thumb::after, .feature:focus .thumb::after {
    opacity: .1;
}

.feature .fea-btn {
    width: 56px;
    height: 56px;
    display: block;
    position: absolute;
    z-index: 2;
    background: url(assets/images/elements/arrow-colour.png) no-repeat center center #fff;
    border-radius: 50%;
    box-shadow: 0 0 11px rgba(0, 0, 0, .4);
    top: -28px;
    left: 50%;
    margin-left: -28px;
}

.feature .desc {
    position: relative;
    padding: 0;
}

.feature__title, .post__title {
    width: 100%;
    margin-bottom: 0;
    text-align: left;
}

.feature__description, .post__description {
    width: 100%;
    text-align: left;
}

.feature .desc {
    padding: 10px 30px 40px 30px;
    position: relative;
}
.blog-post .desc {
    padding: 20px 20px 30px 20px;
    position: relative;
}

/* posts */

.blog-post {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.blog-post .thumb {
    background: none !important;
}

.blog-post .thumb img {
    width: 100%;
    opacity: 1 !important;
}

/*.blog-post .thumb
    {

}
.blog-post .desc
{

}*/

.blog-listing__load-more-btn p {
    margin-bottom: 0;
}
.blog-post .post__category-label {
    position: absolute;
    height: 40px;
    line-height: 40px;
    padding: 0 20px;
    z-index: 2;
    font-size: 1.2em;
    color: #fff;
    bottom: 85px;
    left: 10px;
    text-transform: uppercase;
}

/* alternate post & feature styling (full width, thumb 1/3rd and desc 2/3rds) */

/* currently this will only take place while the viewport is wider than 600px, after that it will default
to standard over / under layout to avoid getting too squashed */

@media all and (min-width: 600px) {
    .alt-posts .blog-post {
        -webkit-flex-basis: 100%;
        flex-basis: 100%;
        display: block;
    }
    .alt-posts .post, .alt-features .feature {
        -webkit-display: flex;
        display: flex;
        flex-wrap: nowrap;
    }
    .alt-posts .post {
        border-top: 1px solid #4C306D;
        padding-top: 20px;
        box-shadow: none;
    }
    .alt-posts .blog-post:first-child .post {
        border-top: none;
        padding-top: 0;
    }
    .alt-posts .blog-post .thumb {
        -webkit-flex: 1 1 33.3333%;
        flex: 1 1 33.3333%;
    }
    .alt-posts .blog-post .desc {
        -webkit-flex: 1 1 66.6666%;
        flex: 1 1 66.6666%;
        margin-left: 20px;
        border: 1px solid #95989A;
    }
    .alt-features .desc, .alt-features .thumb {
        -webkit-flex: 1 1 50%;
        flex: 1 1 50%;
    }
    .alt-features .desc {
        padding: 20px 20px 20px 40px;
    }
    .alt-posts .post__category-label {
        position: static;
        width: auto;
        display: inline-block;
        margin-bottom: 50px;
    }
    .alt-features .fea-btn {
        top: 50%;
        margin-top: -28px;
        left: -28px;
        margin-left: 0;
    }
    .alt-features .col {
        /* default alt-features to a 50% width to prevent them growing too much when the screen is full width */
        -webkit-flex-basis: 50%;
        flex-basis: 50%;
    }
}

@media all and (max-width:1200px) and (min-width:600px) {
    /* make alt-features full width but only under 1200px width and above 600px width.
    this prevents them getting too big, but overrides the default 50% width when they can grow comfortably. */
    .alt-features .col {
        -webkit-flex-basis: 100%;
        flex-basis: 100%;
    }
}

/* end of posts */

/* styling for previous / next buttons on posts and pages and listings */

.post-controls .next-post a, .post-controls .prev-post a {
    color: #000;
    font-weight: 600;
}

.post-controls {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 15px 0;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

.post-controls p {
    margin: 0;
}

.post-controls a {
    text-transform: uppercase;
    position: relative;
    overflow: visible;
}

.post-controls a span {
    background: url(assets/images/elements/arrow-colour.png) no-repeat center center;
    display: block;
    width: 12px;
    height: 24px;
    position: absolute;
    top: 50%;
    margin-top: -13px;
    background-size: 100%;
}

.post-controls .prev-post {
    text-align: left;
}

.post-controls .next-post {
    text-align: right;
}

.post-controls .next-post a {
    padding-right: 40px;
}

.post-controls .next-post a span {
    right: 0;
}

.post-controls .prev-post a {
    padding-left: 40px;
}

.post-controls .prev-post a span {
    transform: rotate(-180deg);
    left: 0;
}

.post-controls .home-link a.__js_pagination_menu_btn {
    display: inline-block;
    width: 35px;
    height: 35px;
    text-indent: 999px;
    overflow: hidden;
    background-color: #000;
    background-image: linear-gradient(90deg, #fff 50%, transparent 50%), linear-gradient(#fff 50%, transparent 50%);
    background-size: 10px 10px;
    -webkit-transition: background-color .25s ease;
    transition: background-color .25s ease;
}

.post-controls .home-link a.__js_pagination_menu_btn:hover {
    background-color: #4C306D;
}

.post-controls .home-link {
    position: relative;
}

.post-controls .pagination-menu {
    list-style: none;
    padding: 30px;
    background: #000;
    width: auto;
    height: auto;
    position: absolute;
    bottom: calc(100% + 11px);
    left: 50%;
    transform: translateX(-50%);
    visibility: hidden;
    opacity: 0;
    z-index: -1;
    min-width: 250px;
    -webkit-transition: opacity .2s ease, visibility .2s ease;
    transition: opacity .2s ease, visibility .2s ease;
}

.post-controls .pagination-menu::after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 11px 11px 0 11px;
    border-color: #000 transparent transparent transparent;
}

.post-controls .pagination-menu ul {
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
}

.post-controls .pagination-menu a {
    border-bottom: 1px solid transparent;
    color: #fff;
    text-transform: none;
}

.post-controls .pagination-menu a::after {
    content: ".";
}

.post-controls .pagination-menu .toplevel a {
    font-weight: 600;
    text-transform: uppercase;
}

.post-controls .pagination-menu a:hover, .post-controls .pagination-menu a:focus {
    color: #000;
}

/* open state */

.post-controls .pagination-menu.open {
    opacity: 1;
    visibility: visible;
    z-index: 90;
}

/* end of pagination links */

.blog-listing__load-more-btn {
    text-align: center;
}

.blog-listing__load-more-btn a {
    display: inline-block;
    color: #fff;
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
    background: #4C306D;
    padding: 10px 30px;
    text-align: left;
    background: #008AD3;
    border-radius: 50px;
    font-family: 'Halant', serif;
    font-weight: 400;
    font-size: 10px;
    text-transform: uppercase;
}

.blog-listing__load-more-btn a:hover {
    -webkit-box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

/* end of styling for previous / next buttons on posts and pages and listings */

/* styles for the hamburger menu when used as a toggle for the sibling navigation in pages or category navigation */

.widget.subnav {
    text-align: center;
    max-width: 320px;
    min-width: 250px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 30px;
}

.widget.subnav li a {
    padding: 10px 20px;
    text-align: center;
    color: #000;
    font-weight: 700;
}

.widget.subnav li a:hover, .widget.subnav .current_page_item a {
    color: #008ad3;
}

.widget.subnav .hamburger-menu {
    background: #008ad3;
    height: 70px;
    width: 70px;
    border-radius: 50%;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, .3);
    margin-top: 20px;
    margin-bottom: 10px;
}

.widget.subnav .hamburger-menu span {
    background: #fff;
}

/* end of styles for the hamburger menu when used as a toggle for the sibling navigation in pages or category navigation */

/* popover styling */

.ld_popover__inner {}

/* forms used in popover boxes */

.ld_popover form {
    max-width: 100%;
    padding: 20px 7%;
}

.ld_popover input[type=text], .ld_popover input[type=search], .ld_popover input[type=email] {
    /*float         : none;*/
    display: block;
    width: 100%;
    height: auto;
    border: none;
    border-bottom: 2px solid #95989A;
    font-size: 5em;
    padding: 10px 20px;
    text-align: center;
    color: #000;
    background: #fff;
    margin-bottom: 40px;
    font-weight: 300;
    text-transform: lowercase;
}

.ld_popover input[type=search], .ld_popover input[name=s], .ld_popover .searchform input[type=text] {
    background: url(assets/images/elements/search@2x.png) no-repeat 0 22px;
    padding: 10px 40px;
    background-size: 40px;
}

.ld_popover input[type=submit] {
    float: none;
    /*display  : block;*/
    width: auto;
    height: auto;
    padding: 20px 40px;
    display: inline-block;
    border: 1px solid #4C306D;
    color: #4C306D;
    background: #fff;
}

/* */

/* mobile header  */

.sidebar-header-mobile {
    padding: 15px;
    height: 90px;
    -webkit-align-items: center;
    align-items: center;
}

.sidebar-header-mobile .mobile-nav-btn {
    text-align: right;
    height: auto;
}

.sidebar-header-mobile .logo img {
    width: auto;
    max-height: 50px;
}

.gmap iframe {
    margin: 0 auto;
    width: 100%;
    /* make google maps full width */
}

/* center social icons when displayed using the shortcode */

.social_links {
    text-align: center;
}

/**/

/* contact form styles */

#btn-paypal {
    margin-right: 20px;
}

.contact_form label {
    font-size: 1em;
    margin-bottom: 2px;
    color: #772D2F;
    text-transform: uppercase;
    font-weight: 400;
    font-family: 'Halant',serif;
}

.contact_form textarea {
    min-width: 100%;
}

/* end of contact form styles */

/* google map iframe styles - remove 20px margin when it's in a widget */

.widget .gmap iframe {
    margin: 0;
}

/* end of google map iframe styles */

/* styles for the flow flow social plugin */

#ff-stream-1 .ff-header h1, #ff-stream-1 .ff-header h2 {
    text-align: center;
    text-transform: none;
    font-size: 4em;
    margin: 0 !important;
}

#ff-stream-1.ff-stream {
    /*padding-top: 70px;*/
    /*margin-top: 30px;*/
}

.ff-item-cont {
    padding: 0;
}

.picture-item__inner.picture-item__inner--transition {
    padding: 0 !important;
}

.ff-img-holder.ff-no-margin.ff-img-loaded {
    margin-bottom: 0;
}

.ff-item h4 {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
}

.ff-content {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
}

.ff-item-meta {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
}

/* background of the loader squares */

#ff-stream-1 li, #ff-stream-1-slideshow li, #ff-stream-1 .ff-square {
    background: #4C306D !important;
}

/* end of flow flow social plugin styles */

/* fancybox3 close button background */

.ld_fancybox_close {
    background: #008ad3;
    display: block;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%,100%);
    transform: translate(-50%,65%);
    z-index: 50;
    position: absolute;
    color: #fff;
    text-align: center;
    cursor: pointer;
    font-family: 'Halant',serif;
    font-size: 20px;
    min-width: 120px;
    background: 0 0;
    text-transform: capitalize;
    text-decoration: underline;
    font-weight: 400;
}

.social_links ul.social {
    margin: 0;
    left: 0;
    text-align: center;
    transform: scale(.8);
}

/* ADDITIONS */
.pagination-col {
    overflow: visible;
}
footer .logo-top-foot p, footer .logo-top-foot a {
    color: #c2a892 !important;
    font-size: 18px;
    font-weight: 400;
    font-family: 'Open Sans',sans-serif;
}
footer .logo-top-foot a {
    text-decoration: underline;
}
footer .logo-top-foot a:hover {
    color: #fff !important;
}
.page-template-template-contact .custom_content_wrapper:not(.embed) .col {
    padding-right: 0;
}
.head-contact-right {
    padding-right: 0;
}
.blog.slider-size-large main, .blog.slider-size-full main {
    margin-top: -80px;
    z-index: 20;
}
.blog.slider-size-large .top-con,.blog.slider-size-full .top-con {
    max-width: 1030px;
    margin: 0 auto;
    background-color: #fff;
}
.blog.slider-size-large .hero-title-wrapper.wrapper.empty-hero-title, .blog.slider-size-full .hero-title-wrapper.wrapper.empty-hero-title {
    max-width: 1030px;
    margin: 0 auto;
    background: #fff;
}
.blog.slider-size-large .top-con::before, .blog.slider-size-full .top-con::before {
    position: absolute;
    background: url(assets/images/elements/front-topcon-flair.png) no-repeat center center;
    content: "";
    width: 100%;
    height: 214px;
    top: -213px;
    left: 0;
    z-index: 10;
}

.page-template-template-contact .wrapper.green-first .col {
    position: relative;
}
.page-template-template-contact .wrapper.green-first .col::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: #772D2F;
    width: calc(100% - 20px);
}
.page-template-template-contact .wrapper.green-first .col::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: #772D2F;
    width: calc(100% - 20px);
}
.page-template-template-contact .wrapper.green-first .col:first-of-type {
    max-width: 295px;
}
.page-template-template-contact .wrapper.green-first .row {
    justify-content: space-between;
}

.page-template-template-contact .wrapper.green-first .col:first-of-type a:last-of-type {
    text-decoration: underline;
}
.page-template-template-contact .wrapper.green-first .col * {
    color: #772D2F;
}
.page-template-template-contact .wrapper.green-first .col:first-of-type *{
    font-family: 'Halant',serif;
    font-size: 22px;
}

.page-template-template-contact .wrapper.green-first .col h4 {
    font-weight: 600;
}
.page-template-template-contact .wrapper.green {
    background: #fff;
}
.page-template-template-contact .wrapper.green h3 {
    font-weight: 600;
}
.blog .green-wrap {
    padding-bottom: 5px;
    padding-top: 5px;
}
.blog.slider-size-large .row.top-con::before, .blog.slider-size-full .row.top-con::before {
    position: absolute;
    background: url(assets/images/elements/front-topcon-flair.png) no-repeat center center;
    content: "";
    width: 100%;
    height: 214px;
    top: -213px;
    left: 0;
}

#copyright::after {
    position: absolute;
    background: url(//www.lamontagency.co.uk/secure/creaganinn/wp-content/themes/benchpress/assets/images/elements/copy-flair-2.png) no-repeat center center;
    content: "";
    width: 100%;
    height: 234px;
    top: -234px;
    left: 0;
    right: 100%;
    background-size: cover;
}
.blog-post .features {
    padding-bottom: 140px;
}
.blog-post .feature .desc {
    margin: 0;
    bottom: 0px;
}
.not-found {
    padding-bottom: 80px;
}
.not-found form {
    display: flex;
}
.not-found form input[type="submit"]{
    margin-left: 10px;
}
.social-medium .social li a {
    background-color: transparent;
    opacity: 0.6;
}
.social-medium .social li a:hover {

    opacity: 1;
}
.feature .desc::after, .post .desc::after {
    content: "";
    background: url(assets/images/elements/fea-flair-double.png) no-repeat center center;
    top: -80px;
    position: absolute;
    width: 100%;
    height: 80px;
    left: 0;
    background-size: cover;
}

.h-slider-tabs li {
    margin: 0 4px;
}
.frontpage .row.wide.top-con {
    position: relative;
}
header .widget_nav_menu .children li a {
    color: #000;
}
header .widget_nav_menu .children li a:hover {
    color: rgba(0,0,0,.6);
}
#header-top-bar .widget.widget_content {
    position: absolute;
    right: 20px;
    top: 10px;
    padding: 0;
    width: 100%; /* for IE 11. thanks IE. */
}
.no-padding.custom_content_wrapper:not(.embed) {
    padding: 0;
}
.footer-content.custom_content_wrapper.wrapper * {
    color: #fff !important;
}
footer .footer-banner .col.widget_content_col {
    padding-top: 0;
    width: 100%;
    max-width: 800px;
}

.page-template-template-contact .wrapper.green-first {
    position: relative;
    margin-top: 80px;
}

.content .gallery {
    margin-bottom: 40px;
}

.footer-banner .flex {
    position: relative;
}

.footer-banner .flex::before {
    content: "";
    position: absolute;
    left: 40px;
    top: 80px;
    background: url(assets/images/elements/front-foot-logo.png) no-repeat center center;
    width: 389px;
    height: 60px;
    z-index: 10;
}

.frontpage .layout_2_column.greentitle .col {
    padding-bottom: 40px;
}

footer .col.widget_content_col {
    position: relative;
}

.col.widget_content_col.logo-top-foot {
    overflow: visible;
}

.footer-seo-content.big-buttons .green-book-nav a {
    background: #fff;
    color: #008AD3;
    font-weight: 600;
}

.feature:hover .desc::after {
    color: #91BD00;
}

.frontpage .row.top-con::before {
    position: absolute;
    background: url(assets/images/elements/front-topcon-flair.png) no-repeat center center;
    content: "";
    width: 100%;
    height: 214px;
    top: -213px;
    left: 0;
}

.frontpage .featured-section {
    background: #fff;
    position: relative;
    padding-bottom:30px;
    padding-top: 30px;
}

.footer-content.custom_content_wrapper.wrapper {
    padding-top: 0;
    overflow: visible;
    min-height: 750px;
    position: relative;
    background-attachment: fixed;
}
.footer-content.custom_content_wrapper.wrapper .row {
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    left: 50%;
    z-index: 10;
}

.content p, .greentitle p {
    font-family: 'Halant', serif;
}

.icon-scroll, .icon-scroll:before {
    position: absolute;
    right: 5px;
}

.icon-scroll {
    width: 14px;
    height: 28px;
    box-shadow: inset 0 0 0 2px #cdb8a7;
    border-radius: 25px;
    top: -164px;
    position: absolute;
    z-index: 10;
    right: 30px;
    margin-bottom: 0;
}

.icon-scroll::before {
    content: '';
    width: 4px;
    height: 4px;
    background: #cdb8a7;
    margin-left: -2px;
    top: 4px;
    border-radius: 3px;
    -webkit-animation-duration: 1.75s;
    animation-duration: 1.75s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: scroll;
    animation-name: scroll;
}

@-webkit-keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(22px);
        transform: translateY(22px);
    }
}

@keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(22px);
        transform: translateY(22px);
    }
}

.page-template-template-contact .wrapper.green p, .page-template-template-contact .wrapper.green a {
    font-size: 1.2rem;
    font-family: 'Halant', serif;
    color: #215331;
}

.page-template-template-contact .wrapper.green a:hover {
    color: #000;
}

#header-top-bar .widget.widget_logo.logo {
    flex-shrink: 0;
    text-align: center;
    padding-top: 0;
  top: 40px;
  padding-bottom: 70px;
}

.page-contact .footer-banner h4 a {
    color: #fff;
}

.page-contact .footer-banner h4 a:hover {
    color: #406964;
}

.sidebar-footer-top .flex.flex-grow {
    justify-content: space-between;
}

.sidebar-footer-top .row.very-wide {
    max-width: 1170px;
}

.logo-top-foot {
    position: relative;
    padding-top: 76px;
}


/*.page-contact h1, .page-contact h2, .page-contact h3, .page-contact h4, .page-contact h5, .page-contact h6 {
    font-weight: 600;
    font-family: 'Halant', serif;
    color: #406964;
}*/

.page-contact .green h1, .page-contact .green h2, .page-contact .green h3, .page-contact .green h4, .page-contact .green h5, .page-contact .green h6 {
    font-weight: 600;
    font-family: 'Halant', serif;
    color: #406964;
}
.page-contact .green h1 a, .page-contact .green h2 a, .page-contact .green h3 a, .page-contact .green h4 a, .page-contact .green h5 a, .page-contact .green h6 a {
    font-weight: 600;
    font-family: 'Halant', serif;
    color: #4C306D;
}

.row.no-row-padding, .no-row-padding .row, .no-row-padding .h-slider-inner {
    overflow: visible;
}


.h-slider-wrapper.row {
    overflow: hidden;
}

.feature {
    overflow: visible;
}


.blog .ld-fadey-slider li::after {
    background: rgba(0, 0, 0, 0);
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
    font-weight: 600;
    font-family: 'Halant', serif;
    color: #406964;
}

.frontpage .layout_2_column.greentitle {
    padding-top: 80px;
    padding-bottom: 80px;
}

.frontpage .layout_1_column.greentitle {
    padding-bottom: 120px;
}

.front-mid-push * {
    color: #fff !important;
}

.front-mid-push h2 {
    font-family: 'Open Sans', sans-serif;
}

.front-mid-push {
    height: 460px;
    position: relative;
}

.front-mid-push .row {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

footer #copyright p {
    margin: 0;
    font-size: 1.2em;
    color: #c2a892 !important;
    font-family: 'Open Sans',sans-serif;
}

.frontpage .greentitle h1, .frontpage .greentitle h2, .frontpage .greentitle h3, .frontpage .greentitle h4, .frontpage .greentitle h5, .frontpage .greentitle h6 {
    color: #91BD00;
    font-size: 3em;
}

p:last-child {
    margin-bottom: 0;
}

.wrapper.foot-cont {
    background: url(assets/images/elements/footer-cont-bg.png) no-repeat center center /cover;
    min-height: 560px;
    padding-bottom: 100px;
    display: flex;
}

.footer-seo-content.big-buttons {
    position: relative;
}

.col.span-1-1.content.green-book-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.wrapper.foot-cont * {
    color: #fff;
}

.front-mid-push {}

.frontpage .top-con p:last-of-type {
    margin-bottom: 0;
}

.feature img {
    background: #fff;
}

.frontpage main {
    background: transparent;
}

.ff-stream-wrapper.ff-desktop.shuffle--container.shuffle--animatein.ff-layout-masonry.ff-truelayout-undefined.ff-upic-off.ff-upic-square.ff-align-left.ff-sc-off.ff-fill-icon.ff-gallery-off.shuffle {
    margin-top: 0;
}

.ff-filter-holder:first-child {
    display: none;
}

.header-images-disabled .hero-title-wrapper.wrapper.empty-hero-title {
    padding-top: 40px;
}

.logo-copy, #copyright .text-right {
    position: relative;
    overflow: visible;
    text-align: center;
}

.grey-bg .feature .desc, .grey-bg .post .desc {
    background: #fff;
}

.custom_content_wrapper {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature {
    display: flex;
}

.custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
    min-height: 370px;
}

.custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature .desc {
    width: 50%;
}

.custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature img {
    width: 50%;
}

#header-top-bar .green-book-nav a, .green-book-nav a {
    background: #fff;
    text-transform: uppercase;
    font-family: 'Halant', serif;
    font-weight: 400;
    color: #fff;
    padding: 10px 20px;
    font-size: 1.6em;
    transition: box-shadow .25s ease;
}
#header-top-bar .logo a {
    max-width: 270px;
}
.green-book-nav a:hover {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

.ld-fadey-slider-wrapper {
    padding: 0;
    margin-top: -54px;
}

.frontpage .row.top-con .col.span-1-1.content, .frontpage .caption-wrapper .caption.col.span-1-1 {
    max-width: 920px;
    margin: 0 auto;
}

.caption-title h2 {
    color: #fff;
    font-size: 4.5em;
    font-weight: 400;
    text-align: left;
    letter-spacing: 3px;
}

.frontpage .row.top-con {
    padding-top: 54px;
    padding-bottom: 40px;
    margin-top: -5px;
    z-index: 2;
    background: #fff;
    position: relative;
}

.product-category-header h3 span, .toplevel-category-title h1 span {
    position: relative;
}

.product-category-header h3 span::after, .toplevel-category-title h1 span::after {
    content: ".";
}

.toplevel-category-title {
    padding-top: 80px;
}

.toplevel-category-title h1 {
    margin-bottom: 0;
}

.product-category-header h3 {
    margin-bottom: 0;
    padding: 40px 0 20px 0;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
    width: 100% !important;
}

.woocommerce-message {
    font-size: 1.4em;
}

.gallery-prod-list {
    padding-bottom: 80px;
}

.product-details {
    margin-top: 30px;
    margin-bottom: 60px;
}

.product-details .col.span-1-3 {
    margin-bottom: 80px;
}

.search-sort-by, .search-header {
    display: none;
}

.col.widget_content_col.logo-top-foot {

    overflow: visible;
}

.fp-blog-slider .feature .desc {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: #fff;
    max-width: 380px;
}

.fp-blog-slider .feature .desc * {
    color: #000;
}

.fp-blog-slider {
    padding: 80px 0;
}

.wrapper.gray-bg {
    background: #e4e4e4;
    padding: 125px 0;
}

.frontpage .gray-bg h3 {
    font-size: 3em;
}

.frontpage .gray-bg p {
    font-size: 1.4em;
    font-family: 'Halant', serif;
    line-height: 1.8em;
}

.gray-bg .col {
    position: relative;
}

.wrapper.featured-section-title {
    max-width: 820px;
    margin: 0 auto;
}

.gray-bg p {
    margin-bottom: 0;
}

.fp-featured-products.products {
    padding-top: 70px;
    padding-bottom: 50px;
}

.product-details h2 {
    font-weight: 300;
}

.product .desc {
    background: #e5e5e5;
    padding: 20px;
    text-align: right;
}

.product-title, .product-subtitle {
    font-weight: 700;
    margin: 0;
}

.product-title {
    line-height: 1;
    margin-bottom: 8px;
}

.product-long-description {
    position: relative;
}

.product-long-description::after {
    content: "";
    height: 6px;
    position: absolute;
    left: 0;
    bottom: -15px;
    width: 100%;
    background: #4C306D;
    max-width: 30px;
}

.post-type-product .woocommerce-Price-amount.amount {
    font-size: 30px;
    font-weight: 700;
    color: #000 !important;
}

.product-details .product-price .price {
    padding-top: 20px;
}

.view-all-btn, .fp-blog-slider span {
    font-weight: 100;
    position: relative;
}

.view-all-btn:hover, .fp-blog-slider span:hover {
    color: #4C306D;
}

.view-all-btn::after, .fp-blog-slider span::after {
    content: "";
    height: 2px;
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 100%;
    background: #4C306D;
}

#header-top-bar-wrapper {
    z-index: 50;
}

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

.blog .blog_feature_image {
    height: 500px;
}

#mce-EMAIL-error {
    display: none !important;
}

.blog_feature_image {
    position: relative;
}

.blog_feature_image::after {
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.27);
    position: absolute;
    transition: background .25s ease;
    z-index: 5;
}

.widget.widget_nav_menu.row.wide {
    justify-content: center;
}

.custom_content_wrapper.wrapper.layout_2_column h4 {
    position: relative;
    font-size: 3em;
}

.row.narrow {
    max-width: 665px;
}

#footer-top .widget.widget_logo.logo {
    text-align: center;
}

#footer-top .widget.widget_logo.logo a {
    position: relative;
}


.row.hero-message.top-con p {
    position: relative;
}

.pagination-menu li {
    list-style: none;
}

.frontpage .row.top-con {
    padding-top: 0;
    padding-bottom: 0;
}


.frontpage .row.hero-message.top-con p {
    font-size: 2.6em;
    margin-bottom: 0;
}

#footer-top {
    margin-top: 0;
    padding: 100px 0 140px 0;
    z-index: 2;
}

footer a {
    position: relative;
}

footer .contact-foot a {
    font-weight: 600;
}

.footer-links a {
    position: relative;
}

.footer-links.row.wide {
    padding-bottom: 100px;
}

footer a {
    color: #fff;
}

footer .footer-links a {
    font-weight: 600;
}

.blue-bg {
    background: #000;
}

.normal-page .blog_feature_image .blog_feature_caption p {
    position: absolute;
    margin: 0;
    font-size: 5em;
    font-weight: 600;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    line-height: 1;
}

.caption-wrapper .caption-title {
    position: relative;
    font-weight: 700;
    display: inline;
    width: auto;
    color: #fff;
    line-height: 1.1em;
}

#header-top-bar .header-top-cont-left {
    padding: 0;
    bottom: 0;
    position: absolute;
    z-index: 1;
    padding-bottom: 10px
}

#header-top-bar .header-top-cont-right {
    padding: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    padding-bottom: 10px
}

#header-top-bar .header-top-cont-right a {
    position: relative;
}

#header-top-bar .header-top-cont-right a:last-of-type::after {
    content: "";
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    background: #4C306D;
}

.blog-post h3 {
    color: #000;
    font-weight: 400;
}

.frontpage .ld-fadey-slider li {
    background-attachment: fixed;
}

.frontpage .ld-fadey-slider li::after {
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .35);
    position: absolute;
    transition: background .25s ease;
    z-index: 5
}

.siblings .feature::after {
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    transition: background .25s ease;
}

.siblings .feature:hover::after {
    content: "";
    background: rgba(0, 0, 0, 0.2);
}

.siblings .feature .thumb {
    min-height: 300px;
}

.siblings .feature .desc::before {
    display: none;
}

.siblings .feature .desc {
    background: none;
    z-index: 10;
    top: 50%;
    position: absolute;
    min-height: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 0;
    text-align: center;
}

.siblings .feature .desc h3 {
    color: #fff;
    margin: 0;
    text-transform: uppercase;
    font-size: 1.8em;
}

.hero-title-wrapper.wrapper.empty-hero-title {
    padding-top: 20px;
}

.sidebar-header .widget:not(.widget_content), .sidebar-footer .widget:not(.widget_content) {
    padding-top: 10px;
    padding-bottom: 10px;
}

.top-border-footer {
    max-width: 610px;
    margin: 0 auto;
    padding-top: 30px;
}

.contact_form ::-webkit-input-placeholder {
    color: transparent !important;
}

.contact_form ::-moz-placeholder {
    color: transparent !important;
}

.contact_form ::-ms-placeholder {
    color: transparent !important;
}

.contact_form ::placeholder {
    color: transparent !important;
}

footer .contact_form input[type="text"], footer .contact_form textarea {
    font-weight: 300;
    font-size: 1.4em;
}

.page-tariff .main-con table:last-of-type {
    margin-bottom: 40px;
}

.main-con th {
    padding: 0;
    text-align: left;
    font-size: 2em;
    font-weight: normal;
    line-height: 1.6em;
    background: none;
    color: #000;
    vertical-align: top;
    border-bottom: #E5E2CF solid 1px;
    background: #eff1f3;
    padding-left: 10px;
}

.main-con td {
    padding: 10px 0;
    text-align: left;
    font-size: 1.3em;
    line-height: 1.3em;
    background: none;
    vertical-align: top;
    border-bottom: #E5E2CF solid 1px;
    padding-left: 10px;
}

.gallery .gallery-caption {
    position: absolute;
    right: 0;
    left: 40px;
    background: transparent;
    color: #fff;
    text-align: left;
    margin: 0;
    padding: 10px;
    bottom: 0;
    font-weight: 400;
    font-size: 18px;
}

.green-wrap {
    padding-bottom: 30px;
    padding-top: 30px;
}

.green-wrap h2 {
    color: #4C306D;
    font-weight: 600;
}

.post-type-page .green-wrap {
    padding-bottom: 20px;
    overflow: visible;
    background: #fff;
    padding-top: 50px;
}

.featured-section {
    overflow: visible;
}

.post-type-page.frontpage .green-wrap {
    padding-bottom: 60px;
    padding-top: 60px;
}

.custom_content_wrapper.blue-bg h4 {
    color: #fff;
    font-size: 3.7em;
}

#header-top-bar h4 {
    margin-bottom: 0
}

.blog_feature_image {
    margin-bottom: 20px;
    margin-top: 30px;
}

.frontpage .hero-title {
    text-align: center;
}

.padd-top-copy {
    margin-top: 10px !important;
}

footer h3 {
    font-size: 2em;
    margin-bottom: 10px;
    font-weight: 300;
    font-family: 'Halant',serif;
    font-size: 8.5em;
}

.images-footer {
    text-align: left;
}

.images-footer img {
    max-height: 60px;
    width: auto;
}

.custom_content_wrapper.blue-bg p {
    margin-bottom: 2em;
    color: #fff;
}

.frontpage .gray-bg a {
    color: #406964;
    font-weight: 400;
    font-size: 0.8em;
}

.front-cont-cols .col {
    padding-left: 40px;
    padding-right: 40px;
}

header .widget_nav_menu .menu > li::after {
    content: " | ";
    display: block;
    position: absolute;
    right: -3px;
    text-align: center;
    top: 8px;
    font-size: 1.5em;
    font-weight: 300;
    color: #fff;
}

.contact-headertop-left a:first-of-type::after {
    content: " \2219 ";
    position: absolute;
    right: -12.5px;
    text-align: center;
    top: 50%;
    font-size: 1.2em;
    font-weight: bold;
    color: #4C306D;
    transform: translateY(-50%);
    margin-top: 2px;
}

.contact-headertop-left {
    padding-left: 20px;
}

.book-headertop-right {
    text-align: center;
    max-width: 130px;
    padding: 0;
}

#header-top-bar .book-headertop-right a {
    line-height: 28px;
    background: #4C306D;
    display: block;
    padding: 10px;
}

#header-top-bar .book-headertop-right a:hover {
    background: rgba(87, 76, 22, 0.6);
}

.page-privacy-cookies .hero-title-wrapper.wrapper.empty-hero-title {
    display: none;
}

.fancybox-caption {
    font-size: 2em;
}

.fancybox-caption-wrap {
    background: transparent;
}

.main-con a:hover {
    color: #3f3f3f;
}

.main-con a {
    color: #4C306D;
    font-weight: 600;
}

.widget.widget_content.head-contact {
    padding: 90px 10px 0 10px !important;
}

.head-contact p {
    font-size: 2em;
    color: #7C7C7C;
}

.head-contact span {
    color: #4C306D;
}

.head-contact a {
    color: #7C7C7C;
}

.head-contact a:hover {
    color: #4C306D;
}

.hero-message p {
    color: #434343;
}

.big-gallery.very-wide.no-row-padding.row {
    padding-bottom: 10px;
}

.front-cont-cols .front-cont-title {
    color: #4C306D;
    margin-bottom: 20px;
    font-size: 2.6em;
}

.readmore-fea {
    background: #fff;
}

.readmore-fea h4 {
    color: #4C306D;
    margin: 0;
    font-size: 1.8em;
    padding-top: 15px;
}

.hero-title {
    margin-bottom: 0;
}

.hero-title-wrapper.wrapper .row .col {
    padding-bottom: 0;
}

.hero-title-wrapper.wrapper .row {
    padding-bottom: 0;
}

.row.top-con {
    padding-bottom: 20px;
}

.social-tab-foot {}

.wrapper.google-map-wrapper {
    height: 450px;
}

.map-overlay {
    background-color: rgba(133,81,37,.2);
    z-index: 2;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
}

.map-overlay .map-text {
    color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    font-size: 5em;
    text-align: center;
}

.comments textarea {
    min-width: 100%;
}

.commentlist.clearfix {
    font-size: 80%;
}

.contact-form-content-wrapper.wrapper .col.span-1-2 {
    position: relative;
}

.contact-form-header {
    margin-bottom: 30px !important;
    font-size: 3.2em;
}

.contact-form-content-wrapper.wrapper {
    /*padding-bottom: 20px;*/
    background: #fff;
    /*padding-top: 50px;*/
}

.contact-form-content-wrapper.wrapper .col.span-1-1 {
    /* padding-bottom: 70px; */
}

.wrapper.contact-form-wrapper {
    padding: 0;
    padding-bottom: 40px;
}

.wrapper.contact-form-wrapper::before {
    background: url(assets/images/elements/white-circle-flair.png) no-repeat center center;
    width: 120px;
    height: 120px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -60px;
    z-index: 2;
}

element {

}
input[type="submit"]:hover {
    color: #000 !important;
    box-shadow: none;
}
input[type="submit"] {
    padding: 0;
    float: right;
    font-weight: 400;
    color: #772D2F !important;
    font-family: 'Halant',serif;
    text-align: right;
    font-size: 30px;
    max-width: 120px;
    min-width: 120px;
    background: transparent;
    text-transform: capitalize;
    text-decoration: underline;
    font-weight: 600;
    padding-bottom: 60px;
}

.contact-form-content-wrapper h4 {
    font-size: 3.2em;
}

.blog-slider a:hover {
    color: #4C306D;
}

.wrapper.blog-listing {
    padding-bottom: 100px;
}

.big-gallery-fp-overlay.text-center {
    position: relative;
}

.big-gallery.very-wide.no-row-padding.row {
    max-width: 1780px;
}

.big-gallery-fp-overlay.text-center {
    position: relative;
}

.frontpage .top-con p {
    font-size: 2.6em;
    position: relative;
    line-height: 1.6;
    color: #585A59;
}

.fancybox-dotted-nav li {
    width: 15px;
    height: 15px;
}

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

.main-con .row.wide {
    margin: 50px auto 60px auto;
}

.row.wide.hero-message.top-con {
    padding-top: 0;
}

.main-con h1, .main-con h2, .main-con h3, .main-con h4, .main-con h5, .main-con h6 {
    /* color: #fff; */
}

.top-con p {
    font-size: 1.8em;
}

.footer-btm .orange-upper {
    padding-top: 25px;
}

#footer .orange-upper a {
    color: #4C306D;
    text-transform: uppercase;
    font-size: 1.6em;
}

#footer .orange-upper a:hover {
    color: #fff;
}

.social_links.social-small.social-inverted {
    width: 100%;
    left: -10px;
}

.social-small .social li a {
    width: 40px;
    height: 40px;
    background-color: #4C306D;
}

#footer {
    border-top: solid 1px rgba(255, 255, 255, 0.3);
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
}

#footer * {
    margin-bottom: 0;
}

#footer .social_links ul.social {
    text-align: right;
}

#commentform #submit {
    background: #4C306D;
    color: #fff;
    font-size: 1.2em;
    margin-bottom: 40px;
}

.footer-seo-content h3 a:hover {
    box-shadow: none;
}

footer h1, footer h2, footer h3, footer h4, footer p {
    color: #fff !important;
}

footer h2 {
    font-size: 3.5em;
}

.row.very-wide.footer-seo-content {
    position: relative;
}

.footer-seo-content .stnd-btn {
    font-size: 10px;
    padding: 12px 45px;
}

#mc_embed_signup #mc-embedded-subscribe-form {
    width: 100%;
}

.mc-field-group {
    display: flex;
}

#mc-embedded-subscribe-form label {
    font-size: 3em;
    text-align: left;
    padding-right: 50px;
    color: #fff;
    font-weight: 600;
    max-height: 57px;
    position: relative;
}

#mc-embedded-subscribe-form label::after {
    content: "";
    height: 7px;
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 100%;
    background: #fff;
    max-width: 30px;
}

.mc-field-group br {
    display: none;
}

#mc-embedded-subscribe-form #mce-EMAIL {
    background: #595959;
    border: none;
    height: 57px;
    max-width: 440px;
    color: #000 !important;
    margin-right: 20px;
    border-bottom: 1px solid #fff;
}

#mc-embedded-subscribe-form input[type="submit"] {
    background: #000;
    font-family: 'Halant', serif;
    font-size: 2em;
    padding: 0;
    height: 57px;
    line-height: 25px;
    max-width: 150px;
    min-width: 150px;
    color: #fff !important;
    font-weight: 400;
    padding: 0 20px;
}

/*.wrapper.foot-cont::before {
    background: url(assets/images/elements/green-circle-flair.png) no-repeat center center;
    width: 120px;
    height: 120px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -60px;
    z-index: 2;
}*/

.front-blog-btn {
    top: 20px;
    font-size: 1.4em;
}

.hero-title-wrapper.wrapper {
    padding-top: 60px;
    padding-bottom: 0;
    background: #fff;
}

.front-page .hero-title-wrapper.wrapper {
    text-align: center;
}

.front-col-wrapp {
    padding: 30px 0;
}

header .widget_nav_menu .menu .Orange-upper a {
    color: #4C306D;
    text-transform: uppercase;
}
.feature__description p, .post__description p {
    font-size: 1.2em;
    line-height: 1.9;
}

.feature:hover .arrow-flair {
    /*background-color: #EDEDED;
            border: 1px #EDEDED solid;*/
}

.feature .arrow-flair {
    background-color: #E6E6E6;
    border: none;
    display: block;
    position: absolute;
    z-index: 4;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    z-index: 4;
}

.arrow-flair {
    width: 50px;
    height: 50px;
    background-color: #fff;
    display: block;
    position: relative;
    font-size: 0;
    font-size: 0;
}
.feature .desc, .post .desc {
    background: #fff;
    position: relative;
    margin-left: 30px;
    margin-right: 30px;
    position: absolute;
    bottom: 10px;
}

.feature__description p, .post__description p {
    color: #000;
}

.green-wrap {
    padding: 30px 10px;
}

.fea-wrap-title {
    text-align: center;
    color: #fff;
    font-size: 4em;
    margin-bottom: 25px;
}

.feature__title h3, .post__title h3 {

    font-size: 2.2em;
    color: #772D2F;

    margin: 0;
    font-weight: 400;
    background-color: #fff;

}
.frontpage .ld-fadey-slider-tabs {
    bottom: 110px;
    display: block;
    position: absolute;
    text-align: left;
    margin: 0;
    left: 50%;
    transform: translateX(-50%);
    max-width: 880px;
    bottom: 250px;
}
.frontpage header .ld-fadey-slider-tabs a {
    margin: 0 2px;
}
.ld-fadey-slider-tabs {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    position: relative;
    z-index: 2;
    bottom: 20px;
    width: 100%;
    text-align: right;
    display: block;
    max-width: 820px;
    padding: 20px 0;
    display: none;
}

#menu_main-nav .sub-menu.children.children-wrapper {
    padding-top: 13px;
}

.sub-menu.children.children-wrapper:hover {
    cursor: pointer;
}

header .widget_nav_menu .children-inner {
    font-size: 100%;
    box-shadow: 0px 0px 15px -1px rgba(00, 00, 00, 0.4);
    min-width: 160px;
    top: 115%;
    background: #fff;
}

header .widget_nav_menu .children li:last-child a {
    border-bottom: none;
}

header .widget_nav_menu .children li:last-of-type a {
    padding-bottom: 15px;
}

header .widget_nav_menu .children li:first-of-type a {
    padding-top: 15px;
}

header .widget_nav_menu .children::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #fff transparent;
    position: absolute;
    left: 0;
    top: 4px;
    transition: border .25s ease;
    transform: translateX(300%);
}

header .widget_nav_menu .menu>li:last-of-type::after {
    display: none;
}

#header-top .widget.widget_logo.logo {
    padding: 25px 0 25px 20px;
}


.sidebar.sidebar-header {
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    position: relative;
}

#header-top .sidebar-header li {
    padding-left: 0;
    padding-right: 0;
    position: relative;
}

input, textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
}

.mob-nav-wrapper .dropdown {
    right: 10px;
}

.ff-theme-classic.ff-style-4 .ff-item-meta {
    border-top: none !important;
}

.ld_popover__wrapper {
    top: 90px;
}

.logged-in .ld_popover__wrapper {
    top: 112px;
}

input[type="submit"] {
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
}
/* woocommerce styles */

/* product elements */

.product .thumb {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.product .desc {
    -webkit-transition: background .2s ease;
    transition: background .2s ease;
}

/*.product .thumb img {
    visibility: hidden;
}*/

.product a {
    display: block;
    position: relative;
}

.product .desc {
    padding-bottom: 20px;
}

/* department menu in shop archive */

ul.sidebar-departments {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1.6em;
    width: 100%;
}

ul.sidebar-departments li {
    list-style: none;
    display: block;
    margin-bottom: 2px;
}

ul.sidebar-departments li a {
    display: block;
    width: 100%;
    padding: 10px 20px;
    color: #4C306D;
    text-align: left;
}

/* single product page - gallery has wierd margins. */

.woocommerce-product-gallery__wrapper {
    margin: 0;
}

.woocommerce-product-gallery__wrapper a, .woocommerce-product-gallery__wrapper img {
    display: inline-block;
}

.woocommerce-product-gallery__image {
    text-align: center;
}

.woocommerce .product-footer-content h3 {
    font-size: 3em;
}

.post-type-product .woocommerce-Price-amount.amount {
    color: #4C306D;
}

/* breadcrumbs style */

.breadcrumbs p {
    margin: 0;
}

/* override for blue buttons on woocommerce */

html .woocommerce #respond input#submit.disabled, html .woocommerce #respond input#submit:disabled, html .woocommerce #respond input#submit:disabled[disabled], html .woocommerce a.button.disabled, html .woocommerce a.button:disabled, html .woocommerce a.button:disabled[disabled], html .woocommerce button.button.disabled, html .woocommerce button.button:disabled, html .woocommerce button.button:disabled[disabled], html .woocommerce input.button.disabled, html .woocommerce input.button:disabled, html .woocommerce input.button:disabled[disabled] {
    display: none;
}

html .woocommerce table.shop_table tbody th, html .woocommerce table.shop_table tfoot td, html .woocommerce table.shop_table tfoot th, html .woocommerce table.shop_table td, html .woocommerce table.shop_table {
    border: none;
    border-radius: 0;
}

/* checkout forms reset (tripping over myself...) */

.woocommerce p.form-row, .woocommerce .woocommerce-shipping-calculator p {
    font-size: 100%;
}

.woocommerce p.form-row label {
    text-align: left;
    font-size: 1.4em;
}

html .woocommerce td, html .woocommerce th {
    font-size: 1.8em;
    color: #4C306D;
}

html .woocommerce td input, html .woocommerce th input, html .woocommerce td select, html .woocommerce th select, html .woocommerce td textarea, html .woocommerce th textarea {
    font-size: 100%;
}

.wrapper.woocommerce-cart-wrapper {
    padding: 50px 0 80px 0;
}

html .woocommerce .woocommerce-cart-form table.shop_table th {
    background: transparent;
    color: #4C306D;
    padding: 10px;
    font-weight: normal;
    font-size: 2.4em;
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: right;
    color: #000 !important;
}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
    background: #fff;
    border: solid 1px #000;
}

.woocommerce .woocommerce-shipping-calculator button.button {
    border: solid 1px #000;
    color: #000;
    background-color: #fff;
}

html .woocommerce .cart_totals table.shop_table th {
    text-align: right;
    font-weight: normal;
}

html .woocommerce #respond input#submit.alt, html .woocommerce a.button.alt, html .woocommerce button.button.alt, html .woocommerce input.button.alt {
    font-size: 3em;
    background: transparent;
    color: #000;
    font-weight: 300;
    text-align: left;
    padding: 10px 0;
    position: relative;
}

html .woocommerce #respond input#submit.alt::after, html .woocommerce a.button.alt::after, html .woocommerce button.button.alt::after, html .woocommerce input.button.alt::after {
    content: "";
    height: 2px;
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 100%;
    background: #4C306D;
    max-width: 135px;
}

html .woocommerce #respond input#submit.alt:hover, html .woocommerce a.button.alt:hover, html .woocommerce button.button.alt:hover, html .woocommerce input.button.alt:hover {
    background: transparent;
    color: #4C306D;
}

/* load more button */

.woocommerce .products .load-more a {
    font-size: 2em;
    padding: 10px 20px;
    text-align: center;
    min-width: 150px;
    color: #fff;
}

.wc-proceed-to-checkout {
    text-align: right;
}

/* new in product flash */

.product-flash {
    position: absolute;
    right: -10px;
    top: 10px;
    background: #4C306D;
    color: #fff;
    text-align: center;
    padding: 10px 20px;
    text-transform: uppercase;
    font-size: 1.5em;
}

.fp-featured-products .product-flash {
    display: none;
}

/* search icon */

.search-icon {
    /*font-size    : 50px;*/
    display: inline-block;
    width: 30px;
    height: 30px;
    border: 3px solid #fff;
    position: relative;
    border-radius: 50%;
    color: transparent;
    /*text-indent  : 100%;
            white-space  : nowrap;
            overflow     : hidden;*/
}

.search-icon::before {
    content: "";
    display: inline-block;
    position: absolute;
    right: -10px;
    bottom: -5px;
    border-width: 0;
    background: #fff;
    width: 15px;
    height: 3px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* frontpage bottom features //Alan */

.frontpage-bottom-features {
    background: #4C306D;
    padding-bottom: 30px;
    padding-top: 20px;
    display: none;
}

.frontpage-bottom-features .featured-section-title h2 {
    color: #fff;
    text-transform: lowercase;
    font-size: 4em;
}

.frontpage-bottom-features .feature .desc {
    border: 30px solid #C5CDAD;
}

.frontpage-bottom-features .feature .thumb {
    width: calc(100% + 60px);
    margin-left: -30px;
}

/* end frontpage bottom features //Alan */

/* blog feature image //ALan */

.blog_feature_image {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    height: 750px;
    /* note - needs to be height, not min-height*/
}

.blog_feature_image .row {
    height: 100%;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    -webkit-align-content: flex-end;
    align-content: flex-end;
}

.blog_feature_image .blog_feature_caption p {
    position: relative;
    color: #fff;
    font-size: 2em;
    margin-bottom: 30px;
    text-shadow: 0 0 3px rgba(0, 0, 0, .4);
}

.blog_feature_image .blog_feature_caption p::before {
    content: "";
    width: 190px;
    height: 9px;
    background: #fff;
    display: block;
    position: absolute;
    top: -20px;
    text-align: center;
    left: 0;
    display: none;
}

/* floaty sidebar */

.sidebar.float-right-sidebar {
    position: absolute;
    right: -140px;
    width: 70px;
    z-index: 999;
    display: none;
}

.sidebar.float-right-sidebar .widget.subnav {
    max-width: 100%;
    min-width: 70px;
    width: 70px;
    padding-bottom: 0;
    margin: 0;
}

.sidebar.float-right-sidebar .widget.subnav .mob-subnav-btn~ul.widget_subnav_menu::before {
    position: absolute;
    top: -9px;
    right: 31px;
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #008ad3 transparent;
}

.sidebar.float-right-sidebar .widget.subnav .mob-subnav-btn~ul.widget_subnav_menu {
    position: absolute;
    right: 0;
    background: #008ad3;
    box-shadow: 0px 0px 15px -1px rgba(00, 00, 00, 0.4);
    min-width: 245px;
    z-index: 999;
    list-style: none;
    margin-top: 10px;
}

.sidebar.float-right-sidebar .widget.subnav .mob-subnav-btn~ul.widget_subnav_menu.open {
    overflow: visible;
}

.widget.subnav .mob-subnav-btn~ul.widget_subnav_menu {
    -webkit-transition: none;
    transition: none;
}

.sidebar.float-right-sidebar .widget.subnav li a {
    text-align: left;
    padding: 5px 10px;
    border: none;
    color: #fff;
    font-size: 0.9em;
    font-weight: 600;
}

.sidebar.float-right-sidebar .widget.subnav li:first-of-type a {
    padding-top: 20px;
    text-transform: uppercase;
    font-weight: 600;
}

.sidebar.float-right-sidebar .widget.subnav li:last-of-type a {
    padding-bottom: 20px;
}

.sidebar.float-right-sidebar .widget.subnav li a {
    padding-left: 20px;
    padding-right: 20px;
}

/* footer contact form */

footer .contact_form label {
    display: none;
}

footer .contact_form input[type=text], footer .contact_form textarea {
    background-color: rgb(226, 222, 203);
    margin: 0;
    border-bottom: none;
}

footer .contact_form input[type=submit] {
    max-width: 295px;
    width: 100%;
    float: right;
}

.col form.contact_form {
    margin: -10px;
}

.h-slider-inner {
    width: 100%;
}

.h-slider-inner li {
    max-width: 100%;
    -webkit-flex-grow: 0;
    -webkit-flex-shrink: 1;
    flex-grow: 0;
    flex-shrink: 1;
    padding-bottom: 20px;
    padding: 10px 14px;
}

/* frontpage caption / content */

.frontpage-content {
    background: #fff;
    padding: 20px;
    text-align: center;
    width: 100%;
}

.frontpage-content * {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}

.frontpage-content p {
    font-size: 2.6em;
    line-height: 1.6;
}

.frontpage-content-wrapper {
    content: "";
    display: block;
    background: url(assets/images/cog-flash.png) no-repeat top center transparent;
    padding-top: 160px;
    padding-left: 0;
    padding-right: 0;
}

/* frontpage features */

.fp-features-row.row {
    padding-top: 0;
    padding-bottom: 0;
}

.fp-features-row .feature .desc {
    position: absolute;
    bottom: 0;
    background: #fff;
    max-width: 375px;
    width: 100%;
    left: 0;
    padding: 20px;
    text-align: center;
    padding-top: 15px;
}

.fp-features-row .feature .desc h3 {
    color: #000;
    position: relative;
    text-transform: uppercase;
    font-weight: 800;
    font-size: 1.8em;
    margin-bottom: 15px;
}

.fp-features-row .feature .desc h3::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -9px;
    height: 1px;
    width: 50px;
    background: #4C306D;
}

.fp-features-row .feature .desc h3::after {
    content: ".";
}

.fp-features-row .feature .desc p {
    color: #000;
}

.feature__description p {
    margin-bottom: 0;
}
/* padding for custom content rows */

.custom_content_wrapper:not(.embed) {
    padding: 30px 0;
}

.page-template-template-contact .custom_content_wrapper:not(.embed)
{
    padding: 0;
    display: flex;
}

.h-slider-nav {
    background: rgba(0, 0, 0, .8);
    background: url(assets/images/elements/arrow-circ.png) no-repeat center center;
    top: 50%;
    width: 80px;
    height: 204px;
    margin-top: -102px;
    display: none;
}

.product-add-to-cart .stock {
    display: none;
}

.ld_h_slider_wrapper {
    overflow: hidden;
}

.headshot_image-col {
    padding-right: 205px;
}

.headshot_image-col .headshot-image {
    position: absolute;
    right: -105px;
    top: 65px;
    max-width: 295px;
}

.headshot_image-col .headshot-image .caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    text-align: center;
}

.headshot_image-col .headshot-image .caption p {
    color: #fff;
    font-size: 3em;
    margin-bottom: 60px;
    font-weight: 400;
}

.ff-instragram a {
    color: #fff;
}

/* end of frontpage features */

#footer-bottom {
    background: #fff;
    display: none;
}

.frontpage #footer-bottom {
    display: block;
}

.footer-banner .flex::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, .3);
    z-index: 1;
    width: 100%;
    height: 100%;
}

.footer-banner .flex {
    height: 620px;
    align-items: center;
    overflow: hidden;
    position: relative;
}

.footer-banner .col {
    text-align: center;
    z-index: 2;
    position: absolute !important;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 800px;
    padding: 0;
    width: calc(100% - 80px);
}

.footer-banner .col h4 {
    font-size: 2.6em;
    margin: 0;
    letter-spacing: 1px;
    width: 100%;
}

footer sub {
    font-size: 10px;
}

.bg-wrapper {
    position: relative;
}

.frontpage .ld-fadey-slider-wrapper {
    position: relative;
    padding-top: 85vh;
}

.frontpage .ld-fadey-slider {
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    max-height: 100%;
    min-height: auto;
    height: 100%;
}

.frontpage .ld-fadey-slider .caption-wrapper {
    top: 44vh;
    bottom: auto;
    height: auto;
    transform: translateY(-50%);
}

.frontpage .caption-wrapper .row {
    height: auto;
}

.frontpage .ld-fadey-slider li {
    background-attachment: fixed;
}

.wrapper.white {
    background: #fff;
    /*padding-bottom: 195px;*/
    padding-top: 140px;
}

.wrapper.green {
    padding-top: 20px;
    padding-bottom: 20px;
    background: #ecf0ee;
}

.wrapper.green > .row > .col {
    padding-top: 30px;
    padding-bottom: 30px;
}

.wrapper.green input[type=text], .wrapper.green textarea {
    background: #e6dbd2;
    border-bottom: 1px solid #855125;
}

.page-template-template-contact .wrapper.white p,.page-template-template-contact .wrapper.white h1,.page-template-template-contact .wrapper.white h2,.page-template-template-contact .wrapper.white h3,.page-template-template-contact .wrapper.white h4 {
    color: #fff;;
}
.page-template-template-contact .wrapper.white h1 {
    position: relative;
}
.page-template-template-contact .wrapper.white h1::after {
    content: "";
    position: absolute;
    left: 0;
    top: -100px;
    width: 104px;
    height: 80px;
    background: url(assets/images/elements/contact-white-logo.png) no-repeat center center;
}
.page-template-template-contact .wrapper.white p{
    font-size: 1.4em;
    line-height: 2em;
}
.page-template-template-contact .wrapper.white {
    background: #855125;
    padding-bottom: 180px;
    padding-top: 220px;
}

.page-template-template-contact.no-header-images #header-top, .header-images-disabled #header-top {
    margin-bottom: 0;
}
.black-overlay
{
    position: relative;
}
.black-overlay::after
{
    content: "";
    display: block;
    position:absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background: rgba(0,0,0,.4);
}

.ld-fadey-slider .ld-fadey-slider-tabs
{
    position: absolute;
    bottom: 25px;
    background: transparent;
}
.ld-fadey-slider .ld-fadey-slider-tabs li
{
    background: white;
    opacity: 1;
    position: static;
    background: transparent !important;
}
.ld-fadey-slider .ld-fadey-slider-tabs li::after
{
    display: none !important;
}
.ld-fadey-slider .ld-fadey-slider-tabs li a
{
    background-color: #fff !important;
    transition: transform .2s ease;
}
.ld-fadey-slider .ld-fadey-slider-tabs li.ld-fadey-slider-tab-here a
{
    background-color: #fff !important;
    border-color: #fff !important;
}

/* fixed header styles */
body
{
    /* padding-top:262px; */
}
.fixed.scrolled #header-top
{
    background: #fff;
}
.fixed #header-top .show-on-scroll
{
    display: none;
}
.fixed.scrolled #header-top .show-on-scroll
{
    display: block;
}
.fixed.scrolled #header-top .sidebar .widget.widget_nav_menu
{
    justify-content: flex-end;
}
.fixed.scrolled #header-top .sidebar .widget.widget_nav_menu a
{
    color: #855125;
}
.fixed.scrolled #header-top .widget_nav_menu .menu>li:after
{
    color: #855125;
}
.fixed.scrolled .sidebar.sidebar-header
{
    margin: 0 auto;
    max-width: 1280px;
}
.fixed.scrolled #header-top .widget:first-of-type
{
    padding-left: 30px;
}
.fixed.scrolled #header-top .widget.widget_logo
{
    padding-top: 10px;
    padding-bottom: 10px;
}
.fixed.scrolled #header-top .widget:last-of-type
{
    padding-right: 25px;
}
.fixed.scrolled
{
    box-shadow: 0 0 30px 0 rgba(0,0,0,.24);
}


/* end of fixed header styles */
.footer-quote-row
{
    margin-top: -40px;
}
.footer-quote-content
{
    max-width: 500px;
}
.footer-quote-aside
{
    flex-grow: 1;
}
.footer-quote-aside blockquote
{
    font-size: 2.6em;
    font-family: 'Halant', serif;
    color: #855125;
    line-height: 32px;
    font-style: normal;
        padding-left: 15px;
}
.footer-quote-aside .footer-quote-author
{
    color: #772D2F;
    font-size: 2em;
    line-height: 24px;
    font-style: normal;
    padding-left: 15px;
}

.blog_slider
{
    min-height: 640px;
}
.blog_slider .row
{
    padding-top: 0;
    padding-bottom: 0;
}
.blog_slider .row .col, .blog_slider .h-slider-inner li
{
    padding: 0;
}
.blog_slider .h-slider-inner
{
    padding: 0;
}
.blog_slider .flex
{
    align-content: stretch;
    align-items: stretch;
    min-height: 640px;
    padding-left: 0;
    padding-right: 0;
}
.blog_slider .flex .blog_desc
{
    align-self: center;
    padding-left: 12%;
    padding-right: 20px;
}
_:-ms-fullscreen, :root .blog_slider .flex .blog_desc
{
    flex-basis: calc(50% - 10px - 12%);
}
.blog_slider .flex .blog_thumb
{
    align-self: stretch;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.blog_slider .flex .blog_thumb img
{
    visibility: hidden;
    opacity: 0;
}

.blog_slider .ld_h_slider_wrapper.row
{
    padding: 0;
    overflow:hidden;
}

.blog_slider .blog_slider_title
{
    position: relative;
    padding-top: 95px;
}
.blog_slider .blog_slider_title::before
{
    content: "";
    position: absolute;
    top: 0;
    left: -20px;
    width: 95px;
    height: 75px;
    background: url(assets/images/elements/large-flair-brown.png) no-repeat center center;
    background-size: contain;
}
.blog_slider .blog_slider_title h4
{
    font-size: 2.2em;
    color: #772D2F;
    font-family: 'Halant', serif;
}
.blog_slider .blog_slider_excerpt p
{
    font-size: 1.4em;
    color: #585A59;
    max-width: 300px;
}

.blog_slider .h-slider-tabs
{
    text-align:left;
    padding-top: 20px;
    padding-left: 0;
    opacity: .5;
}
.blog_slider .h-slider-tabs li a
{
    background-color: #855125;
    border-color: #855125;
}
.blog_slider .h-slider-tabs li
{
    padding: 10px 5px;
    margin: 0;
}
.blog_slider .h-slider-tabs li:first-of-type
{
    padding-left: 0;
    margin-left: 0;
}

.blog_slider .blog_post_title
{
    left: 50%;
    top: 50%;
    position: absolute;
    transform: translate(-50%,-50%);
    width: calc(100% - 40px);
    text-align: center;
}
.blog_slider .blog_post_title h2
{
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 5em;
    margin: 0;
}

.g-recaptcha, .g-recaptcha iframe
{
    margin: 0;
    transition: box-shadow .2s ease, background .2s ease;
}
.g-recaptcha>div
{
    float:right;
}
.g-recaptcha.error iframe {
    box-shadow: -2px -2px 0px red;
    background: red;
    border-radius: 3px;
}

.custom_content_wrapper
{
    overflow-x: hidden;
}
body
{
    overflow-x:hidden;
}


/* RESPONSIVE RULES */

@media all and (min-width: 1680px) {
    /* first breakpoint to tidy up anything too big */
    /* .frontpage .wrapper.featured-section::before {
        top: -130px;
        height: 351px;
    } */
}

@media all and (max-width: 1280px) {
    /* first breakpoint to tidy up anything too big */

}

@media all and (max-width: 1150px) {
    .sidebar.float-right-sidebar {
        display: none;
    }

}

@media all and (max-width: 1075px) {
    .headshot_image-col {
        padding-right: 10px;
    }
    .headshot_image-col .headshot-image {
        margin: 0 auto;
        position: relative;
        right: auto;
        top: auto;
    }

}

@media all and (max-width: 980px) {
    /* second breakpoint for tablet in portrait mode */
    /* remove padding top from body since the fixed header will be hidden at this point */

    .frontpage .ld-fadey-slider li, .footer-content.custom_content_wrapper.wrapper
    {
        background-attachment: scroll;
    }

    .frontpage .ld-fadey-slider-tabs {
        padding-left: 25px;
    }
    .icon-scroll {
        display: none;
    }
    .ld-fadey-slider-wrapper {
        margin-top: 0;
    }
    #mob-nav-menu .green-book-nav a {
        margin-left: 0;
        font-size: 1.2em;
    }
    #footer-top .widget.widget_logo.logo {
        text-align: center;
    }
    .caption-wrapper .caption.col {
        padding: 20px;
    }
    .frontpage .wrapper.foot-cont::before {
        display: none;
    }
    body, body.logged-in {
        padding-top: 0;
    }
    /* remove left / right buttons on header, add in tabbed nav */
    .ld-fadey-slider-nav {
        display: none;
    }
    /* change font sizes down */
    h2, h3 {
        font-size: 2.4em;
    }
    h4 {
        font-size: 2em;
    }
    .caption-text, .caption-link {
        font-size: 2em;
    }
    .ld-fadey-slider {
        /*height: calc(100vh - 210px);*/
        /* % of viewport height */
        /*min-height: 300px;*/
        /* absolute height we don't want it to go below */
    }
    .frontpage .caption-inner {
        height: 260px;
    }
    .caption-inner {
        height: 220px;
    }
    /* responsive rules for post controls to stop them stacking wierdly */
    main .post-controls .span-1-3 {
        -webkit-flex-basis: 33.3333%;
        -moz-flex-basis: 33.3333%;
        -ms-flex-basis: 33.3333%;
        -o-flex-basis: 33.3333%;
        flex-basis: 33.3333%;
        flex-grow: 1;
    }
    main .post-controls .span-1-3 p {
        padding: 0;
    }
    .wrap.span-1-3.home-link {
        -webkit-flex-basis: 40px;
        -moz-flex-basis: 40px;
        -ms-flex-basis: 40px;
        -o-flex-basis: 40px;
        flex-basis: 40px;
    }
    /* end of responsive rules for post controls to stop them stacking wierdly */
     /* end of responsive styles for flowflow plugin */
    #header-top-bar-wrapper.fixed {
        /* override fixed positioning for mobile to avoid shonkyness. Also remove any padding added to <main> for the fixed positioning. */
        position: relative;
        height: auto;
    }
    body {
        padding-top: 0;
    }
    .span-1-6 {
        -webkit-flex-basis: 16.6666%;
        -moz-flex-basis: 16.6666%;
        -ms-flex-basis: 16.6666%;
        -o-flex-basis: 16.6666%;
        flex-basis: 16.6666%;
    }
}

@media all and (max-width: 850px) {
    .mc-field-group {
        display: block;
        text-align: left;
    }
    #mc-embedded-subscribe-form label {
        text-align: left;
        padding: 0;
        margin-bottom: 10px;
    }
    #mc-embedded-subscribe-form input[type="submit"] {
        margin-bottom: 0;
        margin-top: 10px;
    }
    #mc-embedded-subscribe-form #mce-EMAIL {
        margin-right: 0;
        max-width: 100%;
        margin-top: 10px;
    }
}

@media all and (max-width: 800px) {
    .span-1-6 {
        -webkit-flex-basis: 33.3333%;
        -moz-flex-basis: 33.3333%;
        -ms-flex-basis: 33.3333%;
        -o-flex-basis: 33.3333%;
        flex-basis: 33.3333%;
    }
    .footer-gallery-img.col.span-1-6:nth-child(n+10) {
        display: none;
    }
    .fp-features-row .span-1-2 {
        -webkit-flex-basis: 100%;
        -moz-flex-basis: 100%;
        -ms-flex-basis: 100%;
        -o-flex-basis: 100%;
        flex-basis: 100%;
    }
    .fp-features-row .feature {
        min-height: 250px;
        background: #000;
    }
    .fp-features-row .feature img {
        height: 100%;
        object-fit: contain;
    }
    .fp-features-row .feature .desc {
        max-width: 100%;
    }
}

@media all and (max-width: 720px) {
    .page-template-template-contact .wrapper.white {
        padding-bottom: 100px;
        padding-top: 80px;
    }
    .footer-quote-aside blockquote,.footer-quote-aside .footer-quote-author
    {
        padding-left: 0;
    }
    .footer-quote-content {
        max-width: none;
    }
    main .span-1-3, main .span-1-4, main .span-2-3, main .span-3-4 {
        -webkit-flex-basis: 100%;
        -moz-flex-basis: 100%;
        -ms-flex-basis: 100%;
        -o-flex-basis: 100%;
        flex-basis: 100%
    }
    .custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature {
        display: block;
    }
    .custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature .desc {
        width: 100%;
    }
    .custom_content_wrapper.wrapper.layout_features.wide .col:first-of-type .feature img {
        width: 100%;
    }
    .blog_slider .blog_post_title h2 {
        font-size: 3.8em;
    }
    .blog_slider .flex .blog_desc {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

@media all and (max-width: 650px) {
    /* intermediate breakpoint between tablet in portrait and phone in portrait */

    #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item
    {
        width: 50% !important;
    }

    /* change font sizes down */
    .caption-wrapper .caption.col {
        padding: 20px;
        margin-bottom: 25px !important;
    }
    .caption-title h2 {
        font-size: 3em;
    }
    .fp-features-row .feature .desc {
        bottom: 0;
    }


    .ld-fadey-slider-tabs {
        display: inline-block;
    }
    h1 {
        font-size: 3em;
    }
    .caption-text, .caption-link {
        font-size: 1.8em;
    }
    #footer .row.very-wide ul {
        text-align: center;
    }
    .blog-fea-cont {
        font-size: 1.4em;
    }
    .blog-fea-title {
        font-size: 2.4em;
    }
    .blog-fea-cont {
        font-size: 1.4em;
    }
    .blog-fea-title {
        font-size: 2.4em;
    }
    .logo-top-foot::before {
        left: -33px;
        transform: scale(0.8);
    }
    footer h3 {
        font-size: 3.6em;
    }
    .alignright, .alignleft {
    float: none;
    margin: 0 auto;
}
}
@media all and (max-width: 600px) {
.content .gallery {
margin-left: -15px !important;
}
}
@media all and (max-width: 500px) {
    /* breakpoint for phone in portrait */

    #copyright p, #copyright p.text-right {
        text-align: center;
    }
    .span-1-6 {
        -webkit-flex-basis: 50%;
        -moz-flex-basis: 50%;
        -ms-flex-basis: 50%;
        -o-flex-basis: 50%;
        flex-basis: 50%;
    }
    .footer-gallery-img.col.span-1-6:nth-child(n+7) {
        display: none;
    }
    .fp-blog-slider .feature .desc {
        position: relative;
        bottom: auto;
        right: auto;
    }
    #copyright .text-right {
        padding-top: 10px;
    }
    .logo-top-foot::before {
        left: -38px;
        transform: scale(0.75);
    }
    .footer-banner .flex::before {
        left: -33px;
        transform: scale(0.7);
    }
}

@media all and (max-width: 400px) {}

/* END OF RESPONSIVE RULES */
