.contentsections .search-header .contentsection.folding .intro {
    display: none !important;
}

.contentsections .search-header .contentsection.folding .heading {
    padding-left: 0;
    padding-right: 0;
}

.search-header .contentsection.extended{
    margin-bottom: 18px;
}

.wicket .search-header .button-row.flex {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
}

.wicket .search-header .button-row.flex .column {
    float: none;
    display: block;
    flex: 1 0 auto;
}

.wicket .search-header .button-row.flex button {
    text-align: left;
}

.category-entry .category-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
    grid-gap: 0.5rem;
}

.offer .address {
    margin-bottom: 0.5em;
}

.offer .address, .offer .contact {
    margin-left: calc(4ch + 4px);
}

.offer .address .provider {
    margin-bottom: 0.5em;
}

.offer .address .caption {
    font-weight: bold;
    display: block;
}

.offer .contact .contact-link {
    display: block;
}

@supports (display: grid) {
    .category-entry .category-list label {
        margin: 0;
    }
}

.contentsections .contentsection.folding > .heading > h2 {
    width: 100%;
}

.contentsections .contentsection.folding > .heading > h2 > .padder {
    width: 100%;
}

html.flexbox .contentsections .contentsection.folding > .heading > .text .padder.flex {
    max-width: calc(100% - 1em - 4px - 0.5em);
    overflow-wrap: anywhere;
}

@media only screen and (max-width: 43.56em) {
    .wicket .search-header .button-row.flex {
        flex-direction: column;
    }
    
    .wicket .search-header .button-row.flex .column {
        width: auto;
    }
}
