/*
Theme Name: WP Bootstrap Starter
Theme URI: https://afterimagedesigns.com/wp-bootstrap-starter/
Author: Afterimage Designs
Author URI: https://afterimagedesigns.com/
Description:  The best WordPress starter theme based on the most powerful frameworks in the world: "_s" (by Automattic, the main people behind WordPress development), Twitter Bootstrap (the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web) and Font Awesome (or Fontawesome, a full suite of 675+ pictographic icons for easy scalable vector graphics on websites). This theme, like WordPress, is licensed under the GPL. You can use this theme as base for your next WordPress theme project and you are allowed to remove the link at the footer or do whatever you want. Your feedback on how we can continuously improve this WordPress Starter Theme Bootstrap will be highly appreciated. Page templates includes Right-sidebar (default page template), Left-Sidebar, Full-Width, Blank with container, Blank without container Page. Other features - Currently using Bootstrap v4.0.0 , Widgetized footer area, WooCommerce ready, Compatible with Contact Form 7, Compatible with Visual Composer, Compatible with Elementor Page Builder. This theme will be an active project which we will update from time to time. Check this page regularly for the updates.
Version: 3.3.3
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp-bootstrap-starter
Tags: blog, custom-menu, featured-images, threaded-comments, translation-ready, right-sidebar, custom-background, e-commerce, theme-options, sticky-post, full-width-template
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
    ## Links
    ## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
    ## Posts and pages
    ## Comments
# Infinite scroll
# Media
    ## Captions
    ## Galleries
# Woocommerce
# Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

@font-face {
    font-family: 'PT Sans Regular';
    src: url(inc/assets/fonts/PTSans-Regular.woff2) format('woff2');
	font-display: swap;
}
@font-face {
    font-family: 'PT Sans Bold';
    src: url(inc/assets/fonts/PTSans-Regular.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'PT Sans Narrow';
    src: url(inc/assets/fonts/PTSans-Narrow.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat Semi Bold';
    src: url(inc/assets/fonts/Montserrat-SemiBold.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat ExtraLight';
    src: url(inc/assets/fonts/Montserrat-ExtraLight.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat Light';
    src: url(inc/assets/fonts/Montserrat-Light.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat Regular';
    src: url(inc/assets/fonts/Montserrat-Regular.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat Semi Bold';
    src: url(inc/assets/fonts/Montserrat-SemiBold.woff2);
	font-display: swap;
}
@font-face {
    font-family: 'Montserrat Bold';
    src: url(inc/assets/fonts/Montserrat-Bold.woff2);
	font-display: swap;
}
body {
    margin: 0;
    -webkit-font-smoothing: auto;
    font-family: 'PT Sans Regular';
}
.title{
    font-family: 'Montserrat Regular';
    font-weight: bold;
}
h2.title{
	margin-top:0;
}
.shadow-box .title{
    font-family: 'Montserrat Semi Bold';
    font-size: 20px;
}
.shadow-box .subtitle{
    font-family: 'PT Sans Bold';
    font-size: 16px;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

a:active,
a:hover {
    outline: 0;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 2.5rem;
}

hr {
    box-sizing: content-box;
    height: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
    clear: both;
    color: #24292e;
    font-weight: 600;
    margin-top: 24px;
    margin-bottom: 15px;
}
h1 {
    font-size: 16px;
    padding-bottom: 10px;
}
h2 {
    font-size: 16px;
    padding-bottom: 0.3em;
    line-height: 1.25;
}
h3 {
    font-size: 16px;
    line-height: 25px;
}
h4 {
    font-size: 16px;
    line-height: 20px;
}
h5 {
    font-size: 16px;
    line-height: 17.5px;
}

p {
    margin-bottom: 1.5em;
}
h1.entry-title {
    font-size: 1.31rem;
    border-bottom: 1px solid #eaecef;
}
h2.entry-title {
    border-bottom: 1px solid #eaecef;
}
h3.widget-title {
    font-size: 1.2rem;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
body {
    background: #fff;
    /* Fallback for when there is no custom background color defined. */
}
.mobile-logo{
    display:none;
}
img {
    height: auto;
    /* Make sure images are scaled correctly. */
    max-width: 100%;
    /* Adhere to container width. */
}

figure {
    margin: 1em 0;
    /* Extra wide images within figure tags don't overflow the content area. */
}

table {
    margin: 0 0 1.5em;
    width: 100%;
}

#menu-main li{
    position: relative;
}

.sub-menu{
    position: absolute;
    list-style: none;
    background: #fff;
    box-shadow: 0px 3px 6px #00000029;
    padding: 15px;
    text-align: right;
    right: 0;
    display:none;
    z-index: 10;
    min-width:270px;
}
#menu-main li:hover .sub-menu{
    display:block;
}

.sub-menu li{
    color: #454651;
    font-size: 14px;
    margin: 8px 0;
}
.sub-menu li a{
    color: #454651;
}
#menu-main #menu-item-31 .sub-menu li:last-child a{
    font-weight:bold;
    text-transform: uppercase;
}

#menu-main .sub-menu li:hover a{
    color:#01A58E;
    text-decoration:none;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
header#masthead {
    margin-bottom: 0;
    padding: .5rem;
}

.navbar-brand > a {
    color: rgba(0, 0, 0, 0.9);
    font-size: 1.1rem;
    outline: medium none;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
}
.navbar-brand > a img{
    max-height:50px;
}
.navbar-brand > a:visited, .navbar-brand > a:hover {
    text-decoration: none;
}

#page-sub-header {
    position: relative;
    padding-top: 5rem;
    padding-bottom: 0;
    text-align: center;
    font-size: 1.25rem;
    background-size: cover !important;
}

body:not(.theme-preset-active) #page-sub-header h1 {
    line-height: 1.6;
    font-size: 4rem;
    color: #563e7c;
    margin: 0 0 1rem;
    border: 0;
    padding: 0;
}

#page-sub-header p {
    margin-bottom: 0;
    line-height: 1.4;
    font-size: 1.25rem;
    font-weight: 300;
}
body:not(.theme-preset-active) #page-sub-header p {
    color: #212529;
}
a.page-scroller {
    color: #333;
    font-size: 2.6rem;
    display: inline-block;
    margin-top: 2rem;
}

@media screen and (min-width: 768px) {
    body:not(.theme-preset-active) #page-sub-header h1 {
        font-size: 3.750rem;
    }
    body:not(.theme-preset-active) #page-sub-header {
        font-size: 1.25rem;
    }
}
@media screen and (min-width: 992px) {
    #page-sub-header p {
        max-width: 43rem;
        margin: 0 auto;
    }
}
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
#main-nav{
    top: 20px;
    position: relative;
    font-family: 'Montserrat Regular';
}

#masthead nav {
    padding-left: 0;
    padding-right: 0;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a {
    color: #454651;
    padding: 0.5rem 1.5rem;
    font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration:none;
}

body:not(.theme-preset-active) #masthead .navbar-nav > li > a:hover,
body:not(.theme-preset-active) #masthead .navbar-nav > li.current_page_item > a {
    color: #01A58E;
    font-weight: 600;
    /*background: #f9f9f9;*/
}

.navbar-brand {
    height: auto;
}

.navbar-toggle .icon-bar {
    background: #000 none repeat scroll 0 0;
}

.dropdown-menu .dropdown-toggle::after {
    border-bottom: 0.3em solid transparent;
    border-left: 0.3em solid;
    border-top: 0.3em solid transparent;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children {
    position: relative;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}
.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>.dropdown-menu {
    display: block;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children:hover>a:after {
    border-left-color: #fff;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left {
    float: none;
}

.dropdown.menu-item-has-children .dropdown.menu-item-has-children.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
    display: block;
}

.dropdown-item {
    line-height: 1.2;
    padding-bottom: 0.313rem;
    padding-top: 0.313rem;
}

.dropdown-menu {
    min-width: 12.500rem;
}

.dropdown .open .dropdown-menu {
    display: block;
    left: 12.250em;
    top: 0;
}

.dropdown-menu .dropdown-item {
    white-space: normal;
    background: transparent;
    line-height: 1.6;
}
.dropdown-menu .dropdown-item:hover {
    background: transparent;
}

@media screen and (min-width: 37.5em) {
    .menu-toggle {
        display: none;
    }
}
@media screen and (min-width: 769px) {
    .dropdown-menu li > .dropdown-menu {
        right: -9.875rem;
        top: 1.375rem;
    }
}
@media screen and (max-width: 991px) {
    .navbar-nav .dropdown-menu {
        border: medium none;
        margin-left: 1.250rem;
        padding: 0;
    }

    .dropdown-menu li a {
        padding: 0;
    }

    #masthead .navbar-nav > li > a {
        padding-bottom: 0.625rem;
        padding-top: 0.313rem;
    }

    .navbar-light .navbar-toggler {
        border: medium none;
        outline: none;
    }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    margin: 0 0 1.5em;
    overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}
.comment-content.card-block {
    padding: 20px;
}

.navigation.post-navigation {
    padding-top: 1.875rem;
}

.post-navigation .nav-previous a,
.post-navigation .nav-next a {
    border: 1px solid #ddd;
    border-radius: 0.938rem;
    display: inline-block;
    padding: 0.313rem 0.875rem;
    text-decoration: none;
}

.post-navigation .nav-next a::after {
    content: " \2192";
}

.post-navigation .nav-previous a::before {
    content: "\2190 ";
}

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
    background: #eee none repeat scroll 0 0;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 0.313rem;
    line-height: normal;
    padding: 0.938rem 1.438rem 0.875rem;
    text-decoration: none;
    top: 0.313rem;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
    outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

a img.alignright {
    float: right;
    margin: 0.313rem 0 1.25rem 1.25rem;
}

a img.alignnone {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.alignleft {
    float: left;
    margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption.alignnone {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignleft {
    margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignright {
    margin: 0.313rem 0 1.25rem 1.25rem;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
    content: "";
    display: table;
    table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
    clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
    margin: 0 0 1.5em;
    font-size: 0.875rem;
    /* Make sure select elements fit in widgets. */
}
.widget select {
    max-width: 100%;
}

.widget_search .search-form input[type="submit"] {
    display: none;
}

.nav > li > a:focus,
.nav > li > a:hover {
    background-color: #eee;
    text-decoration: none;
}
.half-rule {
    width: 6rem;
    margin: 2.5rem 0;
}
.widget_categories .nav-link {
    display: inline-block;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/

.sticky .entry-title::before {
    content: '\f08d';
    font-family: "Font Awesome\ 5 Free";
    font-size: 1.563rem;
    left: -2.5rem;
    position: absolute;
    top: 0.375rem;
    font-weight: 900;
}

.sticky .entry-title {
    position: relative;
}

.single .byline,
.group-blog .byline {
    display: inline;
}

.page-content,
.entry-content,
.entry-summary {
    margin: 1.5em 0 0;
}

.page-links {
    clear: both;
    margin: 0 0 1.5em;
}

.page-template-blank-page .entry-content,
.blank-page-with-container .entry-content {
    margin-top: 0;
}

.post.hentry {
    margin-bottom: 4rem;
}

.posted-on, .byline, .comments-link {
    color: #9a9a9a;
}

.entry-title > a {
    color: inherit;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
    word-wrap: break-word;
}

.bypostauthor {
    display: block;
}

.comment-body .pull-left {
    padding-right: 0.625rem;
}

.comment-list .comment {
    display: block;
}

.comment-list {
    padding-left: 0;
}

.comments-title {
    font-size: 1.125rem;
}

.comment-list .pingback {
    border-top: 1px solid rgba(0, 0, 0, 0.125);
    padding: 0.563rem 0;
}

.comment-list .pingback:first-child {
    border: medium none;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
    /* Theme Footer (when set to scrolling) */
    display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
    display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
    max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
    background: #f1f1f1 none repeat scroll 0 0;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 0.313rem 0.313rem 0;
    text-align: center;
}
.wp-caption img[class*="wp-image-"] {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 100%;
    padding: 0;
    width: auto;
}
.wp-caption .wp-caption-text {
    font-size: 0.688rem;
    line-height: 1.063rem;
    margin: 0;
    padding: 0.625rem;
}

.wp-caption-text {
    text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
    margin-bottom: 1.5em;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
}
.gallery-item .gallery-columns-2 {
    max-width: 50%;
}
.gallery-item .gallery-columns-3 {
    max-width: 33.33333%;
}
.gallery-item .gallery-columns-4 {
    max-width: 25%;
}
.gallery-item .gallery-columns-5 {
    max-width: 20%;
}
.gallery-item .gallery-columns-6 {
    max-width: 16.66667%;
}
.gallery-item .gallery-columns-7 {
    max-width: 14.28571%;
}
.gallery-item .gallery-columns-8 {
    max-width: 12.5%;
}
.gallery-item .gallery-columns-9 {
    max-width: 11.11111%;
}

.gallery-caption {
    display: block;
}

/*--------------------------------------------------------------
# Plugin Compatibility
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Woocommerce
--------------------------------------------------------------*/
.woocommerce-cart-form .shop_table .coupon .input-text {
    width: 8.313rem !important;
}

.variations_form .variations .value > select {
    margin-bottom: 0.625rem;
}

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2 {
    max-width: 100%;
}

/*--------------------------------------------------------------
## Elementor
--------------------------------------------------------------*/
.elementor-page article .entry-footer {
    display: none;
}

.elementor-page.page-template-fullwidth #content.site-content {
    padding-bottom: 0;
    padding-top: 0;
}

.elementor-page .entry-content {
    margin-top: 0;
}

/*--------------------------------------------------------------
## Visual Composer
--------------------------------------------------------------*/
.vc_desktop article .entry-footer {
    display: none;
}

.vc_desktop #content.site-content {
    padding-bottom: 0;
    padding-top: 0;
}

.vc_desktop .entry-content {
    margin-top: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon {
    font-size: 85%;
}
body:not(.theme-preset-active) footer#colophon {
    color: #99979c;
    background-color: #f7f7f7;
}
.navbar-dark .site-info {
    color: #fff;
}
.copyright {
    font-size: 0.875rem;
    margin-bottom: 0;
    text-align: center;
}

.copyright a, footer#colophon a {
    color: inherit;
}

@media screen and (max-width: 767px) {
    #masthead .navbar-nav > li > a {
        padding-bottom: 0.938rem;
        padding-top: 0.938rem;
    }
}
/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Notebook
--------------------------------------------------------------*/
@media only screen and (max-width: 1280px) {
    html {
        font-size: 95%;
    }
}

@media screen and (max-width: 1199px) {
    .navbar-dark .dropdown-item {
        color: #fff;
    }
    .navbar-nav .dropdown-menu {
        background: transparent;
        box-shadow: none;
        border: none;
    }
}
a {
    color: #01A58E;
}
a:hover {
    color: #00907d;
}
.header-phone{
    display: block;
    background: url(inc/assets/img/customer-service.svg) 15px center no-repeat #01A58E;
    position: relative;
    color: #fff;
    font-size: 14px;
    padding: 17px 15px 17px 60px;
    top: 20px;
    z-index: 10;
}
.header-phone:hover{
    text-decoration:none;
    color:#fff;
    background-color: #00907d;
}
.green{
    color:#00BFA5;
}

.home.page-template .header-image{
    height: 560px;
    display: flex;
    align-items: center;
}

.page .header-image, .single .header-image{
    height: 450px;
    display: flex;
    align-items: center;
    position:relative;
    background-size: cover !important;
    margin-bottom: 35px;
	background-position: center bottom !important;
}

.home .header-image .headline, .single .header-image .headline{
    color: #454651;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 35px;
    background: #fff;
    padding: 1.5px 10px;
    margin-bottom: 15px;
    display: inline-block;
    box-shadow: 0px 3px 6px #00000029;
}

.page .header-image .headline, .single .header-image .headline{
    color: #454651;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 35px;
    background: #fff;
    padding: 1.5px 10px;
    margin-bottom: 15px;
    display: inline-block;
    box-shadow: 0px 3px 6px #00000029;
    font-family: Montserrat Semi Bold;
}

.page .header-image h1.headline, .single .header-image h1.headline{
    margin-bottom: 15px;
    margin-top:0;
}
.home .header-image h2.subheadline{
	margin-top:0;
	font-weight: 400;
}
.page-template-default .header-image .headline, .single .header-image .headline{
    text-transform: none;
}
.home .header-image .subheadline{
    color: #454651;
    text-transform: uppercase;
    font-size: 22px;
    background: #fff;
    padding: 0 10px;
    display: inline-block;
    height: 55px;
    line-height: 55px;
    box-shadow: 0px 3px 6px #00000029;
    font-family: Montserrat ExtraLight;
}
.home .header-image .tel, .page .header-image .tel, .single .header-image .tel{
    height:45px;
    width:45px;
    display:block;
    background:url(inc/assets/img/customer-service.svg) center no-repeat #01A58E;
    position: relative;
}
.home .header-image .headlines, .page .header-image .headlines, .single .header-image .headlines{
    float: left;
    width: 80%;
    position: relative !important;
    bottom: auto !important;
}
.home .header-image .contacts, .page .header-image .contacts, .single .header-image .contacts{
    float: right;
    width: auto;
    position: fixed;
    right: 0;
    z-index: 1000;
}
.home .header-image .mail, .page .header-image .mail, .single .header-image .mail{
    height:45px;
    width:45px;
    display:block;
    background:#01A58E;
    margin-top: 8px;
    position: relative;
}
.home .header-image .mail .bg, .page .header-image .mail .bg, .single .header-image .mail .bg{
    background: url(inc/assets/img/mail.svg) center no-repeat #fff;
    width: 30px;
    height: 30px;
    display: block;
    border-radius: 30px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    top: 7px;
}
.home .header-image a .hover, .page .header-image a .hover, .single .header-image a .hover{
    position: absolute;
    width: 160px;
    background: #454651;
    color: #fff;
    margin:0;
    height: 45px;
    padding: 3px 0;
    top: 0;
    right: 50px;
    display:none;
}
.home .header-image a:hover .hover, .page .header-image a:hover .hover, .single .header-image a:hover .hover{
    display:block;
}

.home .header-image a .hover span, .page .header-image a .hover span, .single .header-image a .hover span{
    width:100%;
    display:block;
    text-align: center;
    font-size: 0.75rem;
}
.home .header-image a .hover span:nth-child(2), .page .header-image a .hover span:nth-child(2), .single .header-image a .hover span:nth-child(2){
    font-weight:bold;
    font-size: 0.9rem;
}

.page-template-default.page .header-image .headlines, .single .header-image .headlines {
    position: absolute !important;
    bottom: 10px !important;
}

.banner-section{
    margin-top: -60px;
    margin-bottom: 60px;
    background-color: #fff;
    position: relative;
    box-shadow: 0px 3px 6px #00000029;
    opacity: 1; 

}

#home-section2, .leistungen-element{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: -90px;
}
.leistungen-element{
    margin-top: 0; 
}
#home-section2 .element, .leistungen-element .element{
    width: 27%;
    margin: 0 20px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #00000029;
    position: relative;
    z-index: 100;
}

.leistungen-element .element {
    width:60%;  
    margin-top: -40px;
}


.leistungen-element .text-bottom{
    box-shadow: 0px 3px 6px #00000029;
    padding: 70px 20px 30px 20px;
    width: 80%;
    margin-top: -30px;  
}

#home-section2 .element a, .leistungen-element .element a{
    text-decoration: none;
}
#home-section2 .element a:before, .leistungen-element .element a:before{
    content: '';
    height: 60px;
    display: block;
    position: relative;
    background:url(inc/assets/img/dreieck.svg) center no-repeat;
    background-size: cover
}
.leistungen-element .element a:before{
    height: 70px; 
}
.element-min .leistungen-element .element a:before{
    height: 45px;
}

#home-section2 .element img, .leistungen-element .element img{
    display: block;
    margin: 0 auto;
    margin-top: -25px;
    z-index: 1000;
    position: relative;
}
#home-section2 .element .imghover, .leistungen-element .element .imghover{
    display:none;
}
#home-section2 .element .title, .leistungen-element .element .title{
    text-align: center;
    letter-spacing: 0px;
    color: #454651;
    display: block;
    font-size: 16px;
    padding: 15px 0 20px;
    font-family: 'Montserrat Light';
}
.maintitle{
    width: 100%;
    text-align: center;
    color: #454651;
    margin: 30px 0;
    font-weight: bold;
    font-family: 'Montserrat Regular';
}
#home-section2 .element a:hover img, .leistungen-element .element a:hover img{
    display:none;
}
#home-section2 .element a:hover img.imghover, .leistungen-element .element a:hover img.imghover{
    display:block;
}
#home-section2 .element:hover a:before, .leistungen-element .element:hover a:before{
    background:url(inc/assets/img/dreieck_hover.svg) center no-repeat;
    background-size: cover;
}
#home-section2 .element:hover, .leistungen-element .element:hover{
    background:#00a58f;
}
#home-section2 .element:hover .title, .leistungen-element .element:hover .title{
    color:#fff;
}
.section2-wrapper{
    float: left;
    z-index: 10;
    margin-bottom: -80px;
    position: relative; 
}
#home-section3 .element{
    padding: 30px 15px;
}
#home-section3 .element p{
    text-align: center;
}
#home-section3 .element .wert{
    width: 100%;
    text-align: center;
    display: block;
    font-weight:bold;
    font-family: 'Montserrat Semi Bold';
}
#home-section3 .element .title{
    width: 100%;
    text-align: center;
    display: block;
    font-family: 'PT Sans Narrow';
    font-size: 16px;
    line-height: 20px;
    text-transform:uppercase;
}
#home-section3 .element:hover{
    box-shadow: 0px 2px 6px #00000029;

}
footer{
    margin-top: 100px;
}
footer .widget-title{
    color: #454651;
    font-weight: bold;
    font-size: 18px;
    margin: 50px 0 30px 0;
}
footer#colophon p{
    color: #454651;
}
footer#colophon ul li a{
    color: #454651;
    margin: 0 0 5px 0;
    padding: 0;
}

.footer-line{
    background:#454651;
    padding-bottom: 20px;
    position: relative;
    display: block;
}
.footer-line span{
    width:100%;
    display:block;
    text-align: center;
    color:#fff;
    padding: 2px 0;
    font-family: Montserrat Bold;
    font-weight: 400;
}
.footer-line a:hover .action{
    text-decoration:underline;
}
.footer-line span.title{
    font-family:"PT Sans Regular";
    font-size:14px;
}
.footer-line a{
    text-decoration:none;
}
.footer-line span.action{
    font-weight:bold;
    font-size: 18px;
    font-family: Montserrat Bold;
}
.footer-line span.image{
    height:65px;
    width:65px;
    display:block;

    position: relative;
    margin: -30px auto 15px auto;
}
.footer-line .tel span.image{
    background:url(inc/assets/img/tel.svg) center no-repeat;
}
.footer-line .tel:hover span.image{
    background:url(inc/assets/img/tel_hover.svg) center no-repeat;
}
.footer-line .mail span.image{
    background:url(inc/assets/img/mailfooter.svg) center no-repeat;
}
.footer-line .mail:hover span.image{
    background:url(inc/assets/img/mailfooter_hover.svg) center no-repeat;
}
.footer-line .anfahrt span.image{
    background:url(inc/assets/img/stift.svg) center no-repeat;
}
.footer-line .anfahrt:hover span.image{
    background:url(inc/assets/img/stift_hover.svg) center no-repeat;
}
#footer-widget{
    background:url(inc/assets/img/moeschl_footer_22.jpg) center no-repeat;
    position: relative;
	background-position: top;
	background-size: cover;
}

#footer-widget:before{
    content:'';
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(255, 255, 255, 0.6);
}
#footer-widget .nav > li > a:focus,
#footer-widget .nav > li > a:hover {
    background-color: transparent;
    text-decoration: underline;
}

#home-product-slider .item .item-img-hover{
    display:none;
}
#home-product-slider .item:hover .item-img{
    display:none;
}
#home-product-slider .item:hover .item-img-hover{
    display:block;
}

.shadow-box .wpb_wrapper{
    box-shadow: 0px 3px 6px #00000029;
    border: 1px solid #F5F5F5;
    padding: 25px;
}
.shadow-box .wpb_wrapper:hover{
    box-shadow: 0px 8px 12px #00000029;
}
.moeschl-arrow{
    width:100%;
    float: left;
    margin: 10px 0 30px;
}
.shadow-box{
    font-size:1rem;
	font-weight: 400;
	line-height: 1.5;
}
.moeschl-arrow div{
    background:url(inc/assets/img/arrow.svg) center no-repeat #00BFA5;
    height:45px;
    width:45px;
    display:block;
    border-radius: 45px;
    -webkit-transition: -webkit-transform .5s ease-in-out;
    -ms-transition: -ms-transform .5s ease-in-out;
    transition: transform .5s ease-in-out; 

}

.moeschl-arrow .right{
    float:right;
    transform: rotate(180deg);
}

.shadow-box:hover .moeschl-arrow div{
    transform:rotate(270deg);
    -ms-transform:rotate(270deg);
    -webkit-transform:rotate(270deg);
}

.shadow-box:hover .moeschl-arrow div.right{
    transform:rotate(-90deg);
    -ms-transform:rotate(-90deg);
    -webkit-transform:rotate(-90deg);
}

.navbar-toggler{
    width: 45px !important;
    height: 45px !important;
    border-radius: 45px;
    background: url(inc/assets/img/menu.svg) center no-repeat !important;
    top: 0 !important;
    right: 0 !important;
}

.more-informations:after{
    content: '';
    height: 15px;
    width: 15px;
    display: inline-block;
    background: url(inc/assets/img/arrow.svg) center no-repeat #00BFA5;
    border-radius: 15px;
    background-size: 9px;
    transform: rotate(180deg);
    margin-left: 10px;
    top: 3px;
    position: relative;
}

.no-padding-left{
    padding-left:0 !important;
}
.no-padding-right{
    padding-right:0 !important;
}

.leistungen-ueber{
    width: 40%;
    box-shadow: 0px 3px 6px #00000029;
    padding: 20px;
    margin-top: 100px;
}
.leistungen-ueber .title{
    font-weight:bold;
    font-size: 14px;
}
.leistungen-ueber.left{
    float: right;
    margin-right: 3%;
}
.leistungen-ueber.right{
    float: left;
    margin-left: 3%;
}

#breadcrumbs{
    position: absolute;
    top: 20px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #00000029;
    opacity: 0.85;
    font-size: 12px;
    padding: 2px 10px;
}
#breadcrumbs a, #breadcrumbs span{
    color:#454651;
}

#breadcrumbs .breadcrumb_last{
    color: #01A58E;
}
#home-schritte .element{
    margin-bottom:20px;
}
#home-schritte .bg{
    background: #F5F5F5;
    padding: 30px 15px;
    text-align: center;
    min-height:268px;
}
#home-schritte .bg .title{
    margin-bottom: 10px;
}
#home-schritte .bg .text{
    font-size:14px;
}
.image-three-column .wpb_content_element{
    margin-bottom: 30px !important;
}
.heigh-image{
    max-height: 600px;
    overflow: hidden;
}

.image-three-column .wpb_single_image:hover{
    box-shadow: 0px 6px 25px #00000029;
}

#responsive-menu{
      padding-top: 50px !important;  
}
.leistungen-element .thumbnail{
	height:248px;
}

@media (min-width: 1350px){
    .container {
        max-width: 1350px;
    }
}
#responsive-menu-button{
	display:none !important; 
}
.single-leistungen #home-section3 .element:hover{
	box-shadow: none;
}



/*--------------------------------------------------------------
## Netbook
--------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
    #menu-main{
        z-index: 10;
        background: #fff;
        width: 100%;
        text-align: right;
        border-top: 1px solid;
        padding: 10px 0;
        margin-bottom: 10px;
    }
    .leistungen-ueber{
        width: 70%;
    }
    .leistungen-element .text-bottom{
        width:100%;
    }
    .header-phone{
        display:none;
    }
    .sub-menu{
        display: none !important;
    }
    .home.page-template .header-image{
        height: 360px;
    }
    .page .header-image, .single .header-image{
        height: 360px;
    }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 960px) {
    .header-phone{
        display:block;
        position: fixed;
        width: 100%;
        left: 0;
        text-align: center;
        top: 0;
        font-size: 17px;
        padding: 10px 15px 10px 60px;
        background: url(inc/assets/img/customer-service.svg) 30% center no-repeat #01A58E;
        z-index: 200000;
    }
    header#masthead {
		margin-top: 45px;
		padding: 20px 0;
	}
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
    .home .header-image .subheadline{
        height: 105px;
    }
    .page .header-image .headline, .single .header-image .headline{
        font-size: 30px;
    }
    .home .header-image .subheadline{
        height: 90px;
        line-height: 45px;
    }
    .home.page-template .header-image{
        height: 280px;
    }
    .page .header-image, .single .header-image{
        height: 280px;
    }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 480px) {
    #primary{
        padding:0;
    }
    header#masthead{
        margin-top: 45px; 
        padding: 20px 0;
    }



    #home-section2 .element {
        width: 85%;
        margin: 15px 20px;
    }
    .home .header-image {

        display: flex;
        align-items: center;

    }

    .home .header-image .headlines {
        float: left;
        width: 100%;
        margin-top: 210px;
    }
    .home .header-image .headline {
        font-size: 18px;
        width: 100%;
        line-height: 24px;
    }
    /*
    .home.page-template .header-image {
        height: 280px;
        background-size: cover !important;
        background-position: 80% -40px !important;
    }
    */
    .home .header-image .subheadline{
        height: auto;
        line-height: 35px;
        font-size: 16px;
    }

    .moeschl-arrow div{
        transform: rotate(270deg);
        margin: 0 auto;
    }
    .moeschl-arrow div.right{
        float:none;
        transform: rotate(270deg);
        margin: 0 auto;
    }
    #home-section3 .element{
        width: 48%;
        font-size: 12px;
        box-shadow: 0px 3px 6px #00000029;
        margin-right:2%;
        margin-bottom:15px;
    }
    #home-section3 .element:nth-child(even){
        margin-left:2%;
        margin-right:0;
    }
    #home-section3 .element .wert{
        font-size: 16px;  
    }
    #home-section3 .element:last-child{
        margin-bottom: 15px !important;
    }
    #home-section3 .image{
        height:45px;
    }
    .footer-line{
        padding-top: 20px;
    }
    .footer-line .element{
        margin: 20px 0;
    }

    .footer-line span.image{
        margin: 0px auto 15px auto;
    }
    #footer-widget {
        background: url(inc/assets/img/moeschl_footer_mobile.png) 0 0 no-repeat;
    }
    #footer-widget .textwidget, #footer-widget .menu{
        display:none;
    }
    #footer-widget .open .textwidget, #footer-widget .open .menu{
        display:block;
    }
    footer .widget-title{
        margin: 20px 0 20px 0;
    }
    .mobile-trigger{
        width: 18px;
        height: 18px;
        display: block;
        background: url(inc/assets/img/plus.svg) 0 0 no-repeat;
        position: absolute;
        top: 23px;
        right: 15px;
    }
    .navbar-brand img{
        display:none;
    }
    .navbar-brand .mobile-logo{
        display:block;
    }
    .header-image .contacts, .page .header-image .contacts{
		right: 0 !important;
		top: 170px;
    }
    .maintitle{
        font-size: 16px;
    }


    .image-three-column > .vc_column-inner{
        padding:0 !important;
    }
    .image-three-column .vc_column-inner{
        padding:0 !important;
    }
    .image-three-column .vc_column-inner .vc_col-sm-6{
        width:48%;
        float: left;
    }
    .image-three-column .vc_column-inner .vc_col-sm-6:nth-child(1){
        margin-right:2%;
    }
    .image-three-column .vc_column-inner .vc_col-sm-6:nth-child(2){
        margin-left:2%;
    }
    .image-three-column .wpb_content_element {
        margin-bottom: 15px !important;
    }
    .mobile-reverse{
        display: flex;
    }
    .mobile-reverse .vc_col-sm-6:nth-child(1){
        order:2;
    }
    .mobile-reverse .vc_col-sm-6:nth-child(2){
        order:1;
    }
    footer {
        margin-top: 30px;
    }
    .shadow-box p{
        text-align: center !important;
    }
    .leistungen-element .element a:before {
        height: 36px;
    }
    .no-padding-mobile.vc_column_container > .vc_column-inner{
        padding-left: 0;
        padding-right: 0;
    }
    .leistungen-element .text-bottom{
        width: 90%;
    }
    .no-padding-left{
        padding-right:0 !important;
        margin-bottom: 170px;
    }
    .no-padding-right{
        padding-left:0 !important;
        padding-bottom: 160px;
    }
    .leistungen-ueber{
        width: 94%;
        top: 195px;
        margin-top: 0;
        position: relative;
    }
    .leistungen-ueber.left{
        margin-left: 3%;
    }
    #home-section2{
        margin-top: 0px;
    }
    .change-image .vc_column-inner{
        background-image:none !important;
    }
    .no-padding-right.change-image{
        margin-top: 50px; 
    }
    .single .header-image .headline{
        font-size: 26px;
    }
    .page-template-default.page .header-image .headlines, .single .header-image .headlines{
        width: 90%;
    }
    .page .header-image .headline, .single .header-image .headline{
        width: 100%;
        text-align: center;
    }
    .page .header-image, .single .header-image{
        margin-bottom: 50px;
    }
    
    .single-leistungen .banner-section{
		box-shadow: none;
	}
	
	body .image2{
		padding-top: 280px !important;
	}
	.leistungen-element .thumbnail {
		height: auto;
	}
	.image-three-column img, .image-three-column .vc_single_image-wrapper, .image-three-column .wpb_wrapper{
		width:100%;
	}
}
@media only screen and (max-width: 414px) {
    .heigh-image {
        max-height: 393px;
    }
	ul#vorteile {display:block;}
}
@media only screen and (max-width: 375px) {
    .heigh-image {
        max-height: 357px;
    }
}
@media only screen and (max-width: 320px) {
    .heigh-image {
        max-height: 307px;
    }
}


.error-404{
	min-height: 35vh;
}
.error-404 h1{
	font-size: 2rem;
    display: flex;
    justify-content: center;
    padding: 100px;
}
#home-product-slider .item .img{
    width: 270px;
    height: 300px;
    background-size: 80% !important;
    background-position: center !important;
    margin: 0 auto;
    background-repeat: no-repeat !important;
}
#home-product-slider .item:hover .img{
	background-size: 100% !important;
}


.image-three-column .wpb_content_element.vc_custom_1603624803392 {margin-bottom: 15px !important;}
.shadow-none .wpb_wrapper, .shadow-none .wpb_wrapper:hover {box-shadow:none;border:none;}
ul#vorteile {list-style-type:none;display:flex;justify-content:space-between;flex-wrap: wrap;}
ul#vorteile li {flex:0 1 24%;font-weight: bold;font-family: 'Montserrat Semi Bold';text-align: center;background: #00a58f;color:#fff;display: flex;align-items: center;justify-content: center;flex-wrap:wrap;padding:10px;}
ul#vorteile li h4, ul#vorteile li p {flex:0 1 100%;color:#fff;margin:0;}
ul#vorteile.drei li {flex:0 1 32%;}
.vc_custom_1603751855700 #home-schritte .element {display:flex;}
.vc_custom_1603751855700 #home-schritte .element:last-child {margin-bottom: 20px;}
ul#material {list-style-type:none;}
ul#material li {line-height:2;}
table.tabelle-shadow-box {border: 1px solid #212529;width: 75%;text-align: left;border-collapse: collapse;margin:20px auto;}
table.tabelle-shadow-box td, table.tabelle-shadow-box th {border: 1px solid #212529;padding: 5px;}
table.tabelle-shadow-box tbody td {font-size: 13px;color: #212529;}
table.tabelle-shadow-box thead th {font-weight: bold;}
table.tabelle-shadow-box tfoot {font-weight: bold;}
ul.liste-shadow-box {text-align:left;width:50%;margin:auto;margin-bottom: 1.5em;}

@media only screen and (max-width: 1199px) {
	#masthead #responsive-menu-button{
		display:block !important; 
	}
}
.page-id-730 #home-section3 .element:hover{
	box-shadow:none !important;
}
@media only screen and (max-width: 480px) {
	ul#vorteile{
		padding: 0;
	}
	ul#vorteile li {
		width:100%;
		flex: 100%;
	}
	
	.change-image .leistungen-ueber.right{
	    top: -80px;
	}
}

.wizard p.title{
    text-align: center;
    color: #212529;
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 15px;
}
.thumbnail{
	margin-top:65px;
}

.wizard {
	margin-top:100px;
}

.codedropz-upload-inner{
	white-space: break-spaces;
}
.codedropz-upload-inner h2{
    font-size: 24px;
    font-weight: 200;
}
.codedropz-upload-handler {
    border: 1px solid #01A58E;
    border-radius: 0;
    margin-bottom: 10px;
    position: relative;
    display:none;
    
}
.dnd-upload-status{
	display:none;
}
.codedropz-upload-wrapper .codedropz-upload-wrapper .codedropz-upload-handler{
	display:block;
}
.codedropz-upload-wrapper .codedropz-upload-wrapper .dnd-upload-status{
	display:block;
}


/*
    Common 
*/

.wizard,
.tabcontrol,
.kontaktform
{
    display: block;
    width: 100%;
    overflow: hidden;
}

.wizard a,
.tabcontrol a,
.kontaktform a
{
    outline: 0;
}

.wizard ul,
.tabcontrol ul,
.kontaktform ul
{
    list-style: none !important;
    padding: 0;
    margin: 0;
	float: right;
	width: 50%;
}

.wizard ul > li,
.tabcontrol ul > li,
.kontaktform  ul > li
{
    display: block;
    padding: 0;
}

/* Accessibility */
.wizard > .steps .current-info,
.tabcontrol > .steps .current-info
{
    position: absolute;
    left: -999em;
}

.wizard > .content > .title,
.tabcontrol > .content > .title
{
    position: absolute;
    left: -999em;
}



/*
    Wizard
*/

.wizard > .steps
{
    position: relative;
    display: block;
    width: 100%;
	margin-bottom: 20px;
}

.wizard.vertical > .steps
{
    display: inline;
    float: left;
    width: 30%;
}

.wizard > .steps .number
{
        width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
}

.wizard > .steps > ul > li
{
    width: auto;
}

.wizard > .steps > ul > li,
.wizard > .actions > ul > li
{
    float: left;
}

.wizard.vertical > .steps > ul > li
{
    float: none;
    width: 100%;
}

.wizard > .steps a,
.wizard > .steps a:hover,
.wizard > .steps a:active
{
    display: block;
    width: auto;
    margin: 0 0.5em 0.5em;
    padding: 1em 1em;
    text-decoration: none;
    padding-top: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.wizard > .steps .disabled a,
.wizard > .steps .disabled a:hover,
.wizard > .steps .disabled a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
	width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.wizard > .steps .current a,
.wizard > .steps .current a:hover,
.wizard > .steps .current a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
	width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.wizard > .steps .done a,
.wizard > .steps .done a:hover,
.wizard > .steps .done a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
    width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.wizard > .steps .error a,
.wizard > .steps .error a:hover,
.wizard > .steps .error a:active
{
background: #fff;
    cursor: pointer;
    color: #212529;
    width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.wizard > .content
{
    display: block;
    overflow: hidden;
    position: relative;
    width: auto;

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}
.wizard section.body{
	width:100%;
}
.wizard.vertical > .content
{
    display: inline;
    float: left;
    margin: 0 2.5% 0.5em 2.5%;
    width: 65%;
}

.wizard > .content > .body
{
    float: left;

}

.wizard > .content > .body ul
{
    list-style: disc !important;
}

.wizard > .content > .body ul > li
{
    display: list-item;
}

.wizard > .content > .body > iframe
{
    border: 0 none;
    width: 100%;
    height: 100%;
}

.wizard > .content > .body input
{
    display: block;
    border: 1px solid #01A58E;
    float:left;
	border-radius: 0;
}
.wizard .wpcf7-list-item{
	margin: 0 20px 0 0;
}
.wizard .wpcf7-list-item input{
    line-height: 60px;
    margin-top: 5px;
    margin-right: 10px;
}
.wizard > .content > .body input[type="checkbox"]
{
    display: inline-block;
}
.wizard .vc_col-sm-6 .half br{
	display:none;
}
.wizard .vc_col-sm-6 .half{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	margin-bottom: 20px;
}
.wizard .vc_col-sm-6 .half label{
	width: 48% !important;
}
.wizard > .content > .body input.error
{
    background: rgb(251, 227, 228);
    border: 1px solid #fbc2c4;
    color: #8a1f11;
}

.wizard .form-control{
    border: 1px solid #01A58E;
    color: #01A58E;
    margin-top: 10px;
}
.wizard .form-control.error, .wizard > .content > .body input.wpcf7-not-valid{
    border: 1px solid red;
}
.wizard > .content > .body label
{
    width: 100%;
    display: inline-block;
	margin-bottom: 0px;
	font-weight: bold;
	
}
.wizard p.center{
    text-align: center;
    padding: 0 15px;
}
.wizard > .content > .body label.error
{
    color: #8a1f11;
    display: inline-block;
    margin-left: 1.5em;
}

.wizard > .actions
{
    position: relative;
    display: block;
    text-align: right;
    width: 100%;
	margin-top: 20px;
}

.wizard.vertical > .actions
{
    display: inline;
    float: right;
    margin: 0 2.5%;
    width: 95%;
}

.wizard > .actions > ul
{
    display: inline-block;
    text-align: right;
}

.wizard > .actions > ul > li
{
    margin: 0 0.5em;
}

.wizard.vertical > .actions > ul > li
{
    margin: 0 0 0 1em;
}
.wizard > .actions > ul{
    width: 50%;
    padding: 0 15px;
}
.wizard > .actions > ul li.disabled{
	display:none;
}
.wizard > .actions > ul li{
    width: 45%;
	text-align: center;
	margin: 0;
}
.wizard > .actions > ul li:first-child{
    border:1px solid #000;
}
.wizard > .actions > ul li:nth-child(2){
    float: right;
}
.wizard > .actions > ul li:nth-child(2) a{
	background:#01A58E;
	color:#fff;
}
.wizard > .actions > ul li:nth-child(3){
    float: right;
}
.wizard > .actions > ul li:nth-child(3) a{
	background:#01A58E;
	color:#fff;
}
.wizard > .actions a,
.wizard > .actions a:hover,
.wizard > .actions a:active
{
    background: #fff;
    color: #000;
    display: block;
    padding: 0.5em 1em;
    text-decoration: none;
	width:100%;
	display:block;
}
#nodisplaysent{
	position:absolute;
	left: -9000px;
}
.wizard > .actions .disabled a,
.wizard > .actions .disabled a:hover,
.wizard > .actions .disabled a:active
{
    background: #eee;
    color: #aaa;
}

.wizard > .loading
{
}

.wizard > .loading .spinner
{
}


/*
    Kontaktformular - Regular
*/

.kontaktform
{
    position: relative;
    display: block;
    width: 100%;
	margin-bottom: 20px;
}

.kontaktform.vertical
{
    display: inline;
    float: left;
    width: 30%;
}

.kontaktform > .number
{
        width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
}

.kontaktform > ul > li
{
    width: auto;
}

.kontaktform > ul > li
{
    float: left;
}

.kontaktform.vertical > ul > li
{
    float: none;
    width: 100%;
}

.kontaktform > a,
.kontaktform > a:hover,
.kontaktform > a:active
{
    display: block;
    width: auto;
    margin: 0 0.5em 0.5em;
    padding: 1em 1em;
    text-decoration: none;
    padding-top: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.kontaktform > .disabled a,
.kontaktform > .disabled a:hover,
.kontaktform > .disabled a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
	width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.kontaktform > .current a,
.kontaktform > .current a:hover,
.kontaktform > .current a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
	width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.kontaktform > .done a,
.kontaktform > .done a:hover,
.kontaktform > .done a:active
{
    background: #fff;
    cursor: pointer;
    color: #212529;
    width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.kontaktform > .error a,
.kontaktform > .error a:hover,
.kontaktform > .error a:active
{
background: #fff;
    cursor: pointer;
    color: #212529;
    width: 100%;
    display: block;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.kontaktform > .content
{
    display: block;
    overflow: hidden;
    position: relative;
    width: auto;

    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}
.kontaktform section.body{
	width:100%;
}
.kontaktform.vertical
{
    display: inline;
    float: left;
    margin: 0 2.5% 0.5em 2.5%;
    width: 65%;
}

.kontaktform
{
    float: left;

}

.kontaktform >  ul
{
    list-style: disc !important;
}

.kontaktform > ul > li
{
    display: list-item;
}

.kontaktform iframe
{
    border: 0 none;
    width: 100%;
    height: 100%;
}

.kontaktform > input
{
    display: block;
    border: 1px solid #01A58E;
    float:left;
	border-radius: 0;
}
.kontaktform .wpcf7-list-item{
	margin: 0 20px 0 0;
}
.kontaktform .wpcf7-list-item input{
    line-height: 60px;
    margin-top: 5px;
    margin-right: 10px;
}
.kontaktform > input[type="checkbox"]
{
    display: inline-block;
}
.kontaktform .vc_col-sm-6 .half br{
	display:none;
}
.kontaktform .vc_col-sm-6 .half{
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	margin-bottom: 20px;
}
.kontaktform .vc_col-sm-6 .half label{
	width: 48% !important;
}
.kontaktform > input.error
{
    background: rgb(251, 227, 228);
    border: 1px solid #fbc2c4;
    color: #8a1f11;
}
.kontaktform .form-control{
    border: 1px solid #01A58E;
    color: #01A58E;
    margin-top: 10px;
}

.h-captcha:not([data-size="invisible"]) {
    border: 0;
	margin-bottom: 0;
}

.kontaktform .form-control.error, .kontaktform > input.wpcf7-not-valid{
    border: 1px solid red;
}
.kontaktform label
{
    width: 100%;
    display: inline-block;
	margin-bottom: 0px;
	font-weight: bold;
	
}
.kontaktform p.center{
    text-align: center;
    padding: 0 15px;
}
.kontaktform > label.error
{
    color: #8a1f11;
    display: inline-block;
    margin-left: 1.5em;
}
.kontaktform input.wpcf7-form-control.wpcf7-submit{
	background-color: #01A58E;
	color: #fff;
	border: 0;
}

.kontaktform input.wpcf7-form-control.wpcf7-submit:hover{
	background-color: #009B86;
	color: #fff;
}

.kontaktform-regular .wpcf7-response-output {
    border: 0;
}
 
.kontaktform-regular form.init .wpcf7-response-output {
    border: 0;
}
 
.kontaktform-regular form.sent .wpcf7-response-output {
    border: 0;
	color: #01A58E;
	font-size: 24px;
    font-weight: bold;
}
 
.kontaktform-regular form.failed .wpcf7-response-output,
.kontaktform-regular form.aborted .wpcf7-response-output {
    border: 0;
	color: red;
}
 
.kontaktform-regular form.spam .wpcf7-response-output {
    border: 0;
	color: red;
}
.kontaktform-regular form.invalid .wpcf7-response-output,
.kontaktform-regular form.unaccepted .wpcf7-response-output {
    border: 0;
	color: red;
}



/*
    Tabcontrol
*/

.tabcontrol > .steps
{
    position: relative;
    display: block;
    width: 100%;
}

.tabcontrol > .steps > ul
{
    position: relative;
    margin: 6px 0 0 0;
    top: 1px;
    z-index: 1;
}

.tabcontrol > .steps > ul > li
{
    float: left;
    margin: 5px 2px 0 0;
    padding: 1px;

    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.tabcontrol > .steps > ul > li:hover
{
    background: #edecec;
    border: 1px solid #bbb;
    padding: 0;
}

.tabcontrol > .steps > ul > li.current
{
    background: #fff;
    border: 1px solid #bbb;
    border-bottom: 0 none;
    padding: 0 0 1px 0;
    margin-top: 0;
}

.tabcontrol > .steps > ul > li > a
{
    color: #5f5f5f;
    display: inline-block;
    border: 0 none;
    margin: 0;
    padding: 10px 30px;
    text-decoration: none;
}

.tabcontrol > .steps > ul > li > a:hover
{
    text-decoration: none;
}

.tabcontrol > .steps > ul > li.current > a
{
    padding: 15px 30px 10px 30px;
}

.tabcontrol > .content
{
    position: relative;
    display: inline-block;
    width: 100%;
    height: 35em;
    overflow: hidden;
    border-top: 1px solid #bbb;
    padding-top: 20px;
}

.tabcontrol > .content > .body
{
    float: left;
    position: absolute;
    width: 95%;
    height: 95%;
    padding: 2.5%;
}

.tabcontrol > .content > .body ul
{
    list-style: disc !important;
}

.tabcontrol > .content > .body ul > li
{
    display: list-item;
}


.codedropz-btn-wrap .cd-upload-btn{
    padding-top: 80px;
    display: block;
    font-size: 27px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    background: url(inc/assets/img/moeschl-download.svg) top center no-repeat;
    margin-top: 40px;
}

#wizard .steps .first{
	background: url(inc/assets/img/first.png) top center no-repeat;
}

#wizard .steps .first:after{
    content: '';
    width: 73%;
    height: 7px;
    background: #f7f7f7;
    display: block;
    position: absolute;
    right: -80px;
    top: 25px;
    z-index: 0;
}

#wizard .steps .first.done:after{
    background: #01a58e;
}
#wizard .steps li:nth-child(2){
	background: url(inc/assets/img/second.png) top center no-repeat;
}

#wizard .steps li:nth-child(2).current, #wizard .steps li:nth-child(2).done{
	background: url(inc/assets/img/second-active.png) top center no-repeat;
}

#wizard .steps li:nth-child(2):after{
    content: '';
    width: 73%;
    height: 7px;
    background: #f7f7f7;
    display: block;
    position: absolute;
    right: -80px;
    top: 25px;
    z-index: 0;
}
#wizard .steps li:nth-child(2).done:after{
    background: #01a58e;
}


#wizard .steps .last{
	background: url(inc/assets/img/third.png) top center no-repeat;
}
#wizard .steps .last.current, #wizard .steps .last.done{
	background: url(inc/assets/img/third-active.png) top center no-repeat;
}
#wizard .steps li{
    padding-top: 60px;
    position: relative;
    width: 33%;
    margin: 0;
}
.acceptance{
    width: 23px;
    height: 23px;
}
.accept-text{
    float: left;
    margin: -35px 0px 0 40px;
    font-weight: 400;
}
.page-id-1667 #main{
    padding-top: 80px;
}
.page-id-1667 h1{
	color: #212529;
	font-size: 36px;
	font-weight: 700;
	font-style: normal;
	position: absolute;
}

.page-id-20 #main{
	padding-top: 80px;
}
.page-id-20 h1{
	color: #212529;
	font-size: 36px;
	font-weight: 700;
	font-style: normal;
	position: absolute;
}

.page-id-1822 #main{
    padding-top: 20px;
}
.page-id-1822 h1{
	color: #212529;
	font-size: 36px;
	font-weight: 700;
	font-style: normal;
	position: absolute;
}

.codedropz-upload-container:after{
    content: 'Ihr Projekt und Ihre Daten sind bei uns sicher: \A Verschlüsselte Übertragung durch SSL | Lokaler hauseigener Server in Deutschland \A Daten geschützt durch Geheimhaltungsvereinbarung';
    width: 100%;
    text-align: center;
    display: block;
    white-space: pre;
    margin-top: 30px;
    font-size: 11px;
	font-weight: 400;
}

@media only screen and (max-width: 1024px) {
	#wizard .steps .first:after{
		right: -60px;
    }
    #wizard .steps li:nth-child(2):after{
		right: -60px;
    }
}

@media only screen and (max-width: 768px) {
	#wizard .steps .first:after{
		right: -41px;
		width: 60%;
    }
    #wizard .steps li:nth-child(2):after{
		right: -41px;
		width: 60%;
    }
}
@media only screen and (max-width: 480px) {
	.page-id-1667 #main{
		padding-top: 0;
    }
	.page-id-1667 #main h1{
		padding-top: 0;
    }
    .wizard .steps ul{
        width: 100%;
    }
    .page-id-1667 h1{
        position: relative;
    }
}
p.kontakt-button {
background-color: #01A58E;
display: inline-block;
font-weight: bold;
font-size: 16px;
padding: 15px 15px 15px;
margin-bottom: 15px !important;
}

p.kontakt-button a {color: #ffffff;text-decoration:none}

.kontakt-banner {
background: #01A58E;
color: #fff;
font-size: 16px;
padding: 1px 30px 20px;
font-weight:500;
}

.kontakt-banner a {
  color: #ffffff;
  font-size: 1rem;
  text-align: right;
  font-weight:bold;
  text-decoration: underline;
}
.kontakt-banner h3 {
color: #ffffff;
font-size: 20px;
}
.vc_toggle_title {
background-color: #01A58E;
padding: 20px !important;
border-radius: 5px;
}
.vc_toggle_title > h4 {color:white;}

/* roboto-regular - latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('../fonts/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../fonts/roboto-v30-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('../fonts/roboto-v30-latin-regular.woff') format('woff'), /* Modern Browsers */
         url('../fonts/roboto-v30-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('../fonts/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  