.cookie-banner[hidden] { display:none; }
.cookie-banner { position:fixed; z-index:30; inset:auto 18px 18px; max-width:1000px; margin:auto; padding:24px; color:var(--petrol); background:var(--cream); border:1px solid var(--petrol); border-radius:12px; box-shadow:0 8px 45px #00383b33; }
.cookie-banner h2,.cookie-dialog h2 { font-size:22px; letter-spacing:-.04em; margin:0 32px 10px 0; line-height:1.2; }
.cookie-banner p,.cookie-dialog p { font-size:13px; line-height:1.6; margin:0 0 16px; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:10px; }
.cookie-button { flex:1 1 150px; min-height:44px; border:1px solid var(--petrol); border-radius:5px; background:var(--cream); color:var(--petrol); padding:12px 16px; font:600 13px "Scree Sora",sans-serif; cursor:pointer; }
.cookie-button:hover { background:var(--gold); }
.cookie-button:focus-visible,.cookie-link:focus-visible { outline:3px solid var(--petrol); outline-offset:3px; }
.cookie-dialog { width:min(620px,calc(100% - 28px)); max-height:85dvh; padding:26px; border:1px solid var(--petrol); border-radius:12px; background:var(--cream); color:var(--petrol); }
.cookie-dialog::backdrop { background:#002c3077; }
.cookie-close { position:absolute; top:10px; right:10px; width:36px; height:36px; border:0; background:transparent; color:var(--petrol); font-size:25px; cursor:pointer; }
.cookie-option { display:flex; align-items:flex-start; gap:12px; padding:16px 0; border-top:1px solid var(--line); font-size:13px; }
.cookie-option input { width:19px; height:19px; flex-shrink:0; accent-color:var(--petrol); margin:2px 0 0; }
.cookie-option small { display:block; margin-top:5px; font-size:12px; line-height:1.5; }
.cookie-dialog a { text-decoration:underline; }
.cookie-link { border:0; padding:0; color:inherit; background:transparent; text-decoration:underline; font:inherit; cursor:pointer; }
.cookie-details { margin:18px 0; font-size:12px; line-height:1.6; }
.cookie-details summary { cursor:pointer; font-weight:700; }
.cookie-details p { margin-top:12px; font-size:12px; }
@media(max-width:600px) { .cookie-banner { inset:auto 10px 10px; padding:18px; max-height:80dvh; overflow:auto; }.cookie-banner h2 { font-size:19px; }.cookie-actions { gap:8px; }.cookie-button { flex-basis:100%; padding:10px 12px; }.cookie-dialog { padding:22px 18px; } }
