/* Pages légales (cookies, confidentialité, CGV) — alignement design site */

/* Fond cream uniforme sur toute la page (body + tous les wrappers Kadence) */
html:has(body.page-id-6762),
html:has(body.page-id-6759),
html:has(body.page-id-6752),
body.page-id-6762,
body.page-id-6759,
body.page-id-6752 {
    background: #fff9ef !important;
}
body.page-id-6762 .site,
body.page-id-6762 #wrapper,
body.page-id-6762 .content-wrap,
body.page-id-6762 #main,
body.page-id-6762 .site-main,
body.page-id-6762 .content-container,
body.page-id-6762 article,
body.page-id-6762 article.post,
body.page-id-6762 .entry-content,
body.page-id-6759 .site,
body.page-id-6759 #wrapper,
body.page-id-6759 .content-wrap,
body.page-id-6759 #main,
body.page-id-6759 .site-main,
body.page-id-6759 .content-container,
body.page-id-6759 article,
body.page-id-6759 article.post,
body.page-id-6759 .entry-content,
body.page-id-6752 .site,
body.page-id-6752 #wrapper,
body.page-id-6752 .content-wrap,
body.page-id-6752 #main,
body.page-id-6752 .site-main,
body.page-id-6752 .content-container,
body.page-id-6752 article,
body.page-id-6752 article.post,
body.page-id-6752 .entry-content {
    background: #fff9ef !important;
}

/* Masque l'entry-header Kadence par défaut sur les 3 pages */
body.page-id-6762 .entry-hero,
body.page-id-6762 .entry-header,
body.page-id-6762 .page-title,
body.page-id-6759 .entry-hero,
body.page-id-6759 .entry-header,
body.page-id-6759 .page-title,
body.page-id-6752 .entry-hero,
body.page-id-6752 .entry-header,
body.page-id-6752 .page-title {
    display: none !important;
}

/* Annule les contraintes de l'entry-content sur ces pages */
body.page-id-6762 .entry-content,
body.page-id-6759 .entry-content,
body.page-id-6752 .entry-content,
body.page-id-6762 article.post,
body.page-id-6759 article.post,
body.page-id-6752 article.post {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
}

/* Annule l'ombre portee Kadence sur article.entry */
body.page-id-6762 article.entry,
body.page-id-6759 article.entry,
body.page-id-6752 article.entry {
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Section legal */
.legal {
    padding: 30px 0 80px !important;
    background: #fff9ef;
}
.legal .container {
    max-width: 880px;
    margin: 0 auto;
    padding: 0 24px;
}
.legal-content {
    font-family: 'Montserrat', system-ui, sans-serif;
    font-size: 15px;
    line-height: 1.7;
    color: #2a1a08;
}
.legal-content h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 30px;
    line-height: 1.3;
    margin: 2em 0 0.5em;
    color: #1a0f08;
    font-weight: 500;
    letter-spacing: 0;
}
.legal-content h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    line-height: 1.4;
    margin: 1.6em 0 0.4em;
    color: #1a0f08;
    font-weight: 500;
}
.legal-content p {
    margin: 0 0 1em;
}
.legal-content a {
    color: #a4502a;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.legal-content a:hover {
    color: #1a0f08;
}
.legal-content ul,
.legal-content ol {
    padding-left: 1.5em;
    margin: 0 0 1em;
}
.legal-content li {
    margin-bottom: 0.3em;
}

/* Document Complianz embarqué */
.legal-content #cmplz-document {
    font-family: 'Montserrat', system-ui, sans-serif;
}
.legal-content #cmplz-document h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 28px !important;
    line-height: 1.3 !important;
    margin: 1.8em 0 0.5em !important;
    color: #1a0f08 !important;
    font-weight: 500 !important;
}
.legal-content #cmplz-document h3,
.legal-content #cmplz-document h4 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 20px !important;
    line-height: 1.4 !important;
    color: #1a0f08 !important;
    font-weight: 500 !important;
}
.legal-content #cmplz-document p,
.legal-content #cmplz-document li {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #2a1a08 !important;
}
.legal-content #cmplz-document a {
    color: #a4502a !important;
}

/* Tableaux cookies */
.legal-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0 1.5em;
    font-size: 14px;
}
.legal-content table th {
    background: #efe1cf !important;
    text-align: left;
    padding: 0.6em 0.8em;
    font-family: 'Montserrat', system-ui, sans-serif;
    font-weight: 600;
}
.legal-content table td {
    background: #f3efe6 !important;
    padding: 0.6em 0.8em;
    border-top: 1px solid #fff9ef;
}
.legal-content summary.cmplz-service-header,
.legal-content .purpose,
.legal-content .name,
.legal-content .retention,
.legal-content .function {
    background: #f3efe6 !important;
}
.legal-content .name-header,
.legal-content .retention-header,
.legal-content .function-header {
    background-color: #efe1cf !important;
}

/* Responsive — typo : 15 / 14 / 13.4 px */
@media (max-width: 980px) {
    .legal-content { font-size: 14px; }
    .legal-content #cmplz-document p,
    .legal-content #cmplz-document li { font-size: 14px !important; }
}
@media (max-width: 585px) {
    .legal-content { font-size: 13.4px; }
    .legal-content #cmplz-document p,
    .legal-content #cmplz-document li { font-size: 13.4px !important; }
    .legal .container { padding: 0 !important; }
    .legal-content h2 { font-size: 24px; }
    .legal-content #cmplz-document h2 { font-size: 22px !important; }
}

/* Tableaux Complianz — grille adaptative pour les en-têtes de service */
@media (max-width: 768px) {
    .legal-content #cmplz-document summary.cmplz-service-header > div {
        grid-template-columns: minmax(0, 1fr) auto 0 0 25px !important;
        gap: 12px !important;
        align-items: center !important;
    }
    .legal-content #cmplz-document summary.cmplz-service-header h3 {
        font-size: 16px !important;
        line-height: 1.3 !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        margin: 0 !important;
    }
    .legal-content #cmplz-document summary.cmplz-service-header p {
        font-size: 12px !important;
        line-height: 1.3 !important;
        margin: 0 !important;
        color: #8a7a6b !important;
        text-align: right;
    }
}

/* Stack vertical du nom + finalité sous 480 */
@media (max-width: 480px) {
    .legal-content #cmplz-document summary.cmplz-service-header > div {
        grid-template-columns: minmax(0, 1fr) 25px !important;
        grid-template-areas: "name caret" "purpose caret" !important;
        gap: 2px 12px !important;
    }
    .legal-content #cmplz-document summary.cmplz-service-header h3 {
        grid-area: name !important;
        font-size: 15px !important;
    }
    .legal-content #cmplz-document summary.cmplz-service-header p {
        grid-area: purpose !important;
        font-size: 12px !important;
        text-align: left !important;
    }
    .legal-content #cmplz-document summary.cmplz-service-header label,
    .legal-content #cmplz-document summary.cmplz-service-header input {
        display: none !important;
    }
}

/* ════════════════════════════════════════════════════════════════════
   Page-header (eyebrow + titre + intro + ornement) — alignement sur la
   page contact (page-id-150) pour cohérence des paddings, à toutes les
   tailles d'écran.
   ════════════════════════════════════════════════════════════════════ */
body.page-id-6762 .page-header-eyebrow,
body.page-id-6759 .page-header-eyebrow,
body.page-id-6752 .page-header-eyebrow { margin-bottom: 4px !important; }
body.page-id-6762 .page-header-title,
body.page-id-6759 .page-header-title,
body.page-id-6752 .page-header-title { margin-bottom: 12px !important; }
body.page-id-6762 .page-header-intro,
body.page-id-6759 .page-header-intro,
body.page-id-6752 .page-header-intro { margin-bottom: 22px !important; }
body.page-id-6762 .page-header,
body.page-id-6759 .page-header,
body.page-id-6752 .page-header { padding-bottom: 12px !important; }

/* ════════════════════════════════════════════════════════════════════
   Page-header v2 — fix de 3 écarts mesurés par probe (2026-06-14) pour
   coller exactement sur la page Contact à toutes tailles :
   1) title margin-top : .single-content h1 (Kadence default sur pages WP)
      injecte 1.5em parasite → kill.
   2) header margin-bottom : 8 < 1100, 0 >= 1100 (comportement Contact).
   3) header padding-top : 80px sous 585 (Contact mobile).
   ════════════════════════════════════════════════════════════════════ */
body.page-id-6762 .page-header-title,
body.page-id-6759 .page-header-title,
body.page-id-6752 .page-header-title { margin-top: 0 !important; }

body.page-id-6762 .page-header,
body.page-id-6759 .page-header,
body.page-id-6752 .page-header { margin-bottom: 8px !important; }

@media (min-width: 1100px) {
  body.page-id-6762 .page-header,
  body.page-id-6759 .page-header,
  body.page-id-6752 .page-header { margin-bottom: 0 !important; }
}

@media (max-width: 585px) {
  body.page-id-6762 .page-header,
  body.page-id-6759 .page-header,
  body.page-id-6752 .page-header { padding-top: 80px !important; }
}
