.position-top {
    top: 0;
}

.position-bottom {
    bottom: 0;
}

.position-left {
    left: 0;
}

.position-right {
    right: 0;
}

.first-letter-captital {
    text-transform: lowercase;
    display: block;
}

.first-letter-captital:first-letter {
    text-transform: uppercase;
}

.checkout main {
    margin-top: 0;
}

.checkout header {
    margin-bottom: 0;
}


/*.navbar-light .navbar-nav .megamenu .nav-link {
    padding-right: 12px;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    font-weight: bold;
    color: #2d3142;
}

header .navbar .nav-menu-title {
    font-size: 1rem;
    font-weight: bold;
    color: #2d3142;
}

header .navbar .nav-menu-group {
    height: calc(100% - 40px);
}

header .navbar .nav-menu-group a:hover {
    text-decoration: underline;
}

header .navbar .nav-menu-links {
    border-left: 1px solid #a9d2e6;
    margin-left: 1px;
    height: inherit;
}

header .navbar .nav-menu-links .nav-link {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding-right: 0px;
}

header .navbar .nav-menu-links .nav-link::after {
    content: "\f105";
    font-family: "Font Awesome 5 Pro";
    display: inline-block;
    padding-right: 0;
    padding-left: 6px;
    vertical-align: middle;
    font-weight: 900;
    color: #cdd5db;
}

.navbar-light .navbar-nav .nav-link.dropdown-toggle::after {
    rotate: -90deg;
}

.navbar-light .navbar-nav .nav-link.show.dropdown-toggle::after,
.navbar-light .navbar-nav .nav-link.show.dropdown-toggle::after {
    rotate: 0deg;
}

.nav-group-menu-calltoaction {
    background-color: #fff;
}

@media (min-width: 1200px) {

    header .navbar .megamenu {
        background-color: #fff;
    }

    header .navbar .megamenu .container {
        background-color: #fff;
    }

    header .navbar .nav-menu-group .nav-menu-title {
        border-bottom: 1px solid #c2c3c4;
        display: block;
    }

    header .navbar .nav-menu-group {
        height: calc(100% - 46px);
    }

    header .navbar .nav-menu-links {
        border-left: 0 solid transparent;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-flex-wrap: inherit;
        flex-wrap: wrap;
    }

    header .navbar .nav-menu-links.row-column {
        -webkit-flex-direction: inherit;
        flex-direction: unset;
    }

    header .navbar .nav-menu-links.row-row {
        -webkit-flex-direction: row;
        flex-direction: row;
    }

    header .navbar .col-12.col-md-6.col-lg-6.px-xl-0+.col-12.col-md-6.col-lg-6.px-xl-0 .nav-menu-links {
        border-left: 1px solid #c2c3c4 !important;
    }

    .navbar-light .navbar-nav .megamenu .nav-link {
        padding-right: 0;
    }

    .navbar-light .navbar-nav .megamenu .nav-link:hover {
        color: #ea008e;
        text-decoration: underline !important;
        text-decoration-color: #ea008e !important;
    }

    .navbar-light .navbar-nav .nav-link:hover {
        font-weight: normal;
    }

    .navbar-light .navbar-nav .nav-link:focus {
        font-weight: bold;
    }

    .navbar-light .navbar-nav .nav-link.dropdown-toggle::after {
        rotate: 0deg;
    }

    .navbar-light .navbar-nav .nav-link.show.dropdown-toggle::after,
    .navbar-light .navbar-nav .nav-link.show.dropdown-toggle::after {
        rotate: 180deg;
    }

    header .navbar .nav-menu-links .nav-link::after {
        content: "";
    }

    .nav-group-menu-calltoaction {
        border-top: 1px solid #c2c3c4;
    }

    .nav-group-menu-calltoaction h2 {
        font-size: 1.6rem;
    }
}

@media (max-width: 1199px) {
    .navbar:has(.navbar-collapse.show) {
        position: fixed;
        background-color: #fff;
        height: 100%;
        width: 100%;
        display: block;
        z-index: 100;
        overflow-y: auto;
        top: 0;
    }

    .navbar .container:has(.navbar-collapse.show) {
        position: fixed !important;
        width: 100%;
        height: 100% !important;
        display: block !important;
        background-color: #fff;
        overflow-y: auto;
        padding-top: 48px;
        z-index: 3000;
    }

    .navbar .container:has(.navbar-collapse.show) .navbar-brand {
        display: inline-block;
        left: 50%;
        position: relative;
        margin-left: -126px !important;
        padding-top: 4px !important;
    }

    .navbar .container:has(.navbar-collapse.show) .header-tools {
        top: 56px !important;
    }
}*/

.z-index-1 {
    z-index: 1;
}

.z-index-100 {
    z-index: 100;
}

.rounded-10 {
    border-radius: 1rem;
}

.feature:last-of-type {
    margin-bottom: 3.75rem;
}

.feature-image {
    max-width: inherit !important;
    display: flex !important;
    -webkit-justify-content: center !important;
    justify-content: center !important;
}

@media (min-width: 1200px) {
    .feature-image {
        max-width: 50% !important;
        width: 50% !important;
        -webkit-flex: 1 0 50% !important;
        flex: 1 0 50% !important;
    }
}

.full-width {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

@media (min-width: 376px) {
    .full-width {
        width: 97.7vw;
    }
}

@media (min-width: 500px) {
    .full-width {
        width: 98.5vw;
    }
}

@media (min-width: 770px) {
    .full-width {
        width: 98.9vw;
    }
}

@media (min-width: 992px) {
    .full-width {
        width: 99.2vw;
    }
}

@media (min-width: 1600px) {
    .full-width {
        width: 99.5vw;
    }
}



.cursor-pointer {
    cursor: pointer;
}

.btn:disabled {
    opacity: 0.35;
}

.btn-attribute.selected {
    background: #EA008E;
    color: #fff;
}

.guiForm_Element_Text,
.guiForm_Element_Password,
.guiForm_Element_Date_Day,
.guiForm_Element_Date_Month,
.guiForm_Element_Date_Year,
.guiForm_Element_Select {
    display: block;
    width: 100%;
    padding: 0.25rem 0.25rem;
    font-size: 1.063rem;
    font-weight: 400;
    line-height: 1.5;
    color: #2D3142;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    margin: 0;
}

@media (min-width: 992px) {

    .guiForm_Element_Text,
    .guiForm_Element_Password,
    .guiForm_Element_Date_Day,
    .guiForm_Element_Date_Month,
    .guiForm_Element_Date_Year,
    .guiForm_Element_Select {
        padding: 0.75rem 0.75rem;
    }
}

.guiForm_Element_Date_Day {
    width: 72px;
}

.guiForm_Element_Date_Month {
    width: 72px;
}

.guiForm_Element_Date_Year {
    width: 92px;
}

.guiForm_Element_Date_Day.is-valid,
.guiForm_Element_Date_Month.is-valid,
.guiForm_Element_Date_Year.is-valid {
    border-color: #198754;
}

.guiForm_Element_Date_Day.is-invalid,
.guiForm_Element_Date_Month.is-invalid,
.guiForm_Element_Date_Year.is-invalid,
.guiForm_Div_Date_Error input {
    border-color: #dc3545;
}

.guiForm_Element_Date_select,
.guiForm_Element_Select {
    padding: 0.25rem 1.25rem 0.25rem 0.75rem;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}

@media (min-width: 992px) {

    .guiForm_Element_Text,
    .guiForm_Element_Password,
    .guiForm_Element_Date_select,
    .guiForm_Element_Select {
        padding: 0.75rem 1.25rem 0.75rem 0.75rem;
    }
}

::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #dedede;
    opacity: 1;
    /* Firefox */
}

::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #dedede;
}

.overlay_guiWindow {
    overflow-x: hidden;
    overflow-y: auto;
    opacity: 1 !important;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    outline: 0;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background-color: rgba(0, 0, 0, 0.2) !important;
    z-index: 1001 !important;
    -webkit-filter: inherit !important;
    -moz-filter: inherit !important;
    -o-filter: inherit !important;
    filter: inherit !important;
}

.guiWindow_close {
    background: url(../images/Template/close.png) center center no-repeat;
    width: 21px;
    height: 21px;
    float: right;
    display: block;
    cursor: pointer;
}

.guiWindow_title.title_window {
    font-weight: bold;
}

.guiWindow_content {
    font-size: 1rem !important;
}

#webshopLightServicePointWindow_row1 {
    display: none;
}

#webshopLightServicePointWindow_row2 {
    width: 100%;
}

#webshopLightServicePointWindow_row2 .guiWindow_e,
#webshopLightServicePointWindow_row2 .guiWindow_w,
#webshopLightServicePointWindow_row3 {
    display: none;
}

#webshopLightServicePointWindow_close {
    width: 21px;
    height: 21px;
    display: block;
    float: right;
    position: relative;
    cursor: pointer;
    top: 0 !important;
    right: 0 !important;
    background-image: none;
}

@media (min-width: 992px) {
    #webshopLightServicePointWindow_close {
        top: inherit !important;
        right: inherit !important;
    }
}

#webshopLightServicePointWindow_close:before {
    content: "\f00d";
    /* this is your text. You can also use UTF-8 character codes as I do here */
    font-family: "Font Awesome 5 Pro";
    left: 4px;
    position: absolute;
    top: -2px;
}

#webshopLightServicePointWindow {
    height: inherit !important;
    width: 100% !important;
    top: 20% !important;
    position: fixed;
    z-index: 1002 !important;
    background-color: #fff;
    padding: 12px;
    border-radius: 12px;
}

#webshopLightServicePointWindow_content {
    width: 100% !important;
    overflow-y: auto;
}

@media (max-width: 992px) {
    #webshopLightServicePointWindow {
        top: 21px !important;
    }

    #webshopLightServicePointWindow {
        left: 0 !important;
        margin: 5% !important;
        width: 90% !important;
    }

    #webshopLightServicePointWindow_content {
        height: 521px !important;
    }
}

@media (min-width: 992px) {
    #webshopLightServicePointWindow {
        max-width: 721px;
    }

    #webshopLightServicePointWindow_content {
        height: 321px !important;
    }
}

.checkout .modal {
    position: inherit !important;
    top: inherit !important;
    left: inherit !important;
}

.guiForm_Element_Radio_Item_Text {
    padding-left: 3px;
}

/* change radio to checkbox shippingaddres*/
#shipping_address_3,
#shipping_address_1,
#shipping_address_0 {
    display: none;
}

#guiForm_Element_Radio_Item_shipping_address_0 label::before,
#guiForm_Element_Radio_Item_shipping_address_1 label::before,
#guiForm_Element_Radio_Item_shipping_address_3 label::before {
    border: 1px solid #6c757d;
    width: 17px;
    height: 17px;
    margin-right: 6px;
    border-radius: 2px;
    color: #fff;
    display: inline-block;
    font-weight: bold;
    font-size: 16px;
    line-height: 16px;
    text-align: center;
}

#guiForm_Element_Radio_Item_shipping_address_0 label::before,
#guiForm_Element_Radio_Item_shipping_address_1 label::before,
#guiForm_Element_Radio_Item_shipping_address_3 label::before {
    content: '\2713';
}

#guiForm_Element_Radio_Item_shipping_address_0.active label::before {
    content: '\2713';
    border: 1px solid #5bc5f2;
    background-color: #5bc5f2;
}

#guiForm_Element_Radio_Item_shipping_address_3.active label::before {
    content: '\2713';
    border: 1px solid #5bc5f2;
    background-color: #5bc5f2;
}

.guiForm_Error_Ul {
    color: red;
}

.guiForm_Element_Text_Error,
.guiForm_Element_Textarea_Error,
.guiForm_Element_Date_select_Error {
    border-color: #dc3545;
    padding-right: calc(1.5em + 0.75rem);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

#guiForm_Element_Radio_Container_order_payment_method_id table {
    width: 100%;
}

#guiForm_Element_Radio_Container_order_payment_method_id table td:first-child {
    display: none;
}

#guiForm_Element_Radio_Container_order_payment_method_id label {
    width: 100%;
}

.payment_container .guiForm_Element_Radio {
    border: 1px solid #cdd5db;
    max-width: 360px;
    margin-bottom: 12px;
    box-shadow: 0px 0px 0px 2px transparent inset;
}

.payment_container .guiForm_Element_Radio.active {
    border: 1px solid #EA008E;
    box-shadow: 0px 0px 0px 2px #EA008E inset;
}

.payment_container .guiForm_Element_Radio .shipping-price-label {
    top: 0;
    right: 0;
}

.payment_container .guiForm_Element_Radio.active .shipping-price-label {
    top: 2px;
    right: 2px;
}

.guiForm_Div_Date {
    display: flex;
    align-items: start;
    align-content: space-between;
}

.guiForm_Date_day_devider_container,
.guiForm_Date_month_devider_container {
    padding: 0.5rem;
}

.guiForm_Element_Date_Year {
    min-width: 68px;
}

/*== start of code for tooltips ==*/
.tool,
.tool-tip {
    cursor: help !important;
    position: relative;
    width: 21px;
    height: 21px;
    display: inline-block;
    font-size: 14px;
    text-align: center;
    top: 0;
    background-color: #fff;
}


/*== common styles for both parts of tool tip ==*/
.tool::before,
.tool::after {
    left: 50%;
    opacity: 0;
    position: absolute;
    z-index: -100;
}

.tool:hover::before,
.tool:focus::before,
.tool:hover::after,
.tool:focus::after {
    opacity: 1;
    transform: scale(1) translateY(0);
    z-index: 100;
}


.test-questions-block {
    padding-top: 26px;
}

footer.footer .logo {
    margin-top: -186px;
}

.footer.footer .svg-inline--fa {
    width: 32px;
}

/*== pointer tip ==*/
.tool::before {
    border-style: solid;
    border-width: 1em 0.75em 0 0.75em;
    border-color: #3E474F transparent transparent transparent;
    bottom: 26px;
    content: "";
    margin-left: -0.5em;
    transition: all .65s cubic-bezier(.84, -0.18, .31, 1.26), opacity .65s .5s;
    transform: scale(.6) translateY(-90%);
}

.tool:hover::before,
.tool:focus::before {
    transition: all .65s cubic-bezier(.84, -0.18, .31, 1.26) .2s;
}


/*== speech bubble ==*/
.tool::after {
    background: #3E474F;
    border-radius: .25em;
    bottom: 180%;
    color: #EDEFF0;
    content: attr(data-tip);
    margin-left: -8.75em;
    padding: 1em;
    transition: all .65s cubic-bezier(.84, -0.18, .31, 1.26) .2s;
    transform: scale(.6) translateY(50%);
    width: 17.5em;
}

.tool:hover::after,
.tool:focus::after {
    transition: all .65s cubic-bezier(.84, -0.18, .31, 1.26);
}

@media (max-width: 760px) {
    .tool::after {
        font-size: .75em;
        margin-left: -5em;
        width: 10em;
    }
}

.column-count-2 {
    -webkit-column-count: 2;
    /* Chrome, Safari, Opera */
    -moz-column-count: 2;
    /* Firefox */
    column-count: 2;
    -webkit-column-gap: 3em;
    -moz-column-gap: 3em;
    column-gap: 3em;
    break-inside: avoid-column;
}

@media (max-width: 760px) {
    .column-count-2 {
        -webkit-column-count: inherit;
        /* Chrome, Safari, Opera */
        -moz-column-count: inherit;
        /* Firefox */
        column-count: inherit;
    }
}

@media (min-width: 760px) {
    .card-product-image {
        min-height: 336px;
    }
}

.flash-secondary {
    background: linear-gradient(-45deg, transparent 50%, #053C5E 50%);
}

.wrapper-header {
    margin-bottom: 43px;
}

.hero.bg-secondary .hero-header h1,
.hero.bg-secondary .hero-header .lead {
    color: #fff;
}

@media (max-width: 760px) {
    .hero .btn {
        margin-bottom: 0.75rem;
    }
}

.cookie-consent {
    position: fixed;
    bottom: 0px;
    width: 100%;
    height: 236px;
    z-index: 120;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (min-width: 760px) {
    .cookie-consent {
        height: 136px;
    }
}

@media (min-width: 1200px) {
    .cookie-consent {
        height: 86px;
    }
}

.usp-topbar {
    font-size: 0.7rem;
    height: 25px;
    overflow: hidden;
}

/*.swiper-slide {
    float: left;
}

.swiper.testimonials .swiper-slide {
    width: 25%;
}

.lSSlideOuter {
    display: flex;
    flex-direction: column-reverse;
}

.lSSlideOuter .lSPager.lSpg {
    order: 2;
}

.lSSlideWrapper {
    order: 1;
}*/

/*Progressbar webshop */

ol.list-steps {
    padding: 0;
    margin: 0;
    counter-reset: steps;
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
    position: relative;
    margin: 2rem 0;
}

ol.list-steps li {
    list-style: none;
    padding: 0;
    margin: 0;
    display: -webkit-box;
    /* OLD - iOS 6-, Safari 3.1-6, BB7 */
    display: -ms-flexbox;
    /* TWEENER - IE 10 */
    display: -webkit-flex;
    /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
    display: flex;
    /* NEW, Spec - Firefox, Chrome, Opera */
    flex-direction: column;
    align-items: center;
    position: relative;
    color: #6c757d;
    flex: 1 0 0;
}

ol.list-steps li.active {
    color: #212529;
    font-weight: bold;
}

ol.list-steps li::before {
    counter-increment: steps;
    content: "";
    display: inline-block;
    background: #def3fc;
    color: #fff;
    border-radius: 50%;
    border: 0.2rem solid #def3fc;
    ;
    width: 2rem;
    height: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0.5rem;
}

ol.list-steps li.active::before {
    background: #EA008E;
    color: #fff;
    border: 0.2rem solid #053C5E;
    -webkit-animation: pulsate 1.5s infinite ease-in-out alternate;
    animation: pulsate 1.5s infinite ease-in-out alternate;
}

ol.list-steps li.done::before {
    background: #11c30a;
    color: #fff;
    border: 0.2rem solid #053C5E;
    content: "\f00c";
    font-family: "Font Awesome 5 Pro";
}

ol.list-steps li::after {
    position: absolute;
    z-index: -1;
    top: 0.90rem;
    display: block;
    content: "";
    width: 100%;
    height: 0.2rem;
    background: #def3fc;
    ;
}

ol.list-steps li.active::after {
    background: #053C5E;
}

ol.list-steps li.done::after {
    background: #053C5E;
}

ol.list-steps li:first-child::after {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

ol.list-steps li:last-child::after {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

@-webkit-keyframes pulsate {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.2);
    }
}

@keyframes pulsate {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.2);
    }
}


.bannerheader .swiper-wrapper {
    padding-bottom: 0;
}

.bannerheader .swiper-slide {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.bannerheader .swiper-slide,
.header-banner .bg-primary {
    letter-spacing: 1px;
}

.bannerheader .swiper-slide {
    min-height: 182px;
}

@media (min-width: 760px) {
    .bannerheader .swiper-slide {
        min-height: inherit;
    }
}

.bannerheaderwider .swiper-slide {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 376px;
}

.bannerheaderwider .lslide.active {
    display: block !important;
}

@media (max-width: 760px) {
    .bannerheaderwider .swiper-slide {
        background-image: none !important;
    }

    .bannerheaderwider .btn {
        width: 100%;
    }

    .bannerheaderwider img {
        width: 100%;
        border-top-left-radius: 0;
        border-bottom-right-radius: 0;
    }
}

@media (min-width: 760px) {
    .bannerheaderwider .swiper-slide {
        min-height: 546px;
    }
}

/*switch */
.switch {
    display: inline-block;
    height: 24px;
    position: relative;
    width: 40px;
}

.switch input {
    display: none;
}

.slider {
    background-color: #ccc;
    bottom: 0;
    cursor: pointer;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: .4s;
}

.slider:before {
    background-color: #fff;
    bottom: 4px;
    content: "";
    height: 16px;
    left: 4px;
    position: absolute;
    transition: .4s;
    width: 16px;
}

input:checked+.slider {
    background-color: #053C5E;
}

input:checked+.slider:before {
    transform: translateX(16px);
}

.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}


#id_work_days {
    height: 44px;
    border: none;
    overflow: hidden;
}

#id_work_days::-moz-focus-inner {
    border: 0;
}

#id_work_days:focus {
    outline: none;
}

#id_work_days option {
    width: 60px;
    font-size: 1.2em;
    padding: 10px 0;
    text-align: center;
    margin-right: 20px;
    display: inline-block;
    cursor: pointer;
    border: rgb(204, 204, 0) solid 1px;
    border-radius: 5px;
    color: rgb(204, 204, 0);
}

.product_image_call_to_action {
    right: 12px;
    top: 012px;
    width: 86px;
    height: 86px;
    font-size: 0.7em;
    font-weight: 700;
    color: #fff;
    rotate: 8deg;
}

.price-element.loading {
    color: transparent;
    text-shadow: 0px 0px 3px #000;
    -webkit-animation: fadein 2s infinite;
    animation: fadein 2s infinite;
}

@keyframes fadein {
    0% {
        opacity: 0.3;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 0.3;
    }
}

#testModal {
    background: rgba(0, 0, 0, .3)
}

.modal.show {
    display: block;
}

input[type=checkbox].is-invalid,
input[type=radio].is-invalid {
    -moz-box-shadow: 0 0 2px #dc3545;
    -webkit-box-shadow: 0 0 2px #dc3545;
    outline: 2px solid white;
    box-shadow: 0px 0px 0px 3px #dc3545;
}


.guiForm_Element_Radio_Container~.invalid-feedback {
    display: block;
}

@media (max-width: 760px) {
    .btn.btn-full-width {
        width: 100%;
    }
}