.privacy-consent[hidden] { display: none !important; }

.privacy-consent {
  position: fixed;
  z-index: 300;
  right: 20px;
  bottom: 20px;
  left: 20px;
  color: #f4f1ea;
}

.privacy-consent__inner {
  width: min(100%, 1040px);
  margin-inline: auto;
  padding: 20px 22px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  background: #071827;
  border: 1px solid rgba(198, 161, 91, .55);
  border-radius: 12px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .28);
}

.privacy-consent__copy h2 {
  margin: 0 0 8px;
  color: #f4f1ea;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.18rem, 2vw, 1.42rem);
  line-height: 1.15;
}

.privacy-consent__copy p {
  max-width: 760px;
  margin: 0 0 8px;
  color: #b9c3cc;
  font-size: .92rem;
  line-height: 1.55;
}

.privacy-consent__copy .privacy-consent__status:empty { display: none; }
.privacy-consent__copy .privacy-consent__status { color: #f4f1ea; }

.privacy-consent__copy a {
  color: #f4f1ea;
  text-decoration-color: rgba(198, 161, 91, .72);
  text-underline-offset: 3px;
}

.privacy-consent__copy a:hover,
.privacy-consent__copy a:focus-visible { color: #d3b46f; }

.privacy-consent__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.privacy-consent__button {
  min-height: 44px;
  padding: 10px 18px;
  border-radius: 3px;
  border: 1px solid #c6a15b;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.privacy-consent__button--accept {
  color: #071827;
  background: #c6a15b;
}

.privacy-consent__button--accept:hover,
.privacy-consent__button--accept:focus-visible { background: #d3b46f; }

.privacy-consent__button--decline {
  color: #f4f1ea;
  background: transparent;
}

.privacy-consent__button--decline:hover,
.privacy-consent__button--decline:focus-visible { background: rgba(198, 161, 91, .1); }

.sf-footer-legal {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px 18px;
  flex-wrap: wrap;
}

.sf-footer-legal a,
.sf-cookie-settings {
  color: inherit;
  font: inherit;
  font-size: .88rem;
}

.sf-cookie-settings {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: rgba(198, 161, 91, .45);
  text-underline-offset: 3px;
}

.sf-footer-legal a:hover,
.sf-footer-legal a:focus-visible,
.sf-cookie-settings:hover,
.sf-cookie-settings:focus-visible { color: #d3b46f; }

.privacy-page {
  padding-top: 34px;
  padding-bottom: 76px;
}

.privacy-page__header {
  max-width: 920px;
  margin: 34px 0 46px;
}

.privacy-page__header h1 {
  max-width: 850px;
  margin: 8px 0 18px;
}

.privacy-page__meta { color: #b9c3cc; }

.privacy-page__body {
  max-width: 920px;
  color: #f4f1ea;
}

.privacy-page__body section {
  margin-top: 42px;
  padding-top: 34px;
  border-top: 1px solid rgba(198, 161, 91, .28);
}

.privacy-page__body section:first-child { margin-top: 0; }
.privacy-page__body h2 { margin: 0 0 20px; }
.privacy-page__body p { margin: 0 0 16px; color: #d7dde2; line-height: 1.75; }
.privacy-page__body ul { margin: 0 0 18px; padding-left: 1.35rem; }
.privacy-page__body li { margin: 0 0 10px; color: #d7dde2; line-height: 1.65; }
.privacy-page__body code { color: #f4f1ea; overflow-wrap: anywhere; }
.privacy-page__body a { overflow-wrap: anywhere; }

@media (max-width: 720px) {
  .privacy-consent { right: 10px; bottom: 10px; left: 10px; }
  .privacy-consent__inner { padding: 18px; grid-template-columns: 1fr; gap: 15px; }
  .privacy-consent__actions { justify-content: stretch; }
  .privacy-consent__button { flex: 1 1 130px; }
  .privacy-page { padding-top: 18px; padding-bottom: 54px; }
  .privacy-page__header { margin: 24px 0 34px; }
  .privacy-page__body section { margin-top: 34px; padding-top: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-consent__button { transition: none; }
}
