

.fl-sidebar {
    margin-top: 20px;
}

.fl-widget .fl-widget-title:not(.fl-page-footer-widgets *),
h4.fl-widget-title:not(.fl-page-footer-widgets *),
.blog-categories.fl-widget h4.fl-widget-title,
.rw-widget-box-header .fl-html h3.widgettitle,
.fl-module-sidebar .widget_text h4.fl-widget-title,
.fl-sidebar .widget_text h4.fl-widget-title {
    background-color: var(--brand-dark);
    padding: 15px 30px;
    margin: 0;
    border-radius: 5px 5px 0 0;
    font-size: 22px;
    color: var(--white);
    text-align: center;
}

.blog-categories.fl-widget ul,
.rw-widget-box-header .fl-html .widgetbody,
.fl-sidebar .textwidget {
    border: 1px solid var(--border-strong);
    background-color: var(--surface-alt);
    margin: 0;
    padding: 20px;
    border-radius: 0 0 5px 5px;
}

.blog-categories.fl-widget ul,
.fl-sidebar .textwidget {
    padding: 20px;
    background-color: var(--white);
}

.blog-categories.fl-widget ul li:first-of-type {
    border-top: 1px solid var(--surface-alt);
}

.blog-categories.fl-widget ul li {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid var(--surface-alt);
    margin-bottom: 0;
}

.blog-categories.fl-widget ul li a {
    padding: 10px 0 10px 15px;
    color: var(--text-muted);
    width: calc(100% - 40px);
    transition: var(--transition-base);
}

.blog-categories.fl-widget ul li a:hover {
    color: var(--accent-dark);
    text-decoration: none;
}

.blog-categories.fl-widget ul li span.count {
    background-color: var(--surface-alt);
    color: var(--text-muted);
    border-radius: 50px;
    padding: 0;
    line-height: 1.4;
    font-size: 13px;
    margin: 6px 15px 6px 0;
    text-align: center;
    width: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: default;
    transition: var(--transition-base);
}

.blog-categories.fl-widget ul li:hover span.count {
    background-color: var(--accent);
    color: var(--on-accent);
}

.fl-module-sidebar .widget_nav_menu li,
.fl-sidebar .widget_nav_menu li {
    margin-bottom: 2px;
}

.fl-module-sidebar .widget_nav_menu li a,
.fl-sidebar .widget_nav_menu li a {
    display: block;
    padding: 13px 20px;
    font-size: 15px;
    background: var(--surface-alt);
    border-radius: 3px;
    color: var(--brand);
    text-align: left;
    transition: var(--transition-base);
}

.fl-module-sidebar .widget_nav_menu li a:hover,
.fl-sidebar .widget_nav_menu li a:hover {
    background: var(--brand);
    color: var(--white);
    text-decoration: none;
}

.fl-module-sidebar .widget_nav_menu li.current_page_item a,
.fl-sidebar .widget_nav_menu li.current_page_item a {
    background: var(--brand);
    color: var(--white);
    text-decoration: none;
}

.rw-widget-box-header .fl-html .widgetbody p:last-of-type {
    margin-bottom: 0;
}

.rw-widget-box-header .button {
    background-color: var(--brand-light);
    border-radius: 3px;
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    display: block;
    text-align: center;
    padding: 13px;
}

.rw-widget-box-no-header .fl-html,
.rw-widget-box-no-header .fl-rich-text {
    border: 1px solid var(--border-strong);
    border-radius: 5px;
    background-color: var(--surface-alt);
    padding: 20px 30px;
}

.rw-widget-box-no-header h3,
.rw-widget-no-box-no-header h3 {
    font-size: 22px;
}

@media (min-width: 769px) {

    .rw-widget-box-header .fl-html h3.widgettitle {
        padding: 20px 10px;
        font-size: 16px;
    }

    .rw-widget-box-no-header h3 {
        font-size: 16px;
    }

    .rw-widget-box-header .fl-html .widgetbody,
    .rw-widget-box-header .fl-rich-text .widgetbody,
    .rw-widget-box-no-header .fl-html,
    .rw-widget-box-no-header .fl-rich-text {
        padding: 20px 10px;
    }

    .rw-widget-box-header .widgetbody ul,
    .rw-widget-box-no-header .fl-rich-text ul {
        padding-left: 30px;
    }

    .rw-widget-box-header .fl-html .widgetbody li,
    .rw-widget-box-header .fl-html .widgetbody p,
    .rw-widget-box-no-header .fl-rich-text p,
    .rw-widget-box-no-header .fl-rich-text li {
        font-size: 14px;
    }

}

@media (min-width: 1024px) {

    .rw-widget-box-header .fl-html h3.widgettitle {
        padding: 20px;
        font-size: 22px;
    }

    .rw-widget-box-no-header h3 {
        font-size: 22px;
    }

    .rw-widget-box-header .fl-html .widgetbody,
    .rw-widget-box-header .fl-rich-text .widgetbody,
    .rw-widget-box-no-header .fl-html,
    .rw-widget-box-no-header .fl-rich-text {
        padding: 20px;
    }

    .rw-widget-box-header .widgetbody ul,
    .rw-widget-box-no-header .fl-rich-text ul {
        padding-left: 40px;
    }

    .rw-widget-box-header .fl-html .widgetbody li,
    .rw-widget-box-header .fl-html .widgetbody p,
    .rw-widget-box-no-header .fl-rich-text p,
    .rw-widget-box-no-header .fl-rich-text li {
        font-size: 16px;
    }

}

@media (max-width: 991.98px) {

    .fl-archive .fl-sidebar,
    .single .post-container .fl-sidebar {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .fl-archive .row > .fl-sidebar {
        order: -1;
        margin-top: 0;
    }

    .fl-archive .blog-categories.fl-widget h4.fl-widget-title {
        background-color: transparent;
        color: var(--text-muted);
        padding: 0 0 var(--spacing-sm);
        border-radius: 0;
        font-size: 0.9rem;
        letter-spacing: 0.1em;
        text-align: left;
    }

    .fl-archive .blog-categories.fl-widget ul {
        display: flex;
        flex-wrap: wrap;
        gap: var(--spacing-sm);
        border: 0;
        background-color: transparent;
        padding: 0;
        border-radius: 0;
        margin-bottom: var(--spacing-lg);
    }

    .fl-archive .blog-categories.fl-widget ul li,
    .fl-archive .blog-categories.fl-widget ul li:first-of-type {
        border: 1px solid var(--border-strong);
        border-radius: var(--rw-small-radius);
        overflow: visible;
        transition: var(--transition-base);
    }

    .fl-archive .blog-categories.fl-widget ul li a {
        width: auto;
        padding: 4px 5px 4px 10px;
        font-size: 12px;
    }

    .fl-archive .blog-categories.fl-widget ul li span.count {
        background-color: var(--neutral-300);
        color: inherit;
        opacity: 0.6;
        width: 17px;
        margin: 0 10px 0 0;
        font-size: 10px;
        align-self: center;
        line-height: 16px;
    }

    .fl-archive .blog-categories.fl-widget ul li:hover,
    .fl-archive .blog-categories.fl-widget ul li:focus-within,
    .fl-archive .blog-categories.fl-widget ul li.current-cat {
        border-color: var(--accent);
        background-color: var(--accent);
    }

    .fl-archive .blog-categories.fl-widget ul li:hover a,
    .fl-archive .blog-categories.fl-widget ul li:focus-within a,
    .fl-archive .blog-categories.fl-widget ul li.current-cat a {
        color: var(--white);
    }

    .fl-archive .blog-categories.fl-widget ul li:hover span.count,
    .fl-archive .blog-categories.fl-widget ul li:focus-within span.count,
    .fl-archive .blog-categories.fl-widget ul li.current-cat span.count {
        background-color: var(--white);
        color: var(--accent);
        opacity: 1;
    }

}
