/* ===== ОБУЧЕНИЕ БИЛЬЯРДУ: РУССКИЙ БИЛЬЯРД И ПУЛ ===== */
/* Блок с видимым фоновым изображением, премиальный тёмный стиль */

.ob-games {
    position: relative;
    overflow: hidden;
    padding: 120px 0 128px;
    background: #080b0a;
    color: #f7f3ec;
}

/* Фоновое изображение */
.ob-games:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image: var(--ob-games-bg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: .66;
    filter: brightness(1.15) contrast(1.08) saturate(1.04);
    transform: scale(1.02);
    pointer-events: none;
}

/* Затемнение и атмосферные градиенты */
.ob-games__overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(7,8,7,.90) 0%, rgba(7,8,7,.64) 42%, rgba(7,8,7,.36) 100%),
        linear-gradient(180deg, rgba(7,8,7,.38) 0%, rgba(7,8,7,.80) 100%),
        radial-gradient(circle at 18% 26%, rgba(216, 177, 115, .20), transparent 30%),
        radial-gradient(circle at 84% 72%, rgba(62, 95, 68, .16), transparent 34%);
    pointer-events: none;
}

/* Лёгкая сетка как на других блоках */
.ob-games:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    background:
        linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 220px 220px;
    opacity: .26;
    pointer-events: none;
}

.ob-games__inner {
    position: relative;
    z-index: 4;
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 62px;
    align-items: center;
}

.ob-games__head {
    max-width: 620px;
}

.ob-games__kicker {
    display: inline-flex;
    align-items: center;
    margin-bottom: 18px;
    color: #d8b173;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .28em;
    text-transform: uppercase;
}

.ob-games__title {
    margin: 0;
    color: #f7f3ec;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(44px, 5.2vw, 74px);
    font-weight: 500;
    line-height: .96;
    letter-spacing: -.035em;
    text-transform: none;
    text-shadow: 0 18px 46px rgba(0,0,0,.42);
}

.ob-games__text {
    max-width: 600px;
    margin-top: 28px;
    color: rgba(247, 243, 236, .82);
    font-size: 18px;
    line-height: 1.76;
    text-shadow: 0 10px 28px rgba(0,0,0,.55);
}

/* Карточки направлений */
.ob-games__cards {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

/* Вертикальная линия между текстом и карточками */
.ob-games__cards:before {
    content: "";
    position: absolute;
    left: -31px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: linear-gradient(
        180deg,
        transparent,
        rgba(216, 177, 115, .36),
        transparent
    );
}

.ob-games-card {
    position: relative;
    min-height: 260px;
    padding: 36px 36px 34px;
    border: 1px solid rgba(216, 177, 115, .26);
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
        rgba(9, 11, 10, .70);
    box-shadow:
        0 24px 70px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.04);
    backdrop-filter: blur(3px);
    transition:
        transform .24s ease,
        border-color .24s ease,
        background .24s ease,
        box-shadow .24s ease;
}

.ob-games-card:hover {
    transform: translateY(-4px);
    border-color: rgba(216, 177, 115, .54);
    background:
        linear-gradient(180deg, rgba(216, 177, 115, .12), rgba(255,255,255,.024)),
        rgba(13, 15, 14, .86);
    box-shadow:
        0 32px 82px rgba(0,0,0,.42),
        inset 0 1px 0 rgba(255,255,255,.06);
}

.ob-games-card__label {
    display: inline-flex;
    align-items: center;
    margin-bottom: 26px;
    color: #d8b173;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .20em;
    text-transform: uppercase;
}

.ob-games-card__label:before {
    content: "";
    width: 32px;
    height: 1px;
    margin-right: 12px;
    background: #d8b173;
}

.ob-games-card__title {
    margin: 0 0 18px;
    color: #fff;
    font-family: "Manrope", Arial, sans-serif;
    font-size: 32px;
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

.ob-games-card__text {
    max-width: 620px;
    color: rgba(247, 243, 236, .76);
    font-size: 16px;
    line-height: 1.72;
}

/* ===== АДАПТИВ ===== */

@media (max-width: 1199px) {
    .ob-games__inner {
        gap: 48px;
    }

    .ob-games-card {
        padding: 32px 30px;
    }
}

@media (max-width: 991px) {
    .ob-games {
        padding: 88px 0 96px;
    }

    .ob-games:before {
        opacity: .56;
    }

    .ob-games__overlay {
        background:
            linear-gradient(180deg, rgba(7,8,7,.76) 0%, rgba(7,8,7,.88) 100%),
            radial-gradient(circle at 18% 20%, rgba(216, 177, 115, .16), transparent 32%),
            radial-gradient(circle at 86% 78%, rgba(62, 95, 68, .14), transparent 34%);
    }

    .ob-games__inner {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .ob-games__head {
        max-width: 820px;
    }

    .ob-games__title {
        font-size: 52px;
    }

    .ob-games__text {
        max-width: 760px;
    }

    .ob-games__cards:before {
        display: none;
    }

    .ob-games-card {
        min-height: auto;
    }
}

@media (max-width: 767px) {
    .ob-games {
        padding: 66px 0 74px;
    }

    .ob-games:before {
        opacity: .44;
        background-position: center center;
        filter: brightness(1.12) contrast(1.05) saturate(1.02);
    }

    .ob-games__overlay {
        background:
            linear-gradient(180deg, rgba(7,8,7,.82) 0%, rgba(7,8,7,.91) 100%),
            radial-gradient(circle at 70% 8%, rgba(216, 177, 115, .17), transparent 36%);
    }

    .ob-games:after {
        opacity: .18;
        background-size: 160px 160px;
    }

    .ob-games__inner {
        width: min(100% - 28px, 1180px);
        gap: 34px;
    }

    .ob-games__title {
        font-size: 39px;
        line-height: 1;
    }

    .ob-games__text {
        margin-top: 20px;
        font-size: 16px;
        line-height: 1.65;
    }

    .ob-games__cards {
        gap: 18px;
    }

    .ob-games-card {
        padding: 28px 22px 26px;
        background:
            linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.018)),
            rgba(9, 11, 10, .78);
    }

    .ob-games-card__label {
        margin-bottom: 20px;
    }

    .ob-games-card__title {
        font-size: 25px;
    }

    .ob-games-card__text {
        font-size: 15px;
        line-height: 1.62;
    }
}

@media (max-width: 420px) {
    .ob-games__inner {
        width: min(100% - 22px, 1180px);
    }

    .ob-games__title {
        font-size: 34px;
    }

    .ob-games__text {
        font-size: 15px;
    }

    .ob-games-card {
        padding: 24px 18px;
    }

    .ob-games-card__title {
        font-size: 22px;
    }

    .ob-games-card__label {
        font-size: 10px;
        letter-spacing: .16em;
    }

    .ob-games-card__label:before {
        width: 24px;
        margin-right: 10px;
    }
}