.faq {

    h2 {
        color: var(--_bg-color);
    }
    
    .accordion {
        display: flex;
        flex-direction: column;
        flex: 1;

        .item {
            border: 1px solid #DBDBDB;

            &:first-child {
                border-radius: 8px 8px 0 0;
            }

            &:last-child {
                border-radius: 0 0 8px 8px;
            }

            & + .item {
                border-top: 0;
            }
        }

        .title {
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: #0D1A22;
            padding: 16px;
            margin-bottom: 0;
            cursor: pointer;
            font-size: 18px;
            gap: 8px;
            margin-top: 0;
            
            &:before {
                display: none;
            }
            
            @media (width > 768px) {
                padding-inline: 24px;
            }
            
            strong {
                display: flex;
                font-weight: 600;
                gap: 4px;
            }

            > span {
                display: flex;
                align-items: center;
                transition: rotate 300ms ease-out;
                rotate: 180deg;
                color: var(--_bg-color);
            }

            /* Focus visible WCAG */
            &:focus-visible {
                outline: 2px solid #0D1A22;
                outline-offset: 2px;
            }
        }

        .content {
            margin-bottom: 0;
            padding: 0;
            height: 0;
            overflow: hidden;
            transition: height 0.3s ease, block-size 0.3s ease;
            transition-behavior: allow-discrete;
            
            p:last-child, ul:last-child, li:last-child {
                margin-bottom: 0;
            }
        }

        .title[aria-expanded="true"] {

            + .content {
                padding: 0 24px 24px 24px;
                /* height: calc-size(auto, size); */
                height: auto;
                max-height: 500px;
                overflow: initial;
            }

            > span {
                rotate: 0deg;
            }
        }
    }

}
/* 
@starting-style {
    .accordion .content {
        height: 0;
    }
} */
