.ff-privacy-choice,.ff-consent-banner{box-sizing:border-box;font:600 14px/1.4 Barlow,system-ui,sans-serif}
.ff-privacy-choice{position:fixed;z-index:99996;right:18px;bottom:18px;display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #4b4b56;border-radius:999px;background:#111113;color:#f4f4f6;box-shadow:0 5px 18px rgba(0,0,0,.24);cursor:pointer}
.ff-privacy-choice:hover{background:#222228}.ff-privacy-choice:focus-visible,.ff-consent-banner button:focus-visible,.ff-consent-banner a:focus-visible{outline:3px solid #ff716a;outline-offset:3px}
.ff-consent-banner{position:fixed;z-index:99997;right:18px;bottom:18px;width:min(460px,calc(100vw - 32px));padding:16px;border:1px solid #464653;border-radius:12px;background:#111113;color:#f4f4f6;box-shadow:0 12px 36px rgba(0,0,0,.38)}
.ff-consent-banner h2{margin:0 0 5px;color:#fff;font:800 20px/1.2 "Barlow Condensed",Barlow,system-ui,sans-serif}.ff-consent-banner p{margin:0;color:#c9c9d1;font-weight:400}.ff-consent-banner a{color:#fff;text-underline-offset:3px}
.ff-consent-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.ff-consent-actions button{min-height:40px;padding:8px 13px;border:1px solid #777783;border-radius:8px;background:#fff;color:#17171b;font:700 14px/1 Barlow,system-ui,sans-serif;cursor:pointer}.ff-consent-actions button:first-child{border-color:#cf183f;background:#b50e32;color:#fff}
.ff-consent-actions button:hover{filter:brightness(1.06)}
@media(max-width:767px){.ff-privacy-choice{right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));min-height:44px}.ff-consent-banner{right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));width:calc(100vw - 24px)}.ff-consent-actions button{flex:1 1 150px;min-height:44px}}
@media(prefers-reduced-motion:no-preference){.ff-consent-banner{animation:ff-consent-in .16s ease-out}@keyframes ff-consent-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}

.ff-privacy-choice[hidden]{display:none}
.ff-consent-banner [data-ff-cookie-status]:not(:empty){margin-top:8px}

/* Keep the desktop geometry; use one visible policy link at each breakpoint. */
.ff-consent-heading{display:contents}.ff-consent-policy-mobile{display:none}
@media(max-width:767px){
 .ff-consent-banner{left:8px;right:8px;bottom:calc(68px + env(safe-area-inset-bottom,0px));width:auto;padding:12px;max-height:calc(100dvh - 84px - env(safe-area-inset-bottom,0px));overflow-y:auto;border-radius:10px}
 .ff-consent-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
 .ff-consent-heading h2{margin:0;font-size:18px}
 .ff-consent-policy-mobile{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px;font-size:12px;font-weight:400}
 .ff-consent-policy-desktop{display:none}
 .ff-consent-actions{margin-top:10px}.ff-consent-actions button{flex:1 1 0;min-width:0;min-height:44px;padding:8px;font-size:13px}
 body:has(.ffe-commerce-bar) .ff-privacy-choice{bottom:calc(120px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:340px){.ff-consent-actions{flex-direction:column}}
@media(min-width:768px){body:has(.ffe-commerce-bar) :is(.ff-consent-banner,.ff-privacy-choice){bottom:72px}}
