.dko-faq-grid {
    padding: 0px;
    
    position: relative;
    z-index: 1;
}

.dko-faq-grid__qa_topic_name {
    color: var(--crf--shiny-blue);
    font-size: 24px;
    line-height: 28px;
}

.dko-faq-grid__cards {
    display: flex;
    flex-flow: column nowrap;
    row-gap: 40px;
    
    padding: 40px var(--global-lateral-padding) 0px;
}

.dko-faq-grid__cards [data-accordion-summary] {
    column-gap: 10px;
}

.dko-faq-grid__cards .qa {
    margin-top: 10px; /* was 20px */
}
.dko-faq-grid__cards .qa__question,
.dko-faq-grid__cards .qa__answer {
    padding-left: 27px;
}
.dko-faq-grid__cards .qa__answer {
    font-size: 16px;
    line-height: 26px;
}


.dko-faq-grid .qa__question__title {
    font-size: 16px;
    line-height: 22px;
    font-weight: 500; /* was 700 */
    
}

.dko-faq-grid__mobile-toggle-filters {
    height: 60px;
    margin-top: auto;
    border-top: 1px solid var(--crf--middle-grey-2);
    border-bottom: 1px solid var(--crf--middle-grey-2);
        
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    padding-left: calc(var(--global-lateral-padding) + 45px);
}
.dko-faq-grid__filters-overflow-wrapper {
    height: 60px;
    position: sticky;
    top: calc(var(--header--height) + var(--wp-admin--admin-bar--height, 0px));
}
.dko-faq-grid__filters-overflow {
    width: 100%;
    height: calc(var(--visible-height, 0px) + 1px); 
    pointer-events: none;
    overflow: hidden;
}
.dko-faq-grid__filters {
    height: 100%;
    background-color: var(--crf--white);
    
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    pointer-events: all;
    
    transition: transform 0.3s ease 0s;
}
.dko-faq-grid__filters[aria-expanded="false"] {
    transform: translateY(calc(-100% + 60px - 1px));
}
.dko-faq-grid__filters[aria-expanded="true"] {
    transform: translateY(0px);
}
.dko-faq-grid .close-btn {
    position: absolute;
}
[aria-expanded="true"] .close-btn,
[aria-expanded="false"] .open-btn {
    opacity: 1;
}
[aria-expanded="false"] .close-btn,
[aria-expanded="true"] .open-btn {
    opacity: 0;
}

.dko-faq-grid [data-accordion-summary]::after {
    background-image: url('../../assets/images/svg/accordion-arrow-down.svg');
}

.dko-faq-grid__mobile-toggle-filters::before {
    content: "";
    position: absolute;
    background-image: url(../../assets/images/svg/accordion-arrow-down.svg);
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    background-size: contain;
    left: var(--global-lateral-padding);
}
[aria-expanded="true"] .dko-faq-grid__mobile-toggle-filters::before {
    transform: rotateZ(180deg);
}

.dko-faq-grid .filters-title {
    padding: 23px var(--global-lateral-padding) 34px;
    text-align: center;
    align-selft: center;
}
.dko-faq-grid__fieldset {
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
    border: 0px;
    padding: 0px var(--global-lateral-padding);
}
.dko-faq-grid__topic-filter {
    line-height: 1em;
    padding: 6px 12px;
    border: 1px solid var(--crf--shiny-blue);
    border-radius: 4px;
    color: var(--crf--shiny-blue);
    display: inline-block;
    cursor: pointer;
    user-select: none;
}
.dko-faq-grid__checkbox {
    width: 0px;
    height: 0px;
    opacity: 0px;
    margin-right: -10px; /* to compensate for parent's flex gap */
}
.dko-faq-grid__checkbox:checked + .dko-faq-grid__topic-filter {
    background-color: var(--crf--shiny-blue);
    color: var(--crf--white);
}
.dko-faq-grid__checkbox:focus-visible + .dko-faq-grid__topic-filter {
    outline: var(--crf--shiny-blue) dotted 2px;
}

@media screen and (min-width: 768px) and (max-width: 991px),
       screen and (min-width: 1200px) {
    .dko-faq-grid__cards .qa {
        --qa-vertical-padding: 15px; /* was 25px */
        --qa-lateral-padding: 35px;
        padding: 0px 0px var(--qa-vertical-padding);
    }
    .dko-faq-grid__cards .qa__question {
        padding: var(--qa-vertical-padding) var(--qa-lateral-padding);
        margin-bottom: calc(-1 * var(--qa-vertical-padding));
    }
    .dko-faq-grid__cards .qa__answer {
        padding-left: var(--qa-lateral-padding);
    }
    
    .dko-faq-grid__cards .qa {
        margin-top: 0;
    }
}


@media screen and (min-width: 992px) {
    .dko-faq-grid__filters-overflow-wrapper {
        height: fit-content;
    }
    .dko-faq-grid__filters-overflow-wrapper::after {
        content: "";
        position: absolute;
        width: 1px;
        height: 100%;
        background: var(--crf--light-grey);
        inset: 0px -65px 0px auto;
    }
    .dko-faq-grid__filters-overflow {
        height: auto;
    }
    .dko-faq-grid__mobile-toggle-filters {
        display: none;
    }
    .dko-faq-grid__filters[aria-expanded="false"] {
        transform: none;
    }
    
    
    .dko-faq-grid {
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
        column-gap: 167px;
        padding: 0px 40px;
        
        
        /*max-width: 1440px;*/
        margin: 0px auto;
    }
    .dko-faq-grid > div:first-child {
        width: 217px;
    }
    .dko-faq-grid .filters-title {
        padding: 60px 0px 34px 0px;
    }
    .dko-faq-grid__fieldset {
        padding: 0px 0px 23px;
    }
    .dko-faq-grid__cards {
        flex-grow: 1;
        padding: 58px 0px 0px;
        max-width: 895px;
        margin: 0 auto;
    }
}
@media screen and (min-width: 1200px) {
    .dko-faq-grid__qa_topic_name {
        font-size: 32px;
        line-height: 64px;
    }
    .dko-faq-grid .qa__question__title {
        font-size: 24px;
        line-height: 32px;
    }
    .dko-faq-grid__cards .qa__answer {
        padding: 0px var(--qa-lateral-padding);
        font-size: 16px;
        line-height: 32px;
    }
    .dko-faq-grid__cards {
        padding-top: 36px;
    }
}
