*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background-image:url("images-grattages/font.webp");
    background-size:cover;
    background-position:center top;
    background-attachment:fixed;
    background-color:#08142b;
    color:#fff;
    font-family:Arial, Helvetica, sans-serif;
}

.page-header img{
    width:100%;
    display:block;
}

.menu{
    background:#000;
    border-top:1px solid #d4af37;
    border-bottom:1px solid #d4af37;
    text-align:center;
    padding:18px 10px;
}

.menu a{
    color:#ffd700;
    text-decoration:none;
    font-weight:bold;
    margin:0 13px;
    font-size:16px;
}

.menu a:hover{
    color:#fff;
}

.hero-seo,
.table-section,
.liens-utiles,
.seo-bingo{
    width:90%;
    max-width:1100px;
    margin:40px auto;
    padding:40px;
    background:rgba(0,15,50,.82);
    border:2px solid #d4af37;
    border-radius:22px;
    text-align:center;
    box-shadow:0 0 22px rgba(255,215,0,.20);
}

.hero-seo h1{
    color:#ffd700;
    font-size:38px;
    margin-bottom:22px;
    line-height:1.25;
}

.hero-seo p{
    font-size:20px;
    line-height:1.7;
    max-width:950px;
    margin:0 auto 22px;
}

.btn-action{
    display:inline-block;
    background:#ffd700;
    color:#000;
    padding:14px 30px;
    border-radius:35px;
    text-decoration:none;
    font-weight:bold;
    font-size:18px;
}

.btn-action:hover{
    background:#fff;
}


/* ================= BOUTONS DU HERO ================= */

.hero-buttons{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:16px;
    margin-top:25px;
}

.btn-fdj{
    background:linear-gradient(180deg,#ffd700,#e6b800);
}

.btn-fdj:hover{
    transform:translateY(-2px);
    box-shadow:0 0 18px rgba(255,215,0,.45);
}

.bingo-grid{
    width:90%;
    max-width:1200px;
    margin:50px auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}

.bingo-card{
    background:rgba(0,15,50,.84);
    border:2px solid #d4af37;
    border-radius:20px;
    padding:30px;
    text-align:center;
    box-shadow:0 0 18px rgba(255,215,0,.15);
}

.bingo-card:hover{
    box-shadow:0 0 24px rgba(255,215,0,.35);
}

.bingo-card h2,
.table-section h2,
.liens-utiles h2,
.seo-bingo h2{
    color:#ffd700;
    font-size:30px;
    margin-bottom:20px;
}

.bingo-card p{
    font-size:18px;
    line-height:1.75;
    margin-bottom:22px;
}

.bingo-card a,
.liens-grid a{
    display:inline-block;
    background:#ffd700;
    color:#000;
    padding:12px 24px;
    border-radius:30px;
    text-decoration:none;
    font-weight:bold;
}

.bingo-card a:hover,
.liens-grid a:hover{
    background:#fff;
}

.tableau-bingo{
    width:100%;
    border-collapse:collapse;
    margin-top:25px;
    background:rgba(0,0,0,.45);
}

.tableau-bingo th{
    background:#000;
    color:#ffd700;
    font-size:18px;
}

.tableau-bingo th,
.tableau-bingo td{
    border:1px solid #d4af37;
    padding:17px;
    text-align:center;
}

.tableau-bingo td{
    color:#fff;
    font-size:17px;
    line-height:1.5;
}

.liens-grid{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:15px;
    margin-top:25px;
}

.seo-bingo{
    text-align:left;
}

.seo-bingo h2{
    text-align:center;
    margin-top:28px;
}

.seo-bingo p{
    font-size:19px;
    line-height:1.9;
    margin-bottom:22px;
    text-align:justify;
}

.footer-site{
    background:#000;
    border-top:2px solid #d4af37;
    margin-top:60px;
    text-align:center;
    padding:40px 20px;
}

.footer-logos{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-bottom:20px;
}

.footer-logos img{
    height:25px;
    width:auto;
    display:block;
}

.footer-logos .logo-18{
    width:36px;
    height:36px;
    object-fit:contain;
    flex:0 0 36px;
}

.message-prevention{
    max-width:900px;
    margin:20px auto;
    padding:15px 0;
    border-top:1px solid #333;
    border-bottom:1px solid #333;
    font-size:16px;
    line-height:1.6;
}

.footer-liens{
    margin-top:25px;
}

.footer-liens a{
    color:#ffd700;
    text-decoration:none;
    font-weight:bold;
    margin:0 15px;
}

.footer-liens a:hover{
    color:#fff;
}

.copyright{
    margin-top:25px;
    color:#ccc;
}

@media(max-width:900px){
    .bingo-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:650px){

    .hero-buttons{
        flex-direction:column;
    }

    .hero-buttons .btn-action{
        width:100%;
        max-width:340px;
    }

    body{
        background-attachment:scroll;
    }

    .menu a{
        display:inline-block;
        margin:6px 8px;
        font-size:13px;
    }

    .hero-seo,
    .table-section,
    .liens-utiles,
    .seo-bingo{
        width:94%;
        padding:25px;
        margin:28px auto;
    }

    .hero-seo h1{
        font-size:27px;
    }

    .hero-seo p,
    .bingo-card p,
    .seo-bingo p{
        font-size:17px;
        text-align:left;
    }

    .bingo-grid{
        width:94%;
        grid-template-columns:1fr;
        gap:22px;
    }

    .bingo-card{
        padding:25px;
    }

    .bingo-card h2,
    .table-section h2,
    .liens-utiles h2,
    .seo-bingo h2{
        font-size:25px;
    }

    .tableau-bingo th,
    .tableau-bingo td{
        padding:10px 6px;
        font-size:14px;
    }

    .footer-liens a{
        display:inline-block;
        margin:6px 8px;
        font-size:14px;
    }
}
/* ================= FAQ ================= */

.faq-grattage{
    width:90%;
    max-width:1100px;
    margin:50px auto 60px;
}

.faq-grattage h2{
    color:#ffd700;
    text-align:center;
    font-size:32px;
    margin-bottom:35px;
}

.faq-item{
    background:rgba(0,15,50,.84);
    border:2px solid #d4af37;
    border-radius:18px;
    padding:24px;
    margin-bottom:22px;
    box-shadow:0 0 18px rgba(255,215,0,.15);
}

.faq-item h3{
    color:#ffd700;
    font-size:22px;
    margin-bottom:12px;
}

.faq-item p{
    color:#fff;
    font-size:18px;
    line-height:1.75;
}

@media(max-width:650px){

    .faq-grattage{
        width:94%;
        margin:30px auto 45px;
    }

    .faq-grattage h2{
        font-size:26px;
    }

    .faq-item{
        padding:20px;
    }

    .faq-item h3{
        font-size:20px;
    }

    .faq-item p{
        font-size:16px;
    }
}
/* ================= À DÉCOUVRIR ================= */

.a-decouvrir{
    width:90%;
    max-width:1100px;
    margin:50px auto 60px;
    padding:35px;
    background:rgba(0,15,50,.84);
    border:2px solid #d4af37;
    border-radius:20px;
    text-align:center;
    box-shadow:0 0 18px rgba(255,215,0,.15);
}

.a-decouvrir h2{
    color:#ffd700;
    font-size:30px;
    margin-bottom:25px;
}

.a-decouvrir-liens{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    margin-top:30px;
}

.a-decouvrir-liens a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:70px;

    background:rgba(5,22,60,.92);
    border:2px solid #d4af37;
    border-radius:16px;

    color:#ffffff;
    text-decoration:none;
    font-size:19px;
    font-weight:bold;

    transition:all .25s ease;
    box-shadow:0 8px 18px rgba(0,0,0,.35);
}

.a-decouvrir-liens a:hover{
    background:#d4af37;
    color:#000;
    transform:translateY(-3px);
    box-shadow:0 12px 24px rgba(212,175,55,.35);
}

@media(max-width:650px){

    .a-decouvrir{
        width:94%;
        padding:25px 18px;
        margin:30px auto 45px;
    }

    .a-decouvrir h2{
        font-size:26px;
    }

    .a-decouvrir-liens{
        grid-template-columns:1fr;
        gap:14px;
    }

    .a-decouvrir-liens a{
        min-height:60px;
        font-size:17px;
    }

}

/* ================= BANDEAU RÉGLEMENTAIRE ================= */

.bandeau-reglementaire{
    text-align:center;
    margin:6px auto 22px;
    max-width:1000px;
    padding:0 15px;
}

.bandeau-reglementaire img{
    display:block;
    width:100%;
    height:auto;
    margin:auto;
}

@media(max-width:650px){
    .bandeau-reglementaire{
        width:94%;
        margin:8px auto 20px;
        padding:0;
    }
}

@media(max-width:650px){
    .footer-logos{
        gap:14px;
    }

    .footer-logos .logo-18{
        width:34px;
        height:34px;
        flex-basis:34px;
    }
}

/* =========================================================
   NAVIGATION PREMIUM
   ========================================================= */
.menu{
display:flex;
justify-content:center;
align-items:center;
flex-wrap:wrap;
gap:6px;
padding:4px 10px;
background:#0a0b14;
border-top:1px solid #d4af37;
border-bottom:1px solid #d4af37;
}

.menu a{
display:inline-flex;
align-items:center;
justify-content:center;
height:30px;
padding:0 13px;
margin:0;
border-radius:6px;
font-size:13px;
font-weight:700;
color:#fff;
background:linear-gradient(180deg,#5f2c82 0%,#3f1d63 55%,#24103b 100%);
border:1px solid #8e68d8;
text-decoration:none;
box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 2px 6px rgba(0,0,0,.35);
transition:.18s;
}

.menu a:hover{
transform:translateY(-1px);
filter:brightness(1.08);
}

.menu a.active{
background:linear-gradient(180deg,#ffd85c,#ffb400 60%,#d98a00);
color:#111;
border-color:#ffe08a;
}

@media(max-width:650px){
.menu{gap:5px;padding:5px 6px;}
.menu a{
height:28px;
padding:0 10px;
font-size:12px;
border-radius:5px;
}
}