/**
 * Page Mentions Légales - Styles spécifiques
 * wp-content/themes/custom-theme/src/assets/css/mentions-legales/mentions-legales.css
 */

/* ====================================
   📄 SECTION MENTIONS LÉGALES
   ==================================== */
.mentions-legales-section {
    padding: var(--space-xxl) 0;
    background: var(--white);
    min-height: 80vh;
}

.mentions-legales-container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 var(--container-padding);
    width: 100%;
}

/* ====================================
   📝 CONTENU
   ==================================== */
.mentions-legales-content {
    max-width: 100%;
    margin: 0 auto;
}

/* Titres dans le contenu */
.mentions-legales-content h1 {
    font-family: var(--font-primary);
    font-size: var(--h1-size);
    font-weight: 900;
    color: var(--dark);
    margin-bottom: var(--space-lg);
    line-height: var(--h1-line-height);
}

.mentions-legales-content h2 {
    font-family: var(--font-primary);
    font-size: var(--h2-size);
    font-weight: 800;
    color: var(--dark);
    margin-top: var(--space-xl);
    margin-bottom: var(--space-md);
    line-height: var(--h2-line-height);
}

.mentions-legales-content h3 {
    font-family: var(--font-primary);
    font-size: var(--h3-size);
    font-weight: 700;
    color: var(--dark);
    margin-top: var(--space-lg);
    margin-bottom: var(--space-sm);
    line-height: var(--h3-line-height);
}

.mentions-legales-content h4 {
    font-family: var(--font-primary);
    font-size: var(--h4-size);
    font-weight: 600;
    color: var(--dark);
    margin-top: var(--space-md);
    margin-bottom: var(--space-sm);
}

/* Paragraphes */
.mentions-legales-content p {
    font-family: var(--font-inter);
    font-size: var(--p-size);
    line-height: var(--p-line-height);
    color: var(--dark);
    margin-bottom: var(--space-md);
    font-weight: 300;
}

/* Listes */
.mentions-legales-content ul,
.mentions-legales-content ol {
    font-family: var(--font-inter);
    font-size: var(--p-size);
    line-height: var(--p-line-height);
    color: var(--dark);
    margin-bottom: var(--space-md);
    padding-left: var(--space-lg);
    font-weight: 300;
}

.mentions-legales-content ul li,
.mentions-legales-content ol li {
    margin-bottom: var(--space-xs);
}

/* Liens */
.mentions-legales-content a {
    color: var(--primary);
    text-decoration: none;
    font-weight: 500;
    transition: color var(--transition-fast);
}

.mentions-legales-content a:hover {
    color: var(--coral);
    text-decoration: underline;
}

/* Strong */
.mentions-legales-content strong {
    font-weight: 700;
    color: var(--dark);
}

/* Em */
.mentions-legales-content em {
    font-style: italic;
}

/* Blockquote */
.mentions-legales-content blockquote {
    border-left: 4px solid var(--primary);
    padding-left: var(--space-md);
    margin: var(--space-lg) 0;
    font-style: italic;
    color: var(--gray-dark);
}

/* Tables */
.mentions-legales-content table {
    width: 100%;
    border-collapse: collapse;
    margin: var(--space-lg) 0;
    font-family: var(--font-inter);
    font-size: var(--p-size);
}

.mentions-legales-content table th,
.mentions-legales-content table td {
    padding: var(--space-sm);
    text-align: left;
    border-bottom: 1px solid var(--gray-light);
}

.mentions-legales-content table th {
    font-weight: 700;
    color: var(--dark);
    background: var(--gray-light);
}

.mentions-legales-content table td {
    font-weight: 300;
}

/* HR */
.mentions-legales-content hr {
    border: none;
    border-top: 2px solid var(--gray-light);
    margin: var(--space-xl) 0;
}

/* ====================================
   📱 RESPONSIVE
   ==================================== */

/* 1440px */
@media (max-width: 1440px) {
    .mentions-legales-section {
        padding: calc(var(--space-xxl) * 0.9) 0;
    }

    .mentions-legales-content {
        max-width: 800px;
    }
}

/* 1280px */
@media (max-width: 1280px) {
    .mentions-legales-section {
        padding: calc(var(--space-xxl) * 0.8) 0;
    }

    .mentions-legales-content {
        max-width: 750px;
    }
}

/* Tablettes */
@media (max-width: 1024px) {
    .mentions-legales-section {
        padding: var(--space-xl) 0;
    }

    .mentions-legales-content {
        max-width: 100%;
    }

    .mentions-legales-content h2 {
        margin-top: var(--space-lg);
    }

    .mentions-legales-content h3 {
        margin-top: var(--space-md);
    }
}

/* Mobile */
@media (max-width: 768px) {
    .mentions-legales-section {
        padding: var(--space-lg) 0;
        min-height: auto;
    }

    .mentions-legales-content h1 {
        margin-bottom: var(--space-md);
    }

    .mentions-legales-content h2 {
        margin-top: var(--space-md);
        margin-bottom: var(--space-sm);
    }

    .mentions-legales-content h3 {
        margin-top: var(--space-sm);
    }

    .mentions-legales-content p,
    .mentions-legales-content ul,
    .mentions-legales-content ol {
        margin-bottom: var(--space-sm);
    }

    .mentions-legales-content ul,
    .mentions-legales-content ol {
        padding-left: var(--space-md);
    }

    .mentions-legales-content blockquote {
        padding-left: var(--space-sm);
        margin: var(--space-md) 0;
    }

    .mentions-legales-content table {
        font-size: calc(var(--p-size) * 0.9);
    }

    .mentions-legales-content table th,
    .mentions-legales-content table td {
        padding: var(--space-xs);
    }
}

/* Petit mobile */
@media (max-width: 480px) {
    .mentions-legales-section {
        padding: var(--space-md) 0;
    }

    .mentions-legales-content h1 {
        font-size: 40px;
        line-height: 45px;
    }

    .mentions-legales-content ul,
    .mentions-legales-content ol {
        padding-left: var(--space-sm);
    }

    .mentions-legales-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* ====================================
   🎭 OPTIMISATION PERFORMANCE
   ==================================== */
.mentions-legales-content {
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
}

.mentions-legales-section {
    contain: layout style;
}