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

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

/* typography */

/* placeholder styles for input elements */

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

::-moz-placeholder {
    color: #5B8CA6;
    opacity: 1;
}

::-ms-placeholder {
    color: #5B8CA6;
    opacity: 1;
}

::placeholder {
    color: #5B8CA6;
    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.8em;
    font-weight: 300;
    color: #000;
}

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;
}

::-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: 300;
    width: 100%;
    clear: both;
    color: #000;
}

/* 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: 4.7em;
}

h2 {
    font-size: 3.7em;
}

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: #5B8CA6;
}

a:hover, a:active, a:focus {
    color: #000;
}

/* buttons & controls */

.stnd-btn, .big-buttons a {
    padding: 15px 40px;
    display: inline-block;
    color: #5B8CA6;
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
    background: #5B8CA6;
    font-size: 2.4em;
    font-weight: 300;
    color: #fff;
}

.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);
}

input, textarea, select {
    border: none;
    color: #333;
    background: #eff1f3;
    border-bottom: 1px solid #5B8CA6;
}

input[type=submit], button {
    background: #5B8CA6;
    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;
}

/*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: center;
    /* 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: #5B8CA6;
    font-size: 2em;
    padding: 0 20px;
    text-align: left;
    line-height: 2em;
    display: block;
    font-weight: 300;
}

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(91,140,166,0.7);
}

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(91,140,166,0.7);
}

header .widget_nav_menu a::after, header .widget_nav_menu a::after, header .widget_nav_menu a::after, header .widget_nav_menu .nav-stub-span::after, header .widget_nav_menu .nav-stub-span::after, header .widget_nav_menu .nav-stub-span::after, header .widget_nav_menu li.current-menu-item>a::after, header .widget_nav_menu li.current-page-ancestor>a::after, header .widget_nav_menu li.current-menu-item>.nav-stub-span::after, header .widget_nav_menu li.current-page-ancestor>.nav-stub-span::after {
    content: "";
    width: calc(100% - 40px);
    height: 2px;
    background: #fff;
    display: block;
    position: absolute;
    bottom: 0px;
    text-align: center;
    left: 50%;
    -webkit-transform: translateX(-50%) scaleX(0);
    transform: translateX(-50%) scaleX(0);
    -webkit-transition: transform .2s ease;
    transition: transform .2s ease;
}

header .widget_nav_menu a:hover::after, header .widget_nav_menu a:active::after, header .widget_nav_menu a:focus::after, header .widget_nav_menu .nav-stub-span:hover::after, header .widget_nav_menu .nav-stub-span:active::after, header .widget_nav_menu .nav-stub-span:focus::after, header .widget_nav_menu li.current-menu-item>a::after, header .widget_nav_menu li.current-page-ancestor>a::after, header .widget_nav_menu li.current-menu-item>.nav-stub-span::after, header .widget_nav_menu li.current-page-ancestor>.nav-stub-span::after {
    /* -webkit-transform: translateX(-50%) scaleX(1);
    transform: translateX(-50%) scaleX(1); */
}

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

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

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: 36px;
    padding-bottom: 26px;
    text-align: center;
}

#header-top-bar .widget_nav_menu a {
    font-size: 1.4em;
    padding: 5px 10px;
}

#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 .widget_nav_menu .menu a:hover, #header-top-bar .widget_nav_menu .menu a:focus {
    color: #5B8CA6;
}

#header-top-bar a, #header-top-bar p {
    color:#5B8CA6;
}
#header-top-bar a:hover {
    color: #CDC5A3;
}
#header-top-bar p {
    margin-bottom: 0;
}

/* 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;
}

.fixed.scrolled #header-top-bar {
    height: 0;
}

.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 #5B8CA6;
    padding: 10px 20px 10px 20px;
}

.mob-nav-wrapper .children a {
    padding-left: 40px;
    background-color: rgba(91,140,166,0.3);
}

/** 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: #5B8CA6;
}

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

#header-top {
    background: rgba(91,140,166,0.1);
    z-index: 2;
}

.no-header-images #header-top, .header-images-disabled #header-top {
    position: relative;
    /* avoid issues with overlapping the content when there are no header images */
}

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

.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: #fff;
    z-index: 4;
}

footer p {
    color: #000;
}



footer a:hover, footer a:focus, footer a:active {
    color: #000;
}

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: #5B8CA6;
}

#copyright p {
    margin: 0;
    font-size: 1.2em;
    color: #fff;
}
#copyright a {
    color: #fff;
}
#copyright a:hover {
    color: rgba(255,255,255,0.6);
}

/*******/

/* front page columns content */

.front-cont-cols {
    text-align: center;
}

/* height for header slider */

.ld-fadey-slider {
    /* initial dimensions of slider */
    height: 600px;
    min-height: 340px;
    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 - 190px);
}

/*
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: 800px;
    height: calc(100vh - 221px);
    /* when using vh, include a normal height fallback on the previous line for older browsers. */
}

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

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

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

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

/* 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;
}

.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;
}

.ld-fadey-slider-nav.prev, .h-slider-prev {
    left: 20px;
    transform: translateY(50%) 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: rgba(255, 255, 255, 0.7);
    width: 10px;
    height: 10px;
}

.ld-fadey-slider-tabs li.ld-fadey-slider-tab-here a, .h-slider-tabs li.slider_here a {
    background: rgba(255, 255, 255, 1);
}

/* 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: #5B8CA6;
}

.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;
}

.caption-wrapper .caption {
    display: table;
    width: 100%;
    height: 100%;
}

.caption-inner {
    vertical-align: middle;
    display: table-cell;
    height: 220px;
}

.frontpage .caption-inner {
    height: 300px;
}

.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 {
    color: #fff;
    padding-top: 10px;
    margin-bottom: 10px;
}

.caption-title {
    font-size: 6em;
}

/* 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%;
    /* make features the same height */
}

/* 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: 5px;
}

.feature__description, .post__description {
    width: 100%;
}

.feature .desc, .blog-post .desc {
    padding: 30px 20px;
}

/* posts */

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

.blog-post .desc {
    position: relative;
    padding: 20px;
}

.blog-post .thumb {}

.blog-post .thumb img {
    width: 100%;
}

/*.blog-post .thumb
    {

}
.blog-post .desc
{

}*/

.blog-post .post__category-label {
    position: absolute;
    height: 2.5em;
    line-height: 2.5em;
    padding: 0 20px;
    background: #5B8CA6;
    z-index: 2;
    font-size: 1.6em;
    left: 0;
    top: 0;
    color: #fff;
    display: none;
}

/* 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 #5B8CA6;
        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: #A69F91;
}

.post-controls {
    border-top: 1px solid #A69F91;
    border-bottom: 1px solid #A69F91;
    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: 15px;
    height: 26px;
    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 {
    display: inline-block;
    width: 35px;
    height: 35px;
    text-indent: 999px;
    overflow: hidden;
    background-color: #A69F91;
    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:hover {
    background-color: #A69F91;
}

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

.blog-listing__load-more-btn a {
    padding: 20px 40px;
    display: inline-block;
    border: 1px solid #5B8CA6;
    color: #fff;
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
    background: #5B8CA6;
    padding: 10px 30px;
}

.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 {
    border-bottom: 1px solid #243417;
    padding: 15px 20px;
    text-align: center;
}

.widget.subnav li a:hover, .widget.subnav .current_page_item a {
    color: #808080
}

.widget.subnav .hamburger-menu {
    background: #5B8CA6;
    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 #5B8CA6;
    color: #5B8CA6;
    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: #5B8CA6;
    text-transform: uppercase;
}

.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: #5B8CA6 !important;
}

/* end of flow flow social plugin styles */

/* fancybox3 close button background */

.ld_fancybox_close {
    background: #fff;
    display: block;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 125%);
    z-index: 50;
    position: absolute;
    color: #5B8CA6;
    text-transform: uppercase;
    text-align: center;
    font-size: 2em;
    cursor: pointer;
    padding: 15px 40px;
}

.social_links ul.social {
    text-align: left;
    margin: 0;
    left: 0;
    transform: scale(0.8);
    margin-left: -35px;
    text-align: left;
    transform: scale(0.8);
    margin-left: -10%;
}

/* ADDITIONS */
.blog-post h3 {
    color: #000 !important;
    font-weight: 400;
}
.ld-fadey-slider li::after {
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0,0,0,0.12);
    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: 7px;
}
.top-border-footer {
    max-width: 610px;
    margin: 0 auto;
    border-top: solid 1px #5B8CA6;
    padding-top: 30px;
}

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

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

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

.contact-cont-content .contact_form ::placeholder {
    color: transparent !important;
}

footer .contact_form input[type="text"], footer .contact_form textarea {
    font-weight: 300;
    font-size: 1.4em;
}
.footer-seo-content h3 a:hover {
    color:  #CDC5A3;
}
.footer-seo-content a:hover {
        color:  #CDC5A3;
}
.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;
}
.feature .desc::before {
    content: "";
    height: 37px;
    width: 100%;
    background: url(assets/images/elements/fea-triangle.png) no-repeat center center;
    position: absolute;
    top: -37px;
    left: 0;
    background-size: cover;
}
.frontpage .green-wrap {
    padding-bottom: 200px;
    padding-top: 40px;
}
.row.white-margin-top-inner {
    background: #fff;
    margin-top: -80px;
}
.row.content.front-cont-cols.flex-grow {
    margin-top: -120px;
}
.row.content.front-cont-cols.flex-grow h4 {
    color: #fff;
    font-size: 3.7em;
    margin-bottom: 60px;
}
#header-top-bar h4 {
    margin-bottom: 0
}
.blog_feature_image {
    margin-bottom: 20px;
}
.frontpage .hero-title {
    text-align: center;
}

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

footer h3 {
    font-size: 3.4em;
}

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

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

.footer-seo-content {
    z-index: 2;
    position: absolute;
    left: 50%;
    top: 55%;
    transform: translate(-50%, -50%);
}

.front-cont-cols .front-cont-content p {
    margin-bottom: 1em;

}

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

header .widget_nav_menu .menu > li::after {
    content: " \2219 ";
    display: block;
    position: absolute;
    right: -3px;
    text-align: center;
    top: 17px;
    font-size: 1.5em;
    font-weight: bold;
    color: #5B8CA6;
}

.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: #5B8CA6;
    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: #5B8CA6;
    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;
}

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

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

.head-contact span {
    color: #5B8CA6;
}

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

.head-contact a:hover {
    color: #5B8CA6;
}

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

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

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

.footer-seo-content a {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.readmore-fea {
    background: #fff;
}

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

.hero-title {
    font-family: 'Open Sans', sans-serif;
    color: #000;
    margin-bottom: 0;
    font-weight: 100;
    text-align: center;
}

.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: 400px;
}

.map-overlay {
    background-color: rgba(16, 63, 43, 0.6);
    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.2e;
}

.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;
}

input[type="submit"] {
    background: url(assets/images/elements/contact-arrow-flair.png) #5B8CA6 no-repeat calc(100% - 10px) center;
    padding: 15px;
    float: right;
    font-size: 1.4em;
    font-weight: 400;
    color: #fff !important;
}

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

.blog-slider a:hover {
    color: #5B8CA6;
}

.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: 1.6em;
}

.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-top {
    padding-bottom: 30px;
    padding-top: 40px;
}

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

#footer .orange-upper a {
    color: #5B8CA6;
    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: #5B8CA6;
}

#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: #5B8CA6;
    color: #fff;
    font-size: 1.2em;
    margin-bottom: 40px;
}

.footer-seo-content p {
    margin: 0;
    color: #fff;
    font-size: 2em;
}
.footer-seo-content a {
    margin-bottom: 0;
    color: #fff;
    font-weight: 400;
}
.footer-seo-content h3 a {
    margin-bottom: 0;
    color: #fff;
    background: transparent;
    top: -30px;
    font-size: 60px;
    font-weight: 300;
}

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

footer h1, footer h2, footer h3, footer h4, footer p {
    color: #000;
}

footer h2 {
    font-size: 3.5em;
}

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

.wrapper.foot-cont {
    background: url(assets/images/elements/push-back-road.png) no-repeat center center;
    background-size: cover;
    height: 450px;
    z-index: 5;
    padding: 30px 0 10px 0;
    position: relative;
}

.wrapper.foot-cont::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.05);
    height: 450px;
    z-index: 0;
    width: 100%;
}

.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: #5B8CA6;
    text-transform: uppercase;
}

.feature__description p, .post__description p {
    font-size: 1.3em;
}

.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;
}

.feature__description p, .post__description p {
    color: rgba(87, 76, 22, 0.7)
}

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

.fea-wrap-title {
    text-align: center;
    color: #fff;
    font-size: 4em;
    margin-bottom: 25px;
}
.blog-toplevel .col.span-1-1.content.text-center {
    display: none;
}
.feature__title h3, .post__title h3 {
    font-size: 1.8em;
    color: #000;
    margin-bottom: 20px;
    text-transform: uppercase;
    font-weight: 400;
}
.feature__description span {
    display: block;
    color: #5B8CA6;
    margin-top: 10px;
    font-weight: 600;
}
.wrapper.pagination {
    display: none;
}
.frontpage .wrapper.pagination {
    display: block;
}
.front-col-wrapp.wrapper {
    padding-bottom: 0;
}
.feature:hover .feature__description span {
    color: #000;
}
.frontpage .ld-fadey-slider-tabs {
    bottom: 60px;
    display: none;
}

.ld-fadey-slider-tabs {
    display: none;
}

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

.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%;
}

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 #5B8CA6 transparent;
    position: absolute;
    left: 0;
    top: -6px;
    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;
}

#header-top .widget.widget_nav_menu {
    /* background: #fff; */
}

.sidebar.sidebar-header {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

#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;
}

input[type="submit"]: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);
}

/* 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: #5B8CA6;
    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: block;
}

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

.post-type-product .woocommerce-Price-amount.amount {
    color: #5B8CA6;
}

/* 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: #5B8CA6;
}

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%;
}

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

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: 2.4em;
    padding: 10px 20px;
    text-align: center;
    background: #5B8CA6;
}

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: #5B8CA6;
}

/* 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: #5B8CA6;
    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: #5B8CA6;
    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: 500px; /* 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:60px;
}
.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;
}


/* floaty sidebar */
.sidebar.float-right-sidebar
{
    position: absolute;
    right: -140px;
    width: 70px;
    z-index: 999;
}
.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 #ffffff transparent;
}
.sidebar.float-right-sidebar .widget.subnav .mob-subnav-btn ~ ul.widget_subnav_menu
{
    position: absolute;
    right: 0;
    background: #fff;
    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;
}

.sidebar.float-right-sidebar .widget.subnav li:first-of-type a {
    padding-top: 20px;
}
.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;
}


/* styles for google recaptcha box */
.g-recaptcha {
    margin-bottom: 20px;
}
.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;
}
.col form.contact_form
{
    width: calc(100% + 20px);
}

.ld_fancybox_close
{
    z-index:999;
}



/* custom additions before this line */

/* RESPONSIVE RULES */

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

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

@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 */
    .caption-wrapper .caption {
        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-title {
        font-size: 4em;
    }
    .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 */
    /* responsive styles for flowflow plugin */
    #ff-stream-1 .ff-item, #ff-stream-1 .shuffle__sizer {
        max-width: 100% !important;
    }
    #ff-stream-1 .ff-theme-classic .ff-item img {
        height: auto !important;
    }
    #ff-stream-1 .ff-stream-wrapper .ff-item:nth-child(n+3) {
        display: none;
    }
    #ff-stream-1 .ff-stream-wrapper.show-all .ff-item:nth-child(n+3) {
        display: block;
    }
    #ff-stream-1 .ff-stream-wrapper .ff-item {
        text-align: left;
        float: none;
        position: relative !important;
        transform: none !important;
        width: 100%;
    }
    #ff-stream-1.ff-stream {
        min-height: 0 !important;
    }
    #ff-stream-1 .ff-stream-wrapper {
        height: auto !important;
    }
    .ff-stream-more-button.stnd-btn {
        /* styles for "more" button */
    }
    /* 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: 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;
    }
}

@media all and (max-width: 650px) {
    /* intermediate breakpoint between tablet in portrait and phone in portrait */
    /* change font sizes down */
    .fancybox-caption-wrap {
        bottom: 80px;
    }
    .ld_fancybox_close {
        background: #fff;
        display: block;
        left: 50%;
        bottom: 50px;
        -webkit-transform: translate(-50%, 100%);
        transform: translate(-50%, 125%);
        position: absolute;
        color: #5B8CA6;
        text-transform: uppercase;
        text-align: center;
        font-size: 1.4em;
        cursor: pointer;
        padding: 15px 30px;
    }
    .frontpage .ld-fadey-slider-tabs {
        bottom: 80px;
    }
    .ld-fadey-slider-tabs {
        bottom: 20px;
    }
    .ld-fadey-slider-tabs {
        display: inline-block;
    }
    h1 {
        font-size: 3em;
    }
    .caption-title {
        font-size: 3.4em;
    }
    .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;
    }
}

@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;
    }
}

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

/* END OF RESPONSIVE RULES */
