.kp-consent,
.kp-consent *{box-sizing:border-box}
.kp-consent{
  position:fixed;
  z-index:1000;
  left:clamp(1rem,3vw,2rem);
  right:clamp(1rem,3vw,2rem);
  bottom:clamp(1rem,3vw,2rem);
  max-width:720px;
  padding:1.15rem 1.25rem;
  border:1px solid rgba(38,32,26,.18);
  border-left:3px solid #8F4A2E;
  border-radius:8px;
  background:#FFFDF8;
  color:#26201A;
  box-shadow:0 22px 55px -24px rgba(36,28,21,.55);
  font:400 .94rem/1.55 "Instrument Sans",system-ui,sans-serif;
}
.kp-consent[hidden],.kp-consent-manage[hidden]{display:none}
.kp-consent__title{
  margin:0 0 .35rem;
  font:470 1.22rem/1.25 "Fraunces",Georgia,serif;
}
.kp-consent__copy{margin:0;color:#6F6459}
.kp-consent__copy a{color:#6E3721;text-underline-offset:.2em}
.kp-consent__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
.kp-consent__button{
  min-height:44px;
  padding:.7rem 1rem;
  border:1px solid #8F4A2E;
  border-radius:6px;
  background:#8F4A2E;
  color:#FAF6EF;
  cursor:pointer;
  font:600 .88rem/1 "Instrument Sans",system-ui,sans-serif;
}
.kp-consent__button--quiet{background:transparent;color:#6E3721}
.kp-consent__button:hover{background:#6E3721;color:#FAF6EF}
.kp-consent__button:focus-visible,.kp-consent-manage:focus-visible{
  outline:2px solid #8F4A2E;
  outline-offset:3px;
}
.kp-consent-manage{
  position:fixed;
  z-index:999;
  left:1rem;
  bottom:1rem;
  min-height:40px;
  padding:.55rem .75rem;
  border:1px solid rgba(38,32,26,.2);
  border-radius:999px;
  background:#FFFDF8;
  color:#6E3721;
  box-shadow:0 10px 28px -18px rgba(36,28,21,.65);
  cursor:pointer;
  font:600 .78rem/1 "Instrument Sans",system-ui,sans-serif;
}
@media(max-width:560px){
  .kp-consent{left:.75rem;right:.75rem;bottom:.75rem;padding:1rem}
  .kp-consent__actions{display:grid;grid-template-columns:1fr 1fr}
  .kp-consent__button{width:100%}
}
@media(prefers-reduced-motion:no-preference){
  .kp-consent{animation:kp-consent-in .25s cubic-bezier(.22,1,.36,1) both}
  @keyframes kp-consent-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
