body {
    background-color: #fff;
    color: #777;
    font: 14px/1.5 "Open Sans", Arial, Helvetica, sans-serif;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: #1fa67b;
    text-decoration: none;
}

    a:hover, a:active, a:focus {
        color: #006fa4;
        text-decoration: underline;
    }

.title {
    font-size: 28px;
    font-weight: 300;
    line-height: 1.3;
    color: #111;
    margin: 0 0 15px;
}

.subtitle {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
    color: #777;
    margin-bottom: 50px;
}

.fancy-text {
    font-family: 'Shadows Into Light', Verdana;
    color: #009DDC;
}

.no-overflow {
    overflow: hidden;
}

.header-container {
    border-bottom: 1px solid #4b4b4b;
    border-bottom-color: rgba(255,255,255,0.2);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: left;
    z-index: 9;
    padding: 26px 0;
    transition: all .4s ease;
    -webkit-transition: all .3s ease;
    -o-transition: all .4s ease;
}

.navbar-toggle {
    border: none;
    margin-right: 0;
    padding-right: 0;
}

    .navbar-toggle .icon-bar {
        background-color: #fff;
    }

@media (max-width: 991px) {
    .header-container {
        position: relative;
        left: auto;
        top: auto;
        background-color: #1fa67b;
        padding: 16px 0;
    }
}

.sticky-wrapper {
    height: 0 !important;
}

.header-container.sticky-menu.fixed {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    padding: 0;
    background-color: #1fa67b;
    z-index: 999;
}

.header-container.sticky-menu.fixed {
    padding: 5px 0;
}

.logo {
    display: block;
    float: left;
}

    .logo img {
        display: block;
        max-width: 60%;
        height: auto;
        transition: all 0.4s ease;
        -webkit-transition: all 0.4s ease;
    }

.header-container.sticky-menu.fixed .logo img {
    max-height: 70px;
    margin: 5px 0;
}

.main-nav {
    float: right;
    list-style: none;
    padding: 0;
}

    .main-nav > li {
        display: inline-block;
        padding-left: 27px;
    }

        .main-nav > li:first-child {
            padding-left: 0;
        }

        .main-nav > li a {
            color: #fff;
            font-size: 13px;
            line-height: 20px;
            font-weight: 600;
            padding: 15px 0;
        }

        .main-nav > li.active > a,
        .main-nav > li > a:hover,
        .main-nav > li > a:focus {
            background-color: transparent;
            color: #fff;
            text-decoration: underline;
        }

@media (min-width: 768px) {
    .container > .navbar-collapse {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media (max-width: 767px) {
    #main-nav-container {
        float: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background-color: #1fa67b;
        border-top: 1px solid rgba(255, 255, 255, 0.4);
    }

    .container > .navbar-collapse {
        margin: 0;
    }

    .main-nav {
        float: none;
    }

        .main-nav > li {
            display: block;
            padding-left: 0;
        }

            .main-nav > li a {
                padding: 10px 0;
            }

            .main-nav > li:first-child > a {
                padding-top: 20px;
            }

            .main-nav > li:last-child > a {
                padding-bottom: 20px;
            }
}

.btn {
    background-color: #1fa67b;
    border-color: #1fa67b;
    text-shadow: 0 1px 1px #666;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    padding: 12px 35px;
    transition: all 0.25s;
    -webkit-transition: all 0.25s;
}

    .btn:focus,
    .btn:hover,
    .btn:active {
        background-color: #006fa4;
        border-color: #006fa4;
        color: #fff;
    }

.quote {
    display: inline-block;
}

    .quote > .quote-img {
        background: url(../images/banner_quote.png) no-repeat;
        width: 38px;
        height: 11px;
        display: inline-block;
        vertical-align: middle;
    }

    .quote > span {
        display: inline-block;
        vertical-align: middle;
        color: #fff;
        font-size: 22px;
        font-weight: 600;
        margin: 0 15px;
    }

.banner-1 .content {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    margin-top: -80px;
}

.banner-1 h1 {
    font-size: 62px;
    font-weight: 800;
    color: #fff;
    margin: 5px 0 10px;
}

.banner-1 p {
    font-size: 24px;
    font-weight: 300;
    font-style: italic;
    color: #fff;
    margin-bottom: 43px;
}

@media (max-width: 991px) {
    .banner-1 .content {
        margin-top: -95px;
    }

    .quote > span {
        font-size: 18px;
    }

    .banner-1 h1 {
        font-size: 48px;
    }

    .banner-1 p {
        font-size: 20px;
        margin-bottom: 25px;
    }

    .banner-1 .btn {
        font-size: 14px;
        padding: 10px 28px;
    }
}

@media (max-width: 767px) {
    .banner-1 .content {
        margin-top: -62px;
    }

    .quote {
        display: none;
    }

    .banner-1 h1 {
        font-size: 32px;
    }

    .banner-1 p {
        font-size: 16px;
        margin-bottom: 15px;
    }

    .banner-1 .btn {
        font-size: 12px;
        padding: 8px 15px;
    }
}

@media (max-width: 480px) {
    .banner-1 .content {
        margin-top: -33px;
    }

    .banner-1 h1 {
        font-size: 26px;
    }

    .banner-1 p {
        display: none;
    }

    .banner-1 .btn {
        font-size: 9px;
        padding: 5px 12px;
    }
}

.home-bar-container {
    background-color: #1fa67b;
    padding: 30px 0;
    text-align: left;
    color: white;
}

    .home-bar-container h3 {
        font-size: 20px;
        line-height: 1.3;
        color: #fff;
        font-weight: 300;
        margin: 0;
    }

    .home-bar-container h4 em {
        font-family: "Shadows Into Light";
        color: #fff;
        font-size: 26px;
        line-height: 1;
    }

.specialtext {
    font-family: "Shadows Into Light";
    color: #1fa67b !important;
    font-size: 51px !important;
    line-height: 1;
}

.blackoverlay:after {
    content: '\A';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.6) !important;
    transition: all 1s;
    -webkit-transition: all 1s;
}

#banner_slider {
    background: #171717;
}

.demo-image {
    background-size: contain !important;
    /*background-color: #000 !important;*/
}

.home-bar-container p {
    margin: 0;
}

.home-bar-container a {
    display: inline-block;
    vertical-align: middle;
    color: #777;
    font-weight: 600;
}

.home-bar-container .col-md-6.text-right {
    margin-top: 9.5px;
}

.home-bar-container .btn {
    font-size: 14px;
    padding: 10px 30px;
    margin: 3px 0;
    display: inline-block;
    vertical-align: middle;
    font-weight: 400;
    color: #fff;
}

    .home-bar-container .btn + span {
        display: inline-block;
        vertical-align: middle;
        margin-left: 25px;
    }

.counters-container {
    padding: 60px 0 105px;
    border-bottom: 4px solid #f8f8f8;
}

.counter {
    text-align: center;
}

    .counter i {
        display: block;
        font-size: 30px;
        color: #2d343e;
    }

    .counter strong {
        font-size: 48px;
        display: block;
        line-height: 1;
        color: #2e353e;
        margin-top: 10px;
        margin-bottom: 3px;
    }

    .counter label {
        font-size: 18px;
        line-height: 1.1;
        font-weight: 300;
    }

        .counter label span {
            font-size: 14px;
            color: #009ddc;
            font-weight: 400;
            line-height: 1;
        }

@media (max-width: 991px) {
    .counters-container {
        padding-bottom: 50px;
    }

    .counter {
        margin-bottom: 35px;
    }
}

.theme-features {
    background-color: #f8f8f8;
    border-top: 1px solid #f5f5f5;
    padding: 52px 0 64px;
}

.feature-box {
    text-align: left;
    margin-top: 50px;
    position: relative;
    padding-left: 55px;
}

    .feature-box.smaller {
        padding-left: 50px;
    }

    .feature-box:first-child {
        margin-top: 0;
    }

    .feature-box.reverse {
        text-align: right;
        padding-left: 0;
        padding-right: 55px;
    }

        .feature-box.reverse.smaller {
            padding-right: 50px;
        }

    .feature-box .feature-box-info h3 {
        font-size: 20px;
        color: #2d343e;
    }

    .feature-box .feature-box-info p {
        line-height: 1.6;
        margin: 0;
        min-height: 66px;
    }

    .feature-box .feature-box-icon {
        position: absolute;
        left: 0;
        font-size: 28px;
        color: #1fa67b;
        line-height: 1;
        top: -4px;
        width: 30px;
    }

    .feature-box.reverse .feature-box-icon {
        left: auto;
        right: 0;
        text-align: center;
    }

@media (max-width: 767px) {
    .feature-box.reverse {
        text-align: left;
        padding-right: 0;
        padding-left: 55px;
    }

        .feature-box.reverse.smaller {
            padding-right: 0;
            padding-left: 50px;
        }

        .feature-box.reverse .feature-box-icon {
            right: auto;
            left: 0;
        }
}

.action-box {
    background-color: #ddd;
    padding: 60px 0;
    color: black;
    text-align: left;
}

    .action-box h3 {
        font-size: 28px;
        font-weight: 300;
    }

    .action-box p {
        font-size: 20px;
        font-weight: 300;
        opacity: 0.7;
    }

    .action-box .btn {
        font-size: 14px;
        min-width: 250px;
    }

    .action-box .button-tip-arrow {
        margin-top: -45px;
        margin-left: -60px;
    }

        .action-box .button-tip-arrow + span {
            font-size: 18px;
            font-weight: 300;
            margin-left: -15px;
            position: relative;
            top: 20px;
        }

.demo-select {
    padding-bottom: 45px;
}

@media (max-width: 991px) {

    .home-bar-container {
        padding: 25px 0 30px;
    }

    .action-box {
        padding: 45px 0 60px;
    }

        .action-box,
        .home-bar-container,
        .home-bar-container .col-md-6.text-right,
        .action-box .col-md-6.text-right,
        .action-box .col-md-4.text-right {
            text-align: center;
        }

            .home-bar-container .col-md-6.text-right {
                margin-top: 15px;
            }
}

.visible-xss {
    display: none;
}

@media (max-width: 480px) {
    .col-xss-12 {
        width: 100%;
        float: none;
    }

    .visible-xss {
        display: block;
    }
}

#sorts, #sorts_2 {
    margin-bottom: 80px;
    background-color: #1fa67b;
}

    #sorts button, #sorts_2 button {
        background: none;
        border: 0;
        color: #fff;
        font-size: 14.36px;
        text-transform: uppercase;
        margin: 0 40px;
        padding: 20px 5px
    }

        #sorts button:focus, #sorts_2 button:focus {
            outline: none;
        }

        #sorts button.active, #sorts_2 button.active {
            position: relative;
            font-weight: 600;
        }

            #sorts button.active:after, #sorts_2 button.active:after {
                content: "";
                display: block;
                background: url(../images/polygon.png) center center no-repeat;
                width: 100%;
                height: 12px;
                position: absolute;
                top: 100%;
                left: 0;
            }

#container, #container_2 {
    padding: 0;
    margin: 0 20px;
}

.demo {
    text-align: center;
    padding: 0 1%;
}

    .demo p {
        font-size: 13px;
        color: #777 !important;
        line-height: 1.4;
        font-style: italic;
        margin-bottom: 40px;
    }

    .demo .demo-image-wrap {
        position: relative;
        margin-right: 1px;
    }

    .demo .demo-image {
        position: relative;
        background-position: top center;
        background-repeat: no-repeat;
        background-size: 100% auto;
        margin: 0 auto;
        height: 250px;
        box-shadow: 10px 10px 74px -15px rgba(0, 0, 0, 0.1);
        -webkit-transition: all 0.3s; /* Safari and Chrome */
        -moz-transition: all 0.3s; /* Firefox 4 */
        -o-transition: all 0.3s; /* Opera */
        transition: all 0.3s;
    }

@media (max-width: 1680px) {
    .demo .demo-image {
        height: 210px;
    }
}

@media (max-width: 1440px) {
    .demo .demo-image {
        height: 178px;
    }
}

@media (max-width: 1440px) {
    .demo .demo-image {
        height: 178px;
    }
}

@media (max-width: 1200px) {
    .demo .demo-image {
        height: 145px;
    }
}

.demo .demo-image.fixed-image {
    background-position: center;
}

.demo-image-wrap:hover .demo-image.fixed-image {
    background-position: center;
}

.demo-image-wrap:hover .demo-image {
    box-shadow: 10px 10px 74px -15px rgba(0, 0, 0, 0.4);
}

.demo.coming .demo-image {
    background-image: url(../images/coming_soon.png);
    background-position: center center;
    background-size: auto auto;
    background-color: #ddd;
}

.demo .demo-link {
    display: block;
    position: relative;
    margin: 20px 0;
    text-decoration: none;
}

.demo h2 {
    font-size: 18px;
    color: #333;
    margin: 10px;
}

.demo a:hover h3 {
    color: #1fa67b;
}

.tip {
    position: absolute;
    right: 30px;
    top: -12px;
    background: transparent url(../images/tip_bg.png) left top no-repeat;
    padding: 0 10px 0 18px;
    font-family: "Shadows Into Light",cursive;
    font-size: 14px;
    line-height: 27px;
    color: #fff;
    z-index: 2;
}

    .tip.new {
        background: #6dbcdb;
    }

.porto-admin-container {
    background: url(../images/landing_parallax.jpg) no-repeat;
    background-size: cover;
    padding-top: 50px;
}

.layout-options {
    position: relative;
    padding: 10px 0 22px;
}

    .layout-options .title {
        line-height: 2.6em;
    }

    .layout-options .subtitle {
        margin-bottom: 45px;
    }

img.detail-arrow {
    position: absolute;
    right: 25%;
    top: -5%;
    height: 110%;
    z-index: 9;
}

.features-icons {
    margin-bottom: 4px;
}

.feature-elem {
    display: inline-block;
    margin-bottom: 20px;
}

    .feature-elem i,
    .feature-elem span {
        display: inline-block;
        vertical-align: middle;
    }

    .feature-box .feature-box-icon.round-icon,
    .feature-elem i {
        width: 37px;
        height: 37px;
        color: #1fa67b;
        font-size: 17px;
        line-height: 35px;
        margin: 10px 5px 10px 20px;
        background-color: #fff;
        border-radius: 50%;
        border: 1px solid #dedede;
        box-shadow: 0 0 7px #e7e7e7;
        text-align: center;
    }

.feature-box .feature-box-icon.round-icon {
    margin: 0;
}

.feature-elem span {
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
    color: #000;
    margin: 10px 20px 10px 5px;
}

.layout-slider-container {
    background-color: #f9f9f9;
    padding-top: 40px;
    line-height: 0;
}

.layout-slider {
    display: inline-block;
    max-width: 857px;
    margin: 0 auto;
    border-radius: 7px 7px 0 0;
    padding: 10px 10px 0;
    background: url('../images/edge.jpg') repeat;
}

@media (max-width: 991px) {
    .layout-slider-container {
        padding-left: 15px;
        padding-right: 15px;
    }

        .layout-slider-container .container {
            padding: 0;
        }

    .layout-slider {
        width: 100%;
    }
}

.layout-slider .owl-carousel {
    background-color: #fff;
}

.layout-slider #header_slider,
.layout-slider #header_slider img {
    border-radius: 5px 5px 0 0;
}

#content_slider,
#footer_slider {
    margin-top: 10px;
}

.extensions-container {
    background: #1ab999;
    color: #fff;
    padding: 0 0 20px;
    position: relative;
}

.divider {
    position: relative;
    height: 1px;
    background-color: #dbdbdb;
    margin-bottom: 45px;
}

    .divider > i {
        position: absolute;
        width: 50px;
        height: 50px;
        left: 50%;
        top: -26px;
        margin-left: -25px;
        z-index: 100;
        border-radius: 50%;
        font-size: 20px;
        line-height: 48px;
        border: 1px solid #dbdbdb;
        background-color: #fff;
        color: #a9a9a9;
        box-shadow: 0 0 0 2px #f4f4f4;
    }

.extensions-container .divider {
    background-color: #18ae90;
}

    .extensions-container .divider > i {
        color: #fff;
        background-color: #1dcdaa;
        border-color: #18ae90;
        box-shadow: 0 0 0 2px #17aa8c
    }

.extensions-container .title {
    color: #fff;
    margin-bottom: 32px;
}

.ext-list {
    list-style: none;
    padding: 0;
}

    .ext-list li {
        font-size: 16px;
        line-height: 30px;
        font-weight: 600;
    }

        .ext-list li i {
            margin-right: 8px;
            font-size: 75%;
        }

.extensions-container p {
    font-weight: 600;
    font-size: 14px;
    margin-top: 20px;
}

    .extensions-container p strong {
        font-weight: 800;
    }

@media (max-width: 767px) {
    .extensions-container {
        padding-bottom: 50px;
    }

        .extensions-container .text-left,
        .extensions-container .text-right {
            text-align: center;
        }
}

.sfeatures-container {
    padding: 90px 0 50px;
    background-color: #f9f9f9;
}

.sfeature {
    margin-bottom: 30px;
    text-align: left;
}

    .sfeature img,
    .sfeature .sfeature-content {
        display: inline-block;
        vertical-align: middle;
    }

    .sfeature img {
        margin-right: 20px;
    }

.sfeature-content h3 {
    font-size: 30px;
    color: #111;
    margin: 5px 0 15px;
}

.sfeature-content p {
    font-size: 16px;
    line-height: 1.6;
    color: #171717;
}

@media (max-width: 767px) {
    .sfeatures-container {
        padding: 55px 0 25px;
    }

    .sfeature {
        text-align: center;
    }

        .sfeature .sfeature-content {
            display: block;
        }

        .sfeature img {
            margin-right: 0;
            margin-bottom: 15px;
        }
}

@media (max-width: 480px) {
}

.optimized-container {
    padding-top: 60px;
}

    .optimized-container .subtitle {
        margin-bottom: 45px;
    }

    .optimized-container .feature-box .feature-box-info p {
        margin-bottom: 10px;
    }

@media (max-width: 991px) {
    .optimized-container {
        padding-bottom: 30px;
    }

        .optimized-container .feature-box {
            margin-bottom: 20px;
        }
}

.desc-row {
    padding: 70px 0;
}

    .desc-row.bg-gray {
        padding: 60px 0 30px;
    }

    .desc-row .title {
        line-height: 56px;
        margin: 10px 0 10px;
    }

.bg-gray {
    background-color: #f9f9f9;
    border-top: 4px solid #f6f6f6;
}

.desc-row.bg-gray img {
    margin-top: -90px;
}

.desc-row p {
    font-size: 15px;
    line-height: 1.7;
}

@media (max-width: 991px) {
    .desc-row.bg-gray img {
        margin-top: -40px;
    }
}

@media (max-width: 767px) {
    .desc-row.bg-gray img {
        margin-top: 0;
    }
}

.keyfeatures-container {
    padding-bottom: 50px;
}

    .keyfeatures-container .title {
        margin-bottom: 10px;
    }

    .keyfeatures-container .divider {
        margin-bottom: 65px;
    }

        .keyfeatures-container .divider i {
            font-size: 28px;
        }

    .keyfeatures-container .feature-elem {
        margin-bottom: 10px;
    }

        .keyfeatures-container .feature-elem i {
            margin-left: 0;
            margin-right: 15px;
        }

        .keyfeatures-container .feature-elem span {
            margin-right: 0;
            margin-left: 0;
        }

.more-text {
    display: inline-block;
    font-size: 28px;
    line-height: 1.5;
    margin: 40px 0 0;
}

@media (max-width: 767px) {
    .keyfeatures-container .feature-elem {
        display: block;
    }
}

.testimonials-container {
    padding: 40px 0 46px;
    background-image: url('../images/landingbg.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    background-size: cover;
    background-attachment: fixed;
    color: #fff;
}

    .testimonials-container .title {
        color: #fff;
        margin: 15px 0 18px;
    }

.testimonial {
    position: relative;
}

    .testimonial blockquote {
        font-size: 17px;
        line-height: 22px;
        font-style: italic;
        font-family: Georgia, sans-serif;
        border: none;
        position: relative;
        padding: 10px 50px;
    }

        .testimonial blockquote:before {
            left: 10px;
            top: 0;
            color: #fff;
            content: "\201C";
            font-size: 80px;
            font-style: normal;
            line-height: 1;
            position: absolute;
            opacity: 0.9;
        }

        .testimonial blockquote:after {
            color: #fff;
            content: "\201D";
            font-size: 80px;
            font-style: normal;
            line-height: 1;
            position: absolute;
            bottom: -0.5em;
            right: 10px;
            opacity: 0.9;
        }

        .testimonial blockquote p {
            padding: 0 40px;
            opacity: 0.9;
        }

.testimonial-author {
    opacity: 0.6;
    margin-top: 5px;
}

.testimonial .testimonial-author strong {
    display: block;
    margin-bottom: 2px;
    font-size: 14px;
}

.testimonial .testimonial-author span {
    display: block;
    font-size: 12px;
}

@media (max-width: 767px) {
    .testimonial blockquote {
        padding: 10px 0;
    }

        .testimonial blockquote:before,
        .testimonial blockquote:after {
            display: none;
        }
}

.action-box.v2 {
    padding: 53px 0 68px;
}

.action-box.white {
    color: #111;
    background-color: #fff;
}

    .action-box.white p {
        color: #777;
    }

.action-box.v2 p {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
}

.action-box.v2 .fancy-text {
    display: block;
    font-size: 20px;
    margin-top: 10px;
}

#scroll-top {
    position: fixed;
    bottom: 0;
    right: 20px;
    display: block;
    visibility: hidden;
    cursor: pointer;
    background: #404040;
    background: rgba(64, 64, 64, 0.75);
    border-radius: 4px 4px 0 0;
    color: #fff;
    height: 9px;
    padding: 7px 10px 30px;
    text-align: center;
    text-decoration: none;
    min-width: 40px;
    z-index: 800;
}

    #scroll-top:hover {
        background: #404040;
    }

    #scroll-top.fixed {
        opacity: 1;
        visibility: visible;
    }


.social-icons {
    font-size: 0;
}

.social-icon {
    display: inline-block;
    width: 30px;
    height: 30px;
    font-size: 14px;
    line-height: 30px;
    margin: 0 7.5px 15px;
    color: #555 !important;
    background-color: #fff;
    margin: 0.2857em 0.5714em 0.2857em 0;
    text-align: center;
    border-radius: 50%;
    transition: all 0.25s ease 0s;
    -webkit-transition: all 0.25s ease 0s
}

    .social-icon.first {
        margin-left: 0;
    }

    .social-icon:hover {
        color: #fff !important;
    }

    .social-icon.icon-facebook:hover,
    .social-icons2 .social-icon.icon-facebook {
        background-color: #3b5998 !important;
    }

    .social-icon.icon-twitter:hover,
    .social-icons2 .social-icon.icon-twitter {
        background-color: #55acee !important;
    }

    .social-icon.icon-linkedin:hover,
    .social-icons2 .social-icon.icon-linkedin {
        background-color: #0976b4 !important;
    }


#footer {
    background: #121214;
    font-size: 0.9em;
    padding: 0;
    position: relative;
    color: #777;
    text-align: left;
}

    #footer a,
    #footer a:hover {
        color: #fff;
    }

        #footer a:hover {
            text-decoration: underline;
        }

    #footer .footer-ribbon {
        background: #1fa67b;
        position: absolute;
        margin: -70px 0 0 0;
        padding: 10px 20px 6px 20px;
        color: #fff;
        font: 400 1.6em/ 22px "Shadows Into Light", Verdana;
    }

        #footer .footer-ribbon a:hover {
            text-decoration: none !important
        }

        #footer .footer-ribbon:before {
            border-right: 10px solid #005580;
            left: -10px;
            border-top: 16px solid transparent;
            content: "";
            display: block;
            height: 0;
            position: absolute;
            top: 0;
            width: 7px;
        }

    #footer > .container {
        padding-top: 38px;
        padding-bottom: 28px;
    }

    #footer.footer-ribbon > .container {
        padding-top: 54px;
    }

.widget {
    margin-top: 10px;
    margin-bottom: 30px;
}

    .widget .widget-title {
        line-height: 1.4;
        font-weight: 300;
        font-size: 22px;
        margin: 0 0 15px;
        color: #fff;
    }

#footer .widget-title {
    color: #fff;
}

#footer .widget > div > ul,
#footer .widget > ul {
    font-size: 1em;
}

#footer .widget .contact-info,
#footer .widget .contact-details {
    margin-top: -6px;
}

.widget .tweet_list {
    list-style: none;
    padding: 0;
}

    .widget .tweet_list li {
        margin-bottom: 25px;
    }

.widget .twitter-icon {
    float: left;
    font-size: 19px;
    line-height: 1;
    margin-top: 3px;
    width: 22px;
    color: #777777;
}

.widget .tweet-content {
    margin-left: 25px;
}

.widget .tweet_time {
    font-size: 12px;
    display: block;
    margin-top: 8px;
}

#footer .widget .tweet_time a {
    color: #a9a9a9;
}

.widget.contact-info ul,
.widget.contact-info li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.widget.contact-info li {
    margin-bottom: 4px;
}

.widget.contact-info p {
    margin-bottom: 10px;
}

.widget.contact-info li i {
    text-align: center;
    width: 16px;
    top: -2px;
    margin: 7px 6px 0 0;
    font-size: 1.2em;
}

.widget.contact-info .contact-details span {
    display: block;
    padding-left: 25px;
    line-height: 18px;
    padding-bottom: 10px;
}

#footer .widget p {
    margin-top: -3px;
    margin-bottom: 13px;
}

.newsletter-widget input[type="text"],
.newsletter-widget input[type="email"] {
    display: block;
    color: #777;
    background-color: #dbdbdb;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    line-height: 1.42857;
    padding: 9px 60px 9px 15px;
    font-size: 1em;
    border: none;
    border-radius: 3px;
    width: 100%;
    max-width: 262px;
}

#footer .container input:focus {
    box-shadow: none;
}

.newsletter-widget input::-moz-placeholder {
    color: #777;
}

.newsletter-widget input:-ms-input-placeholder {
    color: #777;
}

.newsletter-widget input::-webkit-input-placeholder {
    color: #777;
}

.form-wrapper {
    position: relative;
    margin-top: 20px;
    max-width: 262px;
}

.newsletter-widget input[type="submit"] {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    margin: 0;
    background: #dbdbdb;
    border: none;
    border-left: 1px solid #afafaf;
    color: #333333;
    padding: 9px 11.5px;
    border-radius: 0 3px 3px 0;
    line-height: 1.42857;
}

    .newsletter-widget input[type="submit"]:hover,
    .newsletter-widget input[type="submit"]:active {
        color: #fff;
        background: #1fa67b;
        border-color: #1fa67b;
    }

#footer .input-box {
    margin-top: 45px;
}

#footer .newsletter-widget .input-box input[type="text"],
.newsletter-widget .input-box input[type="email"] {
    background-color: #dcdcdc;
    height: 30px;
    padding: 5px 10px;
    border-radius: 5px;
}

#footer .input-box-wrapper {
    position: relative;
    max-width: 300px;
}

#footer .newsletter-widget .input-box-wrapper input[type="submit"] {
    position: absolute;
    right: 0;
    top: 0;
    padding: 4.5px 13.5px;
    margin: 0;
    border-radius: 0 5px 5px 0;
    font-size: 14px;
}


#footer .widget .label {
    display: block;
    font-size: 13px;
    line-height: 19px;
    font-weight: 400;
    padding: 0;
    text-align: left;
    margin: 0 0 15px;
    color: #777;
}

#footer .widget .links {
    margin: -5px 0 0;
    list-style: none;
}

    #footer .widget .links li {
        display: block;
        position: relative;
        padding: 10px 0;
        line-height: 1;
    }

        #footer .widget .links li > i {
            margin-right: 6px;
        }

#footer #footer-bottom {
    padding: 15px 0;
    background-color: #0c0c0c;
}

    #footer #footer-bottom a,
    #footer #footer-bottom a:hover {
        color: #fff;
    }

#footer-bottom > .container .footer-left {
    padding: 10px 8px 10px 0;
    text-align: left;
}

#footer-bottom > .container .footer-center {
    padding: 10px 8px;
}

#footer-bottom > .container .footer-right {
    padding: 10px 0 10px 8px;
    text-align: right;
}

#footer-bottom .footer-menu {
    margin: 0;
    padding-left: 0;
    display: inline-block;
}

    #footer-bottom .footer-menu li {
        display: inline-block;
        padding: 0 5px 0 0;
        line-height: 24px;
        letter-spacing: 0.4px;
    }

        #footer-bottom .footer-menu li:last-child {
            padding: 0;
        }

        #footer-bottom .footer-menu li + li:before {
            content: "|";
            font-weight: 300;
            position: relative;
            top: -1px;
            margin: 0 9.5px 0 0;
        }

#footer-bottom .copyright {
    display: inline-block;
}

#footer .widget .social-icons {
    margin-top: -5px;
}

@media (max-width: 991px) {
    #footer .logo {
        display: block;
        float: none;
        margin-bottom: 15px;
        margin-right: 0;
    }

    #footer-bottom > .container .footer-left,
    #footer-bottom > .container .footer-center,
    #footer-bottom > .container .footer-right {
        padding: 10px 0;
    }

    #footer-bottom .copyright {
        display: block;
    }

    #footer-bottom > .container .footer-right {
        text-align: left;
    }
}

@media (min-width: 992px) {

    #footer-bottom .logo {
        display: inline-block;
        margin-right: 25px;
    }

    #footer-bottom .copyright {
        margin-top: 7px;
    }

    #footer-bottom > .container {
        display: table;
    }

        #footer-bottom > .container .footer-left,
        #footer-bottom > .container .footer-center,
        #footer-bottom > .container .footer-right {
            display: table-cell;
            vertical-align: middle;
        }

            #footer-bottom > .container .footer-left * {
                vertical-align: middle;
            }

        #footer-bottom > .container .footer-center {
            text-align: center;
            width: 350px;
        }

    #footer-bottom .footer-menu {
        margin-left: -7px;
    }
}

div.lazy-load {
    position: relative;
    z-index: 2;
}

    div.lazy-load + .loader-icon {
        position: absolute;
        left: 50%;
        top: 50%;
        line-height: 1;
        font-size: 25px;
        color: #999;
        margin-top: -13px;
        margin-left: -13px;
        z-index: 1;
    }

    .top-container{
        min-height:100px;
    }