/* Style commun pages juridiques THF — JUR-006 v2 */
:root {
    --noir: #221A10;
    --ebene: #2E2318;
    --papier: #FAF6EE;
    --papier-fonce: #EDE4D0;
    --ivoire: #FBF8F2;
    --laiton: #9B7820;
    --laiton-clair: #C49A28;
    --ambre: #D4860A;
    --ink: #1a1208;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    font-family: "Cormorant Garamond", Georgia, serif;
    background: var(--papier);
    color: var(--ink);
    line-height: 1.7;
    font-size: 17px;
    min-height: 100vh;
}
.lang {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 100;
    display: flex;
    gap: 4px;
    background: rgba(34,26,16,0.92);
    border: 1px solid var(--laiton-clair);
    padding: 4px;
}
.lang button {
    background: transparent;
    color: var(--ivoire);
    border: none;
    padding: 8px 14px;
    font-family: "Cormorant Garamond", serif;
    font-size: 14px;
    letter-spacing: 2px;
    cursor: pointer;
    text-transform: uppercase;
    transition: all 0.2s ease;
}
.lang button.on {
    background: var(--ambre);
    color: var(--noir);
    font-weight: 500;
}
.lang button:hover:not(.on) { color: var(--laiton-clair); }
.topbar {
    background: var(--noir);
    color: var(--ivoire);
    padding: 22px 40px;
    text-align: center;
    border-bottom: 1px solid var(--laiton);
}
.topbar a.brand {
    color: var(--ivoire);
    text-decoration: none;
    font-size: 17px;
    letter-spacing: 6px;
    text-transform: uppercase;
}
.topbar a.brand:hover { color: var(--laiton-clair); }
.topbar a.brand em {
    color: var(--laiton-clair);
    font-style: italic;
    font-weight: 400;
    letter-spacing: 2px;
    margin-left: 10px;
}
main {
    max-width: 820px;
    margin: 0 auto;
    padding: 80px 40px 60px;
}
h1 {
    font-size: 44px;
    font-weight: 400;
    color: var(--noir);
    margin-bottom: 8px;
    line-height: 1.2;
    text-align: center;
}
.subtitle {
    text-align: center;
    color: var(--laiton);
    font-size: 14px;
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 56px;
}
h2 {
    font-size: 26px;
    font-weight: 500;
    color: var(--ink);
    margin: 48px 0 18px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--papier-fonce);
}
h3 {
    font-size: 19px;
    font-weight: 500;
    color: var(--laiton);
    margin: 30px 0 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
}
p { margin-bottom: 18px; }
strong { color: var(--ink); font-weight: 500; }
em { font-style: italic; color: var(--laiton); }
a {
    color: var(--laiton);
    text-decoration: none;
    border-bottom: 1px solid var(--laiton-clair);
    transition: all 0.2s ease;
}
a:hover { color: var(--ambre); border-bottom-color: var(--ambre); }
ul {
    margin: 16px 0 24px;
    padding-left: 26px;
}
ul li {
    margin-bottom: 8px;
    list-style-type: "— ";
    padding-left: 8px;
}
table {
    width: 100%;
    border-collapse: collapse;
    margin: 24px 0;
    font-size: 15px;
    background: var(--ivoire);
    border: 1px solid var(--papier-fonce);
}
table th,
table td {
    padding: 14px 16px;
    text-align: left;
    border-bottom: 1px solid var(--papier-fonce);
    vertical-align: top;
}
table th {
    background: var(--noir);
    color: var(--ivoire);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 13px;
}
table tr:last-child td { border-bottom: none; }
code {
    background: var(--papier-fonce);
    padding: 2px 8px;
    border-radius: 2px;
    font-family: "Courier New", monospace;
    font-size: 14px;
    color: var(--ink);
}
.intro {
    font-size: 19px;
    color: var(--ink);
    background: var(--ivoire);
    border-left: 3px solid var(--ambre);
    padding: 20px 28px;
    margin: 0 0 40px;
    font-style: italic;
}
footer {
    background: var(--noir);
    color: var(--ivoire);
    padding: 60px 40px 40px;
    margin-top: 80px;
    text-align: center;
}
footer .footer-links {
    display: flex;
    gap: 24px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 32px;
}
footer .footer-links a {
    color: var(--ivoire);
    border-bottom: 1px solid transparent;
    font-size: 14px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
footer .footer-links a:hover {
    color: var(--laiton-clair);
    border-bottom-color: var(--laiton-clair);
}
footer .footer-cookies {
    margin-top: 16px;
}
footer .footer-cookies button {
    background: transparent;
    color: var(--laiton-clair);
    border: 1px solid var(--laiton);
    padding: 10px 22px;
    font-family: "Cormorant Garamond", serif;
    font-size: 14px;
    letter-spacing: 2px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.2s ease;
}
footer .footer-cookies button:hover {
    background: var(--laiton-clair);
    color: var(--noir);
}
footer .signature {
    margin-top: 32px;
    color: rgba(251, 248, 242, 0.5);
    font-size: 13px;
    letter-spacing: 2px;
}
@media (max-width: 720px) {
    main { padding: 56px 22px 40px; }
    h1 { font-size: 32px; }
    h2 { font-size: 22px; }
    table th, table td { padding: 10px 12px; font-size: 13px; }
    .lang { top: 12px right: 12px; }
    .topbar { padding: 16px 22px; }
}
