html, body {
    background-color: #fafafa !important;
    font-size: 100%;
}
ul {
    list-style: revert;
    padding: revert;
}
.container-fluid,
.row {
    display: contents;
}
.row > [class*="col-"] {
    display: contents;
    float: none;
    padding: 0;
}
.row:before,
.row:after {
    content: normal;
}
.form-control {
    color: #171717;
}
:is(h1, h2, h3, h4, h5, h6, p) {
    color: #171717;
}
#offerlist-wrapper {
    float: none;
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1.5rem;
}
@media (min-width: 48em) {
    #offerlist-wrapper {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    @media not all and (min-width: 60em) {
        #offerlist-wrapper {
            gap: 0.5rem;
        }
    }
}
.offer-item {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    margin: 0;
    position: relative;
}
.offer-item .offer-item-headline {
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.75rem;
    display: block;
    margin: 0 0 0.75rem;
}
:is(.offer-item .offer-item-headline) a {
    color: #171717;
    font-weight: 700;
}
:is(:is(.offer-item .offer-item-headline) a):after {
    content: "";
    position: absolute;
    inset: 0;
}
.offer-item .offer-item-text {
    margin: 0;
    font-size: 0.875rem;
    line-height: calc(1em + 0.5rem);
    color: #404040;
}
:where(
        :is(:is(.offer-item .offer-item-text) .offer-item-text-body),
        :is(:is(.offer-item .offer-item-text) .offer-item-text-body) ~ br
    ) {
    display: none;
}
.offer-item .offer-item-meta {
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.25rem;
    display: grid;
    grid-template-columns: 1.25rem 1fr;
    gap: 1rem;
}
:is(.offer-item .offer-item-meta) :where(.fa, .fas, .far, .fal, .fad) {
    color: #ffd047;
    padding: 0 !important;
    font-size: 1.25rem;
}
#answer_form {
    background-color: #fff;
    padding: 1.5rem;
}
:is(#answer_form a):not(.btn, .select2-choice) {
    color: #171717;
    text-decoration: underline;
}
#answer_form h2 {
    font-weight: 700;
    font-size: 1.5rem;
    display: block;
}
:is(#answer_form #phone-place) > .row {
    display: flex;
    gap: 1rem;
    margin: 0;
}
:is(:is(#answer_form #phone-place) > .row) > [class*="col-"] {
    display: flex;
    flex-direction: column;
}
:is(:is(#answer_form #answer-form-inner) .sky-form) a {
    color: #171717 !important;
}
#answer_form #aform-submit {
    background-color: #ffd047;
    color: #171717;
    border-radius: 0 !important;
    border: none;
}
:is(#answer_form #aform-submit):where(:hover, :focus-visible) {
    background-color: color-mix(in srgb, #ffd047 80%, #171717);
}
#offer-detail {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;
    padding: 1.5rem;
}
#offer-detail:has(#btn-back) {
    margin-top: 4rem;
}
#offer-detail #btn-back {
    border-radius: 0;
    font-size: 1rem;
    font-weight: 500;
    color: #fff;
    background-color: #171717;
    position: absolute;
    left: 0;
    top: -4rem;
}
:is(#offer-detail #btn-back):is(:hover, :focus-visible) {
    background-color: color-mix(in srgb, #171717 80%, #fff);
}
#offer-detail > h1 {
    font-weight: 700;
    font-size: 2rem;
    display: block;
    margin-top: 1rem;
}
#offer-detail > p {
    color: #404040;
}
:is(#offer-detail a):not(.btn) {
    color: #171717;
}
#offer-detail > .row {
    display: flex;
    width: 100%;
    margin: 2rem 0 0;
    padding-top: 2rem;
    gap: 2rem;
    border-top: 1px solid color-mix(in srgb, #171717 15%, transparent);
}
@media not all and (min-width: 48em) {
    #offer-detail > .row {
        flex-direction: column;
        gap: 0;
    }
}
:is(#offer-detail > .row) > hr {
    display: none;
}
:is(#offer-detail > .row) > [class*="col-"] {
    display: flex;
    flex-direction: column;
    width: 100%;
}
@media (min-width: 48em) {
    :is(#offer-detail > .row) > [class*="col-"] {
        width: 50%;
    }
}
#offer-detail .dl-horizontal {
    display: grid;
    grid-auto-rows: auto;
    grid-template-columns: 100%;
    gap: 0;
    margin: 0;
}
@media (min-width: 48em) {
    #offer-detail .dl-horizontal {
        grid-template-columns: 12.5rem 1fr;
        gap: 1rem;
    }
}
:is(#offer-detail .dl-horizontal) dt {
    float: none;
    width: auto;
    text-align: left;
    font-weight: 700;
}
:is(:is(#offer-detail .dl-horizontal) dt) p {
    color: #171717;
    font-weight: 700;
    font-style: normal;
    font-size: 0.875rem;
    line-height: 1.25rem;
    margin: 0;
}
:is(#offer-detail .dl-horizontal) dd {
    margin-left: 0;
    float: none;
    font-size: 0.875rem;
    line-height: 1.25rem;
    overflow: hidden;
    color: #404040;
}
@media not all and (min-width: 48em) {
    :is(#offer-detail .dl-horizontal) dd {
        margin-bottom: 1rem;
    }
}
:is(:is(#offer-detail .dl-horizontal) dd):before,
:is(:is(#offer-detail .dl-horizontal) dd):after {
    content: normal;
}
:is(:is(#offer-detail .dl-horizontal) dd) a {
    color: #404040;
}
[href^="mailto"]:is(:is(:is(#offer-detail .dl-horizontal) dd) a) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
}
.segment-social > :first-child {
    margin-top: 2rem;
}
