/* =====================================================
   DEVSTUDIO RGPD
   Design cohérent Webarki / App Premium
===================================================== */


/* =====================================================
   COOKIE BANNER
===================================================== */


.rgpd-banner {

    position: fixed;

    left: 50%;
    bottom: 30px;

    transform: translateX(-50%);

    width: min(92%, 720px);

    background: #ffffff;

    color: #111827;

    border-radius: 24px;

    padding: 28px;

    box-shadow:
        0 25px 80px rgba(0,0,0,.18);

    border:1px solid rgba(0,0,0,.06);

    z-index:99999;

}


.rgpd-content h3 {

    margin:0 0 12px;

    font-size:1.35rem;

    font-weight:700;

    color:#111827;

}


.rgpd-content p {

    color:#4b5563;

    line-height:1.7;

    margin:0;

}


.rgpd-actions {

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-top:24px;

}



/* Boutons */


.rgpd-actions button,
.rgpd-btn {


    border:none;

    border-radius:999px;

    padding:13px 25px;

    font-weight:600;

    cursor:pointer;

    transition:.25s ease;

}



.rgpd-actions button:hover,
.rgpd-btn:hover {


    transform:translateY(-2px);

}



/* Accepter */


.rgpd-actions button:first-child,
.rgpd-btn-primary {


    background:#111827;

    color:white;

}



/* Refuser / secondaire */


.rgpd-actions button:not(:first-child) {


    background:#f3f4f6;

    color:#111827;

}




/* =====================================================
   MODAL PREFERENCES
===================================================== */


.rgpd-modal {


    display:none;

    position:fixed;

    inset:0;

    background:
    rgba(15,23,42,.55);

    backdrop-filter:blur(8px);

    z-index:100000;

    align-items:center;

    justify-content:center;

    padding:20px;

}



.rgpd-modal.is-visible {

    display:flex;

}




.rgpd-modal__content {


    width:min(95%,520px);

    background:white;

    color:#111827;

    border-radius:28px;

    padding:35px;

    box-shadow:
    0 30px 100px rgba(0,0,0,.25);

}





.rgpd-close {


    position:absolute;

    right:25px;

    top:20px;

    background:none;

    border:none;

    font-size:30px;

    cursor:pointer;

    color:#111827;

}




.rgpd-option {


    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px 0;

    border-bottom:1px solid #e5e7eb;

}



.rgpd-option span {


    color:#6b7280;

}




/* =====================================================
   PAGES LEGALES
===================================================== */


.legal-page {


    max-width:1000px;

    margin:auto;

    padding:

    clamp(100px,12vw,150px)

    20px

    120px;


}



/* Header */


.legal-page__header {


    text-align:center;

    margin-bottom:60px;

}



.legal-page__header h1 {


    font-size:

    clamp(2.4rem,5vw,4rem);


    line-height:1.1;

    font-weight:800;

    color:#111827;

    margin-bottom:20px;

}



.legal-page__header p {


    max-width:650px;

    margin:auto;

    color:#64748b;

    font-size:1.1rem;

    line-height:1.7;

}





/* Carte contenu */


.legal-page__content {


    background:#ffffff;


    border-radius:30px;


    padding:

    clamp(25px,5vw,60px);



    box-shadow:

    0 20px 60px rgba(15,23,42,.08);


    border:

    1px solid rgba(15,23,42,.06);

}




/* Titres */


.legal-page__content h1 {


    font-size:2.2rem;

    color:#111827;

    margin-bottom:30px;

}



.legal-page__content h2 {


    margin-top:45px;

    margin-bottom:15px;


    font-size:1.5rem;

    color:#111827;

}





/* Texte */


.legal-page__content p {


    color:#475569;

    line-height:1.8;

    margin-bottom:20px;

}



.legal-page__content li {


    color:#475569;

    margin-bottom:10px;

}




/* Liens */


.legal-page__content a {


    color:#2563eb;

    text-decoration:none;

}



.legal-page__content a:hover {


    text-decoration:underline;

}




/* Encadré */


.legal-box {


    margin:35px 0;

    padding:25px;


    border-radius:20px;


    background:#f8fafc;


    border-left:

    4px solid #2563eb;

}




/* =====================================================
   Bouton gestion cookies
===================================================== */


.rgpd-manage-wrapper {


    margin:40px 0;

}



.rgpd-manage-wrapper button {


    display:inline-flex;

    align-items:center;

    gap:10px;


    background:#111827;

    color:white;


    padding:14px 28px;


    border-radius:999px;


    border:none;


    cursor:pointer;


    font-weight:600;


    transition:.3s ease;

}



.rgpd-manage-wrapper button:hover {


    transform:translateY(-3px);

}





/* =====================================================
   MOBILE
===================================================== */


@media(max-width:768px){


    .rgpd-banner {


        bottom:90px;

        width:calc(100% - 30px);

        padding:22px;

        border-radius:22px;

    }



    .rgpd-actions {


        flex-direction:column;

    }


    .rgpd-actions button {


        width:100%;

    }



    .legal-page {


        padding-top:90px;

        padding-bottom:160px;

    }



    .legal-page__content {


        border-radius:22px;

        padding:25px;

    }



}