.legal h2 {
  margin-top: 30px;
  color: var(--green);
  font: 700 21px Arial, sans-serif;
}
.legal h3 { margin-top: 22px; font: 700 16px Arial, sans-serif; }
.legal p, .legal li { color: #c3cac3; }
.legal .legal-meta { padding: 10px; border: 1px dashed #515951; color: #9ea69e; }
.privacy-settings { padding: 0; border: 0; background: none; color: var(--green); font: inherit; cursor: pointer; }
.privacy-settings:hover { text-decoration: underline; }
.faq-list { display: grid; gap: 9px; margin-top: 24px; }
.faq-list details { border: 1px solid #4e574e; background: #080a08; box-shadow: inset 1px 1px #242a24, 2px 2px #000; }
.faq-list summary { padding: 15px 42px 15px 15px; color: var(--green); font-weight: 700; cursor: pointer; position: relative; }
.faq-list summary::after { content: "+"; position: absolute; right: 15px; font-size: 20px; line-height: 1; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { margin: 0; padding: 0 15px 16px; }
.faq-contact { margin-top: 24px; padding-top: 18px; border-top: 1px dashed #515951; }
.consent[hidden] { display: none; }
.consent { position: fixed; z-index: 120; inset: 0; display: grid; place-items: end center; padding: 18px; background: #0008; }
.consent-box { width: min(720px, 100%); padding: 20px; background: #101310; border: 1px solid #788078; box-shadow: inset 1px 1px #abb2ab, 5px 5px #000; }
.consent-box strong { color: var(--green); font: 700 20px Arial, sans-serif; }
.consent-box p { color: #d1d7d1; }
.consent-box > div { display: flex; gap: 10px; margin-bottom: 12px; }
.consent-box button:not(.button) { padding: 10px 14px; border: 2px outset #aaa; background: #e8ede4; color: #050505; font-weight: bold; cursor: pointer; }
.consent-kicker { display: block; margin-bottom: 7px; color: #9ba49b; font-size: 12px; letter-spacing: .08em; }
.consent-box #consent-title { display: block; font-size: clamp(22px, 4vw, 30px); line-height: 1.05; }
.consent-box .consent-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 18px 0 12px; }
.consent-box .consent-actions button { min-height: 48px; width: 100%; }
.consent-box .consent-actions .consent-reject { border: 2px solid #929a92; background: #151915; color: #f1f4ef; box-shadow: 2px 2px #000; text-shadow: none; }
.consent-box small { color: #aeb6ae; }
.consent-benefits { display: flex; flex-wrap: wrap; gap: 7px; margin: 14px 0 4px; padding: 0; list-style: none; }
.consent-benefits li { padding: 5px 8px; border: 1px solid #465046; background: #080a08; color: #cdd4cd; font-size: 12px; }
.consent-benefits li::before { content: "✓ "; color: var(--green); font-weight: 900; }
.detail-domain > div { display: grid; gap: 5px; min-width: 0; }
.detail-domain > div > span { display: block; color: #9aa39a; font-size: 12px; line-height: 1.2; }
.detail-domain > div > strong { display: block; font-size: 18px; line-height: 1.25; }
@media (max-width: 760px) { .consent-box > div { display: grid; } }
@media (max-width: 520px) { .consent-box .consent-actions { grid-template-columns: 1fr; } }
