/*
[placeholder]:focus::-webkit-input-placeholder { opacity: 0; }
[placeholder]:focus:-moz-placeholder { opacity: 0; }
[placeholder]:focus::-moz-placeholder { opacity: 0; }
[placeholder]:focus:-ms-input-placeholder { opacity: 0; }
*/

body {
    color: #7b7b7b;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.5em;
    overflow-x: hidden;
}
body.no-scroll {
	overflow: hidden;
}

#page {
    position: absolute;
    width: 100%;
}

#content {
	padding-bottom: 80px;
}

.vh-wrap {
	min-height: 100vh;
}

.entry-header {
    margin-bottom: 45px;
}
h1 + .divider {
    margin-top: 10px;
    margin-bottom: 45px;
}

h1,
.headline-1 {
    color: #82b338;
    font-size: 36px;
    line-height: 1.2em;
    font-weight: 600;
    text-align: center;
}
h2,
.headline-2 {
    color: #82b338;
    font-size: 28px;
    line-height: 1.2em;
    font-weight: 600;
    margin: 30px 0 30px 0;
    text-align: center;
}
h3,
.headline-3 {
    color: #7b7b7b;
    font-size: 18px;
    line-height: 1.5em;
    font-weight: 600;
    margin: 25px 0 15px 0;
}
hr + h2,
hr + h3 {
    margin-top: -8px;
}

p,
.inline-p {
    font-size: 16px;
    line-height: 1.5em;
    margin-bottom: 15px;
}
p.no-margin {
    margin-bottom: 0;
}

a,
.link {
    color: #bc3e1e;
    cursor: pointer;
    text-decoration: none;
}
a.btn,
div.btn {
    display: inline-block;
    position: relative;
}
a:hover,
a:focus,
.link:hover,
.link:focus {
    text-decoration: underline;
}
a.btn:hover,
a.btn:focus,
a.no-hover,
span.no-hover {
    text-decoration: none;
}
a.passive,
.link.passive {
    color: #7b7b7b;
    text-decoration: underline;
}

em {
    font-style: italic;
}
strong {
    font-weight: bold;
}
small {
    font-size: smaller;
}
sup {
    font-size: smaller;
    line-height: 0;
    vertical-align: super;
}

label {
    line-height: 1.3em;
}

ol.standard {
    display: block;
    list-style-type: decimal;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 40px;
    padding-left: 25px;
}
ol.bubbles {
    counter-reset: section;
    display: block;
    list-style-type: none;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 40px;
}
    ol.bubbles li {
        position: relative;
    }
    ol.bubbles li:before {
        background-color: #82b338;
        border-radius: 50%;
        color: #fff;
        content: counters(section, ".", decimal) " ";
        counter-increment: section;
        display: block;
        font-size: 1em;
        height: 30px;
        line-height: 28px;
        margin-left: -40px;
        position: absolute;
        text-align: center;
        top: 0;
        width: 30px;
    }
ol.top-bubbles {
    counter-reset: section;
    display: block;
    list-style-type: none;
    text-align: center;
}
    ol.top-bubbles li {
        position: relative;
        margin-top: 20px;
    }
    ol.top-bubbles li:first-child {
        margin-top: 0;
    }
    ol.top-bubbles li:before {
        background-color: #fff;
        border: 1px solid #dddddd;
        border-radius: 50%;
        color: #7b7b7b;
        content: counters(section, ".", decimal) " ";
        counter-increment: section;
        display: block;
        font-size: 18px;
        height: 50px;
        line-height: 48px;
        text-align: center;
        width: 50px;
        margin: 45px auto 15px auto;
        font-weight: bold;
    }

ul.standard {
    display: block;
    list-style-type: disc;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 40px;
}
.t-center > ol,
.t-center > ul {
    display: inline-block !important;
}
ol li,
ul li,
ol.standard li,
ul.standard li {
    font-size: 16px;
    line-height: 1.5em;
    margin-top: 5px;
}
ul.standard li:first-child,
ol.standard li:first-child {
    margin-top: 0;
}
ul.checks,
ul.arrows {
    margin: 30px 0;
}
    ul.checks li,
    ul.arrows li {
        line-height: 1.5em;
        margin-top: 0;
        padding-left: 1.8em;
        position: relative;
        text-indent: -1.8em;
    }

    ul.checks li:before,
    ul.arrows li:before {
        font-family: fontello;
        font-size: 1em;
        line-height: 1.5em;
        margin-right: 0.75em;
        text-align: center;
    }
    ul.checks li:before {
        content: "\e80e";
    }
    ul.arrows li:before {
        content: "\e809";
    }
    ul.checks li:first-child,
    ul.arrows li:first-child {
        margin-top: 0;
    }
    ul.checks li:before,
    ul.arrows li:before {
        color: #82b338;
    }
    ul.checks li [class^="icon-"]:before,
    ul.checks li [class*=" icon-"]:before {
        text-indent: 0;
    }

ul.space-5 li,
ol.space-5 li {
    margin: 5px 0;
}
ul.space-10 li,
ol.space-10 li {
    margin: 10px 0;
}
ul.space-15 li,
ol.space-15 li {
    margin: 15px 0;
}
ul.space-20 li,
ol.space-20 li {
    margin: 20px 0;
}
ul.space-40 li,
ol.space-40 li {
    margin: 40px 0;
}

img {
    max-width: 100%;
    max-height: 100%;
    height: auto;
}
img.full {
    max-width: none;
    max-height: none;
}
.col img,
.col .video-js {
    margin-bottom: 10px;
}

input[type="text"],
textarea {
    border: 1px solid #dcdcdc;
    border-radius: 5px;
    color: #7b7b7b;
    font-size: 14px;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    line-height: 1.3em;
    padding: 5px 8px 6px;
}
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus {
    border: 1px solid #ff9b00 !important;
    outline: 0 none;
}
    input.error,
    textarea.error {
        background-color: #ffe0e0 !important;
        border-color: #f00 !important;
    }

.btn input {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
}

.black {
    color: #000;
}
.red {
    color: #f00;
}
.green {
    color: #82b338;
}
.orange {
    color: #ff9b00;
}
.grey {
    color: #7b7b7b;
}

.weight-normal {
    font-weight: normal;
}
.semi-bold,
.weight-semi-bold {
    font-weight: 600;
}
.bold,
.weight-bold {
    font-weight: bold;
}

.bg-lightred {
    background-color: #ffb0b0;
}
.bg-green {
    background-color: #82b338;
    color: #fff;
}
.bg-lightgreen {
    background-color: #e5f3d0;
}
.bg-orange {
    background-color: #ff9b00;
    color: #fff;
}
.bg-grey {
    background-color: #eee;
}
.bg-lightgrey {
    background-color: #f2f2f2;
}
.bg-darkgrey {
    background-color: #bababa;
}
.btn-ghost {
	background-color: #fff;
	border: 1px solid #ff9b00;
}
.btn.btn-ghost {
	border: 1px solid #82b338;
	background: none;
	background-color: transparent;
	color: #82b338;
	transition: box-shadow 0.25s ease-out, color 0.25s ease-out;
}
.btn.btn-ghost:hover, 
.btn.btn-ghost:focus {
	box-shadow: inset 500px 0 0 0 #82b338;
	color: #fff;
}

.btn-ghost-orange {
	background-color: #fff;
	border: 2px solid #ff9b00;
}
.btn.btn-ghost-orange {
	border: 2px solid #ff9b00;
	background: none;
	background-color: transparent;
	color: #ff9b00;
	transition: box-shadow 0.25s ease-out, color 0.25s ease-out;
}
.btn.btn-ghost-orange:hover, 
.btn.btn-ghost-orange:focus {
	box-shadow: inset 500px 0 0 0 #ff9b00;
	color: #fff;
}

.t-left {
    text-align: left !important;
}
.t-right {
    text-align: right !important;
}
.t-center {
    text-align: center !important;
}

.f-left {
    float: left;
}
.f-right {
    float: right;
}

.pos-relative {
    position: relative;
}
.pos-absolute {
    position: absolute;
}

.caption,
.wp-caption-text {
    font-style: italic;
    font-size: 12px;
    line-height: 1.3em;
    margin-bottom: 0;
}

.btn {
    border-radius: 5px;
    cursor: pointer;
    font-weight: 700;
    position: relative;
    transition: background-color 0.3s ease;
}
    .btn-small {
        font-size: 16px;
        line-height: 1em;
        padding: 5px 10px;
    }
    .btn-medium {
    	/*
        font-size: 20px;
        line-height: 1.5em;
        padding: 10px 20px;
        */
        font-size: 16px;
		line-height: 1.3em;
		padding: 10px 20px;
    }
    .btn-large {
        font-size: 24px;
        line-height: 1em;
        padding: 13px 22px;
    }
    .btn-orange {
        background-color: #ff9b00;
        color: #fff !important;
    }
    .btn-orange:hover {
        background-color: #ff6b00;
    }
    .btn-red {
        background-color: #b4100f;
        color: #fff !important;
    }
    .btn-red:hover {
        background-color: #A41010;
    }
    .btn-green {
        background-color: #82b338;
        color: #fff !important;
    }
    .btn-green:hover {
        background-color: #629318;
    }
    .btn-grey {
        background-color: #eee;
        color: #7b7b7b !important;
    }
    .btn-grey:hover {
        background-color: #ddd;
    }
    .btn-dark-grey {
        background-color: #aaa;
        color: #fff !important;
    }
    .btn-dark-grey:hover {
        background-color: #999;
    }
    .btn-blue {
        background-color: #3DBAF4;
        color: #fff !important;
    }
    .btn-blue:hover {
        background-color: #047BE8;
    }
    .btn .icon:before,
    .btn .icon-right-open:before {
        margin-right: 0;
        vertical-align: -1px;
        width: auto;
    }
    
    .btn-wlm,
    .btn-wlm:hover {
    	color: #fff;
		background-color: var(--global-theme-color-wlm);
    }

.underline {
    text-decoration: underline;
}

.c-pointer {
    cursor: pointer;
}

.wrap-full-grid {
    margin: 0 auto;
    width: 960px;
}

.flag {
    display: inline-block;
    width: 16px;
    height: 11px;
    background: url(/wp-content/themes/FCE_new/images/flags.png) no-repeat
}
.flag.flag-at { background-position: -16px 0 }
.flag.flag-ch { background-position: -32px 0 }
.flag.flag-de { background-position: 0 -11px }
.flag.flag-es { background-position: -16px -11px }
.flag.flag-fr { background-position: -32px -11px }
.flag.flag-en { background-position: 0 -22px }
.flag.flag-it { background-position: -16px -22px }
.flag.flag-nl { background-position: -32px -22px }

.b-bottom {
    border-bottom: 1px solid #dcdcdc;
}
.b-top {
    border-top: 1px solid #dcdcdc;
}

hr {
    background-color: #dddddd;
    border: 0 none;
    clear: both;
    display: block;
    font-size: 0;
    height: 1px;
    margin: 20px auto;
}
hr.spacer {
    background-color: transparent;
    margin: 20px auto;
}
    hr.divider-10,
    hr.spacer-10 {
        margin: 10px auto;
    }
    hr.divider-15,
    hr.spacer-15 {
        margin: 15px auto;
    }
    hr.divider-20,
    hr.spacer-20 {
        margin: 20px auto;
    }
    hr.divider-30,
    hr.spacer-30 {
        margin: 30px auto;
    }
    hr.divider-40,
    hr.spacer-40 {
        margin: 40px auto;
    }
    hr.divider-50,
    hr.spacer-50 {
        margin: 50px auto;
    }
    hr.divider-60,
    hr.spacer-60 {
        margin: 60px auto;
    }
    hr.divider-70,
    hr.spacer-70 {
        margin: 70px auto;
    }

.fancybox-wrap .fancybox-close {
    color: #7b7b7b;
    font-size: 14px;
    height: auto;
    right: 5px;
    top: 8px;
    width: auto;
}

.line-through {
    color: red;
    text-decoration: line-through;
}
    .line-through span {
        color: #7b7b7b;
    }

.hide {
    display: none;
}

* + .row {
    margin-top: 15px;
}
.row {
    margin-bottom: 15px;
}
.row.space-20 {
    margin-bottom: 20px;
}
.row.space-25 {
    margin-bottom: 25px;
}
.row.space-30 {
    margin-bottom: 30px;
}
* .row:last-child {
    margin-bottom: 0;
}

.col {
    line-height: 0;
}
    .col * {
        line-height: 1.5em;
    }
    .col h1,
    .col h2 {
        line-height: 1.2em;
    }

.ratingbox {
    background-image: url('/wp-content/themes/FCE_new/images/fce-kundenbewertung-bg-schmal.jpg');
    background-repeat: no-repeat;
    height: 104px;
    width: 150px;
}
    .ratingbox div:first-child,
    .ratingbox div:first-child + div,
    .ratingbox div:first-child + div + div {
        color: #494949;
        text-align: center;
    }
    .ratingbox div:first-child {
        color: #8c8c8c;
        font-size: 12px;
        line-height: 20px;
        margin-top: 0px;
    }
    .ratingbox div:first-child + div {
        font-size: 20px;
        font-weight: 700;
        line-height: 24px;
        margin-top: 34px;
    }
    .ratingbox div:first-child + div + div {
        font-size: 12px;
        line-height: 1.5em;
    }

table {
    margin: 20px 0;
}
table th,
table td {
    vertical-align: top;
}
table tr.v-middle th,
table tr.v-middle td {
    vertical-align: middle;
}
table tr.v-bottom th,
table tr.v-bottom td {
    vertical-align: bottom;
}
table.full {
    width: 100%;
}
table.fixed {
	table-layout: fixed;
}
    table.padding th,
    table.padding td {
        padding: 10px;
    }
    table.padding-15 th,
    table.padding-15 td {
        padding: 15px;
    }
    table.padding-20 th,
    table.padding-20 td {
        padding: 20px;
    }
table tr.b-bottom {
    border: 0;
}
    table tr.b-top td {
        border-top: 1px solid #eee;
    }
    table tr.b-bottom td {
        border-bottom: 1px solid #eee;
    }
    
.table-layout-1 {
	width: 100%;
	text-align: left;
}
	.table-layout-1 th {
		font-weight: bold;
	}
	.table-layout-1 th,
	.table-layout-1 td {
		padding: 5px 7px;
		font-size: 16px;
		line-height: 1.4em;
	}
	.table-layout-1 th:last-child,
	.table-layout-1 td:last-child {
		text-align: right;
	}
	.table-layout-1 thead tr {
		border-bottom: 2px solid #eee;
	}
	.table-layout-1 tr {
		border-bottom: 1px solid #eee;
	}
	.table-layout-1 .line-through {
		color: #aaa;
		font-size: smaller;
	}
	
.table-layout-2 {
	width: 100%;
	text-align: right;
	table-layout: fixed;
}
	.table-layout-2 th {
		font-weight: bold;
	}
	.table-layout-2 th,
	.table-layout-2 td {
		padding: 5px 7px;
		font-size: 16px;
		line-height: 1.4em;
	}
	.table-layout-2 th:first-child,
	.table-layout-2 td:first-child {
		text-align: left;
	}
	.table-layout-2 thead tr {
		border-bottom: 2px solid #eee;
	}
	.table-layout-2 tr {
		border-bottom: 1px solid #eee;
	}
	.table-layout-2 .line-through {
		color: #aaa;
		font-size: smaller;
	}

.col > *:first-child {
    margin-top: 0;
}

.arrow-top {
    background-color: #82b338;
    border-radius: 50%;
    color: #fff;
    display: none;
    position: fixed;
    bottom: 70px;
    right: 20px;
    z-index: 2;
    text-align: center;
    opacity: 0.5;
    width: 60px;
    height: 60px;
}
.arrow-top:hover,
.arrow-top:focus {
    opacity: 1;
}
    .arrow-top span {
        font-size: 32px;
        line-height: 60px;
        position: relative;
        top: -3px;
    }
    .arrow-top span:before {
        margin: 0;
    }

.center-bob {
    margin: 70px auto 20px auto;
    text-align: center;
}

.rating-stars {
    background-image: url("../images/rating_stars_small.png");
    background-position: 0 0;
    background-repeat: no-repeat;
    display: inline-block;
    height: 15px;
    margin: 0 auto;
    width: 79px;
}
    .rating_50 {
        background-position: 0 0;
    }
    .rating_45 {
        background-position: 0 -15px;
    }
    .rating_40 {
        background-position: 0 -30px;
    }
    .rating_35 {
        background-position: 0 -45px;
    }
    .rating_30 {
        background-position: 0 -60px;
    }
    .rating_25 {
        background-position: 0 -75px;
    }
    .rating_20 {
        background-position: 0 -90px;
    }
    .rating_15 {
        background-position: 0 -105px;
    }
    .rating_10 {
        background-position: 0 -120px;
    }
    .rating_05 {
        background-position: 0 -120px;
    }
    .rating_00 {
        background-position: 0 -120px;
    }
    
.site-content {
    margin-top: 40px;
}

.breadcrumb {
    font-size: 12px;
    position: relative;
    z-index: 1;
    width: 100%;
}
    .breadcrumb .wrap {
        font-size: 12px;
        margin: 10px auto 10px auto;
        position: relative;
        z-index: 1;
        width: 960px;
    }
.breadcrumb.position-fix {
    position: absolute;
}
    .breadcrumb_last {
        font-weight: normal;
    }
    .breadcrumb a {
        color: #7b7b7b;
        text-decoration: underline;
    }
    
.gridboxes .box {
    border: 1px solid #ddd;
    padding: 20px 10px;
}
    .gridboxes .box h3 {
        margin-top: 0;
    }
    .gridboxes .box .smaller {
        font-size: 12px;
        line-height: 1em;
    }
    .gridboxes .box .line-through {
        color: #7b7b7b;
    }
    .gridboxes .box .bigger {
        font-size: 18px;
    }
    .gridboxes .box .btn {
        margin-top: 5px;
    }
    .gridboxes strong.big {
        font-size: 32px;
        line-height: 1em;
    }
    
    .gridboxes.style-2 .box h3 {
        margin-top: 5px;
        margin-bottom: 0;
        font-weight: normal;
        font-size: 22px;
        line-height: 1em;
    }
    .gridboxes.style-2 a {
		display: inline-block;
    }
	    .gridboxes.style-2 a img {
			box-shadow: 0 0 5px 0px #999;
	    }
    
.site-navi .menu-header-search {
	position: absolute !important;
	top: 0;
	right: 0;
}
.site-navi .search-form {
	text-align: right;
	position: absolute;
	right: 0;
	top: 0;
}
    .search-form .search-field {
        height: 30px;
        width: auto;
        border: 1px solid #666;
        background-color: #fff;
        background-image: url("/wp-content/themes/FCE_new/images/search-icon-sprite.png");
		background-position: 5px -24px;
		background-repeat: no-repeat;
		background-size: 16px 50px;
        padding-left: 35px;
        margin-top: 5px;
	}
    .site-navi .search-field {
    	cursor: pointer;
        border: 0;
        height: 25px;
        width: 35px;
        background-color: #4e8028;
        background-position: right 0px;
        -webkit-transition: width 400ms ease, background-color 400ms ease;
        transition: width 400ms ease, background-color 400ms ease;
    }
    /*
    .site-navi label:after {
    	cursor: pointer;
		content: "\e823";
		color: #fff;
		font-family: "fontello";
		position: absolute;
		right: 10px;
		top: 7px;
    }
    */
    .search-field::-webkit-input-placeholder {
        color: transparent;
    }
    .search-field:-moz-placeholder {
       color: transparent;
    }
    .search-field::-moz-placeholder {
       color: transparent;
    }
    .search-field:-ms-input-placeholder {
       color: transparent;
    }
    
    .site-navi .search-field:focus {
    	cursor: auto;
        background-color: #fff;
        border: 0;
        background-position: 5px -25px;
        width: 200px;
    }
    .search-form .screen-reader-text,
    .search-form .search-submit {
        display: none;
    }
    
.search-results .entry-header {
	margin-bottom: 20px;
}
.search-results .entry-title {
	margin-bottom: 0px;
}
.search-results article + article {
	margin-top: 50px;
}

.invisible {
	visibility: hidden;
}

.page-template-shopping-v3 .vh-wrap {
	min-height: auto;
}