/* Search and Filter Plugin */
.search-filter-results,
.search-filter-results-list {
    display: flex;
    flex-direction: column;
    margin-top: var(--wp--preset--spacing--20);
}

.search-filter-results-header {
	display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
}

.search-filter-result-item {
    border-top: 2px solid var(--wp--preset--color--primary);
    padding: 1.75rem 0 0;
    margin: 0 0 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: var(--wp--preset--font-size--small);
}

.search-filter-result-item h2 {
    margin: 0 0 0.375rem;
    font-size: var(--wp--preset--font-size--x-large);
}

.search-filter-result-item p {
    margin: 0;
    font-size: var(--wp--preset--font-size--small);
}

.search-filter-result-item__content {
    margin: 0.5rem 0 0;
}

.searchandfilter > ul {
    display: flex;
    flex-direction: column;
    padding: 0;
    gap: 1rem;
    padding-right: 1rem;
    position: relative;
}

.searchandfilter > ul > li {
    padding: 0;
}

.searchandfilter h4 {
    font-size: var(--wp--preset--font-size--normal);
    line-height: 1.5;
    font-weight: 700;
    background: var(--wp--preset--color--primary);
    color: #fff;
}

.searchandfilter > ul > li ul {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin: 0;
    padding: 0 !important;
}

.searchandfilter > ul > li li {
    padding: 0;
    margin: 0 0 0 1rem;
    display: flex;
    flex-wrap: wrap;
}

.searchandfilter > ul > li > ul > li:first-child {
    margin-top: 1.5rem;
}

.searchandfilter > ul > li li:first-child {
    margin-top: 1rem;
}

.searchandfilter > ul > li > ul > li:last-child {
    margin-bottom: 0.5rem;
}

.searchandfilter > ul > li li:last-child {
    margin-bottom: 0.75rem;
}

.searchandfilter li .children {
    flex-basis: 100%;
    margin-top: -0.25rem;
    margin-bottom: -0.25rem;
}

.searchandfilter .sf-field-search h4 {
    font-size: var(--wp--preset--font-size--normal) !important;
    padding-left: 14px !important;
}

.searchandfilter .sf-field-search label:has(input.sf-input-text) {
    padding: 22px;
    width: 100%;
}

.searchandfilter .sf-field-search input.sf-input-text {
    border: revert !important;
}

.searchandfilter .sf-field-submit {
    margin-top: -1.5rem;
}

.searchandfilter .sf-field-submit input {
    position: absolute;
    font-size: 1px;
    width: 20px;
    height: 20px;
    color: transparent !important;
    right: 36px;
    margin-top: -46px;
    padding: 0 !important;
    background: url(../images/icon-search.svg) center / auto 100% no-repeat !important;
    z-index: 1;
}

.searchandfilter .sf-field-submit input:hover {
    outline: none !important;
}

.searchandfilter input[type="text"]:focus-visible {
    outline-color: var(--wp--preset--color--primary);
}

.searchandfilter input[type="checkbox"] {
    accent-color: var(--wp--preset--color--primary);
}

.searchandfilter .sf-field-reset {
    border-top: 2px solid var(--wp--preset--color--primary);
    margin-top: -0.5rem;
    padding-top: 1.5rem;
}

.searchandfilter li.accordion {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: min-content 1fr;
    overflow: hidden;
    transition: grid-template-rows 0.6s ease;
}

.searchandfilter li.accordion h4 {
    position: relative;
}

.searchandfilter li.accordion h4::before,
.searchandfilter li.accordion h4::after {
    position: absolute;
    right: 1rem;
    top: 0.4em;
    content: "\2212";
    font-size: var(--wp--preset--font-size--large);
    line-height: 1;
    order: 1;
    opacity: 1;
    transition: opacity 0.2s linear;
}

.searchandfilter li.accordion h4::after {
    opacity: 0;
    content: "\002B";
}

.searchandfilter li.accordion.collapse {
    grid-template-rows: min-content 0fr;
}

.searchandfilter li.accordion.collapse h4::befor {
    opacity: 0;
}

.searchandfilter li.accordion.collapse h4::after {
    opacity: 1;
}

.searchandfilter li.accordion > ul {
    overflow: hidden;
}

.searchandfilter .sf-label-checkbox:hover,
.search-filter-results-list .wp-block-post-title a:hover {
  text-underline-offset: 0.15em;
  text-decoration-thickness: 0.08em;
}
