@scope (.theme-native-page) {
newsletter-offer { display: block; }
.newsletter-offer [hidden] { display: none !important; }
.newsletter-offer__dialog {
  position: fixed;
  inset: 0;
  margin: auto;
  padding: 0;
  width: min(1000px, calc(100vw - 48px));
  max-width: none;
  max-height: calc(100dvh - 48px);
  border: 0;
  border-radius: 0;
  background: var(--offer-background, #fff);
  color: var(--offer-text, #232323);
  box-shadow: 0 24px 100px #0004;
  overflow: auto;
  overscroll-behavior: contain;
}
.newsletter-offer__dialog::backdrop { background: #211b16a6; backdrop-filter: blur(3px); }
.newsletter-offer__dialog[open] { animation: offer-enter .24s ease-out; }
.newsletter-offer__card { display: grid; grid-template-columns: 46% 54%; min-height: 580px; }
.newsletter-offer__image { position: relative; background: #ede7e1; overflow: hidden; }
.newsletter-offer__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.newsletter-offer__content { position: relative; display: flex; flex-direction: column; justify-content: center; padding: 64px 48px 48px; text-align: center; }
.newsletter-offer__heading {
  margin: 0 0 20px;
  color: inherit;
  font-family: var(--font-heading-family, Georgia, serif);
  font-size: clamp(30px, 3.2vw, 46px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.025em;
  text-transform: none;
}
.newsletter-offer__description { margin: 0 0 28px; font-size: 16px; line-height: 1.6; }
.newsletter-offer__description p { margin: 0; }
.newsletter-offer__form { margin: 0; }
.newsletter-offer__label { display: block; margin: 0 0 8px; font-size: 12px; font-weight: 600; text-align: start; }
.newsletter-offer .newsletter-offer__email,
.newsletter-offer .newsletter-offer__code {
  display: block;
  width: 100%;
  height: 54px;
  margin: 0 0 12px;
  padding: 12px 16px;
  border: 1px solid var(--offer-text);
  border-radius: 3px;
  background: var(--offer-background);
  color: var(--offer-text);
  font: inherit;
  font-size: 16px;
  box-shadow: none;
}
.newsletter-offer .newsletter-offer__button {
  display: flex;
  width: 100%;
  min-height: 54px;
  height: auto;
  margin: 0;
  padding: 14px 20px;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  text-transform: none;
  cursor: pointer;
}
.newsletter-offer__button:disabled { cursor: wait; opacity: .65; }
.newsletter-offer__consent { margin: 16px 0 0; font-size: 11px; line-height: 1.6; opacity: .75; }
.newsletter-offer__consent a { color: inherit; text-decoration: underline; }
.newsletter-offer .newsletter-offer__close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--offer-background);
  color: var(--offer-text);
  cursor: pointer;
  z-index: 1;
}
.newsletter-offer__close:hover { background: color-mix(in srgb, var(--offer-text) 8%, var(--offer-background)); }
.newsletter-offer .newsletter-offer__tab {
  position: fixed;
  top: 50%;
  left: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 18px 12px;
  border: 0;
  border-radius: 4px 0 0 4px;
  background: var(--offer-accent);
  color: var(--offer-button-text);
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .025em;
  writing-mode: vertical-rl;
  transform: translateY(-50%) rotate(180deg);
  box-shadow: 0 4px 18px #0002;
  cursor: pointer;
}
.newsletter-offer__tab svg { flex-shrink: 0; transform: rotate(180deg); }
body:is(.open-cc, .overflow-hidden, .overflow-hidden-mobile, .overflow-hidden-tablet, .overflow-hidden-desktop) .newsletter-offer__tab,
body:has(dialog[open], modal-dialog[open], product-modal[open], cart-disclosure-modal[open], details-modal details[open], menu-drawer details[open], header-drawer details[open], .mobile-toggle-wrapper.active, .mobile-toggle-wrapper[open], .side-panel.active, #cart-notification.active, .pswp--open) .newsletter-offer__tab { display: none; }
.newsletter-offer__eyebrow { margin: 0 0 12px; color: var(--offer-accent); font-size: 10px; font-weight: 600; line-height: 16px; letter-spacing: .18em; text-transform: uppercase; }
.newsletter-offer--reward .newsletter-offer__heading { margin-bottom: 12px; font-size: 40px; }
.newsletter-offer--reward .newsletter-offer__description { margin-bottom: 26px; font-size: 14px; opacity: .8; }
.newsletter-offer__coupon { padding: 22px 20px 18px; border: 1px solid color-mix(in srgb, var(--offer-accent) 18%, var(--offer-background)); background: color-mix(in srgb, var(--offer-accent) 5%, var(--offer-background)); }
.newsletter-offer__coupon .newsletter-offer__label { margin: 0; font-size: 10px; font-weight: 500; letter-spacing: .12em; text-align: center; text-transform: uppercase; }
.newsletter-offer .newsletter-offer__code { height: 48px; margin: 8px 0 18px; padding: 0; border: 0; background: transparent; color: var(--offer-accent); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 30px; font-weight: 500; letter-spacing: .12em; text-align: center; }
.newsletter-offer__coupon .newsletter-offer__button { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; border-radius: 0; font-size: 13px; }
[data-offer-copied-icon] { display: none; }
.newsletter-offer__button.is-copied [data-offer-copy-icon] { display: none; }
.newsletter-offer__button.is-copied [data-offer-copied-icon] { display: block; }
.newsletter-offer .newsletter-offer__continue { display: inline-flex; align-items: center; gap: 8px; margin-top: 20px; padding: 8px 0; border: 0; background: transparent; color: var(--offer-text); font: inherit; font-size: 12px; text-decoration: none; cursor: pointer; }
.newsletter-offer__continue:hover { text-decoration: underline; }
.newsletter-offer__status { min-height: 18px; margin: 10px 0 0; color: var(--offer-accent); font-size: 11px; }
.newsletter-offer__status:empty { min-height: 0; margin-top: 0; }
.newsletter-offer__error { margin: 0 0 12px; color: #a01818; font-size: 13px; text-align: start; }
.newsletter-offer__error ul { margin: 0; padding-inline-start: 20px; }
.newsletter-offer :focus-visible { outline: 2px solid var(--offer-accent); outline-offset: 4px; }
.newsletter-offer__heading:focus-visible { outline: none; }
html.newsletter-offer-open { overflow: hidden; }
@keyframes offer-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 767px) {
  .newsletter-offer__dialog { width: calc(100vw - 32px); max-height: calc(100dvh - 32px); }
  .newsletter-offer__card { display: flex; flex-direction: column; min-height: 0; }
  .newsletter-offer__image { display: none; }
  .newsletter-offer__content { position: static; padding: 60px 24px 28px; }
  .newsletter-offer__heading { font-size: 32px; margin-bottom: 14px; }
  .newsletter-offer__description { font-size: 14px; margin-bottom: 20px; }
  .newsletter-offer--reward .newsletter-offer__content { padding-top: 36px; }
  .newsletter-offer--reward .newsletter-offer__heading { font-size: 30px; }
  .newsletter-offer--reward .newsletter-offer__description { margin-bottom: 24px; font-size: 13px; }
  .newsletter-offer__coupon { padding: 20px 16px 16px; }
  .newsletter-offer .newsletter-offer__code { font-size: 28px; }
  .newsletter-offer__close { top: 8px; right: 8px; }
  .newsletter-offer .newsletter-offer__tab { padding: 14px 10px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { .newsletter-offer__dialog[open] { animation: none; } }

}
