/* ---------------------------------- */
/* ------ MAIN BODY OF WEBSITE ------ */
/* ---------------------------------- */
html {
    overflow-y: scroll;
    -webkit-font-smoothing: antialiased;
}

body {
    background: var(--bgColor);
    font: 16px/1.6em var(--bodyFont);
    color: var(--fontColor);
}

a {
    color: var(--primaryDark);
}

a:hover {
    color: #B7A096;
}

p {
    margin: 1em 0;
}

icon {
    font-family: fontawesome;
}

/* ---------------------------------- */
/* ------------ HEADINGS ------------ */
/* ---------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: var(--headingWeight);
    font-family: var(--headingFont);
    line-height: 1.2em;
    color: var(--headingColor);
}

h1 {
    font-size: 2em;
    margin: .3em 0;
}

h2 {
    font-size: 1.8em;
    margin: .3em 0;
}

h3 {
    font-size: 1.6em;
    margin: .3em 0;
}

h4 {
    font-size: 1.1em;
    margin: .3em 0;
}

h5 {
    font-size: 1.2em;
    margin: .2em 0;
}

p[style*="text-align: center;"],
h5[style*="text-align: center;"] {
    width: 85%;
    margin: 0 auto;
}

@media (max-width:700px) {

    p[style*="text-align: center;"],
    h5[style*="text-align: center;"] {
        width: 95%;
        margin: 0 auto;
    }
}

h6 {
    font-weight: inherit;
    font-family: inherit;
    font-size: 1em;
    margin: 1em 0;
}

h6 a {
    margin-bottom: 0.2em;
}

section {
    width: 100%;
}

.container {
    max-width: var(--containerWidth);
    width: 100%;
    margin: auto;
    position: relative;
}

.textSection .siteContent,
.categorySection .siteContent,
.viewCart .siteContent {
    padding: 2em 0;
}

.textSection .siteContent img,
.categorySection .siteContent img,
.viewCart .siteContent img {
    height: auto !important;
    max-width: 100%;
}

.contentWrap section:last-of-type>div:last-of-type .siteContent {
    padding-bottom: 2em;
}

/* ---------------------------------- */
/* ---------- CONTENT AREA ---------- */
/* ---------------------------------- */


a[href=""],
a[href*="$"] {
    display: none;
}



.siteBottom .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 0 10px;
}

.siteContent,
.searchContent {
    width: 100%;
    -ms-flex: 1 1 auto;
}

.buttonSection .siteContent,
.buttonSection .container {
    padding: 0;
}

.desktop-hide,
a.desktop-hide {
    display: none !important;
}


#subBannerHome,
#subBanner {
    position: relative;
}


/* #subBannerHome:before,
#subBanner:before {
 position: absolute;
 z-index:-1;
 width: 100%;
 height: 90%;
 background-repeat: repeat;
 content: "";
 top: 5%;
 left: 0;
 opacity:1;
 background:var(--cta) url("/thumbnaillarge/sub.jpg");
  background-position:center center;
  background-attachment: fixed;
}

 */

.link0 #section1 .container {
    margin-top: 50px;
    background: var(--headingColor);
}

/* ---------------------------------- */
/* ------------ SIDEBAR ------------- */
/* ---------------------------------- */
.sidebar {
    width: 280px;
    padding: 2em 0.5em 15px;
    margin: 0px 15px 0 0;
    line-height: 1.5em;
    background: var(--opacity03);
}

/*
.textSection .sidebar, .photoSection .sidebar {
display: none;
}
*/
.sidebar .item,
#outerSidebar .item {
    width: 100%;
    margin-top: 15px;
}

.sidebar .item .caption,
#outerSidebar .item .caption {
    font-size: .9em;
}

#outerSidebar {
    display: none;
}

#cartContent .sidebar {
    display: none;
}

/*
@media (min-width:600px){
.siteBottom {
width: 100%;
max-width: 1100px;
margin: auto;
display: flex;
justify-content: space-between;
}

.sidebar {
display: none;
}

#outerSidebar {
width: 200px;
padding: 0 15px;
flex-shrink: 0;
background: var(--opacity1);
display: inline-block;
}

.contentWrap {
width: 100%;
-ms-flex:0 1 auto;
}
}
*/

.siteBottom.activeOuterSidebar {
    width: 100%;
    max-width: var(--containerWidth);
    margin: auto;
    display: flex;
    justify-content: space-between;
}

.activeOuterSidebar .sidebar {
    display: none;
}

.activeOuterSidebar #outerSidebar {
    width: 250px;
    flex-shrink: 0;
    background: var(--opacity03);
    display: inline-block;
}

.activeOuterSidebar .contentWrap {
    width: 100%;
    -ms-flex: 0 1 auto;
}

@media (max-width:900px) {
    .activeOuterSidebar #outerSidebar {
        width: 200px;
    }
}

@media (max-width:700px) {
    .siteBottom.activeOuterSidebar {
        flex-direction: column;
    }

    .activeOuterSidebar #outerSidebar {
        width: 100%;
        order: 2;
    }
}

/* -------------------------------------------------------------- */
/* - The following styles sidebar list, shop and blog sidemenus - */
/* -------------------------------------------------------------- */

.sidebar h2,
.blogSide .blogArchive::before,
.blogMenu .categoryMenu::before {
    font-size: 1.4em;
    font-family: var(--headingFont);
    font-weight: var(--headingWeight);
    color: var(--headingColor);
    display: block;
    margin-bottom: .5em;
}

.sidebar {
    font-size: .9em;
}

.sidebar ul {
    padding: 0;
    margin: 1.5em 0 1em;
    line-height: 1.2em;
}

.sidebar ul li {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar ul li a {
    display: block;
    width: 100%;
    padding: 3px;
    margin: 1px 0;
    text-decoration: none;
    color: var(--fontColor);
    transition: var(--transition);
}

.sidebar ul li a:hover {
    opacity: .6;
}

.sidebar ul li.current>a {
    color: var(--primary);
}

.sidebar ul li>a:hover {
    opacity: .6;
}

.sidebar ul li ul {
    padding: 0;
    margin: 0;
    font-size: .9em;
}

.sidebar ul li ul li {
    margin: 0;
    padding: 0;
    cursor: pointer;
    display: block;
}

.sidebar ul li ul li ul {
    margin-bottom: 5px;
}

.sidebar ul>li>a {
    font-weight: bold;
}

.sidebar ul>li>ul>li>a {
    padding-left: 10px;
    font-weight: normal;
}

.sidebar ul>li>ul>li>a:before {
    content: '\f101';
    float: left;
    font-family: 'fontAwesome';
    font-size: 0.9em;
    margin-right: 5px;
}

.sidebar ul>li>ul>li>ul>li>a {
    padding-left: 20px;
    font-size: 0.9em;
}

.sidebar ul>li>ul>li>ul>li>a:before {
    content: '\f105';
    float: left;
    font-family: 'fontAwesome';
    font-size: 0.9em;
    margin-right: 5px;
}

/* ---------------------------------- */
/* -------- CONTACT DETAILS --------- */
/* ---------------------------------- */
.contact a:before,
.contact div:before,
.contact p:before {
    font-family: fontAwesome;
    display: inline-block;
    position: relative;
    margin-right: 1em;
    color: inherit;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.phone:before {
    content: "\f098";
    /*phone in square*/
    content: "\f095";
    /*phone*/
}

.mobile:before {
    content: "\f10b";
    /*mobile*/
}

.email:before {
    content: "\f2b7";
    /*envelope open*/
    content: "\f2b6";
    /*envelope open solid*/
    content: "\f199";
    /*envelope in square*/
    content: "\f003";
    /*empty envelope*/
    content: "\f0e0";
    /*solid envelope*/
}

.fax:before {
    content: "\f1ac";
    /*fax*/
}

.address:before {
    content: "\f278";
    /*map*/
    content: "\f279";
    /*map solid*/
    content: "\f124";
    /*location arrow*/
    content: "\f041";
    /*map marker*/
}

/*-----social icons-----*/
.facebook:before {
    content: "\f082";
    /*facebook square*/
    content: "\f09a";
    /*facebook f*/
}

.tripAdvisor:before {
    content: "\f262";
}

.instagram:before {
    content: "\f16d";
    /*instagram logo*/
}

.twitter:before {
    content: "\f081";
    /*twitter square*/
    content: "\f099";
    /*twitter bird*/
}

.googlePlus:before {
    content: "\f0d4";
    /*google plus square*/
    content: "\f0d5";
    /*google plus*/
}

.pinterest:before {
    content: "\f0d3";
    /*pinterest square*/
    content: "\f0d2";
    /*pinterest circle*/
}

.linkedIn:before {
    content: "\f08c";
    /*linkedIn square*/
    content: "\f0e1";
    /*linkedIn in*/
}

.youTube:before {
    content: "\f16a";
    /*youtube play*/
    content: "\f166";
    /*youtube square*/
    content: "\f167";
    /*youtube normal*/
}

.flickr:before {
    content: "\f16e";
    /*flicker dots*/
}

/*-----social colours-----*/
/*.facebook {
background: #49639E;
}

.instagram {
background: #8a3ab9;
}

.twitter {
background: #5EA9DD;
}

.googlePlus {
background: #DD4B39;
}

.pinterest {
background: #BD081C;
}

.linkedIn {
background: #0177B5;
}

.youTube {
background: #E22D24;
}

.flickr {
background: #ff0084;
}*/

/* ---------------------------------- */
/* -------- HR line styling --------- */
/* ---------------------------------- */
hr {
    border: 0;
    height: 1px;
    color: var(--opacity10);
    background-color: var(--opacity10);
    width: 100%;
}

/* ---------------------------------- */
/* ----------- NAVIGATION ----------- */
/* ---------------------------------- */
#menu {
    position: relative;
    z-index: 100;
    margin-bottom: 1em;
}

#menu nav {
    max-width: var(--containerWidth);
    width: 100%;
    margin: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 10px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}


#menu nav li {
    list-style: none;
    float: left;
    display: inline-block;
    margin: 0;
}

#menu nav li a {
    display: inline-block;
    text-decoration: none;
    width: 100%;
    padding: 10px;
    color: inherit;
    font-size: 0.9em;
    font-weight: bold;
    border-bottom: var(--buttonBorderWidth) solid transparent;

}

#menu nav li a:hover,
#menu nav .parent:hover>a {
    background: var(--cta);
    color: #fff;

}

#menu nav .current>a {
    background: var(--cta);
    color: #fff;
}

#menu nav .parent>a:after {
    font-family: FontAwesome;
    margin-left: 8px;
    content: "\f107";
    line-height: 1em;
}

#mobileMenu,
#navToggleWrap {
    display: none;
}

#menu .iconOnly {
    position: relative;
    top: 5px;
    padding: 10px;
    background: var(--primary);
    border-radius: 0;
    font-size: 0.9em;
    color: #fff;
}

/* ---------------------------------- */
/* ------------ SUB MENU ------------ */
/* ---------------------------------- */
#menu nav ul {
    position: absolute;
    width: 150px;
    margin: 0;
    padding: 0;
    display: none;
    font-size: .85em;
}

#menu nav ul li {
    width: 100%;
    display: inline-block;
}

#menu nav ul li a {
    padding: 5px 10px;
    line-height: 1.1em;
}

#menu .subContainer {
    background: var(--white);
    margin-top: 10px;
    position: relative;
    display: inline-block;
    padding: 10px;
    width: 100%;
}

#menu .subContainer:after {
    position: absolute;
    top: -10px;
    left: 30px;
    width: 0px;
    height: 0px;
    content: "";
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid var(--white);
}

/* ---------------------------------- */
/* --------- PHOTO SECTION ---------- */
/* ---------------------------------- */
.item {
    display: block;
}

.item .overlayImg {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 80%;
    overflow: hidden;
}

.overlayImg .contentImg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
    image-rendering: auto;
}

.overlayImg img.contentImg {
    object-fit: cover;
}

.contentImgRow .caption {
    font-size: .9em;
    margin-top: 5px;
}

.contentImgRow .caption:empty {
    display: none;
}

/*------------------------------------*/
/*----------- ENQUIRY FORM -----------*/
/*------------------------------------*/
.enquiryForm {
    width: 100%;
    padding: 0;
    margin: 1em auto;
    line-height: 1.4em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    color: var(--inputColor);
}

.enquiryForm.enqEmbed {
    color: var(--formColor);
    max-width: 500px;
    padding: 20px;
}

.enquiryForm .enqHeader {
    font-size: 1.6em;
    font-family: var(--headingFont);
    font-weight: var(--headingWeight);
    padding: 1em 0.5em 1.5em;
    text-align: center;
    width: 100%;
}

.enquiryForm .itemEnqDetails {
    width: 100%;
}

.enquiryForm .enqRow {
    width: 100%;
    overflow: hidden;
    padding: .3em .5em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    flex-wrap: wrap;
}

.enquiryForm .enqRow.textarea {
    -ms-flex-align: start;
    align-items: flex-start;
}

.enquiryForm .enqRow.half {
    width: 50%;
    display: inline-block;
}

.enquiryForm .enqLeft {
    padding: 0 5px;
    width: 100%;
}

.enquiryForm .enqRight {
    width: 100%;
}

.enquiryForm .enqRow.half .enqLeft,
.enquiryForm .enqRow.half .enqRight {
    width: 100%;
}

.enquiryForm .button {
    width: 100%;
    -webkit-appearance: none;
}

.enquiryForm textarea {
    height: 80px;
}

.enquiryForm input[type="radio"] {
    width: 15px;
    -webkit-appearance: radio;
    margin: 0;
    padding: 0;
}

.enquiryForm input[type="checkbox"] {
    -webkit-appearance: checkbox;
    width: 15px;
    margin: 0;
    padding: 0;
}

.enquiryForm input[type="date"] {
    font-family: inherit;
}

.enquiryForm input[type="time"] {
    font-family: inherit;
}

.enquiryForm input[type="submit"] {
    margin-bottom: 10px;
    cursor: pointer;
}

.enquiryForm select {
    width: 100%;
}

.enquiryForm .checkbox .enqRight {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

.enquiryForm .checkbox .enqRight input[type=checkbox] {
    visibility: hidden;
    display: none;
}

.enquiryForm .checkbox .enqRight input[type=checkbox]:checked+label icon {
    border-color: var(--cta);
}

.enquiryForm .checkbox .enqRight input[type=checkbox]:checked+label icon:after {
    opacity: 1;
}

.enquiryForm .checkbox .enqRight input[type=checkbox]:hover+label icon:after {
    opacity: .6;
}

.enquiryForm .checkbox .enqRight label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.enquiryForm .checkbox .enqRight label icon {
    display: inline-block;
    cursor: pointer;
    position: relative;
    width: 18px;
    height: 18px;
    top: 0;
    left: 0;
    border-radius: var(--borderRadius);
    border: 1px solid rgba(var(--opacityColor), .2);
    background: var(--inputBG);
    transition: all 0.3s ease;
    margin-right: .5em;
}

.enquiryForm .checkbox .enqRight label icon:after {
    opacity: 0;
    transition: var(--transition);
    content: '';
    position: absolute;
    width: 10px;
    height: 6px;
    background: transparent;
    top: 4px;
    left: 3px;
    border: 3px solid var(--cta);
    border-top: none;
    border-right: none;
    transform: rotate(-45deg);
}

.enquiryForm .checkbox .enqRight label:hover icon {
    opacity: .6;
}

.enquiryForm .checkbox .enqRight label:hover icon:after {
    opacity: .6;
}

.enquiryForm .radioWrap {
    -ms-flex-align: start;
    align-items: flex-start;
}

.enquiryForm .radioWrap .enqRight {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.enquiryForm .radioWrap .enqRight .radioBtn {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin: .2em 0;
}

.enquiryForm .radioWrap .enqRight .radioBtn input[type=radio] {
    visibility: hidden;
    display: none;
}

.enquiryForm .radioWrap .enqRight .radioBtn input[type=radio]:checked+label icon {
    border-color: var(--cta);
}

.enquiryForm .radioWrap .enqRight .radioBtn input[type=radio]:checked+label icon:after {
    opacity: 1;
}

.enquiryForm .radioWrap .enqRight .radioBtn input[type=radio]:hover+label icon:after {
    opacity: .6;
}

.enquiryForm .radioWrap .enqRight .radioBtn label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.enquiryForm .radioWrap .enqRight .radioBtn label icon {
    display: inline-block;
    cursor: pointer;
    position: relative;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    top: 0;
    left: 0;
    border: 1px solid rgba(var(--opacityColor), .2);
    background: var(--inputBG);
    transition: var(--transition);
    margin-right: .5em;
}

.enquiryForm .radioWrap .enqRight .radioBtn label icon:after {
    opacity: 0;
    transition: var(--transition);
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    background: var(--cta);
    border-radius: 50%;
    top: 4px;
    left: 4px;
}

.enquiryForm .radioWrap .enqRight .radioBtn label:hover icon {
    opacity: .6;
}

.enquiryForm .radioWrap .enqRight .radioBtn label:hover icon:after {
    opacity: .6;
}

/* Enquire Only Item  */
.enqItem .enquiryForm {
    max-width: 500px;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=number],
input[type=date],
input[type=time],
input[type=phone],
input[type=password],
textarea {
    transition: var(--transition);
    background: var(--inputBG);
    color: var(--inputColor);
    outline: none;
    border: 1px solid rgba(var(--opacityColor), .2);
    border-radius: var(--borderRadius);
    font-size: 1em;
    font-family: inherit;
    padding: var(--inputPadding);
    width: 100%;
}

input[type=text]:hover,
input[type=tel]:hover,
input[type=email]:hover,
input[type=number]:hover,
input[type=date]:hover,
input[type=time]:hover,
input[type=phone]:hover,
input[type=password]:hover,
textarea:hover {
    outline: none;
    border-color: rgba(var(--opacityColor), .6);
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=time]:focus,
input[type=phone]:focus,
input[type=password]:focus,
textarea:focus {
    outline: none;
    border-color: rgba(var(--opacityColor), 1);
}

/* Custom styling for <select> */
.select {
    position: relative;
    padding: 0;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    background: rgba(var(--opacityColor), .2);
    color: var(--inputColor);
    outline: none;
    border: 1px solid rgba(var(--opacityColor), .2);
    border-radius: var(--borderRadius);
    width: 100%;
}

select::-ms-expand {
    display: none;
}

.select:after {
    content: "\f078";
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 25px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: 'fontAwesome';
    pointer-events: none;
    border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
    color: var(--fontColor);
    background: rgba(var(--opacityColor), .1);
    border: 1px solid rgba(var(--opacityColor), 0);
}

.select select {
    -webkit-appearance: none;
    background: var(--inputBG);
    border: 0;
    line-height: 1em;
    display: inline-block;
    width: 100%;
    padding: var(--inputPadding);
    outline: 0;
    font-size: 1em;
    border-radius: var(--borderRadius);
}

.select select option {
    color: var(--black);
    background: var(--white);
}

.select:hover {
    outline: none;
    border-color: rgba(var(--opacityColor), .6);
}

.select:hover::after {
    color: var(--fontColor);
}

.select:active:after {
    color: var(--headingColor);
    background: rgba(var(--opacityColor), .2);
    border: 1px solid rgba(var(--opacityColor), .1);
}

.select:focus {
    border-color: var(--primaryDark);
}

.select:focus:after {
    background: var(--primaryDark);
    border-color: var(--primaryDark);
}

/*-----Placeholder Styles-----*/
::-webkit-input-placeholder {
    color: var(--fontColor);
    opacity: 0.6;
}

:-moz-placeholder {
    color: var(--fontColor);
    opacity: 0.6;
}

::-moz-placeholder {
    color: var(--fontColor);
    opacity: 0.6;
}

:-ms-input-placeholder {
    color: var(--fontColor);
    opacity: 0.6;
}

.grecaptcha-badge {
    z-index: 900;
    bottom: 60px !important;
}

/* ---------------------------------- */
/* ------------- FOOTER ------------- */
/* ---------------------------------- */

.footerContact {
    font-size: 1.5em;

}

.footerContact a:before {
    color: var(--primary);
}


footer {
    border-top: 5px solid var(--brown);
    margin-top: 4em;
    width: 100%;
    background: #f7f7f7;
    color: #222;
    font-size: .8em;
}

footer .container {
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 20px 0;
}

#footerBottom .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 2em 0em;
}

#footerTop {
    padding-top: 2em;
}

/*-------- FOOTER TEXT STYLES ---------*/
#footerBottom a {
    color: inherit;
    opacity: 0.5;
    text-decoration: none;
}

#footerBottom a:hover {
    color: inherit;
    opacity: 1;
}

/*------------ FOOTER MENU ------------*/
footer nav {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2em 0em;
    border-top: 1px solid #ccc;
}


footer nav li {
    list-style: none;
    float: left;
    display: inline-block;
}

footer nav li a {
    text-decoration: none;
    padding: 5px 10px;
    display: inline-block;
}

.footerRight {
    width: 100%;
    text-align: center;
    margin-right: 10px;
}

/* ---------------------------------- */
/* ---------- CUSTOM FOOTER --------- */
/* ---------------------------------- */
/* ---------------------------------- */
/* ------------- TO TOP ------------- */
/* ---------------------------------- */
#toTop {
    position: fixed;
    bottom: 70px;
    left: 20px;
    z-index: 900;
    outline: none;
    color: var(--primary);
    background: var(--primaryLight);
    border: 1px solid var(--primaryLight);
}

#toTop:before {
    content: "\f077";
}

/* ---------------------------------- */
/* ---------  list styling  --------- */
/* ---------------------------------- */
.siteBottom .siteContent ul {
    list-style: none;
    margin: 0;
    padding: 0 0 0 2em;
}

.siteBottom .siteContent ul li {
    margin-bottom: 0.5em;
    position: relative;
}

.siteBottom .siteContent ul li:before {
    content: "\f111";
    /* dots */
    content: "\f054";
    /* chevron-right */
    content: "\f0da";
    /* caret-right */
    content: "\f00c";
    font-family: FontAwesome;
    font-size: 0.8em;
    margin-right: 10px;
    color: var(--primary);
    position: absolute;
    top: 0;
    left: -20px;
}

.siteBottom .siteContent ul[style="list-style-type: circle;"] li:before,
.siteBottom .siteContent ul[style="list-style-type: disc;"] li:before,
.siteBottom .siteContent ul[style="list-style-type: square;"] li:before,
.siteBottom .siteContent ul[style="list-style-type: none;"] li:before {
    display: none;
}

.siteBottom .siteContent ul[style="list-style-type: none;"] .fontAwesomeIcon {
    position: absolute;
    left: -1.3em;
}

/*-----------------------------------*/
/*-------------- GRID ---------------*/
/*-----------------------------------*/
.grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}

.grid:after {
    content: "";
    display: table;
    clear: both;
    width: 100%;
}

.grid.justify {
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.grid.center {
    -ms-flex-pack: center;
    justify-content: center;
}

.grid [class*='col-'],
.contentImgRow .item,
.cartThumb,
.blog-widget .blog-widget-article {
    float: left;
    margin: calc(var(--gridSpacing) / 2);
}

.col-1,
#outerSidebar .blog-widget .blog-widget-article,
.sidebar .blog-widget .blog-widget-article {
    width: 100%;
    width: calc(100% - var(--gridSpacing));
}

.col-2 {
    width: 50%;
    width: calc(50% - var(--gridSpacing));
}

.col-3,
.cartThumb.category {
    width: 33.33333%;
    width: calc(33.33333% - var(--gridSpacing));
}

.col-3x2 {
    width: 66.66%;
    width: calc(66.66% - var(--gridSpacing));
}

.col-4,
.contentImgRow .item,
.cartThumb.item,
.blog-widget .blog-widget-article {
    width: 25%;
    width: calc(25% - var(--gridSpacing));
}

.col-4x3 {
    width: 75%;
    width: calc(75% - var(--gridSpacing));
}

.col-5 {
    width: 20%;
    width: calc(20% - var(--gridSpacing));
}

.col-5x2 {
    width: 40%;
    width: calc(40% - var(--gridSpacing));
}

.col-5x3 {
    width: 60%;
    width: calc(60% - var(--gridSpacing));
}

.col-5x4 {
    width: 80%;
    width: calc(80% - var(--gridSpacing));
}

.col-6 {
    width: 16.666%;
    width: calc(16.666% - var(--gridSpacing));
}

.col-6x5 {
    width: 83.33%;
    width: calc(83.33% - var(--gridSpacing));
}

/* ---------------------------------- */
/* -------- GRAPHICAL BUTTONS ------- */
/* ---------------------------------- */
.button,
.blog-widget-article-content-button,
h6 a {
    display: inline-block;
    cursor: pointer;
    line-height: 1em;
    padding: 0.8em 1.6em;
    outline: none;
    border-radius: var(--buttonBorderRadius);
    text-decoration: none;
    text-align: center;
    font-weight: normal;
    transition: all .3s ease;
}

* a.iconOnly {
    padding: 0.8em 0em;
    width: 2.8em;
}

* a.iconOnly:before {
    margin-right: 0;
}

/*cta button*/
.-ctaBtn-,
h6 a[href*="contact"] {
    outline: none;
    transition: var(--transition);
    color: var(--white);
    background: var(--cta);
    border: var(--buttonBorderWidth) solid var(--cta);
}

.-ctaBtn-:hover,
h6 a[href*="contact"]:hover {
    color: var(--cta);
    background: transparent;
    border-color: var(--cta);
}

/*primary button*/
.-primaryBtn- {
    outline: none;
    transition: var(--transition);
    color: var(--white);
    background: var(--primary);
    border: 1px solid var(--primary);
}

.-primaryBtn-:hover {
    color: var(--white);
    background: var(--cta);
    border-color: var(--cta);
}

/*secondary button*/
.-secondaryBtn-,
.blog-widget-article-content-button,
h6 a,
.cartThumbs .cartThumb .info:after {
    outline: none;
    background: var(--cta);
    border: var(--buttonBorderWidth) solid transparent;
    color: #fff;
}

.-secondaryBtn-:hover,
.blog-widget-article-content-button:hover,
h6 a:hover,
.cartThumbs.grid .cartThumb:hover .info:after,
.blog-widget .blog-widget-article:hover .blog-widget-article-content-button,
.blogPost:hover .blogPostDetails a.blogBtn.-secondaryBtn-,
.butFrame:hover .-secondaryBtn- {
    color: var(--cta);
    background: transparent;
    border-color: var(--cta);
}

/*inverted button*/
.-invertedBtn- {
    background: none;
    border: var(--buttonBorderWidth) solid var(--white);
    color: var(--white);
}

.-invertedBtn-:hover {
    color: var(--primary);
    background: var(--white);
    border: var(--buttonBorderWidth) solid var(--white);
}


/*---- Graphical Button ----*/
.butFrame {
    cursor: pointer;
    outline: none;
    text-decoration: none;
    text-align: center;
    position: relative;
    transition: var(--transition);
    color: var(--cardTextColor);
    background: var(--cardBG);
    border: var(--cardBorder);
    box-shadow: var(--cardShadow);
}

.butFrame:hover {
    box-shadow: var(--cardShadowHover);
    transform: var(--cardTransformHover);
    background: var(--cardBGHover);
    color: var(--cardTextColor);
}

.butFrame .butHeading {
    line-height: 1em;
    padding: 1em 0;
    color: var(--cardHeadingColor);
    font-family: var(--headingFont);
    background: #fff;
    transition: all .3s ease;
    font-size: 1.2em;
}

.butFrame:hover .butHeading {
    background: var(--cta);
    color: #fff;
}

.butFrame .butImage {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.butFrame .butTextWrap {
    padding: 1em .5em;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.butFrame .butReadmore {
    position: absolute;
    bottom: 1.7em;
    left: 50%;
    transform: translate(-50%, 0);
    margin: auto;
    width: 100%;
    max-width: 10em;
    display: none;
}

.basicFrame {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ---------------------------------- */
/* ---------- VIEW CART BTN --------- */
/* ---------------------------------- */
#banner #viewCart {
    position: absolute;
    top: 0;
    right: 0;
    overflow: hidden;
    z-index: 1000;
}

#viewCart:before {
    content: "\f290";
    /*bag*/
    content: "\f07a";
    /*cart*/
    font-family: fontAwesome;
    margin-right: .5em;
}

/* ---------------------------------- */
/* ---------- FIXED TO TOP ---------- */
/* ---------------------------------- */

.fixedTopWrap {
    color: var(--fontColor);
    background-color: var(--white);
}


/* ---------------------------------- */
/* ----------- SIDE ICONS ----------- */
/* ---------------------------------- */

.sideIcons {
    position: fixed;
    z-index: 1005;
    top: 40%;
    right: -135px;
    font-size: 1em;
    background: var(--primaryDark);
}

.sideIcons a {
    display: block !important;
    margin: -1px 0 0;

    padding: 10px 12px;
    color: #fff;
    text-transform: uppercase;
    font-family: var(--headingFont);
    -webkit-transform: translatex(0px);
    transform: translatex(0px);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    text-decoration: none;
}

.sideIcons a.iconOnly {
    width: initial;
    font-size: 1.1em;
}

.sideIcons a:first-child {
    border-radius: 5px 0 0 0;
}

.sideIcons a:last-child {
    border-radius: 0 0 0 5px;
}

.sideIcons a:hover {
    background: var(--primaryDark);
    color: #fff;
    -webkit-transform: translatex(-140px);
    transform: translatex(-140px);
    border-radius: 5px 0 0 5px;

}

.sideIcons a:before {
    margin-right: 15px;
    width: 20px;
    text-align: center;
}


/* ---------------------------------- */
/* ------------- BANNER ------------- */
/* ---------------------------------- */



#banner {
    position: relative;
    border-top: 5px solid var(--brown);
}

#banner .container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.logo {
    position: relative;
    display: block;
    width: 140px;

    padding: 15px 5px;
    transition: 0.3s ease;
}

.logo svg,
.logo object,
.logo img {
    width: 100%;
    height: auto;
    display: block;
}

.logo:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.contactContainer>*:not(.-ctaBtn-):not(.-primaryBtn-):not(.-secondaryBtn-):not(.-invertedBtn-) {
    color: inherit;
}

.contactContainer>a:not(.-ctaBtn-):not(.-primaryBtn-):not(.-secondaryBtn-):not(.-invertedBtn-):hover {
    color: var(--cta);
}

.contactContainer .phone {
    display: inline-block;
}

.contactContainer div {
    padding: 0.8em 1em;
}

/* removes mobile and tablet phone number link styling */
div.phone a,
div.mobile a {
    margin: 0;
    padding: 0;
    color: inherit;
    background: none;
    border: none;
    text-decoration: none;
    font-size: 1em;
}

@media all and (min-width:700px) {
    .scrollStart .logo {
        width: 100px;
    }

    .scrollStart #menu {
        margin-bottom: 0em;
    }


    .scrollStart #menu nav li a {
        font-size: 0.86em;
    }
}

.fixedTopWrap {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 101;

    transition: var(--transition);
}


@media all and (min-width:700px) {
    .scrollStart .fixedTopWrap {
        color: var(--fontColor);
        background: var(--white);
        box-shadow: 0 10px 15px -10px var(--opacity20);
    }
}

.siteTop {
    padding-top: 240px;
}

/* ---------------------------------- */
/* ----------- SUB BANNERS ---------- */
/* ---------------------------------- */

#subBannerHome,
#subBanner {}


#subBanner {
    position: relative;
    background: var(--primary);
    background-size: cover;
}

#subBanner .container {
    padding: 2% 2% 2% 2%;
    background-size: cover !important;
    background-position: center center !important;
    background: url("/thumbnaillarge/subBannerImage.jpg");
}

#subBanner h1 {
    font-size: 3em;
    color: #fff;
}

#section1 h1 {
    display: none;
}

/* ---------------------------------- */
/* ------ HOME/CONTACT STYLES ------- */
/* ---------------------------------- */
/* ---------------------------------- */
/* -------- SLIDESHOW STYLES -------- */
/* ---------------------------------- */

#subBannerHome .container {
    position: relative;
}

.sliderText {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 1em 2em;
    display: none;
}

.sliderText>* {
    color: var(--white);
    z-index: 2;
}

.sliderText:after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: var(--primary);
    opacity: 0.9;
}

#subBannerHome .sliderText a {
    position: relative;
    z-index: 4;
}

/*==============================*/
/*===== FLICKERPLATE STYLES ====*/
/*==============================*/

.flickerplate,
.flick-inner {
    /*Adjust This To Suit % Images*/
    /*This can be a pixel height */
    padding-bottom: 38%;
    height: 0;
}

.flickerplate {
    position: relative;
    width: 100%;
    background-color: var(--white);
    overflow: hidden;
}

.flickerplate ul.flicks {
    width: 10000%;
    height: 100%;
    padding: 0px;
    margin: 0px;
    list-style: none
}

.flickerplate li {
    float: left;
    width: 1%;
    height: 100%;
    background-position: center;
    background-size: cover;
    display: table;
    transition: var(--transition);
}

.flick-inner {
    display: table-cell;
    vertical-align: middle;
    position: relative;
}

.flick-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    max-width: var(--containerWidth);
    margin: auto;
    padding: 0 5%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* ADJUST TEXT POSITION HORIZONTALLY */
    align-items: flex-start;
    font-size: 1em;

}

.flick-title,
.flick-sub-text {
    width: 40%;
    text-align: left;
}

.flick-title {
    font-size: 2em;
    color: var(--white);
}

.flick-sub-text {
    font-size: 1.2em;
    color: var(--white);
    margin-bottom: 1em;
}

.flick-but {
    position: relative;
    z-index: 2;
    width: 15em;
}

/* FLICKER ARROW NAVIGATION */

.flickerplate .arrow-navigation {
    position: absolute;
    height: 80%;
    width: 10%;
    top: 10%;
    z-index: 3;
    cursor: pointer;
    overflow: hidden
}

.flickerplate .arrow-navigation .arrow {
    display: block;
    height: 100%;
    width: 100%;
    transition: opacity 0.2s ease-out;
    position: relative;
    opacity: 0;
}

.flickerplate .arrow-navigation .arrow:hover {
    opacity: 0.8;
}

.flickerplate .arrow-navigation .arrow:before {
    font-size: 3em;
    position: absolute;
    left: 0px;
    bottom: 0;
    width: 100%;
    height: 20%;
    font-family: FontAwesome;
    display: flex;
    align-items: center;
    justify-content: center;
    /* LIGHT THEME ARROW COLOUR */
    color: var(--white);
}

.flickerplate.flicker-theme-dark .arrow-navigation .arrow:before {
    /* DARK THEME ARROW COLOUR */
    color: var(--primary);
}

.flickerplate .arrow-navigation.left {
    left: 0
}

.flickerplate .arrow-navigation.right {
    right: 0
}

.flickerplate .arrow-navigation.left .arrow:before {
    content: "\f104";
}

.flickerplate .arrow-navigation.right .arrow:before {
    content: "\f105";
}

/* FLICKER DOT NAVIGATION */

.flickerplate .dot-navigation {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    z-index: 1;
}

.flickerplate .dot-navigation ul {
    list-style: none;
    margin: 1em 0;
    padding: 0px 5%;
    text-align: center;
    /* DOT HORIZONTAL POSITION */
    font-size: 0.8em;
    /* CIRCLE SIZE */
}

.flickerplate .dot-navigation ul li {
    display: inline-block;
    width: auto;
    float: none
}

.flickerplate .dot-navigation .dot {
    width: 1em;
    height: 1em;
    margin: 0px 0.5em;
    cursor: pointer;
    opacity: 0.3;
    transition: opacity 0.2s ease-out;
    border-radius: 50%;
    background-color: var(--white);
    /* LIGHT THEME DOT COLOUR */
}

.flickerplate.flicker-theme-dark .dot-navigation .dot {
    background-color: var(--primary);
    /* DARK THEME DOT */
}

.flickerplate .dot-navigation .dot:hover {
    opacity: 0.6;
}

.flickerplate .dot-navigation .dot.active {
    opacity: 1;
}

/* FLICKER ANIMATION CSS */

.flickerplate.animate-transition-slide ul.flicks {
    position: relative;
    left: 0%;
    transition: left 0.4s ease-in-out
}

.flickerplate.animate-transition-fade ul.flicks {
    position: relative
}

.flickerplate.animate-transition-fade ul.flicks li {
    float: none;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.flickerplate.animate-transition-fade.fade-inited ul.flicks li {
    transition: opacity 0.8s linear
}

.flickerplate.animate-transition-fade.fade-inited ul.flicks li.first-flick,
.flickerplate.animate-transition-slide ul.flicks li {
    opacity: 1;
}

/* FLICKER RESPONSIVE CONTROL */

@media all and (max-width: 1200px) and (min-width: 1000px) {
    .flick-content {
        font-size: 1em;
    }
}

@media all and (max-width: 999px) and (min-width: 700px) {

    /* MEDIUM */
    .flick-content,
    .arrow-navigation,
    .dot-navigation,
    .sliderText {
        font-size: 0.8em;
    }

    .flickerplate,
    .flick-inner {
        padding-bottom: 40%;
    }
}

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

    /* SMALL */
    .flick-content,
    .arrow-navigation,
    .dot-navigation {
        font-size: 0.6em;
    }

    .flickerplate,
    .flick-inner {
        padding-bottom: 50%;
    }

}

/* ---------------------------------- */
/* ----------- CUSTOM CSS ----------- */
/* ---------------------------------- */

.link0 #section2 .twoColumn>tbody>tr>td:first-child {
    width: 55%;
}




.link0 #section1 *,
.link0 #section4 .textSection * {
    color: #fff;
}

.link0 #section4 {
    position: relative;
    padding: 50px 0px;
}

.link0 #section4::before {
    content: "";
    position: absolute;
    top: 0%;
    right: 0%;
    left: 0;
    bottom: 0;
    height: 100%;
    background: url("/thumbnaillarge/_section3a.jpg");
    height: 65%;
    /*  background: rgb(197,16,47);
 background: linear-gradient(180deg, var(--cta) 0%, var(--cta) 65%, #fff 65%, #fff 23%, rgba(255,255,255,1) 100%); */
    background-size: contain;
    overflow: visible !important;
    z-index: 0;
    opacity: 1;
}

.link0 #section2,
.link0 #section4,
.link0 #section5 {
    position: relative;
    padding: 50px 0px;
    margin: 2em 0em;
}

.link0 #section2::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    width: 65%;
    height: 100%;
    background: #f7f7f7;
}

.link0 #section5::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: 0;
    right: 0;
    width: 65%;
    height: 100%;
    background: #f7f7f7;
}


/* .link0 .twoColumn td {
  background:#f7f7f7;
  padding:30px 30px;
} */

.link0 #section6 * {
    color: var(--primary);
    font-weight: 700;
}

.link0 #section6 .container {
    background: var(--primaryLight);

}

.customTable td {
    background: var(--primaryLight);
    padding: 40px 20px;
}

.customTable h5 {
    color: var(--primary);
}


.link1 .twoColumn td:last-child {
    background: #f7f7f7;
}

.link1 .twoColumn td:first-child {
    background: var(--cta);
    color: #fff;
}


.link1 .twoColumn td:first-child * {
    color: #fff;
}

table+p {
    display: none;
}

.siteContent ol {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    counter-reset: customCounter;
    list-style: none;
    padding: 0px;
}


.siteContent ol li strong {
    font-weight: 700;
    font-size: 1.2em;
    display: block;
    margin-bottom: 10px;
    color: var(--cta);
}


.siteBottom .siteContent ol li {
    background: var(--cta);
    position: relative;
    width: 22%;
    text-align: center;
    padding: 1em 2em;
    counter-increment: customCounter;
    transition: all .3s ease;
    text-align: center;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.3);
    margin: 0.5em;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.link3 .siteBottom .siteContent ol li {
    width: 33%;
}

.siteBottom .siteContent ol li * {
    color: #fff;
}

@media (max-width:700px) {
    .siteBottom .siteContent ol li {
        width: 100%;
    }

    .link3 .siteBottom .siteContent ol li {
        width: 100%;
    }
}

/*------------------------------------*/
/*---------- MEDIA QUERIES -----------*/
/*------------------------------------*/