﻿body {
    color: #666666;
}

h1, h2, h3, h4, h5, h6 {
}

p, div {
}

/* Lead Form Styles */
.outer {
    background: #00aeef;
    overflow-x: hidden;
}

#leadFormContainer {
    background: #00aeef;
}

.leadFormWrapper {
    max-width: 580px;
    margin: 15px auto;
    padding: 30px;
    background: #ffffff;
    border-radius: 10px;
    -webkit-box-shadow: 0 0 25px -10px #000;
    box-shadow: 0 0 25px -10px #000;
}

.leadFormTitle {
    font-size: 36px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px;
    color: #333333;
    line-height: 1.2;
}

.leadFormTitle .highlight {
    color: #00aeef;
}

.leadFormSubtitle {
    font-size: 16px;
    text-align: center;
    margin-bottom: 10px;
    color: #666666;
    line-height: 1.5;
}

.leadFormContent {
    width: 100%;
}

.leadFormFieldset {
    margin-bottom: 15px;
}

.leadFormFieldset > div {
    min-height: 38px;
}

.leadFormFieldset label {
    display: none;
}

/* Move placeholder text up */
.leadFormFieldset .dx-placeholder {
    top: -4px;
}

/* Set field height to 38px */
.leadFormFieldset .dx-texteditor,
.leadFormFieldset .dx-dropdowneditor {
    height: 38px;
    min-height: 38px;
}

.leadFormFieldset .dx-texteditor-input-container {
    height: 38px;
    min-height: 38px;
}

.leadFormFieldset .dx-texteditor-input {
    height: 38px;
    min-height: 38px;
}

.leadFormConsent {
    margin: 15px 0;
    font-size: 13px;
    color: #666666;
    line-height: 1.6;
}

.leadFormConsent a {
    color: #00aeef;
    text-decoration: none;
}

.leadFormConsent a:hover {
    text-decoration: underline;
}

.leadFormSubmitButton {
    background-color: #00aeef;
    color: #FFFFFF;
    border: none;
    text-align: center;
    height: 55px;
    line-height: 55px;
    font-weight: 600;
    font-size: 18px;
    cursor: pointer;
    width: 100%;
    border-radius: 4px;
    margin-top: 20px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.leadFormSubmitButton:hover {
    background-color: #0090cc;
}

.leadFormError {
    color: #e74c3c;
    font-size: 14px;
    margin-top: 15px;
    padding: 12px;
    background: #fee;
    border-radius: 4px;
    text-align: center;
}

.leadFormFooter {
    text-align: center;
    margin-top: 20px;
    color: #999999;
    font-size: 14px;
}

.leadFormFooter i {
    margin-right: 5px;
}

.loadingWrapper {
    max-width: 500px;
    margin: 100px 20px;
    padding: 60px 40px;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
}

@media (min-width: 576px) {
    .loadingWrapper {
        margin: 100px auto;
    }
}

.loadingSpinner {
    color: #00aeef;
    margin-bottom: 20px;
}

.loadingMessage {
    font-size: 24px;
    font-weight: 500;
    color: #666666;
}

.ribbon {
    position: absolute; /* 1 */
    top: 0; /* 1 */
    right: 0; /* 1 */
    padding: 0.5em 2em; /* 2 */
    text-align: center; /* 3 */
    transform: translateY(-100%) rotate(90deg) translateX(70.71067811865476%) rotate( -45deg ); /* 4 */
    transform-origin: bottom right; /* 4 */
    background: #FF8500;
    color: white;
}

.dx-widget {
    font-size: 16px;
}

.dx-placeholder::before {
    padding: 11px 11px 8px;
}

.dx-texteditor-input {
    /*padding: 10px 12px 10px;*/
}

/*#region header*/

#headerTopLeft {
    float:none;
    text-align: center;
}

#headerTopRight {
    float:right;
    display:none;
}

#headerTop {
    padding:20px 0;
    height:78px;
}

#imgLogoTopOfForm {
    width: 100%;
    max-width: 243px;
}

#topRightCallButton {
    color: #ffffff !important;
    background: #00aeef !important;
    border-color: #ffffff;
}

#topRightCallButton:hover {
    background: #0092c7 !important;
}

#topRightCallButton > div > i.dx-icon {
    color: #ffffff !important;
}

@media (min-width: 576px) { /*small*/
    #headerTopLeft {
        float: left;
    }

    #headerTopRight {
        display: block;
    }
}

/*#endregion header*/

/* PRICING STYLES COMMENTED OUT - PRICING DISPLAY DISABLED */
/*
#pricingBar {
    background: #00aeef;
    padding: 0 0 60px;
    position: relative;
}

#pricingBar:after {
    content: '';
    position: absolute;
    top: 99%;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-top: solid 30px #00aeef;
    border-left: solid 30px transparent;
    border-right: solid 30px transparent;
}

.pricingOptionButton {
    padding: 15px 0;
    width: 100%;
    border:1px solid #ffffff;
    color: #ffffff;
    font-size: 16px;
    text-align:center;
    cursor:pointer;
    border-radius: 5px;
}

    .pricingOptionButton:hover {
        background: #ffffff;
        color: #00aeef;
        border: 1px solid #ffffff;
    }

.pricingOptionButton.selected {
    background: #ffffff;
    color: #00aeef;
    border: 1px solid #ffffff;
    cursor: auto;
}

.pricingOptionButtonOuter {
    margin-bottom: 5px;
}

.pricingOptionDiscount {
    color:#efefef;
    text-align: center;
    font-size: 12px;
    margin-top: 5px;
}

#pricingInfo {
    margin-top: 20px;
}

#pricingInfoBoxes {
    text-align: center;
}

.pricingInfoBox {
    border-radius: 5px;
    background: #FFFFFF;
    min-height: 200px;
    width: 100%;
    text-align: left;
    max-width: 400px;
    padding: 26px 36px 30px;
    box-shadow: 0 0 20px -10px #000;
    display: inline-block;
    vertical-align: top;
    margin: 20px 10px 0;
    position: relative;
    overflow: hidden;
}

.pricingInfoBox.only {
    max-width: 600px
}

.pricingInfoBox.hide {
    display:none;
}

#pricingInfoBoxStandard {
    margin: 0 10px 0;
    padding: 46px 36px 50px;
}
*/

/*
#pricingHeader {
    text-align: center;
    margin: 0;
    font-size: 48px;
    font-weight: bold;
    color: #ffffff;
    padding-top: 20px;
}

#pricingSubheader {
    text-align: center;
    margin: 0 0 10px;
    font-size: 24px;
    color: #ffffff;
    padding-top: 0px;
}

#pricingOptions {
    margin: 0 auto;
    width: 100%;
    max-width: 800px;
}

#pricingOptionSizeOfHome {
    float: left;
    width: 100%;
    max-width: 360px;
    box-shadow: 0 0 20px -10px #000;
}

#pricingOptionTypeOfService {
    float: right;
    width: 100%;
    max-width: 220px;
    box-shadow: 0 0 20px -10px #000;
}
*/

.priceQuote {
    display: inline-block;
    width: 100%;
}

.priceQuoteType {
    font-size: 32px;
    font-weight: bold;
}

.priceQuotePrice {
}

.priceQuotePrice {
    font-size: 32px;
}

.priceValue {
    font-weight:bold;
}

.priceFrequency {
    font-size: 12px;
    text-transform: uppercase;
}

.priceSeparator {
    border-top: 1px dashed #cccccc;
    width: 100%;
    height: 1px;
    margin: 10px auto 20px;
    clear: both;
}

.priceWhatsIncludedLabel {
    font-weight: bold;
    color: #00AEEF;
}

.bookingFormBookOnlineButton {
    background-color: #FF8500;
    color: #FFFFFF;
    border: 1px solid #FF8500;
    text-align: center;
    height: 50px;
    vertical-align: middle;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    position: relative;
    border-radius: 5px;
    /*max-width:300px;*/
    margin: 0 auto;
}

.bookingFormBookOnlineButton:hover {
    border: 1px solid #CCCCCC;
    opacity: 80%;
}

.bookingFormBookOnlineButton > div {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 13px;
}

.priceBookNow {
    margin:20px auto 0;
    text-align:center;
}

.mobile-break {
    display:none;
}

.priceCall {
    margin: 15px auto 0;
    text-align: center;
}

.bookingFormCallButton {
    background-color: #FFFFFF;
    color: #FF8500;
    border: 2px solid #FF8500;
    text-align: center;
    height: 50px;
    vertical-align: middle;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    position: relative;
    border-radius: 5px;
    /*max-width:300px;*/
    margin: 0 auto;
}

.bookingFormCallButton:hover {
    background-color: #FF8500;
    color: #FFFFFF;
}

.bookingFormCallButton > div {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 13px;
}

#priceRating {
    margin: 60px 0 0;
    font-size: 14px;
    text-align: center;
}

.priceRatingImage {
    margin: 0 4px;
    display:inline-block;
    vertical-align: middle;
}

.priceRatingText {
    vertical-align: bottom;
    white-space: nowrap;
    color: #ffffff;
}

.priceWhatsIncluded {
    margin: 10px 0 0;
    font-size:18px;
    min-height: 140px;
}

.priceWhatsIncludedText {
    /*    border: 1px solid #cccccc;
    border-radius: 5px;
    padding: 15px;
*/ /*margin-top: 20px;*/
    /*    font-size: 16px;*/
    /*text-align: justify;*/
}

.priceSuperscript {
    /*    font-size:0.5em;
    vertical-align: super;*/
}

#TestimonialsBar {
    padding: 60px 0 20px;
    background: #efefef;
}

.TestimonialsHeader {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    width: 100%;
}

.TestimonialsContainer {
    max-width: 1200px;
    margin: 40px auto;
    display: flex;
}

.Testimonial {
    width: 33.33%;
    border: 1px solid #cccccc;
    border-radius: 5px;
    margin: 0 20px;
    padding: 15px;
    font-size: 16px;
    background: #FFFFFF;
}

.TestimonialTopPicture {
    float: left;
    margin: 5px 15px 15px 5px;
}

.TestimonialTopContentName > a {
    font-weight: bold;
    font-size: 16px;
    color: #666666;
}

.TestimonalTopContentRating {
    vertical-align: text-bottom;
}

.TestimonialTopContentDate {
    margin-left: 5px;
}

.TestimonialBody {
    clear: both;
}

@media (max-width: 904px) {
    .TestimonialsContainer {
        display: block;
        padding: 0 15px;
    }

    .Testimonial {
        width: 100%;
        margin: 20px 0 30px;
    }

    #pricingHeader {
        font-size: 36px
    }

    /*
    #pricingSubheader {
        font-size: 18px;
    }
    */

    #topBarBackToHomepage {
        display: none;
    }

    /*
    #pricingInfo {
        margin-top: 10px;
        padding: 0 15px;
    }

    #pricingInfoBoxes {
        margin-top: 0;
    }

    .pricingInfoBox {
        margin: 0 0 15px;
        max-width: 100%;
    }

    #pricingHeader {
        padding-top: 10px;
    }

    #pricingInfoBoxStandard {
        margin: 0 0 15px;
        padding: 26px 36px 30px;
    }
    */

    .priceWhatsIncluded {
        min-height: auto;
    }

    .leadFormWrapper {
        margin: 0px 15px;
        padding: 30px 20px;
    }

    .leadFormTitle {
        font-size: 26px;
    }

    .leadFormSubtitle {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
        #topBar {
            padding: 22px 14px;
            height: 72px;
        }

        #topBarLogo > a > img {
            width: 200px;
        }

        /*
        #pricingBar {
            padding: 0 0 40px;
        }

        #pricingInfoBox {
            padding: 15px;
        }
        */

        .priceQuoteType {
            /*text-align: center;*/
            font-size: 30px;
        }

        .priceQuotePrice {
            /*text-align: center;*/
        }

        .priceSeparator {
            margin: 15px auto;
        }

        .mobile-break {
            display: block;
        }

        .priceQuotePrice {
            font-size: 30px;
        }


    #priceRating {
        margin: 40px 0 0;
    }

    .priceWhatsIncludedLabel {
        /*text-align: center;*/
    }

    .priceWhatsIncludedText {
        /*text-align: center;*/
    }

    .TestimonialsHeader {
        font-size: 24px;
    }

    .Testimonial {
        width: 100%;
    }
}

@media (max-width: 350px) {
    .priceRatingText {
        white-space: normal;
    }
}

