﻿:root {
    --primary-color: #17A2B8;
    --secondary-color: #20C997;
    --accent-color: #FF6F61;
    --error-color: #DC3545;
    --success-color: #20C997;
    --callout-text-color: #218838;
    --secondary-title-text-color: #495057;
    --renewable-color: #28A745;
    --prepaid-color: #666;
}

a {
    color: var(--primary-color);
}

body {
    font-family: 'Lato', arial, sans-serif;
    color: #444444;
    background-color: #fbfbfb;
}

.has-error .help-block {
    font-weight: bold;
}

.header {
    padding: 15px;
    background: transparent;
    z-index: 9999;
}

    .header > .container {
        background-color: #fff;
        box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.2);
        padding: 20px;
        border-radius: 5px;
        max-width: 1070px;
        position: relative;
    }

    .header h1.logo {
        margin:0px;
        text-transform: uppercase;
        font-weight: bold;
        font-size: 28px;
        max-height: 50px;
        padding:0px;
    }

        .header h1.logo a {
            color: #444444;
            -webkit-transition: none;
            -moz-transition: none;
            -ms-transition: none;
            -o-transition: none;
        }

            .header h1.logo a img {
                max-height: 45px;
            }

        .header h1.logo .logo-title {
            vertical-align: middle;
        }

    .header .main-nav button {
        color: #fff !important;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        -ms-border-radius: 4px;
        -o-border-radius: 4px;
        border-radius: 4px;
        -moz-background-clip: padding;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
    }

        .header .main-nav button:focus {
            outline: none;
        }

        .header .main-nav button .icon-bar {
            background-color: #333;
        }

    .header .main-nav .nav .nav-item {
        font-weight: normal;
        margin-right: 5px;
    }

        .header .main-nav .nav .nav-item.active a {
            color: #286da8;
            background: none;
        }

        .header .main-nav .nav .nav-item a {
            color: #444444;
            -webkit-transition: none;
            -moz-transition: none;
            -ms-transition: none;
            -o-transition: none;
            font-size: 14px;
            /*padding: 15px 10px;*/
        }

            .header .main-nav .nav .nav-item a:hover {
                color: #286da8;
                background: none;
            }

            .header .main-nav .nav .nav-item a:focus {
                outline: none;
                background: none;
            }

            .header .main-nav .nav .nav-item a:active {
                outline: none;
                background: none;
            }

        .header .main-nav .nav .nav-item.active {
            color: #286da8;
        }

        .header .main-nav .nav .nav-item.last {
            margin-right: 0;
        }
/* ======= Footer ======= */
.footer {
    background: #fff;
    padding: 15px 0;
    padding-top: 30px;
    border-top: 1px #f1f3f5 solid;
    text-align: center;
}

    .footer .copyright {
        color: #b3b3b3;
        margin-right: 15px;
    }

    .footer .links {
        margin-bottom: 0;
    }

        .footer .links a {
            color: #808080;
        }

            .footer .links a:hover {
                color: #286da8;
            }


.required-field {
    color: var(--error-color);
}

.header a.button {
    background-color: var(--primary-color);
    padding: 10px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 16px;
    color: #fff;
    border-radius: 8px;
    font-weight: bold;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.16);
}

    .header a.button.reset-button {
        background-color: #fff;
        border: 1px var(--primary-color) solid;
        color: var(--primary-color);
    }

    .header a.button .fa {
        margin-right: 5px;
    }

    .header a.button:hover {
        opacity: .9;
    }

.electricity-filters {
    border-radius: 8px;
    box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.2) !important;
    border: 1px #ddd solid;
    margin-bottom: 50px !important;
}

.electricity-filters .panel {
    border-radius: 8px;
    box-shadow: none !important;
    border: 1px #ddd solid;
}

.modal .modal-title {
    color: #666 !important;
    text-align: center;
    padding-top: 20px;
}

.smarty-popup,
.smarty-autocomplete {
    box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.2) !important;
    border: 1px #ddd solid;
    border-radius: 8px;
    font-family: 'Lato', arial, sans-serif;
}

.smarty-autocomplete  {
    border-top-left-radius:0px;
    border-top-right-radius: 0px;
    border-color: #999;
    margin-top: -5px;
}

.smarty-popup-invalid-header {
    text-transform: none;
    color: var(--error-color);
    height: auto;
    padding-bottom: 10px;
    font-family: inherit !important;
    font-size: 16px !important;
}

.smarty-popup-close {
    color: #DC3545;
}

    .smarty-popup-close:hover {
        color: #DC3545 !important;
        background: transparent;
    }

.smarty-choice-alt {
    border-top: 1px solid #ddd !important;
    background: #F6F6F6 !important;
    box-shadow: none !important;
    font-weight: bold;
    font-size: 14px;
}

    .smarty-choice-alt .smarty-choice-abort, .smarty-choice-override {
        font-weight: bold !important;
        font-size: 14px !important;
        color: #000 !important;
    }

.smarty-suggestion,
.smarty-no-suggestions {
    padding: 10px;
    font-size: 14px;
}

.has-error .checkbox, .has-error .checkbox-inline, .has-error .control-label, .has-error .help-block, .has-error .radio, .has-error .radio-inline, .has-error.checkbox label, .has-error.checkbox-inline label, .has-error.radio label, .has-error.radio-inline label, .has-error .form-control-feedback {
    color: var(--error-color) !important;
}

.has-error .form-control {
    border-color: var(--error-color) !important;
}

.has-success .form-control {
    border-color: var(--success-color) !important;
}

.form-control-feedback {
    color: var(--success-color) !important;
}

.btn,
.btn:focus,
button {
    border: none !important;
    outline: none;
}


/* HTML: <div class="loader"></div> */
.loader-spin {
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(farthest-side,var(--primary-color) 94%,#0000) top/8px 8px no-repeat, conic-gradient(#0000 30%,var(--primary-color));
    -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 8px),#000 0);
    animation: l13 1s infinite linear;
    position: relative;
    left:0px;
    right: 0px;
    margin: auto;
}

@keyframes l13 {
    100% {
        transform: rotate(1turn)
    }
}



#suggestionContainer {
    position: relative;
}

#txtServiceAddress {
    position: relative;
    z-index:2;
}

#suggestionCover {
    position: fixed;
    top: 0px;
    bottom: 0px;
    right: 0px;
    left: 0px;
    margin: auto;
    visibility: hidden;
    display: none;
}

    #suggestionCover.active {
        visibility: visible;
        display: block;
    }

#suggestionBox {
    position: absolute;
    margin-left: -1px;
    border: 1px #ddd solid;
    border-radius: 5px;
    background-color: #fff;
    width: 95%;
    left: 0px;
    right: 0px;
    margin: auto;
    margin-top: 80px;
    max-width: 570px;
    height: 200px;
    overflow-y: scroll;
    cursor: pointer;
    z-index: 9;
    visibility: hidden;
    display: none;
}

    #suggestionBox.active {
        visibility: visible;
        display: block;
    }

    #suggestionBox div {
        padding: 10px;
        border-bottom: 1px #ddd solid;
    }

        #suggestionBox div:hover {
            background-color: #06c;
            color: #fff;
        }

h4.directions {
    padding: 20px;
    background-color: lightyellow;
    position: relative;
    left: 15px;
    border: 1px #ddd solid;
    border-radius: 10px;
    max-width: 1070px;
    font-size: 16px;
    margin-block: 40px;
    box-shadow: rgba(0, 0, 0, 0.06) 0px 30px 18px -13px;
}

    h4.directions i {
        margin-right: 10px;
    }

.water-filtration-offer {
    float: left;
    width: 50%;
    margin-top: 20px;
    visibility: hidden;
    display: none;
}

.water-filtration-offer.show {
    visibility: visible;
    display: block;
}

.water-filtration-offer .cartPanelHead {
    border-bottom: none;
    background-color: #fff;
    padding: 15px;
    padding-bottom: 5px;
    padding-left: 20px;
    padding-right: 20px;
}

.water-filtration-offer .cartPanel-body {
    padding: 15px;
    padding-top: 0px;
    box-shadow: none;
    padding-left: 20px;
    padding-right:20px;
}

.water-filtration-offer .cartPanel-body .option {
    margin-bottom: 5px;
}

.water-filtration-offer .cartPanel-body .option label {
    padding-left: 5px;
}

@media(max-width: 900px) {
    .water-filtration-offer {
        float: none;
        width: auto;
    }
}

    @media (max-width: 767px) {
        .header h1.logo {
        position:absolute;
    }

    .navbar-toggle {
        margin-right: 0;
        float: right;
    }

    .navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse {
        max-height: 340px;
        max-width: 529px;
    }

    .navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse {
        max-height: 340px;
        max-width: 529px;
    }

        .header a.button {
            padding: 10px;
            font-size: 14px;
        }
}