.cookie-banner{
  position:fixed;
  left:50%;
  bottom:1rem;
  transform:translateX(-50%);
  width:min(640px,calc(100vw - 2rem));
  background:#0f2630;
  color:#e8f6f9;
  padding:1.1rem 1.35rem;
  border-radius:14px;
  box-shadow:0 18px 48px rgba(8,107,120,.25);
  display:flex;
  align-items:flex-start;
  gap:1rem;
  z-index:11000;
  transition:transform .25s ease,opacity .25s ease,visibility .25s;
  opacity:1;
  visibility:visible;
}
.cookie-banner.is-hidden{
  opacity:0;
  visibility:hidden;
  transform:translateX(-50%) translateY(10px);
  pointer-events:none;
}
.cookie-banner__text{
  font-size:.95rem;
  line-height:1.55;
  color:inherit;
  margin:0;
  flex:1;
}
.cookie-banner__text a{
  color:#46d5d2;
  font-weight:700;
  text-decoration:none;
}
.cookie-banner__text a:hover{ text-decoration:underline; }
.cookie-banner__btn{
  flex:0 0 auto;
  border:none;
  border-radius:10px;
  padding:.65rem 1.1rem;
  background:linear-gradient(93deg,#2fcfc2 0%,#28b1d4 100%);
  color:#fff;
  font-weight:700;
  font-size:.95rem;
  cursor:pointer;
  transition:filter .18s ease,transform .18s ease;
}
.cookie-banner__btn:hover{
  filter:brightness(.95);
  transform:translateY(-1px);
}
@media (max-width:520px){
  .cookie-banner{
    flex-direction:column;
    align-items:stretch;
    padding:1rem;
  }
  .cookie-banner__btn{
    width:100%;
    text-align:center;
  }
}
