/*!
  THEME NAME: lamontdesign benchpress
  VERSION: 2.5.1
  LEVEL: LAMONTDESIGN
  AUTHOR: LAMONTDESIGN LTD
*/
/* charset */
/* declare variables for use later: */
/* used at smaller screen sizes to override $gutters values on columns, etc */
/* note - gutters and smallgutters should both be divisible by 2 to avoid subpixel rendering issues */
/* not used??? */
/* $altgutters             : 10px; */
/* should target ipad in portrait */
/* stuff that's too uncomfortable at 500 but too big at 800 */
/* should target iphone in portrait */
/* largest restricted width */
/* benchpress custom mixins */
/* custom mixins such as transition, etc */
/* benchpress CSS reset */
* {
  box-sizing: border-box;
  -webkit-font-smoothing: subpixel-antialiased;
}

html {
  padding: 0;
  position: relative;
}

body {
  margin: 0;
  position: relative;
  font-size: 62.5%;
}

article, aside, footer, header, main, nav, section, form, summary {
  display: block;
  position: relative;
  margin: 0;
}

button, input, select, textarea {
  /* font-size: 100%; */
  margin: 0 0 20px 0;
}

input[type=text], input[type=password], textarea, select {
  outline: none;
}

table {
  width: 100%;
  height: auto;
}

td p,
th p {
  /* font-size: 100%; */
  margin: 0;
}

form {
  margin-bottom: 20px;
}

input,
select,
button {
  padding: 10px 10px;
  /* height: 40px;
  line-height: 40px; */
  border: none;
  width: 100%;
  vertical-align: top;
}

input[type=checkbox],
input[type=radio] {
  width: auto;
  height: auto;
  margin-bottom: 0;
}

input[type=submit],
input[type=button],
button {
  cursor: pointer;
}

label {
  display: inline-block;
  width: 100%;
  clear: both;
  margin-bottom: 20px;
}

label input,
label select,
label textarea,
label button,
label[for] {
  margin-bottom: 0;
}

textarea {
  padding: 10px;
  width: 100%;
  min-height: 140px;
  max-height: 100%;
  border: 0;
  margin-bottom: 20px;
  max-width: 100%;
}

/* form validation */
input.error,
textarea.error,
select.error {
  color: red;
  box-shadow: 0 0 10px red;
  /* red glow */
}

label.error {
  position: absolute;
  overflow: hidden;
  top: -100%;
  left: -100%;
  width: 0;
  height: 0;
}

img {
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
  height: auto;
  display: block;
  max-width: 100%;
}

/* embeds and iframes */
iframe,
embed,
video,
audio {
  max-width: 100%;
  display: block;
  margin: 0 auto 20px;
}

video {
  width: 100%;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  height: auto;
  margin-bottom: 20px;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

figure img {
  display: inline-block;
  margin: 0;
}

/* css reset */
/* all typography & reset rules here */
b, strong {
  font-weight: bold;
}

p, input, textarea, select, h1, h2, h3, h4, h5, h6 {
  line-height: normal;
}

/* typography reset */
/* benchpress grid system */
/* clearfixes - benchpress doesn't use a float layout, but content from wordpress may - so we should cater for it in widgets and with a utility clearfix class */
.clearfix:before,
.clearfix:after,
.widget:before,
.widget:after,
.wrapper:before,
.wrapper:after {
  content: "";
  display: table;
}

.clearfix:after,
.wrapper:after,
.widget:after {
  clear: both;
}

.wrapper, main, footer, header {
  width: 100%;
}

.wrapper {
  position: relative;
}

/* flex utility classes */
/* flexbox layout */
.row, .sidebar, nav ul, .flex, .gallery {
  display: -webkit-flex;
  display: flex;
  /* support for older iOS & chrome */
  -webkit-justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  -webkit-align-content: flex-start;
  /* new syntax */
  justify-content: flex-start;
  flex-wrap: wrap;
  align-content: flex-start;
}

.flex {
  width: 100%;
}

.sidebar, nav ul, .gallery {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.wrap, .col, .flex-item, nav li, .span-flex, .gallery .gallery-item {
  min-width: 0%;
  /* workaround for Firefox, when contents are larger than box */
  /* and for IE11 which refuses to shrink flex items with images in them below the image width. % unit is needed for IE11 sadly. */
  -webkit-flex: 0 1 auto;
  /* old iOS, Safari, Chrome */
  flex: 0 1 auto;
  /* new syntax */
}

.flex-grow .wrap, .flex-grow .col, .flex-grow .flex-item, .flex-grow .span-flex {
  -webkit-flex-grow: 1;
  flex-grow: 1;
}

.widget {
  min-width: 0%;
  /* workaround for Firefox, when contents are larger than box */
  /* and for IE11 which refuses to shrink flex items with images in them below the image width. % unit is needed for IE11 sadly. */
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 100%;
  /* width        : 100%; */
  /* don't actually need this? NO! it breaks flex-grow and flex-shrink */
  position: relative;
}

.sidebar-footer-top .widget {
  width: 100%;
  /* only these widgets should be full width */
}

.sidebar-header,
.sidebar-footer,
.sidebar-header-mobile {
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
}

.sidebar-header,
.sidebar-header-mobile {
  /* vertically center items on the header and mobile header */
  -webkit-align-items: center;
  align-items: center;
}

.sidebar div[class^=sidebar] {
  width: 100%;
}

/* end of flexbox decs */
.row {
  position: relative;
  margin: 0 auto;
  padding: 10px;
  width: 100%;
  max-width: 865px;
}

.row.wide, .wide .row {
  max-width: 1020px;
}

.row.very-wide, .very-wide .row {
  max-width: 1320px;
}

.row.full-width, .full-width .row {
  max-width: 100%;
}

.wrap {
  margin: 0;
  padding: 0;
  max-width: 100%;
}

.col {
  margin: 0;
  padding: 10px;
  max-width: 100%;
}

.row.no-col-padding, .no-col-padding .row,
.no-col-padding .h-slider-inner {
  padding: 20px;
}

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

.no-col-padding .col,
.no-col-padding .h-slider-inner li {
  padding: 0;
}

.span-1-1 {
  -webkit-flex-basis: 100%;
  -moz-flex-basis: 100%;
  -ms-flex-basis: 100%;
  -o-flex-basis: 100%;
  flex-basis: 100%;
}

.span-1-2 {
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  -o-flex-basis: 50%;
  flex-basis: 50%;
}

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

.span-2-3 {
  -webkit-flex-basis: 66.6666%;
  -moz-flex-basis: 66.6666%;
  -ms-flex-basis: 66.6666%;
  -o-flex-basis: 66.6666%;
  flex-basis: 66.6666%;
}

.span-1-4 {
  -webkit-flex-basis: 25%;
  -moz-flex-basis: 25%;
  -ms-flex-basis: 25%;
  -o-flex-basis: 25%;
  flex-basis: 25%;
}

.span-3-4 {
  -webkit-flex-basis: 75%;
  -moz-flex-basis: 75%;
  -ms-flex-basis: 75%;
  -o-flex-basis: 75%;
  flex-basis: 75%;
}

.span-1-5 {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  -o-flex-basis: 20%;
  flex-basis: 20%;
}

.span-2-5 {
  -webkit-flex-basis: 40%;
  -moz-flex-basis: 40%;
  -ms-flex-basis: 40%;
  -o-flex-basis: 40%;
  flex-basis: 40%;
}

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

/* IE 11 flex bugfix */
_:-ms-fullscreen, :root .span-1-1 {
  -webkit-flex-basis: calc(100% - 20px);
  -moz-flex-basis: calc(100% - 20px);
  -ms-flex-basis: calc(100% - 20px);
  -o-flex-basis: calc(100% - 20px);
  flex-basis: calc(100% - 20px);
}

_:-ms-fullscreen, :root .span-1-2 {
  -webkit-flex-basis: calc(50% - 20px);
  -moz-flex-basis: calc(50% - 20px);
  -ms-flex-basis: calc(50% - 20px);
  -o-flex-basis: calc(50% - 20px);
  flex-basis: calc(50% - 20px);
}

_:-ms-fullscreen, :root .span-1-3 {
  -webkit-flex-basis: calc(33.3333% - 20px);
  -moz-flex-basis: calc(33.3333% - 20px);
  -ms-flex-basis: calc(33.3333% - 20px);
  -o-flex-basis: calc(33.3333% - 20px);
  flex-basis: calc(33.3333% - 20px);
}

_:-ms-fullscreen, :root .span-2-3 {
  -webkit-flex-basis: calc(66.6666% - 20px);
  -moz-flex-basis: calc(66.6666% - 20px);
  -ms-flex-basis: calc(66.6666% - 20px);
  -o-flex-basis: calc(66.6666% - 20px);
  flex-basis: calc(66.6666% - 20px);
}

_:-ms-fullscreen, :root .span-1-4 {
  -webkit-flex-basis: calc(25% - 20px);
  -moz-flex-basis: calc(25% - 20px);
  -ms-flex-basis: calc(25% - 20px);
  -o-flex-basis: calc(25% - 20px);
  flex-basis: calc(25% - 20px);
}

_:-ms-fullscreen, :root .span-3-4 {
  -webkit-flex-basis: calc(75% - 20px);
  -moz-flex-basis: calc(75% - 20px);
  -ms-flex-basis: calc(75% - 20px);
  -o-flex-basis: calc(75% - 20px);
  flex-basis: calc(75% - 20px);
}

_:-ms-fullscreen, :root .span-1-5 {
  -webkit-flex-basis: calc(20% - 20px);
  -moz-flex-basis: calc(20% - 20px);
  -ms-flex-basis: calc(20% - 20px);
  -o-flex-basis: calc(20% - 20px);
  flex-basis: calc(20% - 20px);
}

_:-ms-fullscreen, :root .span-2-5 {
  -webkit-flex-basis: calc(40% - 20px);
  -moz-flex-basis: calc(40% - 20px);
  -ms-flex-basis: calc(40% - 20px);
  -o-flex-basis: calc(40% - 20px);
  flex-basis: calc(40% - 20px);
}

_:-ms-fullscreen, :root .span-1-6 {
  -webkit-flex-basis: calc(16.6666% - 20px);
  -moz-flex-basis: calc(16.6666% - 20px);
  -ms-flex-basis: calc(16.6666% - 20px);
  -o-flex-basis: calc(16.6666% - 20px);
  flex-basis: calc(16.6666% - 20px);
}

_:-ms-fullscreen, :root .no-col-padding .span-1-1 {
  -webkit-flex-basis: 100%;
  -moz-flex-basis: 100%;
  -ms-flex-basis: 100%;
  -o-flex-basis: 100%;
  flex-basis: 100%;
}

_:-ms-fullscreen, :root .no-col-padding .span-1-2 {
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  -o-flex-basis: 50%;
  flex-basis: 50%;
}

_:-ms-fullscreen, :root .no-col-padding .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%;
}

_:-ms-fullscreen, :root .no-col-padding .span-2-3 {
  -webkit-flex-basis: 66.6666%;
  -moz-flex-basis: 66.6666%;
  -ms-flex-basis: 66.6666%;
  -o-flex-basis: 66.6666%;
  flex-basis: 66.6666%;
}

_:-ms-fullscreen, :root .no-col-padding .span-1-4 {
  -webkit-flex-basis: 25%;
  -moz-flex-basis: 25%;
  -ms-flex-basis: 25%;
  -o-flex-basis: 25%;
  flex-basis: 25%;
}

_:-ms-fullscreen, :root .no-col-padding .span-3-4 {
  -webkit-flex-basis: 75%;
  -moz-flex-basis: 75%;
  -ms-flex-basis: 75%;
  -o-flex-basis: 75%;
  flex-basis: 75%;
}

_:-ms-fullscreen, :root .no-col-padding .span-1-5 {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  -o-flex-basis: 20%;
  flex-basis: 20%;
}

_:-ms-fullscreen, :root .no-col-padding .span-2-5 {
  -webkit-flex-basis: 40%;
  -moz-flex-basis: 40%;
  -ms-flex-basis: 40%;
  -o-flex-basis: 40%;
  flex-basis: 40%;
}

_:-ms-fullscreen, :root .no-col-padding .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%;
}

/* IE 11 flex bugfix. srsly IE.... */
_:-ms-fullscreen, :root .gallery-columns-1 .gallery-item {
  -webkit-flex-basis: calc(100% - 20px);
  -moz-flex-basis: calc(100% - 20px);
  -ms-flex-basis: calc(100% - 20px);
  -o-flex-basis: calc(100% - 20px);
  flex-basis: calc(100% - 20px);
}

_:-ms-fullscreen, :root .gallery-columns-2 .gallery-item {
  -webkit-flex-basis: calc(50% - 20px);
  -moz-flex-basis: calc(50% - 20px);
  -ms-flex-basis: calc(50% - 20px);
  -o-flex-basis: calc(50% - 20px);
  flex-basis: calc(50% - 20px);
}

_:-ms-fullscreen, :root .gallery-columns-3 .gallery-item {
  -webkit-flex-basis: calc(33.3333% - 20px);
  -moz-flex-basis: calc(33.3333% - 20px);
  -ms-flex-basis: calc(33.3333% - 20px);
  -o-flex-basis: calc(33.3333% - 20px);
  flex-basis: calc(33.3333% - 20px);
}

_:-ms-fullscreen, :root .gallery-columns-4 .gallery-item {
  -webkit-flex-basis: calc(25% - 20px);
  -moz-flex-basis: calc(25% - 20px);
  -ms-flex-basis: calc(25% - 20px);
  -o-flex-basis: calc(25% - 20px);
  flex-basis: calc(25% - 20px);
}

_:-ms-fullscreen, :root .gallery-columns-5 .gallery-item {
  -webkit-flex-basis: calc(20% - 20px);
  -moz-flex-basis: calc(20% - 20px);
  -ms-flex-basis: calc(20% - 20px);
  -o-flex-basis: calc(20% - 20px);
  flex-basis: calc(20% - 20px);
}

_:-ms-fullscreen, :root .gallery-columns-6 .gallery-item,
_:-ms-fullscreen, :root .gallery-columns-7 .gallery-item,
_:-ms-fullscreen, :root .gallery-columns-8 .gallery-item,
_:-ms-fullscreen, :root .gallery-columns-9 .gallery-item {
  -webkit-flex-basis: calc(16.6666% - 20px);
  -moz-flex-basis: calc(16.6666% - 20px);
  -ms-flex-basis: calc(16.6666% - 20px);
  -o-flex-basis: calc(16.6666% - 20px);
  flex-basis: calc(16.6666% - 20px);
}

/* main,
main .row {
    padding-bottom: $gutters;
} */
.sidebar-header .widget:not(.widget_content), .sidebar-footer .widget:not(.widget_content) {
  padding: 10px;
  /* padding-left : $gutters;
  padding-top  : $gutters; */
}

/* grid system & layout for columns etc */
/* reset for wordpress generated markup to bring it inline with the rest of the styling here */
/* wordpress editor styles */
.alignright {
  float: right;
}

.alignright:after {
  content: "";
  clear: right;
}

.alignleft {
  float: left;
}

.alignleft:after {
  content: "";
  clear: left;
}

.wp-caption-text {
  text-align: center;
}

.wp-caption {
  display: inline-block;
  max-width: 100%;
}

.alignleft {
  margin: 0 20px 20px 0;
  display: block;
  float: left;
  clear: none;
}

.alignright {
  margin: 0 0 20px 20px;
  display: block;
  float: right;
  clear: none;
}

.aligncenter {
  margin: 0 auto 20px auto;
  display: block;
  clear: both;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

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

/** gallery styles **/
.gallery {
  width: calc(100% + 20px);
  /* NOT 100%, otherwise the negative margin doesn't work */
  margin: 0 0 20px -20px;
  padding: 0;
}

.gallery a {
  display: block;
}

.gallery .gallery-item {
  position: relative;
  padding: 20px 0 0 20px;
  margin: 0;
}

.gallery-item dl,
.gallery-item dt {
  margin: 0;
  padding: 0;
}

.gallery .gallery-item img {
  margin-bottom: 0;
  border: none;
  display: block;
  width: 100%;
}

.gallery .gallery-caption {
  position: absolute;
  right: 0;
  left: 20px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  text-align: center;
  margin: 0;
  padding: 10px;
  bottom: 0;
}

/* gallery layout overrides for wordpress */
.gallery-columns-1 .gallery-item {
  -webkit-flex-basis: 100%;
  -moz-flex-basis: 100%;
  -ms-flex-basis: 100%;
  -o-flex-basis: 100%;
  flex-basis: 100%;
}

.gallery-columns-2 .gallery-item {
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-basis: 50%;
  -o-flex-basis: 50%;
  flex-basis: 50%;
}

.gallery-columns-3 .gallery-item {
  -webkit-flex-basis: 33.3333%;
  -moz-flex-basis: 33.3333%;
  -ms-flex-basis: 33.3333%;
  -o-flex-basis: 33.3333%;
  flex-basis: 33.3333%;
}

.gallery-columns-4 .gallery-item {
  -webkit-flex-basis: 25%;
  -moz-flex-basis: 25%;
  -ms-flex-basis: 25%;
  -o-flex-basis: 25%;
  flex-basis: 25%;
}

.gallery-columns-5 .gallery-item {
  -webkit-flex-basis: 20%;
  -moz-flex-basis: 20%;
  -ms-flex-basis: 20%;
  -o-flex-basis: 20%;
  flex-basis: 20%;
}

.gallery-columns-6 .gallery-item {
  -webkit-flex-basis: 16.66%;
  -moz-flex-basis: 16.66%;
  -ms-flex-basis: 16.66%;
  -o-flex-basis: 16.66%;
  flex-basis: 16.66%;
}

.gallery-columns-7 .gallery-item {
  -webkit-flex-basis: 14.28%;
  -moz-flex-basis: 14.28%;
  -ms-flex-basis: 14.28%;
  -o-flex-basis: 14.28%;
  flex-basis: 14.28%;
}

.gallery-columns-8 .gallery-item {
  -webkit-flex-basis: 12.5%;
  -moz-flex-basis: 12.5%;
  -ms-flex-basis: 12.5%;
  -o-flex-basis: 12.5%;
  flex-basis: 12.5%;
}

.gallery-columns-9 .gallery-item {
  -webkit-flex-basis: 11.11%;
  -moz-flex-basis: 11.11%;
  -ms-flex-basis: 11.11%;
  -o-flex-basis: 11.11%;
  flex-basis: 11.11%;
}

.gallery dt,
.gallery img {
  -webkit-flex-basis: 100%;
  -moz-flex-basis: 100%;
  -ms-flex-basis: 100%;
  -o-flex-basis: 100%;
  flex-basis: 100%;
}

/** comment styles **/
/* .comments
{
    padding-top: 20px;
    padding-bottom: 20px;
} */
p.form-submit, .comment-form {
  margin-bottom: 0;
}

#reply-title {
  display: none;
}

/* wp admin bar fixes - mostly removing items to stop width being a problem on small screen widths */
#wpadminbar {
  /* fix jumping when other page elements are animated using transforms */
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#wpadminbar #wp-admin-bar-root-default #wp-admin-bar-customize,
#wpadminbar #wp-admin-bar-root-default #wp-admin-bar-wp-logo,
#wpadminbar #wp-admin-bar-root-default #wp-admin-bar-comments,
#wpadminbar #wp-admin-bar-root-default #wp-admin-bar-top-secondary {
  display: none;
}

/* align wp admin bar to column widths we are using */
#wpadminbar #wp-admin-bar-root-default {
  width: 100%;
  max-width: calc(980px - 20px - 20px);
  margin: 0 auto;
  display: block;
  padding-left: 20px;
  padding-right: 20px;
}

/* wordpress specific reset for widgets, galleries, etc. */
/* styling for woocommerce to work with benchpress */
/* woocommerce overrides */
/* to bring the default plugin styles in-line with benchpress */
/* .woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    font-size: 1.4em;
}

.woocommerce .product_title {
    font-size: 4em;
} */
html .woocommerce div.product p.price,
html .woocommerce div.product span.price {
  /* font-size: 3em; */
  color: inherit;
  margin-bottom: 20px;
}

.woocommerce div.product form.cart .button {
  max-width: 80%;
}

/* .woocommerce .panel h2:first-child {
    font-size: 2em;
} */
html .woocommerce div.product form.cart div.quantity {
  width: 20%;
  float: left;
  padding-right: 20px;
  margin: 0;
}

.woocommerce div.product form.cart div.quantity input {
  width: 100%;
}

.woocommerce label {
  font-size: 100%;
  font-style: normal;
}

.woocommerce .coupon {
  margin-bottom: 20px;
  float: left;
  width: 50%;
  padding-right: 10px;
}

.woocommerce input.button[type=submit][name=update_cart] {
  width: calc(50% - 10px);
  margin-left: 10px;
}

.woocommerce .quantity .qty {
  margin: 0;
}

/* .woocommerce .product-remove a.remove {
    font-size: 2em;
} */
html .woocommerce #content table.cart td.actions .input-text,
html .woocommerce table.cart td.actions .input-text,
html .woocommerce-page #content table.cart td.actions .input-text,
html .woocommerce-page table.cart td.actions .input-text {
  width: 100%;
}

/* .woocommerce input,
.woocommerce textarea {
    background: #f7f6f7;
} */
/* .woocommerce h3, .woocommerce h2 {
    font-size: 2em;
} */
.woocommerce input[type=checkbox] {
  display: inline-block;
  /* margin: 4px; */
}

.woocommerce label {
  display: inline;
}

.pp_woocommerce .pp_details {
  display: none;
}

/* .pp_woocommerce .pp_gallery {
    margin-top: 25px;
} */
html div.pp_woocommerce div.ppt {
  display: none;
}

/* .woocommerce .product span.onsale {
    font-size: 1.6em;
}

html .woocommerce .products .product span.onsale,
html .woocommerce #commentform textarea,
html .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta,
html .woocommerce .woocommerce-message,
html .woocommerce .posted_in,
html .woocommerce .tagged_as,
html .woocommerce-info,
html .woocommerce div.product form.cart .button,
html .woocommerce div.product p.stock {
    font-size: 1.4em;
} */
/* .woocommerce td {
    vertical-align: middle;
} */
.woocommerce-error:before,
.woocommerce-info:before,
.woocommerce-message:before {
  top: 1.2em;
}

.woocommerce #reviews #comments ol.commentlist {
  font-size: 100%;
  padding-left: 0;
  margin-left: 0;
}

html .woocommerce #reviews #comments ol.commentlist li .comment-text {
  margin-left: 0;
}

.woocommerce ul#shipping_method,
ul.wc_payment_methods {
  font-size: 100%;
}

html .woocommerce td.product-name dl.variation dd {
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 0;
}

.woocommerce td.product-name dl.variation dd p {
  line-height: 1.4em;
}

.woocommerce div.product form.cart .variations select {
  margin-bottom: 0;
}

html .woocommerce ul.products li.product .price {
  font-size: inherit;
}

/* .woocommerce nav.woocommerce-breadcrumb
{
    font-size: 1.4em;
} */
.woocommerce nav.woocommerce-breadcrumb a {
  display: inline;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
  width: 25%;
  margin-bottom: 20px;
  margin-right: 0;
  padding-right: 20px;
}

.ld_shop_category_select {
  display: inline;
  width: auto;
}

/* .shop-filters
{
    background: rgba(18, 124, 180, 0.6);
    color: white;
    margin-bottom: $gutters;
}
.shop-filters p
{
    color: white;
    margin: 0;
}
.shop-filters input, .shop-filters select, .woocommerce .shop-filters form.woocommerce-ordering
{
    margin: 0;
} */
.woocommerce li.product {
  position: relative;
}

/* .woocommerce li.product a.woocommerce-LoopProduct-link:before,
.woocommerce li.product-category a:before
{
    content: ">";
    background: orange;
    width:30px;
    height:30px;
    position:absolute;
    top: 0;
    left: 0;
    color: white;
    text-align:center;
    font-size: 2em;
    line-height: 30px;
} */
.woocommerce li.product a.woocommerce-LoopProduct-link, li.product-category a {
  position: relative;
  display: block;
  /* min-height: 80px; */
}

.woocommerce li.product .count {
  display: none;
}

/* .woocommerce li.product .desc
{
    padding:10px $gutters;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height: 80px;
    width:100%;
    color: white;
    background: rgba(18, 124, 180, 0.6);
} */
/* .woocommerce ul.products
{
    width: 100%;
}
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .product_type_simple.ajax_add_to_cart
{
    display:none;
} */
/* .woocommerce ul.products li.product h3, .woocommerce ul.products li.product span.price
{
    color: white;
} */
/* html .woocommerce ul.products li.product a img
{
    margin: 0;
}

.woocommerce ul.products li.product .price del
{
    float:left;
    padding-right: 10px;
}
.woocommerce ul.products li.product .price ins
{
    clear:left;
} */
/* .h-slider-inner.products
{
    font-size: 1.6em;
} */
/* html .woocommerce ul.products li.product .onsale
{
    margin: 5px 5px 0 0;
}

html .woocommerce ul.products li.product, .woocommerce-page ul.products li.product
{
    width:25%;
    margin: 0;
    padding: $gutters 0 0 $gutters;
}

html .woocommerce .related ul.products li.product, .woocommerce-page .related ul.products li.product
{
    width: 50%;
} */
/* .woocommerce .related
{
    padding-top:$gutters;
}
.woocommerce .related h2
{
    padding-left: $gutters;
} */
.woocommerce .products .load-more {
  clear: both;
  width: 100%;
  display: none;
  padding-top: 20px;
  padding-left: 20px;
}

.woocommerce .products .load-more a {
  padding: 10px 20px;
  text-align: center;
  width: 250px;
  display: block;
  margin: 0 auto;
  color: orange;
  background: white;
  text-transform: uppercase;
}

html .woocommerce #content div.product div.images {
  width: 100%;
  float: none;
}

/* html .woocommerce address
{
    font-size: 1.4em;
    font-style: normal;
}
html .woocommerce td, html .woocommerce th
{
    font-size: 1.5em;
    line-height: 1.5em;
}
html .woocommerce #payment label
{
    font-size: 1.5em;
} */
html .woocommerce #respond input#submit,
html .woocommerce a.button,
html .woocommerce button.button,
html .woocommerce input.button {
  /* color: white;
  background: #127cb4;
  font-style: normal; */
  border-radius: 0;
  /*font-size: 1.4em;*/
  /* font-weight: normal; */
  -webkit-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}

/* html .woocommerce #respond input#submit:hover,
html .woocommerce a.button:hover,
html .woocommerce button.button:hover,
html .woocommerce input.button:hover
{
    color: white;
    background-color: rgba(18, 124, 180, 0.6);
}
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]
{
    color: white;
    background-color: rgba(18, 124, 180, 0.6);
}
html .woocommerce #respond input#submit.disabled:hover,
html .woocommerce #respond input#submit:disabled:hover,
html .woocommerce #respond input#submit:disabled[disabled]:hover,
html .woocommerce a.button.disabled:hover,
html .woocommerce a.button:disabled:hover,
html .woocommerce a.button:disabled[disabled]:hover,
html .woocommerce button.button.disabled:hover,
html .woocommerce button.button:disabled:hover,
html .woocommerce button.button:disabled[disabled]:hover,
html .woocommerce input.button.disabled:hover,
html .woocommerce input.button:disabled:hover,
html .woocommerce input.button:disabled[disabled]:hover
{
    color: white;
    background-color: rgba(18, 124, 180, 0.6);
} */
/* woocommerce compatibility. */
/* fancybox styles */
.fancybox-enabled {
  overflow: hidden;
}

.fancybox-enabled body {
  overflow: visible;
  height: 100%;
}

.fancybox-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99993;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Make sure that the first one is on the top */
.fancybox-container ~ .fancybox-container {
  z-index: 99992;
}

.fancybox-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #0f0f11;
  opacity: 0;
  transition-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fancybox-container--ready .fancybox-bg {
  opacity: 0.87;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-controls {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  opacity: 0;
  z-index: 99994;
  transition: opacity 0.2s;
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  direction: ltr;
}

.fancybox-show-controls .fancybox-controls {
  opacity: 1;
}

.fancybox-infobar {
  display: none;
}

.fancybox-show-infobar .fancybox-infobar {
  display: inline-block;
  pointer-events: all;
}

.fancybox-infobar__body {
  display: inline-block;
  width: 70px;
  line-height: 44px;
  font-size: 13px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: center;
  color: #ddd;
  background-color: rgba(30, 30, 30, 0.7);
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: subpixel-antialiased;
}

.fancybox-buttons {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  pointer-events: all;
}

.fancybox-show-buttons .fancybox-buttons {
  display: block;
}

.fancybox-slider-wrap {
  overflow: hidden;
  direction: ltr;
}

.fancybox-slider-wrap,
.fancybox-slider {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  z-index: 99993;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
}

.fancybox-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
  outline: none;
  white-space: normal;
  box-sizing: border-box;
  text-align: center;
  z-index: 99994;
  -webkit-overflow-scrolling: touch;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 0;
}

.fancybox-slide > * {
  display: inline-block;
  position: relative;
  padding: 24px;
  margin: 44px 0 44px;
  border-width: 0;
  vertical-align: middle;
  text-align: left;
  background-color: #fff;
  overflow: auto;
  box-sizing: border-box;
}

.fancybox-slide > .fancybox-inline-content-video {
  padding: 0;
  margin: 0;
}

.fancybox-slide > .fancybox-inline-content-video > video {
  padding: 0;
  margin: 0;
}

.fancybox-slide--image {
  overflow: hidden;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-content {
  display: inline-block;
  position: relative;
  margin: 44px auto;
  padding: 0;
  border: 0;
  width: 80%;
  height: calc(100% - 88px);
  vertical-align: middle;
  line-height: normal;
  text-align: left;
  white-space: normal;
  outline: none;
  font-size: 16px;
  font-family: Arial, sans-serif;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-overflow-scrolling: touch;
}

.fancybox-iframe {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--video .fancybox-iframe {
  background: transparent;
}

.fancybox-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0;
  z-index: 99995;
  background: transparent;
  cursor: default;
  overflow: visible;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fancybox-image,
.fancybox-spaceball {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  max-width: none;
  max-height: none;
  background: transparent;
  background-size: 100% 100%;
}

.fancybox-controls--canzoomOut .fancybox-placeholder {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.fancybox-controls--canzoomIn .fancybox-placeholder {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.fancybox-controls--canGrab .fancybox-placeholder {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-controls--isGrabbing .fancybox-placeholder {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-tmp {
  position: absolute;
  top: -9999px;
  left: -9999px;
  visibility: hidden;
}

.fancybox-error {
  position: absolute;
  margin: 0;
  padding: 40px;
  top: 50%;
  left: 50%;
  width: 380px;
  max-width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: #fff;
  cursor: default;
}

.fancybox-error p {
  margin: 0;
  padding: 0;
  color: #444;
  font: 16px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.fancybox-close-small {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  height: 44px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  outline: none;
  background: transparent;
  z-index: 10;
  cursor: pointer;
}

.fancybox-close-small::after {
  content: "x";
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  font: 20px/30px Arial, "Helvetica Neue", Helvetica, sans-serif;
  color: #888;
  font-weight: 300;
  text-align: center;
  border-radius: 50%;
  border-width: 0;
  background: #fff;
  transition: background 0.2s;
  box-sizing: border-box;
  z-index: 2;
}

.fancybox-close-small:focus::after {
  outline: 1px dotted #888;
}

.fancybox-slide--video .fancybox-close-small {
  top: -36px;
  right: -36px;
  background: transparent;
}

.fancybox-close-small:hover::after {
  color: #555;
  background: #eee;
}

/* Caption */
.fancybox-caption-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 60px 30px 0 30px;
  z-index: 99998;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8) 100%);
  opacity: 0;
  transition: opacity 0.2s;
  pointer-events: none;
}

.fancybox-show-caption .fancybox-caption-wrap {
  opacity: 1;
}

.fancybox-caption {
  padding: 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 14px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #fff;
  line-height: 20px;
  -webkit-text-size-adjust: none;
}

.fancybox-caption a,
.fancybox-caption button {
  pointer-events: all;
}

.fancybox-caption a {
  color: #fff;
  text-decoration: underline;
}

/* Buttons */
.fancybox-button {
  display: inline-block;
  position: relative;
  width: 44px;
  height: 44px;
  line-height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  cursor: pointer;
  background: transparent;
  color: #fff;
  box-sizing: border-box;
  vertical-align: top;
  outline: none;
  min-width: 44px;
}

.fancybox-button--disabled {
  cursor: default;
  pointer-events: none;
}

.fancybox-infobar__body, .fancybox-button {
  background: rgba(30, 30, 30, 0.6);
}

.fancybox-button:hover {
  background: rgba(0, 0, 0, 0.8);
}

.fancybox-button::before,
.fancybox-button::after {
  content: "";
  pointer-events: none;
  position: absolute;
  border-color: #fff;
  background-color: currentColor;
  color: currentColor;
  opacity: 0.9;
  box-sizing: border-box;
  display: inline-block;
}

.fancybox-button--disabled::before,
.fancybox-button--disabled::after {
  opacity: 0.5;
}

.fancybox-button--left::after {
  left: 20px;
  top: 18px;
  width: 6px;
  height: 6px;
  background: transparent;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.fancybox-button--right::after {
  right: 20px;
  top: 18px;
  width: 6px;
  height: 6px;
  background: transparent;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.fancybox-button--left {
  border-bottom-left-radius: 5px;
}

.fancybox-button--right {
  border-bottom-right-radius: 5px;
}

.fancybox-button--close {
  float: right;
}

.fancybox-button--close::before, .fancybox-button--close::after {
  content: "";
  display: inline-block;
  position: absolute;
  height: 2px;
  width: 16px;
  top: calc(50% - 1px);
  left: calc(50% - 8px);
}

.fancybox-button--close::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.fancybox-button--close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* Loading spinner */
.fancybox-loading {
  border: 6px solid rgba(100, 100, 100, 0.4);
  border-top: 6px solid rgba(255, 255, 255, 0.6);
  border-radius: 100%;
  height: 50px;
  width: 50px;
  -webkit-animation: fancybox-rotate 0.8s infinite linear;
  animation: fancybox-rotate 0.8s infinite linear;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -25px;
  margin-left: -25px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
/* Styling for Small-Screen Devices */
@media all and (max-width: 800px) {
  .fancybox-controls {
    text-align: left;
  }

  .fancybox-button--left,
.fancybox-button--right,
.fancybox-buttons button:not(.fancybox-button--close) {
    display: none !important;
  }

  .fancybox-caption {
    padding: 20px 0;
    margin: 0;
  }
}
/* Fullscreen  */
.fancybox-button--fullscreen::before {
  width: 15px;
  height: 11px;
  left: 15px;
  top: 16px;
  border: 2px solid;
  background: none;
}

/* Slideshow button */
.fancybox-button--play::before {
  top: 16px;
  left: 18px;
  width: 0;
  height: 0;
  border-top: 6px inset transparent;
  border-bottom: 6px inset transparent;
  border-left: 10px solid;
  border-radius: 1px;
  background: transparent;
}

.fancybox-button--pause::before {
  top: 16px;
  left: 18px;
  width: 7px;
  height: 11px;
  border-style: solid;
  border-width: 0 2px 0 2px;
  background: transparent;
}

/* Thumbs */
.fancybox-button--thumbs span {
  font-size: 23px;
}

.fancybox-button--thumbs::before {
  top: 20px;
  left: 21px;
  width: 3px;
  height: 3px;
  box-shadow: 0 -4px 0, -4px -4px 0, 4px -4px 0, 0 0 0 32px inset, -4px 0 0, 4px 0 0, 0 4px 0, -4px 4px 0, 4px 4px 0;
}

.fancybox-container--thumbs .fancybox-controls,
.fancybox-container--thumbs .fancybox-slider-wrap,
.fancybox-container--thumbs .fancybox-caption-wrap {
  right: 220px;
}

.fancybox-thumbs {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  width: 220px;
  margin: 0;
  padding: 5px 5px 0 0;
  background: #fff;
  z-index: 99993;
  word-break: normal;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}

.fancybox-thumbs > ul {
  list-style: none;
  position: absolute;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  font-size: 0;
}

.fancybox-thumbs > ul > li {
  float: left;
  overflow: hidden;
  max-width: 50%;
  padding: 0;
  margin: 0;
  width: 105px;
  height: 75px;
  position: relative;
  cursor: pointer;
  outline: none;
  border: 5px solid #fff;
  border-top-width: 0;
  border-right-width: 0;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
}

li.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1);
}

.fancybox-thumbs > ul > li > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  max-height: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-thumbs > ul > li::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 2px;
  border: 4px solid #4ea7f9;
  z-index: 99991;
  opacity: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fancybox-thumbs > ul > li.fancybox-thumbs-active::before {
  opacity: 1;
}

.fancybox-dotted-nav {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 99999;
  text-align: center;
}

.fancybox-dotted-nav li {
  display: inline-block;
  width: 24px;
  height: 24px;
  background: #fff;
  margin: 3px;
  border-radius: 50%;
  -webkit-transition: border 0.2s ease, background 0.2s ease;
  transition: border 0.2s ease, background 0.2s ease;
}

.fancybox-dotted-nav li.active {
  background: transparent;
  border: 4px solid #fff;
}

.ld_fancybox_prev, .ld_fancybox_next {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 60px;
  margin-top: -30px;
  cursor: pointer;
  background: url(assets/images/fancybox/arrow.png) no-repeat center center;
  background-size: 100%;
}

.ld_fancybox_prev {
  left: -60px;
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

.ld_fancybox_next {
  right: -60px;
}

.ld_fancybox_container {
  position: absolute;
  top: 20px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: calc(100% - 180px);
  height: calc(100% - 100px);
}

.ld_fancybox_wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
}

.ld_fancybox_close {
  background: #94A000;
  display: block;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%) translateY(100%);
  transform: translateX(-50%) translateY(100%);
  z-index: 50;
  position: absolute;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  font-size: 2em;
  padding: 10px 20px;
  cursor: pointer;
  /* height: 40px; */
}

.ld_fancybox_close::after {
  content: "Close Gallery";
}

.ld_fancybox_video .ld_fancybox_close::after {
  content: "Close Video";
}

.ld_fancybox_wrapper .fancybox-close-small {
  display: none;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 980px) {
  .fancybox-thumbs {
    display: none !important;
  }

  .fancybox-container--thumbs .fancybox-controls,
.fancybox-container--thumbs .fancybox-slider-wrap,
.fancybox-container--thumbs .fancybox-caption-wrap {
    right: 0;
  }

  .ld_fancybox_container {
    width: 100%;
    height: calc(100% - 40px);
    top: 0;
  }

  .fancybox-dotted-nav {
    display: none;
  }

  .ld_fancybox_close {
    font-size: 1.4em;
    width: auto;
  }
}
/* end of fancybox styles */
/* fancybox 2 styles. */
/* h slider */
.h-slider-wrapper {
  position: relative;
  width: 100%;
  opacity: 0;
}

.h-slider-wrapper.row {
  padding: 0;
}

.h-slider-wrapper .ld_h_slider_wrapper {
  display: block;
}

.h-slider-inner {
  font-size: 100%;
  position: relative;
  padding: 0 0 10px 0;
  margin: 0;
  display: -webkit-flex;
  display: flex;
  /* support for older iOS & chrome */
  -webkit-justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  -webkit-align-content: flex-start;
  /* new syntax */
  justify-content: flex-start;
  flex-wrap: nowrap;
  align-content: flex-start;
}

.h-slider-nav.no-slides {
  display: none;
}

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

.h-slider-inner li {
  list-style: none;
  padding: 10px;
  display: block;
  vertical-align: top;
  min-width: 0%;
  /* workaround for Firefox, when contents are larger than box */
  /* and for IE11 which refuses to shrink flex items with images in them below the image width. % unit is needed for IE11 sadly. */
  -webkit-flex: 0 0 auto;
  /* old iOS, Safari, Chrome */
  flex: 0 0 auto;
  /* new syntax */
}

.slider-tabs {
  list-style: none;
  margin: 0 auto;
  padding: 10px;
  /* treat it like a column*/
  text-align: center;
  width: 100%;
}

.slider-tabs.h-slider-disabled {
  display: none;
}

.slider-tabs li {
  display: inline-block;
  margin: 0 2px;
}

.slider-tabs li a {
  -moz-touch-action: manipulation;
  /* eliminate 300ms delay */
  -ms-touch-action: manipulation;
  /* IE10  */
  touch-action: manipulation;
  /* eliminate 300ms delay */
  display: block;
  backface-visibility: hidden;
  -webkit-transition: background 0.15s ease;
  transition: background 0.15s ease;
}

/* end of h-slider (some shared rules with header slider tabs, below) */
/* lamontdesign fadey slider custom header slider */
.ld-fadey-slider-wrapper {
  position: relative;
  width: 100%;
}

.ld-fadey-slider {
  width: 100%;
  position: relative;
  padding: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
  font-size: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  display: block;
  background-color: rgba(0, 0, 0, 0.8);
  min-height: 0;
  transition: min-height 0.15s ease-in-out;
}

.ld-fadey-slider > li {
  list-style: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 0;
  margin: 0;
  opacity: 0;
  z-index: 0;
  -webkit-transition: opacity 0.8s ease-in-out;
  transition: opacity 0.8s ease-in-out;
  will-change: opacity;
  min-height: 0;
}

.header-slider .ld-fadey-slider > li {
  height: 100%;
}

.ld-fadey-slider li.ld-fadey-slider-here {
  /* let CSS transitions handle the opacity animation */
  opacity: 1;
  visibility: visible;
  z-index: 1;
}

.ld-fadey-slider-nav, .h-slider-nav {
  -moz-touch-action: manipulation;
  /* eliminate 300ms delay */
  -ms-touch-action: manipulation;
  /* IE10  */
  touch-action: manipulation;
  /* eliminate 300ms delay */
  display: block;
  position: absolute;
  z-index: 2;
  cursor: pointer;
  backface-visibility: hidden;
  -webkit-transition: background 0.15s ease;
  transition: background 0.15s ease;
}

.ld-fadey-slider-tabs {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  position: absolute;
  z-index: 2;
  bottom: 20px;
  width: 100%;
}

.ld-fadey-slider-tabs li {
  display: inline-block;
  margin: 0 2px;
}

.ld-fadey-slider-tabs li a {
  -moz-touch-action: manipulation;
  /* eliminate 300ms delay */
  -ms-touch-action: manipulation;
  /* IE10  */
  touch-action: manipulation;
  /* eliminate 300ms delay */
  display: block;
  backface-visibility: hidden;
  -webkit-transition: background 0.15s ease;
  transition: background 0.15s ease;
}

.caption-wrapper {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 50;
  /* max-height : 50%; */
  text-align: center;
  max-height: 100%;
}

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

@media all and (max-width: 980px) {
  .caption-wrapper .caption {
    padding: 20px 80px 40px 80px;
  }
}
/* javascript sliders */
/* mobile nav menu button */
.widget_mobile_nav_button {
  text-align: right;
}

.hamburger-menu {
  width: 35px;
  height: 25px;
  background: none;
  display: inline-block;
  overflow: hidden;
  position: relative;
  background: #fff;
}

.hamburger-menu span {
  -webkit-transition: width 0.15s ease, transform 0.15s ease, top 0.15s ease, margin 0.15s ease, opacity 0.15s ease;
  transition: width 0.15s ease, transform 0.15s ease, top 0.15s ease, margin 0.15s ease, opacity 0.15s ease;
  height: 5px;
  background: #000;
  display: block;
  width: 100%;
  left: 0;
  position: absolute;
  /* top                : 50%;
  margin-top         : -2.5px; */
}

.hamburger-menu span:nth-child(1) {
  /* top: 0; */
  top: calc(50% - 12.5px);
}

.hamburger-menu span:nth-child(2) {
  top: 50%;
  margin-top: -2.5px;
}

.hamburger-menu span:nth-child(3) {
  /* top: calc(100% - 5px); */
  top: calc(50% + 7.5px);
}

.hamburger-menu.open {
  width: 30px;
  height: 30px;
}

.hamburger-menu.open span {
  top: 50%;
  margin-top: -2.5px;
}

.hamburger-menu.open span:nth-child(1) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.hamburger-menu.open span:nth-child(2) {
  opacity: 0;
}

.hamburger-menu.open span:nth-child(3) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* end of mobile nav menu button */
/* styles for the mobile menu */
.mob-nav-wrapper {
  /* -webkit-transition : max-height .2s ease;
  transition         : max-height .2s ease;
  max-height         : 0;
  will-change        : max-height; */
  overflow: hidden;
  /*     height: 0; */
  max-height: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  will-change: max-height;
  display: none;
}

.mob-nav-wrapper ul {
  padding: 0;
  margin: 0;
  width: 100%;
}

.mob-nav-wrapper li {
  display: block;
  width: 100%;
  list-style: none;
  /* min-height  : 40px;
  line-height : 40px; */
  text-align: left;
  position: relative;
}

.mob-nav-wrapper a, .mob-nav-wrapper .menu-stub-span {
  /* padding         : 5px 20px; */
  text-decoration: none;
  display: inline-block;
  position: relative;
  width: 100%;
}

.mob-nav-wrapper ul.children {
  overflow: hidden;
  clear: both;
  -webkit-transition: height 0.2s ease, opacity 0.2s ease;
  transition: height 0.2s ease, opacity 0.2s ease;
  height: 0;
  opacity: 0;
  display: block;
  will-change: height opacity;
  /* padding-left       : 20px; */
}

.mob-nav-wrapper ul.children.open {
  opacity: 1;
}

/* .mob-nav-wrapper li.has_children a
{
    padding-right: 30px;
    padding-left: 30px;
} */
.mob-nav-wrapper .dropdown {
  display: block;
  position: absolute;
  right: 0;
  z-index: 2;
  top: 0;
  width: 43px;
  height: 43px;
  background: url(assets/images/elements/down-arrow-colour.png) no-repeat center center;
  -webkit-transition: transform 0.2s ease;
  transition: transform 0.2s ease;
}

.mob-nav-wrapper .child_nav_open .dropdown {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}

/* styles for the hamburger menu when used as a toggle for the sibling navigation in pages */
.widget.subnav ul {
  margin: 0 auto;
}

.widget.subnav li a {
  display: block;
}

.widget.subnav .hamburger-menu {
  display: inline-block;
  float: none;
}

/* .widget.subnav .hamburger-menu span:first-child {
    top: calc(50% - 12.5px);
}
.widget.subnav .hamburger-menu span:last-child {
    top: calc(50% + 7.5px);
}
.widget.subnav .hamburger-menu.open span:first-child,
.widget.subnav .hamburger-menu.open span:last-child {
    top: 50%;
} */
.widget.subnav .hamburger-menu span {
  width: 40px;
  left: 50%;
  margin-left: -20px;
}

.widget.subnav .mob-subnav-btn ~ ul.widget_subnav_menu {
  overflow: hidden;
  -webkit-transition: height 0.2s ease;
  transition: height 0.2s ease;
  height: 0;
  will-change: height;
  padding: 0;
  margin: 0 auto;
  display: block;
}

/* end of styles for the hamburger menu when used as a toggle for the sibling navigation in pages */
/* styles for the ld popover plugin */
.ld_popover__overlay {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 89999;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.2s ease, visibility 0.2s ease;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  will-change: opacity, visibility;
  width: 100%;
  height: 100%;
}

.ld_popover__overlay.ld_popover__open {
  opacity: 1;
  visibility: visible;
}

/* a bit of fun */
/* header,main,footer
{
    transition: 2s ease;
    background: #fff;
}
body
{
    background: #000;
}
body.ld_popover__open header,main,footer
{
    transform: scale(.9);
    opacity: .8;
    transition-timing-function: cubic-bezier(.39,1.3,0,-2.44);
}
.ld_popover__overlay
{
    transition: 2s ease;
    transform: translateX(-100%);
    transition-timing-function: cubic-bezier(.39,1.3,0,-2.44);
}
.ld_popover__overlay.ld_popover__open
{
    transform: translateX(0);
}
 */
.ld_popover__wrapper {
  max-width: 1020px;
  width: calc(100% - 20px - 20px);
  /* display           : table; */
  position: absolute;
  left: 50%;
  /* top            : 50%; */
  top: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.3);
  z-index: 90000;
  max-height: calc(100% - 20px - 20px);
  height: 70%;
  text-align: center;
  padding: calc(70px + 20px + 20px) 20px 20px 20px;
  overflow: auto;
  transition: height 0.2s ease, width 0.2s ease;
}

/* .logged-in .ld_popover__wrapper
{
    top: 32px;
} */
.ld_popover__inner {
  position: relative;
  width: 100%;
  height: auto;
  /* display        : table-cell; */
  transition: height 0.2s ease, width 0.2s ease;
  /* vertical-align : middle; */
}

.ld_popover__close {
  position: absolute;
  width: 70px;
  height: 70px;
  top: 20px;
  left: 50%;
  display: block;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 50%;
  /* box-shadow        : 0 0 20px rgba(0,0,0,.6); */
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.3);
  background: #94A000;
}

.ld_popover__close span {
  display: block;
  width: 35px;
  height: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #fff;
}

.ld_popover__close span:first-child {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

.ld_popover__close span:last-child {
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.sidebar .widget_popup_button p {
  margin-bottom: 0;
}

.ld_popover input {
  /* reset for safari on ios */
  -webkit-appearance: none;
  border-radius: 0;
}

/* responsive styles */
.show-mo-inline,
.show-mo-block,
.show-mo-flex {
  display: none;
}

.no-mo-block {
  display: block;
}

.no-mo-inline {
  display: inline;
}

.no-mo-flex {
  display: flex;
}

#header-mobile-bar {
  display: none;
}

@media all and (max-width: 980px) {
  /*tablet in landscape or small laptop*/
  .col.span-1-4 {
    -webkit-flex-basis: 50%;
    -moz-flex-basis: 50%;
    -ms-flex-basis: 50%;
    -o-flex-basis: 50%;
    flex-basis: 50%;
  }

  .row {
    min-width: 100%;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  #header-mobile-bar {
    display: block;
  }

  .mob-nav-wrapper {
    display: block;
  }

  header nav, #header-top, #header-top-bar {
    display: none;
  }

  /*tablet in portrait mode, phablet in landscape*/
  .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%;
  }

  .span-1-5, .span-2-5 {
    -webkit-flex-basis: 50%;
    -moz-flex-basis: 50%;
    -ms-flex-basis: 50%;
    -o-flex-basis: 50%;
    flex-basis: 50%;
  }

  /** make the main content spans (best guess here) 100% */
  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%;
  }

  /** break word on cols when they shrink too much... whats the overflow hidden for? */
  .col {
    overflow: hidden;
    word-wrap: break-word;
  }

  /* make gallery items 50% wide, regardless of col number. */
  .gallery .gallery-item {
    -webkit-flex-basis: 33.3333%;
    -moz-flex-basis: 33.3333%;
    -ms-flex-basis: 33.3333%;
    -o-flex-basis: 33.3333%;
    flex-basis: 33.3333%;
  }

  /* general utility classes for hiding / showing elements at mob view size. */
  .no-mo-inline,
.no-mo-block,
.no-mo-flex {
    display: none;
  }

  .show-mo-inline {
    display: inline;
  }

  .show-mo-block {
    display: block;
  }

  .show-mo-flex {
    display: flex;
  }

  /** make widgets full width **/
  .widget {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
  }

  /** make footer widgets 50% **/
  .sidebar-footer li.widget {
    -webkit-flex-basis: 50%;
    -moz-flex-basis: 50%;
    -ms-flex-basis: 50%;
    -o-flex-basis: 50%;
    flex-basis: 50%;
  }

  /* allow main sidebar items to wrap */
  main .sidebar {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .sidebar-header .widget, .sidebar-footer .widget, .sidebar-header-mobile .widget {
    -webkit-flex-grow: 1;
    flex-grow: 1;
  }

  /* IE 11 styles */
  _:-ms-fullscreen, :root .span-1-6 {
    -webkit-flex-basis: calc(33.3333% - 20px);
    -moz-flex-basis: calc(33.3333% - 20px);
    -ms-flex-basis: calc(33.3333% - 20px);
    -o-flex-basis: calc(33.3333% - 20px);
    flex-basis: calc(33.3333% - 20px);
  }

  _:-ms-fullscreen, :root .span-1-5,
_:-ms-fullscreen, :root .span-2-5 {
    -webkit-flex-basis: calc(50% - 20px);
    -moz-flex-basis: calc(50% - 20px);
    -ms-flex-basis: calc(50% - 20px);
    -o-flex-basis: calc(50% - 20px);
    flex-basis: calc(50% - 20px);
  }

  _:-ms-fullscreen, :root .no-col-padding .span-1-6 {
    /* IE 11 styles */
    -webkit-flex-basis: 33.3333%;
    -moz-flex-basis: 33.3333%;
    -ms-flex-basis: 33.3333%;
    -o-flex-basis: 33.3333%;
    flex-basis: 33.3333%;
  }

  _:-ms-fullscreen, :root .no-col-padding .span-1-5,
_:-ms-fullscreen, :root .no-col-padding .span-2-5 {
    /* IE 11 styles */
    -webkit-flex-basis: 50%;
    -moz-flex-basis: 50%;
    -ms-flex-basis: 50%;
    -o-flex-basis: 50%;
    flex-basis: 50%;
  }

  _:-ms-fullscreen, :root main .span-1-3,
_:-ms-fullscreen, :root main .span-1-4,
_:-ms-fullscreen, :root main .span-2-3,
_:-ms-fullscreen, :root main .span-3-4 {
    -webkit-flex-basis: calc(100% - 20px);
    -moz-flex-basis: calc(100% - 20px);
    -ms-flex-basis: calc(100% - 20px);
    -o-flex-basis: calc(100% - 20px);
    flex-basis: calc(100% - 20px);
  }

  _:-ms-fullscreen, :root main .no-col-padding .span-1-3,
_:-ms-fullscreen, :root main .no-col-padding .span-1-4,
_:-ms-fullscreen, :root main .no-col-padding .span-2-3,
_:-ms-fullscreen, :root main .no-col-padding .span-3-4 {
    /* IE 11 styles */
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
  }

  _:-ms-fullscreen, :root .gallery .gallery-item {
    -webkit-flex-basis: calc(33.3333% - 20px);
    -moz-flex-basis: calc(33.3333% - 20px);
    -ms-flex-basis: calc(33.3333% - 20px);
    -o-flex-basis: calc(33.3333% - 20px);
    flex-basis: calc(33.3333% - 20px);
  }

  /** make widgets full width **/
  _:-ms-fullscreen, :root .widget {
    -webkit-flex-basis: calc(100% - 20px);
    -moz-flex-basis: calc(100% - 20px);
    -ms-flex-basis: calc(100% - 20px);
    -o-flex-basis: calc(100% - 20px);
    flex-basis: calc(100% - 20px);
  }

  /* _:-ms-fullscreen, :root .push-features .col, */
  _:-ms-fullscreen, :root .sidebar-footer li.widget {
    -webkit-flex-basis: calc(50% - 20px);
    -moz-flex-basis: calc(50% - 20px);
    -ms-flex-basis: calc(50% - 20px);
    -o-flex-basis: calc(50% - 20px);
    flex-basis: calc(50% - 20px);
  }

  _:-ms-fullscreen, :root .gallery .gallery-item {
    -webkit-flex-basis: calc(50% - 20px);
    -moz-flex-basis: calc(50% - 20px);
    -ms-flex-basis: calc(50% - 20px);
    -o-flex-basis: calc(50% - 20px);
    flex-basis: calc(50% - 20px);
  }

  .caption-wrapper {
    max-height: none;
  }

  .caption-wrapper .caption {
    max-width: 100%;
    /* padding-left  : $smallgutters;
    padding-right : $smallgutters; */
  }
}
@media all and (max-width: 600px) {
  .gallery .gallery-item {
    -webkit-flex-basis: 50%;
    -moz-flex-basis: 50%;
    -ms-flex-basis: 50%;
    -o-flex-basis: 50%;
    flex-basis: 50%;
  }

  .gallery {
    width: calc(100% + 20px);
    margin: 0 0 20px -20px;
  }

  html div#wpadminbar {
    position: fixed !important;
    /* bugfix for buggy css when logged into wordpress and viewing the admin bar. */
  }

  _:-ms-fullscreen, :root .gallery .gallery-item {
    /* IE 11 styles */
    -webkit-flex-basis: calc(50% - 20px);
    -moz-flex-basis: calc(50% - 20px);
    -ms-flex-basis: calc(50% - 20px);
    -o-flex-basis: calc(50% - 20px);
    flex-basis: calc(50% - 20px);
  }

  .col.span-1-4 {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
    /* 2017-09-26 - stu asked to change all 1/4 spans to 1/1 @600px */
  }
}
@media all and (max-width: 500px) {
  /*mobile in portrait mode*/
  .col, .wrap {
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
    /* all columns full width */
  }

  _:-ms-fullscreen, :root .col {
    /* IE 11 styles */
    -webkit-flex-basis: calc(100% - 20px);
    -moz-flex-basis: calc(100% - 20px);
    -ms-flex-basis: calc(100% - 20px);
    -o-flex-basis: calc(100% - 20px);
    flex-basis: calc(100% - 20px);
  }

  _:-ms-fullscreen, :root .no-col-padding .col {
    /* IE 11 styles */
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-basis: 100%;
    -o-flex-basis: 100%;
    flex-basis: 100%;
  }
}
/* responsive grid overrides. */
/*** header navigation (full width) ***/
/*flyout / dropdown menus on hover */
header .widget_nav_menu li:hover .children,
header .widget_nav_menu li:focus .children,
header .widget_nav_menu li:active .children {
  visibility: visible;
  opacity: 1;
}

header .widget_nav_menu .children {
  display: block;
  height: auto;
  padding: 0;
  position: absolute;
  z-index: 1000;
  /* hide and show - visibility can be animated! */
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0.15s, opacity 0.15s ease;
  transition: visibility 0.15s, opacity 0.15s ease;
}

header .widget_nav_menu li:last-of-type ul {
  right: 0;
  left: auto;
}

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

header .widget_nav_menu li li a {
  width: 100%;
}

/* .subheader nav.wrapper ul, */
.widget_categories ul {
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
  list-style-type: none;
}

/* .subheader nav.wrapper li, */
.widget_categories li {
  text-align: left;
  list-style-type: none;
}

/* .subheader nav.wrapper a, */
.widget_categories a {
  padding: 15px 20px;
  display: block;
}

/*** end header nav.wrapperigation ***/
/* styles to put some basic simple styling on wordpress widget LI elements. default styling sucks! */
li.widget {
  list-style: none;
  position: relative;
  /* to fix ipad display bug */
}

/* some default styling for the wordpress widgets and etc */
.widget_tag_cloud {
  width: 100%;
  margin-bottom: 10px;
  padding: 0 20px 0 0;
}

.widget_tag_cloud .tagcloud a {
  margin: 0 10px 10px 0;
  float: left;
  width: auto;
  padding: 10px;
}

/* social icons */
.social_links ul.social {
  width: 100%;
  margin-bottom: 20px;
}

.social_links .social li {
  width: auto;
  display: inline-block;
  padding: 5px;
  overflow: hidden;
}

/* end of social links */
/* styles for the full width footer widget area, and for certain widgets or HTML that may be used in that widget area */
.widget_logos img,
.widget_logos a {
  display: inline-block;
  padding: 0 1em;
  max-height: 100px;
  vertical-align: middle;
}

.widget_logos a img {
  display: block;
}

.widget_logos {
  text-align: center;
}

.logo a {
  display: inline-block;
  max-width: 100%;
}

.feature {
  position: relative;
  margin-bottom: 0;
  display: block;
  overflow: hidden;
}

.feature img {
  width: 100%;
  display: block;
  margin: 0;
}

.feature .desc {
  position: relative;
}

.big-gallery .row {
  min-height: 400px;
}

.big-gallery__btn {
  position: absolute;
  padding: 10px 20px;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  z-index: 10;
}

/*# sourceMappingURL=benchpress-style.css.map */
/*------------------------------------------------------------------------------------------------------------*/
/*  THEME NAME: lamontdesign benchpress
/*  VERSION: 2.6
/*  LEVEL: LAMONTDESIGN
/*  AUTHOR: LAMONTDESIGN LTD
/*--------------------------------------------------------------------------------------------------------------*/
/* typography */
/* placeholder styles for input elements */
::-webkit-input-placeholder {
    color: #000;
    opacity: 1;
}

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

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

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

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

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

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

p, ul, ol, td, th, address, dl, code, caption, label {
    font-size: 1.6em;
    line-height: 27px;
    font-weight: 300;
    color: #24586F;
    letter-spacing: 0.01em;
}

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;
    margin-bottom: 0;
    border: none;
    color: #333;
    background: #fff;
}
select
{
    padding: 16px 60px 16px 20px;
    appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
    border: none;
    background: url(assets/images/elements/down-arrow-colour.png) no-repeat calc(100% - 20px) center #fff;
    background-size: 20px;
    font-size: 1.6em;
    font-weight: 600;
    text-transform: uppercase;
    color: #24586F;
    display: inline-block;
    width: auto;
}
input[type="checkbox"], textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
}
input[type="text"], input[type="email"], input[type="password"], textarea {
    background: #E6EBEE;
    min-height: 48px;
    border-radius: 0;
}
input[type="checkbox"]:checked {
    background: url(assets/images/elements/blue-tick.png) no-repeat center center;
    background-size: 90% auto;
}

input[type="submit"], button {
    background: #46A2DB;
    font-weight: 600;
    color: #fff;
    text-align: center;
    font-size: 16px;
    text-transform: uppercase;
    max-width: 100%;
    min-width: 190px;
    padding: 0 15px;
    height: 50px;
    width: auto;
    -webkit-transition: box-shadow .25s ease;
    transition: box-shadow .25s ease;
}
input[type="submit"]:hover {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}


h1, h2, h3, h4, h5, h6 {
    padding: 0;
    margin-bottom: 20px;
    margin-top: 0;
    line-height: 1.1em;
    width: 100%;
    clear: both;
    position: relative;
    color: #24586F;
    font-weight: 900;
}

/* 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, .content ul, .content ol {
    margin-top: 1em;
    margin-bottom: 2em;
    line-height: 27px;
    font-weight: 400;
    font-size: 1.4em;
    font-family: "Open Sans", sans-serif;
}

main p {
    line-height: 27px;
}

.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    margin-bottom: .4em;
    margin-top: .83em;
    line-height: 1.2em;
    color: #24586F;
}
.main-con h1, .main-con h3, .main-con h2, .main-con h4, .main-con h5, .main-con h6
{
    text-transform: uppercase;
    margin-top: 60px;
}

/* 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: 5em;
    line-height: 50px;
}

h2 {
    font-size: 3em;
}

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;
    color: #46A2DB;
}

a:hover {
    outline: 0;
    color: #24586F;
}

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 10px 0;
    padding: 0;
    font-size: 34px;
    line-height: 46px;
    font-weight: normal;
    font-style: italic;
}

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

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

/*** end typography ***/
/* buttons & controls */
.stnd-btn, .big-buttons a, .blog-post .post__category-label {
    background: #D8AE00;
    color: #FFF;
    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: 136px;
    min-height: 50px;
    display: inline-block;
    line-height: 30px;
}

a.post {
    height: 100%;
}

.blog-post .post__category-label {
    width: auto;
    display: block;
    position: absolute;
    left: 20px;
    color: #fff;
    z-index: 20;
    top: 16px;
    text-align: left;
    background: transparent;
    min-width: 109px;
    min-height: 0;
    line-height: 14px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 0;
}

.post__title h3 {
    color: #D8AE00;
}

/* 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:hover, header .widget_nav_menu .nav-stub-span:hover {
    color: #176184;
}

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

#header-top .sidebar-header .children li {
    display: block;
}

header .widget_nav_menu .children li a {
    font-size: 16px;
    line-height: 1.8em;
    text-align: left;
    padding: 5px 20px;
    margin-bottom: 0;
    color: #24586F;
}

.children-inner {
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
}

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 {
    width: 20px;
    opacity: 1;
}

header .widget_nav_menu li.current-menu-item>a,
header .widget_nav_menu li.current_page_item>a,
header .widget_nav_menu li.current-page-ancestor>a,
header .widget_nav_menu li.current-menu-item>.nav-stub-span,
header .widget_nav_menu li.current_page_item>.nav-stub-span,
header .widget_nav_menu li.current-page-ancestor>.nav-stub-span {
    color: #fff;
}
header .widget_nav_menu .children li.current-menu-item>a,
header .widget_nav_menu .children li.current_page_item>a,
header .widget_nav_menu .children li.current-page-ancestor>a,
header .widget_nav_menu .children li.current-menu-item>.nav-stub-span,
header .widget_nav_menu .children li.current_page_item>.nav-stub-span,
header .widget_nav_menu .children li.current-page-ancestor>.nav-stub-span {
    color: #46A2DB;
}

header .widget_nav_menu li:last-of-type>a::before {
    display: none;
}

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: #46A2DB;
}

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

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

/* header top bar sidebar styles */
#header-top-bar .widget {
    text-align: right;
    flex: 1 1 auto;
}

.header-top-bar-row a, .header-top-bar-row p {
    padding: 0 3px;
    color: #d6d8d9;
    font-size: 14px;
    font-family: "Oswald", sans-serif;
    line-height: 20px;
    font-weight: 400;
}
li.widget.cart-nav
{
    position: absolute;
    right: 25px;
    top: 0;
}
.header-top-bar-row .cart-nav a, .header-top-bar-row .cart-nav p
{
    font-size: 13px;
    font-weight: 300;
}

.header-top-bar-row a:hover {
    color: #46A2DB;
}

.header-top-bar-row p {
    margin-bottom: 0;
    font-weight: 600;
    padding-bottom: 16px;
    display: flex;
    height: 100%;
    align-items: end;
    width: 100%;
    padding: 0;
}

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

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

.fixed #header-top-bar {
    -webkit-transition: height .2s ease;
    transition: height .2s ease;
}

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

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

body {
    padding-top: 0;
}

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

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

.mob-nav-wrapper .bold > a, .mob-nav-wrapper .bold > .nav-stub-span
{
    font-weight: 700 !important;
    color: #46a2db !important;
}

.mob-nav-wrapper .children a {
    padding-left: 40px;
    background-color: rgba(0, 0, 0, 0.1);
}

/** 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: #24586F;
}

#header-top-bar {
    z-index: 10;
}

#header-top {
    z-index: 2;
}

.no-header-images #header-top, .header-images-disabled #header-top {
    position: relative;
}

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

footer {
    background: #24586F;
    z-index: 4;
    position: relative;
}

footer a:hover {
    color: #fff;
}

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 {
    height: auto;
}

.ld-fadey-slider.header-slider {
    /* initial dimensions of slider */
    height: 520px;
    max-height: 800px;
}

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

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

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

.ld-fadey-slider.slider-size-med {
    height: 500px;
}
/*.post-type-product .ld-fadey-slider.slider-size-med
{
    height: 500px;
}*/

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

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

.frontpage .header-slider .ld-fadey-slider > li::after
{
    content: "";
    background: linear-gradient(to top, rgba(0,0,0,.7) 0, rgba(0,0,0,0) 50%);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    pointer-events: none;
    z-index: 1;
}
.frontpage .header-slider .ld-fadey-slider > li *
{
    z-index: 10;
}
/* end of header slider height declarations


/* left / right buttons for h-slider and header image slider */
.ld-fadey-slider-nav {
    height: 60px;
    width: 60px;
    /*background: url(assets/images/elements/arrow-2.png) no-repeat center center;*/
    bottom: 50%;
    opacity: 1;
    display: none;
}

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

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

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

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

.row.very-wide.slide-wrap {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 20;
    left: 0;
}

.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, .slider-tabs li a {
    border-radius: 50%;
    background: transparent;
    width: 10px;
    height: 10px;
    border: 1px solid #fff;
}

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

.ld-fadey-slider-tabs li a {
    /* opacity: .5; */
    transition: color .2s ease, opacity .2s ease, width .2s ease, height .2s ease;
}

.ld-fadey-slider-tabs li.ld-fadey-slider-tab-here a, .slider-tabs li.slider_here a {
    background: #fff;
}

.ld-fadey-slider-tabs li {
    margin: 0;
    vertical-align: middle;
    padding-bottom: 0;
}

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

.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: rgba(0, 0, 0, .05);
    top: 0;
    width: 100%;
    height: 100%;
}

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

.caption-wrapper .row {
    flex-direction: column;
    height: 100%;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    padding-bottom: 0;
    max-width: 1090px;
}

.caption-wrapper .row .col {
    display: flex;
    align-content: center;
    flex-basis: auto;
    flex-direction: row;
    flex-grow: 0;
    word-wrap: break-word;
    margin: 0;
    padding-bottom: 0;
    text-align: left;
    z-index: 10;
    max-width: 975px;
    padding: 0;
    /*transform: translateY(-110px);*/
}

.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: 2.4em;
    color: #fff;
    line-height: 57px;
    margin: 0 auto;
    position: relative;
    font-weight: 600;
    text-shadow: 0 0 3px rgba(0,0,0,.6);
}

.caption-title p a {
    color: #fff;
    display: inline-block;
    border-radius: 5px;
    text-transform: uppercase;
    line-height: 30px;
    text-decoration: underline;
    font-weight: 500;
    font-size: 14px;
}
.caption-title .ld-fadey-slider-tabs
{
    display: none;
}

.caption-title a:hover {
    color: #884022;
}

/* end of caption styling */
/* styles for featured items & posts */
.post {
    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%;
    box-shadow: none;
}

/* 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: #000;
    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: .15;
}

.post__title {
    color: #4A3015;
}

.feature__title {
    color: #fff;
}

.feature__description, .post__description {
    width: 100%;
    max-width: 99%;
}

.blog-post .desc, .blog-listing .desc {
    padding: 30px 20px;
    position: relative;
    background: #fff;
}

/* 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: #fff;
    display: block;
}

.post-controls {
    padding: 15px 0;
    align-items: center;
    justify-content: center;
    align-content: center;
    height: 80px;
    margin:  0;
}
.post-controls p {
    margin: 0;
    font-size: 2em;
}
.post-controls a {
    text-transform: uppercase;
    position: relative;
    overflow: visible;
}
.post-controls a span {
    background: url(assets/images/elements/white-arrow-left.png) no-repeat center center;
    display: block;
    width: 25px;
    height: 45px;
    top: 50%;
    transform: rotate(-180deg);
}
.post-controls .next-post a {
    padding-left: 40px;
    float:left;
}
.post-controls .prev-post a {
    padding-right: 40px;
    float:right;
}
.post-controls .prev-post a span {
    transform: none;
}

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

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

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

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

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

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

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

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

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

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

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

/* end of pagination links */
main .wrapper .row.blog-listing__load-more-btn {
    text-align: center;
    padding-top: 40px;
    padding-bottom: 10px;
}
.blog-listing__load-more-btn a {
    display: inline-block;
    text-align: center;
    font-size: 12px;
    text-transform: uppercase;
    color: #46A2DB;
    text-decoration: underline;
    font-weight: 700;
}

/* end of styling for previous / next buttons on posts and pages and listings */
/* styles for the hamburger menu when used as a toggle for the sibling navigation in pages or category navigation */
.widget.subnav {
    text-align: center;
    max-width: 320px;
    min-width: 250px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 30px;
}

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

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

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

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

/* forms used in popover boxes */
.ld_popover form {
    max-width: 100%;
    margin: 0;
}

.ld_popover .search.searchform p {
    display: flex;
}

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

.ld_popover input[type="text"], .ld_popover input[type="search"], .ld_popover input[type="email"], .ld_popover input[type="password"] {
    display: block;
    height: auto;
    border: none;
    font-size: 1.6em;
    padding: 10px 20px;
    color: #000;
    background: #fff;
    font-weight: 300;
    text-transform: lowercase;
    flex: 1 1 auto;
    margin-bottom: 0;
    text-align: left;
    height: 60px;
}

.ld_popover input[type="submit"] {
    float: none;
    width: auto;
    height: auto;
    padding: 20px 40px;
    display: inline-block;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    flex: 1 1 auto;
    margin-left: 30px;
    min-width: 190px;
    margin-top: 0 !important;
}

.search-form-title::after {
    content: "";
    height: 1px;
    width: 100%;
    background: #fff;
    display: block;
    margin-top: 20px;
}

.ld_popover__close span {
    display: none;
}

/* new popover styles */
.ld_popover__overlay {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 89999;
    background: rgba(0, 0, 0, .4);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .2s ease, visibility .2s ease;
    transition: opacity .2s ease, visibility .2s ease;
    will-change: opacity, visibility;
    width: 100%;
    height: 100%;
    max-height: 380px;
}

.ld_popover__overlay.ld_popover__open {
    opacity: 1;
    visibility: visible;
}

.ld_popover__wrapper {
    width: calc(100%);
    position: absolute;
    background: rgba(255, 255, 255, 0.85);
    z-index: 90000;
    max-height: calc(100%);
    overflow: auto;
    transition: height .2s ease, width .2s ease;
    height: 100%;
    padding: 0;
    top: 0 !important;
    max-width: 100%;
    text-align: left;
}

.logged-in .ld_popover__wrapper {
    top: 0;
}

.ld_popover .search.searchform {
    margin-bottom: 0;
}

.ld_popover__inner {
    position: relative;
    width: 100%;
    height: auto;
    transition: height .2s ease, width .2s ease;
    max-width: 900px;
    padding: 20px;
    margin: auto;
    top: 50%;
    transform: translateY(-50%);
}

.ld_popover br {
    display: none;
}

.ld_popover__close {
    position: relative;
    width: 87px;
    height: 24px;
    top: 50px;
    right: 0;
    display: block;
    float: right;
    z-index: 90002;
    margin-top: -40px;
    opacity: 1;
    background: none;
    border-radius: 0;
    box-shadow: none;
    left: auto;
    transform: none;
    margin-bottom: 0;
    font-weight: 600;
    color: #24586F;
}
.ld_popover__close:hover
{
    color: #46A2DB;
}

/*.ld_popover__close:hover::after {
    color: rgba(255, 255, 255, 0.8);
}*/

.ld_popover__close::after {
    content: "close x";
    position: absolute;
    text-decoration: underline;
    font-size: 14px;
    color: #24586F;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 90001;
}

.ld_popover .search-form-title {
    /*font-size: 30px;
    font-weight: 600;*/
    margin-bottom: 20px;
}

/* */
/* mobile header  */
.sidebar-header-mobile {
    padding: 15px;
    height: 60px;
    -webkit-align-items: center;
    align-items: center;
    box-shadow: 0px 0px 10px -5px rgba(0, 0, 0, 0.75);
    background: #fff;
}

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

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

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

.social_links ul.social {
    margin: 0;
    display: block;
    height: 45px;
    text-align:right;
}

/**/
/* contact form styles */
.contact_form label {
    font-size: 10px;
    margin-bottom: 0;
    color: #fff;
    text-transform: uppercase;
}

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

/* 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: #749143;
    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;
    font-size: 10px;
    font-weight: 600;
}

/* ADDITIONS */
html #CDSWIDCOE img {
    max-height: 140px;
}
.trip-wrap {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}
.trip-wrap P { 
    display: none;
}

#CDSWIDCOE {
    display: flex;
    justify-content: center;
}
html #CDSWIDCOE {
  position: relative;
  font: normal 11px Trip Sans VF,Trip Sans,Arial,sans-serif;
  color: #002b11;
  background-color: #fff;
  overflow: hidden;
  width: auto;
  margin: 0 10px 10px 10px;
  text-align: center;
  max-width: 160px;
}
.page-checkout .woocommerce-table.woocommerce-table--custom-fields.shop_table.custom-fields {
    display: none;
}
.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children:last-of-type .children {
    right: 0;
}

.frontpage-top-features .thumb::before {
    content: "BOOK NOW";
    position: absolute;
    right: 0;
    top: 0;
    background: #46A2DB;
    color: #fff;
    font-size: 14px;
    width: 110px;
    height: 45px;
    text-align: center;
    line-height: 44px;
    font-weight: 600;
    z-index: 10;
}
.mob-nav-wrapper .child_nav_open .dropdown {
        background: url(assets/images/elements/down-arrow-colour-down.png) no-repeat center center;
}
.front-page-menu-btm::after
{
    content: "";
    position: absolute;
    background:rgba(0,0,0,.4);
    pointer-events: none;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.front-page-menu-btm .row
{
    min-height: 440px;
    z-index: 2;
    height: 100%;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.front-page-menu-btm .row
{
    height: 100%;
    justify-content: center;
    align-items: center;
}
.front-page-menu-btm h2
{
    color: #fff;
    font-size: 6em;
    font-weight: 600;
}
.front-page-menu-btm h3
{
    color: #fff;
    font-size: 2.4em;
    font-weight: 600;
}
#header-top-bar.scrolled ul.sidebar.sidebar-header-top.sidebar-header li.widget.widget_nav_menu {
    padding-top: 0;
    bottom: auto;
}
header #header-top-bar .widget_nav_menu .menu#menu_main-nav-scrolled li a {
    color: #24586F;
    font-size: 1.4em;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    line-height: 18px;
    text-transform: uppercase;
    padding: 0 4px;
}
header #header-top-bar .widget_nav_menu .menu#menu_main-nav-scrolled li.basket-link
{
    border-left: 2px solid #24586F;
    padding-left: 11px;
    margin-left: 13px;
}
header #header-top-bar .widget_nav_menu .menu#menu_main-nav-scrolled li.basket-link a
{
    color: #46A2DB;
}
.scrolled .wrapper.header-top-bar-row {
    background: #fff;
    box-shadow: 0px 2px 17px 0px rgba(0, 0, 0, 0.2);
}
.wrapper.header-top-bar-row {
    background: rgba(0, 0, 0, 0.75);
}
.no-header-images .header-top-bar-row, .header-images-disabled .header-top-bar-row
{
    background: #0b1a21;
}

#header-top-bar.scrolled .widget.widget_logo.logo img {
    max-width: 350px;
    width: 100%;
}
#header-top-bar.scrolled ul.sidebar.sidebar-header-top.sidebar-header .widget.widget_logo.logo {
    position: relative;
    top: unset;
}
.post-footer-navigation.wrapper.blog-style {
    background: #46A2DB;
    padding-bottom: 60px;
}

.blog-style a.feature {
    padding-bottom: 0;
    background: transparent;
}

.blog-style a.feature .desc {
    width: 100%;
    margin-top: 0;
    height: 100%;
    position: absolute;
    background: linear-gradient(to top, rgba(0,0,0,.6) 0, rgba(0,0,0,0) 50%);
    border-radius: 0;
}
.blog-style a.feature .desc .desc-inner
{
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    max-height: calc(100% - 40px);
}
.blog-style .feature__title h3
{
    color: #fff;
    font-size: 2em;
    font-weight: 800;
    line-height: 24px;
}
.blog-style .feature .desc p
{
    color: #fff;
    font-size: 1.2em;
    font-family: "Montserrat", sans-serif;
    line-height: 16px;
    font-weight: 500;
}
.layout_features>.row {
    padding: 10px 0;
}

.layout_slider .content-slide-feature::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100% width:auto;
    background: rgba(0, 0, 0, 0.3);
}
.frontpage .custom_content_wrapper.front-main-cont .row {
    max-width: 850px;
}

.col.span-1-2.footer-seo-thumb {
    min-height: 270px;
}

.contact-form-content-wrapper a {
    text-decoration: underline;
    color: #fff;
}

.contact-form-content-wrapper a:hover {
    color: #24586F;
}

.custom_content_wrapper.wrapper.layout_1_column.colour-contact {
    padding-bottom: 40px;
    background: #749143;
}

.custom_content_wrapper.wrapper.layout_1_column.colour-contact * {
    color: #fff;
}

.custom_content_wrapper.wrapper.layout_1_column.bottom-splash-text {
    padding-bottom: 0;
}

.custom_content_wrapper.wrapper.layout_1_column.very-wide.no-padding.large-page-image {
    padding: 0;
}

.frontpage .top-splash-text.layout_1_column {
    margin-top: 44px;
    margin-bottom: 95px;
}

.frontpage .bottom-splash-text.layout_1_column {
    margin-top: 20px;
    margin-bottom: -10px;
}
.bottom-splash-text a {
    font-size: 12px;
    font-family: "Montserrat", sans-serif;
    text-decoration: underline;
    text-transform: uppercase;
    font-weight: 600;
}
.sidebar-footer-top .col.span-1-2.widget_content_col.widget-content-col-1 h3 {
    color: #fff;
    font-size: 50px;
    font-weight: 700;
    text-decoration: none;
    line-height: 1.3em;
}

.page-privacy-cookies .footer-content-normal {
    display: none;
}

footer #footer .sidebar-footer .widget.logos {
    flex-basis: 100%;
    padding-top: 100px;
}

.mob-nav-wrapper .grandchildren {
    display: none
}

.mob-nav-wrapper .grandchildren a {
    padding-left: 60px;
    font-size: 12px;
    background-color: rgba(0, 0, 0, 0.2);
}
header .widget_nav_menu li:last-of-type ul.grandchildren {
    display: none;
}

.header-images-disabled #header-top-bar {
    z-index: 10;
}

.custom_content_wrapper.wrapper.layout_2_column.bottom-front-black {
    background: #000;
}

.post-type-page.no-page-template .page-footer-features {
    padding-top: 40px;
}

.main-con .gallery {
    padding-bottom: 10px;
}

.right-footer .flex.flex-grow {
    align-content: center;
}

#footer .row.wide, #footer .wide .row {
    max-width: 1060px;
}

#header-top .sidebar-header .widget a {
    padding: 0;
}

.custom_content_wrapper.wrapper.layout_features.full-width.blog-posts-fea .feature .thumb::after {
    height: 110%;
}

.frontpage .wrapper.top-con-wrap .row.top-con .hero-title {
    font-size: 6em;
    text-align: center;
    margin-bottom: 0.40em;
}

.blog .wrapper.top-con-wrap {
    background: #fff;
}

.blog .wrapper.top-con-wrap .row.top-con .hero-title {
    width: 100%;
    clear: both;
    position: relative;
    text-transform: none;
    margin: 0;
}

.post-type-post .row.top-con {
    padding-top: 80px;
}
.wrapper.featured-section-title h2 {
    margin-top: 20px;
}
.no-page-template .main-con {
    background: #fff;
    padding-top: 0;
}
.page-template-template-contact .custom_content_wrapper:first-child .row {
    margin: 0 auto;
    justify-content: space-between;
}

.no-row-padding.fullsize.gmap {
    padding: 0;
}

.page-template-template-top-level .main-con-no-custom {
    padding-bottom: 30px;
    padding-top: 55px;
}

.page-section-nav-title {
    padding-bottom: 10px;
}

.page-template-template-top-level .wrapper.top-con-wrap {
    background: #e1e1e1;
}

.page-template-template-top-level .wrapper.top-con-wrap .row.top-con h1 {
    color: #000;
    text-align: center;
    font-size: 7em;
    text-transform: none;
}

.page-template-template-top-level .wrapper.top-con-wrap .row.top-con {
    padding-bottom: 80px;
    padding-top: 80px;
}

.sidebar-header-top .widget_nav_menu ul.children-inner {
    text-align: left;
}

.sidebar-header-top .widget_nav_menu ul.children-inner a {
    font-size: 16px;
    display: block;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    line-height: 30px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.sidebar-header-top .widget_nav_menu ul.children-inner li:first-of-type a {
    padding-top: 15px !important;
}

.sidebar-header-top .widget_nav_menu ul.children-inner li:last-of-type a {
    padding-bottom: 15px !important;
}

.wrapper.pagination-wrap {
    background: #46A2DB;
    margin-top: 95px;
    border-top: 10px #3882af solid;
}

.wrapper.page-section-nav {
    padding-bottom: 10px;
}

.left-footer .col.span-1-2.widget_content_col.widget-content-col-1 {
    max-width: 100%;
    position: relative;
}

footer #footer .sidebar-footer .widget.widget_content.left-footer {
    flex-basis: 50%;
}

footer #footer .sidebar-footer .widget.widget_content.right-footer {
    flex-basis: 46%;
}

.left-footer .col.span-1-2.widget_content_col.widget-content-col-0 {
    max-width: 260px;
}

.main-con .content .gallery img {
    margin: 0;
}

.blog .row.hero-message.top-con p {
    font-size: 1.6em;
}

.stnd-btn:hover {
    color: #fff;
}

.col.span-1-2.footer-quote h3 {
    font-weight: 600;
}

.table-row .table-cell:last-child::before {
    display: none;
}

.table-cell select {
    -o-appearance: none;
    -ms-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.table-cell.space-cell {
    position: relative;
}

.table-cell.space-cell::after {
    content: "";
    background: url(assets/images/elements/down-select.svg) no-repeat bottom center;
    position: absolute;
    right: 20px;
    top: 50%;
    height: 20px;
    width: 20px;
    transform: translateY(-50%);
    pointer-events: none;
}

.table-cell select {
    padding: 0;
}

.main-con-no-custom .col.span-2-3 {
    max-width: 600px;
}

.social_links_size_medium .social li {
    width: 45px;
    height: 45px;
}

.social svg {
    background: transparent;
    fill: rgba(255, 255, 255, 0.5);
    transition: background .2s ease, fill .2s ease;
}

.social_links .social li a {
    background: none;
}

.social_links .social li a:hover svg, .social_links .social li a:focus svg {
    fill: #fff;
}

#header-top-bar .widget.widget_logo.logo img {
    width: 525px;
    image-rendering: -webkit-optimize-contrast;
    max-width: 100%;
}
.main-con .content img {
    margin-bottom: 2em;
}

.not-found-body {
    background: #EDEFF2;
}

.widget.widget_popup_button {
    padding-top: 24px !important;
}

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

.frontpage .custom_content_wrapper.front-main-cont {
    padding-top: 100px;
    padding-bottom: 80px;
}

.front-main-cont h1 {
    font-size: 4em;
    line-height: 44px;
}
.front-main-cont h1 span, .front-main-cont strong
{
    color: #46A2DB;
    font-weight: inherit;
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong
{
    color: #46A2DB;
    font-weight: inherit;
}
.front-main-cont h2 {
    font-size: 2.4em;
    color: #585A59;
    line-height: 32px;
}
.front-main-cont p {
    font-size: 2.6em;
    line-height: 38px;
    font-weight: 500;
}

.blog .sidebar.float-right-sidebar .widget.subnav {
    display: none;
}

.padd-btm {
    padding-bottom: 120px
}

.blog .row.hero-message.top-con .col {
    max-width: 100%;
}

#footer-bottom .copy-text h3 a {
    margin-bottom: 0;
    color: #fff;
}

#footer-bottom .copy-text h3 {
    margin-bottom: 0;
}

#footer-bottom .copy-text h3 a:hover {
    margin-bottom: 0;
    color: #749143;
}

#footer-bottom .flex {
    align-items: center;
    position: relative;
}

#footer-top .footer-contact h3 {
    color: #fff;
    margin-bottom: 5px;
    font-size: 3em;
    font-weight: 700;
}

#footer-top .footer-contact a {
    color: #72BDC3;
    font-weight: 500;
}

#footer-top .footer-contact a:hover {
    color: #fff;
}

#footer-top .footer-message {
    flex-basis: 60%;
}

#footer-top h4 {
    font-family: 'Oswald', sans-serif;
    font-weight: 700;
    font-size: 3em;
    color: #fff;
    margin-bottom: 0;
}

.main-con-no-custom {
    padding-bottom: 40px;
}

label.error {
    overflow: hidden !important;
}

.wrapper.blog-listing .row {
    padding: 10px 10px 20px 10px;
}

.wrapper.blog-listing .row#search-results {
    padding-bottom: 10px;
}

.col.span-1-1.comments {
    margin-bottom: 80px;
}

.not-found input[type="submit"], .search input[type="submit"] {
    margin-top: 15px;
}

.stnd-btn {
    line-height: 30px;
    padding: 10px 20px;
    font-size: 14px;
    color: #fff;
    background: #46A2DB;
    display: inline-block;
    text-transform: uppercase;
    min-width: 150px;
    text-align: center;
    font-weight: 600;
}

.feature .stnd-btn {
    position: absolute;
    bottom: -50px;
    left: 0;
    z-index: 10;
    background: #FFBA00;
}

.feature .stnd-btn p {
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    text-transform: capitalize;
}

.not-found, .search .col.span-1-1.content {
    padding: 100px 0;
}

header .widget_nav_menu > .menu > li > a:hover {
    color: #fff;
}

.page-template-template-listing .wrapper.blog-listing .row {
    padding-bottom: 60px;
    padding-top: 40px;
}

.blog-toplevel footer, .page-template-template-listing footer, .search footer {
    box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, .25);
}

.wrapper.top-wrap h1 {
    color: #fff;
}

.copy-text p {
    color: #4A3015;
    text-align: left;
    font-size: 10px;
}

.copy-text {
    max-width: 1280px;
    margin: 0 auto;
}

footer h4 {
    margin-bottom: 5px;
    font-weight: 300;
    font-size: 3.4em;
    color: #749143;
}

.page-template-template-contact .custom_content_wrapper a {
    text-decoration: underline;
}

.page-template-template-contact .contact-form-wrapper {
    padding-top: 80px !important;
    padding-bottom: 150px !important;
}

.page-template-template-contact .contact-form-wrapper h3 {
    margin-bottom: 25px;
}

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

.slider-tabs li {
    margin: 0 4px;
}

.ld_h_slider_wrapper.row {
    padding: 0;
}

.frontpage header .ld-fadey-slider-tabs a {
    margin: 0 3px;
}

.hero-message .hero-sub p {
    color: #749143;
    font-size: 1.8em;
    font-weight: 400;
}

.page-contact h2 a {
    color: #749143;
    font-weight: 600;
}

.page-contact h2 a:hover {
    color: #fff;
}

.row.hero-message.top-con {
    padding-top: 30px;
}

.social-medium .social li a {
    transform: scale(0.8);
}

.social-medium .social li a:hover {
    opacity: 1;
}

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

.custom_content_wrapper.wrapper.layout_features.featured-section.very-wide {
    padding: 0;
}

#header-top .widget_logo img {
    max-width: 100%;
}

#header-top .widget_logo {
    max-width: 370px;
}

.head-contact-right p {
    font-size: 20px;
    color: #008BD8;
}

.head-contact-right p strong {
    font-weight: 600;
}

.head-contact-right a {
    font-size: 20px;
    color: #008BD8;
    font-weight: 600;
}

.head-contact-right a:last-of-type {
    color: #72BDC3;
}

.head-contact-right a:hover {
    color: #84BE02;
}

footer .sidebar-footer-bottom .col.widget_content_col {
    position: relative;
    padding-bottom: 5px;
}

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

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

.sidebar-footer-top .row.very-wide {}

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

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

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

.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;
    position: relative;
}

.wrapper.featured-section-title {
    margin: 0 auto;
    text-align: center;
    padding-top: 50px;
    /*padding-bottom: 20px;*/
    padding-bottom: 40px;
}
.featured-section-title h2
{
    font-size: 4em;
}

body:not(.frontpage) .featured-section {
    padding-bottom: 0;
    /*padding-top: 40px;*/
    padding-top: 30px;
}
body:not(.frontpage).post-type-product .featured-section {
    padding-top: 50px;
}

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

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

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

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

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

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

.row.hero-message.top-con p {
    position: relative;
    font-size: 2.6em;
}

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

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

#footer-top {
    margin: 0 auto;
    position: relative;
    padding-top: 70px;
    padding-bottom: 15px;
}

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

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

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

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

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

.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;
    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: 20px;
    background: transparent;
    color: #fff;
    text-align: left;
    margin: 0;
    padding: 10px;
    bottom: 0;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.2em;
}

.featured-section {
    overflow: visible;
}

.featured-section .push-features {
    padding: 0 10px 0 10px;
}

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

footer h3, footer h5 {
    margin-bottom: 10px;
    font-weight: 800;
}

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

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

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

.widget.widget_content.head-contact {
    padding: 90px 10px 0 10px !important;
}
.row.top-con {
    padding-top: 50px;
    padding-bottom: 0;
}

.frontpage .wrapper.top-con-wrap .row.top-con {
    padding-bottom: 50px;
}

.post-type-post .row.top-con {
    padding-bottom: 10px;
}

.page-template-template-contact .row.top-con {
    padding-bottom: 80px;
    padding-top: 60px;
}

.frontpage .row.top-con {
    padding-top: 105px;
    padding-bottom: 60px;
    max-width: 920px;
}

.frontpage .hero-message-wrap {
    text-align: center;
}

.map-overlay {
    background-color: rgba(245, 242, 241, .4);
    z-index: 2;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
}

/* contact page template */
.page-template-template-contact .contact-form-wrapper {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}
.page-template-template-contact .ld-fadey-slider
{
    position: fixed;
    height: 100vh;
}
.page-template-template-contact main
{
    padding: 150px 0 50px 0;
    background: rgba(70,162,219,.7);
}
.contact-form-content-wrapper p {
    color: #fff;
    font-size: 2.6em;
    line-height: 38px;
}
.contact-form-content-wrapper h1 {
    font-size: 3em;
    margin-bottom: 10px;
    text-transform: none;
    color: #fff;
    font-weight: 600;
}
.map-overlay .map-text {
    color: #5A5A5A;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    font-size: 4.5em;
    text-align: center;
    text-transform: uppercase;
    font-weight: 600;
}

.comments textarea {
    min-width: 100%;
}
.commentlist.clearfix {
    font-size: 80%;
}
.contact-form-header {
    margin-bottom: 30px !important;
    font-size: 3.2em;
}

.wrapper.contact-form-wrapper {
    padding: 0;
    padding-bottom: 40px;
}
.top-con h1 {
    margin-bottom: 20px;
    line-height: 50px;
    text-transform: uppercase;
}

.frontpage .top-con h1 {
    text-transform: none;
    font-size: 4.5em;
    text-align: center;
    text-transform: none;
    color: #749143;
}

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

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

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

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

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

.commentlist.clearfix {
    margin-bottom: 180px;
}

footer h2 {
    color: #46A2DB;
    font-size: 6em;
    max-width: 520px;
    line-height: 60px;
    margin-bottom: 0;
    text-transform: uppercase;
    font-weight: 900;
}
footer h2 span, footer h2 strong
{
    color: #fff;
    font-weight: inherit;
}

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

.hero-title-wrapper.wrapper {
    padding-top: 60px;
    margin-bottom: 110px;
    padding-bottom: 70px;
}

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

.feature__description p, .post__description p {
    font-size: 1.2em;
    line-height: 1.4;
}

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

.feature__title h3, .post__title h3 {
    font-size: 3em;
    font-weight: 600;
    padding: 0;
    margin: 0;
    margin-bottom: 10px;
    z-index: 1;
    color: #46A2DB;
    text-transform: uppercase;
}

.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: left;
    position: relative;
    z-index: 2;
    width: 100%;
    display: block;
    text-align: center;
    bottom: 10px;
}

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

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

#header-top .sidebar-header li {
    position: relative;
    width: auto;
}

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

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

/* blog feature image */
.blog_feature_image {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    overflow: hidden;
    padding-bottom: 40px;
    padding-top: 70px;
}

.blog_feature_image .row {
    max-height: 520px;
}

.blog_feature_image img {
    width: 100%;
    margin: 0 auto;
    object-fit: cover;
    max-height: 500px;
    object-position: center;
}

.blog img.size-full-width-blog-image, .blog img.size-header, .blog img.size-full, .blog img.aligncenter
{
    padding-top: 80px;
    padding-bottom: 20px;
}

.col form.contact_form {
    margin: -10px;
    width: calc(100% + 20px);
}

.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;
    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 {
    color: #24586F;
    margin: 0 auto;
    font-size: 1.8em;
    line-height: 26px;
    font-family: "Open Sans", sans-serif;
}

/* padding for custom content rows */
.custom_content_wrapper:not(.embed) {
    padding: 50px 0;
}
.h-slider-nav {
    background: url(assets/images/elements/arrow.png) no-repeat center center #749143;
    top: 50%;
    width: 60px;
    height: 50px;
    transform: translateY(-50%);
    display: none;
    background-size: auto 20px;
    display: none;
}

.h-slider-nav.h-slider-prev {
    transform: translateY(-50%) rotate(180deg);
    left: 0;
}

.h-slider-nav.h-slider-next {
    right: 0;
}

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

.ld_h_slider_wrapper {
    overflow: hidden;
}


/* end of frontpage features */
#footer-bottom {
    background: #46A2DB;
    position: relative;
    padding-bottom: 5px;
}

body.frontpage .header-slider .ld-fadey-slider {
    height: calc(100vh);
    max-height: 760px;
    min-height: 280px;
}

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

.frontpage .caption-wrapper .row {
    justify-content: flex-end;
    align-items: center;
    height: 100%;
}

.sidebar-footer-bottom.row {
    margin: 0 auto;
    max-width: 1320px;
    padding-bottom: 0;
}

.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 */
.sidebar-header-top .widget_nav_menu ul {
    display: inline-block;
    text-align: right;
}

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

.sidebar-header-top .widget_nav_menu li a, header .widget_nav_menu .nav-stub-span {
    font-size: 2.4em;
    font-family: "Montserrat", sans-serif;
    line-height: 29px;
    position: relative;
    cursor: pointer;
    font-weight: 600;
    color: #46A2DB;
    text-transform: uppercase;
    padding: 0 8px;
}

/* end of top bar subnav styles */
/* hide subnav on sidebar */
.slider-tabs li {
    vertical-align: middle;
}
.slider-tabs li a {
    background: #5A5A5A;
    border-color: #5A5A5A;
    opacity: .5;
    width: 8px;
    height: 8px;
    transition: opacity .2s ease, width .2s ease, height .2s ease;
}
.slider-tabs li.slider_here a {
    opacity: 1;
    width: 12px;
    height: 12px;
    background: #46A2DB;
    border-color: #46A2DB;
}
.caption-title h2, .caption-title h3 {
    font-size: 6em;
    font-weight: 600;
    line-height: 57px;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 10px;
    text-shadow: 0 0 3px rgba(0,0,0,.6);
}

/* frontpage top content */
/* masonry filter buttons */
ul.post-filters {
    display: flex;
    text-align: center;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    align-content: center;
}

.post-filters li {
    display: inline-block;
    margin-right: 10px;
}

.wrapper.blog-categories {
    background: #749143;
}

.col.post-filters-col {
    padding: 5px;
}
.wrapper.blog-listing .row.blog-search-filters
{
    padding-top: 60px;
    padding-bottom: 30px;
}
.post-filters li a {
    display: block;
    color: #24586F;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 40px;
    font-size: 30px;
    position: relative;
}
.post-filters li
{
    position: relative;
    padding-right: 10px;
    margin-right: 10px;
}
.post-filters li::after
{
    width: 1px;
    height: 30px;
    background: #24586F;
    content: "";
    display: inline-block;
    top: 50%;
    position: absolute;
    margin-top: -15px;
    right: 0;
}
.post-filters li:last-child
{
    padding-right: 0;
    margin-right: 0;
}
.post-filters li:last-child::after
{
    display: none;
}

.post-filters li a:hover, .post-filters li a.active {
    color: #46A2DB;
}

/* take care of question mark icons on safari by hiding images that have 0 dimensions in tripadvisor widget */
.TA_certificateOfExcellence img[width="0"],
.TA_certificateOfExcellence img[height="0"] {
    display: none;
}

/* 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
{
    margin-top: 10px;
}

.g-recaptcha>div {
    float: right;
}

.g-recaptcha.error iframe {
    box-shadow: -2px -2px 0px red;
    background: red;
    border-radius: 3px;
}

label .asterisk::before {
    content: "*";
}

label .asterisk {
    padding-left: 2px;
}

/* availability table */
.table {
    display: block;
    width: 100%;
}

.table-row {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

.table-body {
    border-bottom: 1px solid #707070;
}

.table-row .table-cell:first-child, .table-row .table-head:first-child {
    padding-left: 0;
}

.table-row .table-cell:last-child, .table-row .table-head:last-child {
    padding-right: 0;
}

.table-row .table-cell:last-child:not(:first-child) {
    text-align: right;
}

.table-cell, .table-head {
    flex: 1 1 0px;
    display: block;
    padding: 18px 15px;
    text-align: left;
    vertical-align: top;
    font-size: 1.5em;
    line-height: 27px;
    font-weight: 400;
    color: #000;
}

.table-cell.span-1-3, .table-head.span-1-3 {
    flex-basis: 33.333333%;
}

.table-cell.span-1-6, .table-head.span-1-6 {
    flex-basis: 16.6666%;
}

.table-cell select, .table-cell input, .table-cell textarea {
    font-size: 100%;
    display: inline-block;
}

.table-cell * {
    vertical-align: top;
    font-size: 100%;
}

.table-head {
    color: #749143;
    font-weight: 600;
}

.table-body {
    width: 100%;
}

.table-cell input[type=submit] {
    font-weight: 600;
    background: transparent;
    box-shadow: none;
    padding: 0;
    width: auto;
    min-width: 0;
}

.table-cell input[type=submit]:hover, .table-cell input[type=submit]:focus {
    box-shadow: none;
}

.feature .desc {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    padding-bottom: 30px;
    width: calc(100% - 40px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    padding: 20px 15px;
    margin-top: -65px;
    min-height: 175px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.feature .desc p, .feature .desc h3 {
    max-width: 320px;
    margin: 0 auto;
}

.feature .desc h3 {
    margin-bottom: 5px;
}

.feature.post .desc h3 {
    font-size: 2em;
    text-transform: none;
}

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

.main-conn-padd {
    padding-top: 60px;
}

.wrapper.product-gallery {
    padding-top: 60px;
    padding-bottom: 30px;
    background: #EDEFF2;
}

.ld-h-slider-nav-wrapper {
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 3;
    width: 60px;
}

.ld-h-slider-nav-wrapper .ld-h-slider-nav {
    height: 40px;
    width: 30px;
    background: url(assets/images/elements/arrow.png) no-repeat center center;
    opacity: 1;
    float: right;
}

.ld-h-slider-nav-wrapper .ld-h-slider-nav.h-slider-disabled {
    opacity: .5;
}

.ld-h-slider-nav-wrapper .ld-h-slider-nav.h-slider-prev {
    transform: rotate(-180deg);
    float: left;
}

.row.ld_h_slider_wrapper {
    overflow: hidden;
}

.caption-title {
    position: relative;
    /*padding-top: 20px;*/
}

.frontpage .hero-message-wrap p {
    font-size: 3em;
    color: #585C5D;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6em;
}

.wrapper.foot-cont .foot-cont-slider-feature-title h3 {
    color: #fff;
}

.wrapper.foot-cont .h-slider-inner {
    padding-bottom: 0;
}

.wrapper.foot-cont .h-slider-inner>li {
    padding: 0;
}

.foot-cont-slider-content {
    position: relative;
}

.foot-cont-slider-content a {
    color: #fff;
}

.foot-cont-slider-content a:hover, .foot-cont-slider-content a:focus {
    opacity: .7;
}

.wrapper.foot-cont .slider-tabs {
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    bottom: 20px;
    left: 50%;
    max-width: 400px;
    transform: translateX(-50%);
    text-align: left;
}

.wrapper.foot-cont .slider-tabs li {
    margin: 0;
    padding: 0 5px 0 0;
}

.foot-cont-slider-content {
    min-height: 480px;
}

.wrapper.foot-cont .foot-cont-slider-feature-desc {
    position: relative;
    padding-left: 20px;
}

.wrapper.foot-cont .foot-cont-slider-feature-desc p {
    margin: 0;
    font-size: 1.8em;
    line-height: 27px;
    color: #fff;
}

.wrapper.foot-cont .foot-cont-slider-feature-desc::before {
    content: "";
    width: 4px;
    position: absolute;
    left: 0;
    background: #749143;
    top: 0;
    height: 100%;
    bottom: 0;
}

.wrapper.foot-cont .h-slider-inner {
    margin-bottom: 0;
}

.foot-cont-slider-content {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.foot-cont-slider-content .inner-col {
    max-width: 420px;
    padding: 10px;
    margin-top: -20px;
}

.foot-cont-slider-background {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: transparent;
    padding: 0;
}

#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header {
    justify-content: space-between;
    align-items: center;
    align-content: center;
    height: 103px;
}

#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header li.widget {
    flex-grow: 0;
}
#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header li.header-top-nav
{
    position: absolute;
    top: 0;
    right: 192px;
}
#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header li.cart-nav::before
{
    content: "";
    position: absolute;
    left: 10px;
    width: 1px;
    background: #fff;
    height: 40px;
    top: 0;
}

#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header li.widget.widget_nav_menu {
    flex-grow: 1;
    flex-shrink: 0;
    bottom: -15px;
}

.sidebar-header-alt {
    display: none;
}
.sidebar-header-alt a {
    color: #749143;
}
 .scrolled .sidebar-header-alt {
    display: flex;
    height: 50px !important;
}
 .scrolled .sidebar-header-top:not(.sidebar-header-alt) {
    display: none;
}
#header-top {
    transition: margin-top .15s ease;
}

.page-template-template-top-level .main-con-no-custom p {
    font-size: 1.6em;
}

.social svg {
    display: block;
}

footer #footer {
    padding: 75px 0 0 0;
}

/* footer layout / fonts */
footer #footer .sidebar-footer .widget {
    flex-basis: 100%;
    display: flex;
}

footer h3 {
    font-size: 2.8em;
    color: #46A2DB;
    font-family: "Oswald", sans-serif;
    line-height: 28px;
    margin-bottom: 15px;
}

footer p {
    font-size: 2em;
    color: #fff;
    font-family: "Oswald", sans-serif;
    line-height: 30px;
    margin-bottom: 0;
}

footer .widget_content .flex
{
    align-content: space-between;
}
.sidebar.sidebar-footer
{
    min-height: 360px;
}

footer a
{
    color: #fff;
    text-decoration: none;
    font-family: "Oswald", sans-serif;
}
footer a:hover
{
    color: #46A2DB;
}
footer .widget_content:not(:first-child) .col.span-1-1
{
    position: relative;
    margin-top: 97px;
    padding-top: 15px;
}
footer .widget_content:not(:first-child) .col.span-1-1::before
{
    content: "";
    height: 1px;
    background: #fff;
    top: 0;
    left: 10px;
    right: 10px;
    position: absolute;
}
footer .widget_content .col.span-1-1 p
{
    color: #46A2DB;
    font-size: 1.6em;
}
footer .widget_content .col.span-1-1 p:first-child
{
    font-size: 25px;
    color: #fff;
    margin-bottom: 10px;
}
footer .widget_content .col.span-1-1 a
{
    color: #fff;
}

footer #footer .sidebar-footer .widget_logo {
    padding-bottom: 100px;
}

#footer-bottom p {
    color: #fff;
    font-size: 1.2em;
    line-height: 20px;
    font-family: "Open Sans", sans-serif;
}
#footer-bottom a {
    color: #fff;
    font-family: "Open Sans", sans-serif;
    text-decoration: underline;
}

#footer-bottom a:hover {
    color: #fff;
}
/* end of footer */

body.blog .hero-message-wrap p {
    font-size: 1.4em;
    max-width: 100%;
}
.widget_mobile_nav_button {
    flex-basis: 50px;
    top: 5px;
}

.frontpage .custom_content_container .feature img {
    object-fit: cover;
    height: 100%;
}

.custom_content_wrapper.wrapper.layout_1_column.blog-posts-fea-title {
    padding-top: 30px;
}

.custom_content_wrapper.wrapper.layout_1_column.blog-posts-fea-title h3 {
    font-size: 3.4em;
    color: #000;
    padding: 45px 0;
    padding-bottom: 0px;
}

.h-slider-inner-nav-wrapper {
    display: block !important;
    position: static;
}

/* end of frontpage feature slider */
/* end of large fp feature slider with custom nav */
/* page section nav inc/component-page-section-nav.php */
.page-section-nav a.feature {
    box-shadow: 0 0 15px rgba(0, 0, 0, .16);
}

.page-section-nav-title {
    text-align: center;
    padding-bottom: 0;
}

.page-section-nav-title h2 {
    margin: 0;
    font-size: 3.4em;
}

/* end of page section nav inc/component-page-section-nav.php */
/* misc fixes */
.blog-post .post__category-label, .post__category-label {
    display: none;
}

/* end misc fixes */
/* header top bar */
#header-top {
    background: rgba(255, 255, 255, 0.5);
}

#header-top .sidebar.sidebar-header {
    max-width: 1320px;
    margin: 0 auto;
    height: 35px;
    align-content: center;
    align-items: center;
}

#header-top .sidebar-header .widget {
    flex-basis: 100%;
    text-align: left;
}

#header-top .sidebar-header .widget p {
    font-size: 1.4em;
    color: #1f1f1f;
    line-height: 18px;
}

#header-top .sidebar-header .widget a {
    color: #1f1f1f;
}

/* end header top bar */
#header-top-bar .widget_nav_menu {
    padding-right: 25px;
    padding-bottom: 0;
}

/* frontpage top features */
.bottom-splash-text h3 {
    font-size: 4em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

a.feature {
    display: flex;
    flex-direction: column;
}

a.feature .desc {
    order: 2;
}

a.feature .thumb {
    order: 1;
}

.frontpage-top-features>.row {
    padding: 10px 0;
}

.h-slider-nav.h-slider-prev {
    left: -20px;
}

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

.frontpage-top-features .h-slider-wrapper.row {
    overflow: visible;
}

/* end frontpage top features */
/* padding adjustments for singular page */
.post-type-post .hero-title-wrap {
    padding-bottom: 35px;
}

/* end padding adjustments for singular page */
/* page listing template */
.page-template-template-top-level .page-section-nav-title {
    padding-bottom: 80px;
}

.page-template-template-top-level .page-section-nav-title h2 {
    color: #000;
}

.page-template-template-top-level .feature .desc h3 {
    font-size: 2.8em;
}

/* end page listing template */

/* fix for caption jittering */
.frontpage .fixed-caption .caption-wrapper {
    position: fixed;
    height: calc(100vh - 150px) !important;
    max-height: 800px;
    top: 100px;
    min-height: 300px;
}

.frontpage .slider-size-large.fixed-caption .caption-wrapper {
    height: 600px;
}

.frontpage .slider-size-med.fixed-caption .caption-wrapper {
    height: 370px;
}

.frontpage .slider-size-small.fixed-caption .caption-wrapper {
    height: 320px;
}
main {
    background: #fff;
    z-index: 1;
}

/* end fix for caption jittering */
.frontpage header:not(.no-header-images):not(.header-images-disabled) {
    min-height: 400px;
}
.logo a {
    vertical-align: middle;
}
.logo-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.logo-wrapper .flex-child {
    flex-basis: auto;
    padding: 10px;
}

.widget_logos img, .widget_logos a {
    padding: 0;
}

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

.widget_logos img, .widget_logos a {
    display: inline-block;
    padding: 0 1em;
    max-height: 50px;
    vertical-align: middle;
}

#header-top-bar ul.sidebar.sidebar-header-top.sidebar-header li.widget.header-top-right-nav {
    position: absolute;
    right: 25px;
    top: 10px;
    text-align: right;
}
.top-blog-wrap {
    padding-top: 110px;
    padding-bottom: 70px;
}

/* form fields */
.form-input-label input:not([type="submit"]), .form-input-label textarea, .form-input-label select {
    margin-bottom: 20px;
}

.form-input-label label {
    vertical-align: middle;
}



/* layout slider / quote slider */
.layout_slider > .row
{
    padding-left: 0;
    padding-right: 0;
}
.layout_slider li.content-slide::before {
    content: "": background: rgba(0, 0, 0, .4);
    position: absolute;
    pointer-events: none;
    /* allow clicks through */
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
}

.layout_slider li.content-slide * {
    z-index: 10;
}

.layout_slider .h-slider-inner {
    padding-bottom: 0;
}

.layout_slider.very-wide>.row {
    padding-bottom: 20px;
}

.layout_slider .ld_h_slider_wrapper.row {
    max-width: 100%;
}

.layout_slider .content-slide-feature {
    position: relative;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.layout_slider .content-slide-desc {
    display: flex;
    align-items: center;
    padding: 20px;
    position: relative;
    min-height: 500px;
    flex-basis: calc(100% - 410px - 10%);
    justify-content: center;
}

.layout_slider .content-slide-desc-inner {
    flex-basis: 510px;
    transform: translateY(30px);
    line-height: 1;
}

/* nav options */
.layout_slider .slider-tabs {
    text-align: left;
    padding-left: 0;
    margin-top: 4em;
}

.layout_slider .slider-tabs li a {
    border-color: #fff;
    background: #fff;
    width: 10px;
    height: 10px;
    opacity: 1;
}

.layout_slider .slider-tabs li.slider_here a {
    width: 10px;
    height: 10px;
    background: #749143;
    border-color: #749143;
}

.layout_slider .content-slider-prev-next-links {
    position: absolute;
    bottom: 32px;
    right: 40px;
    width: 50px;
    height: 30px;
}

.layout_slider .content-slider-prev-next-links .h-slider-nav {
    width: 18px;
    height: 30px;
    margin-top: -15px;
    background: url(assets/images/elements/arrow-colour.png) no-repeat center center;
    display: block;
    background-size: 18px 30px;
}

.layout_slider .slider-tabs-title-nav-wrapper {
    position: absolute;
    width: 410px;
    height: 100%;
    right: 13%;
    top: 0;
    bottom: 0;
    z-index: 20;
}

.layout_slider .slider-tabs-title-nav {
    height: 100%;
    max-width: 320px;
    padding: 0;
    margin: 0;
    display: flex;
    font-size: 1.6em;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    margin: 0 auto;
}

.layout_slider .slider-tabs-title-nav li {
    display: block;
    width: 100%;
    background: rgba(0,0,0,.6);
    margin-top: 1px;
    margin-bottom: 1px;
}

.layout_slider .slider-tabs-title-nav li span {
    display: block;
    width: 100%;
    cursor: pointer;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    padding: 17px 20px;
}
.layout_slider .ld-fadey-slider-nav-layer
{
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0s ease;
    transition-delay: .2s;
    will-change: visibility opacity;
}
.ld-fadey-slider.ready + .ld-fadey-slider-nav-layer
{
    visibility: visible;
    opacity: 1;
}

.layout_slider .slider-tabs-title-nav li.ld-fadey-slider-tab-here {
    background: #46A2DB;
}

/* layout slider content styles */
.content-slide-top-title h4 {
    color: #fff;
    font-size: 1.8em;
    margin-bottom: 2em;
}

.content-slide-title h3 {
    font-size: 3.4em;
    font-weight: 700;
    margin-bottom: 10px;
    position: relative;
    color: #fff;
    text-transform: uppercase;
}

.content-slide-description p {
    font-size: 1.8em;
    color: #fff;
    font-weight: 400;
    margin-bottom: 20px;
    line-height: 30px;
}

.content-slide-link a {
    color: #fff;
    padding: 20px;
    text-align:center;
    min-width: 150px;
    font-size: 1.4em;
    font-weight: 600;
    background: #46A2DB;
    font-family: Arial;
    display: inline-block;
    margin-top: 25px;
}

.layout_slider .ld-fadey-slider-tabs
{
    display: none;
    position: absolute;
    bottom: 20px;
}
.layout_slider .ld-fadey-slider-tabs li {
    padding: 0 4px;
    margin: 0;
}
@media all and (max-width: 1150px) {
    .layout_slider .slider-tabs-title-nav-wrapper
    {
        right: 0;
    }
    .layout_slider .content-slide-desc
    {
        flex-basis: calc(100% - 410px);
    }
}
@media all and (max-width: 1060px) {
    header #header-top-bar .widget_nav_menu .menu#menu_main-nav-scrolled li a
    {
        font-size: 1.2em;
    }
}
@media all and (max-width: 980px) {
    .content-slide-title h3 {
        font-size: 1.8em;
    }

    .content-slide-description p {
        font-size: 1.8em;
        line-height: 27px;
    }
}
@media all and (max-width: 900px) {
    .layout_slider .ld-fadey-slider-tabs
    {
        display: block;
    }
    .layout_slider .content-slide-desc {
        flex-basis: 100%;
        padding-bottom: 60px;
    }
    .ld-fadey-slider-nav-layer {
        width: 100%;
    }
    .layout_slider .slider-tabs-title-nav-wrapper
    {
        display: none;
    }
}

/* end layout slider / quote slider */
/* ninja forms tidy */
#ninja_forms_required_items, .nf-field-container {
    margin-bottom: 5px !important;
}

.nf-error .nf-error-msg {
    font-size: 1em;
    padding: 10px 0;
    text-transform: uppercase;
}

.nf-form-cont {
    margin-top: 30px;
}

.hr-wrap {
    padding: 20px 0;
}

.nf-form-layout p {
    margin-left: 0;
    margin-right: 0;
    font-size: 1.4em;
    /* color: #293E69; */
}

.listcheckbox-container .nf-field-element label {
    font-size: 15px;
}

.nf-form-content .ninja-forms-field {
    color: #DE9A00;
}

.nf-form-cont .nf-form-content button, .nf-form-cont .nf-form-content input[type="button"], .nf-form-cont .nf-form-content input[type="submit"] {
    background: #24586F;
    color: #fff !important;
    font-size: 1.4em;
    text-align: center;
    padding: 20px;
    max-width: 100%;
    min-width: 150px;
    width: auto;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 600;
    float: right;
    font-family: Arial;
}

.nf-form-cont .nf-form-content button:hover, .nf-form-cont .nf-form-content input[type=button]:hover, .nf-form-cont .nf-form-content input[type=submit]:hover {
    /* background: #EBB400; */
    box-shadow: 0 0 6px rgba(0, 0, 0, .3);
    /* color: #EBB400 !important;
    background: #000 !important; */
}

.nf-form-content button:hover, .nf-form-content input[type="button"]:hover, .nf-form-content input[type="submit"]:hover {
    background: #adbf91;
    transition: all .5s;
}

.nf-form-cont .nf-form-content {
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.nf-form-content .nf-field-description {
    font-size: 100%;
    margin-bottom: 10px;
}

.checkbox-wrap .nf-field-element label.nf-checked-label::before,
.checkbox-wrap .nf-field-label label.nf-checked-label::before,
.listcheckbox-wrap .nf-field-element label.nf-checked-label::before,
.listcheckbox-wrap .nf-field-label label.nf-checked-label::before {
    color: #DE9A00 !important;
}

.nf-error-msg, .ninja-forms-req-symbol {
    font-size: 1em;
    color: #fff !important;
}

.submit-wrap .nf-field-element {
    padding-top: 30px;
    text-align: left;
}

.nf-form-cont .nf-field-label label, .nf-form-cont .nf-form-fields-required {
    font-weight: 600;
    font-size: 1em;
    text-transform: uppercase;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
}

.nf-form-cont .nf-form-fields-required {
    margin-bottom: 10px;
    color: #fff;
}

.nf-form-cont .nf-form-content .label-above .nf-field-label, .nf-form-cont .nf-form-content .label-below .nf-field-label, .nf-form-cont .nf-form-content .label-hidden .nf-field-label {
    margin-bottom: 0;
}

.nf-form-cont .nf-form-content .list-select-wrap .nf-field-element>div, .nf-form-cont .nf-form-content input:not([type=button]), .nf-form-cont .nf-form-content textarea {
    border-color: #fff !important;
    border: none;
    border-bottom: 1px solid #fff;
}

.nf-form-cont .nf-form-content textarea.ninja-forms-field {
    height: 230px;
}
/* end ninja forms tidy */


.post-type-product .woocommerce-Price-amount.amount {
    font-size: 30px;
    font-weight: 700;
    color: #000 !important;
}
.post-type-product .wc-pao-addon-name .woocommerce-Price-amount.amount
{
    font-size: 100% !important;
}
label.wc-pao-addon-name
{
    margin-bottom: .4em;
    margin-top: .83em;
    line-height: 1.2em;
    color: #24586F;
    font-size: 20px;
    font-weight: 900;
    text-transform: uppercase;
}
.wc-pao-addon
{
    font-size: 18px;
}
.wc-pao-addon p
{
    font-size: 14px;
}
.wc-pao-addon select
{
    font-size: 100%;
}
.product-addon-totals ul
{
    padding-left: 0;
}
.product-addon-totals .wc-pao-col2
{
    padding-left: 10px;
}
.woocommerce-error, .woocommerce-info, .woocommerce-message {
    width: 100% !important;
    font-size: 14px;
}
.woocommerce-error *, .woocommerce-info *, .woocommerce-message *{
    font-size: 100%;
}
.woocommerce-message
{
    padding-right: 190px !important;
}
.woocommerce-message a.button
{
    position: absolute !important;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
.woocommerce-message, .woocommerce-info {
    font-size: 1.8em;
}
.woocommerce-terms-and-conditions-link {
    font-weight: 600;
}
.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;
}
.woocommerce input[type="checkbox"].wc-pao-addon-checkbox {
    display: inline-block;
    margin-top: 7px;
    margin-right: 4px;
}
html .woocommerce #respond input#submit.disabled, html .woocommerce #respond input#submit:disabled, html .woocommerce #respond input#submit:disabled[disabled], html .woocommerce a.button.disabled, html .woocommerce a.button:disabled, html .woocommerce a.button:disabled[disabled], html .woocommerce button.button.disabled, html .woocommerce button.button:disabled, html .woocommerce button.button:disabled[disabled], html .woocommerce input.button.disabled, html .woocommerce input.button:disabled, html .woocommerce input.button:disabled[disabled] {
    display: none;
}
html .woocommerce table.shop_table tbody th, html .woocommerce table.shop_table tfoot td, html .woocommerce table.shop_table tfoot th, html .woocommerce table.shop_table td, html .woocommerce table.shop_table {
    border: none;
    border-radius: 0;
}
/* checkout forms reset */
.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: #444343;
}
html .woocommerce td input, html .woocommerce th input, html .woocommerce td select, html .woocommerce th select, html .woocommerce td textarea, html .woocommerce th textarea {
    font-size: 100%;
}
.wrapper.woocommerce-cart-wrapper {
    padding: 50px 0 80px 0;
}
html .woocommerce .woocommerce-cart-form table.shop_table th {
    background: transparent;
    color: #008BD8;
    padding: 10px;
    font-weight: normal;
    font-size: 2.4em;
    border: solid 2px #fff;
}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce input[type=checkbox]  {
    background-color: #fff;
    border: solid 1px #000;
}
.woocommerce .woocommerce-shipping-calculator button.button {
    border: solid 1px #000;
    color: #000;
    background-color: #fff;
}
.woocommerce-shipping-fields h3 *
{
    vertical-align: middle;
}
html .woocommerce .cart_totals table.shop_table th {
    text-align: right;
    font-weight: normal;
}
html .woocommerce #respond input#submit.alt, html .woocommerce a.button.alt, html .woocommerce button.button.alt, html .woocommerce input.button.alt {
    font-size: 16px;
    padding: 0 20px;
    height: 50px;
    line-height: 50px;
    position: relative;
    background-color: #46A2DB;
    min-width: 295px;
    max-width: 100%;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
}
#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: #24586F;
}
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: #24586F;
}
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;
}
html .woocommerce .select2-container--default .select2-selection--single
{
    height: 48px;
    border-radius: 0;
    border-color: #000;
}
html .woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered
{
    line-height: 48px;
    font-size: 1.6em;
    font-weight: 400;
    color: #000 !important;
}
html .woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow
{
    top: 11px;
}
html .select2-container--default .select2-results>.select2-results__options
{
    width: 100%;
}
html .woocommerce table.shop_table th, html .woocommerce table.shop_table tbody th, html .woocommerce table.shop_table tfoot td, html .woocommerce table.shop_table tfoot th
{
    font-weight: 600;
    padding-top: 5px;
    padding-bottom: 0;
}
html .woocommerce form .form-row .input-checkbox
{
    display: inline-block;
}
html #add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment
{
    border-radius: 0;
}



/* custom google maps */
.google-map
{
    min-height: 450px;
    background: #bcccd3;
}
.google-map button
{
    min-width: 0;
}
.gm-style .gm-style-iw-c
{
    border-radius: 0;
    max-width: 300px !important;
    max-height: 300px !important;
}
.gm-style-iw-d
{
    max-height: 280px !important;
}
.map-pin-desc
{
    color: #24586F;
    font-size: 12px;
    line-height: 17px;
    font-family: "Open Sans", sans-serif;
}
.map-pin-desc .map-pin-title
{
    font-weight: 600;
    padding-bottom: 20px;
    font-family: "Open Sans", sans-serif;
}
.map-pin-desc .map-pin-desc
{
   padding-bottom: 20px;
}
.gm-style .gm-style-iw-c img
{
    margin-bottom: 20px;
}
/* end custom google maps */

/* header additions */
.cart-nav a
{
    position: relative;
    padding-right: 24px;
    padding-left: 20px;
}
.basket-icon
{
    width: 18px;
    height: 22px;
    background: url(assets/images/elements/basket-icon@2x.png) no-repeat center center;
    background-size: contain;
    right: 0;
    top: 50%;
    margin-top: -11px;
    text-align:center;
    display: block;
    position: absolute;
    right: 0;
}
.basket-icon .basket-count
{
    font-family: Arial;
    font-weight: 600;
    font-size: 12px;
    color: #24586F;
    position: absolute;
    top: 3px;
    left: 50%;
    transform: translateX(-50%);
}
.search-icon
{
    width: 18px;
    height: 18px;
    display: block;
    background: url(assets/images/elements/search-icon@2x.png) no-repeat center center;
    background-size: contain;
    right: 0;
    top: 50%;
    margin-top: -9px;
    position: absolute;
    right: 0;
}

/* product archvie page */
.trip-map-wrapper
{
    padding-top: 20px;
}
.products-wrapper
{
    background: #e8eef0;
    padding-top: 50px;
    padding-bottom: 70px;
}
.products-wrapper .product
{
    padding-top: 50px;
    margin-top: 50px;
}
.products-wrapper .product::before
{
    display: block;
    width: 100%;
    height: 1px;
    top: 0;
    background: #24586F;
    content: "";
    position: absolute;
}
.products-wrapper .product:first-child
{
    margin-top: 0;
    padding-top: 0;
}
.products-wrapper .product:first-child::before
{
    display: none;
}


/* product feature */
.product .thumb
{
    background-size: cover;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    flex-basis: calc(50% - 50px);
}
.product .feature__title h3
{
    font-size: 4em;
    color: #24586F;
    font-weight: 600;
}
.product .feature__title .top-title
{
    margin-bottom: 0;
    font-size: 3em;
}
.product .feature__title h3.top-title::after
{
    content: " -";
}
/*.product .feature__title h3 a
{
    color: #24586F;
}*/
.product .feature__description p
{
    font-size: 1.6em;
    color: #24586F;
    line-height: 26px;
}
.product .feature__description a
{
    font-weight: 600;
    text-decoration: underline;
    text-transform: uppercase;
    color: #24586F;
}
.product select
{
    width: 330px;
    max-width: 100%;
    margin-bottom: 10px;
}
.product .archive-add-to-cart
{
    padding-top: 5px;
    padding-bottom: 5px;
}
.product .add-to-cart-form
{
    margin: 0;
}
.product .feature__book_button
{
    padding-top: 30px;
}
.product .span-1-2.desc
{
    padding-bottom: 0;
    padding-left: 20px;
    flex-grow: 1;
}
/* end of product feature */


/* product page */
.post-type-product .trip-map-wrapper
{
    padding-top: 10px;
}
.product-add-to-cart-wrapper
{
    background: #24586F;
    cursor: pointer;
}
.product-add-to-cart-wrapper .row
{
    padding: 0;
    max-width: 860px;
}
.product-add-to-cart-wrapper .col
{
    flex-grow: 1;
}
.product-add-to-cart-wrapper .feature__book_button
{
    max-width: 210px;
}
.product-add-to-cart-wrapper .feature__book_button input
{
    max-width: 190px;
    min-width: 0;
}
.product-add-to-cart-wrapper h3
{
    margin: 0;
    color: #fff;
    font-weight: 600;
    line-height: 50px;
}
.product-add-to-cart-wrapper form
{
    margin: 0;
}
.product-add-to-cart-wrapper input, .product-add-to-cart-wrapper select
{
    margin: 0;
    width: 100%;
}
.product-add-to-cart-wrapper input[type="submit"]
{
    text-align:left;
}

.product-add-to-cart-wrapper-anchor.scrolled
{
    height: 91px;
}
.product-add-to-cart-wrapper.scrolled
{
    position:fixed;
    z-index: 2;
    top: 50px;
}
.logged-in .product-add-to-cart-wrapper.scrolled
{
    top: 80px;
}

.product-cat-tag h4
{
    font-size: 3em;
    line-height: 50px;
    text-transform: uppercase;
}

.product-bottom-content-wrapper
{
    padding-bottom: 120px;
}
.product-bottom-content-title h3
{
    margin-top: 40px;
    margin-bottom: 10px;
}
.product-bottom-content-wrapper img
{
    margin-bottom: 30px;
}
.product-bottom-content-wrapper p
{
    color: #585A59;
    font-size: 1.4em;
    font-family: "Open Sans", sans-serif;
}
.product-bottom-content-image
{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    min-height: 500px;
}


/* cart styles */
.cart_item .span-3-4.flex
{
    flex-grow: 1;
}
.cart_item
{
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    border-top: 1px solid #24586F;
    margin-top: 25px;
    margin-bottom: 5px;
    padding-top: 30px;
    padding-bottom: 20px;
}
tr.cart_item
{
    display: table-row;
}
.cart_item td
{
    flex-basis: auto;
}
.cart_item:last-child
{
    border-bottom: 1px solid #24586F;
}
.cart_item .product-image
{
    max-width: 190px;
}
.cart_item .product-image img
{
    /*object-fit: cover;
    height: 100%;*/
    width: 100%;
}
.cart_item .trip-type h3
{
    margin: 0;
    font-size: 3em;
    color: #46A2DB;
    text-transform: uppercase;
}
.cart_item .trip-title h2
{
    margin: 0;
    font-size: 4em;
    font-weight: 600;
    text-transform: uppercase;
}
.cart_item .trip-title h2 a
{
    color: #24586F;
}
.cart_item .quantity h3
{
    font-size: 1.6em;
    color: #24586F;
    font-weight: 600;
    line-height: 50px;
    margin-top: 0;
}
.cart_item .product-remove
{
    position: absolute;
    right: 10px;
    top: 30px;
}
.wrapper.cart-empty
{
    padding-top: 40px;
    padding-bottom: 40px;
}
.cart_item .product-subtotal h3
{
    text-align: right;
    font-size: 4em;
    color: #24586F;
    font-weight: 600;
    line-height: 50px;
    margin: 0;
}
.cart-main .hero-title-wrapper.wrapper
{
    margin-bottom: 0;
    padding-top: 30px;
    padding-bottom: 10px;
}
.cart-main .hero-title-wrapper.wrapper h1
{
    text-transform: uppercase;
}
.woocommerce-cart-wrapper
{
    background: #e8eef0;
}
.woocommerce .cart_totals th, .woocommerce .cart_totals td
{
    font-size: 100%;
}
.cart_totals .cart-subtotal td
{
    text-align: right;
}
.woocommerce table.shop_table_responsive tbody th, .woocommerce-page table.shop_table_responsive tbody th
{
    display: none;
}
.woocommerce .cart_totals table.shop_table_responsive tr td::before, .woocommerce-page .cart_totals table.shop_table_responsive tr td::before
{
    content: attr(data-title) " ";
    font-weight: 600;
    float: none;
    color: #46A2DB;
    font-size: 3em;
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
}
.cart_totals .woocommerce-Price-amount.amount
{
    font-size: 3em;
    color: #24586F;
    font-weight: 600;
    font-family: "Montserrat", sans-serif;
}
.cart-collaterals
{
    padding-top: 30px;
    background: #fff;
}
html .woocommerce .cart-collaterals.wrapper table.shop_table
{
    margin-bottom: 10px;
}
.wrapper.cart-messages
{
    background: #fff;
    padding-top: 10px;
    padding-bottom: 40px;
}
.cart-messages p
{
    font-size: 1.4em;
    color: #24586F;
    line-height: 27px;
    font-family: "Open Sans", sans-serif;
}
.woocommerce ul#shipping_method, ul.wc_payment_methods
{
    font-size: 1.4em;
}
html .woocommerce input.button[type=submit][name=update_cart]
{
    font-size: 16px;
    padding: 0 20px;
    height: 50px;
    line-height: 50px;
    position: relative;
    background-color: #46A2DB;
    min-width: 295px;
    max-width: 100%;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    width: auto;
    color: #fff;
}
html .woocommerce input.button[type=submit][name=update_cart]:hover
{
    background-color: #24586F;
}
html .woocommerce a.remove
{
    font-size: 35px;
    font-weight: 400;
}

/* woocommerce bookings additions */
.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;
}

dl.variation, dl.variation dt
{
    font-size: 16px;
}
dl.variation p
{
    font-size: inherit;
}
dl.variation dd
{
    font-size: inherit;
    margin:0;
}
.variation-BookingType
{
    display: none !important;
}

dl.variation dt
{
    clear:left;
    float: left;
    width: auto;
}
dl.variation dd
{
    float:left;
    width: auto;
    padding-left: 10px;
}
#additional_wooccm5_field .optional
{
    display: none;
}

html .product-name > a
{
    font-weight: 600;
    font-size: 22px;
}
html .product-name .product-quantity
{
    display: none;
}
html .wc-item-meta
{
    margin-bottom: 0;
}
html .wc-booking-summary
{
    margin: 0;
    padding: 0;
    border: 0;
    color: #24586F;
}
.wc-booking-summary-list
{
    font-size: 100%;
    display:block;
    padding-left: 0;
}
.wc-item-meta
{
    padding-left: 0;
    font-size: 100%;
    display:block;
}
.wc-item-meta p, .wc-item-meta strong
{
    width: auto;
    float:left;
    font-size: inherit;
    margin: 0;
}
.wc-item-meta li::after
{
    content: "";
    clear: both;
    display: block;
}
.woocommerce table.shop_table.woocommerce-table.woocommerce-table--order-details
{
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
}
.wc-booking-summary-list li:nth-child(2)
{
    display: none;
}
.woocommerce-customer-details address p
{
    font-size: 100%;
}
/* end woocommerce bookings additions */



/* wc bookings calendar tweaks */
.wc-bookings-date-picker .ui-datepicker td.fully_booked span, .wc-bookings-date-picker .ui-datepicker td.fully_booked a
{
    background-color: #c0392b !important;
    color: #fff !important;
}
.wc-bookings-date-picker .ui-datepicker td.not_bookable:not(.ui-datepicker-other-month) span, .wc-bookings-date-picker .ui-datepicker td.not_bookable:not(.ui-datepicker-other-month) a
{
    background-color: #c0392b !important;
    color: #fff !important;
}
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled
{
    opacity: 1 !important;
}
.wc-bookings-date-picker .ui-widget-content
{
    border: 1px solid #e6e6e6;
    box-shadow: none;
    border-radius: 0;
}
.wc-bookings-date-picker .ui-datepicker-header
{
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #24586F !important;
}
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev, .wc-bookings-date-picker .ui-datepicker .ui-datepicker-next
{
    background: #24586F !important;
}
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary
{
    opacity: 1 !important;
}
.wc-stripe-card-icons-container, .wc-stripe-paymentRequest-icons-container
{
    float: none !important;
    clear: both;
    display: block !important;
    padding: 5px 0 0 0 !important;
}
.wc_payment_methods.payment_methods.methods
{
    padding-left: 10px;
    min-width: 360px;
    max-width: 100%;
}
.wc_payment_methods img
{
    max-width: 43px;
    max-height: 26px;
    float: none;
    display: inline;
}
.wc_payment_method
{
    list-style: none;
}
.wc_payment_method p, .wc_payment_method label
{
    font-size: 100% !important;
}
ul.wc-saved-payment-methods
{
    margin-bottom: 20px;
    margin-top: 0;
}
.wc_payment_method input
{
    vertical-align: middle;
}

.woocommerce-cart-wrapper > .woocommerce > .woocommerce-info
{
    max-width: 980px;
    margin: 0 auto;
    transform: translateY(20px);
}

.group-booking-4-persons-notice
{
    display: block;
}
dl.variation
{
    margin: 0;
}
.woocommerce td.product-name dl.variation dd p
{
    line-height: inherit;
}


/* end wc bookings calendar tweaks */

/* client adjustments 2021-09-28 */
.frontpage .caption-wrapper .row {
    justify-content: flex-end;
    margin-top: -80px;
}

/* client adjustments 2020-04-09 */
.frontpage .caption-wrapper .row
{
    /* justify-content: center; */
}

.front-main-cont.content p
{
    margin-bottom: .4em;
    font-size: 2.4em;
}

.content-slide-description p
{
    text-shadow: 0 0 3px rgba(0,0,0,.7);
}

.wrapper.featured-section-title
{
    padding-top: 0;
}

.post-type-product h1.hero-title
{
    font-weight: 600;
}
.post-type-product h1.hero-title strong
{
    font-weight: 900;
    color: inherit;
}
.caption-wrapper .row .col {
    transform: translateY(40px);
}
.woocommerce > .woocommerce-notices-wrapper
{
    max-width: 1010px;
    margin: 0 auto;
    padding-top: 20px;
}
html .woocommerce ul.order_details
{
    padding: 0;
}

html .woocommerce form .form-row textarea {
    width: 100%;
    min-width: 100%;
    min-height: 140px;
    max-height: 300px;
    max-width: 100%;
}

.group-booking-4-persons-notice
{
    font-size: 14px;
}
dl.variation > dt
{
    font-weight: 600;
}
.dl.variation, dl.variation dt, dl.variation p
{
    font-size: 14px;
    color: #444343;
    font-family: 'Montserrat', sans-serif;
}
.woocommerce td.product-name .wc-item-meta, .woocommerce td.product-name dl.variation
{
    font-size: 100% !important;
}

html .woocommerce-store-notice, html p.demo_store, html .admin-bar p.demo_store
{
    font-size: 1.6em;
    background: #24586F;
    top: 103px;
    padding-left: 20px;
    padding-right: 20px;
    z-index: 10;
}
html .no-header-images .woocommerce-store-notice, html .no-header-images p.demo_store
{
    top: -10px;
}

.cdsROW .logo img
{
    margin-bottom: 0 !important;
}
.cdsROW.wide
{
    max-width: 456px !important;
    width: 100% !important;
    margin: 0 auto !important;
}
.cdsROW.wide .cdsROWContainer .cdsComponent
{
    max-width: 100% !important;
}
.cdsROW .cdsRating
{
    padding-left: 10px !important;
}

.coupon
{
    display: flex;
    width: 100%;
    max-width: 500px;
}
.coupon label
{
    display: none;
}
.coupon input[type=text]
{
    background-color: #fff;
    border: solid 1px #000;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    outline: 0;
    line-height: normal;
}
html .woocommerce .coupon input[type=submit][name=apply_coupon]
{
    color: #fff;
    font-size: 16px;
    padding: 0 20px;
    height: 50px;
    line-height: 50px;
    position: relative;
    background-color: #46A2DB;
    /*min-width: 295px;*/
    max-width: 100%;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
}
html .woocommerce .coupon input[type=submit][name=apply_coupon]:hover
{
    background-color: #24586F;
}

@media all and (max-width: 385px)
{
    .cdsROW.wide .cdsROWContainer, .cdsROW.wide .cdsROWContainer .cdsComponent, .cdsROW.wide
    {
        display: block !important;
        height: auto !important;
    }
    .cdsROW.wide .cdsLocName, .cdsROW .cdsRating
    {
        padding: 10px !important;
    }


}

@media all and (max-width: 980px)
{
    html .woocommerce-store-notice, html p.demo_store
    {
        top: 60px;
        font-size: 1.3em;
    }
    html .no-header-images .woocommerce-store-notice, html .no-header-images p.demo_store
    {
        top: 60px;
    }

    .page-template-template-contact main
    {
        padding-top: 20px;
    }
    .contact-form-content-wrapper p
    {
        font-size: 2em;
        line-height: 25px;
    }
    .products-wrapper
    {
        padding-top: 0;
    }
    .woocommerce-message, .woocommerce-info
    {
        font-size: 1.4em;
    }
    /*.caption-wrapper .row .col { transform: none; }*/
}
@media all and (max-width: 800px) {
    .main-con h1, .main-con h3, .main-con h2, .main-con h4, .main-con h5, .main-con h6
    {
        margin-top: 20px;
    }
}
@media all and (max-width: 768px)
{
    .woocommerce .col2-set .col-2
    {
        padding-top: 20px;
    }
}
@media all and (max-width:600px)
{
    .woocommerce-message
    {
        padding-right: 20px !important;
        padding-bottom: 80px !important;
    }
    .woocommerce-message a.button
    {
        bottom: 20px;
        top: auto;
        right: 50%;
        transform: translateX(50%);
    }
    .product-add-to-cart-wrapper .feature__book_button
    {
        max-width: 140px;
    }
    .product-add-to-cart-wrapper h3
    {
        font-size: 1.6em;
        line-height: 40px !important;
    }
    .product-add-to-cart-wrapper input[type="submit"]
    {
        font-size: 1.4em;
        padding: 5px 10px;
        height: 40px;
    }
    .product-add-to-cart-wrapper .col
    {
        flex-basis: 50%;
    }
}
@media all and (max-width:420px)
{
    .product-add-to-cart-wrapper .col.span-1-2
    {
        flex-basis: 100%;
        padding-top: 0;
        padding-bottom: 0;
    }
}
/* end client adjustments 2020-04-09 */


/* RESPONSIVE RULES */
@media all and (max-width: 1400px) {
    .h-slider-nav.h-slider-prev {
        left: 10px;
    }

    .h-slider-nav.h-slider-next {
        right: 10px;
    }
}

@media all and (max-width: 1075px) {
    .headshot_image-col {
        padding-right: 10px;
    }

    .headshot_image-col .headshot-image {
        margin: 0 auto;
        position: relative;
        right: auto;
        top: auto;
    }

    .sidebar.float-right-sidebar {
        right: -50px;
    }

    footer .widget_content .col.span-1-1 p:first-child
    {
        font-size: 20px;
    }
}

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

@media all and (max-width: 980px) {
    .product-add-to-cart-wrapper.scrolled
    {
        top: 0;
    }
    .logged-in .product-add-to-cart-wrapper.scrolled
    {
        top: 30px;
    }
    .featured-section-title h2
    {
        font-size: 3.5em;
    }

    .product .thumb
    {
        flex-basis: 40%;
    }
    .product .feature__title h3
    {
        font-size: 3em;
    }
    .sidebar.sidebar-footer
    {
        flex-wrap: wrap;
    }
    .sidebar.sidebar-footer li.widget
    {
        flex-basis: 100%;
    }
    footer h2
    {
        max-width: 100%;
        margin-bottom: 20px;
        font-size: 5em;
    }
    footer h2 br
    {
        display: none;
    }


    .product-prices .col
    {
        flex-basis: 50%;
    }
    .cart_item .trip-type h3
    {
        font-size: 2em;
    }
    .cart_item .trip-title h2, .cart_item .product-subtotal h3
    {
        font-size: 3em;
    }

    main .span-1-3
    {
        flex-basis: 33.3333%;
    }


    .frontpage .fixed-caption .caption-wrapper {
        position: static;
        height: 100% !important;
        max-height: 100%;
        top: auto;
        min-height: 0;
    }

    footer #footer .sidebar-footer .logo-wrapper {
        justify-content: center;
    }

    /* end frontpage features slider */
    .frontpage-bottom-content .col:not(:first-child) {
        max-width: 100%;
    }
    .col.span-1-3.product-image {
        flex-basis: 33.3333%;
    }

    .row.very-wide.footer-seo-content {
        flex-wrap: wrap;
    }

    .header-images-disabled main, .no-header-images main {
        margin-top: 5px; /* allow for drop shadow on header */
    }

    #footer-top .footer-message, #footer-top .col.span-1-2.widget_content_col.widget-content-col-1, #footer-top .col.span-1-2.widget_content_col.widget-content-col-1, #footer .col.span-1-2.widget_content_col.widget-content-col-1, #footer .col.span-1-2.widget_content_col.widget-content-col-0, .contact-form-content-wrapper.wrapper .col.span-1-2 {
        flex-basis: 100%;
        max-width: 100%;
    }

    #footer-top .col.span-1-2.widget_content_col.widget-content-col-1 {
        padding-top: 20px;
    }

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

    .ld_popover input[type="submit"] {
        margin-left: 0;
        margin-top: 20px !important;
    }

    .ld_popover .search.searchform p {
        display: block;
    }

    .sidebar.float-right-sidebar {
        display: none;
    }

    .hero-title-wrapper .col, .row.hero-message.top-con .col {
        max-width: 100%;
    }

    .fancybox-slider-wrap {
        bottom: 50px;
    }

    .ld_fancybox_close {
        bottom: 35px;
    }

    .frontpage .ld-fadey-slider>li {
        background-attachment: unset;
        /* disable fixed background for mobile */
    }

    footer .col.span-1-2.widget_content_col.widget-content-col-1.contact-footer-form {
        padding-left: 10px;
    }

    .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 {
        flex-grow: 1;
    }

    main .post-controls .span-1-3 p {
        padding: 0;
    }
    .wrap.span-1-3.home-link {
        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 {
        flex-basis: 16.6666%;
    }
}

@media all and (max-width: 850px) {
    .front-main-cont .col.content, .frontpage .hero-message.top-con.col.content {
        flex-basis: 100%;
    }

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

    .feature__description p {
        font-size: 1.2em;
    }

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

    .right-footer div>p {
        font-size: 2em;
    }

    blockquote {
        font-size: 22px;
    }
}

@media all and (max-width: 800px) {
    html .woocommerce td, html .woocommerce th
    {
        font-size: 1.4em;
    }

    .wrapper.featured-section-title
    {
        padding-top: 0;
        padding-bottom: 0;
    }
    .wrapper.featured-section-title h2
    {
        margin: 0;
    }
    body:not(.frontpage) .featured-section
    {
        padding-top: 0;
    }

    body.frontpage .header-slider .ld-fadey-slider, .header-slider .ld-fadey-slider
    {
        max-height: 50vh;
    }
    .ld-fadey-slider
    {
        min-height: 200px;
    }
    .front-main-cont p
    {
        font-size: 1.8em;
        line-height: 29px;
    }
    .content-slide-description p
    {
        font-size: 1.4em;
        line-height: 22px;
    }
    .layout_slider .content-slide-desc-inner
    {
        transform: none;
    }
    .content-slide-link a
    {
        margin-top: 0;
    }

    .front-page-menu-btm h2
    {
        font-size: 5em;
    }

    /* end footer full width features slider */
    .frontpage .top-con h1 {
        font-size: 3.2em;
    }

    .fancybox-caption {
        padding: 30px 0;
    }

    .wrapper.foot-cont .h-slider-inner li .row {
        flex-wrap: wrap;
    }

    .wrapper.foot-cont .h-slider-inner li .col {
        flex-basis: 100%;
        order: 2;
        min-height: 360px;
    }

    .foot-cont-slider-background {
        min-height: 300px;
        flex-basis: 100%;
        order: 1;
    }

    .col.span-1-3.product-image {
        flex-basis: 50%;
    }

    /* availability table */
    .table-head {
        display: none;
    }

    .table-row .table-cell {
        border: none;
    }

    .table-row .table-cell:first-child, .table-row .table-head:first-child {
        padding-left: 15px;
    }

    .table-row .table-cell:last-child, .table-row .table-head:last-child {
        padding-right: 15px;
        text-align: left;
    }

    .table-row:not(.table-header) {
        display: flex;
        flex-wrap: wrap;
        border-bottom: 1px solid #444343;
        margin-bottom: 20px;
    }

    .table-cell {
        flex-basis: 100%;
    }

    .table-cell select {
        display: inline-block;
        width: auto;
    }

    .table-cell::before {
        content: attr(data-header);
        font-weight: 600;
        width: 50%;
        display: inline-block;
        color: #008BD8;
    }

    .table-cell.space-cell select {
        width: 50%;
    }

    .table-cell.space-cell::after {
        right: 30px;
    }

    .table-cell.no-before::before {
        display: none;
    }

    .table-cell input[type=submit] {
        float: none;
        display: inline-block;
    }

    .span-1-6 {
        -webkit-flex-basis: 33.3333%;
        -moz-flex-basis: 33.3333%;
        -ms-flex-basis: 33.3333%;
        -o-flex-basis: 33.3333%;
        flex-basis: 33.3333%;
    }

    .footer-gallery-img.col.span-1-6:nth-child(n+10) {
        display: none;
    }

    .fp-quotes .desc h2 {
        font-size: 1.6em;
    }

    .fp-quotes .thumb img {
        width: 100%;
        object-fit: cover;
        min-height: 400px;
    }

    .copy-text-btm p {
        text-align: left !important;
    }

    #footer-bottom {
        padding-top: 0;
    }
}

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

    .content-slide-title h3
    {
        font-size: 1.4em;
    }
    .content-slide-title p
    {
        font-size: 1.2em;
    }
    .content-slide-link a
    {
        font-size: 1.2em;
        padding: 10px;
    }

    .product-add-to-cart-wrapper.scrolled
    {
        position: static;
    }
    .product-add-to-cart-wrapper-anchor.scrolled
    {
        height: 0;
    }

    .featured-section-title h2
    {
        font-size: 2.4em;
    }

    .product .thumb
    {
        flex-basis: 100%;
        margin-left: 10px;
        margin-right: 10px;
        height: 240px;
        margin-bottom: 20px;
    }
    .product .span-1-2.desc
    {
        padding-left: 10px;
    }
    .product .feature__description p
    {
        font-size: 1.4em;
    }


    .feature .desc
    {
        align-items: flex-start;
        min-height: 135px;
    }
    .frontpage-bottom-content .col:not(:first-child) {
        flex-basis: 100%;
    }
    .frontpage-bottom-banner h2 {
        font-size: 4em;
    }

    /* dropdown for category nav */
    .row.post-filters-row .col.span-1-2 {
        flex-basis: 100%;
    }

    .post-filters {
        justify-content: flex-start;
    }

    /* end dropdown for category nav */
    .frontpage .custom_content_wrapper.bottom-pad-flair .row .col {
        max-width: 100%;
    }

    footer #footer .sidebar-footer .widget.widget_content.right-footer, footer #footer .sidebar-footer .widget.widget_content.left-footer {
        flex-basis: 100%;
    }

    footer #footer .sidebar-footer .widget.widget_content.right-footer .col {
        padding-top: 20px;
    }

    footer #footer .sidebar-footer .widget.widget_content.right-footer .col * {
        text-align: left !important;
    }

    .frontpage .custom_content_container .feature img {
        object-fit: cover;
    }

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

    .wrapper.foot-cont .row.clients_partners .col.span-1-3 {
        flex-basis: 100%;
    }

    .wrapper.foot-cont .row.clients_partners .wrap.span-2-3 {
        flex-basis: 100%;
    }

    .frontpage .custom_content_wrapper.wrapper:first-child .span-1-2 {
        flex-basis: 100%;
    }

    .wrapper.foot-cont .h-slider-inner li .col {
        min-height: 430px;
    }

    .fixed-bg-full-width p {
        font-size: 1.6em;
    }

    .wrapper.top-con-wrap .row.top-con {
        padding-bottom: 0;
        padding-top: 20px;
    }
    .wrapper.top-con-wrap .row.top-con h1
    {
        margin-bottom: 0;
    }

    .left-footer img {
        max-width: 300px;
    }

    .right-footer div>p {
        font-size: 1.8em;
    }

    blockquote {
        font-size: 18px;
    }

    .post-type-page.no-page-template .page-footer-features {
        padding-top: 20px;
    }

    .main-con .gallery {
        padding-bottom: 40px;
    }

    .main-con-no-custom {
        padding-bottom: 40px;
    }

    .no-page-template .main-con {
        padding-top: 0;
    }

    .caption-title p {
        font-size: 2em;
        line-height: 1.2em;
    }

    .frontpage .wrapper.top-con-wrap .row.top-con .hero-title {
        font-size: 4.5em;
    }

    .frontpage .custom_content_wrapper.frontpage-bottom-content {
        padding-bottom: 90px;
    }

    .custom_content_wrapper.wrapper.layout_1_column.blog-posts-fea-title h3 {
        font-size: 3.2em;
    }

    .frontpage-bottom-content p {
        font-size: 1.4em;
    }
    footer h2 {
    max-width: 100%;
    margin-bottom: 20px;
    font-size: 4em;
    line-height: 1;
}
}

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

    .caption-title p
    {
        font-size: 1.4em;
    }

    .contact-form-content-wrapper p {
        font-size: 1.6em;
        line-height: 25px;
    }
    .product-bottom-content-image
    {
        min-height: 300px;
    }
    .front-page-menu-btm h2
    {
        font-size: 4em;
    }
    .front-page-menu-btm h3
    {
        font-size: 2em;
    }
    footer .widget_content:not(:first-child) .col.span-1-1
    {
        margin-top: 20px;
    }
    .footer-content-normal .col {
        flex-basis: 100%;
    }

    /* intermediate breakpoint between tablet in portrait and phone in portrait */
    /* change font sizes down */
    .hero-title-wrapper.wrapper {
        padding-top: 20px;
    }

    .bottom-splash-text h3 {
        font-size: 3em;
    }

    .row.hero-message.top-con p {
        font-size: 1.6em;
    }

    #footer-top .footer-contact h3, #footer-top .footer-contact p {
        text-align: left !important;
    }

    .desc .feature__title h3 {
        font-size: 1.8em !important;
    }

    .hero-title {
        font-size: 3em;
    }

    .caption-wrapper .caption.col {
        padding: 10px;
        margin-bottom: 5px !important;
    }

    .caption-title h2, .caption-title h3 {
        font-size: 3em;
        line-height: 1.2em;
    }
    .ld-fadey-slider-tabs {
        display: inline-block;
    }

    h1, .front-main-cont h1 {
        font-size: 3em;
        line-height: inherit;
    }

    .front-main-cont p, {
        font-size: 1.8em;
    }

    .double-large-front-page-fea .feature .desc p {
        font-size: 1.6em;
    }

    .double-large-front-page-fea .feature .desc h3 {
        font-size: 2.6em;
    }

    .frontpage .custom_content_wrapper.front-main-cont {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .caption-text, .caption-link {
        font-size: 1.8em;
    }

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

    body.frontpage .row.fp-top-con {
        padding: 100px 10px 10px 10px;
        margin-bottom: 0;
    }

    body.frontpage .hero-message h1, body.frontpage .hero-message h2, body.frontpage .hero-message h3, body.frontpage .hero-message h4, body.frontpage .hero-message h5, body.frontpage .hero-message h6 {
        font-size: 3em;
    }

    .row.wide.front-main-cont {
        padding-top: 10px;
        padding-bottom: 20px;
    }

    .sidebar-footer li.widget {
        flex-basis: 100%;
    }

    .sidebar-footer {
        flex-wrap: wrap;
    }

    .product-prices .col
    {
        flex-basis: 100%;
        text-align:right;
    }
    .cart_item .trip-type h3
    {
        font-size: 1.8em;
    }
    .cart_item .trip-title h2, .cart_item .product-subtotal h3
    {
        font-size: 2.7em;
    }
}

@media all and (max-width: 500px) {
    div.cart_item
    {
        flex-wrap: wrap;
    }
    div.cart_item .product-image
    {
        max-width: 100%;
        flex-basis: 100%;
    }
    div.cart_item > .span-3-4
    {
        flex-basis: 100%;
    }
    .cart_item .product-remove
    {
        top: 40px;
    }
    .span-1-6 {
        flex-basis: 50%;
    }
    footer .widget_content .col.span-1-1 p:first-child
    {
        font-size: 15px;
    }
    .social_links ul.social
    {
        text-align: left;
    }
}
/* END OF RESPONSIVE RULES */
