.cp-cookie,.cp-policy,.cp-privacy-links,.cp-embed { font-family: system-ui,sans-serif; color:#f7f5f7; }
.cp-cookie [hidden], .cp-embed [hidden], .cp-cookie[hidden] { display:none !important; }
.cp-cookie { position:fixed; z-index:2147483640; right:1rem; bottom:1rem; width:min(36rem,calc(100% - 2rem)); max-height:calc(100vh - 2rem); overflow:auto; background:#242126; border:1px solid #5b4348; border-top:3px solid #e23327; border-radius:14px; box-shadow:0 14px 60px #0009; padding:1.25rem; font-size:15px; line-height:1.55; }
.cp-cookie-top { display:flex; justify-content:space-between; align-items:start; gap:1rem; }
.cp-cookie h2 { color:#fff; font-size:1.25rem; margin:0; }
.cp-cookie p { margin:.7rem 0; color:#eee7ec; }
.cp-cookie a,.cp-policy a,.cp-privacy-links a,.cp-embed a { color:#ffaea6; text-decoration:underline; text-underline-offset:.18em; }
.cp-cookie button,.cp-privacy-links button,.cp-embed button,.cp-policy button { background:#372b31; border:1px solid #a96d75; border-radius:7px; padding:.5rem .8rem; min-height:44px; color:#fff; font:inherit; cursor:pointer; }
.cp-cookie-top button { min-width:44px; font-size:1.35rem; }
.cp-cookie-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.9rem; }
.cp-cookie button:hover,.cp-privacy-links button:hover,.cp-embed button:hover,.cp-policy button:hover { background:#543238; }
.cp-cookie :focus-visible,.cp-policy :focus-visible,.cp-privacy-links :focus-visible,.cp-embed :focus-visible { outline:3px solid #ffe251; outline-offset:3px; }
.cp-cookie fieldset { padding:.75rem; border:1px solid #75565f; }
.cp-cookie label { display:block; padding:.25rem 0; }
.cp-cookie input { appearance:auto; margin-right:.5rem; accent-color:#db382e; }
.cp-privacy-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.8rem; padding:1rem; background:#211e23; font-size:.85rem; }
.cp-embed { width:100%; background:#28242a; }
.cp-embed [data-cp-placeholder] { padding:1.2rem; text-align:center; }
.cp-embed iframe { display:block; max-width:100%; }
.cp-policy-page { margin:0; background:#18161b; border-top:4px solid #d9261c; }
.cp-policy { max-width:55rem; margin:auto; padding:2rem 1.15rem 5rem; line-height:1.7; }
.cp-policy img { display:block; width:175px; height:auto; margin:0 0 2rem; }
.cp-policy h1 { font-size:clamp(2rem,6vw,3.5rem); line-height:1.08; }
.cp-policy h2 { margin-top:2rem; font-size:1.35rem; }
.cp-policy nav { display:flex; flex-wrap:wrap; align-items:center; gap:1rem; }
.cp-policy address { font-style:normal; padding:1rem; border-left:3px solid #db382e; background:#242126; }
.cp-policy dt { font-weight:700; margin-top:.8rem; }
.cp-policy dd { margin-left:0; }

/* Keep privacy controls in the existing copyright row. */
.footer__copyright { gap: .5rem 1rem; flex-wrap: wrap; }
.footer__copyright ul.cp-footer-privacy { flex-wrap: wrap; justify-content: flex-start; gap: .25rem 1rem; align-items: center; }
.footer__copyright ul.cp-footer-privacy li { margin: 0; }
.footer__copyright ul.cp-footer-privacy a,
.footer__copyright ul.cp-footer-privacy button { color: #c7c7c7; font: inherit; font-size: 12px; }
.footer__copyright ul.cp-footer-privacy button { background: transparent; border: 0; padding: 0; cursor: pointer; min-height: 24px; }
.footer__copyright ul.cp-footer-privacy :is(a, button):hover { color: #fff; text-decoration: underline; }
.footer__copyright ul.cp-footer-privacy :is(a, button):focus-visible { outline: 2px solid #ffe251; outline-offset: 3px; }
