.service-price-heading {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.service-price-heading__note {
    max-width: 72ch;
    font-family: var(--main-font);
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.45;
    color: var(--primary-black);
    text-transform: none;
}

.service-price-heading__note > :first-child { margin-top: 0; }
.service-price-heading__note > :last-child { margin-bottom: 0; }

.service-price .service-price__show-all {
    align-self: center;
    width: auto;
    max-width: 100%;
    min-height: 48px;
    margin-top: 20px;
    padding: 14px 32px;
    font-size: 2.6rem;
    line-height: 1.1;
    color: var(--primary-black);
    text-align: center;
}

.service-cases__hint { display: none; }
.service-price .service-price__show-all[hidden] { display: none; }

@media only screen and (max-width: 1199px) {
    .service-cases--browse .service-cases__controls {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .service-cases__hint {
        display: block;
        margin-right: auto;
        font-size: 1.6rem;
        line-height: 1.25;
    }

    .service-cases--browse .service-cases__controls .arrow-button {
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        flex: 0 0 44px;
        border: 1px solid var(--gray-300);
        border-radius: 50%;
        background-color: var(--primary-white);
    }

    .service-cases--browse .service-cases__controls .arrow-button__icon { width: 26px; height: 26px; }

    .service-cases--browse .service-cases__controls .arrow-button:not(:disabled):is(:hover, :focus-visible) {
        color: var(--primary-black);
        border-color: var(--primary-black);
        background-color: var(--primary-yellow-100);
    }

    .service-cases--browse .service-cases__controls .arrow-button:focus-visible,
    .service-price__show-all:focus-visible {
        outline: 2px solid var(--primary-black);
        outline-offset: 3px;
    }

    .service-cases--browse .service-cases__controls .arrow-button:disabled { cursor: default; opacity: 0.4; }
    .service-cases--browse .service-cases__controls .swiper-button-lock { display: none; }
}

@media only screen and (max-width: 767px) {
    .service-price-heading { gap: 12px; }
    .service-price-heading__note { font-size: 1.8rem; }
    .service-cases--browse { gap: 16px; }
    .service-cases--browse .case-card { width: calc(100% - 36px); }
}
