.services.catalog {
    padding: 0 20px 120px;
    background: transparent;
    .filters {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
        margin-bottom: 40px;
        .categories {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            min-width: 0;
            a {
                padding: 10px 20px;
                border-radius: 12px;
                background: var(--bg-5);
                color: var(--text-5);
                line-height: 18px;
                &[aria-current] {
                    background: var(--text-5);
                    color: var(--text-6);
                    font-weight: 600;
                }
            }
        }
        .search {
            flex: 0 0 280px;
            input[type="search"] {
                width: 100%;
                min-width: 0;
                padding: 10px 16px;
                border: 0;
                border-radius: 12px;
                background: var(--bg-5);
                color: var(--text-2);
                line-height: 18px;
                &::placeholder {
                    color: var(--text-7);
                }
            }
        }
    }
    .cards {
        .item {
            .content {
                .bottom {
                    flex-direction: column;
                    align-items: flex-start;
                    .price {
                        flex-direction: row;
                        align-items: baseline;
                        flex-wrap: wrap;
                        gap: 6px;
                    }
                    .actions {
                        display: flex;
                        flex-wrap: wrap;
                        gap: 12px;
                        .btn, .btn-2 {
                            justify-content: center;
                            padding: 12px 26px;
                            font-size: 14px;
                            line-height: 18px;
                            &::after {
                                display: none;
                            }
                        }
                        .btn-2 {
                            border: var(--border-5);
                            background: var(--bg-5);
                            box-shadow: none;
                            &:hover {
                                background: var(--bg-8);
                            }
                        }
                    }
                }
            }
        }
    }
    a:focus-visible, button:focus-visible, input:focus-visible {
        outline: var(--border-1);
        outline-offset: 3px;
    }
}
@media screen and (max-width: 1240px) {
    .services.catalog {
        .filters {
            align-items: stretch;
            flex-direction: column;
            gap: 16px;
            .search {
                flex: none;
                width: 100%;
            }
        }
    }
}
@media screen and (max-width: 768px) {
    .services.catalog {
        padding: 0 16px 60px;
        .filters {
            margin-bottom: 24px;
            .categories {
                a {
                    padding: 10px 14px;
                    font-size: 12px;
                    line-height: 16px;
                }
            }
        }
        .cards {
            .item {
                .content {
                    .bottom {
                        gap: 12px;
                        .actions {
                            gap: 8px;
                            .btn, .btn-2 {
                                padding: 10px 12px;
                                font-size: 12px;
                                line-height: 16px;
                            }
                        }
                    }
                }
            }
        }
    }
}