/*------------------------------------------------------------------------------------------------------------*/
/*  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 {
    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.4em;
    line-height: 1.8em;
    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: 600;
    width: 100%;
    clear: both;
    font-family: 'Arvo', serif;
    position: relative;
}

h1, h2, h3, h4, h5, h6 {
    color: #BE0101;
    font-weight: 600;
}

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

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

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
{
    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: 2.6em;
    line-height: 1.4em;
    font-weight: normal;
    font-style: normal;
    color: #315036;
}
blockquote:after
{
    content: "”";
}
span.author
{
    color: #4E3E34;
    font-size: 2em;
}

blockquote p, p blockquote
{
    font-size: 100%;
}

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

/*** end typography ***/
a {
    color: #BE0101;
}

/* buttons & controls */
.blog-post .post__category-label {
    background: #BE0101;
    color: #FFF;
    font-size: 12px;
    font-weight: 600;
    text-align: left;
    transform: none;
    transition: color .2s ease;
    padding: 10px 20px;
    position: relative;
    min-width: 170px;
    min-height: 30px;
    display: inline-block;
    line-height: 25px;
}
.stnd-btn, .big-buttons a {
    background: #5CB9E8;
    color: #FFF;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    transform: none;
    transition: color .2s ease;
    padding: 16px 20px;
    position: relative;
    display: inline-block;
    line-height: 1;
    min-width: 190px;
    text-transform: uppercase;
    text-align: center;
}
.caption-title.big-buttons a
{
    background: transparent;
    text-align: left;
    border: 1px solid #fff;
}
a.post
{
    height: 100%;
    background: #fff;
}
.blog-post .post__category-label {
    width: auto;
    display: block;
    background: #fff;
    z-index: 20;
    padding: 0;
    text-align: left;
    color: #b8c7d0;
    font-weight: 600;
    min-height: 0;
    margin-bottom: 5px;
}
.post__title h3
{
    color: #CE8700;
}
input, textarea, select {
    border: none;
    color: #333;
    background: #fff;
}

input[type="submit"], button {
    background: #BE0101;
    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;
}
/* 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;
}

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

header .widget_nav_menu .menu li a {
    white-space: nowrap;
}
header .widget_nav_menu a, header .widget_nav_menu .nav-stub-span {
    font-size: 2.4em;
    padding: 0 10px;
    text-align: left;
    line-height: 2em;
    display: block;
    color: #F0B636;
    font-weight: 600;
    font-family: 'Arvo', serif;
    cursor: pointer;
}
header .widget_nav_menu a:hover, header .widget_nav_menu .nav-stub-span:hover {
    color: #fff;
}
header .widget_nav_menu .children {
    font-size: 100%;
    background: #F0B636;
}

header #header-top .widget_nav_menu .children a {
    color: #BE0101 !important;
    font-size: 16px;
    line-height: 1.8em;
    text-align: left;
    padding: 5px 20px;
}
header #header-top .widget_nav_menu .children a:hover {
    color: #fff !important;
}
.children-inner {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

header .widget_nav_menu a::before,
header .widget_nav_menu .nav-stub-span::before
{
    display: block;
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    border-bottom: 3px solid #CE8700;
    bottom: 0;
    opacity: 0;
    transition: width .2s ease, opacity .2s ease;
    display: none;
}

header .widget_nav_menu a:hover::before,
header .widget_nav_menu a:active::before,
header .widget_nav_menu a:focus::before,
header .widget_nav_menu .nav-stub-span:hover::before,
header .widget_nav_menu .nav-stub-span:active::before,
header .widget_nav_menu .nav-stub-span:focus::before {
    /* hover state for top level navigation link */
    width: 60px;
    opacity: 1;
}

header .widget_nav_menu li.current-menu-item>a::before,
header .widget_nav_menu li.current-page-ancestor>a::before,
header .widget_nav_menu li.current-menu-item>.nav-stub-span::before,
header .widget_nav_menu li.current-page-ancestor>.nav-stub-span::before {
    /* currently active top level navigation link */
    width: 60px;
    opacity: 1;
}

header .widget_nav_menu .book-btn a::before,
header .widget_nav_menu .children a::before
{
    display: 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-top .sidebar-header li.top-contact-row {
    position: absolute;
    top: 5px;
    right: 20px;
}
.top-contact-row a, .top-contact-row p {
    color: #fff;
    font-size: 14px;
    /*padding: 0 5px;*/
    line-height: 40px;
    display: inline-block;
    font-weight: 600;
}
.top-contact-row p {
    padding-right: 0;
    padding-left: 20px;
}
.top-contact-row a:hover {
    color: #F0B636;
}

/* end of header top bar styles */
/* styles for fixed header on desktop */
#header-top-bar-wrapper.fixed {
    position: fixed;
    z-index: 100;
    top: 0;
    backface-visibility: hidden;
    height: 130px;
}
.logged-in #header-top-bar-wrapper.fixed {
    top: 32px;
}
.fixed #header-top-bar {
    overflow: hidden;
    -webkit-transition: height .2s ease;
    transition: height .2s ease;
}

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

.fixed #header-top .widget.logo img {
    -webkit-transition: max-width .2s ease;
    transition: max-width .2s ease;
    max-width: 174px;
}
body
{
    padding-top: 130px;
}

.fp-constrict-row .row
{
    justify-content: space-between;
}
.fp-constrict-row .row .col
{
    max-width: 400px;
}

/** mobile navigation colours */
.mob-nav-wrapper
{
    transition: max-height .2s ease;
    transform: scale(0);
    position: absolute;
}
.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 #134465;
    padding: 10px 20px 10px 20px;
    display:block;
}

.mob-nav-wrapper .children a {
    padding-left: 40px;
    background-color: rgba(19,68,101,.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: #BE0101;
}

#header-top-bar {
    position: absolute;
    z-index: 10;
    right: 0;
    width: auto;
}

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

.no-header-images #header-top, .header-images-disabled #header-top {
    position: relative;
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

.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: 80px;
    background: #BE0101;
    z-index: 4;
}

footer p {
    font-size: 1.2em;
    font-weight: 400;
}

footer a:hover {
    color: #59361F;
}

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

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

#copyright {
    display: none;
}

/*******/
/* 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 - 130px);
}
.logged-in .ld-fadey-slider.slider-size-full {
    height: calc(100vh - 160px) !important;
}

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

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

.ld-fadey-slider.slider-size-small {
    height: 470px;
    min-height: 470px;
}
.ld-fadey-slider li.image-position-top
{
    background-position: center top;
}
.ld-fadey-slider li.image-position-topthird
{
    background-position: center 33%;
}
.ld-fadey-slider li.image-position-middle
{
    background-position: center center;
}
.ld-fadey-slider li.image-position-bottomthird
{
    background-position: center 66%;
}
.ld-fadey-slider li.image-position-bottom
{
    background-position: center bottom;
}

/* 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;
}
.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:rgba(255,255,255,0.6);
    width: 8px;
    height: 8px;
    border: 1px solidrgba(255,255,255,0.6);
}

.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:rgba(255,255,255,0.6);;
    transform: scale(1.4);
    border-color:rgba(255,255,255,0.6);;
}

/* 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;
}
.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%;
    text-align:left;
}

.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;
    padding-bottom: 0;
}

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

/* 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 -9px rgba(0, 0, 0, 0.75);*/
    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__title, .post__title {
    width: 100%;
    margin-bottom: 0;
    text-align: left;
    position: relative;
}

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

.feature .desc, .blog-post .desc {
    padding: 40px 10px;
}

/* 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-listing__load-more-btn p {
    margin-bottom: 0;
}

/* 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: #4C306D;
    font-weight: 600;
}

.post-controls {
    border-top: 1px solid #4C306D;
    border-bottom: 1px solid #4C306D;
    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: #000;
}

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

/* 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 {
    max-width: 140px;
    padding: 16px 30px;
    font-size: 12px;
    color: #fff;
    background: #BE0101;
    display: inline-block;
    text-transform: uppercase;
    min-width: 136px;
    text-align: center;
    font-weight: 400;
}

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

/* 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: 5px 15px;
    height: 60px;
    -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: #fff;
    text-transform: uppercase;
    font-weight: 400;
}

.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 */

/* fancybox3 close button background */
.ld_fancybox_close {
    background: #008AD3;
    display: block;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 125%);
    z-index: 50;
    position: absolute;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    padding: 15px 40px;
    border-radius: 50px;
    font-size: 10px;
    font-weight: 600;
}

.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 */

.Header_image.alignleft {
    background: #fff;
    padding: 3px;
}
.page-template-template-contact .contact-form-wrapper .social-medium .social li a{

}
.page-template-template-booking .main-con {
    padding: 120px 0;
}
.frontpage .custom_content_wrapper:not(.very-wide) .feature .desc {
    width: 100%;
    margin-top: 0;
    background: transparent;
    padding: 15px 0;
}
.frontpage .custom_content_wrapper:not(.very-wide) .feature .desc * {
    color: #fff;
}
.frontpage .custom_content_wrapper:not(.very-wide) .feature .desc p {
    font-size: 1.8em;
    line-height: 1.4em;
    font-weight: 300;
}
.frontpage .custom_content_wrapper:not(.very-wide) .feature {
    background: transparent;
}
.custom_content_wrapper.wrapper.no-padding {
    padding: 0;
}
.custom_content_wrapper.wrapper.no-padding-top {
    padding-top: 0;
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed) h2 {
    font-size: 4.5em;
    margin-bottom: 0;
    text-align: left;
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed) h4 {
    font-size: 2.4em;
    font-weight: 300;
    font-family: 'Open Sans', sans-serif;
    color: #585A59;
    line-height: 1.4em;
}
.frontpage .custom_content_wrapper:nth-child(2) {
    padding-bottom: 100px;
    padding-top: 10px;;
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed)  p {
    font-size: 1.8em;
}
.scrolled #header-top {
    background: #fff;
}
.scrolled #header-top .widget.widget_logo.logo img {
    max-width: 77px;
}
#header-top-bar-wrapper.fixed.scrolled {
    height: 70px;
}
.scrolled #header-top .sidebar-header li.top-contact-row {
    display: none;
}
.scrolled #header-top .widget.widget_logo.logo {
    padding-top: 8px;
}
html .woocommerce table.shop_table th, html .woocommerce table.shop_table tfoot td, html .woocommerce table.shop_table tfoot th {
    font-weight: 600;
}
.wc-booking-summary .wc-booking-summary-number .status-confirmed {
    background-color: #BE0101;
}
.col.span-1-1.contact-form-error-message {
    padding: 0;
        padding-right: 0px;
        padding-bottom: 0px;
    padding-bottom: 20px;
}
.booking-form-wrapper select {
    border-bottom: none;
}
.woocommerce-terms-and-conditions-link {
    font-weight: 600;
}
.product-large-image-caption.big-buttons h3 {
    width: calc(100% - 40px);
    margin: 20px auto;
}
#header-top .sidebar-header .children li {
    display: block;
}
.page-template-template-listing h1 {
    color: #2172AA;
}
.page-template-template-listing.header-images-disabled .hero-title-wrapper.wrapper.empty-hero-title {
    display: none;
}
.page-template-template-listing .span-1-1.content {
    padding-top: 40px;
}

.form-row.form-row-wide.wc-pao-addon-wrap {
    margin-bottom: 10px;
    font-size: 1.4em;
}
.form-row.form-row-wide.wc-pao-addon-wrap * {
    font-size: 100%;
}
.your-hire .booking-form.flex.validate {
    margin: -10px;
    width: calc(100% + 20px);
}
.wc-pao-addon-field.wc-pao-addon-checkbox {
    margin-top: 8px;
    margin-right: 8px;
}
.your-hire .col-inner {
    height: 100%;
}
.wc-bookings-booking-form-button.button {
    margin: 0;
    width: 100%;
    text-align: left;
    min-width: 80px;
}
.product-main-details-wrapper .product-gallery .row {
    background-color: transparent;
    padding: 20px 0 85px 0;
    max-width: 1040px;
}
.contact-form-foot {
    max-width: 470px;
}
.caption.col.span-1-2, .caption.col.span-1-2 .ld-fadey-slider-tabs {
    text-align: left !important;
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed) {
    /* background: #E6EBEE; */
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed) #ff-stream-1, .frontpage .custom_content_wrapper.layout_1_column:not(.embed) #ff-stream-1-slideshow {
    background: #E6EBEE;
}
.booking-form-wrapper input[type="submit"] {
    width: 100%;
    max-width: none;
    text-align: left;
    font-size: 1.8em;
    background: #BE0101;
    -webkit-appearance: none;
    appearance: none;
    border-radius: none !important;
    -webkit-border-radius:0px; /* for IOS */
    height: 50px;
    padding: 10px 20px;
}
footer .booking-form-wrapper input[type="submit"] {
    background: #F0B636;
}
.your-hire .booking-form-wrapper input[type="submit"] {
    background: #2172AA;
}
form.booking-form
{
    width: calc(100% + 5px);
    margin-left: -5px;
    margin-right: -5px;
}
.booking-form-wrapper .form-input-label.col {
    padding: 5px;
}
.your-hire .booking-form-wrapper .form-input-label.col {
    flex-basis: 100%;
}
.header-booking-form .col.span-1-2 {
    max-width: 450px;
    overflow: visible;
}

.woocommerce-cart-form__cart-item.cart_item .product-image, .shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents .product-img {
    display: none;
}
.wrapper.woocommerce-cart-wrapper {
    padding: 50px 0 80px 0;
    background: #e5eaed;
}
.wrapper.woocommerce-cart-wrapper .row {
    background: #fff;
}
.wrapper.woocommerce-checkout-wrapper {
    padding-top: 80px;
    background: #e5eaed;
}
.wrapper.woocommerce-checkout-wrapper .row.wide {
    background: #fff;
    margin-bottom: 40px;
}

.row.wide.float-color {
    background: #fff;
    padding: 100px;
    padding-top: 20px;
    margin-bottom: 100px;
}
.post-type-post .wrapper.row.wide.blog_feature_image {
    background: #fff;
}
.post-type-post .row.hero-message.top-con {
    max-width: 1020px;
    background: #fff;
    padding-left: 100px;
    padding-right: 100px;
    padding-top: 60px;
}
.custom_content_wrapper.wrapper.layout_1_column.contact-form-wrapper.wide .col {
    padding-right: 0;
}
.page-template-template-contact .custom_content_wrapper .label-text {
    font-weight: 700;
    color: #134465;
}

.page-template-template-contact .wrapper.white {
    background: #F0B636;
}
header .scrolled .widget_nav_menu a:hover, header .scrolled .widget_nav_menu .nav-stub-span:hover {
    color: #BE0101;
}
header .scrolled .widget_nav_menu .children {
    background: #fff;
}
header .scrolled #header-top .widget_nav_menu .children a:hover {
    color: #BE0101 !important;
}
body.page-template-template-contact .custom_content_wrapper.wrapper.layout_1_column.contact-form-wrapper.wide .row, body.page-template-template-contact .custom_content_container .bottom-address .row {
    padding: 80px;
}
.wc-bookings-date-picker .ui-datepicker td.partial_booked a::after {
    border-bottom: 2em solid #C96259 !important;
    border-left: 2em solid transparent !important;
}
.product-book-now .cart input.input-text {
    border: none !important;
}

.woocommerce-product-gallery__image a {

    width: 100%;
    display: block;

}
/*.woocommerce img, .woocommerce-page img {
    width: 100%;
}*/
.wc-bookings-date-picker .ui-datepicker td .ui-state-default, .wc-bookings-date-picker .ui-datepicker th {
    padding: .25em 0 !important;
}
label.wc-pao-addon-name {
    font-size: 13px !important;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 5px;
}
.wc-pao-addon-name {
    font-size: 13px !important;
}
.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt {
    /*padding: 15px;*/
    font-weight: 400;
    color: #fff !important;
    text-align: left;
    font-size: 1.6em;
    text-transform: uppercase;
    width: 100%;
}
.wc-bookings-booking-form-button.single_add_to_cart_button.button.alt:hover {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}
.woocommerce input[type="checkbox"].wc-pao-addon-checkbox {
    display: inline-block;
    margin-top: 7px;
    margin-right: 4px;
}
.caption a.stnd-btn {
    text-align: center;
    font-size: 15px;
}
.copy-text {
    background: #000;
    padding: 30px 0;
}

.content h2 {
    color: #BE0101;
}

.front-two-col .col.span-1-2:last-of-type {
    flex-basis: 38%;
}
.front-two-col .col.span-1-2:first-of-type {
    flex-basis: 62%;
    padding-right: 40px;
}
.front-two-col h3 {
    color: #2172AA;
    font-size: 2.6em;
}

.color-blog-wrap{
    background: #F0B636;
}
.blog-toplevel .row.hero-message.top-con {

    padding: 70px 0;
    justify-content: flex-end;
    align-content: flex-end;
}
.blog-toplevel .row.hero-message.top-con .col {
    max-width: 900px;
}
.blue-wrapper-fp-fea {
    background: #134465;
    border-top: 80px solid #134465;
    margin-top: 120px;
}
.frontpage .blue-wrapper-fp-fea .row {
    margin-top: -105px;
}
.footer-seo-content h1, .footer-seo-content h2, .footer-seo-content h3, .footer-seo-content h4 {
    color: #BE0101;
    margin-bottom: 30px;
}
.fp-top-con h1 {
    color: #475B1D;
}

.blog-post .desc {
    width: calc(100% - 40px);
    padding: 20px 15px;
    background: #fff;
    margin: 0 auto;
    margin-top: 0px;
    margin-top: -66px;
    z-index: 40;
    position: relative;
    padding-top: 10px;
}
.blog .post .explore-fea {
    display: none;
}
.contact-book p:last-of-type a:last-of-type{
    font-family: 'Kaushan Script',cursive;
    color: #59361f;
    font-size: 2em;
    font-weight: 400;
    position: relative;
    margin-left: 26px;
}
.contact-book p:last-of-type a:last-of-type:hover{
    color: #CE8700;
}
.contact-book p:last-of-type a:last-of-type::before {
    content: "";
    height: 36px;
    width: 1px;
    background: #ce8700;
    left: -25px;
    position: absolute;
    top: 5px;
}

.how-to-book p
{
    max-width: 100%;
    color: #585A59;
}
.sidebar.sidebar-footer-bottom.row.no-row-padding {
    margin: 0 auto;
    max-width: 1170px;
}
#footer-bottom {
    margin: 0 auto;
    background: #000;
}
.explore-fea {
    text-align: right;
    padding-right: 40px;
    margin-top: -60px;
    padding-bottom: 20px;
    position: relative;
    max-width: 130px;
    float: right;
}
.explore-fea p {
    font-family: 'Kaushan Script',cursive;
    color: #59361F;
    font-size: 2em;
    font-weight: 400;
}
.explore-fea::before {
    content: "";
    height: 36px;
    width: 1px;
    background: #ce8700;
    left: -15px;
    position: absolute;
    top: 5px;
}
.frontpage .custom_content_wrapper.layout_1_column:not(.embed) {
    padding-top: 70px;
}
.row.wide.footer-seo-content.big-buttons {
    padding-top: 150px;
    padding-bottom: 80px;
}
.frontpage .custom_content_wrapper.wrapper.layout_features.no-padding-top::after {
    content: "";
    position: absolute;
    bottom: -65px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 100px 0 100px;
    border-color: #f0b536 transparent transparent transparent;
    z-index: 10;
}
.wrapper.foot-cont
{
    background: #fff;
}

.page-template-template-contact .wrapper.white p {
    padding-top: 10px;
    font-size: 1.4em;
}
.page-template-template-contact .wrapper.white h1 {
    font-weight: 600;
}
.page-template-template-contact .wrapper.white a {
    font-weight: 600;
    color: #BE0101;
}
/* .page-template-template-contact .custom_content_wrapper,.page-template-template-contact .custom_content_container {
    background: #E5EAED;
    position: relative;
} */
.page-template-template-contact .custom_content_wrapper *, .page-template-template-contact .custom_content_container *{

    overflow: visible;

}


label.error
{
    overflow:hidden !important;
}
.page-template-template-contact .custom_content_container input, .page-template-template-contact .custom_content_container textarea {
    background: #fff;
}

.page-template-template-contact .custom_content_wrapper p {
    font-size: 2.2em;
    line-height: 32px;
    font-family: "Arvo";
}
.page-template-template-contact .custom_content_wrapper a {
    text-decoration: underline;
    color: #2172AA;
}
.page-template-template-contact .custom_content_wrapper a:hover {
    color: #134465;
}
.page-template-template-contact .custom_content_container  {
    padding-top: 40px;
}
.page-template-template-contact .custom_content_container::before {
    position: absolute;
    content: "";
    height: 82px;
    top: -80px;
    z-index: 10;
    left: 0;
    right: 0;
}
.page-template-template-contact .contact-form-wrapper:first-child {
    padding-top: 60px !important;
}
.page-template-template-contact .contact-form-wrapper h3{
    margin-bottom: 25px;
}
.page-template-template-contact .contact-content-wrapper .contact_form input[type="submit"] {

    color: #fff !important;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    transform: none;
    transition: color .2s ease;
    padding: 10px 20px;
    position: relative;
    min-width: 50%;
    min-height: 50px;
    display: inline-block;
    line-height: 30px;
    background: #BE0101;

}

footer input[type="submit"]
{
    background: #5CB9E8;
}

.blog .desc .feature__title h3 {
    font-size: 2em;
    color: #BE0101;
    font-weight: 600;
}
.blog .feature__description p {
    font-size: 1.2em;
    color: #8a8b8a;
}
.blog .top-con p {
    font-size: 1.4em;
}
.stnd-btn:hover, .big-buttons a:hover {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

.copy-text p {
    font-size: 1.2em;
    font-weight: 200;
    color: #fff !important;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 20px;
}
.copy-text a {
    color: #fff !important;
}
.copy-text a:hover {
    color: #BE0101 !important;
}
.h-slider-tabs li {
    margin: 0 4px;
}
.desc .feature__title h3 {
    font-size: 2.4em;
    text-transform: none;
    margin-bottom: 10px;
}
.ld_h_slider_wrapper.row {
    padding: 0;
}
header .widget_nav_menu .book-btn {
    margin-left: 15px;
}
.frontpage header .ld-fadey-slider-tabs a{
    margin: 0 3px;
}
.blog.archive main {
    margin-top: 30px;
}
.blog.archive main .taxonomy-archive-description p {
    font-size: 1.4em;
}
.hero-message .hero-sub p {
    color: #fb3099;
    font-size: 1.8em;
    font-weight: 400;
}
.page-contact h2 a {
    color: #FB3099;
    font-weight: 600;
}
.page-contact h2 a:hover {
    color: #000;
}
.row.hero-message.top-con {
    padding-top: 40px;
}
.social-medium .social li a {
background-color: #F0B636;
    opacity: 1;
    transform: scale(0.8);
}
.social-medium .social li a:hover {
    opacity:.8;
}

.contact-footer {
    padding-top: 170px;
    padding-bottom: 20px;
}

.feature .desc
{
    background: #fff;
    padding-bottom: 30px;
    width: calc(100% - 40px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    padding: 20px 15px;
    margin-top: -22%;
}

.custom_content_wrapper.wrapper.layout_features.featured-section.very-wide {
    padding: 0;
}
/*.feature {
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,.16);
}
*/
.head-contact-right {
    padding: 0;
    background: #0D3691;
    padding-left: 15px;
}

.head-wrap {
    display: inline-block;
}

.pink-book {
    display: inline-block;
    background: #315036;
    padding: 10px 20px;
    height: 50px;
}

.head-wrap2 {
    display: inline-block;
    color: #b7c3de;
    font-size: 16px;
    padding-right: 15px;
}

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

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

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

footer .col.widget_content_col {
    position: relative;

}

.ld-fadey-slider-wrapper::before {
    display:none;
}

.frontpage .featured-section {
    position: relative;
    padding-bottom: 70px;
    padding-top: 30px;
}
.footer-quote
{
    padding-bottom: 80px;
}
.frontpage .custom_content_wrapper.wrapper:first-child {
    padding-top: 60px;
    overflow: visible;
    padding-bottom: 10px;

}

.frontpage .custom_content_wrapper.wrapper:first-child .row {
    z-index: 10;
}

.icon-scroll, .icon-scroll:before {
    position: absolute;
    left: 50%;
}

.icon-scroll {
    width: 20px;
    height: 40px;
    box-shadow: inset 0 0 0 2px #406964;
    border-radius: 25px;
    top: 0;
    position: absolute;
    z-index: 10;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 0;
    display: none;
}

.icon-scroll:before {
    content: '';
    width: 4px;
    height: 4px;
    background: #406964;
    margin-left: -2px;
    top: 8px;
    border-radius: 4px;
    -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);
    }
}

#header-top-bar .widget.widget_logo.logo {
    flex-shrink: 0;
    text-align: left;
}

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

.logo-top-foot::before {
    content: "";
    background: url(assets/images/elements/ben-inn-logo-white.png) no-repeat center center;
    position: absolute;
    height: 60px;
    width: 389px;
    top: -70px;
    left: 10px;
}

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

    color: #fff;
}

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

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

/*h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong {
    font-weight: 600;
    color: #406964;
}*/

footer #copyright p {
    margin: 0;
    font-size: 1em;
    color: #fff !important;
}

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

.wrapper.foot-cont > .row {
    display: flex;
    min-height: 250px;
    max-width: 860px;
}
.footer-seo-content
{
    align-items: center;
    align-content: center;
}
.footer-seo-content.big-buttons {
    position: relative;
}

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

.logo-copy, #copyright .text-right {
    position: relative;
    overflow: visible;
    padding: 20px;
}

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

.ld-fadey-slider-wrapper {
    padding: 0;
}

.frontpage .row.top-con .col.span-1-1.content {
    max-width: 800px;
    margin: 0 auto;
}
.frontpage .row.top-con {
    padding-top: 65px;
    z-index: 2;
    background: #fff;
    position: relative;
    padding-bottom: 30px;
    position: relative;
    margin-bottom: 40px;
}
.frontpage .row.top-con::after {
    content: "";
    width: 400px;
    height: 1px;
    background: #475B1D;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    z-index: 10;
    display: block;
}
.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;
    font-size: 13px;
}

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

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

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

.col.widget_content_col.logo-top-foot {
    max-width: 530px;
    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;

    line-height: 1.8em;
}

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

.wrapper.featured-section-title {

    margin: 0 auto;
}

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

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

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

.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-weight: 400;
}
#header-top-bar-wrapper {
    z-index: 50;
}

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


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

.blog_feature_image {
    position: relative;
}

.widget.widget_nav_menu.row.wide {
    justify-content: center;
    align-self: flex-end;
    align-content:center;
    padding-bottom: 15px;
    padding-top: 0;
    z-index:99;

}

.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: left;
}
#footer-top .widget.widget_logo.logo .row.very-wide {
    max-width: 1320px;
}
#footer-top .widget.widget_logo.logo a {
    position: relative;
}

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

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

#header-top {
    background: #BE0101;
    box-shadow: 0px 0px 10px -5px rgba(0,0,0,.75);
}
.frontpage #header-top {
    box-shadow: 0px 0px 10px -5px rgba(0,0,0,.75);
}
.frontpage .row.hero-message.top-con p {
    font-size: 2.6em;
    margin-bottom: 0;
}

#footer-top {
    margin-top: 0;
    padding: 0 0 20px 0;
}
.logos-btm .col,.logos-btm .flex, .logos-btm .wrapper,  .logos-btm .row {
    height: 100%;
}
.logos-btm img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

footer a {
    position: relative;
    color: #CE8700;
    text-decoration: underline;
}

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

.footer-links a {
    position: relative;
}

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

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

.blue-bg {
    background: #000;
}

#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::after {
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .15);
    position: absolute;
    transition: background .25s ease;
    z-index: 5
}

.hero-title-wrapper.wrapper.empty-hero-title {
    padding-top: 20px;
    background: none !important;
}

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

.page-template-template-contact main ::-webkit-input-placeholder {
    color: transparent !important;
}

.page-template-template-contact main ::-moz-placeholder {
    color: transparent !important;
}

.page-template-template-contact main ::-ms-placeholder {
    color: transparent !important;
}

.page-template-template-contact main ::placeholder {
    color: transparent !important;
}

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

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

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

.featured-section {
    overflow: visible;
    background: #E6EBEE;
}

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

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

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

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

.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;
    /*color: #fff;*/
    font-size: 4.2em;
    line-height: 1.2;
}

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

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

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

.map-overlay {
    background-color: rgba(0,0, 0,.4);
    z-index: 2;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
}
.page-template-template-contact .contact-form-wrapper {
    padding-top: 60px !important;
}
.page-template-template-contact .custom_content_container {
    padding-bottom: 100px;
}
.map-overlay .map-text {
    color: #EDEDED;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    font-size: 4.5em;
    text-align: center;
    text-transform: uppercase;
    font-family: "Open Sans";
    font-weight: 600;
}

.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 {
    background: #fff;
}

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

.wrapper.contact-form-wrapper::before {
    width: 120px;
    height: 120px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -60px;
    z-index: 2;
}

input[type="submit"] {
    padding: 15px;
    float: right;
    font-size: 2em;
    font-weight: 400;
    color: #fff !important;
    text-align: left;
    text-transform: capitalize;
    text-align: center;
    font-size: 18px;
    text-transform: uppercase;
    min-width: 120px;
}
.searchform input[type=text]
{
    border: 1px solid #aaa;
    margin-bottom: 20px;
}

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

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

.wrapper.blog-listing {
    padding-bottom: 20px;
    background: #E6EBEE;
}

.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.4em;
    position: relative;
    line-height: 1.4;
    color: #585A59;
}

.frontpage .top-con h1 {
    margin-bottom: 10px;
}

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

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

.main-con {
    padding: 20px 0;
    /*padding-top: 40px;*/
    padding-bottom: 80px;
}



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

.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: transparent;
    opacity: .6;
}
.social-small .social li a:hover
{
    opacity: .8;
}

#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{
    color: #F0B636 !important;
}
footer h2 {
    font-size: 5.5em;
    position: relative;
}

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

#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-size: 2em;
    padding: 0;
    height: 57px;
    line-height: 25px;
    max-width: 150px;
    min-width: 150px;
    color: #fff !important;
    font-weight: 400;
    padding: 0 20px;
}

.front-blog-btn {
    top: 20px;
    font-size: 1.4em;
}
.hero-title-wrapper.wrapper {
    padding-top: 70px;
}

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

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

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

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

.feature__title h3, .post__title h3 {
    font-size: 2em;
    padding: 0;
    margin: 0;
    z-index: 1;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-family: 'Arvo', serif;
    color: #BE0101;
    font-weight: 400;
}
.blog .hero-title-wrapper.wrapper.empty-hero-title {
    background-color: #fff;
}
.ld-fadey-slider-tabs {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    position: relative;
    z-index: 2;
    bottom: 20px;
    width: 100%;
    display: block;
    bottom: 0;
    width: 100%;
    text-align:center;
    padding: 20px 0;
}

#header-top .widget.widget_logo.logo {
    padding: 16px 0 16px 45px;
    align-self: flex-start;
}

.sidebar.sidebar-header {
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    max-width: 1320px;
    margin: 0 auto;
    position: relative;
}

#header-top .sidebar-header li {
    padding-left: 0;
    padding-right: 0;
    position: relative;
    width: auto;
}
.mob-nav-wrapper .dropdown {
    right: 10px;
}

.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 */
/* 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;
    background: #E6EBEE;
    /*border: solid 2px #fff;*/
}
html .woocommerce table.shop_table tr th, html .woocommerce table.shop_table tr td
{
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
}
html .woocommerce table.shop_table tr th:last-child, html .woocommerce table.shop_table tr td:last-child
{
    border-right: none;
}
html .woocommerce table.shop_table tfoot tr:last-child th, html .woocommerce table.shop_table tfoot tr:last-child td
{
    border-bottom: none;
}
html .woocommerce table.shop_table td strong, html .woocommerce table.shop_table td, .woocommerce td.product-name .wc-item-meta .wc-item-meta-label {
    font-weight: 600;
}
html .woocommerce .order-again {
    display: none;
}

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

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: 120px 0 80px 0;
}
html .woocommerce .woocommerce-cart-form table.shop_table th {
    background: transparent;
    color: #134465;
    padding: 10px;
    font-weight: 600;
    border: solid 2px #fff;
}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
    background: #fff;
    border: solid 1px #aaa;
}
.woocommerce .woocommerce-shipping-calculator button.button {

    border: solid 1px #aaa;
    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, html .woocommerce button.button {
    font-size: 18px;
    padding: 0 20px;
    position: relative;
    background-color: #BE0101;
    min-width: 160px;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
    text-align:left;
    height: 50px;
    line-height: 50px;
}
#add_payment_method #payment .payment_method_paypal img, .woocommerce-cart #payment .payment_method_paypal img, .woocommerce-checkout #payment .payment_method_paypal img {
    width: auto;
}
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-color: #BE0101;
}

html .woocommerce #respond input#submit.alt.disabled, html .woocommerce #respond input#submit.alt.disabled:hover, html .woocommerce #respond input#submit.alt:disabled, html .woocommerce #respond input#submit.alt:disabled:hover, html .woocommerce #respond input#submit.alt:disabled[disabled], html .woocommerce #respond input#submit.alt:disabled[disabled]:hover, html .woocommerce a.button.alt.disabled, html .woocommerce a.button.alt.disabled:hover, html .woocommerce a.button.alt:disabled, html .woocommerce a.button.alt:disabled:hover, html .woocommerce a.button.alt:disabled[disabled], html .woocommerce a.button.alt:disabled[disabled]:hover, html .woocommerce button.button.alt.disabled, html .woocommerce button.button.alt.disabled:hover, html .woocommerce button.button.alt:disabled, html .woocommerce button.button.alt:disabled:hover, html .woocommerce button.button.alt:disabled[disabled], html .woocommerce button.button.alt:disabled[disabled]:hover, html .woocommerce input.button.alt.disabled, html .woocommerce input.button.alt.disabled:hover, html .woocommerce input.button.alt:disabled, html .woocommerce input.button.alt:disabled:hover, html .woocommerce input.button.alt:disabled[disabled], html .woocommerce input.button.alt:disabled[disabled]:hover
{
    background-color: #BE0101;
}

html .blockUI.blockOverlay
{
    background: transparent !important;
}

html .woocommerce tr.shipping
{
    display: none;
}

td p, td dl
{
    font-size: 100%;
}

/* 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: #134465;
    color: #fff;
    text-align: center;
    padding: 10px 20px;
    text-transform: uppercase;
    font-size: 1.5em;
}

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

/* search icon */
.search-icon {
    display: inline-block;
    width: 30px;
    height: 30px;
    border: 3px solid #fff;
    position: relative;
    border-radius: 50%;
    color: transparent;
}

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

/* blog feature image */
.blog_feature_image {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.blog_feature_image img
{
    width: 100%;
    margin: 0 auto;
}

/* 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 #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 input[type=text], footer .contact_form textarea {
    margin: 0;
    border-bottom: none;
}
footer .contact_form input[type=text]
{
    height: 42px;
}
footer .contact_form textarea
{
    height: 105px;
    min-height: 105px;
    display: block;
}
footer .contact_form input[type="submit"] {
    max-width: 100%;
    width: 100%;
    height: 50px;
    padding: 10px 20px;
    text-align: left;
}

.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: 10px 15px;
    padding-bottom: 0;
}

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

.feature__description p {
    font-size: 1.4em;
    line-height: 24px;
    margin: 0 auto;
    font-weight: 400;
}

/* padding for custom content rows */
.custom_content_wrapper:not(.embed) {
    padding: 60px 0;
}

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

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

/* end of frontpage features */

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

.footer-banner .flex {
    height: 760px;
    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%, -130px);
    max-width: 800px;
    padding: 0;
    width: calc(100% - 40px);
    padding-top: 70px;
}

.footer-banner .col h1,
.footer-banner .col h2,
.footer-banner .col h3,
.footer-banner .col h4,
.footer-banner .col h5,
.footer-banner .col h6 {
    font-size: 48px;
    margin: 0;
    width: 100%;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
}

footer sub {
    font-size: 10px;
}

.bg-wrapper {
    position: relative;
}

.frontpage .ld-fadey-slider-wrapper {
    position: relative;
}

.frontpage .ld-fadey-slider .caption-wrapper {
    height: auto;
}

.frontpage .caption-wrapper .row {
    justify-content: center;
    align-items: flex-end;
    align-content: center;
    flex-direction: row;
    height: auto;
    bottom: 10%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.frontpage .caption-wrapper .row > .col
{
    padding-left: 40px;
    padding-right: 40px;
}
.wrapper.white {
    background: #fff;
    padding-top: 140px;
}

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

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

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

.wrapper.white p {
    font-size: 2em;
    line-height: 2em;
    padding-top: 20px;
    font-weight: 400;
}

/* footer bottom */
.footer-banner p {
    margin: 0;
    font-size: 100%;
}

.footer-banner a {
    position: relative;
    font-size: 30px;
    font-weight: 700;
    background: #fff;
    padding: 18px 25px;
    color: #00ADE3;
    text-transform: uppercase;
    margin-bottom: 45px;
    display: inline-block;
    line-height: 1;
}

.footer-banner a:hover {
    color: #FB3099;
}

.sidebar-footer-bottom li.footer-banner:nth-child(2n) a {
    color: #FF8A26;
}

.sidebar-footer-bottom li.footer-banner:nth-child(2n) a:hover {
    color: #FB3099;
}

.footer-banner a::before {
    content: "";
    background: url(assets/images/elements/white-logo-min.png) no-repeat center center;
    width: 45px;
    height: 45px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -105px);
}

.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;
}
.h-slider-wrapper.row
{
    overflow: hidden;
}
/* top nav menu */


#header-top-bar .sidebar-header-top .widget_nav_menu
{
    padding: 0;
}
.sidebar-header-top .widget_nav_menu ul
{
    display: inline-block;
    text-align:right;
    padding-left: 20px;
}
.sidebar-header-top .widget_nav_menu li
{
    display: inline-block;
    position: relative;
}
.sidebar-header-top .widget_nav_menu li a
{
    color: #b7c3de;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: .04em;
    padding: 0 5px;
    line-height: 30px;
    text-transform: uppercase;
    position: relative;
}
.sidebar-header-top .widget_nav_menu .menu>li::after {
    display: inline;
    position:static;
    right: auto;
    top: auto;
    color: #b7c3de;
    font-weight: 200;
    font-size: 16px;
    content: "|";
    padding:0 9px;
}
#header-top-bar .sidebar-header-top .widget_nav_menu li a
{
    padding-right: 0;
    padding-left: 0;
}
#header-top-bar .sidebar-header-top .widget_nav_menu li.pink-book a
{
    padding: 0 5px;
}
#header-top-bar .sidebar-header-top .widget_nav_menu li:nth-last-of-type(2)::after
{
    display: none;
}
#header-top-bar .sidebar-header-top .widget_nav_menu li:nth-last-of-type(2)
{
    padding-right: 20px;
}

#header-top .sidebar-header .widget_nav_menu .menu
{
    width: 100%;
    text-align:right;
}
/* end of top bar subnav styles */


/* hide subnav on sidebar */
.float-right-sidebar
{
    display: none;
}

.fp-quotes
{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.h-slider-tabs li a
{
    border-color: #efd394;
    background: #efd394;
}
.h-slider-tabs li.slider_here a
{
    border-color: #efd394;
    background: #efd394;
}

.caption-hero h2
{
    font-size: 3.5em;
    font-weight: 600;
    color: #fff;
    margin-bottom: 5px;
}
.caption-title
{
    max-width: 400px;
    padding-top: 15px;
}
.caption-title h2
{
    font-size: 3.5em;
    font-weight: 600;
    color: #fff;
}

.feature .feature-btn
{
    color: #BE0101;
    display: inline-block;
    border-top: 1px solid #BE0101;
    min-width: 35px;
    padding-top: 5px;
    margin-top: 20px;
    font-size: 1.4em;
    text-transform: capitalize;
    font-weight: 600;
}
.feature .desc *
{
    margin-left: auto;
    margin-right: auto;
}


/* bottom features on FP */
.frontpage-bottom-features .feature
{
    height: auto;
}
.frontpage-bottom-features .desc::after
{
    display: none;
}
.frontpage-bottom-features .thumb::after
{
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    position: absolute;
    background: rgba(0,0,0,.2);
    opacity: 1;
    transition: background .2s ease;
}
.frontpage-bottom-features .feature:hover .thumb::after,
.frontpage-bottom-features .feature:focus .thumb::after
{
    background: rgba(0,0,0,.15);
    opacity: 1;
}
.frontpage-bottom-features .desc
{
    padding: 30px 20px 20px 20px;
    position: absolute;
    background: transparent;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    height: 100%;
    z-index: 2;
}
.frontpage-bottom-features .desc *
{
    color: #fff;
    text-align:left;
}
.frontpage-bottom-features .desc .feature-btn::before
{
    content: "";
    position: absolute;
    bottom: 100%;
    left: 20px;
    background:  url(assets/images/elements/header-flair.png) no-repeat center center;
    background-size: 100% auto;
    width: 70px;
    height: 12px;
    z-index: 1;
}
.frontpage-bottom-features .desc .feature-btn
{
    background: #fff;
    color: #315036;
    font-size: 1.2em;
    text-transform: uppercase;
    text-align: center;
    transform: none;
    left: 20px;
    bottom: 20px;
}
.frontpage-bottom-features .feature-subtitle h4
{
    text-transform: uppercase;
    font-size: 2em;
    font-weight: 700;
}
.frontpage-bottom-features .feature__title h3
{
    text-align:left;
    font-size: 4.6em;
    font-weight: 200;
}
.frontpage-bottom-features .feature__description
{
    position: absolute;
    bottom: 110px;
    margin: 0;
    width: auto;
}
.frontpage-bottom-features .feature__description p
{
    text-align:left;
    max-width: 320px;
    font-size: 1.4em;
    font-weight: 700;
    margin: 0;
}

.fp-quotes .h-slider-tabs
{
    max-width:420px;
    margin: 0 auto;
}
.fp-quotes .h-slider-tabs li a
{
    border-color: #fff;
    background: #fff;
}
.fp-quotes .h-slider-tabs li.slider_here a
{
    border-color: #fff;
    background: #fff;
}

#footer-bottom .social_links ul.social {

    display: block;
    text-align: right;
    margin: 0;
    left: unset;
    margin: 0 auto;
    transform: scale(1);

}

.featured-section-title h2
{
    text-align: center;
    font-size: 3em;
    font-weight: 600;
    color: #fff;
    margin: 20px 0 0 0;
    font-family: 'Arvo', serif;
}
header .featured-section-title h2
{
    margin: 0 auto;
    font-size: 4.5em;
    position: relative;
}
.wrapper.featured-section-title .row {
    justify-content: center;
}
.wrapper.featured-section-title .col.span-flex {
    display: flex;
    flex-basis: auto;
}
.col.span-flex.flex-more {
    flex-grow: 1;
    position: relative;
}
.col.span-flex.flex-more.right-more::after {

    content: "";
    height: 2px;
    background: rgba(255,255,255,0.4);
    position: absolute;
    width: calc(100% - 40px);
    top: 50%;
    right: 10px;

}
.col.span-flex.flex-more.left-more::after {

    content: "";
    height: 2px;
    background: rgba(255,255,255,0.4);
    position: absolute;
    width: calc(100% - 40px);
    top: 50%;
    left: 10px;

}.wrapper.woocommerce-checkout-wrapper {

    padding-top: 80px;

}
.frontpage .footer-seo-content
{
    padding-top: 100px;
    padding-bottom: 80px;
}
.product-image::before, .product-name::before {
    display: none !important;
}

.woocommerce table.shop_table_responsive tr .product-name {
    text-align: left !important;
}
.woocommerce table.cart td.actions .button,.woocommerce table.cart td.actions {
    display: none !important;
}
.variation dt, .product-name a, .woocommerce td.product-name .wc-item-meta .wc-item-meta-label{

    font-weight: 600;

}
#header-top, #header-top .sidebar
{
    height: 100%;
}

/* frontpage footer image slider */
.fp-quotes .thumb img
{
    width: 100%;
}
.fp-quotes .desc {

    position: absolute;
    left: 50%;
    transform: translate(-50%,-50%);
    top: 50%;
    padding-bottom: 50px;
    text-align: center;

}
.fp-quotes .desc *
{
    color: #fff;
}
.fp-quotes .desc h2
{
    font-size: 4.5em;
    margin-left: auto;
    margin-right: auto;
    max-width: 500px;
    font-family: 'Kaushan Script', cursive;
    font-weight: 400;
}
.fp-bottom-quote
{
    position: relative;
}
.fp-quotes .stnd-btn
{
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%,50%);
}
.fp-quotes .h-slider-tabs li
{
    padding: 0;
    margin: 0 4px;
}
.h-slider-inner
{
    padding-bottom: 0;
}
.fp-quotes .h-slider-inner > li
{
    padding: 0;
}

/* frontpage top content */
body.frontpage .ld-fadey-slider
{
    height: calc(100vh + -130px) !important;
    max-height: none;
}
body.frontpage .ld-fadey-slider .caption-wrapper
{
    height: 100%;
}


/* masonry filter buttons */
ul.post-filters
{
    text-align:left;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
}
.post-filters li
{
    display: inline-block;
    margin-right: 10px;
}
.post-filters li a {
    display: block;
    padding: 10px 20px;
    background: #fff;
    color: #fff;
    min-width: 153px;
    text-align: center;
    font-weight: 600;
    min-height: 50px;
    line-height: 30px;
    background: rgba(255,255,255,0.23);
    text-align: left;
    margin: 10px 5px;
}
.post-filters li a.selected,
.post-filters li a:hover
{
    background: #fff;
    color: #F0B636;
}

/* front page re-order */
.frontpage main {

    display: flex;
    flex-flow: wrap;

}
.frontpage main .row, .frontpage main .wrapper, .frontpage main .custom_content_container {

    flex-grow: 1;
    width: 100%;

}

/* footer captions */

.wrapper.footer-caption-wrapper
{
    background: #CE8700;
    order: 3;
    position: relative;
    bottom: auto;
}
.wrapper.footer-caption-wrapper .caption-hero h2
{
    font-size: 3em;
}
.footer-caption-wrapper h1,
.footer-caption-wrapper h2,
.footer-caption-wrapper h3,
.footer-caption-wrapper h4,
.footer-caption-wrapper h5,
.footer-caption-wrapper h6
{
    color: #fff;
}
.wrapper.footer-caption-wrapper .caption-hero h4.author
{
    font-size: 2em;
    font-family: 'Kaushan Script', cursive;
    font-weight: 200;
}
.wrapper.footer-caption-wrapper .row
{
    transform: none;
    top: auto;
    padding-top: 140px;
    padding-bottom: 95px;
}
.wrapper.footer-caption-wrapper p
{
    font-size: 1.4em;
    margin-bottom: 50px;
    line-height: 27px;
}
.wrapper.footer-caption-wrapper p:last-child
{
    margin-bottom: 0;
}
.wrapper.footer-caption-wrapper a
{
    color: #59361F;
}
.wrapper.footer-caption-wrapper .caption-title > *:last-child *
{
    color: #59361F;
}
.wrapper.footer-caption-wrapper .caption-title > *:last-child *:hover
{
    color: #fff;
}
.wrapper.footer-caption-wrapper .caption-title > *:last-child::before
{
    background: #59361F;
}

.frontpage .featured-section-wrapper
{
    position: absolute;
    bottom: 0;
}
.frontpage .featured-section
{
    z-index: 10;
    background: none;
}
/* Account Page Styles */
.wc_payment_method.payment_method_paypal img {
    max-width: 318px;
}
html .wc-booking-summary .wc-booking-summary-number .status-paid {
    background-color: #2172AA;
}
.html .woocommerce form.login {
    max-width: 550px;
}
.woocommerce table.shop_table a {
    font-weight: 300;
}
.woocommerce-MyAccount-navigation ul li {
    list-style: none;
    flex: 0 1 auto;
    background: #2172AA;
    font-size: 12px;
    font-weight: 600;
    text-align: left;
    transform: none;
    transition: color .2s ease;
    position: relative;
    min-height: 30px;
    display: inline-block;
    line-height: 25px;
    margin: 5px;
    padding: 10px 20px;
    flex-grow: 1 !important;
    text-align: center;
}
.woocommerce-MyAccount-navigation ul li a:hover {
    color: #ccc;
}
.page-my-account .row.wide.footer-seo-content.big-buttons {
    display: none;
}
.page-my-account main .row {
    max-width: 1020px;
}
.woocommerce-MyAccount-navigation ul
{
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 20px;
    font-size: 1.8em;
}
.woocommerce-MyAccount-navigation ul li
{
    list-style: none;
    flex: 0 1 auto;
}
.woocommerce-MyAccount-navigation ul li a
{
    color: #fff;
    line-height: 1.6em;
    display: block;
}
.woocommerce-MyAccount-navigation ul li.is-active a
{
    color: #ccc;
}
html .woocommerce #respond input#submit, html .woocommerce a.button, html .woocommerce button.button, html .woocommerce input.button
{
    font-size: 16px;
    margin-top: 0;
}
html .woocommerce-error, html .woocommerce-info, html .woocommerce-message
{
    line-height: 16px;
}
/*html .woocommerce-info
{
    line-height: 49px;
}*/
.woocommerce-Address .edit
{
    font-size: 1.6em;
    margin-bottom: 10px;
    display: block;
}
.woocommerce-MyAccount-content fieldset
{
    margin-top: 20px;
}
.woocommerce-MyAccount-content fieldset legend
{
    font-size: 1.4em;
}
html .woocommerce  table.shop_table.woocommerce-orders-table td, html .woocommerce  table.shop_table.woocommerce-orders-table th
{
    font-size: 1.6em;
}
html .woocommerce  table.shop_table.woocommerce-orders-table td a.button,.woocommerce .woocommerce-info .button
{
   display: inline-block;
   width: auto;
   margin: 0 10px;
   font-weight: 500;
   background-color: #fff;
   padding: 10px 25px;
   min-width: 85px;
   text-align: center;
}
 html .woocommerce a.button {
     font-weight: 500;
 }
address p
{
    font-size: 100%;
}
ul.payment_methods
{
    text-align: left;
    padding: 1em;
    border-bottom: 1px solid #d3ced2;
    margin: 0;
    list-style: none outside;
}
ul.payment_methods li
{
    line-height: 2;
    text-align: left;
    margin: 0;
    font-weight: 400;
}
div.payment_box
{    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 1em;
    margin: 1em 0;
    font-size: .92em;
    border-radius: 2px;
    line-height: 1.5;
    background-color: #dfdcde;
    color: #515151;
}
div.payment_box::before
{
    content: "";
    display: block;
    border: 1em solid #dfdcde;
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
    position: absolute;
    top: -.75em;
    left: 0;
    margin: -1em 0 0 2em;
}
#payment
{
    background: #fff;
    border-radius: 0;
    border-top: 1px solid #707070;
}
.account .wrapper.foot-cont {
    display: none;
}
/* product page styles */
.hero-title-wrapper.wrapper {
    background: #fff;
    padding-top: 160px;
    padding-bottom: 160px;
}

.post-type-product .hero-title-wrapper.wrapper {
    padding-top: 115px;
    padding-bottom: 115px;
}

.post-type-product main
{
    background: #E6EBEE;
}
.post-type-product main .col-inner, .page-template-template-booking main .col-inner
{
    /*background: #fff;*/
    padding-left: 60px;
    padding-right: 60px;
    padding-top: 80px;
    padding-bottom: 20px;
    height: 100%;
}
.post-type-product main .row
{
    background: #fff;
}
.col-inner input, .col-inner select{
    background: #E6EBEE;
    border-bottom: none;
    height: 40px;
}
.col-inner textarea
{
    background: #E6EBEE;
}
.col-inner .cart label {
    margin-bottom: 5px;
    line-height: 1.6;
    font-size: 1.2em;
}
.product-gallery .row
{
    padding-top: 0;
    padding-bottom: 0;
}

.product-main-details-wrapper
{
    padding-top: 120px;
    padding-bottom: 0;
    background: #F0B636;
}

.product-large-image .row,
.product-large-image .row .col
{
    padding-bottom: 0;
}
.wrapper.product-book-wrapper .row,
.wrapper.product-book-wrapper .row .col
{
    padding-top: 0;
}
.wrapper.product-book-wrapper .row
{
    padding-left: 20px;
    padding-right: 20px;
    justify-content: center;
    align-content: center;
}
.wrapper.product-book-wrapper .col:first-child
{
    padding-right: 0;
    padding-left: 0;

    align-self: stretch;
    position: relative;
    display: flex;
    justify-content: center;
    align-content: center;
    background: #fff;
    align-items: center;
}
.wrapper.product-book-wrapper .row .col.product-book-now
{
    background: #cfd9df;
    padding: 40px 80px;
}

.product-large-image-caption
{
    text-align: center;
    /* padding: 20px; */
    position: absolute;
    /* top: 50%; */
    left: 20px;
    /* transform: translateY(-50%); */
    width: auto;
    right: 20px;
    bottom: 0;
    align-content: center;
    top: 20px;
}
.product-large-image-caption *
{
    color: #fff;
}
.product-large-image-caption a
{
    text-align:center;
}


.wc-bookings-booking-form
{
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.wc-bookings-booking-form fieldset
{
    border: none;
    padding: 0;
    margin: 0 !important;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-block-start: 0;
    padding-inline-start: 0;
    padding-inline-end: 0;
    padding-block-end: 0;
}
.wc-bookings-booking-form fieldset legend
{
    display: none;
}
.wc-bookings-booking-form .wc-bookings-booking-cost
{
    background: none !important;
    font-size: 1.8em;
    border-top: none !important;
}
.post-type-product .woocommerce-Price-amount.amount
{
    font-size: 100% !important;
}


h1.product_title.entry-title
{
    /* hide title from summary; but this needs to be in the code for the script to work */
    display: none;
}

/*@media all and (min-width: 981px) {
    /* make the header slider full height & width of the page, fixed position, only for screens wider than 981px (this is when we switch to mobile nav - needs the 1)
    body.post-type-post .ld-fadey-slider-wrapper
    {
        height: 0;
        min-height: 0;
    }
    body.post-type-post .ld-fadey-slider
    {
         position header slider as fixed, give dimensions
        height: 100vh;
        position: fixed;
        width: 100vw;
        max-height: none;
        top: 0;
        z-index: -1; /* important - keep behind everything */
    }
    /* make backgrounds transparent for full height slider to show through
    body.post-type-post main, body.page-template-template-contact main .wrapper, body.post-type-post main .wrapper
    {
        background: transparent;
    }
}*/

body.page-template-template-contact .ld-fadey-slider-wrapper
{
    /* use the wrapper to pad out the height the slider would have taken up */
    height: 0;
    min-height: 0;
}
body.page-template-template-contact .ld-fadey-slider
{
    /* position header slider as fixed, give dimensions */
    height: 100vh;
    position: fixed;
    width: 100vw;
    max-height: none;
    top: 0;
    z-index: -1; /* important - keep behind everything */
}

/* make backgrounds transparent for full height slider to show through */
body.page-template-template-contact main, body.page-template-template-contact main .wrapper
{
    background: transparent;
}
.page-template-template-contact .custom_content_wrapper, .page-template-template-contact .custom_content_container
{
    /* override for custom content wrapper style on contact page*/
    background: transparent;
}

/* header booking form */
.header-booking-from .booking-form-wrapper
{

}
.header-booking-form
{
    position: absolute;
    top: 0;
    padding: 0;
    z-index: 50;
    left: 50%;
    transform:translateX(-50%);
    padding-top: 110px;
    height: 0;
}
.header-booking-form h2 {
    font-size: 3em;
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
    padding-left: 10px;
}
.header-booking-form .col
{
    z-index: 50;
    padding-top: 20px;
}
.header-booking-form .col-inner, .booking-form-wrapper .col-inner
{
    background: #fff;
    padding: 15px;
}
.booking-form-wrapper .col-inner p {
    font-size: 1.4em;
}
/* end of header booking form */


/* datepicker styles */
.ui-widget.ui-widget-content
{
    min-width: 250px;
}

.hire-extras .wc-bookings-date-picker
{
    display: none !important;
}

/*.col-inner.flex
{
    height: 100%;
    align-content: center;
}*/

ul.wc-item-meta, .wc-booking-summary .wc-booking-summary-list
{
    font-size: 100%;
    margin-top: 0;
}
ul.wc-item-meta
{
    display: block;
    padding-left: 0;
}
.wc-booking-summary-actions
{
    display: none;
}

.worldpay-card-icons
{
    float: none;
    display: block;
}
.worldpay-card-icons img
{
    display: inline-block;
}
/* end of footer captions */


#header-top .sidebar-header li.widget_nav_menu
{
    padding-right: 20px;
}

/* campervan select styled to match form */
select.campervan_select
{
    height: 42px;
    border-radius: 0;
    appearance: none;
    -webkit-appearance: none;
    background: url("assets/images/elements/down-arrow-colour.png") no-repeat calc(100% - 20px) center #fff;
}

/* contact page should have the booking form */
.contact-content-wrapper, .contact-book-online-wrapper
{
    padding: 40px;
}
.contact-book-online-wrapper .booking-form-wrapper
{
    max-width: 400px;
    margin: 0 auto;
}
.contact-book-online-wrapper .booking-form-wrapper form
{
    margin-bottom: 0;
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-right: -10px;
}
.booking-form-wrapper form input.datepicker
{
    /* no blue border for datepicker inputs in booking form... */
    border-bottom: none;
    -webkit-border-radius:0px; /* for IOS */
}
.contact-book-online-wrapper
{
    background: #E6EBEE;
}
.contact-book-online-wrapper h2
{
    font-size: 4.5em;
}
.page-template-template-contact .wrapper.white .row.wide
{
    padding: 0;
}
.gmap.oembed
{
    width: 100%;
}


/* feature titles / paragraphs per visuals */
.feature__title h3, .post__title h3
{
    font-weight: 600;
    letter-spacing: -1px;
}
/* align box content to top instead of vertical center */
.product-features .col-inner.flex, .booking-your-hire .col-inner.flex
{
    align-content: flex-start;
    flex-flow: column;
}
.product-features .col-inner.flex ul
{
    margin-bottom: 0;
}
.extras-form-wrapper form
{
    margin-bottom: 0;
}

/* shorten login form while keeping left-aligned */
.page-my-account .woocommerce form.login
{
    max-width: 400px;
}
.woocommerce-form-login__rememberme input, .woocommerce-form-login__rememberme span
{
    vertical-align: middle;
}

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

/* cart note */
.cart-note
{
    float: left;
    max-width: calc(50% - 10px);
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 20px;
}

/* for IE */
body
{
    overflow-x: hidden;
}

.page-template-template-contact .wrapper.white .how-to-book p
{
    padding-top: 0;
}

/* end of visual refine 2019-05-20 */


/* fix for availability calendar 20190724 */
table.ui-datepicker-calendar tr td.partial_booked.bookable.last-of-type a
{
    /* partially booked day that falls immediately after an available day - show as half & half. */
    background: #2ecc71 !important;
    background: -moz-linear-gradient(-45deg, #2ecc71 0%, #2ecc71 50%, #e8b9b4 51%, #e8b9b4 100%) !important;
    background: -webkit-linear-gradient(-45deg, #2ecc71 0%,#2ecc71 50%,#e8b9b4 51%,#e8b9b4 100%) !important;
    background: linear-gradient(135deg, #2ecc71 0%,#2ecc71 50%,#e8b9b4 51%,#e8b9b4 100%) !important;
    filter    : progid:DXImageTransform.Microsoft.gradient( startColorstr='#2ecc71', endColorstr='#e8b9b4',GradientType=1 ) !important;
}
/* end of fix for availability calendar 20190724 */


.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout
{
    padding-top: 70px;
}
div[id^="_el_error"] label._error {
    color: red !important;
}

.caption-wrapper .booking-form h2
{
    font-size: 3em;
    color: #fff;
}
.caption-wrapper .booking-form
{
    width: calc(100% + 20px);
    margin-left: -10px;
}

.availability-wrapper
{
    display: none;
}
.availability-wrapper.show
{
    display: block;
}


footer .contact_form label.label-text
{
    display: none;
}
footer .col form.contact_form
{
    width: calc(100% + 10px);
    margin: 0 -5px;
}
footer .contact_form .col
{
    padding: 5px;
}

form.cart input, form.cart select, form.cart textarea
{
    background: #E6EBEE;
    border-bottom: none;
    height: 40px;
}



/* stripe payment gateway styles */
/*input[type=radio]:checked
{
    background: url(assets/images/elements/check-tick.png) no-repeat center center #fff;
    background-size: 80%;
}*/
.woocommerce #add_payment_method #payment ul.payment_methods li input, .woocommerce .woocommerce-cart #payment ul.payment_methods li input, .woocommerce .woocommerce-checkout #payment ul.payment_methods li input
{
    margin-right: 5px;
}
.woocommerce-checkout #payment ul.payment_methods
{
    font-size: 1.6em;
}
.woocommerce input[type=checkbox], .woocommerce input[type=radio]:checked
{
    vertical-align: middle;
}
.woocommerce-checkout-payment p
{
    font-size: 100%;
}
label[for="payment_method_stripe"]
{
    display: flex;
    height: 30px /* safari */;
}
label[for="payment_method_stripe"] img
{
    flex-basis: auto;
    flex-grow: 0;
    display: block;
    max-width: 120px;
}
.stripe-card-group,
.woocommerce-account .StripeElement,
.woocommerce-checkout .StripeElement {
    width: 100%;
}
.woocommerce form .form-row label
{
    font-size: 100%;
}
.woocommerce-privacy-policy-text p, .wc-terms-and-conditions .woocommerce-form__label.woocommerce-form__label-for-checkbox span
{
    font-size: 1.6em;
    vertical-align: middle;
}
/* end stripe payment gateway styles */


.product-main-details-wrapper .row
{
    background: #fff;
}

.page-template-template-booking .product-main-details-wrapper
{
    padding-bottom: 155px;
}
.page-template-template-booking .product-main-details-wrapper::after
{
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 100px 0 100px;
    border-color: #fff transparent transparent transparent;
    z-index: 10;
}
.page-template-tempalte-booking .product-main-details-wrapper
{
    padding-top: 150px;
}

.extras-form-wrapper
{
    width: 100%;
}

footer p
{
    color: #fff;
    font-size: 1.6em;
}

/* gift voucher add to cart form */
p.mwb_wgm_section
{
    font-size: 100%;
}
.mwg_wgm_preview_email
{
    display: none;
}
.post-type-product .quantity *
{
    vertical-align: middle;
}
.post-type-product .quantity::before
{
    display: block;
    content: "Quantity ";
    padding: 10px 10px 10px 0;
    font-size: 1.6em;
}
/* end gift voucher add to cart form */

/* country select */
.woocommerce .select2-selection.select2-selection--single
{
    padding: 10px;
    height: 48px;
    border-radius: 0;
}
.woocommerce .select2-selection__rendered
{
    font-size: 16px;
    padding-left: 0;
}
.woocommerce .select2-container--default .select2-results>.select2-results__options
{
    width: 100%;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow
{
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.woocommerce .select2-container--default .select2-selection--single
{
    height: 46px;
}
.select2-container--default .select2-results>.select2-results__options
{
    width: 100%;
}
/* end country select */


.booking-form-wrapper.alt-button input[type="submit"]
{
    background: none;
    color: #BE0101 !important;
    padding: 0;
    font-size: 1.6em;
    text-transform: lowercase;
    height: auto;
}
.booking-form-wrapper.alt-button input[type="submit"]:hover, .booking-form-wrapper.alt-button input[type="submit"]:focus
{
    box-shadow: none;
}


#mwb_wgm_from_name, #mwb_wgm_to_download, #mwb_wgm_message
{
    width: 100% !important;
}
.quantity
{
    padding-bottom: 20px;
}
html .mwb_wgm_added_wrapper .mwb_wgm_section .mwb_wgc_label, html .cart .mwb_wgm_section label
{
    font-size: 16px;
    font-weight: normal;
    text-transform: none;
}
/*.mwb_gw_method
{
    display: none;
}*/

html .woocommerce input.button
{
    max-width: 100%;
}

.woocommerce form .form-row label
{
    font-size: 12px;
}
.wooccm-file-list .wooccm-file-file
{
    max-width: 120px;
}
html .woocommerce .wooccm-additional-fields button.button
{

}
form
{
    width: 100%;
}
.product-add-to-cart .mwb_gw_added_wrapper, .product-add-to-cart .quantity
{
    width: 100%;
}
.mwb_gw_method
{
    line-height: 40px;
    vertical-align: middle;
    min-height: 40px;
    font-size: 1.4em;
}
.mwb_gw_method input
{
    font-size: 16px;
}
.mwb_gw_selected_template, .mwg_gw_preview_email
{
    display: none !important;
}
div.product-add-to-cart form.cart .mwb_gw_added_wrapper input
{
    font-family: inherit !important;
    font-size: 16px;
}


/* my account - hide downloads etc */
.page-my-account .hero-title-wrapper.wrapper
{
    padding-bottom: 0;
}
.page-my-account .woocommerce-MyAccount-navigation-link--downloads
{
    display: none;
}

/* datepicker styles for product page */
.post-type-product form.cart
{
    display: flex;
    flex-wrap: wrap;
}
.post-type-product form.cart .wc-bookings-form-col-1, .post-type-product form.cart .wc-bookings-form-col-2
{
    flex: 1 1 50%;
    padding-left: 70px !important;
    padding-right: 70px !important;
    padding-top: 80px !important;
    padding-bottom: 20px !important;
}
.post-type-product form.cart .wc-bookings-form-col-1::before
{
    content: "Your Hire";
    padding: 0;
    margin-bottom: 20px;
    margin-top: 0;
    line-height: 1.1em;
    width: 100%;
    clear: both;
    font-family: 'Arvo', serif;
    position: relative;
    color: #BE0101;
    font-weight: 600;
    font-size: 3em;
    display: block;
}
.post-type-product form.cart .wc-bookings-form-col-2::before
{
    content: "+ Extras";
    padding: 0;
    margin-bottom: 20px;
    margin-top: 0;
    line-height: 1.1em;
    width: 100%;
    clear: both;
    font-family: 'Arvo', serif;
    position: relative;
    color: #BE0101;
    font-weight: 600;
    font-size: 3em;
    display: block;
}
html body .mwb_gw_from_name, html body .mwb_gw_send_date.hasDatepicker, html body .input-text.mwb_gw_price, html body .mwb_gw_added_wrapper .mwb_gw_message
{
    width: 100% !important;
}

.book-button-wrapper
{
    width: 100%;
    margin-top: auto;
}

.woocommerce .woocommerce-message a.button.wc-forward
{
    /* hide continue shoppinhg button */
    display: none;
}


html #add_payment_method #payment ul.payment_methods, html woocommerce-cart #payment ul.payment_methods, html .woocommerce-checkout #payment ul.payment_methods
{
    padding: 20px 0;
}
html #add_payment_method #payment, html .woocommerce-cart #payment, html .woocommerce-checkout #payment
{
    border-radius: 0;
    background: none;
    border: none;
}


p.return-to-shop
{
    margin-top: 20px;
}

fieldset.wc-bookings-date-picker::after
{
    content: "Red days are booked, green days are available for booking.";
    font-size: 1.2em;
    margin-top: 15px;
    width: 100%;
    color: #585a59;
}

/* RESPONSIVE RULES */
@media all and (min-width: 1680px) {
    /* first breakpoint to tidy up anything too big */
}

@media all and (max-width: 1280px) {
    /* first breakpoint to tidy up anything too big */
    header .widget_nav_menu a, header .widget_nav_menu .nav-stub-span
    {
        font-size: 2em;
        padding: 0 6px;
    }
}

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

@media all and (max-width: 1075px) {
    header .widget_nav_menu a, header .widget_nav_menu .nav-stub-span
    {
        font-size: 1.8em;
        padding: 0 5px;
    }
    .headshot_image-col {
        padding-right: 10px;
    }

    .headshot_image-col .headshot-image {
        margin: 0 auto;
        position: relative;
        right: auto;
        top: auto;
    }
    .post-type-product .row.wide
    {
        max-width: calc(100vw - 40px);
        min-width: 0;
    }
}

@media all and (max-width: 980px) {
    .wrapper.product-book-wrapper .row
    {
        padding-left: 0;
        padding-right: 0;
    }
    .product-main-details-wrapper
    {
        padding-top: 20px;
    }
    .post-type-product .hero-title-wrapper.wrapper
    {
        padding-top: 15px;
        padding-bottom: 35px;
    }
    .post-type-product main .col-inner, .wrapper.product-book-wrapper .row .col.product-book-now
    {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .post-type-product form.cart .wc-bookings-form-col-1, .post-type-product form.cart .wc-bookings-form-col-2
    {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
    .product-main-details-wrapper .product-gallery .row
    {
        padding-bottom: 20px;
    }
    .row.wide.footer-seo-content.big-buttons {
        padding-top: 50px;
        padding-bottom: 40px;
    }
    #footer-bottom .social_links ul.social
    {
        text-align: left;
    }
    #footer-bottom .widget-content-col-1.social-wrap
    {
        order: 1;
    }
    #footer-bottom .widget-content-col-1.social-wrap
    {
        order: 1;
    }
    #footer-bottom .widget_content_col.copy-text
    {
        order: 2;
    }
    .copy-text p
    {
        font-size: 1.1em;
    }



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

    .product-gallery .col.span-1-4
    {
        -webkit-flex-basis: 33.33333333%;
        -moz-flex-basis: 33.33333333%;
        -ms-flex-basis: 33.33333333%;
        -o-flex-basis: 33.33333333%;
        flex-basis: 33.33333333%;
    }

    .fancybox-slider-wrap {
        bottom: 50px;
    }
    .ld_fancybox_close {
        bottom: 35px;
    }
    .post-type-product main .col-inner, .post-type-product main .col-inner, .wrapper.product-book-wrapper .row .col.product-book-now, .page-template-template-booking main .col-inner
    {
        padding-left: 50px;
        padding-right: 50px;
    }

    .logged-in #header-top-bar-wrapper.fixed {
        top: 0;
    }
    .mob-nav-wrapper
    {
        transform: none;
        position: relative;
    }

    /* 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.col {
        padding: 20px;
    }

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

    .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 */

    #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%;
    }
    .main-footer-text .span-1-2.widget_content_col {
        flex-basis: 100%;
    }
    .page-template-template-contact .wrapper.white .row.wide {
        padding: 0;
    }
    body.page-template-template-contact .custom_content_wrapper.wrapper.layout_1_column.contact-form-wrapper.wide .row, body.page-template-template-contact .custom_content_container .bottom-address .row {
        padding: 40px 10px;
    }
    .row.wide.float-color {
        padding: 10px;
        padding-top: 20px;
        margin-bottom: 10px;
    }

    .post-type-post .row.hero-message.top-con {

        padding-left: 10px;
        padding-right: 10px;
        padding-top: 0px;
    }
    .blog .hero-title-wrapper.wrapper.empty-hero-title {
        padding-top: 30px;
        padding-bottom: 20px;
    }
}

@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) {

    .frontpage .caption-wrapper .row
    {
        flex-direction: column;
        max-width: 470px;
        min-width: 0;
        bottom: auto;
        top: 50%;
        transform: translateX(-50%) translateY(-50%);
        padding: 0;
    }
    .frontpage .caption-wrapper .row .caption.col
    {
        display: none;
    }
    .frontpage .caption-wrapper .row .booking-form.col
    {
        flex-basis: 100%;
    }

    .col.span-1-2.your-hire
    {
        order: 2;
    }
    .col.span-1-2.hire-extras
    {
        order: 1;
    }

    /* .contact-book-online-wrapper, .contact-content-wrapper
    {
        flex-basis: 100%;
        padding: 20px;
        padding-top: 40px;
        padding-bottom: 40px;
    } */
    .page-template-template-contact .wrapper.white .row.wide
    {
        background:transparent;
    }
    .contact-book-online-wrapper .booking-form-wrapper
    {
        max-width: none;
        margin: 0;
    }
    /* .contact-content-wrapper
    {
        background: #fff;
    } */

    .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;
    }
    .frontpage .caption-wrapper .row {
        flex-wrap: wrap;
    }

    .caption-title > :first-child::before {
        display: none;
    }
    .caption-title > ::before {
        display: none;
    }
    .caption-wrapper .caption.col {
        margin-bottom: 0 !important;
    }
    .product-main-details-wrapper .span-1-2:not(.woocommerce-product-gallery__image) {
        flex-basis: 100%
    }
}

@media all and (max-width: 768px) {
    .cart-note
    {
        float: none;
        max-width: 100%;
    }
    .frontpage .ld-fadey-slider>li
    {
        background-attachment: scroll;
    }

    html .woocommerce td.product-name dl.variation dt
    {
        float: none;
    }
    html .woocommerce td.product-name dl.variation dd
    {
        padding-bottom: 3px;
    }
}

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

    .product-gallery .col.span-1-4
    {
        -webkit-flex-basis: 50%;
        -moz-flex-basis: 50%;
        -ms-flex-basis: 50%;
        -o-flex-basis: 50%;
        flex-basis: 50%;
    }

    .product-large-image-caption *{
        font-size: 15px;
    }
    .woocommerce-product-gallery__image a {
        pointer-events: 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%
    }
    .front-two-col .col.span-1-2:last-of-type {
        flex-basis: 100%;
    }
    .front-two-col .col.span-1-2:first-of-type {
        flex-basis: 100%;
        padding-right: 20px;
    }

    /* intermediate breakpoint between tablet in portrait and phone in portrait */
    /* change font sizes down */
    .fp-quotes .desc h2 {
        font-size: 2.5em;
    }
    .fp-quotes .desc {

        padding-bottom: 30px;
        width: calc(100% - 40px);

    }
    .fp-quotes .desc {
        padding-bottom: 15px;
    }
    .main-footer-text p {
        padding-bottom: 25px;
    }
    .hero-title {
        font-size: 3em;
    }
    .caption-wrapper .caption.col {
        padding: 20px;
        margin-bottom: 25px !important;
    }

    .caption-title h2 {
        font-size: 3em;
    }

    .ld-fadey-slider-tabs {
        display: inline-block;
    }

    h1, .contact-book-online-wrapper h2 {
        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);
    }
    .frontpage .row.top-con::after {
        width: 250px;
    }

}

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

    .post-filters li
    {
        margin:0;
        display: block;
        float: left;
        width: 50%;
    }
    .post-filters li a
    {
        margin: 5px;
        font-size: 12px;
        padding: 10px;
    }

    .header-booking-form .col.span-1-2
    {
        max-width: 100%;
    }

    .post-type-product main .col-inner, .wrapper.product-book-wrapper .row .col.product-book-now
    {
        padding-left: 20px;
        padding-right: 20px;
        padding-top:50px;
        padding-bottom:50px;
    }

    .fp-constrict-row .row
    {
        justify-content: center;
    }
    /* breakpoint for phone in portrait */

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

    .logo-top-foot::before {
        left: -38px;
        transform: scale(0.75);
    }
    .col.widget_content_col.logo-top-foot {
        padding-top: 20px;
        padding-bottom: 40px;
    }
    footer h2 {
        font-size: 4.2em;
    }
    .col.span-flex.flex-more.right-more::after, .col.span-flex.flex-more.left-more::after {
        display: none;
    }
}

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

/* END OF RESPONSIVE RULES */
