.vf-cookie-banner,.vf-cookie-dialog { box-sizing:border-box; font-family:var(--vf-font-family,'Inter Tight',sans-serif); background:#fafaf7; color:#171717; border:1px solid #bdbdb5; border-radius:0; box-shadow:0 8px 36px #0002; }
.vf-cookie-banner { position:fixed; left:var(--vf-header-inset,24px); bottom:24px; z-index:100010; width:min(590px,calc(100% - 2*var(--vf-header-inset,24px))); padding:24px; }
.vf-cookie-banner[hidden] { display:none; }
.vf-cookie-banner h2,.vf-cookie-dialog h2 { margin:0 0 12px; color:inherit; font-family:inherit; font-size:22px; line-height:1.15; font-weight:450; letter-spacing:-.035em; }
.vf-cookie-banner p,.vf-cookie-dialog > p { margin:0 0 20px; color:#66665f; font-family:inherit; font-size:14px; line-height:1.55; letter-spacing:0; }
.vf-cookie-banner a,.vf-cookie-dialog a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.vf-cookie-actions { display:flex; flex-wrap:wrap; gap:10px; }
.vf-cookie-actions button { flex:1 1 auto; min-height:42px; padding:10px 14px; border:1px solid #888880; border-radius:0; background:transparent; color:#171717; font:inherit; font-size:13px; line-height:1.3; cursor:pointer; transition:background-color .15s,color .15s; }
.vf-cookie-actions button:hover { background:#171717; color:#fafaf7; }
.vf-cookie-banner :focus-visible,.vf-cookie-dialog :focus-visible { outline:2px solid #171717; outline-offset:3px; }
.vf-cookie-dialog { width:min(580px,calc(100% - 32px)); max-height:calc(100dvh - 40px); margin:auto; padding:30px; z-index:100012; }
.vf-cookie-dialog::backdrop { background:#0008; backdrop-filter:blur(4px); }
.vf-cookie-close { position:absolute; top:10px; right:12px; display:grid; place-items:center; width:36px; height:36px; padding:0; color:inherit; background:transparent; border:0; font-size:26px; cursor:pointer; }
.vf-cookie-dialog h2 { padding-right:28px; }
.vf-cookie-option { display:flex; align-items:start; gap:14px; padding:16px 0; border-top:1px solid #d4d4cc; cursor:pointer; }
.vf-cookie-option input { flex:0 0 auto; width:17px; height:17px; margin:3px 0 0; accent-color:#171717; }
.vf-cookie-option strong { display:block; margin-bottom:6px; font-size:15px; font-weight:500; }
.vf-cookie-option small { display:block; color:#66665f; font-size:13px; line-height:1.5; }
.vf-cookie-policy-link { margin:8px 0 20px; font-size:12px; }
.vf-cinema-footer .vf-cookie-reopen { padding:0; border:0; border-radius:0; color:inherit; background:transparent; font:inherit; font-size:inherit; line-height:inherit; cursor:pointer; }
.vf-cinema-footer .vf-cookie-reopen:hover { text-decoration:underline; text-underline-offset:4px; }
.vf-embed-consent [data-vf-embed-notice] { padding:28px; background:#eeeee9; color:#171717; font-size:14px; text-align:center; }
.vf-embed-consent [hidden] { display:none!important; }
.vf-cookie-noscript { padding:12px var(--vf-header-inset,24px); font-size:12px; }
.vf-cookie-policy { margin:50px var(--vf-header-inset,24px); padding-top:28px; border-top:1px solid #bdbdb5; scroll-margin-top:110px; }
.vf-cookie-policy h2 { font-size:30px; font-weight:450; letter-spacing:-.035em; }
.vf-cookie-policy p { max-width:90ch; font-size:16px; line-height:1.6; }
.vf-cookie-policy-table { margin:24px 0; overflow-x:auto; }
.vf-cookie-policy table { width:100%; min-width:550px; border-collapse:collapse; font-size:14px; line-height:1.6; }
.vf-cookie-policy :where(th,td) { padding:16px; border:1px solid #d4d4cc; text-align:left; vertical-align:top; }
.vf-cookie-policy th { font-weight:500; }
.vf-cookie-policy button { border:0; padding:0; background:transparent; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
@media(max-width:767px) { .vf-cookie-banner { bottom:16px; padding:20px; } .vf-cookie-dialog { padding:24px 20px; } .vf-cookie-actions { gap:8px; } .vf-cookie-actions button { padding-inline:10px; } }
@media(prefers-reduced-motion:reduce) { .vf-cookie-actions button { transition:none; } }
