/*
Theme Name:   KontrolaSanepidu
Description:  
Template:     twentytwentyfour
Version:      1.0.0
Text Domain:  kontrolasanepidu
*/

html {
    scroll-behavior: smooth;
}

*[id] {
    scroll-margin-top: 150px;
}

.schowanko {
    left: -9999px;
    position: absolute;
}

/* CF7 improvements */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
    font-size: 110%;
    padding: 8px 12px;
    width: 100%;
}

.wpcf7 .wpcf7-submit {
    background-color: var(--wp--preset--color--custom-primary-color);
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    font-size: 120%;
    font-weight: bold;
    margin: 0 auto;
    padding: 10px 20px;
}

.wpcf7 .wpcf7-submit:active,
.wpcf7 .wpcf7-submit:focus,
.wpcf7 .wpcf7-submit:hover {
    background-color: var(--wp--preset--color--custom-base-color);
    border: 2px solid var(--wp--preset--color--custom-base-color);
    color: #fff;
}

.wpcf7-list-item {
    margin-left: 0;
}

/* ToC */
.kuznia-toc-wrapper {
    background: var(--wp--preset--color--base);
    border-radius: 20px;
    padding: 20px;
}

.kuznia-toc-wrapper strong {
    display: block;
    font-size: 125%;
    text-align: center;
}

.kuznia-toc,
.kuznia-toc ol {
    list-style-type: disc;
    padding-left: 20px;
}

.kuznia-toc li {
    padding: 5px 0;
}

/* Lists */
ul,
ol {
    position: relative;
    z-index: 1;
}

ul.is-style-featured-list,
ol.is-style-featured-list {
    border-left: 2px solid var(--wp--preset--color--custom-primary-color);
    padding-left: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
}

ul[class*="is-style-"] li,
ol[class*="is-style-"] li {
    margin-top: var(--wp--preset--spacing--10);
}

ul[class*="is-style-"] li:first-child,
ol[class*="is-style-"] li:first-child {
    margin-top: 0;
}

ul.is-style-list-checkboxes,
ol.is-style-list-checkboxes,
ul.is-style-list-arrows,
ol.is-style-list-arrows {
    list-style-type: none;
    padding-left: 0;
}

ul.is-style-list-checkboxes li,
ol.is-style-list-checkboxes li,
ul.is-style-list-arrows li,
ol.is-style-list-arrows li {
    padding-left: 30px;
    padding-right: 15px;
    position: relative;
}

ul.is-style-list-checkboxes li:before,
ol.is-style-list-checkboxes li:before,
ul.is-style-list-arrows li:before,
ol.is-style-list-arrows li:before {
    background-color: #fff;
    background-image: url('./images/svg/checkbox.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    border-radius: 50%;
    content: '';
    height: 20px;
    left: 0;
    position: absolute;
    top: 2px;
    width: 20px;
}

ul.is-style-list-arrows li:before,
ol.is-style-list-arrows li:before {
    background-image: url('./images/svg/arrow.svg');
}

/* Quote */
.wp-block-quote {
    font-family: var(--wp--preset--font-family--body);
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.4;
    margin: 90px auto;
    padding-left: 70px;
    position: relative;
}

.wp-block-quote:after {
    background-image: url('./images/svg/quote.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
    display: block;
    height: 31px;
    position: absolute;
    left: 0;
    top: 12px;
    width: 41px;
    z-index: 0;
}

.wp-block-quote p {
    margin: 0 0 5px 0;
    position: relative;
    z-index: 1;
}

.wp-block-quote cite {
    font-weight: 400;
    font-size: 16px;
    font-style: normal;
    line-height: 1.6;
}

.wp-block-quote cite strong {
    font-weight: 600;
}

@media screen and (max-width: 1024px) {
    .wp-block-quote {
        font-size: 22px;
    }
}

@media screen and (max-width: 720px) {
    .wp-block-quote {
        font-size: 20px;
        padding-left: 70px;
    }
}

@media screen and (max-width: 560px) {
    .wp-block-quote {
        font-size: 18px;
        padding-left: 0;
    }

    .wp-block-quote:after {
        top: -40px
    }
}

/* FAQ */
.faq {
    margin: 100px auto;
}

.faq * {
    box-sizing: border-box;
}

.faq-content {
    align-items: flex-start;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    list-style-type: none;
    margin: 50px -12px;
    padding: 0;
}

.faq-content-item {
    background: var(--wp--preset--color--base);
    border-radius: 8px;
    cursor: pointer;
    margin: 12px 0;
    padding: 30px;
    transition: all 0.4s ease-in-out;
    width: 100%;
}

.faq-content-item:before {
    display: none;
}

.faq-content-item.active .faq-item-question:before {
    background: transparent;
}

.faq-content-item.active:active .faq-item-question:before,
.faq-content-item.active:focus .faq-item-question:before,
.faq-content-item.active:hover .faq-item-question:before {
    background: transparent;
}

.faq-content-item.active:active .faq-item-question:after,
.faq-content-item.active:focus .faq-item-question:after,
.faq-content-item.active:hover .faq-item-question:after {
    background: var(--wp--preset--color--custom-primary-color);
}

.faq-content-item:active .faq-item-question:before,
.faq-content-item:active .faq-item-question:after,
.faq-content-item:focus .faq-item-question:before,
.faq-content-item:focus .faq-item-question:after,
.faq-content-item:hover .faq-item-question:before,
.faq-content-item:hover .faq-item-question:after {
    background: var(--wp--preset--color--custom-primary-color);
}

.faq-item-question {
    display: block;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
    padding: 0;
    padding-right: 30px;
    position: relative;
    text-align: left;
    text-decoration: none;
    width: 100%;
}

.faq-item-question:before {
    background: var(--wp--preset--color--custom-primary-color);
    content: "";
    height: 12px;
    position: absolute;
    right: 11px;
    top: 50%;
    transition: all 0.4s ease-in-out;
    transform: translateY(-50%);
    width: 2px;
}

.faq-item-question:after {
    background: var(--wp--preset--color--custom-primary-color);
    content: "";
    height: 2px;
    position: absolute;
    right: 6px;
    top: 50%;
    transition: all 0.4s ease-in-out;
    transform: translateY(-50%);
    width: 12px;
}

.faq-item-answer {
    font-size: 16px;
    overflow: hidden;
    transition: height 0.5s ease-out;
}

.faq-item-answer>div {
    padding: 20px 0;
}

.faq-item-answer>div:last-child {
    padding-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .faq {
        margin: 60px auto;
    }

    .faq-content {
        margin: 30px -12px;
    }

    .faq-content-item {
        width: 100%;
    }
}

@media screen and (max-width: 560px) {
    .faq {
        margin: 30px auto;
    }

    .faq-content {
        margin: 10px 0;
    }

    .faq-content-item {
        margin: 10px 0;
    }

    .faq-content-item {
        padding: 24px;
    }

    .faq-item-question {
        font-size: 16px;
        font-weight: 600;
    }

    .faq-item-answer {
        font-size: 14px;
    }
}

/* Featured list */
.featured-list {
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    border-radius: 16px;
    margin: 35px 0;
    padding: 30px;
}

.featured-list .featured-list-title {
    margin: 0 0 20px 0!important;
}
    
.featured-list .featured-list-items {
    margin-bottom: 0;
    padding-left: 30px;
}

/* Featured text */
.featured-text {
    align-items: center;
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    margin: 45px 0;
    padding: 40px 48px 40px 48px;
    position: relative;
    z-index: 1;
}

.featured-text.text-center .featured-text-content {
    text-align: center;
}

.featured-text.text-small {
    padding: 20px 24px!important;
}

.featured-text.text-small .featured-text-content {
    font-size: var(--wp--preset--font-size--normal);
}

.featured-text * {
    box-sizing: border-box;
}

.featured-text-emoji {
    align-self: flex-start;
    flex-shrink: 0;
    font-size: 40px;
    line-height: 0.8em;
    margin-right: 35px;
}

.featured-text-content {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
    padding-right: 10px;
    width: 100%;
}

.featured-text-content > strong {
    color: var(--wp--preset--color--custom-primary-color);
}

.featured-text-content small {
    font-size: 18px;
    font-weight: 400;
}

.featured-text .btn {
    flex-shrink: 0;
    margin: 0 0 0 auto;
}

.featured-text[data-layout=button-right] .featured-text-content {
    width: 70%;
}

.featured-text[data-layout=button-right] .btn.btn-secondary {
    align-self: flex-end;
}

.featured-text[data-layout=button-center] .featured-text-content {
    width: 70%;
}

.featured-text[data-layout=button-center] .btn.btn-secondary {
    align-self: center;
}

.featured-text[data-layout=button-bottom] {
    background: var(--wp--preset--color--base);
    border: 2px solid var(--wp--preset--color--base);
    flex-wrap: wrap;
}

.featured-text[data-layout=button-bottom] .featured-text-content {
    line-height: 1.8;
    width: calc(100% - 75px);
}

.featured-text[data-layout=button-bottom] .btn {
    margin: 35px 0 0 0;
}

.featured-text[data-layout=normal] {
    padding: 40px;
}

.featured-text[data-layout=normal] .featured-text-content {
    padding-right: 0;
}

.featured-text.has-emoji .featured-text-content {
    width: calc(100% - 80px);
}

.featured-text.has-emoji[data-layout=button-bottom] .btn {
    margin: 35px 0 0 75px;
    width: calc(100% - 75px);
}

.featured-text .btn {
    background: var(--wp--preset--color--custom-primary-color);
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    font-weight: bold;
    padding: 8px 15px;
    text-align: center;
    text-decoration: none;
}

.featured-text .btn:active,
.featured-text .btn:focus,
.featured-text .btn:hover {
    background: #fff;
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    color: var(--wp--preset--color--custom-primary-color);
}

.blog-post .featured-text-content {
    font-size: 18px;
}

@media screen and (max-width: 1200px) {
    .featured-text {
        padding: 35px 45px;
    }

    .featured-text-content {
        font-size: 22px;
    }
}

@media screen and (max-width: 1024px) {
    .featured-text {
        padding: 30px 40px;
    }

    .featured-text-content {
        font-size: 20px;
    }
}

@media screen and (max-width: 840px) {
    .featured-text {
        flex-wrap: wrap;
    }

    .featured-text[data-layout=button-right] .featured-text-content,
    .featured-text[data-layout=button-bottom] .featured-text-content {
        text-align: center;
        width: 100%;
    }

    .featured-text-content {
        max-width: 100%;
        padding-right: 0;
        width: 100%;
    }

    .featured-text .btn {
        margin: 20px auto 0 auto;
    }
}

@media screen and (max-width: 560px) {
    .featured-text {
        padding: 20px 25px;
    }

    .featured-text[data-layout=normal] {
        padding: 20px;
    }

    .featured-text-content {
        font-weight: 500;
    }

    .featured-text .btn {
        height: auto;
        line-height: 1.4;
        padding: 15px 40px 15px 20px;
        margin: 20px auto 0 auto;
        max-width: 100%;
    }

    .featured-text .btn:after {
        right: 15px;
    }

    .featured-text.has-emoji .featured-text-emoji {
        margin-bottom: 24px;
    }

    .featured-text.has-emoji .featured-text-content {
        font-size: 15px;
        width: 100%;
    }

    .featured-text.has-emoji[data-layout=button-bottom] .btn {
        margin: 35px 0 0 64px;
        width: calc(100% - 64px);
    }
}

@media screen and (max-width: 450px) {
    .featured-text .btn {
        width: 100%;
    }
}

/* Testimonials */
.testimonial {
    margin: 100px auto;
    max-width: 840px;
    position: relative;
    width: 100%;
}

.testimonial-title {
    font-size: 48px !important;
    margin: 0 0 60px 0 !important;
    position: relative;
    text-align: center;
    z-index: 1;
}

.testimonial-item {
    margin: 0;
    padding: 0;
    position: relative;
    text-align: center;
    z-index: 1;
}

.testimonial-item-content {
    font-size: 24px;
    font-weight: 600;
    margin: 0 auto;
    position: relative;
}

.testimonial-item-category {
    color: var(--wp--preset--color--custom-primary-color);
    display: block;
    font-weight: 500;
    font-size: 20px;
    line-height: 2;
    margin: 10px auto;
}

.testimonial-item-author {
    margin-top: 35px;
}

.testimonial-item-author-avatar {
    display: block;
    border-radius: 50%;
    height: auto;
    margin: 0 auto 20px auto;
    width: 120px;
}

.testimonial-item-author-name {
    font-size: 16px;
    font-weight: 400;
}

.testimonial-item-author-position {
    display: block;
}

.testimonials-list .testimonials-list-items {
    grid-column-gap: 60px;
}

.testimonials-list .testimonial-item {
    padding: 0 !important;
}

.testimonials-list .testimonial-item .testimonial-item-content {
    border: 1px solid var(--wp--preset--color--custom-primary-color);
    border-radius: 20px;
    font-size: 16px;
    font-weight: 400;
    padding: 20px;
    position: relative;
}

.testimonials-list .testimonial-item .testimonial-item-content:before {
    background-color: #fff;
    border: 1px solid var(--wp--preset--color--custom-primary-color);
    border-right-color: transparent;
    border-top-color: transparent;
    bottom: -12px;
    content: "";
    height: 24px;
    left: 50%;
    pointer-events: none;
    position: absolute;
    top: calc(100% - 12px);
    transform: translateX(-50%) rotate(-45deg);
    width: 24px;
}

.testimonials-slider {
    margin: 30px 0;
    position: relative;
    z-index: 1;
}

.testimonials-slider-title {
    font-weight: 700 !important;
    margin: 10px auto 75px auto;
    max-width: 880px;
    position: relative;
    width: 100%;
    z-index: 1;
}

.testimonials-slider-content {
    align-items: center;
    display: flex;
    position: relative;
    width: 100%;
}

.testimonials-slider .btn-navi {
    height: 32px;
    line-height: 32px;
    text-align: center;
    text-decoration: none;
    width: 32px;
    z-index: 2;
}

.testimonials-slider .is-hidden {
    opacity: 0;
    pointer-events: none;
}

.testimonials-slider .btn-navi:active,
.testimonials-slider .btn-navi:focus,
.testimonials-slider .btn-navi:hover {
    background: var(--wp--preset--color--custom-primary-color);
    color: #fff;
}

.testimonials-slider .testimonials-slider-wrapper {
    display: block;
    margin-left: auto;
    overflow: hidden;
    width: calc(100% - 64px);
}

.testimonials-slider .testimonials-slider-list {
    align-items: stretch;
    display: flex;
    justify-content: flex-start;
    list-style: none;
    margin: 0;
    padding: 0 0 30px 0;
    transition: all 0.5s ease-in-out;
}

.testimonials-slider .testimonials-slider-list .testimonials-slider-list-item {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0 30px;
}

.testimonials-slider .testimonials-slider-list .testimonial-item-content {
    max-width: 820px;
}

.testimonials-slider .testimonials-slider-list .testimonial-item-author-avatar {
    border-radius: 0;
}

.testimonials-slider[data-count="1"] .testimonials-slider-list {
    width: calc(100% * 1);
}

.testimonials-slider[data-count="1"] .testimonials-slider-list-item {
    width: calc(100% / 1 - 60px);
}

.testimonials-slider[data-count="2"] .testimonials-slider-list {
    width: calc(100% * 2);
}

.testimonials-slider[data-count="2"] .testimonials-slider-list-item {
    width: calc(100% / 2 - 60px);
}

.testimonials-slider[data-count="3"] .testimonials-slider-list {
    width: calc(100% * 3);
}

.testimonials-slider[data-count="3"] .testimonials-slider-list-item {
    width: calc(100% / 3 - 60px);
}

.testimonials-slider[data-count="4"] .testimonials-slider-list {
    width: calc(100% * 4);
}

.testimonials-slider[data-count="4"] .testimonials-slider-list-item {
    width: calc(100% / 4 - 60px);
}

.testimonials-slider[data-count="5"] .testimonials-slider-list {
    width: calc(100% * 5);
}

.testimonials-slider[data-count="5"] .testimonials-slider-list-item {
    width: calc(100% / 5 - 60px);
}

.testimonials-slider[data-count="6"] .testimonials-slider-list {
    width: calc(100% * 6);
}

.testimonials-slider[data-count="6"] .testimonials-slider-list-item {
    width: calc(100% / 6 - 60px);
}

.testimonials-slider[data-count="7"] .testimonials-slider-list {
    width: calc(100% * 7);
}

.testimonials-slider[data-count="7"] .testimonials-slider-list-item {
    width: calc(100% / 7 - 60px);
}

.testimonials-slider[data-count="8"] .testimonials-slider-list {
    width: calc(100% * 8);
}

.testimonials-slider[data-count="8"] .testimonials-slider-list-item {
    width: calc(100% / 8 - 60px);
}

.testimonials-slider[data-count="9"] .testimonials-slider-list {
    width: calc(100% * 9);
}

.testimonials-slider[data-count="9"] .testimonials-slider-list-item {
    width: calc(100% / 9 - 60px);
}

.testimonials-slider[data-count="10"] .testimonials-slider-list {
    width: calc(100% * 10);
}

.testimonials-slider[data-count="10"] .testimonials-slider-list-item {
    width: calc(100% / 10 - 60px);
}

.testimonials-slider[data-count="11"] .testimonials-slider-list {
    width: calc(100% * 11);
}

.testimonials-slider[data-count="11"] .testimonials-slider-list-item {
    width: calc(100% / 11 - 60px);
}

.testimonials-slider[data-count="12"] .testimonials-slider-list {
    width: calc(100% * 12);
}

.testimonials-slider[data-count="12"] .testimonials-slider-list-item {
    width: calc(100% / 12 - 60px);
}

.testimonials-slider[data-count="13"] .testimonials-slider-list {
    width: calc(100% * 13);
}

.testimonials-slider[data-count="13"] .testimonials-slider-list-item {
    width: calc(100% / 13 - 60px);
}

.testimonials-slider[data-count="14"] .testimonials-slider-list {
    width: calc(100% * 14);
}

.testimonials-slider[data-count="14"] .testimonials-slider-list-item {
    width: calc(100% / 14 - 60px);
}

.testimonials-slider[data-count="15"] .testimonials-slider-list {
    width: calc(100% * 15);
}

.testimonials-slider[data-count="15"] .testimonials-slider-list-item {
    width: calc(100% / 15 - 60px);
}

.testimonials-slider[data-count="16"] .testimonials-slider-list {
    width: calc(100% * 16);
}

.testimonials-slider[data-count="16"] .testimonials-slider-list-item {
    width: calc(100% / 16 - 60px);
}

.testimonials-list {
    margin: 100px 0;
}

.testimonials-list-title {
    font-size: 36px !important;
    margin-top: 0 !important;
}

.testimonials-list-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 140px;
    grid-row-gap: 25px;
    list-style: none;
    margin: 40px 0 0 0;
    padding: 0;
}

@media screen and (max-width: 1200px) {
    .testimonials-list-items {
        grid-gap: 80px;
    }

    .testimonials-slider .testimonials-slider-wrapper {
        margin-left: 0;
    }
}

@media screen and (max-width: 1024px) {
    .testimonials-list-items .testimonial-item {
        padding-left: 60px;
    }

    .testimonials-list-items .testimonial-item-content {
        font-size: 16px;
    }

    .testimonial-title {
        font-size: 40px !important;
    }
}

@media screen and (max-width: 840px) {
    .testimonial-item-content {
        font-size: 20px;
    }

    .testimonials-list-items {
        grid-gap: 50px;
    }

    .testimonials-list-items .testimonial-item {
        padding-left: 0;
        padding-top: 50px;
    }

    .testimonials-list-items .testimonial-item-content {
        font-size: 14px;
    }

    .testimonials-list-items .testimonial-item-author {
        margin-top: 40px;
    }

    .testimonials-list-items .testimonial-item-author-avatar {
        height: auto;
        margin-bottom: 15px;
        width: 84px;
    }

    .testimonials-slider .testimonials-slider-wrapper {
        margin-left: 0;
    }

    .testimonials-list .testimonial-item .testimonial-item-content:before {
        left: 30px;
    }
}

@media screen and (max-width: 720px) {
    .testimonials-slider {
        margin: 20px 0;
    }

    .testimonials-slider-content {
        justify-content: center;
        flex-wrap: wrap;
    }

    .testimonials-slider .btn {
        order: 1;
    }

    .testimonials-slider .testimonials-slider-wrapper {
        margin-top: 10px;
        order: 0;
        overflow: hidden;
        width: 100%;
    }

    .testimonials-slider .testimonial-item-content {
        font-size: 16px;
    }

    .testimonial-title {
        font-size: 36px !important;
    }
}

@media screen and (max-width: 560px) {
    .testimonial {
        margin: 80px 0;
    }

    .testimonial-title {
        font-size: 24px !important;
        margin-bottom: 25px !important;
    }

    .testimonial-item {
        padding: 0;
    }

    .testimonial-item-content {
        font-size: 14px;
    }

    .testimonials-list .testimonials-list-title {
        text-align: left;
    }

    .testimonials-list-items {
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 0;
        grid-row-gap: 30px;
    }

    .testimonials-list-items .testimonial-item-author {
        margin-top: 30px;
    }

    .testimonials-slider {
        margin: 20px 0 10px 0;
        padding: 0;
    }

    .testimonials-slider-title {
        font-size: 36px;
        margin-top: 0;
        margin-bottom: 40px;
    }

    .testimonials-slider-content {
        flex-wrap: wrap;
    }

    .testimonials-slider .testimonials-slider-wrapper {
        margin-top: 10px;
        overflow: hidden;
        width: 100%;
    }
}

/* Improved checkout */
body.page-template-page-with-title .wp-block-post-title {
    margin-bottom: var(--wp--preset--spacing--30);
    margin-top: var(--wp--preset--spacing--30);
    text-align: center;
}

body.woocommerce-checkout form .col2-set {
    display: flex;
    flex-direction: column;
    float: left;
    width: 50%;
}

body.woocommerce-checkout form .col2-set .col-1,
body.woocommerce-checkout form .col2-set .col-2 {
    width: 100%;
}

body.woocommerce-checkout form[name="checkout"] {
    margin-bottom: 100px;
}

body.woocommerce-checkout form[name="checkout"]:after {
    content: "";
    clear: both;
    display: table;
}

body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review_heading {
    float: right;
    width: 45%;
}

body.woocommerce-checkout table.shop_table {
    width: 100%;
}

#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    background: transparent;
    padding: 0;
}

#add_payment_method #payment ul.payment_methods, 
.woocommerce-cart #payment ul.payment_methods, 
.woocommerce-checkout #payment ul.payment_methods {
    padding: 0 0 30px 0;
}

#add_payment_method #payment ul.payment_methods li, 
.woocommerce-cart #payment ul.payment_methods li, 
.woocommerce-checkout #payment ul.payment_methods li {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}

#add_payment_method #payment ul.payment_methods li label, 
.woocommerce-cart #payment ul.payment_methods li label, 
.woocommerce-checkout #payment ul.payment_methods li label {
    margin-bottom: 0;
}

#add_payment_method #payment div.payment_box, 
.woocommerce-cart #payment div.payment_box, 
.woocommerce-checkout #payment div.payment_box {
    background: transparent;
    padding: 0;
    margin: 0;
}

#add_payment_method #payment div.payment_box:before, 
.woocommerce-cart #payment div.payment_box:before, 
.woocommerce-checkout #payment div.payment_box:before {
    display: none;
}

#add_payment_method #payment div.form-row, 
.woocommerce-cart #payment div.form-row,
.woocommerce-checkout #payment div.form-row {
    padding-left: 0;
    padding-right: 0;
}

[class*=payment_method_tpay] .payment_box {
    padding-left: 0!important;
    padding-right: 0!important;
}

.woocommerce-checkout .form-row.place-order {
    margin-top: 20px;
}

.woocommerce-checkout .tpay-pbl-container .tpay-pbl .tpay-item {
    min-height: 120px;
    width: calc(100% / 3);
}

.woocommerce-checkout .tpay-pbl-container .tpay-pbl .tpay-item > div > div {
    min-height: 120px;
    padding-left: 5px;
    padding-right: 5px;
}

.woocommerce-checkout .tpay-blik0 {
    padding: 0;
}

.woocommerce-checkout .tpay-blik0 .tpay_blik-payment-form.active, 
.woocommerce-checkout .tpay-blik0 .tpay_blik-payment-alias.active {
    background: transparent;
}

.wc-block-product-template.is-flex-container.is-flex-container.columns-4 > li {
    display: flex;
    flex-direction: column;
}

.wc-block-product-template.is-flex-container.is-flex-container.columns-4 > li .wp-block-button.wc-block-components-product-button {
    margin-top: auto;
}

@media (max-width: 960px) {
    body.woocommerce-checkout form .col2-set {
        float: none;
        width: 100%;
    }
    
    body.woocommerce-checkout form .col2-set .col-1,
    body.woocommerce-checkout form .col2-set .col-2 {
        width: 100%;
    }
    
    body.woocommerce-checkout #order_review,
    body.woocommerce-checkout #order_review_heading {
        float: none;
        width: 100%;
    }
}

@media (max-width: 640px) {
    .woocommerce-checkout .tpay-pbl-container .tpay-pbl .tpay-item {
        min-height: 120px;
        width: calc(100% / 2);
    }
}

/* Homepage changes */
.is-homepage-content .wc-block-featured-category {
    border-radius: 10px;
    min-height: 300px!important;
    overflow: hidden;
}

.is-homepage-content .wc-block-featured-category img {
    object-fit: cover!important;
}

.is-homepage-content .wc-block-featured-category__title {
    font-size: var(--wp--preset--font-size--large);
    padding: 0 20px 15px 20px;
}

.is-homepage-content .wc-block-featured-category .wp-block-button__link:active,
.is-homepage-content .wc-block-featured-category .wp-block-button__link:focus,
.is-homepage-content .wc-block-featured-category .wp-block-button__link:hover {
    background: #fff;
    color: var(--wp--preset--color--custom-primary-color);
}

/* Shop page changes */
.wp-block-search__label {
	display: none;
}

.is-categories-list .wc-block-product-categories-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style-type: none;
    margin: 50px 0;
    padding: 0;
}

.is-categories-list .wc-block-product-categories-list li a {
	text-decoration: none;
}

.is-categories-list .wc-block-product-categories-list li a:active,
.is-categories-list .wc-block-product-categories-list li a:focus,
.is-categories-list .wc-block-product-categories-list li a:hover {
	text-decoration: underline;
}

.is-categories-list .wc-block-product-categories-list li:before {
    content: "📂 ";
}

/* Button changes */
.wc-block-grid__product,
.wc-block-product-template__responsive > li {
    padding-bottom: 60px;
    position: relative;
}

.wc-block-grid__product .wp-block-button.wc-block-grid__product-add-to-cart,
.wc-block-product-template__responsive > li .wp-block-button.wc-block-components-product-button {
    bottom: 0;
    position: absolute;
    text-align: center;
    width: 100%;
}

.wc-block-grid__product .wp-block-button.wc-block-grid__product-add-to-cart {
	bottom: 0;
}

/* Visual fixes */
.wp-block-media-text .wp-block-media-text__content:first-child {
    padding-left: 0!important;
}

.wp-block-media-text .wp-block-media-text__content:last-child {
    padding-right: 0!important;
}

@media (max-width: 600px) {
    .wp-block-media-text .wp-block-media-text__content {
        padding-left: 0!important;
        padding-right: 0!important;
    }
}

#ebook-cta .wp-block-column {
    text-align: center;
}

#ebook-cta .product {
    display: flex;
    justify-content: center;
}

#ebook-cta .wp-block-woocommerce-product-price del {
    display: block;
    font-size: 50%;
    line-height: 1;
}

#ebook-cta .wp-block-woocommerce-product-price ins {
    display: block;
    font-weight: bold;
    line-height: 1.1;
}

#ebook-cta .wc-block-components-quantity-selector {
    display: none;
}

#ebook-cta .woocommerce div.product form.cart button[name="add-to-cart"] {
    transform: scale(1.25);
}

#ebook-cta .wp-block-heading {
    font-weight: bold;
}

#ebook-cta .wp-block-heading em {
    border: 2px solid var(--wp--preset--color--custom-primary-color);
    color: var(--wp--preset--color--custom-primary-color);
    font-style: normal;
    font-size: 50%;
    font-weight: bold;
    background: #fff;
    padding: 5px 15px;
    border-radius: 10px;
}

#ebook-cta .woocommerce-additional-text {
    color: #555;
}

#ebook-cta > * {
    position: relative;
    z-index: 1;
}

#ebook-cta {
    padding: 30px;
    position: relative;
}

#ebook-cta:before {
    background: #F0F0F0;
    background: radial-gradient(circle, rgba(220, 220, 220, 1) 0%, rgba(235, 71, 61, 0.5) 0%, rgba(220, 220, 220, 1) 100%);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .25);
    border-radius: 20px;
    bottom: 0;
    content: "";
    opacity: .25;
    pointer-events: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
}

/* Fix issue with buttons */
body .wp-block-button__link {
    height: auto;
    width: auto;
}

/* improved products */
.wp-block-column:has(.is-special-product-block) {
    text-align: center;
}

.is-special-product-block .wc-block-components-product-image img {
    border-radius: 10px;
}

.is-special-product-block {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.is-special-product-block .wp-block-woocommerce-product-price {
    font-size: var(--wp--preset--font-size--large);
}

.is-special-product-block .wp-block-woocommerce-product-price del {
    display: block;
    font-size: 50%;
    line-height: 1;
}

.is-special-product-block .wp-block-woocommerce-product-price ins {
    display: block;
    font-weight: bold;
    line-height: 1.1;
}

.is-special-product-block form {
    justify-content: center;
    margin: 30px 0 0 0;
}

.is-special-product-block .quantity {
    display: none!important;
}

.is-special-product-block .single_add_to_cart_button {
    transform: scale(1.25);
}

.is-special-product-block .wp-block-post-title {
    font-size: var(--wp--preset--font-size--large);
    font-weight: bold;
}

.is-special-product-block .woocommerce-additional-text {
    color: #555;
}

.is-special-product-block > * {
    position: relative;
    z-index: 1;
}

.is-special-product-block {
    padding: 30px;
    position: relative;
}

.is-special-product-block.is-featured .wp-block-woocommerce-product-price {
    color: var(--wp--preset--color--custom-primary-color);
}

.is-special-product-block:before,
.is-special-product-block.is-featured:before {
    background: #f5f5f5;
    box-shadow: 0 5px 10px rgba(0, 0, 0, .45);
    border-radius: 20px;
    bottom: 0;
    content: "";
    opacity: .25;
    pointer-events: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
}

.is-special-product-block.is-featured:before {
    background: #f5f5f5;
    background: radial-gradient(circle, rgba(220, 220, 220, 1) 0%, rgba(235, 71, 61, 0.5) 0%, rgba(220, 220, 220, 1) 100%);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .25);
}