﻿
/* =========================================
   SERAFIM SOFTWARE - PAGINA DE JOGOS
========================================= */

.jogos-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

/* HERO */

.jogos-hero {
    position: relative;
    overflow: hidden;
    padding: 115px 0 125px;
    background: radial-gradient(circle at 80% 20%, rgba(117, 83, 223, 0.12), transparent 30%), radial-gradient(circle at 15% 80%, rgba(40, 120, 237, 0.10), transparent 35%), #f7f9fe;
}

    .jogos-hero .jogos-container {
        position: relative;
        z-index: 1;
    }

.jogos-etiqueta {
    display: inline-block;
    margin-bottom: 25px;
    padding: 9px 15px;
    border: 1px solid rgba(40, 120, 237, 0.20);
    border-radius: 30px;
    background: rgba(40, 120, 237, 0.07);
    color: #2878ed;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.jogos-hero h1 {
    max-width: 850px;
    margin: 0 0 24px;
    color: #17243d;
    font-size: clamp(38px, 6vw, 68px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -2px;
}

    .jogos-hero h1 span {
        display: block;
        color: #2878ed;
    }

.jogos-hero p {
    max-width: 650px;
    margin-bottom: 35px;
    color: #71819b;
    font-size: 17px;
    line-height: 1.8;
}

.jogos-botao {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 25px;
    border-radius: 9px;
    background: linear-gradient(100deg, #2878ed, #7553df);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(40, 120, 237, 0.20);
    transition: transform .25s ease, box-shadow .25s ease;
}

    .jogos-botao:hover {
        color: #fff;
        transform: translateY(-3px);
        box-shadow: 0 15px 30px rgba(40, 120, 237, 0.28);
    }

/* CATALOGO */

.jogos-catalogo {
    padding: 100px 0 115px;
    background: #fff;
}

.jogos-titulo-secao {
    max-width: 650px;
    margin: 0 auto 55px;
    text-align: center;
}

    .jogos-titulo-secao > span {
        color: #2878ed;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 2px;
    }

    .jogos-titulo-secao h2 {
        margin: 15px 0;
        color: #17243d;
        font-size: clamp(30px, 4vw, 43px);
        font-weight: 800;
        letter-spacing: -1px;
    }

    .jogos-titulo-secao p {
        color: #71819b;
        font-size: 16px;
        line-height: 1.8;
    }

/* CARDS */

.jogos-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.jogo-card {
    overflow: hidden;
    border: 1px solid #e5ecf6;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 35px rgba(23, 36, 61, 0.05);
    transition: transform .3s ease, box-shadow .3s ease;
}

    .jogo-card:hover {
        transform: translateY(-8px);
        box-shadow: 0 18px 45px rgba(23, 36, 61, 0.11);
    }

.jogo-imagem {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 220px;
    padding: 22px;
    overflow: hidden;
}

    .jogo-imagem::before {
        position: absolute;
        inset: 0;
        content: "";
        opacity: .9;
        transition: transform .5s ease;
    }

.jogo-card:hover .jogo-imagem::before {
    transform: scale(1.08);
}

.jogo-imagem span {
    position: relative;
    z-index: 1;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 30px;
    background: rgba(255, 255, 255, .15);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
    backdrop-filter: blur(8px);
}

.jogo-imagem-onibus::before {
    background: radial-gradient(circle at 75% 25%, rgba(85, 175, 255, .75), transparent 30%), linear-gradient(135deg, #102d4c, #1766a5 55%, #17243d);
}

.jogo-imagem-space::before {
    background: radial-gradient(circle at 70% 25%, rgba(185, 145, 255, .8), transparent 25%), radial-gradient(circle at 25% 70%, rgba(65, 120, 240, .5), transparent 30%), linear-gradient(135deg, #171334, #39316f 55%, #17243d);
}

.jogo-imagem-oceanic::before {
    background: radial-gradient(circle at 75% 25%, rgba(75, 190, 220, .7), transparent 30%), linear-gradient(135deg, #092c43, #126b85 55%, #17243d);
}

.jogo-conteudo {
    padding: 27px 25px 30px;
}

.jogo-categoria {
    color: #2878ed;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.jogo-conteudo h3 {
    min-height: 55px;
    margin: 13px 0;
    color: #17243d;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.jogo-conteudo p {
    min-height: 110px;
    margin-bottom: 25px;
    color: #71819b;
    font-size: 14px;
    line-height: 1.8;
}

.jogo-status {
    display: inline-block;
    padding: 9px 12px;
    border: 1px solid rgba(117, 83, 223, .18);
    border-radius: 6px;
    background: rgba(117, 83, 223, .07);
    color: #7553df;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

/* RESPONSIVIDADE */

@media (max-width: 900px) {
    .jogos-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .jogos-hero {
        padding: 85px 0;
    }

        .jogos-hero h1 {
            letter-spacing: -1px;
        }

    .jogos-catalogo {
        padding: 75px 0;
    }

    .jogos-grid {
        grid-template-columns: 1fr;
    }

    .jogo-imagem {
        min-height: 200px;
    }

    .jogo-conteudo h3,
    .jogo-conteudo p {
        min-height: auto;
    }
}
