* {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

body {
    font-family: Rubik, sans-serif;
    font-weight: 400;
    color: #878787;
    text-align: left;
    font-size: 17px;
}

header {
    display: flex;
    background-color: #a77243;
    color: #fff;
    width: 100%;
    font-style: normal;
    min-height: 100px;
    flex-direction: column;
}

.tanSection {
    background-color: #fff;
    padding: 15px 0px;
    color: #003b4a;
}

#mc_embed_signup input[type=checkbox] {
    margin-right: 10px;
}

.logoNav {
    display: flex;
    column-gap: 20px;
    justify-content: center;
}

a {
    transition: .5s;
    text-decoration: none;
    color: inherit;
}

h1 {
    text-transform: uppercase;
}

h2 {
    text-transform: uppercase;
    color: #a77243;
    font-size: 30px;
}

h3 {
    color: #878787;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 25px;
    color: #003b4a;
}

p {
    color: #706f6f;
}

hr {
    border-top: 1px solid #e5e5e5;
}

u {
    text-underline-offset: 8px;
    text-decoration-color: #e0d1a6;
    text-decoration-thickness: 2px;
    text-transform: uppercase;
    font-weight: bold;
}

.headerCenter {
    width: 100%;
    max-width: 1200px;
    margin: auto;
}

.eventsRow {
    column-gap: 20px;
    row-gap: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.eventsRow img {
    height: fit-content;
}

#headerText {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: white;
    position: absolute;
    left: 30px;
}

    #headerText span {
        color: #595959;
    }

    #headerText a {
        text-decoration: none;
        color: inherit;
        padding-top: 10px;
    }

.headerLogoContainer {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.headerInfoContainer {
    display: flex;
    flex-direction: column;
}

    .headerInfoContainer p {
        color: #003b4a;
    }


.headerRight {
    display: flex;
    column-gap: 10px;
    align-items: center;
    justify-content: space-evenly;
}

.icon {
    width: 36px;
    height: 38px;
    margin-right: 20px;
}

#doorDesigner {
    margin-bottom: 50px;
}

#navContainer {
    display: flex;
}

#navList {
    width: 100%;
    list-style: none;
    display: flex;
    margin: auto;
}

    #navList li a {
        margin-left: 5px;
        padding-right: 5px;
        text-transform: uppercase;
        font-weight: 200;
        font-size: 14px;
    }

        #navList li a:hover {
            color: grey;
        }

    #navList li {
        margin-right: 30px;
        padding: 20px 0px;
    }

#siteSurveyButton {
    color: #f29222;
    background-color: #333333;
}

    #siteSurveyButton a:hover {
        color: grey !important;
    }

#navHolder {
    display: flex;
    align-items: center;
}

#mobileNav {
    display: none;
}

/* The Modal (background) */
.modal {
    display: block; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 9999; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: hidden; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 80px;
    border: 1px solid #888;
    width: 30%;
    text-align: center;
}

/* The Close Button */
.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

    .close:hover,
    .close:focus {
        color: black;
        text-decoration: none;
        cursor: pointer;
    }


/* The subnavigation menu */
.subNavigation {
    float: left;
    overflow: hidden;
    z-index: 10000;
}

    /* Subnav button */
    .subNavigation .subNavigationBtn {
        background-color: inherit;
        font-family: inherit;
    }

    /* Add a grey background color to navigation links on hover */
    nav a:hover, .subNavigation:hover .subNavigationBtn {
        color: grey;
    }

/* Style the subnav content - positioned absolute */
.subNavigationContent {
    display: none;
    position: absolute;
    background-color: #003B4A;
    width: 250px;
    z-index: 1;
    padding: 10px;
    list-style: none;
    padding-top: 30px;
}

    .subNavigationContent li {
        border-right: none !important;
        padding: 10px 0px !important;
        width: 250px;
        height: 20px;
    }

    /* Style the subnav links */
    .subNavigationContent a {
        float: left;
        text-decoration: none;
    }

        /* Add a grey background color on hover */
        .subNavigationContent a:hover {
        }

/* When you move the mouse over the subnav container, open the subnav content */
.subNavigation:hover .subNavigationContent {
    display: block;
}


#headerSocial {
}

.ws_cover {
}

#homepageHero {
    width: 100%;
    max-height: 900px;
    overflow: hidden;
    position: relative;
}

.heroText {
    position: absolute;
    z-index: 1000;
    top: 35%;
    color: white;
    transition: 0.5s;
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    align-items: center;
}

    .heroText h1 {
        font-size: 72px;
        font-weight: 500;
    }

    .heroText img {
        width: 45px;
    }

#heroBook {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 100;
}

.contentCenter {
    width: 1200px;
    margin: 0 auto;
}

.bookingContainer {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    color: #fff;
    background-color: #a77243;
    padding: 25px 40px;
    column-gap: 20px;
}

    .bookingContainer * {
        color: #fff;
    }

    .bookingContainer > div {
        display: flex;
        flex-direction: column;
        row-gap: 10px;
    }

    .bookingContainer h2 {
        font-weight: 100;
        text-align: center;
    }

.iframeContainer {
    width: 100%;
}

.row {
    display: flex;
}

.green {
    color: #f29222;
}

#myBuilderRow {
    column-gap: 20px;
    align-items: center;
}

    #myBuilderRow img {
        max-width: 500px;
    }

#aboutTop {
    column-gap: 20px;
    row-gap: 20px;
}

    #aboutTop div {
        width: 50% !important;
    }

        #aboutTop div img {
            max-width: 100%;
        }

.logo {
    width: 180px;
}

.button {
    text-transform: uppercase;
    text-decoration: none;
    color: #706f6f;
    font-weight: 500;
    padding: 15px 30px;
    transition: .5s;
    font-size: 20px;
    display: inline-block;
    cursor: pointer;
}


.tanButton {
    background-color: #fff;
    min-width: 165px;
    text-align: center;
    padding: 20px 30px;
    border: 2px solid #e0d1a6;
    margin-bottom: 20px;
}

    .tanButton:hover {
        background-color: #e0d1a6;
    }

.clearButton {
    background: none;
    box-shadow: 0px 0px 0px 1px white inset;
    margin-top: 30px;
    margin-right: 20px;
}

    .clearButton:hover {
        background: rgba(255, 255, 255, .5)
    }

.blackButton {
    background-color: #2e2e2e;
    color: white;
}

    .blackButton:hover {
        background-color: #815b00;
    }

#MainContent_contactSubmit {
    width: unset !important;
    border: 2px solid #e0d1a6 !important;
}

.goldButton {
    background-color: #815b00;
    margin-top: 30px;
    border: none !important;
    font-style: normal;
    text-transform: uppercase;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: .5s;
    padding: 15px 40px !important;
}


    .goldButton:hover, #MainContent_contactSubmit:hover {
        
    }

.bodySection, .whiteSection {
    background-color: #fff;
    width: 100%;
    padding: 40px 0;
    text-align: center;
}

.blueSection {
    background-color: #00477b;
    padding: 30px 0px;
}

    .blueSection h2 {
        text-transform: uppercase;
        font-weight: 900;
        color: #fff;
        font-size: 40px;
    }

        .blueSection h2 span {
            background-color: #75c406;
            padding: 0px 5px;
        }

.whiteSection .bigHeading, .greySection .bigHeading, .whiteSection h1, .greySection h1, .contactSection .bigHeading {
    font-size: 40px;
    text-transform: uppercase;
}

.text {
    margin-right: 20px;
}

.textRight {
    margin-left: 40px;
}

.greySection {
    width: 100%;
    padding: 30px 0px;
    background-color: #333333;
}

    .greySection h2 {
        margin-bottom: 15px;
        color: #f29222;
        transition: 0.4s;
    }

        .greySection h2:hover {
            color: #fff;
        }

    .greySection .arrows {
        color: #fff;
    }

    .greySection p {
        color: #fff;
    }

    .greySection h1:after {
        content: "";
        display: block;
        width: 50px;
        height: 3px;
        background-color: #d68112;
        margin: 15px 0px;
    }

.tanSection .row {
    color: #fff;
    text-align: left;
    column-gap: 20px;
    align-items: center;
}

.grey {
    background-color: #c7c7cf;
    background: url(../images/faq-bg.jpg);
    background-position: center;
    background-size: cover;
}

    .grey h2 {
        text-align: center;
        margin-top: 20px;
        font-size: 35px;
        margin-bottom: 20px;
        color: #333;
    }

    .grey p {
        text-align: center;
        color: #333;
    }

.faqContainer {
    padding: 30px 0px;
    max-width: 75%;
    margin: auto;
}

.concertina {
    color: white;
    background-color: #fff;
    margin-bottom: 10px;
    text-align: left;
}

    .concertina h3 {
        color: #f29222;
        text-transform: revert;
        font-size: 18px;
        padding: 0px;
        text-align: left;
    }

    .concertina p {
        color: #000;
        text-align: left;
    }

    .concertina:nth-child(3n) {
    }

    .concertina:nth-child(3n+1) {
    }

    .concertina:nth-child(3n+2) {
    }

    .concertina .title {
        display: flex;
        font-size: 1em;
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 10px;
        padding-bottom: 10px;
        justify-content: space-between;
        align-items: center;
    }

        .concertina .title:hover {
            cursor: pointer;
        }



    .concertina .content {
        display: none;
        padding: 20px;
        font-size: 1.0em;
    }

    .concertina .arrow {
        transition: 0.5s ease;
        text-align: right;
        color: #f29222;
    }

        .concertina .arrow.open {
            transform: rotate(90deg)
        }

#customerRow {
    font-family: 'Fira-Sans', sans-serif;
}

    #customerRow h2 {
        text-transform: revert;
        font-weight: 500;
        font-size: 35px;
        margin-bottom: 40px;
    }

.text {
    margin-right: 20px;
}

.centerBar::after {
    content: "";
    display: block;
    width: 50px;
    height: 3px;
    background-color: #d68112;
    margin: 15px auto 0px !important;
}

.largeText {
    font-size: 25px;
    color: black;
}

.videoContainer {
    position: absolute;
    right: 0;
    width: 40% !important;
    margin-top: 50px;
}

.videoText {
    width: 50%;
}

video {
    width: 100%;
}

    video:hover {
        cursor: pointer;
    }

.goldRow {
    background-color: #b68103;
    padding: 20px 0px;
    margin: 80px 0px;
}

#goldRow {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.goldText {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    color: white;
}

    .goldText p {
        color: white;
    }

    .goldText img {
        width: 300px;
    }

    .goldText .clearButton {
        margin: 0px;
    }

    .goldText h1 {
        color: white;
        font-size: 40px;
        font-weight: 800;
        margin-bottom: 28px;
    }

.blackSection {
    background-color: #252525;
    width: 100%;
    padding: 65px 0;
    color: white;
    text-align: left;
}

    .blackSection h4 {
        font-weight: normal;
    }

.bodySection h2, .greySection h2, .whiteSection h2 {
    margin-bottom: 20px;
}

#mapSection iframe {
    width: 100%;
    height: 600px;
    display: block
}

.goldSection {
    background: url(../images/gold-bg.jpg);
    width: 100%;
    background-position: center;
    background-size: contain;
}

#callToAction {
    color: white;
    font-weight: 100;
}

#callToActionRow {
    justify-content: space-between;
    padding: 50px 0px;
}

.bodySection p, .greySection p, .whiteSection p {
    margin-bottom: 20px
}

.bodySection ul {
    max-width: 900px;
    margin: 0 auto;
    margin-bottom: 20px;
    color: #6e6e6e;
    line-height: 1.5em;
    text-align: left;
    list-style-position: inside
}

.companyLogos {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}

    .companyLogos img {
        width: 200px;
    }

#marsh {
    width: 100px;
    margin: auto;
    display: block;
}

#serviceLinks {
    display: flex;
    grid-gap: 30px;
    margin: 50px 0;
}

    #serviceLinks > div {
        position: relative;
        overflow: hidden;
        width: 170px;
        background: white;
        padding: 0px 20px;
        filter: drop-shadow(0 0 6px lightgrey);
    }

        #serviceLinks > div > img {
            position: absolute;
            top: 20px;
            right: -25px;
        }

    #serviceLinks div a h2 {
        position: relative;
        color: #fff;
        font-family: montserrat,sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        margin: 66px 0 30px;
        font-size: 25px
    }

    #serviceLinks > div > a {
        position: absolute;
        width: 200px;
        color: #fff;
        font-family: montserrat,sans-serif;
        font-weight: 700;
        font-size: 25px;
        text-transform: uppercase;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
        text-decoration: none
    }


.textCenter {
    text-align: center;
    margin: auto;
    padding: 0px 100px;
}

    .textCenter h3 {
        margin-bottom: 20px;
    }

.logoContainer {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-around;
}


#statsGrid {
    color: #fff;
    font-family: montserrat,sans-serif;
    text-transform: uppercase;
    display: grid;
    grid-template-columns: repeat(5,210px);
    justify-content: center;
    width: 1050px;
    margin: 0 auto;
    border-left: 1px solid #d8bf56
}

    #statsGrid > div {
        border-right: 1px solid #d8bf56;
        padding: 60px 10px
    }

    #statsGrid h2 {
        font-weight: 700;
        font-size: 3em
    }



.tabsGrid img {
    height: 266px;
    width: 100%;
}

.tabsGrid:hover {
    cursor: pointer;
}

.clearSection {
    margin-top: -87px;
    z-index: 999;
    position: relative;
}

.ourRoomsGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

.ourRoomsGridContainer {

}

.ourRoomsGridContainer img {
    max-width: 100%;
}

#treatmentGallery {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.servicesGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

.servicesContainer {
    text-align: left;
    justify-content: center;
    transition: 0.5s;
    position: relative;
    border: 2px solid #f29222;
    border-radius: 10px;
}

.servicesHeader {
    background-color: #f29222;
    padding: 10px 20px;
    min-height: 65px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.4s;
    text-align: center;
}

    .servicesHeader h2 {
        color: #fff;
        text-transform: uppercase;
        font-size: 25px;
    }

.servicesMessage {
    align-self: flex-end;
    background-color: #333;
    color: #fff;
    padding: 0px 10px;
    border-radius: 15px;
    opacity: 0;
    transition: 0.4s;
}

.servicesHeader .arrows {
    color: #000;
    transition: 0.4s;
}



.servicesContainer:hover {
    cursor: pointer;
    border: 2px solid #333;
}

    .servicesContainer:hover .servicesHeader {
        background-color: #333;
    }

    .servicesContainer:hover .servicesImg {
        filter: hue-rotate(286deg);
    }

    .servicesContainer:hover .arrows {
        color: #f29222;
    }

    .servicesContainer:hover .servicesMessage {
        opacity: 1;
    }

.servicesContainer a {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.servicesText {
    display: flex;
    flex-direction: column;
    position: relative;
    transition: 0.5s;
    height: 100%;
    padding: 10px 20px;
}

.servicesContainerText b {
    align-self: flex-end;
    width: 100%;
    display: block;
    margin-top: auto;
    margin-bottom: 10px;
}

.servicesContainer h3 {
    font-weight: bold;
    font-size: 18px;
    transition: 0.5s;
    margin-bottom: 10px;
}

.servicesContainer p {
    transition: 0.5s;
}

.servicesContainer img {
    position: relative;
}

.imgGradient {
    position: relative;
    display: inline-block;
    transition: 0.5s;
}

.introRow {
    display: flex;
    column-gap: 40px;
    justify-content: space-between;
}

.introLeft {
    width: 100%;
    text-align: center;
}

.introLeft img {
    max-width: 100%;
}

.introRight {
    width: 100%;
}

.introRow h2 {
}

.introRow ul {
    list-style: none;
}

    .introRow ul li {
        margin: 20px 0px;
        text-align: left;
    }

        .introRow ul li:before {
            content: "\2022"; /* Add content: \2022 is the CSS Code/unicode for a bullet */
            color: #003B4A; /* Change the color */
            font-weight: bold; /* If you want it to be bold */
            display: inline-block; /* Needed to add space between the bullet and the text */
            width: 1em; /* Also needed for space (tweak if needed) */
            margin-left: -1em; /* Also needed for space (tweak if needed) */
        }

#guarantee {
    position: absolute;
    right: 50px;
}

#callUsNow {
    justify-content: center;
    align-items: center;
    column-gap: 20px;
    text-align: center;
}

.howWeWork {
    padding: 50px 20px;
    text-align: center;
    justify-content: center;
    transition: 0.5s;
}


    .howWeWork > h2 {
        font-weight: 600;
        font-size: 22px;
    }

    .howWeWork > p {
        font-size: .9em;
        transition: 0.5s;
    }

    .howWeWork > img {
        border-radius: 100px;
    }

        .howWeWork > img:hover {
            border: 3px solid #ab7830;
            cursor: pointer;
        }

.gold {
    color: #ab7830;
}

.mapSection h1 {
    font-family: montserrat,sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #2e2e2e;
    margin: 10px 0
}

#serviceDetail {
    display: grid;
    grid-template-columns: repeat(3,300px);
    justify-content: center;
    text-align: left;
    grid-gap: 45px;
    margin: 40px 0 70px
}

    #serviceDetail > div > p {
        font-size: .9em
    }

    #serviceDetail > div > h2 {
        font-family: montserrat,sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        font-size: 1.6em;
        margin-bottom: 20px
    }

    #serviceDetail > div > a {
        text-decoration: none;
        font-family: montserrat,sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        font-size: 1.6em;
        margin-bottom: 20px
    }

.roomsGrid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0, 1fr));
    margin-bottom: 30px;
}

.roomsGridContainer img {
    width: 100%;
}

.roomsGridContainer h2:after {
    content: "";
    display: block;
    height: 2px;
    background-color: #e0d1a6;
    margin: 10px 0px;
}

.roomText {
    padding: 0px 37px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    row-gap: 20px;
    box-sizing: border-box;
}

.roomsGridContainer {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    row-gap: 20px;
    box-sizing: border-box;
}

.priceNote {
    font-weight: bold;
    text-transform: uppercase;
}

.foodImgGrid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0, 1fr));
    grid-column-gap: 20px;
    margin-bottom: 0px;
    padding: 40px 0px;
    padding-top: 70px;
}

.foodImgGridContainer {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    text-align: center;
}

    .foodImgGridContainer img {
        width: 100%;
    }

    .foodImgGridContainer a {
        font-weight: bold;
        text-decoration: underline;
        text-underline-offset: 8px;
        text-decoration-color: #706f6f;
        text-decoration-thickness: 2px;
        text-transform: uppercase;
        font-weight: bold;
        transition: 0.5s;
    }

        .foodImgGridContainer a:hover {
            color: #003b4a;
        }

.swiper-container {
    display: none;
}

.swiper-wrapper {
    display: none !important;
}

.eyecatcher {
    display: none;
}



.musicGrid {
    display: grid;
    grid-template-columns: repeat(6,minmax(0, 1fr));
    grid-column-gap: 10px;
    margin-bottom: 0px;
    padding: 40px 0px;
    padding-top: 70px;
}

.musicGridContainer {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    text-align: center;
}

    .musicGridContainer img {
        width: 100%;
    }


#imageGrid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0, 1fr));
    grid-column-gap: 20px;
    margin-bottom: 30px;
}

.imageGridElement {
    background-color: #f1f1f1
}

    .imageGridElement img {
        margin-top: 20%
    }

    .imageGridElement h1 {
        font-family: montserrat,sans-serif;
        font-weight: 600;
        text-transform: uppercase;
        color: #575757;
        font-size: 2.5vw;
        margin-top: 5%
    }

        .imageGridElement h1::after {
            margin-top: 10%
        }

.imageGridImage {
    position: relative;
}

    .imageGridImage img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: -1;
    }

    .imageGridImage a {
        z-index: 10;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 30%;
        text-align: center;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }

        .imageGridImage a h2 {
            transition: 0.4s;
        }

        .imageGridImage a:hover h2 {
            color: #878787;
        }

    .imageGridImage .bigHeading {
        text-transform: uppercase;
        color: #fff;
        text-decoration: underline;
        font-size: 40px;
        text-decoration-color: #75c406;
    }

.blogGrid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0, 1fr));
    row-gap: 20px;
    column-gap: 30px;
}

.blogContainer {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    border: 1px solid #878787;
    padding: 10px;
}

    .blogContainer h3 {
        text-transform: unset;
    }

    .blogContainer h5 {
        color: #000;
    }

    .blogContainer a:hover {
        color: #878787;
    }

.interiorBlogGrid {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    column-gap: 20px;
    margin-top: 40px;
}

    .interiorBlogGrid .blogContainer {
        padding: 0px;
        border: 0px;
        border-bottom: 1px solid #878787;
        display: flex;
        flex-direction: row;
        column-gap: 20px;
        row-gap: 20px;
        padding-bottom: 20px;
    }

    .interiorBlogGrid .interiorBlogHeader {
        display: flex;
        flex-direction: column;
        row-gap: 20px;
        margin-bottom: 20px;
        justify-content: space-between;
    }

    .interiorBlogGrid .blogContainer img {
        height: fit-content;
    }

.interiorContent h2 {
    font-family: trajan-pro-3,serif;
    font-size: 1.5em
}

    .interiorContent h2::after {
        content: "";
        display: block;
        width: 50px;
        height: 2px;
        background-color: #c7a40d;
        margin: 15px auto 20px
    }

.interiorContent img {
    width: 100%;
    max-width: 400px
}

#testimonialGrid {
    display: grid;
    grid-template-columns: repeat(2,47.5%);
    grid-column-gap: 5%;
    grid-row-gap: 50px;
    margin: 60px 0
}

    #testimonialGrid > div {
        display: grid;
        grid-template-columns: 110px auto;
        grid-gap: 20px;
        text-align: left
    }

.blogElement h2, .testimonialGridText h2 {
    font-family: montserrat,sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.1em
}


.videoThumb {
    display: block;
    width: 50%;
}


#testimonialGrid {
    display: grid;
    grid-template-columns: repeat(2,47.5%);
    grid-column-gap: 5%;
    grid-row-gap: 50px;
    margin: 60px 0
}

    #testimonialGrid > div {
        display: grid;
        grid-template-columns: 110px auto;
        grid-gap: 20px;
        text-align: left
    }

.blogElement h2, .testimonialGridText h2 {
    font-family: montserrat,sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1.1em
}

.testimonialGridText h3 {
    display: inline-block;
    font-style: italic;
    font-weight: 300;
    color: #333
}

    .testimonialGridText h3::after {
        content: "";
        display: block;
        width: 70px;
        height: 2px;
        background-color: #c7a40d;
        margin: 15px 0 20px
    }

.testimonialSlider {
    max-width: 1000px;
    margin: 0 auto;
    position: relative
}

.testimonialSliderElement {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    align-content: center;
    padding: 0 60px
}

.testimonialSliderText {
    text-align: center;
    padding: 25px
}

    .testimonialSliderText p {
    }

    .testimonialSliderText h3 {
        font-size: 17px;
        color: #706f6f;
        font-weight: bold;
        text-transform: unset;
    }

.sliderLeft {
    position: absolute;
    left: 8px;
    top: 40%
}

    .sliderLeft:hover {
        cursor: pointer;
    }

.sliderRight {
    position: absolute;
    right: 8px;
    top: 40%
}

    .sliderRight:hover {
        cursor: pointer;
    }




.testimonialsContainer {
    display: grid;
    grid-template-columns: repeat(6,auto);
    column-gap: 20px;
    row-gap: 20px;
}

#customer {
    margin-bottom: -40px;
    margin-left: -100px;
}

#closeQuote {
    align-self: end;
    margin-right: -100px;
}

.testimonial {
    display: flex;
    flex-direction: column;
}

    .testimonial span {
        font-size: 20px;
    }

    .testimonial p {
        font-size: 18px;
        font-weight: bold;
    }

    .testimonial .client {
        font-weight: normal;
    }

    .testimonial img {
        max-width: 100%;
    }


footer {
    background: url('../images/footer-bg.jpg');
    position: center;
    background-size: cover;
    color: #fff;
}

#footerRow {
    display: flex;
    column-gap: 20px;
    row-gap: 20px;
}

    #footerRow p {
        color: #fff;
    }

.footerContainer {
    padding: 40px;
    text-align: left;
    color: #fff !important;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    width: 100%;
    justify-content: flex-end;
    font-family: 'Fira Sans', sans-serif;
}

    .footerContainer h2 {
        font-weight: normal;
        font-size: 20px;
    }

    .footerContainer a {
        color: #fff;
        margin-top: 10px;
        margin-bottom: 10px;
        display: block;
        transition: 0.5s;
        display: flex;
        align-content: center;
        column-gap: 10px;
    }

        .footerContainer a:hover {
            color: #878787;
        }

#footerLogoContainer {
    align-items: center;
}

#footerLogo {
    max-width: 200px;
}

textarea {
    height: 100px !important;
}

select {
    padding: 0px 15px !important;
}

.contactFormText {
    width: 100%;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 300px;
}

    .contactFormText h1 {
        color: white;
        font-size: 40px;
        font-weight: 800;
        margin-bottom: 28px;
    }

    .contactFormText p {
        color: white;
    }

    .contactFormText h1:after {
        content: "";
        display: block;
        width: 50px;
        height: 3px;
        background-color: #d68112;
        margin: 15px 0px 0px;
    }

#contactForm {
    width: 100%;
    display: flex;
    flex-direction: column;
    row-gap: 5px;
}

.contactFormElement {
    display: flex;
    column-gap: 20px;
    justify-content: space-between;
}

#contactForm input {
    border: none;
    padding: 10px;
    box-sizing: border-box;
    min-height: 35px;
    width: 100%;
    font-family: 'Fira Sans', sans-serif;
}

#contactForm textArea {
    width: 100%;
    border: none;
    padding: 10px;
    box-sizing: border-box;
    min-height: 150px;
    font-family: 'Fira Sans', sans-serif;
}

#contactSubmit {
    background-color: #333333;
    color: #fff;
    text-transform: uppercase;
    transition: 0.5s;
}

    #contactSubmit:hover {
        background-color: #878787;
        cursor: pointer;
    }

.formLabel {
    display: block
}

.g-recaptcha {
    display: inline-block;
    width: 100%
}

#galleryBody {
    padding-top: 0px;
}

#gallery {
    width: 98%;
    margin: auto;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 24.5%);
    grid-gap: 10px;
    min-height: 600px;
}

    .gallery-grid img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

        .gallery-grid img:hover {
            cursor: pointer;
        }

#loadMore {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 103px;
}

.aboutLink {
    filter: initial !important;
    overflow: initial !important;
}

.aboutText {
}

.aboutHeadingContainer {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

    .aboutHeadingContainer h3 {
        font-size: 22px;
    }

    .aboutHeadingContainer img {
        margin-right: 20px;
    }

.roundedButton {
    display: flex;
    background: white;
    margin-left: auto;
    color: black;
    padding: 10px 30px;
    max-height: 25px;
    align-self: center;
    border-radius: 30px;
}

    .roundedButton:hover {
        -moz-box-shadow: inset 0 0 6px #000000;
        -webkit-box-shadow: inset 0 0 6px #000000;
        box-shadow: inset 0 0 6px #000000;
    }

.whatWeDoGrid {
    text-align: center;
}

.whatWeDoContainer h3 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 22px;
}


.aboutText ul {
    padding-top: 100px;
    padding-bottom: 20px;
    padding-left: 50px;
    padding-right: 50px;
    font-size: 22px;
}

    .aboutText ul li {
        margin: 10px 0px;
    }

.locationsText ul {
    font-size: 22px;
    margin-bottom: 50px;
}

    .locationsText ul li {
        margin: 10px 0px;
    }

.locationsText h2 {
    margin-bottom: 30px;
}

.freeImg {
    width: 100%;
    display: block;
    margin: auto;
}

.formContainer {
    width: 100%;
}

.contactBox {
    display: flex;
    column-gap: 20px;
    align-content: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

    .contactBox div {
        display: flex;
        flex-direction: column;
        justify-content: center;
        row-gap: 10px;
    }

#contactForm input {
    width: 100%;
    border-bottom: 2px solid #e0d1a6 !important;
}

#videoBanner {
    width: 100%;
    background: url('../images/video-banner.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

#warmroofBanner {
    width: 100%;
    background: url('../images/warmroofs-bg-1.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

#videoBanner {
    width: 100%;
    background: url('../images/video-banner.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.videoOverlayText {
}

    .videoOverlayText h2 {
        color: white;
        font-size: 35px;
        padding: 50px;
    }

    .videoOverlayText p {
        color: white;
    }

.teamGrid {
    text-align: center;
    display: grid;
    grid-template-columns: repeat(4, auto);
    grid-row-gap: 20px;
    grid-column-gap: 20px;
}

.teamContainer {
    min-height: 330px;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center !important;
}

.teamText {
    width: 98%;
    margin: auto;
    margin-top: 275px;
    margin-bottom: 1px;
    background: rgba(255, 255, 255, .7);
    padding-top: 8px;
    padding-bottom: 10px;
}

    .teamText h2 {
        font-size: 22px;
        font-weight: 300;
        color: #4f5053;
    }

    .teamText h3 {
        font-weight: 300;
        color: #8b8c8e;
    }

.contactPage {
    margin-top: 0px !important;
}

.contactPageForm {
    width: unset !important;
}

.paintingBG {
    background: url(../images/painted-BG.jpg);
    min-height: 870px;
    padding-top: 100px;
    background-position: center;
}

    .paintingBG * {
        color: #fff;
        text-transform: unset;
        text-align: center;
        margin-bottom: 20px;
    }

    .paintingBG h2 {
        font-weight: 500;
    }

    .paintingBG p {
        font-size: 25px;
        font-weight: 100;
    }

    .paintingBG div {
        padding: 20px;
        max-width: 300px;
        background-color: rgb(0, 0, 0, 0.3);
    }

#copyrightRow {
    background-color: #e0d1a6;
    justify-content: center;
    padding: 20px;
    color: #003b4a;
    flex-wrap: wrap;
}

    #copyrightRow a:hover {
        color: grey;
    }

#scrollTopButton {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    font-size: 50px;
    z-index: 999999;
    background-color: #333;
    color: #f29222;
    padding: 10px 10px 0px 10px;
    right: 10px;
    bottom: 10px;
    border-radius: 5px;
}

    #scrollTopButton:hover {
        color: #fff;
    }

.galleryHolder {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-auto-rows: 300px;
    grid-gap: 10px;
    margin-bottom: 50px;
}

    .galleryHolder .galleryItem div {
        height: 100%;
        background-size: cover;
        background-position: center;
    }

.galleryItem:hover {
    cursor: pointer;
}






.cc-window {
    opacity: 1;
    transition: opacity 1s ease
}

    .cc-window.cc-invisible {
        opacity: 0
    }

.cc-animate.cc-revoke {
    transition: transform 1s ease
}

    .cc-animate.cc-revoke.cc-top {
        transform: translateY(-2em)
    }

    .cc-animate.cc-revoke.cc-bottom {
        transform: translateY(2em)
    }

    .cc-animate.cc-revoke.cc-active.cc-bottom, .cc-animate.cc-revoke.cc-active.cc-top, .cc-revoke:hover {
        transform: translateY(0)
    }

.cc-grower {
    max-height: 0;
    overflow: hidden;
    transition: max-height 1s
}

.cc-link, .cc-revoke:hover {
    text-decoration: underline
}

.cc-revoke, .cc-window {
    position: fixed;
    overflow: hidden;
    box-sizing: border-box;
    font-family: Helvetica,Calibri,Arial,sans-serif;
    font-size: 16px;
    line-height: 1.5em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    z-index: 9999
}

    .cc-window.cc-static {
        position: static
    }

    .cc-window.cc-floating {
        padding: 2em;
        max-width: 24em;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .cc-window.cc-banner {
        padding: 1em 1.8em;
        width: 100%;
        -ms-flex-direction: row;
        flex-direction: row
    }

.cc-revoke {
    padding: .5em
}

.cc-header {
    font-size: 18px;
    font-weight: 700
}

.cc-btn, .cc-close, .cc-link, .cc-revoke {
    cursor: pointer
}

.cc-link {
    opacity: .8;
    display: inline-block;
    padding: .2em
}

    .cc-link:hover {
        opacity: 1
    }

    .cc-link:active, .cc-link:visited {
        color: initial
    }

.cc-btn {
    display: block;
    padding: .4em .8em;
    font-size: .9em;
    font-weight: 700;
    border-width: 2px;
    border-style: solid;
    text-align: center;
    white-space: nowrap
}

.cc-banner .cc-btn:last-child {
    min-width: 140px
}

.cc-highlight .cc-btn:first-child {
    background-color: transparent;
    border-color: transparent
}

    .cc-highlight .cc-btn:first-child:focus, .cc-highlight .cc-btn:first-child:hover {
        background-color: transparent;
        text-decoration: underline
    }

.cc-close {
    display: block;
    position: absolute;
    top: .5em;
    right: .5em;
    font-size: 1.6em;
    opacity: .9;
    line-height: .75
}

    .cc-close:focus, .cc-close:hover {
        opacity: 1
    }

.cc-revoke.cc-top {
    top: 0;
    left: 3em;
    border-bottom-left-radius: .5em;
    border-bottom-right-radius: .5em
}

.cc-revoke.cc-bottom {
    bottom: 0;
    left: 3em;
    border-top-left-radius: .5em;
    border-top-right-radius: .5em
}

.cc-revoke.cc-left {
    left: 3em;
    right: unset
}

.cc-revoke.cc-right {
    right: 3em;
    left: unset
}

.cc-top {
    top: 1em
}

.cc-left {
    left: 1em
}

.cc-right {
    right: 1em
}

.cc-bottom {
    bottom: 1em
}

.cc-floating > .cc-link {
    margin-bottom: 1em
}

.cc-floating .cc-message {
    display: block;
    margin-bottom: 1em
}

.cc-window.cc-floating .cc-compliance {
    -ms-flex: 1;
    flex: 1
}

.cc-window.cc-banner {
    -ms-flex-align: center;
    align-items: center
}

.cc-banner.cc-top {
    left: 0;
    right: 0;
    top: 0
}

.cc-banner.cc-bottom {
    left: 0;
    right: 0;
    bottom: 0
}

.cc-banner .cc-message {
    -ms-flex: 1;
    flex: 1
}

.cc-compliance {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: justify;
    align-content: space-between
}

    .cc-compliance > .cc-btn {
        -ms-flex: 1;
        flex: 1
    }

.cc-btn + .cc-btn {
    margin-left: .5em
}

@media print {
    .cc-revoke, .cc-window {
        display: none
    }
}

@media screen and (max-width:900px) {
    .cc-btn {
        white-space: normal
    }
}

@media screen and (max-width:414px) and (orientation:portrait),screen and (max-width:736px) and (orientation:landscape) {
    .cc-window.cc-top {
        top: 0
    }

    .cc-window.cc-bottom {
        bottom: 0
    }

    .cc-window.cc-banner, .cc-window.cc-left, .cc-window.cc-right {
        left: 0;
        right: 0
    }

    .cc-window.cc-banner {
        -ms-flex-direction: column;
        flex-direction: column
    }

        .cc-window.cc-banner .cc-compliance {
            -ms-flex: 1;
            flex: 1
        }

    .cc-window.cc-floating {
        max-width: none
    }

    .cc-window .cc-message {
        margin-bottom: 1em
    }

    .cc-window.cc-banner {
        -ms-flex-align: unset;
        align-items: unset
    }
}

.cc-floating.cc-theme-classic {
    padding: 1.2em;
    border-radius: 5px
}

.cc-floating.cc-type-info.cc-theme-classic .cc-compliance {
    text-align: center;
    display: inline;
    -ms-flex: none;
    flex: none
}

.cc-theme-classic .cc-btn {
    border-radius: 5px
}

    .cc-theme-classic .cc-btn:last-child {
        min-width: 140px
    }

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
    display: inline-block
}

.cc-theme-edgeless.cc-window {
    padding: 0
}

.cc-floating.cc-theme-edgeless .cc-message {
    margin: 2em 2em 1.5em
}

.cc-banner.cc-theme-edgeless .cc-btn {
    margin: 0;
    padding: .8em 1.8em;
    height: 100%
}

.cc-banner.cc-theme-edgeless .cc-message {
    margin-left: 1em
}

.cc-floating.cc-theme-edgeless .cc-btn + .cc-btn {
    margin-left: 0
}

/*jQuery overwrite*/

.ui-widget.ui-widget-content {
    border: none !important;
}

.ui-widget-header {
    border: none !important;
    background: none !important;
    color: inherit !important;
    font-weight: inherit !important;
}

.ui-tabs .ui-tabs-panel {
    clear: both;
}

.ui-tabs .ui-tabs-nav {
}


.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: none !important;
    background: none !important;
    color: inherit !important;
    font-weight: inherit !important;
}

    .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
        border: none !important;
        background: none !important;
        font-weight: inherit !important;
        color: #ab7830 !important;
        text-decoration: underline !important;
    }

        .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
            color: #ab7830 !important;
            text-decoration: underline !important;
        }

#myBuilder {
    max-width: 150px;
}

#lblContactBookingMessage {
    color: #fff;
}
