.shop-suggestion[hidden], .shop-suggestion [hidden] { display: none !important; }
.shop-suggestion { position: fixed; z-index: 1250; right: 24px; bottom: 28px; width: 330px; max-width: calc(100vw - 32px); padding: 24px; box-sizing: border-box; border: 1px solid #dedbd5; border-radius: 6px; background: #fff; color: #302d28; box-shadow: 0 6px 28px #0002; font-family: inherit; text-align: left; }
.shop-suggestion h2.shop-suggestion__title { margin: 0 20px 10px 0; font-weight: 600; font-family: inherit; font-size: 20px; line-height: 1.25; text-transform: none; }
.shop-suggestion__body, .shop-suggestion__basket { margin: 0 0 16px; font-size: 14px; line-height: 1.5; }
.shop-suggestion__basket { font-size: 12px; }
.shop-suggestion__close { position: absolute; top: 6px; right: 6px; width: 36px; height: 36px; border: 0; background: transparent; color: inherit; font-size: 26px; cursor: pointer; }
.shop-suggestion__go { display: block; padding: 12px; border-radius: 3px; background: #3e382d; color: #fff; font-size: 14px; font-weight: 600; text-align: center; text-decoration: none; }
.shop-suggestion__stay { display: block; margin: 12px auto 0; padding: 4px 12px; border: 0; background: transparent; color: inherit; font: inherit; font-size: 13px; text-decoration: underline; cursor: pointer; }
.shop-suggestion a:focus-visible, .shop-suggestion button:focus-visible, .shop-suggestion-usp:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.navigation__usp--shop-suggestion { flex-shrink: 0; }
.shop-suggestion-usp { color: inherit; text-underline-offset: 3px; text-decoration: underline; }
@media (max-width: 984px) { .shop-suggestion { right: 16px; bottom: calc(78px + env(safe-area-inset-bottom)); width: 310px; padding: 20px; } }

html.shop-suggestion-pending .customer-club-popup__teaser-wrap,
html.shop-suggestion-pending .js-customer-club-usp,
html.shop-suggestion-pending .concept-teaser-wrap { display: none !important; }

@keyframes shop-suggestion-enter {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
.shop-suggestion:not([hidden]) {
  animation: shop-suggestion-enter 320ms cubic-bezier(.22, 1, .36, 1) both;
}
@media (prefers-reduced-motion: reduce) {
  .shop-suggestion:not([hidden]) { animation: none; }
}

@keyframes shop-suggestion-exit {
  from { opacity: 1; transform: translateY(0); }
  to { opacity: 0; transform: translateY(10px); }
}
.shop-suggestion.is-closing:not([hidden]) {
  animation: shop-suggestion-exit 220ms ease-in both;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .shop-suggestion.is-closing:not([hidden]) { animation: none; }
}
