* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: 'Montserrat', sans-serif;
    color: black;
    font-size: 70%;
}

@media screen and (min-width: 37.500em) { body { font-size: 80%; } }
@media screen and (min-width: 53.750em) { body { font-size: 100%; } }

/* Globals */

.container {
    max-width: 1200px; /*68.438rem;*/
    padding: 1.5rem;
    margin: 0 auto;
}

.row { padding: 1em; }

img {
    max-width: 100%;
    height: auto;
}

a {
    text-decoration: none;
    color: inherit;
}

p {
    line-height: 1.5;
    margin: 0 0 1em 0;
}
p:last-child { margin: 0; }

h1,h2,h3,h4,h5,h6 { margin: 0; }

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

figure,dl,dt,dd { margin: 0; }

em {
    font-style: normal;
    font-weight: bold;
}

.hidden {
    position: absolute;
    top: -999em;
    left: -999em;
}

.italic { font-style: italic !important; }
.center { text-align: center; }
.bold { font-weight: bold !important; }

.button {
    background: #fb9c7c;
    color: white;
    font-weight: bold;
    font-size: 1.1em;
    display: block;
    text-align: center;
    border-radius: .2em;
    letter-spacing: .03em;
    padding: .8em 1.6em;
    transition: all .15s ease-in-out;
}
.button:hover { opacity: .85; }

.button-container { text-align: center; }
.button-container .button {
    display: inline-block;
}

/* Header */
.site-header {

}

.site-header .logo { max-width: 7.375em; margin: 0; }

.site-header > .brand {
    background: #f9f9f9;
}

.site-header > .brand .container {
    display: flex;
    justify-content: center;
    padding: .75rem 1.5rem .25rem 1.5rem;
}

.site-header .banner {
    background: #4d8365; /*#205043;*/
    color: white;
    font-size: .8em;
    font-weight: 500;
}

.site-header .banner .container { padding-top: .5rem; padding-bottom: .5rem;  }

.site-header .banner ul {
    text-align: left;
    line-height: 1.5;

    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.site-nav > .container {
    padding: 0;
}

.site-nav {
    font-size: 1.1em;
}

.site-nav ul { text-align: center; }

.site-nav a {
    display: block;
    line-height: normal;
    transition: all .15s ease-in-out;
    padding: .7em 1.4em;
}
.site-nav a:hover {
    background: rgba(0,0,0,.1);
}

.site-nav .social-media {
    position: absolute;
    right: -999em;
    top: -999em;
    font-size: 1.5em;
}

.site-nav .social-media li:not(:last-child) {
    margin-bottom: .25em;
}

.site-nav .social-media a {
    background: #ffa541;
    border-radius: .5rem 0 0 .5rem;
    opacity: .7;
    padding: .5em;
}
.site-nav .social-media a:hover {
    opacity: 1;
}

@media screen and (min-width: 48.750em) {
    .site-nav ul:not(.social-media) {
        display: flex;
        justify-content: center;
        text-align: left;
    }
}

@media screen and (min-width: 87.500em) {
    .site-nav .social-media {
        position: fixed;
        right: 0;
        top: 25%;
    }
}

/* Content */

/*.site-content > article:nth-of-type(even) {
    background: #f2f2f2;
    padding: 2em 0;
}*/

.site-content h2 {
    font-size: 2em;
    font-weight: 400;
    text-align: center;
    margin-bottom: 1em;
}

.site-content p {
    font-size: 1.3em;
    font-weight: 300;
}

.site-content .produkt {
    padding-bottom: 2em;
}

.site-content .produkt .container > h1 {
    text-align: left;
    font-weight: 400;
    font-size: 2em;
    color: black;
    margin-bottom: 1em;
}

.site-content .produkt .container > h1 .limit {
    color: #d0021b;
    display: block;
    font-size: .571em;
    margin-bottom: .75em;
}

.site-content .produkt .stars {
    margin-bottom: 1em;
}

.site-content .produkt .stars .fa {
    color: #fbcd0c;
    font-size: 1.8em;
}

.site-content .produkt .stars figcaption {
    font-size: .75rem;
    font-weight: 700;
    margin-top: .5em;
}

.site-content .produkt .visitors {
    border: 2px solid #3c7a30;
    border-radius: 5px;
    font-size: .75rem;
    display: inline-block;
    padding: .75em 1.5em;
    margin-bottom: 1.75em;
}

.site-content .produkt .visitors > span { font-weight: bold; }

.site-content .produkt .container > .product-container .image {
    text-align: center;
}

.site-content .produkt .container > .product-container .image img {
    max-width: 150px;
}

.site-content .produkt .container > .product-container .text {
    font-size: 1.2em;
    color: black;
    margin-bottom: 2.5em;
}

.site-content .produkt .container > .product-container .text ul {
    font-size: .85em;
    margin-bottom: 1em;
}

.site-content .produkt .container > .product-container .text ul > li {
    position: relative;
    line-height: 1.5;
    padding-left: 1.5em;
}
.site-content .produkt .container > .product-container .text ul > li:not(:last-child) { margin-bottom: .5em; }

.site-content .produkt .container > .product-container .text ul > li::before {
    content: "\f00c";
    font-family: FontAwesome;
    color: #ccca7c;
    position: absolute;
    left: 0;
}

.site-content .produkt .container > .product-container .text > small {
    font-size: 1.125rem;
    display: block;
    margin-bottom: 1.5em;
}

.site-content .produkt .container > .product-container .text > small span {
    display: block;
    font-size: 1.667em;
    margin-top: .2em;
}

.site-content .produkt .container > .product-container .text > small span > s {
    color: #e60000;
}

.site-content .produkt .counter {
    margin-bottom: 1em;
}

.site-content .trustpilot {
    margin: 2em 0;
}

.trustpilot .splide__slide {
    align-self: center;
}

.site-content .inhaltsstoffe {
    background: #f5f5e9;
    border-radius: .3em;
    padding: 2em;
    margin: 2em 0;
}

.site-content .inhaltsstoffe h2 {
    margin-bottom: 1.75em;
}

.site-content .inhaltsstoffe ul li { margin-bottom: 2em; }

.site-content .inhaltsstoffe ul h3 {
    font-size: 1.250em;
    text-align: center;
    margin: 0 0 .5em 0;
}

.site-content .inhaltsstoffe ul p {
    font-size: 1em;
    line-height: 1.4;
}

.site-content .inhaltsstoffe figure { opacity: .85; }

.site-content .inhaltsstoffe figure img { display: block; }

.site-content .geld-zurueck {
    background: #f2f2f2;
    padding: 2em 0;
}

.site-content .geld-zurueck h2 {
    font-size: 2.625em;
    margin-bottom: .5em;
}

.site-content .geld-zurueck > .container { padding-bottom: 0; }

.site-content .geld-zurueck .image { text-align: center; }

@media screen and (min-width: 48.750em) {
    /*.site-content .produkt .container > h2 {
        width: 60%;
        text-align: left;
        padding-left: 2rem;
        margin-left: 40%;
        margin-bottom: .75em;
    }*/

    .site-content .produkt .container > .product-container {
        display: flex;
    }

    .site-content .produkt .container > .product-container .image {
        flex: 0 1 40%;
        text-align: left;
        margin: 0;
    }

    .site-content .produkt .container > .product-container .image img {
        max-width: 300px;
    }

    .site-content .produkt .container > .product-container .text {
        flex: 0 1 60%;
        padding-left: 2em;
    }

    .site-content .inhaltsstoffe ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .site-content .inhaltsstoffe ul li { flex: 0 1 calc(50% - 1em); }
}

.site-content .feedback {
    margin: 4em 0;
}

/* Videos Anwender */
.videos {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.videos > li {
    flex: 0 1 calc(50% - .75em);
    cursor: pointer;
    margin-top: .75em;
}
.videos::after {
    content: ".";
    flex: 0 1 calc(33.333333% - .75em);
    width: 0;
    height: 0;
    visibility: hidden;
}

/* Bilder Anwender */
.pictures {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2em;
}

.pictures > li {
    flex: 0 1 calc(50% - .75em);
    background: #d7d690;
    background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(215,214,144,1) 100%);
    border-radius: .2em;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: .3em;
    margin-top: .75em;
}

@media screen and (min-width: 468px) {
    .videos > li {
        flex: 0 1 calc(33.333333% - .75em);
    }
}

@media screen and (min-width: 768px) {
    .pictures > li,
    .videos > li {
        flex: 0 1 calc(20% - .75em);
    }

    .pictures::after {
        content: ".";
        flex: 0 1 calc(20% - .75em);
        width: 0;
        height: 0;
        visibility: hidden;
    }
}

/* Verkaufs-Buttons */
.site-content .verkauf { margin: 2.5em 0; }

.site-content .verkauf img {
    border: 1px solid #ccca7c;
    display: block;
}

.site-content .verkauf li:not(:last-child) { margin-bottom: 1em; }

@media screen and (min-width: 46.875em) {
    .site-content .verkauf:not(.auswahl) {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .site-content .verkauf:not(.auswahl) li {
        flex: 0 1 50%;
    }

    .site-content .verkauf:not(.auswahl) li:not(:last-child) { margin-bottom: 0; }

    .site-content .verkauf:not(.auswahl) li:nth-child(2) img {
        margin-top: -1em;
    }

    .site-content .verkauf { text-align: center; }

    .site-content .verkauf.auswahl img {
        max-width: 50%;
        display: inline-block;
    }
}

/*i:before {
    content: "\f00c";
    font-family: FontAwesome;
    color: #e3dfb5;
    position: absolute;
    left: 0;
}*/

.splide__pagination__page.is-active { background: #ffa541; }
.splide__arrow { background: rgba(204,204,204,.4); }
.splide__arrow--prev { left: .1em; }
.splide__arrow--next { right: .1em; }
/*.splide__arrow[disabled] { display: none; }*/
.splide__pagination {
    position: static;
    bottom: inherit;
    left: inherit;
    transform: none;
    width: 100%;
    margin-top: 1em;
    
    background: rgba(0,0,0,.03);
    border-radius: .25em;
    padding: .7em 0;
}

@media screen and (min-width: 78.125em) {
    .splide__arrow--prev { left: -3em; }
    .splide__arrow--next { right: -3em; }
}
/*------------------------------------------------------------------------------*/

/* Overlay */
#overlay {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100000;
    background: rgba(0,0,0,.7);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: none;
}

#overlay > .dialog {
    background: white;
    border-top: 15px solid #8fb93f;
    border-radius: .4em;
    max-width: 43rem;
    width: 90%; 
    position: relative;
    cursor: default;
    padding: 2em;
    margin: 1em 0;
}

#overlay figure {
    text-align: center;
    margin-bottom: 2em;
}

#overlay p {
    font-size: 1.8em;
    font-weight: bold;
    text-align: center;
    color: #f3771a;
    margin: 0;
}
#overlay p:nth-of-type(2) { color: #8fb93f; display: none; }

/* Footer */
.site-footer {
    background: #575756;
    color: white;
    font-weight: 300;
    font-size: 1.3em;
}

.js body:not(.impressum) .site-footer > .container {
    padding-bottom: 4.5rem;
}

.site-footer a:hover,
.site-footer a:focus { text-decoration: underline; }

.site-footer .nav-section {
    display: flex;
    line-height: 1.3;
    margin-bottom: 3em;
}

.site-footer .nav-section > li:not(:last-child) { padding-right: 2.5em; }

.site-footer .nav-section h3 {
    font-weight: 400;
    font-size: 95%;
    display: inline-block;
    text-transform: uppercase;
    color: rgba(255,255,255,.75);
    border-bottom: 2px solid rgba(255,255,255,.35);
    padding-bottom: .3em;
    margin-bottom: .75em;
}

.site-footer .nav-section .social ul {
    display: flex;
    justify-content: space-between;
    font-size: 140%;
}

.site-footer .nav-section .social a { transition: color .15s ease-in-out; }
.site-footer .nav-section .social li:nth-child(1) a:hover { color: #3b5998; }
.site-footer .nav-section .social li:nth-child(2) a:hover { color: #fcaf45; }
.site-footer .nav-section .social li:nth-child(3) a:hover { color: #ff0000; }

.site-footer .nav-secondary {
    text-align: center;
    font-size: 85%;
}

.site-footer .nav-secondary ul {
    display: flex;
    justify-content: center;
    margin-bottom: .5em;
}

.site-footer .nav-secondary li:first-child a {
    border-right: 2px solid rgba(255,255,255,.75);
    padding-right: .3em;
    margin-right: .3em;
}

.site-footer .nav-secondary small {
    font-size: inherit;
    opacity: .75;
}

.site-footer a.aktiv {
    opacity: .7;
}
.site-footer a.aktiv:hover,
.site-footer a.aktiv:focus {
    text-decoration: none;
    cursor: default;
}

#top {
    background: #54595f;
    color: white;
    border-radius: 50%;
    position: fixed;
    bottom: .5em;
    left: calc(50% - 1.5em);
    z-index: 100000;
    width: 3em;
    text-align: center;
    font-size: 1rem;
    opacity: .3;
    transition: opacity .15s ease-in-out;
}
#top:hover {
    opacity: .5;
}

#top img { display: block; }

.cc-color-override--579951218.cc-revoke {
    color: #fff !important;
    background-color: #999 !important;
}

@media screen and (min-width: 51.250em) {
    /*.site-header .banner ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        text-align: left;
    }*/

    .site-header > .brand .container {
        padding: 2rem 1.5rem .5rem 1.5rem;
    }

    .site-header .banner .container {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .site-header .banner {
        font-size: 1.625em;
    }

    .site-content {
        margin-top: 2em;
    }

    .site-content .produkt .container > h1 {
        font-size: 2.625em;
        margin-bottom: 2em;
    }

    .site-content .produkt .container > .product-container .image {
        margin-bottom: 1em;
    }

    .site-content .produkt .stars {
        margin-bottom: 2em;
    }

    .site-content .produkt .stars figcaption {
        font-size: 1rem;
    }

    .site-content .produkt .visitors {
        font-size: 1rem;
    }

    .site-content .produkt .container > .product-container .text ul {
        font-size: inherit;
    }

    .site-header .logo {
        max-width: 9.375em;
    }
}