.privacy-consent[hidden],
.privacy-consent-banner[hidden],
.privacy-consent-preferences[hidden]{
  display:none
}

.privacy-consent{
  position:relative;
  z-index:80
}

.privacy-consent-banner{
  position:fixed;
  left:20px;
  right:20px;
  bottom:20px;
  z-index:80;
  max-width:1100px;
  margin:auto;
  border:1px solid #d7e1ed;
  border-radius:18px;
  background:#fff;
  color:#17324d;
  box-shadow:0 18px 55px rgba(0,25,55,.22)
}

.privacy-consent-content{
  padding:24px
}

.privacy-consent-copy h2{
  margin:0 0 8px;
  font-size:1.15rem
}

.privacy-consent-copy p{
  margin:0;
  max-width:850px;
  color:#53677c;
  font-size:.88rem;
  line-height:1.65
}

.privacy-consent-preferences{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:20px
}

.privacy-consent-option{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:14px;
  border:1px solid #dce5ef;
  border-radius:12px;
  background:#f8fbfe;
  cursor:pointer
}

.privacy-consent-option input{
  margin-top:4px
}

.privacy-consent-option strong,
.privacy-consent-option small{
  display:block
}

.privacy-consent-option strong{
  font-size:.84rem
}

.privacy-consent-option small{
  margin-top:4px;
  color:#64788c;
  font-size:.72rem;
  line-height:1.45
}

.privacy-consent-option.is-essential{
  cursor:default
}

.privacy-consent-essential-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  margin-top:2px;
  border-radius:4px;
  background:#075f92;
  color:#fff;
  font-size:.7rem;
  font-weight:700;
  flex:none
}

.privacy-consent-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
  margin-top:20px
}

.privacy-consent-button{
  min-height:42px;
  padding:10px 15px;
  border-radius:9px;
  border:1px solid #ccd8e5;
  background:#fff;
  color:#17324d;
  font:inherit;
  font-size:.78rem;
  font-weight:700;
  cursor:pointer
}

.privacy-consent-button.primary{
  border-color:#075f92;
  background:#075f92;
  color:#fff
}

.privacy-consent-button.secondary{
  background:#f5f8fb
}

.privacy-consent-button.tertiary{
  background:#fff
}

.privacy-consent-button:focus-visible,
.privacy-consent-reopen:focus-visible{
  outline:3px solid #ffcf6e;
  outline-offset:3px
}

.privacy-consent-reopen{
  position:fixed;
  left:16px;
  bottom:16px;
  z-index:70;
  border:1px solid #d7e1ed;
  border-radius:999px;
  padding:9px 13px;
  background:#fff;
  color:#17324d;
  box-shadow:0 5px 18px rgba(0,25,55,.16);
  font:inherit;
  font-size:.7rem;
  font-weight:700;
  cursor:pointer
}

@media(max-width:760px){
  .privacy-consent-banner{
    left:10px;
    right:10px;
    bottom:10px
  }

  .privacy-consent-content{
    padding:18px
  }

  .privacy-consent-preferences{
    grid-template-columns:1fr
  }

  .privacy-consent-actions{
    display:grid;
    grid-template-columns:1fr
  }

  .privacy-consent-button{
    width:100%
  }
}

.privacy-consent-save[hidden]{
  display:none
}
