@media screen and (max-width: 767px) {
    .fw-site :is(
        .fw-btn,
        .fw-nav .fw-r41-nav-links .fw-nav-link,
        .fw-mood-hero .fw-hero-content .fw-btn,
        .fw-screening-result > .fw-actions > .fw-link,
        .fw-process-steps > button,
        .fw-hotspot-controls > button,
        [data-r3-level-mengen] > button[type="submit"],
        [data-fw-project] [data-fw-row-kind="product"] .fw-project-buy-link
    ),
    .fw-site [data-fw-project] .fw-project-stage > .fw-ux-actions > :is(
        .fw-project-secondary, [data-fw-project-transfer], .fw-project-primary
    ) {
        /* The shop theme sets html to 10px, so rem is not a body-text unit here. */
        font-size: max(16px, 1em);
        line-height: 1.25;
        white-space: normal;
        overflow-wrap: break-word;
        word-break: normal;
    }

    .fw-site :is(.fw-btn, .fw-process-steps > button, .fw-hotspot-controls > button) {
        min-block-size: 44px;
    }

    .fw-site .fw-mood-hero .fw-hero-content .fw-actions {
        flex-wrap: wrap;
    }

    .fw-site .fw-process-steps:not([hidden]) {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 155px), 1fr));
    }

    .fw-site .fw-hotspot-controls:not([hidden]) {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 182px), 1fr));
    }
}

@media screen {
    .fw-site [data-fw-surface-cards] input[type="radio"] {
        scroll-margin-block-start: 235px;
    }
}

@media screen and (max-width: 430px) {
    .fw-site :is(.fw-process-steps, .fw-hotspot-controls):not([hidden]) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fw-site .fw-bad-hotspots .fw-hotspot-controls:not([hidden]) {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
    }

    .fw-site :is(.fw-process-steps, .fw-hotspot-controls) > button {
        display: grid;
        grid-template-rows: auto 1fr;
        place-items: start;
        gap: .3em;
    }
}
@media screen {
    .fw-site [data-r3-level-mengen] .fw-level-count-inputs[aria-describedby="r3-level-density-hint"] {
        grid-template-columns: minmax(0, 1fr) minmax(0, max-content);
        align-items: end;
        gap: 12px 16px;
        padding: 12px;
    }

    .fw-site .fw-level-count-inputs[aria-describedby="r3-level-density-hint"] > label {
        min-inline-size: 0;
        margin: 0;
        line-height: 1.35;
    }

    .fw-site [data-r3-level-mengen] .fw-level-count-inputs input:is([data-r3-level-density], [data-r3-level-density2]) {
        inline-size: min(100%, 116px);
        min-block-size: 44px;
        font-size: max(16px, 1em);
    }

    .fw-site [data-r3-level-split-choice]:not([hidden]) {
        align-self: end;
        justify-self: start;
        inline-size: fit-content;
        max-inline-size: 100%;
        border: 1px solid var(--fw-line);
        border-radius: 5px;
        background: #fff;
        cursor: pointer;
    }

    .fw-site [data-r3-level-split-choice]:not([hidden]) > span {
        display: grid;
        grid-template-columns: 20px minmax(0, 1fr);
        align-items: center;
        column-gap: 10px;
        min-block-size: 44px;
        padding: 7px 10px;
    }

    .fw-site [data-r3-level-split-choice] > span > input[data-r3-level-split] {
        inline-size: 20px;
        block-size: 20px;
        margin: 0;
        cursor: pointer;
    }

    .fw-site [data-r3-level-split-choice]:has([data-r3-level-split]:checked) {
        border-color: var(--fw-topic-line, #9a968b);
        background: var(--fw-topic-wash, #fff);
    }

    .fw-site [data-r3-level-split-choice]:focus-within {
        outline: 2px solid var(--fw-topic-ink, #343a34);
        outline-offset: 2px;
    }

    .fw-site #r3-level-density-hint {
        padding-block-start: 8px;
        border-block-start: 1px solid var(--fw-line);
        color: var(--fw-muted);
    }
}

@media screen and (min-width: 760px) {
    .fw-site [data-r3-level-mengen] .fw-level-count-inputs[aria-describedby="r3-level-density-hint"]:has(> [data-r3-level-second-label]:not([hidden])) {
        grid-template-columns: minmax(0, 1fr) minmax(0, max-content) minmax(0, 1fr);
    }
}

@media screen and (max-width: 600px) {
    .fw-site [data-r3-level-mengen] .fw-level-count-inputs[aria-describedby="r3-level-density-hint"] {
        grid-template-columns: minmax(0, 1fr);
    }

    .fw-site [data-r3-level-split-choice]:not([hidden]) {
        justify-self: stretch;
        inline-size: 100%;
    }
}
