.gf-cookie-consent {
  position: fixed;
  z-index: 10000;
  right: 1rem;
  bottom: 1rem;
  width: min(38rem, calc(100vw - 2rem));
  box-sizing: border-box;
  padding: 1.25rem;
  border: 1px solid #d5d9de;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.5rem 2rem rgb(0 0 0 / 18%);
  color: #17212b;
}

.gf-cookie-consent[hidden] {
  display: none;
}

.gf-cookie-consent h2 {
  margin: 0 2rem 0.5rem 0;
  font-size: 1.125rem;
}

.gf-cookie-consent p {
  margin: 0 0 1rem;
  line-height: 1.5;
}

.gf-cookie-consent__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.gf-cookie-consent button,
.gf-cookie-preferences {
  min-height: 2.75rem;
  padding: 0.6rem 0.85rem;
  border: 1px solid #164f2b;
  border-radius: 0.35rem;
  background: #164f2b;
  color: #fff;
  font: inherit;
  cursor: pointer;
}

.gf-cookie-consent__actions button[data-gf-cookie-choice="essential"] {
  background: #fff;
  color: #164f2b;
}

.gf-cookie-consent__actions a {
  padding: 0.5rem 0;
  color: #164f2b;
  text-decoration: underline;
}

.gf-cookie-consent__close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  min-height: 2rem !important;
  padding: 0.25rem 0.5rem !important;
  background: #fff !important;
  color: #17212b !important;
  border-color: #aab2ba !important;
}

.gf-cookie-preferences {
  margin: 0.5rem;
  font-size: 0.875rem;
}

.gf-cookie-consent button:focus-visible,
.gf-cookie-preferences:focus-visible,
.gf-cookie-consent a:focus-visible {
  outline: 3px solid #c9a646;
  outline-offset: 3px;
}

@media (max-width: 40rem) {
  .gf-cookie-consent {
    right: 0.5rem;
    bottom: 0.5rem;
    width: calc(100vw - 1rem);
    padding: 1rem;
  }

  .gf-cookie-consent__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .gf-cookie-consent__actions button,
  .gf-cookie-consent__actions a {
    text-align: center;
  }
}
