.cookie-notice { gap: 24px; align-items: center; }
.cookie-notice p { flex: 1; min-width: 0; }
.cookie-notice p a { text-decoration: underline; text-underline-offset: 3px; }
.cookie-actions { display: flex; flex-direction: column; align-items: center; gap: 12px; flex: 0 0 auto; }
.cookie-actions .button { min-height: 48px; }
.cookie-skip { border: 0; background: none; padding: 4px 10px; color: #405d70; text-decoration: underline; text-underline-offset: 3px; font-size: 14px; }
.legal-page { max-width: 1100px; }
.legal-page h1 { font-size: clamp(28px,4vw,48px); margin: 0 0 24px; line-height: 1.2; }
.legal-page .legal-intro { color: #405d70; margin-bottom: 24px; }
.legal-page section p { margin: 0 0 16px; line-height: 1.8; }
.legal-page > .button { margin-top: 24px; }
.cookie-reset-status { margin-top: 20px; }
.footer-compact-bottom { flex-wrap: wrap; align-items: baseline; }
.footer-compact-bottom > p { margin-right: auto; }
@media(max-width:700px) {
 .cookie-notice { max-height: calc(100dvh - 32px); overflow: auto; }
 .cookie-actions { margin-top: 16px; }
 .cookie-actions .button { margin-top: 0; width: min(280px,100%); white-space: normal; }
 .cookie-notice p { line-height: 1.55; }
}
/* Keep the notice outside the document flow; shared section styles use relative positioning. */
body .cookie-notice.glass-panel { position:fixed; left:max(16px,calc((100vw - 1160px)/2)); right:max(16px,calc((100vw - 1160px)/2)); bottom:calc(16px + env(safe-area-inset-bottom)); width:auto; max-width:none; margin:0; padding:22px 26px; display:flex; z-index:300; box-shadow:0 8px 32px #12334425; }
body .cookie-notice[hidden] { display:none; }
@media(max-width:700px) { body .cookie-notice.glass-panel { display:block; padding:18px 20px; } body .cookie-notice[hidden] { display:none; } .cookie-actions{gap:10px} }
