.tdb-banner {
  position: relative;
  width: 100%;
  background: var(--tdb-bg, #A09F72);
  color: var(--tdb-text, #fff);
  font-family: var(--tdb-font-family, inherit);
  font-size: var(--tdb-font-size, 14px);
  line-height: 1.35;
  z-index: 20;
}
.tdb-banner--sticky { position: sticky; top: 0; z-index: 1040; }
.tdb-banner__inner {
  position: relative;
  max-width: var(--tdb-max-width, 1400px);
  margin: 0 auto;
  padding: var(--tdb-padding-y, 9px) 44px;
  min-height: calc(1.35em + (var(--tdb-padding-y, 9px) * 2));
  display: flex;
  align-items: center;
  justify-content: center;
}
.tdb-banner__messages { width: 100%; position: relative; text-align: center; }
.tdb-banner__message { display: none; align-items: center; justify-content: center; gap: 10px; opacity: 0; }
.tdb-banner__message.is-active { display: flex; opacity: 1; animation: tdbFade .28s ease both; }
.tdb-banner__text { font-weight: 500; letter-spacing: .01em; }
.tdb-banner__link {
  color: var(--tdb-link, #F2F0E9) !important;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}
.tdb-banner__link:hover { opacity: .85; }
.tdb-banner__close {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: inherit;
  width: 28px;
  height: 28px;
  line-height: 24px;
  padding: 0;
  font-size: 24px;
  font-weight: 300;
  cursor: pointer;
  opacity: .82;
}
.tdb-banner__close:hover { opacity: 1; }
.tdb-banner[hidden] { display: none !important; }
@keyframes tdbFade { from { opacity: 0; transform: translateY(2px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 767px) {
  .tdb-banner { font-size: var(--tdb-font-size-mobile, 13px); }
  .tdb-banner--desktop-only { display: none !important; }
  .tdb-banner__inner { padding-left: 34px; padding-right: 34px; }
  .tdb-banner__message { gap: 6px; flex-wrap: wrap; }
  .tdb-banner__close { right: 5px; }
}
@media (prefers-reduced-motion: reduce) {
  .tdb-banner__message.is-active { animation: none; }
}
