.body {
    font-family: Lato;
    color: #666;
    font-size: 14px;
    line-height: 1.2;
    min-height: 100vh
}

p {
    line-height: 1.8;
    padding: 0;
    margin: 0 0 20px
}

h1, h2, h3, h4, h5, h6 {
    font-family: Montserrat;
    font-weight: 600;
    color: #35354a
}

h1 {
    font-size: 42px;
    margin-bottom: 25px;
    font-weight: 600;
    line-height: 1.2
}

h2 {
    font-size: 34px;
    margin-bottom: 20px;
    line-height: 1.4
}

h3 {
    font-size: 26px;
    margin-bottom: 15px;
    line-height: 1.4
}

h4 {
    font-size: 24px;
    margin-bottom: 15px;
    line-height: 1.6
}

h5 {
    font-size: 18px;
    margin-bottom: 5px;
    line-height: 1.6
}

h6 {
    font-size: 16px;
    margin-bottom: 5px;
    line-height: 1.8
}

.list-mark {
    font-weight: 600;
    color: #29abe2
}

blockquote.pull-left, q.pull-left {
    padding-right: 15px
}

blockquote.pull-right, q.pull-right {
    padding-left: 15px
}

th {
    font-weight: 600
}

/* bordered button */
.btns-bordered {
    color: #ffffff;
}

.btns-bordered:before, .btns-bordered:hover:before, .btns-bordered:focus:before, .btns-bordered:active:before, .btns-bordered.active:before {
    background: transparent
}

.btns-bordered:after {
    border: 2px solid #ffffff
}

.btns-bordered:hover, .btns-bordered:focus, .btns-bordered:active, .btns-bordered.active {
    color: #35354a;
}

.btns-bordered:hover:after, .btns-bordered:focus:after, .btns-bordered:active:after, .btns-bordered.active:after {
    border-color: #35354a
}

/* button with white to theme color background animation */
.btns-white {
    color: #29abe2;
}

.btns-white:before {
    background: #fff
}

.btns-white:hover, .btns-white:focus, .btns-white:active, .btns-white.active {
    color: #fff;
}

.btns-white:hover:before, .btns-white:focus:before, .btns-white:active:before, .btns-white.active:before {
    background: #35354a /* bordered button */
}

.btns-white-bordered {
    color: #fff;
}

.btns-white-bordered:before, .btns-white-bordered:hover:before, .btns-white-bordered:focus:before, .btns-white-bordered:active:before, .btns-white-bordered.active:before {
    background: transparent
}

.btns-white-bordered:after {
    border: 2px solid #fff
}

.btns-white-bordered:hover, .btns-white-bordered:focus, .btns-white-bordered:active, .btns-white-bordered.active {
    color: #29abe2;
}

.btns-white-bordered:hover:after, .btns-white-bordered:focus:after, .btns-white-bordered:active:after, .btns-white-bordered.active:after {
    border-color: #29abe2
}

.decorated-bg {
    background-image: url("../images/parts/pattern.png");
    background-repeat: repeat
}

.theme-back, .theme-back-alt {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.theme-back {
    background: -webkit-linear-gradient(bottom, rgba(53, 53, 74, 0.5) 0%, rgba(53, 53, 74, 0.7) 75%, rgba(53, 53, 74, 0.9) 100%);
    background: -moz-linear-gradient(bottom, rgba(53, 53, 74, 0.5) 0%, rgba(53, 53, 74, 0.7) 75%, rgba(53, 53, 74, 0.9) 100%);
    background: -o-linear-gradient(bottom, rgba(53, 53, 74, 0.5) 0%, rgba(53, 53, 74, 0.7) 75%, rgba(53, 53, 74, 0.9) 100%);
    background: -ms-linear-gradient(bottom, rgba(53, 53, 74, 0.5) 0%, rgba(53, 53, 74, 0.7) 75%, rgba(53, 53, 74, 0.9) 100%);
    background: linear-gradient(to top, rgba(53, 53, 74, 0.5) 0%, rgba(53, 53, 74, 0.7) 75%, rgba(53, 53, 74, 0.9) 100%)
}

.theme-back-alt {
    background: rgba(53, 53, 74, 0.85)
}

.inner-shadow {
    -webkit-box-shadow: 0 0 10px #000 inset;
    box-shadow: 0 0 10px #000 inset
}

body.body .muted-bg {
    background-color: #f7f7f7
}

body.body .main-bg {
    background-color: #29abe2;
    color: #fff
}

body.body .white-bg {
    background-color: #fff;
    color: #666
}

body.body .alt-bg {
    background-color: #35354a;
    color: #fff
}

body.body .text-colorful {
    color: #29abe2
}

body.body .colorful-border {
    border-color: #29abe2
}

body.body .alt-border {
    border-color: #29abe2
}

body.body .alt-color {
    color: #35354a
}

body.body .colorful {
    color: #29abe2
}

body.body .solid-color {
    color: #333
}

body.body .text-white {
    color: #fff
}

body.body .text-muted {
    color: #999
}

.logo a, .logo img {
    display: block
}

.header {
    zoom: 1;
    position: relative;
    z-index: 10
}

.header:before, .header:after {
    content: "";
    display: table
}

.header:after {
    clear: both
}

/* top infobar with contact information, etc. */
.header .infobar {
    zoom: 1;
    font-family: Raleway;
    font-size: 11px;
    line-height: 42px;
    color: #fff;
    background: #35354a;
}

.header .infobar:before, .header .infobar:after {
    content: "";
    display: table
}

.header .infobar:after {
    clear: both
}

.header .infobar.transparent {
    border-color: rgba(255, 255, 255, 0.1);
    background: transparent
}

.header .socials a {
    color: #fff;
}

.header .socials a:hover, .header .socials a:focus, .header .socials a:active {
    color: #29abe2
}

.header .side-icon-block {
    position: relative;
    padding-left: 45px;
    font-family: Montserrat;
    font-size: 13px;
    line-height: 1.6;
    text-align: left;
    display: inline-block;
}

.header .side-icon-block .icon {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 27px
}

/* header that is on top of the header image, banners */
.header-over {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%
}

/* header menu toggler */
.header-toggler {
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 32px;
    color: inherit;
    text-align: center;
    cursor: pointer;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -o-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    position: relative;
}

.header-toggler:hover, .header-toggler:focus, .header-toggler:active {
    color: #29abe2
}

.header-toggler > label {
    cursor: pointer
}

.header-toggler > label {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

/* header menu states: shown/hiden */
.header-shown-sign, #header-hidden:checked ~ * .header-shown-sign {
    display: none
}

.header-hidden-sign, #header-hidden:checked ~ * .header-hidden-sign {
    display: block
}

#header-shown:checked ~ * .header-toggler {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg)
}

#header-shown:checked ~ * .header-shown-sign {
    display: block
}

#header-shown:checked ~ * .header-hidden-sign {
    display: none
}

@media (min-width: 768px) {
    .header-over {
        position: absolute;
    }
}

/* menu wrapper */
.menu-wrap {
    position: relative;
    z-index: 20;
}

.menu-wrap .line-right, .menu-wrap .line-left, .menu-wrap .line-sides {
    margin-top: 5px
}

/* menu item side icon block */
.menu-sign-right, .menu-sign-left {
    position: absolute;
    top: 50%;
    width: 25px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.menu-sign-right {
    right: 0;
    text-align: left
}

.menu-sign-left {
    left: 0;
    text-align: center
}

.menu-container, .menu {
    zoom: 1
}

.menu-container:before, .menu:before, .menu-container:after, .menu:after {
    content: "";
    display: table
}

.menu-container:after, .menu:after {
    clear: both
}

.menu-item {
    cursor: default
}

/* menu item */
.menu-items {
    zoom: 1;
    font-family: Montserrat;
    font-size: 17px;
    z-index: 2;
    display: block;
    position: relative;
}

.menu-items:before, .menu-items:after {
    content: "";
    display: table
}

.menu-items:after {
    clear: both
}

.menu-items a, .menu-items .menu-item {
    text-decoration: none;
    display: block;
    color: inherit;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    white-space: nowrap;
    position: relative;
    line-height: 30px
}

.menu-items a {
    cursor: pointer;
}

.menu-items a:hover, .menu-items a:focus, .menu-items a:active, .menu-items a.active {
    color: #29abe2
}

.menu-items li {
    position: relative;
    color: #666;
    font-weight: 500
}

.menu-items > li {
    color: #35354a
}

.menu-items > li > ul {
    display: none
}

.menu-items .toggle-icon {
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    width: 60px;
    line-height: 50px;
}

.menu-items .toggle-icon:hover, .menu-items .toggle-icon:focus, .menu-items .toggle-icon:active {
    color: #29abe2
}

.menu-items .active > ul {
    display: block
}

#header-shown:checked ~ * .menu {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

/* menu styles variations */
.menu-wrap .menu-container, .menu-wrap .menu {
    background: #fff
}

.menu-wrap.transparent, .menu-wrap.transparent .menu-items, .menu-wrap.transparent .menu-items li {
    color: #fff
}

.menu-wrap.transparent .menu-container, .menu-wrap.transparent .menu {
    background: rgba(53, 53, 74, 0.7)
}

.menu-wrap.pannel .menu-container {
    background-color: #fff;
    padding: 20px
}

.menu-wrap.line .logo img {
    max-height: 40px
}

/* menu styles only for mobile screens */
@media (max-width: 767px) {
    .menu-sign-right, .menu-sign-left {
        display: none
    }

    .menu-items ul {
        padding-left: 20px;
        font-size: 15px
    }

    .menu-items > li > a, .menu-items > li > .menu-item, .menu-items > li > ul {
        padding: 10px 20px;
        border-bottom: 1px solid rgba(102, 102, 102, 0.1)
    }

    .menu-wrap .menu-items > li > a, .menu-wrap .menu-items > li > ul {
        border-bottom-color: rgba(102, 102, 102, 0.1)
    }

    .menu-wrap.transparent .menu-items > li > a, .menu-wrap.transparent .menu-items > li > ul {
        border-bottom-color: rgba(255, 255, 255, 0.1)
    }

    .menu-wrap.line {
        height: 70px;
    }

    .menu-wrap.line .logo {
        float: left
    }

    .menu-wrap.line .menu-container {
        padding: 15px 20px
    }

    .menu-wrap.line .menu {
        position: fixed;
        top: 90px;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 20px 70px 0px 0px;
        overflow: auto;
        -webkit-transition: all 0.2s linear 0s;
        -moz-transition: all 0.2s linear 0s;
        -o-transition: all 0.2s linear 0s;
        -ms-transition: all 0.2s linear 0s;
        transition: all 0.2s linear 0s;
        -webkit-transform: translateY(-300%);
        -moz-transform: translateY(-300%);
        -o-transform: translateY(-300%);
        -ms-transform: translateY(-300%);
        transform: translateY(-300%)
    }
}

@media (min-width: 768px) {
    /* menu with no side insets */
    .menu-no-sides > li:first-child {
        margin-left: 0 !important
    }

    .menu-no-sides > li:last-child {
        margin-right: 0 !important
    }

    .menu-container {
        max-width: 1200px;
        padding: 0 20px;
        margin: 0 auto
    }

    /* menu row */
    .menu-row {
        display: table;
        width: 100%;
    }

    .menu-row .logo, .menu-row .menu, .menu-row .menu-btn, .menu-row .menu-col {
        /*display: table-cell;*/
        vertical-align: bottom
    }

    .menu-row .logo, .menu-row .menu-btn {
        width: 1%
    }

    .menu-row .logo {
        padding-right: 15px
    }

    .menu-row .menu-btn {
        padding-left: 15px
    }

    .menu-items {
        font-size: 13px
    }

    /*
    Menu variations
    */
    .menu-wrap.transparent .menu-container, .menu-wrap.transparent .menu {
        background: transparent
    }

    .menu-wrap.simple, .menu-wrap.contacts {
        padding-top: 15px;
        padding-bottom: 15px
    }

    .menu-wrap.contacts .menu-row + .menu-row {
        margin-top: 15px
    }

    .menu-wrap.simple .menu-items, .menu-wrap.pannel .menu-items {
        float: right
    }

    /*
    Single line menu items
    */
    .menu-wrap.line .menu-items ul li {
        color: #666
    }

    .menu-wrap.line .menu-items ul a:hover, .menu-wrap.line .menu-items ul a:focus, .menu-wrap.line .menu-items ul a:active, .menu-wrap.line .menu-items ul a.active {
        color: #29abe2
    }

    .menu-wrap.line .menu-items .toggle-icon {
        display: none;
    }

    .menu-wrap.line .menu-items li:hover > ul {
        display: block
    }

    .menu-wrap.line .menu-items li:after {
        content: "";
        position: absolute;
        background: #29abe2;
        -webkit-transition: all 0.2s linear 0s;
        -moz-transition: all 0.2s linear 0s;
        -o-transition: all 0.2s linear 0s;
        -ms-transition: all 0.2s linear 0s;
        transition: all 0.2s linear 0s
    }

    .menu-wrap.line .menu-items ul {
        display: none;
        background: #fff;
        position: absolute;
        top: 0;
        left: 100%;
        -webkit-box-shadow: 0 0 2px #666;
        box-shadow: 0 0 2px #666;
    }

    .menu-wrap.line .menu-items ul li {
        padding-left: 25px;
        padding-right: 40px;
    }

    .menu-wrap.line .menu-items ul li:after {
        right: 0;
        top: 0;
        bottom: 100%;
        width: 4px
    }

    .menu-wrap.line .menu-items ul li:hover:after, .menu-wrap.line .menu-items ul li:focus:after, .menu-wrap.line .menu-items ul li:active:after {
        bottom: 0;
    }

    .menu-wrap.line .menu-items ul li:hover .menu-sign-right, .menu-wrap.line .menu-items ul li:focus .menu-sign-right, .menu-wrap.line .menu-items ul li:active .menu-sign-right, .menu-wrap.line .menu-items ul li:hover .menu-sign-left, .menu-wrap.line .menu-items ul li:focus .menu-sign-left, .menu-wrap.line .menu-items ul li:active .menu-sign-left {
        color: #29abe2;
    }

    .menu-wrap.line .menu-items ul.left {
        left: auto;
        right: 100%;
    }

    .menu-wrap.line .menu-items ul.left li {
        padding-left: 40px;
        padding-right: 25px;
        text-align: right;
    }

    .menu-wrap.line .menu-items ul.left li:after {
        right: auto;
        left: 0
    }

    .menu-wrap.line .menu-items > li {
        float: left;
        margin: 0 15px;
    }

    .menu-wrap.line .menu-items > li > a, .menu-wrap.line .menu-items > li > a:hover, .menu-wrap.line .menu-items > li > a:focus, .menu-wrap.line .menu-items > li > a:active {
        color: inherit
    }

    .menu-wrap.line .menu-items > li > .menu-item {
        color: inherit
    }

    .menu-wrap.line .menu-items > li:after {
        left: -4px;
        right: 150%;
        bottom: 0;
        height: 4px
    }

    .menu-wrap.line .menu-items > li:hover:after, .menu-wrap.line .menu-items > li:focus:after, .menu-wrap.line .menu-items > li:active:after {
        right: -4px
    }

    .menu-wrap.line .menu-items > li > ul {
        top: 100%;
        margin-top: 5px;
        left: -4px;
    }

    .menu-wrap.line .menu-items > li > ul:before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 100%;
        width: 100%;
        height: 8px;
        display: block
    }

    .menu-wrap.line .menu-items > li > ul.left {
        right: -4px
    }

    /* sticked menu styles */
    .sticked-menu .menu-wrap {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        background-color: #fff;
        -webkit-box-shadow: 0 0 2px #666;
        box-shadow: 0 0 2px #666;
    }

    .sticked-menu .menu-wrap.transparent {
        background-color: rgba(53, 53, 74, 0.7)
    }

    .sticked-menu .stick-hide {
        display: none;
    }

    .sticked-menu .stick-hide + .menu-row {
        margin-top: 0 !important
    }
}

/* make menu bigger for larger screens */
@media (min-width: 992px) {
    .menu-items {
        font-size: 14px
    }

    .menu-wrap.simple .logo img {
        max-height: 40px
    }

    .menu-wrap.contacts {
        padding-top: 20px;
    }

    .menu-wrap.contacts .logo img {
        max-height: 50px
    }

    .menu-wrap.contacts .menu-row + .menu-row {
        margin-top: 20px
    }

    .menu-wrap.line .menu-items > li {
        margin: 0 20px
    }

    .menu-wrap.line .menu-items ul li {
        padding-top: 5px;
        padding-bottom: 5px
    }
}

/* make menu take it's maximum size for hi-resolution screens */
@media (min-width: 1600px) {
    .menu-wrap.simple {
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .menu-wrap.simple .logo {
        padding-right: 25px;
    }

    .menu-wrap.simple .logo img {
        max-height: 60px
    }

    .menu-wrap.contacts {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .menu-wrap.contacts .logo img {
        max-height: 80px
    }

    .menu-wrap.contacts .menu-row + .menu-row {
        margin-top: 30px
    }
}

.footer-logo {
    height: 70px;
}

.footer-logo img {
    max-height: 50px
}

.footer-title {
    padding: 40px 0 10px;
    height: 70px;
    font-family: Montserrat;
    font-weight: 600;
    font-size: 16px;
}

.footer-text {
    line-height: 1.6
}

.footer-copyrights {
    line-height: 20px
}

/* simple, one line footer */
.footer-simple {
    line-height: 40px;
}

.footer-simple .footer-copyrights, .footer-simple .cols-list {
    display: inline-block;
    vertical-align: middle
}

@media (min-width: 768px) {
    .footer-title {
        padding: 20px 0 30px
    }
}

.scroll-top {
    position: fixed;
    display: block;
    right: 30px;
    bottom: 50px;
    background-color: #29abe2;
    color: #fff;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    opacity: .5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
    text-align: center;
    width: 42px;
    height: 42px;
    font-size: 24px;
    line-height: 42px;
    z-index: 20;
}

.scroll-top:hover, .scroll-top:focus, .scroll-top:active {
    opacity: 1;
    -ms-filter: none;
    filter: none;
    color: #fff
}

.scroll-top.disabled {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0)
}

.content-section {
    margin-top: 80px;
    margin-bottom: 60px;
}

.content-section.tight {
    margin-top: 60px;
    margin-bottom: 60px
}

.solid-section {
    padding-top: 80px;
    padding-bottom: 60px;
}

.solid-section.tight {
    padding-top: 60px;
    padding-bottom: 60px
}

.head-section, .wide-head-section {
    padding-top: 100px;
    padding-bottom: 60px
}

/* section head titles */
.section-head {
    margin-bottom: 30px
}

.section-head h2, .section-alt-head h2 {
    color: #35354a;
    margin: 0
}

.section-head p, .section-alt-head p {
    padding-top: 5px;
    font-size: 16px;
    margin: 0
}

/* section with background image */
.back-section {
    position: relative;
    z-index: 1;
}

.back-section .container {
    position: relative;
}

.back-section, .back-section .section-alt-head h2, .back-section .section-head h2 {
    color: #fff
}

.back-section .section-footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%
}

/* pushed up section (i.e. Homepage Pricings) */
.hyped-block {
    zoom: 1
}

.hyped-block:before, .hyped-block:after {
    content: "";
    display: table
}

.hyped-block:after {
    clear: both
}

@media (min-width: 768px) {
    /* Make sections spacings bigger for wider screens. */
    .section-head {
        margin-bottom: 50px
    }

    .head-section {
        padding-top: 250px;
        padding-bottom: 80px
    }

    .wide-head-section {
        padding-top: 300px;
        padding-bottom: 80px
    }

    .content-section {
        margin-top: 100px;
        margin-bottom: 80px
    }

    .solid-section {
        padding-top: 100px;
        padding-bottom: 80px
    }
}

/* styles for pushed up sections */
@media (min-width: 992px) {
    .md-stuck-top {
        margin-top: 0
    }

    .hyped-block {
        margin-top: -120px
    }
}

@media (min-width: 1600px) {
    .lg-stuck-top {
        margin-top: 0
    }

    .hyped-block {
        margin-top: -160px
    }
}

/* simple social links */
.socials {
    font-size: 15px;
}

.socials a {
    color: #666;
}

.socials a:hover, .socials a:focus, .socials a:active {
    color: #29abe2
}

/* social blocks that are backlighted on hover */
.social-blocks {
    font-size: 15px;
}

.social-blocks a {
    display: block;
    color: #29abe2;
    width: 2em;
    height: 2em;
    line-height: 2em;
    text-align: center;
}

.social-blocks a:hover, .social-blocks a:focus, .social-blocks a:active {
    color: #fff;
    background: #29abe2
}

.feature {
    position: relative;
    display: inline-block;
    padding: 20px;
    zoom: 1
}

.feature:before, .feature:after {
    content: "";
    display: table
}

.feature:after {
    clear: both
}

.feature-icon {
    text-align: center;
    vertical-align: middle;
    display: inline-block
}

.feature-title {
    font-family: Montserrat;
    font-size: 16px;
    margin-bottom: 10px;
    font-weight: 500
}

.feature-text {
    line-height: 1.6
}

.feature-head {
    display: table;
    border-collapse: separate;
    width: 100%;
}

.feature-head .feature-icon, .feature-head .feature-title {
    display: table-cell;
    vertical-align: middle
}

/* feature block with icon wrapper in square-like image */
.feature-side {
    padding: 40px 0 0 45px;
}

.feature-side .feature-icon {
    /*background: url("../images/parts/feature-icon.png") no-repeat;*/
    width: 56px;
    height: 56px;
    font-size: 26px;
    line-height: 56px;
    color: #29abe2;
    position: absolute;
    left: 0;
    top: 0;
}

/* feature block with background and image on top of it */
.solid-feature {
    margin-top: 50px;
    padding-top: 40px;
    padding-bottom: 30px;
    background-color: #fff;
}

.solid-feature .feature-icon {
    background-color: #fff;
    width: 75px;
    height: 75px;
    font-size: 26px;
    line-height: 75px;
    margin-top: -125px
}

/* feature block with background and image at side */
.block-feature {
    display: block;
    padding: 0;
}

.block-feature .feature-icon {
    background-color: #fff;
    width: 68px;
    height: 68px;
    font-size: 26px;
    line-height: 68px;
}

.block-feature .feature-icon.pull-left {
    margin-right: 20px
}

.block-feature .feature-icon.pull-right {
    margin-left: 20px
}

.block-feature .feature-title {
    padding: 0 20px
}

.block-feature .feature-text {
    padding: 20px
}

.counter-title {
    font-family: Montserrat;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 20px
}

.counter-value {
    font-family: Montserrat;
    font-weight: 600;
    font-size: 54px;
    line-height: 1
}

.block-link {
    display: block;
    text-decoration: none;
    color: #fff;
    position: relative;
}

.block-link .back {
    background: #000;
    opacity: .5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50)
}

.block-link .content {
    font-size: 32px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.block-link .hover, .block-link .hover-show, .block-link .hover-hidden {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.block-link .hover-show, .block-link .hover-hidden {
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    color: #fff
}

.block-link .hover-show {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -o-transform: scale(2);
    -ms-transform: scale(2);
    transform: scale(2)
}

.block-link .hover-lines {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 20px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -webkit-transition: all 0.2s linear 0.2s;
    -moz-transition: all 0.2s linear 0.2s;
    -o-transition: all 0.2s linear 0.2s;
    -ms-transition: all 0.2s linear 0.2s;
    transition: all 0.2s linear 0.2s;
}

.block-link .hover-lines .line-content {
    padding: 20px;
    border: 2px solid transparent
}

.block-link .hover-lines:before, .block-link .hover-lines:after {
    content: "";
    position: absolute;
    background-color: #29abe2;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s
}

.block-link .hover-lines:before {
    left: 0;
    right: 100%;
    top: 20px;
    height: 2px
}

.block-link .hover-lines:after {
    top: 0;
    bottom: 100%;
    left: 20px;
    width: 2px
}

.block-link .hover-lines .line-link {
    position: absolute;
    right: 20px;
    bottom: 20px
}

.block-link .image-wrap .image {
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.block-link:hover .hover-show, .block-link:focus .hover-show, .block-link:active .hover-show, .block-link.active .hover-show {
    opacity: 1;
    -ms-filter: none;
    filter: none;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.block-link:hover .hover-hidden, .block-link:focus .hover-hidden, .block-link:active .hover-hidden, .block-link.active .hover-hidden {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0)
}

.block-link:hover .hover-lines, .block-link:focus .hover-lines, .block-link:active .hover-lines, .block-link.active .hover-lines {
    opacity: 1;
    -ms-filter: none;
    filter: none;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
}

.block-link:hover .hover-lines:before, .block-link:focus .hover-lines:before, .block-link:active .hover-lines:before, .block-link.active .hover-lines:before, .block-link:hover .hover-lines:after, .block-link:focus .hover-lines:after, .block-link:active .hover-lines:after, .block-link.active .hover-lines:after {
    -webkit-transition: all 0.2s linear 0.2s;
    -moz-transition: all 0.2s linear 0.2s;
    -o-transition: all 0.2s linear 0.2s;
    -ms-transition: all 0.2s linear 0.2s;
    transition: all 0.2s linear 0.2s
}

.block-link:hover .hover-lines:before, .block-link:focus .hover-lines:before, .block-link:active .hover-lines:before, .block-link.active .hover-lines:before {
    left: 10px;
    right: 20px
}

.block-link:hover .hover-lines:after, .block-link:focus .hover-lines:after, .block-link:active .hover-lines:after, .block-link.active .hover-lines:after {
    top: 10px;
    bottom: 20px
}

.block-link:hover .image-wrap .image, .block-link:focus .image-wrap .image, .block-link:active .image-wrap .image, .block-link.active .image-wrap .image {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2)
}

.banner {
    position: relative;
    color: #fff;
    text-align: center
}

.banner-image {
    height: 100vh; /* make banner image take full screen height */
    overflow: hidden;
}

/* make banner image take full screen height */
.banner-image img {
    max-width: 100%
}

.banner-title {
    font-family: Montserrat;
    font-weight: 800;
    margin-bottom: .3em
}

.banner-subtitle {
    line-height: 1.6
}

.flexslider {
    zoom: 1;
    position: relative;
    overflow: hidden;
}

.flexslider:before, .flexslider:after {
    content: "";
    display: table
}

.flexslider:after {
    clear: both
}

.flexslider .flex-viewport, .flexslider .slides, .flexslider .slide {
    width: 100%;
    height: 100%;
    position: relative;
}

.flexslider .slide {
    display: none;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden
}

.flexslider .flex-prev, .flexslider .flex-next {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 64px;
    z-index: 10;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    color: #fff;
    text-shadow: 0 0 5px #666;
}

.flexslider .flex-prev:hover, .flexslider .flex-next:hover {
    color: #29abe2
}

.flexslider .flex-prev.flex-disabled, .flexslider .flex-next.flex-disabled {
    display: none
}

.flexslider .flex-custom-controls {
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%;
}

.flexslider .flex-custom-controls .flex-control-nav {
    zoom: 1;
    display: inline-block;
    vertical-align: top;
}

.flexslider .flex-custom-controls .flex-control-nav:before, .flexslider .flex-custom-controls .flex-control-nav:after {
    content: "";
    display: table
}

.flexslider .flex-custom-controls .flex-control-nav:after {
    clear: both
}

.flexslider .flex-custom-controls .flex-control-nav li {
    float: left;
    display: block;
    text-indent: -1000px;
    overflow: hidden;
    margin: 0 3px;
    position: relative;
    z-index: 10;
}

.flexslider .flex-custom-controls .flex-control-nav li a {
    display: block;
    width: 16px;
    height: 16px;
    background-color: #fff;
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    filter: alpha(opacity=70);
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
}

.flexslider .flex-custom-controls .flex-control-nav li a:hover, .flexslider .flex-custom-controls .flex-control-nav li a:focus {
    opacity: 1;
    -ms-filter: none;
    filter: none;
    background-color: #35354a
}

.flexslider .flex-custom-controls .flex-control-nav li a.flex-active {
    opacity: 1;
    -ms-filter: none;
    filter: none;
    background-color: #29abe2
}

.flexslider .flex-prev {
    left: -100px
}

.flexslider .flex-next {
    right: -100px
}

.flexslider:hover .flex-prev, .flexslider:hover .flex-next {
    opacity: 1;
    -ms-filter: none;
    filter: none
}

.flexslider:hover .flex-prev {
    left: 50px
}

.flexslider:hover .flex-next {
    right: 50px
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden
}

.owl-carousel .owl-stage, .owl-carousel .owl-item {
    position: relative;
}

.owl-carousel .owl-item {
    float: left;
    min-height: 1px;
    padding: 0 5px
}

.owl-carousel .disabled {
    display: none
}

.owl-carousel .owl-dots {
    text-align: center
}

.owl-carousel .owl-dot {
    display: inline-block;
    vertical-align: top;
    margin: 30px 3px 0;
    cursor: pointer;
}

.owl-carousel .owl-dot span {
    display: inline-block;
    vertical-align: top;
    width: 16px;
    height: 16px;
    background-color: rgba(102, 102, 102, 0.7);
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s
}

.owl-carousel .owl-dot.active span {
    background-color: #29abe2
}

.owl-carousel .owl-dot:hover span {
    background-color: #35354a
}

.pricing {
    margin-top: 20px;
    margin-bottom: 40px
}

.price-image {
    height: 80px;
    position: relative;
    margin-bottom: 10px;
    display: block;
}

.price-image img {
    max-width: 100%;
    max-height: 100%;
    display: inline-block;
    vertical-align: middle;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s;
    opacity: 1;
    -ms-filter: none;
    filter: none
}

.price-image .active-image {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0)
}

.price-title {
    font-family: Montserrat;
    font-size: 18px;
}

.price-back {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: #FFB555;
    -webkit-box-shadow: 0 3px 10px #888;
    box-shadow: 0 3px 10px #888;
    -webkit-transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
    -ms-transition: all 0.2s linear 0s;
    transition: all 0.2s linear 0s
}

/* Pricing block */
.price-block {
    text-align: center;
    position: relative;
    z-index: 1;
    color: #666;
    padding: 30px 15px 20px;
}

.price-block:hover .price-back, .price-block.active .price-back {
    -webkit-box-shadow: 0 10px 15px #888;
    box-shadow: 0 10px 15px #888
}

.price-block:hover .price-image .active-image, .price-block.active .price-image .active-image {
    opacity: 1;
    -ms-filter: none;
    filter: none;
}

.price-block:hover .price-image .active-image ~ .image, .price-block.active .price-image .active-image ~ .image {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0)
}

/* Simple pricing block variation */
.price-block.simple .price-title {
    color: #ffffff;
    min-height: 50px
}

.price-block.simple .price-subtext {
    font-size: 13px;
    color: #666;
    margin-bottom: 5px
}

.price-block.simple .price {
    font-size: 20px;
    color: #0d85de;
    font-family: Montserrat;
    font-weight: 500;
    margin-bottom: 30px
}

.price-block.simple .price-list {
    margin-bottom: 30px;
}

.price-block.simple .price-list li {
    padding-bottom: 5px;
    line-height: 1.6
}

/* Short pricing block variation */
.price-block.short {
    color: #fff;
}

.price-block.short .price-title {
    padding: 15px 0
}

@media (min-width: 992px) {
    /* Adjust spacing for short pricing block title */
    .price-block.short .price-title {
        padding: 30px 0
    }
}

@media (min-width: 1600px) {
    /* Adjust spacing for pricing block */
    .price-block {
        padding-top: 40px;
        padding-bottom: 30px
    }

    /* Make pricing image bigger */
    .price-image {
        height: 110px
    }
}

.steps {
    position: relative;
}

.steps .container {
    position: relative;
    color: #fff;
}

.steps .container .title {
    color: #fff
}

.service-steps, .service-simple-steps {
    display: inline-block;
    zoom: 1;
}

.service-steps:before, .service-simple-steps:before, .service-steps:after, .service-simple-steps:after {
    content: "";
    display: table
}

.service-steps:after, .service-simple-steps:after {
    clear: both
}

.service-steps .step-number, .service-simple-steps .step-number {
    font-family: Montserrat;
    font-weight: 800;
    font-size: 86px;
    margin-right: 30px;
}

.service-steps .step-number.active, .service-simple-steps .step-number.active {
    color: #29abe2
}

.service-steps .step, .service-simple-steps .step {
    height: 70px;
    line-height: 70px;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 70px;
}

.service-steps .step:nth-child(4), .service-simple-steps .step:nth-child(4) {
    margin-bottom: 0
}

/* by default steps should go down like a list */
.service-steps .step {
    position: relative;
    vertical-align: bottom;
}

.service-steps .step:before, .service-steps .step:after {
    content: "";
    position: absolute;
    border-color: #29abe2;
    left: 50%;
    top: 100%
}

.service-steps .step:before {
    border-style: dashed;
    border-width: 0 0 0 2px;
    margin-top: 20px;
    height: 59px
}

.service-steps .step:after {
    border-radius: 50%;
    width: 13px;
    height: 13px;
    border-style: solid;
    border-width: 2px;
    margin-left: -5.5px;
    margin-top: 83px
}

.service-steps .step:nth-child(4):after, .service-steps .step:nth-child(4):before {
    display: none
}

.service-simple-steps .step-separator {
    display: none;
    padding: 0 40px;
    font-size: 34px;
    line-height: 70px;
    color: #29abe2
}

@media (min-width: 1200px) {
    /* for higher resolutions make steps go horizontaly */
    .service-simple-steps .step, .service-steps .step {
        float: left
    }

    .service-simple-steps .step-separator {
        display: block;
        float: left
    }

    .service-simple-steps .step {
        width: 200px;
        display: table
    }

    .service-simple-steps .step-number {
        padding-right: 10px;
        vertical-align: top;
        display: table-cell
    }

    .service-simple-steps .step-text {
        line-height: 1.4;
        display: table-cell;
        vertical-align: bottom;
        text-align: left
    }

    .service-steps .step:before {
        border-width: 2px;
        margin-top: 0;
        right: 37px
    }

    .service-steps .step:after {
        left: auto;
        margin: 0;
        right: 20px
    }

    .service-steps .step:nth-child(2n+1) {
        margin-bottom: 140px
    }

    .service-steps .step:nth-child(2n) {
        margin-top: 140px;
        margin-bottom: 0
    }

    .service-steps .step:nth-child(1):before {
        border-top-width: 0;
        border-right-width: 0;
        margin-top: 20px;
        height: 85px
    }

    .service-steps .step:nth-child(1):after {
        right: 20px;
        margin-top: 98.5px
    }

    .service-steps .step:nth-child(2):before, .service-steps .step:nth-child(2):after {
        bottom: 100%;
        top: auto
    }

    .service-steps .step:nth-child(2):before {
        border-bottom-width: 0;
        border-right-width: 0;
        height: 131px;
        margin-bottom: -26px
    }

    .service-steps .step:nth-child(2):after {
        margin-bottom: 98.5px
    }

    .service-steps .step:nth-child(3):before, .service-steps .step:nth-child(3):after {
        display: none
    }

    .service-steps .step:nth-child(4):before, .service-steps .step:nth-child(4):after {
        display: block;
        bottom: 100%;
        top: auto;
        right: 50%
    }

    .service-steps .step:nth-child(4):before {
        border-bottom-width: 0;
        border-left-width: 0;
        left: 20px;
        height: 91px;
        margin-bottom: -9px
    }

    .service-steps .step:nth-child(4):after {
        margin-right: -6.5px;
        margin-bottom: -26px
    }
}

/* Simple items */
.item {
    background: #fff;
    zoom: 1
}

.item:before, .item:after {
    content: "";
    display: table
}

.item:after {
    clear: both
}

.item-content {
    zoom: 1;
    padding: 40px 20px 20px
}

.item-content:before, .item-content:after {
    content: "";
    display: table
}

.item-content:after {
    clear: both
}

.item-title {
    font-family: Montserrat;
    font-weight: 600;
    color: #29abe2;
    font-size: 16px;
    margin-bottom: 15px;
    white-space: nowrap;
    overflow: hidden;
    overflow: hidden;
    text-overflow: ellipsis
}

.item-text {
    text-align: left;
    line-height: 1.6;
    margin-bottom: 30px;
    height: 66px;
    overflow: hidden
}

/* Items block with side title and description, i.e. Homepage 2 services block */
.side-items-head {
    zoom: 1;
}

.side-items-head:before, .side-items-head:after {
    content: "";
    display: table
}

.side-items-head:after {
    clear: both
}

.side-items-head h2 {
    padding: 20px;
    background-color: #fff
}

.side-items {
    zoom: 1;
    clear: both;
    float: left
}

.side-items:before, .side-items:after {
    content: "";
    display: table
}

.side-items:after {
    clear: both
}

.item.solid .block-link {
    margin: 20px 20px 0
}

@media (min-width: 768px) {
    .side-items-head h2 {
        float: left;
        padding: 30px 30px 200px;
        margin: 0 20px 0 0
    }

    .side-items-head p {
        padding-top: 30px
    }

    .side-items {
        margin: -150px 0 0 100px
    }
}

.simple-testimonial .tt-title {
    font-family: Montserrat;
    font-weight: 600;
    font-size: 16px;
    color: #35354a;
    margin-bottom: 5px
}

.simple-testimonial .tt-rating {
    color: #29abe2;
    font-size: 18px;
    margin-bottom: 15px
}

.simple-testimonial .tt-star {
    margin: 0 3px
}

.simple-testimonial .tt-content {
    padding: 15px 35px 25px;
    position: relative;
    z-index: 1;
    line-height: 1.6;
    text-align: justify;
    /*text-align-last: center;*/
    overflow: hidden
}

.simple-testimonial .tt-quote {
    position: absolute;
    left: 0;
    top: -40px;
    font-family: Montserrat;
    font-weight: 900;
    font-size: 220px;
    color: #29abe2;
    opacity: .2;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
    filter: alpha(opacity=20);
    line-height: 1;
    z-index: -1
}

.simple-testimonial .tt-icon {
    margin-bottom: 10px
}

.simple-testimonial .pexx-tt-user-title {
    font-weight: 600;
    color: #35354a;
    font-size: 18px;
    margin-bottom: 5px
}

@media (min-width: 768px) {
    .simple-testimonial .tt-title {
        margin-bottom: 20px
    }

    .simple-testimonial .tt-rating {
        margin-bottom: 30px
    }

    .simple-testimonial .tt-star {
        margin: 0 5px
    }

    .simple-testimonial .tt-content {
        margin-bottom: -10px
    }

}

@media (max-width: 700px) {

    .cover-image {

        background-position: inherit;

    }
}

.contact-table {
    padding-top: 30px;
    padding-bottom: 30px
}

.contact-icon {
    font-size: 60px;
}

.contact-content, .contact-icon {
    padding: 15px 0
}

.contact-title {
    font-family: Montserrat;
    font-weight: 600;
    font-size: 24px;
    margin-bottom: 10px
}

@media (min-width: 768px) {
    .contact-table {
        display: table;
        width: 100%;
        min-height: 150px
    }

    .contact-icon, .contact-content, .contact-btn {
        display: table-cell;
        vertical-align: middle
    }

    .contact-content, .contact-icon {
        padding-right: 40px
    }

    .contact-icon, .contact-btn {
        width: 1%
    }
}

.map-section {
    position: relative;
}

.map-section .iframe, .map-section .gmap {
    width: 100%;
    height: 500px;
    display: block;
    border: 0 none;
    z-index: 1
}

.our-info {
    zoom: 1;
    padding: 30px 20px 15px;
    max-width: 1200px;
    z-index: 1;
    position: relative;
}

.our-info:before, .our-info:after {
    content: "";
    display: table
}

.our-info:after {
    clear: both
}

.info-container {
    zoom: 1
}

.info-container:before, .info-container:after {
    content: "";
    display: table
}

.info-container:after {
    clear: both
}

.info-title {
    font-family: Montserrat;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 15px
}

.info-line {
    zoom: 1;
    margin-bottom: 10px;
}

.info-line:before, .info-line:after {
    content: "";
    display: table
}

.info-line:after {
    clear: both
}

.info-line:last-child {
    margin-bottom: 0
}

.info-icon {
    margin-right: 5px
}

.info-block + .info-block {
    margin-top: 30px
}

@media (min-width: 768px) {
    .our-info {
        display: table;
        width: 100%;
        padding: 50px 0 20px;
    }

    .our-info .info-block {
        display: table-cell;
        padding: 0 20px
    }
}

@media (min-width: 992px) {
    .map-section .info-wrap {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
    }

    .map-section .info-wrap.top {
        bottom: auto;
        top: 0
    }

    .info-container {
        margin: 0 auto;
        width: 100%;
        max-width: 1200px;
        padding: 0 20px
    }

    .our-info {
        width: 66.6666%;
        left: 16.6666%;
    }

    .our-info.side {
        display: block;
        width: 370px;
        float: right;
        left: auto;
        padding-left: 20px;
        padding-right: 20px;
    }

    .our-info.side .info-block {
        display: block;
        padding: 0;
    }

    .our-info.side .info-block + .info-block {
        margin-top: 50px
    }
}

.member-info {
    padding: 20px;
}

.member-info .socials {
    margin-top: 20px
}

.member-title {
    font-size: 18px;
    font-weight: 600;
    color: #35354a;
    line-height: 1.6
}

.content-text img {
    margin-bottom: 20px;
    max-width: 100%;
}

.content-text img.pull-left {
    margin-right: 20px
}

.content-text img.pull-right {
    margin-left: 20px
}

.content-text table, .content-text ul {
    margin-bottom: 20px
}

.paginator {
    margin: 20px -5px;
    zoom: 1;
    display: inline-block;
}

.paginator:before, .paginator:after {
    content: "";
    display: table
}

.paginator:after {
    clear: both
}

.paginator a, .paginator span {
    margin: 0 5px;
    display: inline-block;
    float: left;
    color: #666;
    padding: 0 10px;
    line-height: 26px;
    min-width: 26px;
    text-align: center;
    white-space: nowrap;
    font-weight: 500
}

.paginator a.active, .paginator span.active {
    color: #fff;
    background: #29abe2
}

.paginator a:hover, .paginator a:focus {
    color: #29abe2
}

.paginator .previous, .paginator .next {
    color: #29abe2;
    position: relative;
}

.paginator .previous:after, .paginator .next:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border: 2px solid
}

.paginator .previous:hover, .paginator .next:hover, .paginator .previous:focus, .paginator .next:focus {
    color: #35354a
}

/*
    .line-* - simple lines with dot at the side(s)
*/
.line-right, .line-left, .line-sides {
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: relative;
}

.line-right:before, .line-left:before, .line-sides:before, .line-right:after, .line-left:after, .line-sides:after {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: inherit
}

.line-right:after, .line-left:after, .line-sides:after {
    left: auto;
    right: 0
}

.line-right:before, .line-left:after {
    display: none
}

/*
    .hard-line-* - adds hard line at a block side with an inset
*/
.hard-line-right, .hard-line-left {
    position: relative;
}

.hard-line-right {
    padding-right: 15px;
    border-right: 4px solid #29abe2
}

.hard-line-left {
    padding-left: 15px;
    border-left: 4px solid #29abe2
}

/*
    .solid-border-* - adds solid border at a block side
*/
.solid-border-top {
    border-top: 2px solid #29abe2
}

.solid-border-left {
    border-left: 2px solid #29abe2
}

.solid-border-right {
    border-right: 2px solid #29abe2
}

.solid-border-bottom {
    border-bottom: 2px solid #29abe2
}

.solid-border-left {
    border-left: 2px solid #29abe2
}

.selectable-categories a {
    margin: 0 10px 10px;
    font-weight: 600;
    display: inline-block
}

@media (min-width: 768px) {
    .page-content {
        width: 100%;
        min-height: 1px
    }

    .page-sidebar {
        width: 300px
    }

    .page-sidebar-right .page-content {
        float: left;
        padding-right: 350px
    }

    .page-sidebar-right .page-sidebar {
        float: left;
        margin-left: -300px
    }

    .page-sidebar-left .page-content {
        float: right;
        padding-left: 350px
    }

    .page-sidebar-left .page-sidebar {
        float: right;
        margin-right: -300px
    }
}

.page-path {
    zoom: 1;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: top;
}

.page-path:before, .page-path:after {
    content: "";
    display: table
}

.page-path:after {
    clear: both
}

.page-path li {
    font-family: Montserrat;
    font-weight: 500;
    font-size: 12px;
    float: left;
}

.page-path li a {
    color: inherit;
}

.page-path li a:hover, .page-path li a:focus, .page-path li a:active, .page-path li a.active {
    color: #29abe2
}

.page-path li:last-child {
    color: #29abe2
}

.page-path .path-separator {
    padding: 0 10px;
    color: #29abe2
}

.info-item {
    display: table;
    border-collapse: separate;
    width: 100%;
}

.info-item .icon, .info-item .text {
    display: table-cell;
    vertical-align: middle
}

.info-item .icon {
    width: 90px;
    padding-right: 20px;
}

.info-item .icon img {
    max-width: 100%
}

.accordion, .accordion-item, .accordion-content {
    zoom: 1
}

.accordion:before, .accordion-item:before, .accordion-content:before, .accordion:after, .accordion-item:after, .accordion-content:after {
    content: "";
    display: table
}

.accordion:after, .accordion-item:after, .accordion-content:after {
    clear: both
}

.accordion-item {
    border: 1px solid #eee;
    margin-top: -1px;
}

.accordion-item:first-child {
    margin-top: 0
}

.accordion-title, .accordion-content {
    padding: 20px;
    line-height: 25px;
}

.accordion-title {
    display: block;
    color: inherit;
    cursor: pointer;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size;
    font-weight: bold;
}

.accordion-title:hover, .accordion-title:focus, .accordion-title:active {
    color: #29abe2
}

.accordion-title .toggle-icon {
    padding: 0 10px
}

.articles > .article {
    margin-bottom: 50px;
    border-bottom: 1px solid #eee;
    padding-bottom: 20px;
}

.articles > .article:last-child {
    margin-bottom: 0;
    border-bottom: 0 none;
    padding-bottom: 0
}

.category, .author {
    font-size: 13px;
    font-weight: 600
}

.share {
    font-weight: 600
}

.article .category {
    margin-bottom: 30px
}

.description-line {
    zoom: 1;
    font-family: Montserrat;
    font-weight: 600;
}

.description-line:before, .description-line:after {
    content: "";
    display: table
}

.description-line:after {
    clear: both
}

.description-line > .title, .description-line > .value {
    float: left
}

.description-line > .title {
    padding-right: 10px;
    width: 120px
}

.comments .comment {
    margin-top: 20px;
}

.comments .comment:first-child {
    margin-top: 0
}

.comment {
    position: relative;
    padding-left: 90px;
}

.comment > .icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 70px;
    height: 70px;
    line-height: 70px;
    background-color: #f7f7f7;
    font-size: 36px;
    text-align: center;
}

.comment > .icon overflow-hidden, .comment > .icon img {
    width: 100%
}

.comment > .content {
    position: relative;
    background-color: #f7f7f7;
    padding: 20px;
}

.comment > .content:before {
    content: "";
    position: absolute;
    top: 10px;
    right: 100%;
    border-style: solid;
    border-color: rgba(247, 247, 247, 0);
    border-width: 8px 10px 8px 0;
    border-right-color: #f7f7f7
}

.search-item, .search-title {
    margin-bottom: 30px
}

.search-title {
    font-size: 18px;
    font-weight: 700;
    color: #35354a;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee
}

.search-item-title, .search-item-text {
    margin-bottom: 10px
}

.search-item-text {
    line-height: 1.6
}

.loader-block, .loader-back {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    -ms-filter: none;
    filter: none
}

.loader-block {
    z-index: 20000;
    display: none
}

.loader-back {
    z-index: -1
}

.loader-image {
    position: absolute;
    left: 60%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.loader-loading {
    position: relative;
    min-height: 200px;
    overflow: hidden;
}

.loader-loading.body {
    min-height: 100vh;
}

.loader-loading.body .loader-block {
    position: fixed;
}

.loader-loading > .loader-block {
    display: block
}

.inview-showup {
    visibility: hidden
}

.linephone-p-red {
    text-align: center;
    color: red;
    font-size: 20px;
    font-weight: bold
}

.linephone-p-ogran {
    text-align: center;
    color: orange;
    font-size: 25px;
    font-weight: bold
}
select.lang2 option {
    background: #35354a;
}