body { font-family: 'Outfit', Arial, sans-serif; }
body h2 { font-family: 'Cormorant Garamond', Georgia, serif; }
.legal-page .navbar.bg-body-tertiary { position: relative; top: auto; left: auto; transform: none; background-color: #1f2732 !important; }
.legal-content { max-width: 960px; line-height: 1.7; }
.legal-content h2 { margin-top: 2rem; }
.legal-content a { color: #725619; }
.cookie-text-button { border: 0; background: none; padding: 0; text-decoration: underline; font: inherit; }
.cookie-launcher { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 10001; width: 52px; height: 52px; border-radius: 50%; border: 2px solid #ccaa60; background: #1f2732; color: #ccaa60; display: grid; place-items: center; box-shadow: 0 3px 14px #0004; }
.cookie-launcher[hidden], .cookie-banner[hidden] { display: none; }
.cookie-banner { position: fixed; bottom: 1.25rem; left: 1.25rem; z-index: 10000; width: min(620px, calc(100% - 100px)); padding: 1.5rem; background: #fff; color: #1f2732; border: 1px solid #ccaa60; box-shadow: 0 4px 24px #0003; max-height: calc(100dvh - 2.5rem); overflow-y: auto; }
.cookie-banner h2, .cookie-dialog h2 { font: 600 1.4rem 'Outfit', Arial, sans-serif; }
.cookie-banner a, .cookie-dialog a { color: #725619; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.cookie-button { border: 1px solid #1f2732; background: #1f2732; color: #fff; padding: .75rem 1rem; font: inherit; cursor: pointer; }
.cookie-button:hover { background: #3b434e; }
.cookie-button-secondary { color: #1f2732; background: #fff; }
.cookie-button-secondary:hover { background: #f1f1f1; }
.cookie-dialog { border: 1px solid #ccaa60; width: min(640px, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); padding: 1.5rem; color: #1f2732; }
.cookie-dialog::backdrop { background: #161d27b3; }
.cookie-dialog-header { display: flex; justify-content: space-between; align-items: start; gap: 1rem; }
.cookie-close { background: none; border: 0; font-size: 1.75rem; line-height: 1; padding: .25rem; }
.cookie-option { border-top: 1px solid #d7d7d7; padding-top: 1rem; margin-top: 1rem; }
.cookie-option label { display: flex; gap: .75rem; align-items: center; font-weight: 600; }
.cookie-option input { width: 1.25rem; height: 1.25rem; flex-shrink: 0; accent-color: #725619; }
.cookie-option p { margin-top: .5rem; }
.cookie-error { color: #a11616; }
.cookie-launcher:focus-visible, .cookie-button:focus-visible, .cookie-close:focus-visible, .cookie-text-button:focus-visible { outline: 3px solid #a87915; outline-offset: 3px; }
@media (max-width: 575px) {
    .cookie-banner { left: .75rem; bottom: 5rem; width: calc(100% - 1.5rem); max-height: calc(100dvh - 6rem); padding: 1rem; }
    .cookie-actions { flex-direction: column; }
    .cookie-actions button { width: 100%; }
}
