.cookie-banner { position: fixed; z-index: 30; right: 20px; bottom: 20px; width: min(540px, calc(100% - 40px)); padding: 22px; background: #242424; color: #fff; box-shadow: 0 12px 40px rgba(0,0,0,.28); }
.cookie-banner h2 { margin: 0 0 8px; font: 700 1.45rem 'Playfair Display', serif; }.cookie-banner p { margin: 0; color: #dedede; font-size: .8rem; line-height: 1.55; }.cookie-banner a { color: #fff; text-decoration: underline; }.cookie-actions { display: flex; gap: 10px; margin-top: 18px; }.cookie-actions .outline { border-color: #aaa; color: #fff; }.cookie-actions .primary { background: #fff; border-color: #fff; color: #242424; }.cookie-settings { appearance: none; margin: 0; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; font: inherit; text-decoration: underline; }.privacy-check { display: flex; align-items: flex-start; gap: 8px; font-size: .72rem; font-weight: 500; }.privacy-check input { width: auto; margin: 3px 0 0; }.privacy-check a { color: var(--ink); text-decoration: underline; }
.legal-page { padding: 70px 0 90px; }.legal-page h1 { margin: 0 0 20px; font: 700 clamp(2.5rem, 5vw, 4.2rem)/1.05 'Playfair Display', serif; letter-spacing: -.05em; }.legal-page h2 { margin: 42px 0 12px; font-size: 1.75rem; }.legal-page p, .legal-page li { max-width: 820px; color: var(--soft); }.legal-page a { color: var(--ink); text-decoration: underline; }.legal-note { max-width: 820px; margin: 25px 0; padding: 16px; border-left: 4px solid var(--accent); background: #e7e7e7; color: var(--ink)!important; }
@media (max-width: 760px) { .cookie-banner { right: 16px; bottom: 16px; width: calc(100% - 32px); }.cookie-actions { flex-direction: column; }.cookie-actions .button { text-align: center; }.legal-page { padding: 48px 0 60px; } }
