.page-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;font-size:11px;line-height:1.4;color:#fff8efc7}
.footer-meta{display:contents}
.footer-copyright{white-space:nowrap}
.footer-policy-links{display:flex;gap:clamp(10px,1.5vw,24px);align-items:center;flex-wrap:wrap;justify-content:center}
.page-footer a{color:inherit;text-decoration:none}
.footer-policy-links button{border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer}
.page-footer .footer-policy-links a,.page-footer .footer-policy-links button{min-height:24px;display:inline-flex;align-items:center}
.page-footer a:hover,.page-footer button:hover{color:#ec176b}
.footer-top{display:inline-flex;align-items:center;justify-content:center;justify-self:end;gap:10px;min-height:44px;padding:10px 0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.footer-top svg{display:block;flex:none;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.page-footer--static{position:relative;inset:auto;margin:0;padding:18px clamp(24px,5.1vw,110px);min-height:90px;background:#0c0806}
html.returning-to-top{scroll-behavior:auto;scroll-snap-type:none}
.privacy-dialog{width:min(540px,calc(100% - 32px));max-height:calc(100svh - 40px);padding:28px;border:1px solid #ecd9d0;border-radius:24px;background:#fff8f0;color:#21161a;box-shadow:0 24px 100px #0006;font-family:var(--font,'DM Sans',Arial,sans-serif)}
.privacy-dialog::backdrop{background:#0c080685;backdrop-filter:blur(4px)}
.privacy-dialog h2{font-size:28px;line-height:1.1;letter-spacing:-.035em;margin:0 45px 16px 0}
.privacy-dialog p,.privacy-dialog label{font-size:15px;line-height:1.5;letter-spacing:0;margin:12px 0}
.privacy-dialog a{text-decoration:underline;text-underline-offset:3px}
.privacy-dialog .privacy-close{position:absolute;right:15px;top:15px;width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:#f2e1dd;color:#27131c}
.privacy-close svg{display:block;width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}
.privacy-options{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.privacy-options button{min-height:44px;flex:1;padding:12px 16px;border:1px solid #8a3152;border-radius:24px;font:700 14px var(--font,'DM Sans',Arial,sans-serif);background:#fff8f0;color:#782548;cursor:pointer}
.privacy-options button[data-privacy-choice="accept"]{background:#a80c48;border-color:#a80c48;color:#fff}
.privacy-optional{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#f7ece2;border-radius:12px}
.privacy-optional input{width:18px;height:18px;margin:3px 0 0;flex:none;accent-color:#a80c48}
.privacy-note{color:#634650}
.cookie-banner{position:fixed;inset:auto 16px 16px;z-index:80;max-width:680px;margin-inline:auto;padding:20px 24px;border:1px solid #e4d3cb;border-radius:20px;background:#fff8f0;color:#21161a;box-shadow:0 12px 50px #0004;font-family:var(--font,'DM Sans',Arial,sans-serif)}
.cookie-banner[hidden]{display:none}
.cookie-banner p{font-size:14px;line-height:1.5;letter-spacing:0}
.cookie-banner .privacy-options{margin-top:12px}
@media(max-width:700px){
  .page-footer{display:flex;flex-direction:column;gap:5px;text-align:center;font-size:10px}
  .footer-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px 14px;width:100%;order:2}
  .footer-policy-links{order:initial;flex-basis:auto;justify-content:center;gap:14px}
  .footer-top{order:1;align-self:center;padding:8px 0}
  .page-footer--static{padding-block:16px 20px}
  .cookie-banner{padding:12px 14px;inset-inline:10px;bottom:10px;border-radius:16px}
  .cookie-banner p{font-size:12px;line-height:1.4}
  .cookie-banner .privacy-options{margin-top:9px;gap:8px}
  .cookie-banner .privacy-options button{min-height:44px;font-size:12px;padding:10px 8px;white-space:nowrap}
  .privacy-dialog{padding:24px}
  .privacy-options{gap:8px}
  .privacy-options button{font-size:13px}
}
