.service {
    position: relative;
    padding: 40px 20px 120px;
    .background {
        position: absolute;
        inset: -110px 0 0;
        pointer-events: none;
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
        &::after {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(
                90deg,
                var(--bg-1) 0%,
                rgba(250, 249, 248, 0.93) 31%,
                rgba(250, 249, 248, 0) 62.26%
            );
        }
    }
    > .wrapper {
        position: relative;
    }
    .breadcrumbs {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        margin-bottom: 24px;
        a, span {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-size: 13px;
            line-height: 17px;
        }
        a:hover {
            color: var(--text-4);
        }
        a + a, span {
            &::before {
                content: '';
                flex-shrink: 0;
                width: 6px;
                height: 6px;
                margin: 0 5px;
                border-radius: 50%;
                background: var(--gradient-2);
                box-shadow: 0 0 0 3px rgba(207, 174, 133, 0.2);
            }
        }
        span {
            color: var(--bg-6);
            font-weight: 500;
        }
    }
    .head {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        max-width: 720px;
        .markers {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            &:empty {
                display: none;
            }
            span {
                padding: 8px 12px;
                border-radius: 8px;
                background: var(--gradient-2);
                color: var(--text-6);
                font-size: 12px;
                font-weight: 500;
                line-height: 12px;
                text-transform: uppercase;
                &:nth-child(2) {
                    background: #aca8a3;
                }
            }
        }
        h1 {
            color: var(--text-2);
            font-size: 44px;
            font-weight: 800;
            line-height: 44px;
        }
        .description {
            p, strong, a, li {
                font-size: 18px;
                line-height: 27px;
            }
            p + p {
                margin-top: 12px;
            }
        }
    }
    .buttons {
        display: flex;
        flex-wrap: wrap;
        gap: 16px;
        margin-top: 30px;
        .btn::after {
            content: '\f000';
        }
        .btn-2 {
            background: transparent;
            border: var(--border-1);
            box-shadow: none;
            &::after {
                display: none;
            }
            &:hover {
                background: var(--gradient-2);
            }
        }
    }
    .badges {
        gap: 12px;
        margin-top: 30px;
        border: 0;
        border-radius: 16px;
        background: var(--bg-5);
        box-shadow: 0 16px 16px rgba(32, 32, 31, 0.05);
        .badge {
            flex: 1 1 0;
            min-width: 0;
            gap: 20px;
            &::before {
                background: #f8f5f0;
            }
            h2 {
                font-weight: 500;
                line-height: 21px;
            }
            p {
                display: none;
            }
        }
    }
}
.prices {
    padding: 120px 20px;
    background: var(--bg-5);
    .head {
        margin-bottom: 40px;
        .marker {
            display: inline-block;
            margin-bottom: 16px;
            padding: 8px 12px;
            border-radius: 8px;
            background: var(--bg-6);
            color: var(--text-6);
            font-size: 12px;
            font-weight: 500;
            line-height: 12px;
            text-transform: uppercase;
        }
        h2 {
            color: var(--text-5);
            font-size: 40px;
            font-weight: 800;
            line-height: 40px;
            letter-spacing: -0.8px;
        }
    }
    .table {
        overflow: hidden;
        border-radius: 16px;
        background: var(--bg-1);
    }
    table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
    }
    th, td {
        padding: 20px;
        text-align: left;
        vertical-align: middle;
        line-height: 19px;
        overflow-wrap: anywhere;
        &:nth-child(2) {
            width: 120px;
            padding-left: 0;
            padding-right: 12px;
        }
        &:last-child {
            width: 170px;
            padding-left: 0;
            text-align: right;
        }
    }
    thead {
        background: #eae6e3;
        th {
            color: var(--text-2);
            font-weight: 700;
        }
    }
    tbody {
        tr {
            border-bottom: var(--border-4);
            &:nth-child(odd) {
                background: rgba(255, 255, 255, 0.4);
            }
            &:last-child {
                border-bottom: 0;
            }
        }
        th {
            color: var(--text-2);
            font-weight: 500;
        }
        td:last-child {
            color: var(--text-4);
            font-size: 16px;
            font-weight: 700;
            line-height: 20px;
        }
    }
}
.portfolio.related {
    padding-bottom: 120px;
}
@media screen and (max-width: 1240px) {
    .service {
        padding-bottom: 80px;
        .background::after {
            background: linear-gradient(
                90deg,
                var(--bg-1),
                rgba(250, 249, 248, 0.85) 60%,
                rgba(250, 249, 248, 0.4)
            );
        }
        .head {
            h1 {
                font-size: 40px;
                line-height: 42px;
            }
        }
        .badges {
            gap: 20px 30px;
            .badge {
                flex: 1 1 280px;
            }
        }
    }
}
@media screen and (max-width: 768px) {
    .service {
        padding: 30px 16px 60px;
        .background::after {
            background: rgba(250, 249, 248, 0.9);
        }
        .head {
            gap: 16px;
            .markers {
                gap: 8px;
                span {
                    font-size: 10px;
                    line-height: 12px;
                }
            }
            h1 {
                font-size: 28px;
                line-height: 30px;
            }
            .description {
                p, strong, a, li {
                    font-size: 16px;
                    line-height: 24px;
                }
            }
        }
        .buttons {
            flex-direction: column;
            gap: 12px;
            margin-top: 24px;
            .btn, .btn-2 {
                justify-content: center;
                white-space: normal;
                text-align: center;
            }
        }
        .badges {
            margin-top: 24px;
            gap: 20px;
            .badge {
                flex: none;
                gap: 16px;
                h2 {
                    font-size: 14px;
                    line-height: 20px;
                }
            }
        }
    }
    .prices {
        padding: 60px 16px;
        .head {
            margin-bottom: 24px;
            .marker {
                font-size: 10px;
                line-height: 10px;
            }
            h2 {
                font-size: 24px;
                line-height: 26px;
                letter-spacing: -0.4px;
            }
        }
        th, td {
            padding: 14px 10px;
            font-size: 12px;
            line-height: 17px;
            &:nth-child(2) {
                width: 58px;
                padding-right: 6px;
            }
            &:last-child {
                width: 94px;
            }
        }
        tbody {
            td:last-child {
                font-size: 13px;
                line-height: 18px;
            }
        }
    }
    .portfolio.related {
        padding-bottom: 60px;
    }
}