html, body  { color:#444; }
.container {
    width: auto !important;
    max-width:1400px;
    margin:0 auto;
}

a:hover {
    text-decoration: none;
}

#header-image {
    height:600px;
    margin-bottom:30px;
}

main {
    min-height:60vh;
    font-size:1.25rem;
}

.full-width {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
}

h1 {
    margin-bottom:30px;
}

h1, h2, h3, h4 {
    font-family: "Roboto" !important;
}

.card-header h2,
.card-header h3,
.card-header h4,
.card-header h5 {
    margin-bottom: 0;
}

.card.raised, .noborder {border:none; }
.card-body.bg-light { background:#fff !important;}

.cart-plus-minus {
    border:1px solid #bbb;
    border-radius:4px;
    width: 90px !important;
}
.cart-plus-minus input {
    border:none;
    background:#fff;
    font-size: 14px !important;
    height:28px !important;
}

#home-title {
    padding-top:100px;
}

#b2b-home-slider #home-title {
    padding-top:0;
    padding-left:0;

}

#home-title h2 {
    text-align:center;
    color:#fff;
    text-shadow:0px 0px 2px #000, 0px 0px 10px #000;
    font-size:3em;
}
@media (max-width: 48em) { /* < 544 */
    #home-title h2 {
        text-shadow:0px 0px 2px #000, 0px 0px 7px #000;
        font-size:2em;
    }
}
@media (max-width: 34em) { /* < 544 */
    #home-title {
        padding:50px 0;
    }
    #home-title h2 {
        text-align:center;
        color:#fff;
        text-shadow:0px 0px 2px #000, 0px 0px 7px #000;
        font-size:1.6em;
    }
}

.instagram-image {
    background-size:cover;
    background-position: center center;
}

.instagram-overlay {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top:0;
    left:0;
    width: 100vw;
    height: 100vh;
    z-index: 999;
    background: rgba(39, 42, 43, 0.8);
}
.instagram-wrapper {
    width:70%;
    border:1px solid #aaa;
    background:#fff;
    margin: 0 auto;
    position: relative;
}
.instagram-details {
    max-height: 90vh;
    overflow-y:auto;
    overflow-x:hidden;
}
.instagram-close {
    position: absolute;
    padding: 5px;
    background:rgba(255,255,255,0.5);
    top: 0px;
    right:0px;
    z-index: 1;
}
.instagram-close a {
    text-shadow: -0px -1px 0px #fff;
    color: #666;
}
@media (max-width: 34em) { /* < 544 */
    .instagram-wrapper {
        width:90%;
    }
}

.blog_entry_short {
    padding:15px;
    border-top:1px solid #eee;
}

.blog_entry_short:hover {
    background:#eee;
}

.stoerer {
    background:url('../images/bg-stoerer-orange.png') repeat-x;
    background-size: auto 50%;
    background-position: bottom left;
}
.stoerer.blau {
    background-image:url('../images/bg-stoerer-blau.png');
}
.stoerer.gruen {
    background-image:url('../images/bg-stoerer-gruen.png');
}
.stoerer div h2 {
    position: absolute;
    bottom:10%;
    color:#fff;
}
@media (max-width: 34em) {
    .stoerer {
        background-size: auto 60%;
    }
}
@media (min-width: 34em) {
    .stoerer div a {
        position: absolute;
        right:15px;
        bottom:6%;
    }
}

#profile {
    padding: 0 0 10px;
    background:#fff;
    top: 0;
    position: fixed;
    width: 100%;
    z-index: 999;
}

#profile .logo {
    top: 0px;
}

#profile .dropdown-wrapper {
    display: inline-block;
    position: relative;
}

#profile .dropdown-wrapper a {
    padding: 15px 0 20px 20px;
    display: inline-block;
    text-align:right;
}

.nav > li > a {
    position: relative;
    display: block;
    padding: 10px 15px;
}
#sidebar .nav-shop a {
    color: #444;
    font-size: 1.1em;
    padding: 15px 10px;
    white-space: nowrap;
}

#shopnav {
    box-shadow: 0 2px 4px -2px #000;
    max-height: 100vh;
    background: #fff !important;
    position: fixed;
    border-top: 1px solid #ddd;
    top: 85px;
}

#products-filter .custom-control {
    margin-left:10px;
}


#products-list .product:hover {
    background:#fafafa;
    box-shadow: 0 2px 4px -2px rgba(0,0,0,0.7);
}

#products-list a {
    color:#444;
}

#products-list .price {
    font-size:1.3em;
    font-weight: bold;
    color:#056990;
    margin-bottom:0.5rem;
}

#product-details .price {
    font-size:1.8em;
    font-weight: bold;
    color:#056990;
    margin-bottom:0.5rem;
}

.product-images .image-wrapper {
    width: 100%;
    max-width: 500px;
    margin: 0 auto 1rem;
}
.product-images .img-thumbnail {
    margin: 0 0.25rem;
}
.product-images .img-thumbnail.active {
    box-shadow: 0 0 4px 0px #009e30;
}

.bootstrap-select .btn-light {
    border: 1px solid rgba(11, 160, 218, 0.5);
    background:#fff;
}
.input-group .bootstrap-select.form-control {
    background:transparent !important;
}
.input-group .bootstrap-select.form-control .dropdown-toggle {
    border-radius: 50px !important;
}

.set-color .filter-option-inner-inner::before {
    content: "Farbe: ";
    color:#056990;
    font-weight: bold;
}

.set-num .filter-option-inner-inner::before {
    content: "Anzahl: ";
    color:#056990;
    font-weight: bold;
}

.input-group>.custom-select:not(:last-child), .input-group>.form-control:not(:last-child) {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem;
}
.bootstrap-select .dropdown-toggle:focus {
    outline:none !important;
}
.custom-control-input:checked~.custom-control-label::before {
    color: #000;
    background-color: #009e30 !important;
    border-color: #009e30 !important;
}
.custom-control-input.disabled:checked~.custom-control-label::before {
    color: #000;
    background-color: #888 !important;
    border-color: #009e30 !important;
}
.custom-control-input.disabled:checked~.custom-control-label::after {
    background-color:#bbb;
}
.nav-pills .nav-link {
    border-radius: .25rem 0.25rem 0 0;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    color: #000;
    background-color: #009e30;
}
.list-group-item.active {
    color: #009e30;
    background:#fafafa;
    border-color: rgba(0,0,0,.125);
    font-weight:bold;
}
.border-dark {
    border-color: #222!important;
}

.bg-light {
    color: #343a40 !important;
}
.bg-dark {
    background:#161616 !important;
}

img.emojione {
    width:20px;
}
.sidebar-sticky{
    will-change: min-height;
}

.sidebar__inner{
    transform: translate(0, 0); /* For browsers don't support translate3d. */
    transform: translate3d(0, 0, 0);
    will-change: position, transform;
}

html {
    position: relative;
    min-height: 100%;
    font-size: 15px;
}

h1, .h1 {
    font-size:1.7em;
    text-align: left; 
    align-items: left;
}

h2 { font-size:1.5em; }
h3 { font-size:1.3em; }
h4 { font-size:1.2em; }
h5 { font-size:1.1em; }

.footer {
    width: 100%;
    margin-top:30px;
    padding: 15px 0;
    color:rgba(255,255,255,0.9);
    background: #225f2b;
}
.footer a { color:#b6c1b1; }
.footer a:hover { color:#fff; }

.footer h2,
.footer h3,
.footer h4 {
    color:#fff;
}
.footerlinks {
    padding:0;
    list-style-type: none;
}

.footer p {
    margin: 5px 0;
}
.footerlinks a {
    display:block;
    padding: 5px 0;
}

.bs {
    display: none;
}

hr {
    border-top: 1px solid rgba(0,0,0,0.2);
    margin: 2rem 0;
}

body,
.btn {
    font-size: 1.1rem;
}

body {
    background: #fff;
    color: #444;
    font-family: 'Roboto Condensed', 'Helvetica', sans-serif !important;
    margin: 127px 0 0 !important;
    transition: background 0.5s linear;
    width:100%;
    overflow-x:hidden;
}

.fullwidth {
    width: 100%;
    padding: 0 15px;
}

.no-arrow::after { display:none; }
.dropdown-toggle {
    cursor: pointer;
}

a {
    color: #009e30;
}

a:hover {
    color: #0a5a1d;
}

p { margin-bottom:0.5rem; }

#profile a,
#shopnav a {
    color:#444;
}

#profile a {
    font-size: 0.9rem;
}

#profile a:hover,
#shopnav a:hover,
#shopnav .active a {
    color:#009e30;
}

#cart-topmenu a {
    color:#79ba1d;
}
.screen_grafik {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 340px;
    width: 100%;
    padding-right: 30px;
}
.text-secondary {
    font-size: 0.9rem;
}

.raised {
    box-shadow: 0 2px 4px -2px rgba(0,0,0,0.7);
}

.raised2 {
    box-shadow: 0 3px 6px -2px rgba(0,0,0,0.8);
}

.raised3 {
    box-shadow: 0 7px 30px -3px rgba(0,0,0,0.9);
}

.btn.raised:hover,
.btn.raised2:hover {
        box-shadow: none !important;
}
.btn-outline-info:hover { border-color:#fff;}
.btn-outline-danger { color:#888;}
.btn-outline-danger:hover { color:#dc3545; background: none; border-color:rgba(0,0,0,.1);}

.btn-group-sm>.btn, .btn-sm {
    padding: .10rem .25rem;
    line-height: 1.3;
    border-radius: 50px;
}

.form-submit {
    text-align: right;
}

.form-control {
    color: #1e2935;
    background: #f4f9f2;
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid #83cb92;
}

.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus {
    -webkit-text-fill-color: #009e30;
    -webkit-box-shadow: 0 0 0px 1000px #009e3014 inset;
    transition: background-color 5000s ease-in-out 0s;
    border: 0;
    border-bottom: 1px solid #009e30;
}

.form-control:focus {
    background: #e8f3e4;
    color:#033346;
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid #009e30;
    box-shadow: none !important;
}

.navbar-white {
    background:#fff;
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(12, 158, 218, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.navbar-toggler:focus, .navbar-toggler:hover {
    text-decoration: none;
    outline: none;
}

.btn {
    min-width: 1.2rem;
    text-transform: none;
    border-radius:50px;
    border-width:3px;
}

.btn-group-xs>.btn,
.btn-xs {
    padding: .5rem .5rem;
    font-size: .675rem;
    line-height: .5;
    border-radius: .2rem;
}

.fixed-bottom .btn {
    border-radius: 0 !important;
    border-left: 1px solid #fff2 !important;
    border-right: 1px solid #000a !important;
    text-transform: none;
    background: #20303e;
    margin-left: 0 !important;
}

.fixed-bottom .btn:first-child {
    border-left: 0 !important;
}

.fixed-bottom .btn:last-child {
    border-right: 0 !important;
}

.fixed-bottom .btn i {
    margin-bottom: 5px;
}

.btn-bordered {
    border: 1px solid #ccc;
}

.alert {
    /* position: absolute; */
    width: 100%;
    padding: 1rem 1.25rem;
    border-radius: 0;
    z-index: 1;
}

.alert .container {
    position: relative;
}
.alert .close {
    position: absolute;
    top: 15px;
    right: 15px;
}

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

ul.nav-pills.nav-fill {
    margin: 0 auto 30px;
    background:#fff;
    border-bottom:3px solid #009e30;
}
@media (max-width: 34em) {
    .checkout-bubble {
        padding-top:5px;
        width:70px;
        height:70px;
        font-size:1em;
    }
}

.hidden {
    display: none;
}

.flashalert {
    position: fixed;
    width: 100vw;
    z-index: 1;
}

/** MODAL LEFT / RIGHT **/

.modal.left .modal-dialog {
    position: fixed;
    margin: auto;
    width: 320px;
    height: 100%;
    -webkit-transform: translate3d(0%, 0, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
}

.modal.left.fade .modal-dialog {
    left: -320px;
    -webkit-transition: opacity 0.3s linear, left 0.3s ease-out;
    -moz-transition: opacity 0.3s linear, left 0.3s ease-out;
    -o-transition: opacity 0.3s linear, left 0.3s ease-out;
    transition: opacity 0.3s linear, left 0.3s ease-out;
}

.modal.left.fade.show .modal-dialog {
    left: 0;
}

.popover {
    box-shadow: 2px 2px 12px 1px rgba(0, 0, 0, 0.7)
}

.popover-header {
    color: #000b;
    background: #f4f4d0;
}

.popover-body {
    color: #000b;
    background: #f8f8ed;
}

.modal-content {
    border-radius: 1rem;
}
.modal-header {
    border-top-left-radius: 0.87rem;
    border-top-right-radius: 0.87rem;
}
.modal.right .modal-dialog {
    position: fixed;
    margin: auto;
    right: 0;
    width: 500px;
    height: 100%;
    -webkit-transform: translate3d(0%, 0, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0);
}

.modal.right.fade .modal-dialog {
    right: -320px;
    -webkit-transition: opacity 0.3s linear, right 0.3s ease-out;
    -moz-transition: opacity 0.3s linear, right 0.3s ease-out;
    -o-transition: opacity 0.3s linear, right 0.3s ease-out;
    transition: opacity 0.3s linear, right 0.3s ease-out;
}

.modal.right.fade.show .modal-dialog {
    right: 0;
}

.modal.left .modal-content,
.modal.right .modal-content {
    height: 100%;
    overflow-y: auto;
    margin-top: 0;
    border-radius: 0;
    border: 0;
}

.modal.left .modal-header,
.modal.right .modal-header {
    background: #20303322;
    box-shadow: 0 0 1px 3px #0008;
    border-radius: 0;
}

.modal.left .modal-body,
.modal.right .modal-body {
    padding: 15px 15px 80px;
}

.tracker-card {
    border: 0;
}

.btn-group {
    margin: 0;
}

.btn-group .btn {
    margin: 0;
}

.fixed-top .navbar-brand,
.fixed-bottom .btn {
    color: #fff !important;
}

.subproject:last-child {
    margin-bottom: 0 !important;
}

input::placeholder,
div::placeholder,
textarea::placeholder {
    /* Chrome/Opera/Safari */
    color: #888 !important;
}

input::-webkit-input-placeholder,
div::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #888 !important;
}

input::-moz-placeholder,
div::-moz-placeholder,
textarea::-moz-placeholder {
    /* Firefox 19+ */
    color: #888 !important;
}

input::-ms-input-placeholder,
div::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    /* IE 10+ */
    color: #888 !important;
}

input::-moz-placeholder,
div::-moz-placeholder,
textarea::-moz-placeholder {
    /* Firefox 18- */
    color: #888 !important;
}

.input-group-text {
    background:none;
    border-radius:0;
    border-width: 0;
    font-weight:bold;
}

.columns {
    column-width: 500px;
    column-gap: 2em;
}

.card>.list-group:first-child .list-group-item:first-child {
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}
.card>.list-group:last-child .list-group-item:last-child {
    border-bottom-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
}

main ul {
    padding-inline-start: 20px;
}

#profile .berater {
    padding: 15px 0 0 15px;
    font-size: 1.5em;
    display: inline-block;
}
/** ENDE MODAL LEFT / RIGHT **/

.dropzone {
    border: 2px dashed #009e30 !important;
    background: #eef8f1 !important;
}

@media (max-width: 34em) { /* < 544 */
    html {
        font-size: 18px;
    }
    .card-columns {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
    }
    .hidden-xs {
        display: none;
    }
    .modal.right .modal-dialog {
        width: 100% !important;
    }
    nav .container {
        padding: 0;
    }
    .nav { display:block; text-align:left; }
    #content { 
        padding:0px !important; 
    }
    #shopnav {
        top: 0px;
        padding-bottom:0;
    }
    body { margin-top:60px !important; }
    #header-image {
        height: 300px;
    }
    #sidebar .nav-shop a { padding: 10px 5px; }
    .navbar { padding:0.1rem 1rem; }
    .navbar-toggler-sm { padding: .35rem .35rem; }
    .navbar-brand span {
        padding: 10px 0 0 10px;
        display: inline-block;
    }
}

@media (min-width: 34em) { /* 544 */
    #profile .logo {
        height: 75px;
        margin-top: 5px;
    }
   .card-columns {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
    }
    .only-xs { display:none !important; }
    .nav { display:flex; text-align:center; }
    #sidebar .nav-shop a {
        font-size: 1em;
        padding: 10px 30px 10px 0px;
    }
    #sidebar .nav-shop .dropdown-menu a {
        font-size: 1em;
        padding: 10px 15px;
    }
    .visible-xs {
        display:none;
    }
}

@media (min-width: 34em) AND (max-width: 48em) { /* 544 - 768 */
    .visible-sm {
        display: none;
    }
    #header-image {
        height: 400px;
    }
}


@media (min-width: 48em) { /* 768 */
    .card-columns {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
    .fuenf {
        width:20%;
        padding: 0 15px;
    }
}

@media (min-width: 62em) { /* 992 */
    .card-columns {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3;
    }
}

@media (min-width: 75em) { /* 1200 */
    .card-columns {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3;
    }
}

@media (max-width: 75em) {
    .container {
        width: 100%;
        max-width: 100%;
    }
}




.masonry
{
    width: 100%;
    overflow: hidden;
    -webkit-column-count: 3;
    -webkit-column-gap: 1.875em; /* 30px */
    -webkit-column-fill: auto;
    -moz-column-count: 3;
    -moz-column-gap: 1.875em; /* 30px */
    -moz-column-fill: auto;
    column-count: 3;
    column-gap: 0.1em; /* 30px */
    column-fill: auto;
}
.masonry .media
{
    margin-bottom:0.2em;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
}
 
@media only screen and ( max-width: 48em ) /* 640px */
{
    .masonry
    {
        -webkit-column-count: 2;
        -webkit-column-gap: 0.938em; /* 15px */
        -moz-column-count: 2;
        -moz-column-gap: 0.938em; /* 15px */
        column-count: 2;
        column-gap: 0.938em; /* 15px */
    }
}
@media only screen and ( max-width: 34em ) /* 320px */
{
    #list
    {
        -webkit-column-count: auto;
        -moz-column-count: auto;
        column-count: auto;
    }
}

