:root { --xy-promoter-strip-height: 0px; --xy-promoter-strip-offset: 0px; --xy-site-header-height: 72px; }
.xy-promoter-strip {
  position: sticky;
  top: 0;
  z-index: 1200;
  width: 100%;
  box-sizing: border-box;
  color: #7c2d12;
  background: #fff2dc;
  border-bottom: 1px solid #f1d4a1;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.5;
}
.xy-promoter-strip[hidden], .xy-promoter-strip [hidden] { display: none !important; }
.xy-promoter-strip-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 32px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 16px;
  box-sizing: border-box;
}
.xy-promoter-strip-copy { display: flex; align-items: center; gap: 12px; min-width: 0; }
.xy-promoter-strip-title { flex: 0 0 auto; color: #b23b00; font-size: inherit; font-weight: 600; }
.xy-promoter-strip-message { overflow-wrap: anywhere; }
.xy-promoter-strip-action {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  color: #b23b00;
  font-size: inherit;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.xy-promoter-strip-action:hover { color: #7c2d12; }
.xy-promoter-strip-optout {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 4px;
  border: 0;
  border-radius: 4px;
  color: #5f4637;
  background: transparent;
  font: inherit;
  white-space: nowrap;
  cursor: pointer;
}
.xy-promoter-strip-optout:hover { color: #7c2d12; background: #ffe3b5; }
.xy-promoter-strip-feedback { flex-basis: 100%; padding-bottom: 8px; color: #7c2d12; text-align: center; overflow-wrap: anywhere; }
.xy-promoter-strip-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  color: #7c2d12;
  background: transparent;
  cursor: pointer;
}
.xy-promoter-strip-close:hover { background: #ffe3b5; }
.xy-promoter-strip-close svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.xy-promoter-strip-action:focus-visible, .xy-promoter-strip-optout:focus-visible, .xy-promoter-strip-close:focus-visible { outline: 2px solid #b23b00; outline-offset: -2px; }
.xy-promoter-strip ::selection { color: #fff; background: #b23b00; }
html.xy-promoter-strip-active[data-xy-promoter-surface="site"] .xy-navbar.xy-site-header { top: var(--xy-promoter-strip-offset) !important; }
@media (min-width: 992px) {
  html.xy-promoter-strip-active[data-xy-promoter-surface="site"] .xy-site-header .xy-product-mega,
  html.xy-promoter-strip-active[data-xy-promoter-surface="site"] .xy-site-header .xy-nav-submenu {
    top: calc(var(--xy-site-header-height) + var(--xy-promoter-strip-offset)) !important;
  }
}
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .template > .el-container .el-header,
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .product > .el-container .el-header { top: var(--xy-promoter-strip-height) !important; }
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .template > .el-container > .el-aside,
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .product > .el-container > .el-aside {
  top: calc(var(--xy-console-head, 64px) + var(--xy-promoter-strip-height)) !important;
  max-height: calc(100dvh - var(--xy-console-head, 64px) - var(--xy-promoter-strip-height));
}
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .template > .el-container,
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .product > .el-container { min-height: calc(100dvh - var(--xy-promoter-strip-height)); }
html.xy-promoter-strip-active[data-xy-promoter-surface="member"] .van-sticky--fixed { top: var(--xy-promoter-strip-height) !important; }
@media (max-width: 991px) {
  html.xy-promoter-strip-active[data-xy-promoter-surface="site"] .xy-navbar-collapse { top: calc(var(--xy-site-header-height) + var(--xy-promoter-strip-offset)) !important; }
}
@media (max-width: 767px) {
  /* The mobile header's backdrop filter anchors its fixed drawer to the header itself. */
  html.xy-promoter-strip-active[data-xy-promoter-surface="site"] .xy-site-header .xy-navbar-collapse {
    top: var(--xy-site-header-height) !important;
    height: calc(100dvh - var(--xy-site-header-height) - var(--xy-promoter-strip-offset)) !important;
    max-height: calc(100dvh - var(--xy-site-header-height) - var(--xy-promoter-strip-offset)) !important;
  }
}
@media (max-width: 768px) {
  .xy-promoter-strip-inner { min-height: 44px; gap: 8px; padding: 0 8px 0 12px; }
  .xy-promoter-strip-copy { flex: 1 1 auto; gap: 8px; }
  .xy-promoter-strip-title { flex-shrink: 1; overflow-wrap: anywhere; }
  .xy-promoter-strip-message { font-size: 12px; }
  .xy-promoter-strip-action { min-height: 44px; max-width: 44%; white-space: normal; overflow-wrap: anywhere; }
  .xy-promoter-strip-optout { min-height: 44px; }
  .xy-promoter-strip-close { flex-basis: 44px; width: 44px; height: 44px; }
}
