/* ---------------------------------- */
/* ------ MAIN BODY OF WEBSITE ------ */
/* ---------------------------------- */
html, body, form, fieldset, p, div, h1, h2, h3, h4, h5, h6 {
  -webkit-text-size-adjust: none;
  /* This stops the iPhone from automatically changing the size of the text when you flip the phone */
}

body {
 font: 15px/1.6em var(--bodyFont);
}

.outerWrap.menu-open {
  cursor: pointer;
}

.desktop-hide,
a.desktop-hide {
  display: block !important;
}

.mobile-hide,
a.mobile-hide,
#banner #viewCart {
  display: none !important;
}

/* ---------------------------------- */
/* ------------ SIDEBAR ------------- */
/* ---------------------------------- */
.sidebar,
#outerSidebar {
  display: none;
}

/* ---------------------------------- */
/* -------- VIEW CART BUTTON -------- */
/* ---------------------------------- */
#viewCart {
  position: static;
  border: 0px solid transparent;
}
#viewCart .itemCount, #viewCart .total {
  display: inline-block;
}

/* ---------------------------------- */
/* ----------- NAVIGATION ----------- */
/* ---------------------------------- */

#navToggleWrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2000;
  transition: 0.4s;
  max-width: calc(100% - 10px);
  left: 5px;
  top: 5px;
  border-radius: .2em;
  backdrop-filter: blur(10px);
}


.mobileScroll.scrollStart #navToggleWrap {
  transform: translatey(calc(0px - 100% - 10px));
}



#menu {
  display: none;
}

#navToggleWrap {
  width: 100%;
  background: rgba(var(--opacityColor),.5);
  color: var(--white);
  display: -ms-flexbox;
  display: flex;
}
#navToggleWrap > #navToggle, #navToggleWrap > a {
  -ms-flex-positive: 1;
      flex-grow: 1;
  padding: 10px 0;
  line-height: 1em;
  position: static;
  cursor: pointer;
  text-decoration: none;
  background: none;
  color: var(--white);
}
#navToggleWrap > #navToggle:after, #navToggleWrap > a:after {
  text-align: center;
}
#navToggleWrap > #navToggle:before, #navToggleWrap > a:before {
  font-family: 'FontAwesome';
  display: block;
  text-align: center;
  margin: 2px 0;
}
#navToggleWrap > #navToggle:after, #navToggleWrap > #navToggle span, #navToggleWrap > a:after, #navToggleWrap > a span {
  font-size: .7em;
  text-transform: uppercase;
  margin: 8px 0 2px;
  display: block;
}
#navToggleWrap #navToggle:before {
  content: "\f0c9";
}

#navToggleWrap > a:not(.toContactPage, .address, .phone) {
  display: none;
}

/* #navToggleWrap #navToggle:after {
  content: "Menu";
} */
#navToggleWrap .blank:before {
  content: "\f067";
}
#navToggleWrap a[href="#"], 
#navToggleWrap a[href*="$"],
#navToggleWrap .enquire-trigger {
  display: none;
}
/* #navToggleWrap .address:after {
  content: "address";
}
#navToggleWrap .facebook:after {
  content: "facebook";
}
#navToggleWrap .twitter:after {
  content: "twitter";
}
#navToggleWrap .instagram:after {
  content: "instagram";
}
#navToggleWrap .googlePlus:after {
  content: "googlePlus";
}
#navToggleWrap .pinterest:after {
  content: "pinterest";
}
#navToggleWrap .linkedIn:after {
  content: "linkedIn";
}
#navToggleWrap .blank:after {
  content: "blank";
}
#navToggleWrap .youTube:after {
  content: "youTube";
}
#navToggleWrap .email:after {
  content: "enquire";
}
#navToggleWrap .phone:after {
  content: "phone";
} */

#mobileMenu {
  display: inline-block;
  background: var(--primaryLight);
}
#mobileMenu nav {
  display: none;
}
/* #mobileMenu nav > li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
} */
#mobileMenu li {
  list-style-type: none;
    line-height: 1em;
}
#mobileMenu li a {
  width: 100%;
  text-decoration: none;
  color: inherit;
  display: inline-block;
}
#mobileMenu li span {
  padding: 7px;
  display: block;
  color: var(--primaryDark);
  font-family: var(--headingFont);
  text-transform: uppercase;
}

#mobileMenu .parent li span {
  padding: 5px;
}

#mobileMenu .parent > span:after {
  content: "+";
  font-family: 'fontAwesome';
  margin-left: 5px;
  transition: .3s;
  transform: translateY(-1px);
  display: inline-block;
}
#mobileMenu .parent.open > span:after {
  content: "\2013";
  transform: translateY(-2px);
}
#mobileMenu .current > span, #mobileMenu .current > a {
  opacity: 0.5;
}

#mobileMenu .parent li span {
  font-family: var(--bodyFont);
  text-transform: capitalize;
  font-weight: 300;
}

#mobileMenu nav {
  display: inline-block;
  width: 100%;
    padding: 10px;
}

#mobileMenu {
  position: fixed;
  top: 0;
  left: -80%;
  width: 80%;
  height: 100%;
  z-index: 10000;
  overflow: scroll;
  transition: .5s ease-out;
}
#mobileMenu.menu-open {
  left: 0;
  /* box-shadow: 5px 0 10px var(--opacity20); */
}

/* ----------- SUB MENU ----------- */
#mobileMenu li ul {
  display: none;
  margin: 0;
  padding: 2px 0 3px;
  list-style: none;
  background: transparent;
}
#mobileMenu li ul li {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

#mobileMenu li ul a {
  padding-left: 30px;
}

/* ---------------------------------- */
/* ------------- FOOTER ------------- */
/* ---------------------------------- */
#footerBottom {
  padding: 0 0 4em 0;
}
#footerBottom .container {
  -ms-flex-direction: column;
      flex-direction: column;
}
#footerBottom nav {
  width: 100%;
  padding: 10px 0;
  text-align: center;
}
#footerBottom nav li {
  width: 100%;
}
#footerBottom .footerRight {
  text-align: center;
}


/*----------------------------------------------*/
/*--------------- ENQUIRY FORM -----------------*/
/*----------------------------------------------*/
.enquiryForm, 
.enquiryForm .enqLeft, 
.enquiryForm .enqRight,
.enquiryForm .enqRow.half {
  width: 100%;
  max-width: 100%;
  display: inline-block;
}

.enquiryForm .enqRow.half {
  display: block;
}

.enquiryForm .enqRow {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.enquiryForm .enqLeft {
  padding: 5px 5px 5px 0;
}

.enquiryForm .checkbox .enqLeft:empty {
  display: none;
}

.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.enqRow {
  display: block;
}

/* ---------------------------------- */
/* ------------- GRID --------------- */
/* ---------------------------------- */
.col-1-small, .cartThumb.category, 
.blog-widget .blog-widget-article,
section[class*="_imgC"] .col-4,
section[class*="_imgC"] .col-6 {
  width: 100%;
  width: calc(100% - var(--gridSpacing));
}



.col-2-small, .contentImgRow .item, .cartThumb.item {
  width: 50%;
  width: calc(50% - var(--gridSpacing));
}

/*.col-1,
.col-2,
.col-3,
.col-3x2,
.col-4,
.col-4x3,
.col-5,
.col-5x2,
.col-5x3,
.col-5x4,
.col-6,
.col-6x5 {
    width: 100%;
    width: calc(100% - var(--gridSpacing));
}*/
/* ---------------------------------- */
/* -------- BANNER OF WEBSITE ------- */
/* ---------------------------------- */

.fixedTopWrap {position: static;}

.siteTop {padding-top: 0;}

.logo {
  margin: auto;
width: 130px;
}

#subBanner .container {
  padding-bottom: 126px;
}


/* ---------------------------------- */
/* -------- GRAPHICAL BUTTONS ------- */
/* ---------------------------------- */
/* ---------------------------------- */
/* -------- SLIDESHOW STYLES -------- */
/* ---------------------------------- */
/* ---------------------------------- */
/* ----------- SUB BANNERS ---------- */
/* ---------------------------------- */


#enquire-dropdown .enquiry {
    max-width: 100%;
}

/* ---------------------------------- */
/* ---------- CUSTOM FOOTER --------- */
/* ---------------------------------- */


#footerTop .container [class*="col-"] {
  text-align: center;
}

footer .logo {
  margin: 0 auto 1.5em;
}

footer .container {
  padding: 3em 28px 5em;
}

#footerTop .container {
  padding: 5em 28px 0em;
}

#toTop {
  bottom: 60px;
  left: 10px;
}

#footerTop .brand .button {
  max-width:180px;
}


footer .map {
  padding-top: 15px;
}


footer .container {
  justify-content: center;
}

footer .contact[class*="col-"] {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#footerTop .-primaryBtn- {
  margin-bottom: .8em;
  margin-top: .7em;
}

footer .details {
  margin-bottom: 1.5em;
}
footer .address.details {
  margin-bottom: 1.4em;
  margin-top: 1.3em;
}

footer .logo {
  width: 100px;
  max-width: 100px;
}

/* ---------------------------------- */
/* ----------- CUSTOM CSS ----------- */
/* ---------------------------------- */

p.spacer {
  font-size: .5em;
  line-height: 0em;
  height: 18px;
}

.twoColumn>tbody>tr>td:last-child .growToFrame {
  margin-top: 2em;
  margin-bottom: .5em;
}

.twoColumn>tbody>tr>td:first-child .growToFrame {
  margin-bottom: 2em;
  margin-top: .5em;
}

.table-to-div.reviewSlider .slick-slide.item .growToFrame {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.siteBottom a[role="region"] {
  top: -50px;
}

#banner .container {
  position: absolute;
  z-index: 20;
  top: 0;
  padding: 70px 20px 20px;
}



.textSection .siteContent, .categorySection .siteContent, .viewCart .siteContent {
  padding: 3.5em 0;
}
.contentWrap section:last-of-type > div:last-of-type .siteContent {
  padding-bottom: 3.5em;
}

.textSection + .photoSection .siteContent {
  padding-bottom:3.5em;
}

.siteBottom .container {
  padding: 0 7vw;
}

h1, h2 {
  font-size: 2.2em;
  margin: .3em 0 .55em;
  line-height: 1.15em;
  letter-spacing: -.01em;
}

h2.style-two, h3.style-two {
  font-size: 1.8em;
  margin: .3em 0 .5em;
  line-height: 1.15em;
  letter-spacing: -.01em;
}

.siteBottom h2.xl{
  font-size: clamp(2.2em, 6.5vw, 5em);
  margin: 0;
  line-height: 1.05em;
}

h3.style-three{
  font-size: 1.5em;
  margin: .7em 0;
}

h3{
  font-size: 1.25em;
  margin: .7em 0;
}

.paraBtn a {
  padding: 1.2em 1.6em;
}

  .butFrame:not(:last-child) {
    margin-bottom: 5vw;
  }

  .butFrame .butHeading {
  font-size: clamp(2em, 8.2vw, 4.3em);
}

.butFrame .butImage {
  padding-bottom: 160%;
}

  .butFrame .butReadmore {
  width: 25px;
  height: 25px;
  min-width: 25px;
  min-height: 25px;
}

.butText {
  font-size: .95em;
  line-height: 1.3em;
}

section[class*="M_full"].butOnly .backgroundImage {
  top: 40vw;
}


.lightBox>tbody>tr>td {
  padding: 3.5em 7.5vw;
}

.reviewBlock>tbody>tr>td:before {
  left: -12px;
  width: 28px;
  height: 23px;
}


section[class*="M_full"]:not(.M_full_img-light1) {
  padding: 3em 0;
}



  .locationTable .growToFrame {
  height: 110vw;
}
.locationTable.table-to-div .item:has(.growToFrame:first-child) {
  padding-top: calc(110vw + 20px);
}

.table-to-div .col-1-small:not(:first-child) {
  margin-top: 2em;
}

.reviewSlider .slick-slide .twoColumn>tbody>tr>td:first-child {
  padding: 2em 6vw 4em!important;
}

.reviewSlider h4.style-two {
  bottom: 1.5em;
}

/* .slick-slide {
  height: 100%;
} */

.reviewSlider .twoColumn>tbody>tr {
  display: flex;
  flex-direction: column;
  height: 100% !important;
}

.reviewSlider .twoColumn>tbody>tr>td:last-child {
 flex: 1 !important;
 display: flex !important;
  justify-content: center;
  flex-direction: column;
  min-height: 55vw;
}

.slick-slider {
  padding-top: 25px;
  padding-bottom: 10px;
}

.reviewSlider .slick-next,
.reviewSlider .slick-prev {
  top:.6rem;
    width: 25px;
  height: 25px;
}

.slick-prev {
  left: 0.6rem;
  right: revert;
}


.galleryTable a.overlayImg  img{
  margin-bottom: 1.5vw !important;
  margin-top: 1.5vw !important;
}

.enquiryForm .enqHeader {
  font-size: 1.8em;
    padding: .3em 0.5em 1.5em;
}

.enquiryForm.enqEmbed {
  padding: 3.5em 6%;
}

.link1 #section2.M_full_img-light1 .backgroundImage {
  top: 50%;
  height: 100%;
}

.link1 .siteBottom .enquiryForm.enqEmbed {
  margin-bottom: 2.5em;
  position: relative
}

.link1 .M_full_img-light1 .enquiryForm.enqEmbed:after {
  content: '';
  position: absolute;
  display: block;
  top: 5em;
  left: 50%;
  bottom: 0;
  background: var(--primaryLight);
  width: 100vw;
  transform: translateX(-50%);
  z-index: -1;
}

.moduleTable.flip>tbody>tr {
  display: flex;
  flex-direction: column-reverse;
}