:root{
  --kea-cookie-blue:#0b426c;
  --kea-cookie-blue-dark:#073555;
  --kea-cookie-pale:#edf5f8;
  --kea-cookie-ink:#073555;
  --kea-cookie-muted:#557083;
  --kea-cookie-line:#cfdee6;
  --kea-cookie-white:#fff;
}

.kea-cookie[hidden],.kea-cookie-modal[hidden],.kea-cookie-reopen[hidden]{display:none!important}

.kea-cookie{
  position:fixed;
  left:22px;
  right:22px;
  bottom:22px;
  z-index:999990;
  font-family:inherit;
}

.kea-cookie__banner{
  max-width:1180px;
  margin:0 auto;
  padding:28px 30px;
  background:var(--kea-cookie-white);
  border:1px solid var(--kea-cookie-line);
  border-radius:9px;
  box-shadow:0 18px 48px rgba(7,53,85,.16);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:40px;
  align-items:end;
}

.kea-cookie__kicker{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
  color:var(--kea-cookie-blue);
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kea-cookie__kicker:before{content:"";width:26px;height:1px;background:#7aa6c0;flex:0 0 auto}

.kea-cookie h2,.kea-cookie-modal h2{
  margin:0 0 10px;
  color:var(--kea-cookie-ink);
  font-family:"Libre Caslon Text",Georgia,serif;
  font-size:34px;
  font-weight:400;
  line-height:1.08;
}

.kea-cookie p,.kea-cookie-modal p{
  margin:0;
  color:var(--kea-cookie-muted);
  font-size:15px;
  line-height:1.6;
}

.kea-cookie__learn{
  display:inline-block;
  margin-top:10px;
  color:var(--kea-cookie-blue);
  font-size:13px;
  font-weight:500;
  text-underline-offset:4px;
}

.kea-cookie__actions{
  min-width:205px;
  display:grid;
  gap:9px;
}

.kea-cookie__button{
  min-height:48px;
  padding:0 22px;
  border:1px solid var(--kea-cookie-blue);
  border-radius:999px;
  font:400 14px/1 inherit;
  cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.kea-cookie__button--accept{background:var(--kea-cookie-blue);color:#fff}
.kea-cookie__button--accept:hover,.kea-cookie__button--accept:focus-visible{background:var(--kea-cookie-blue-dark);border-color:var(--kea-cookie-blue-dark)}
.kea-cookie__button--reject{background:var(--kea-cookie-blue-dark);border-color:var(--kea-cookie-blue-dark);color:#fff}
.kea-cookie__button--reject:hover,.kea-cookie__button--reject:focus-visible{background:var(--kea-cookie-blue);border-color:var(--kea-cookie-blue)}
.kea-cookie__settings-link{padding:5px 8px;border:0;background:none;color:var(--kea-cookie-blue);font:500 13px/1.3 inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}

.kea-cookie-modal{position:fixed;inset:0;z-index:999999;font-family:inherit}
.kea-cookie-modal__backdrop{position:absolute;inset:0;background:rgba(7,53,85,.52);backdrop-filter:blur(4px)}
.kea-cookie-modal__panel{
  position:absolute;
  left:50%;top:50%;
  width:min(720px,calc(100% - 36px));
  max-height:calc(100vh - 50px);
  overflow:auto;
  transform:translate(-50%,-50%);
  padding:38px;
  background:#fff;
  border-radius:10px;
  box-shadow:0 24px 70px rgba(7,53,85,.24);
}
.kea-cookie-modal__close{position:absolute;right:20px;top:18px;width:42px;height:42px;border:0;border-radius:50%;background:var(--kea-cookie-pale);color:var(--kea-cookie-blue);font:300 30px/1 inherit;cursor:pointer}
.kea-cookie-modal__panel>p{margin-bottom:24px}
.kea-cookie-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:20px 0;border-top:1px solid var(--kea-cookie-line)}
.kea-cookie-option h3{margin:0 0 5px;color:var(--kea-cookie-ink);font-size:16px;font-weight:600}
.kea-cookie-option p{font-size:14px}
.kea-cookie-option__always{padding:6px 10px;border-radius:5px;background:var(--kea-cookie-pale);color:var(--kea-cookie-blue);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.kea-cookie-option--toggle{cursor:pointer}
.kea-cookie-switch{position:relative;display:inline-flex}
.kea-cookie-switch input{position:absolute;opacity:0;pointer-events:none}
.kea-cookie-switch__visual{width:50px;height:28px;border-radius:999px;background:#c9d7df;position:relative;transition:background-color .18s ease}
.kea-cookie-switch__visual:after{content:"";position:absolute;left:4px;top:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:transform .18s ease}
.kea-cookie-switch input:checked+.kea-cookie-switch__visual{background:var(--kea-cookie-blue)}
.kea-cookie-switch input:checked+.kea-cookie-switch__visual:after{transform:translateX(22px)}
.kea-cookie-switch input:focus-visible+.kea-cookie-switch__visual{outline:3px solid rgba(11,66,108,.22);outline-offset:3px}
.kea-cookie-modal__footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:22px;border-top:1px solid var(--kea-cookie-line)}
.kea-cookie-modal__footer>a{color:var(--kea-cookie-blue);font-size:13px;text-underline-offset:4px}

.kea-cookie-reopen{
  position:fixed;
  left:14px;
  bottom:14px;
  z-index:999980;
  padding:8px 12px;
  border:1px solid var(--kea-cookie-line);
  border-radius:5px;
  background:#fff;
  color:var(--kea-cookie-blue);
  box-shadow:0 5px 18px rgba(7,53,85,.08);
  font:500 12px/1.2 inherit;
  cursor:pointer;
}

.kea-cookie-modal-open{overflow:hidden}

.kea-cookie button:focus-visible,.kea-cookie-modal button:focus-visible,.kea-cookie a:focus-visible,.kea-cookie-modal a:focus-visible,.kea-cookie-reopen:focus-visible{outline:3px solid rgba(11,66,108,.28);outline-offset:3px}

@media(max-width:720px){
  .kea-cookie{left:10px;right:10px;bottom:10px}
  .kea-cookie__banner{padding:22px 20px;grid-template-columns:1fr;gap:20px}
  .kea-cookie h2,.kea-cookie-modal h2{font-size:28px;line-height:1.12}
  .kea-cookie__actions{min-width:0;grid-template-columns:1fr 1fr}
  .kea-cookie__settings-link{grid-column:1/-1}
  .kea-cookie__button{padding:0 14px;font-size:13px}
  .kea-cookie-modal__panel{padding:32px 22px 24px}
  .kea-cookie-modal__footer{align-items:stretch;flex-direction:column}
  .kea-cookie-modal__footer .kea-cookie__button{width:100%}
}

@media(max-width:430px){
  .kea-cookie__actions{grid-template-columns:1fr}
  .kea-cookie__settings-link{grid-column:auto}
  .kea-cookie-option{grid-template-columns:1fr;gap:12px}
}

@media(prefers-reduced-motion:reduce){
  .kea-cookie *,.kea-cookie-modal *{scroll-behavior:auto!important;transition:none!important}
}
