.cookie-banner{
  position:fixed; left:0; right:0; bottom:0; z-index:60;
  background:rgba(var(--bg-rgb),.97);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border-top:1px solid var(--line);
  color:var(--text);
  padding:16px 0 calc(16px + env(safe-area-inset-bottom));
}
.cookie-banner[hidden]{display:none;}
.cookie-banner-inner{
  max-width:var(--wrap); margin:0 auto; padding-inline:var(--gut);
  display:flex; flex-direction:column; gap:14px;
}
.cookie-banner-text{font-size:14.5px; line-height:1.5; color:var(--text-muted); max-width:70ch;}
.cookie-banner-text a{color:var(--text); text-decoration:none; border-bottom:1px solid var(--line); transition:border-color .2s var(--ease), color .2s var(--ease);}
.cookie-banner-text a:hover{border-color:var(--accent); color:var(--link-hover);}
.cookie-banner-actions{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.cookie-btn{width:100%;}
@media (min-width:720px){
  .cookie-banner-inner{flex-direction:row; align-items:center; justify-content:space-between; gap:32px;}
  .cookie-banner-actions{flex:none; grid-template-columns:repeat(2, 140px);}
}

.footer-legal{display:flex; flex-wrap:wrap; gap:8px 22px;}
.footer-legal a,
.footer-legal button{
  color:inherit; font:inherit; background:none; border:0; padding:0; cursor:pointer;
  border-bottom:1px solid transparent;
  transition:border-color .2s var(--ease), color .2s var(--ease);
}
.footer-legal a:hover,
.footer-legal button:hover{color:var(--text); border-color:var(--line);}
