.acc-legal-page #main { padding-top: 24px; }
.acc-legal {
    --legal-rule: #e3e3e3;
    max-width: 1180px;
    margin: 0 auto;
    padding: 52px 24px 88px;
    color: #000;
    font-family: "Dunant-Regular", var(--body_typography-font-family, sans-serif);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}
.acc-legal *, .acc-legal *::before, .acc-legal *::after { box-sizing: border-box; }
.acc-legal .acc-legal-header { padding-bottom: 36px; border-bottom: 1px solid var(--legal-rule); margin-bottom: 40px; }
.acc-legal .acc-legal-eyebrow { color: #626262; font-size: 14px; margin: 0 0 12px; }
.acc-legal h1 { font-size: 42px; line-height: 1.15; margin: 0 0 20px; color: #000; letter-spacing: 0; }
.acc-legal .acc-legal-intro { max-width: 760px; margin: 0 0 24px; }
.acc-legal .acc-legal-download { display: inline-flex; align-items: center; gap: 10px; color: #b90e0c; text-decoration: underline; text-underline-offset: 4px; font-size: 16px; }
.acc-legal .acc-legal-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 64px; align-items: start; }
.acc-legal .acc-legal-nav { position: sticky; top: 32px; max-height: calc(100dvh - 64px); overflow-y: auto; padding-right: 18px; }
.admin-bar .acc-legal .acc-legal-nav { top: 64px; max-height: calc(100dvh - 96px); }
.acc-legal summary { cursor: pointer; font-size: 18px; color: #000; padding: 0 0 12px; }
.acc-legal .acc-legal-nav ol { list-style: none; margin: 0; padding: 0; }
.acc-legal .acc-legal-nav li { margin: 0; padding: 0; }
.acc-legal .acc-legal-nav a { display: grid; grid-template-columns: 22px 1fr; gap: 8px; padding: 8px 0; color: #555; font-size: 14px; line-height: 1.45; text-decoration: none; }
.acc-legal .acc-legal-nav a span:first-child { color: #b90e0c; }
.acc-legal a:hover { color: #b90e0c; text-decoration: underline; text-underline-offset: 4px; }
.acc-legal a:focus-visible, .acc-legal summary:focus-visible { outline: 2px solid #b90e0c; outline-offset: 4px; }
.acc-legal .acc-legal-section { margin: 0 0 32px; padding: 0 0 32px; border-bottom: 1px solid var(--legal-rule); scroll-margin-top: 110px; }
.acc-legal .acc-legal-section:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.acc-legal h2 { margin: 0 0 22px; font-size: 26px; line-height: 1.3; color: #000; letter-spacing: 0; }
.acc-legal h2 span { color: #b90e0c; }
.acc-legal .acc-legal-section p { margin: 0 0 18px; color: #000; font-weight: 400; }
.acc-legal .acc-legal-section p:last-child { margin-bottom: 0; }
.acc-legal .acc-legal-section a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.acc-legal .acc-legal-clause { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 12px; }
.acc-legal .acc-legal-clause-number { color: #626262; font-variant-numeric: tabular-nums; }
.acc-legal .acc-legal-end { margin: 36px 0 0; padding-top: 20px; border-top: 1px solid var(--legal-rule); font-size: 14px; }
.acc-legal .acc-legal-end a { color: #555; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 1000px) {
    .acc-legal { padding: 36px 20px 64px; }
    .acc-legal .acc-legal-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
    .acc-legal .acc-legal-nav, .admin-bar .acc-legal .acc-legal-nav { position: static; max-height: none; padding: 16px 0; border-bottom: 1px solid var(--legal-rule); border-top: 1px solid var(--legal-rule); }
    .acc-legal .acc-legal-header { margin-bottom: 24px; border-bottom: 0; padding-bottom: 0; }
    .acc-legal .acc-legal-nav ol { columns: 2; column-gap: 32px; }
    .acc-legal .acc-legal-nav li { break-inside: avoid; }
    .acc-legal summary { padding-bottom: 0; }
    .acc-legal details[open] summary { padding-bottom: 12px; }
}
@media (max-width: 600px) {
    .acc-legal { padding: 20px 36px 48px 4px; font-size: 16px; line-height: 1.65; }
    .acc-legal h1, .acc-legal h2 { hyphens: auto; }
    .acc-legal h1 { font-size: 30px; }
    .acc-legal h2 { font-size: 23px; }
    .acc-legal .acc-legal-nav ol { columns: 1; }
    .acc-legal .acc-legal-nav a { padding: 11px 0; }
    .acc-legal .acc-legal-clause { grid-template-columns: 35px minmax(0, 1fr); column-gap: 8px; }
}
@media print {
    .fusion-tb-header, .fusion-tb-footer, .fusion-header-wrapper, .fusion-footer, #wpadminbar, #cmplz-manage-consent, .cmplz-cookiebanner, .acc-legal-nav, .acc-legal-download, .acc-legal-end { display: none !important; }
    .acc-legal { max-width: none; padding: 0; font-size: 11pt; }
    .acc-legal .acc-legal-layout { display: block; }
    .acc-legal h2 { break-after: avoid; }
    .acc-legal p { orphans: 3; widows: 3; }
}
