:root { --nw-paper: var(--background); --nw-text: #21161a; --nw-dark: #211219; --nw-dark-text: #faeee5; --nw-gap: clamp(36px, 5.6vw, 82px); }
.nw-campaign { position: relative; margin-block: clamp(12px, 2.5vw, 32px) var(--nw-gap); }
.nw-campaign__viewport { display: flex; overflow-x: auto; scrollbar-width: none; border-radius: clamp(18px, 3vw, 36px); scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; }
.nw-campaign__viewport::-webkit-scrollbar { display: none; }
.nw-campaign__slide { position: relative; flex: 0 0 100%; display: grid; align-items: end; min-width: 0; isolation: isolate; overflow: hidden; aspect-ratio: 2.08; min-height: 408px; scroll-snap-align: start; background: #6f514b; }
.nw-campaign__slide picture, .nw-campaign__slide img { position: absolute; inset: 0; width: 100%; height: 100%; }
.nw-campaign__slide img { object-fit: cover; object-position: center 48%; }
.nw-campaign__slide::after { content: ''; position: absolute; inset: 0; z-index: 0; background: linear-gradient(to top, #180b1470, transparent 48%); pointer-events: none; }
[data-tone=wine] { --nw-overlay: var(--primary); }
[data-tone=ink] { --nw-overlay: #20151b; }
[data-tone=olive] { --nw-overlay: #303e31; }
[data-tone=clay] { --nw-overlay: #632c24; }
.nw-campaign__copy { z-index: 1; align-self: center; justify-self: start; margin: clamp(18px, 4vw, 66px); inline-size: min(39%, 460px); padding: clamp(18px, 3.3vw, 52px); border: 1px solid #ffffff37; border-radius: clamp(18px, 3vw, 32px); background: color-mix(in srgb, var(--nw-overlay, var(--primary)) 84%, transparent); box-shadow: 0 24px 55px #190a2330; color: #fff9f2; backdrop-filter: blur(8px); }
.nw-campaign__slide[data-copy=end] .nw-campaign__copy { justify-self: end; }
.nw-campaign__kicker { margin-block-end: 9px; font-size: clamp(.75rem, 1.3vw, .96rem); color: #fae0d8; }
.nw-campaign__copy :is(h1,h2) { color: inherit; font-size: clamp(1.58rem, 3.8vw, 3.5rem); line-height: 1.15; font-weight: 650; text-wrap: balance; }
.nw-campaign__text { margin-block: 13px 19px; color: #fff4ed; font-size: clamp(.85rem, 1.17vw, 1.05rem); line-height: 1.7; }
.nw-button, .orzen-editorial__link, .orzen-hero__link { display: inline-flex; align-items: center; justify-content: center; gap: 13px; width: fit-content; min-height: 44px; padding: 8px 16px; border: 1px solid transparent; border-radius: 999px; font-size: .85rem; font-weight: 650; line-height: 1.35; text-decoration: none !important; transition: background .18s ease, color .18s ease, transform .18s ease, border-color .18s ease; }
.nw-button > span { font-size: 1.05rem; line-height: 1; }
.nw-button--light { color: #3f1020; background: #fff7ef; }
.nw-button--outline { color: var(--primary); background: var(--background); border-color: var(--border); }
.nw-button:hover { transform: translateY(-2px); }
.nw-button--light:hover { color: #fff7ef; background: #2b1320; border-color: #f4c6bd66; }
.nw-button--outline:hover { color: #fff7ef; background: var(--primary); }
.nw-campaign__controls { display: flex; align-items: center; justify-content: center; gap: 12px; margin-block-start: 13px; }
.nw-campaign__controls[hidden] { display: none; }
.nw-campaign__controls > button { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--border); color: var(--primary); background: var(--background); font-size: 1.23rem; transition: background .2s, color .2s; }
.nw-campaign__controls > button:hover { background: var(--primary); color: #fff; }
.nw-campaign__dots { display: flex; gap: 4px; align-items: center; }
.nw-campaign__dots button { display: grid; place-items: center; width: 35px; height: 40px; }
.nw-campaign__dots button::after { content: ''; width: 13px; height: 4px; border-radius: 10px; background: var(--border); transition: width .2s, background .2s; }
.nw-campaign__dots button[aria-current=true]::after { width: 26px; background: var(--primary); }
.section-products .theme-container > div:first-child > div:first-child:has(> h2) { align-items: center; gap: 8px; }
.section-products a:has(> svg) { display: inline-flex; gap: 8px; align-items: center; min-height: 42px; padding: 6px 14px; border-radius: 99px; border: 1px solid var(--border); font-size: .8rem; text-decoration: none; }
.section-products a:has(> svg):hover { background: var(--primary); color: #fff; }
.orzen-filters { background: #fff9f4; border-radius: 24px; }
.orzen-filters button[commandfor=filters-drawer]:not([data-filter-shortcut]) { min-height: 46px; border: 1px solid var(--primary); background: var(--primary); color: var(--primary-foreground); gap: 7px; }
.orzen-filters button[commandfor=filters-drawer] svg { width: 19px; height: 19px; }
.nw-filter-shortcuts { display: flex; flex-wrap: wrap; gap: 7px; }
.nw-filter-shortcuts button { display: inline-flex; align-items: center; gap: 6px; min-height: 39px; padding: 4px 13px; border: 1px solid var(--border); border-radius: 99px; background: var(--background); font-size: .81rem; color: var(--primary); }
.nw-filter-shortcuts button:hover, .nw-filter-shortcuts button[data-filter-active] { border-color: var(--primary); background: var(--secondary); }
.nw-filter-shortcuts b { display: grid; place-items: center; width: 17px; height: 17px; border-radius: 50%; background: var(--primary); color: var(--primary-foreground); font-size: .7rem; }
#filters-drawer form { background: var(--nw-paper); }
#filters-drawer .nw-filter-scroll { padding-block-start: 0; scroll-padding-block-start: 60px; }
#filters-drawer .nw-filter-title { position: sticky; z-index: 2; top: 0; padding-block: 8px; background: var(--nw-paper); border-block-end: 1px solid var(--border-light); }
#filters-drawer .product-filter__toggle { text-decoration: none; border: 1px solid var(--border); border-radius: 100px; padding: 5px 11px; }
#filters-drawer label:has(input[name^='attributes']) { border: 1px solid var(--border); border-radius: 14px; background: #fffaf5; min-height: 40px; padding: 7px 10px; }
#filters-drawer label:has(input:checked) { border-color: var(--primary); background: var(--secondary); }
#filters-drawer label :is(input[type=radio], input[type=checkbox]) { accent-color: var(--primary); }
#filters-drawer form > :last-child button { border-radius: 99px; min-height: 46px; }
#filters-drawer form > :last-child .btn-filled { background: var(--primary); color: var(--primary-foreground); }
#main a:is(.orzen-editorial__link,.orzen-hero__link,.nw-button,.btn,.underline), #main .orzen-content__body a, #quick-view-footer a { text-decoration: none; }
#main .orzen-content__body a, #quick-view-footer a { border: 1px solid var(--border); border-radius: 100px; padding: .35em .8em; display: inline-block; }
#footer { background: var(--nw-dark); color: var(--nw-dark-text); border-block-start: 0; }
#footer :is(.text-foreground,.text-muted,h3,.orzen-wordmark,a) { color: var(--nw-dark-text); }
#footer h3 { font-size: .95rem; padding-block-end: 5px; color: #f5c5be; }
#footer a { text-decoration: none; }
#footer nav a:hover, #footer a:hover { color: #f0a99f; text-decoration: none; }
#footer a:has(> .sr-only):has(> svg) { display: grid; place-items: center; width: 43px; height: 43px; border: 1px solid #fff3; border-radius: 50%; }
#footer a:has(> .sr-only):has(> svg):hover { background: #fff1; }
#footer .border-border-light { border-color: #ffffff30; }
.nw-footer-social ul { display: flex; flex-wrap: wrap; gap: 7px; }
.nw-footer-social a { display: grid; place-items: center; width: 43px; height: 43px; border: 1px solid #fff3; border-radius: 50%; }
.nw-footer-social a:hover { background: #fff1; }
.nw-page-cover { width: min(100%, 860px); aspect-ratio: 2.35; height: auto; margin: 0 auto 20px; border-radius: 22px; object-fit: cover; }
.nw-contact { max-width: 860px; }
.nw-contact .orzen-commerce__fields { margin-block: 18px 0; }
.nw-contact .orzen-commerce__fields textarea { min-height: 112px; }
.nw-contact__channels { display: flex; flex-wrap: wrap; gap: 6px; margin-block: 13px; }
.nw-contact__channels a[aria-current=true] { background: var(--primary); color: var(--primary-foreground); }
.nw-shopbar { display: none; }
@media (max-width: 950px) { .nw-campaign__copy { inline-size: min(47%, 420px); } }
@media (max-width: 650px) {
  body:has(.nw-shopbar) { padding-block-end: calc(68px + env(safe-area-inset-bottom, 0px)); }
  .nw-campaign { width: calc(100% - 22px); }
  .nw-campaign__viewport { border-radius: 23px; }
  .nw-campaign__slide { aspect-ratio: .81; min-height: 365px; max-height: min(570px, 73svh); }
  .nw-campaign__slide::after { background: linear-gradient(to top, #180b1480, transparent 60%); }
  .nw-campaign__slide img { object-position: center 34%; }
  .nw-campaign__copy, .nw-campaign__slide[data-copy=end] .nw-campaign__copy { align-self: end; justify-self: stretch; margin: 13px; inline-size: auto; padding: 14px 16px; border-radius: 17px; }
  .nw-campaign__copy :is(h1,h2) { font-size: clamp(1.37rem, 6.1vw, 2.05rem); }
  .nw-campaign__kicker { margin-block-end: 4px; }
  .nw-campaign__text { margin-block: 7px 10px; font-size: .8rem; }
  .nw-shopbar { position: fixed; z-index: 45; inset: auto 0 0; display: flex; align-items: stretch; justify-content: space-around; gap: 1px; padding: 5px 6px calc(5px + env(safe-area-inset-bottom, 0px)); background: #fff9f2f4; border-block-start: 1px solid #3e10261c; box-shadow: 0 -10px 30px #21131b0e; backdrop-filter: blur(16px); }
  .nw-shopbar :is(a,button) { position: relative; flex: 1 1 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; min-width: 0; min-height: 48px; padding: 2px; color: #47313b; font-size: .63rem; font-weight: 600; text-decoration: none; }
  .nw-shopbar svg { width: 23px; height: 23px; padding: 2px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
  .nw-shopbar [aria-current=page] { color: var(--primary); }
  .nw-shopbar [aria-current=page] svg { width: 39px; border-radius: 30px; background: #ead8db; }
  .nw-shopbar__cart b { position: absolute; inset-block-start: 1px; inset-inline-end: 18%; display: grid; place-items: center; min-width: 16px; height: 16px; padding-inline: 3px; background: var(--primary); color: #fff; border-radius: 20px; font-size: .6rem; }
  .nw-shopbar__cart b[hidden] { display: none; }
  #filters-drawer > div { padding: 0; inset: auto 0 0; }
  #filters-drawer el-dialog-panel { max-width: none; height: min(85dvh, 790px); overflow: hidden; border-radius: 23px 23px 0 0; }
  #filters-drawer form > :last-child { padding-block-end: calc(12px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion:reduce) { .nw-button, .nw-edit img, .nw-campaign__dots button::after { transition: none; } }

/* Centered campaign, with a full-image tint and the controls inside the frame. */
.nw-campaign__slide[data-copy=center] {
  place-items: center;
  min-height: min(580px, 50vw);
}
.nw-campaign__slide[data-copy=center]::after {
  --tint: var(--nw-overlay, var(--primary));
  background:
    radial-gradient(ellipse 53% 57% at center, color-mix(in srgb, var(--tint) 72%, transparent), transparent 100%),
    linear-gradient(0deg, color-mix(in srgb, var(--tint) 78%, transparent), transparent 29%),
    color-mix(in srgb, var(--tint) 26%, transparent);
}
.nw-campaign__slide[data-copy=center] .nw-campaign__copy {
  justify-self: center;
  align-self: center;
  width: min(85%, 540px);
  margin: 0;
  padding: 25px 0 49px;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  text-align: center;
  backdrop-filter: none;
}
.nw-campaign__slide[data-copy=center] .nw-campaign__kicker {
  display: inline-flex;
  align-items: center;
  color: #fff;
  margin-block-end: 14px;
}
.nw-campaign__slide[data-copy=center] :is(h1,h2) {
  font-size: clamp(1.8rem, 3.55vw, 3.1rem);
  line-height: 1.3;
  color: #fff;
  text-shadow: 0 2px 18px #1b030d80;
}
.nw-campaign__slide[data-copy=center] .nw-campaign__text {
  margin-inline: auto;
  width: min(100%, 38ch);
  text-wrap: pretty;
  color: #fff;
  text-shadow: 0 1px 10px #1b030d;
}
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__controls:not([hidden]) {
  position: absolute;
  inset: auto 0 17px;
  margin: 0;
  gap: 5px;
  pointer-events: none;
}
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__controls button {
  pointer-events: auto;
  color: #fff;
}
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__controls > button {
  background: #260a17b8;
  border-color: #fff7;
  backdrop-filter: blur(6px);
}
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__controls > button:hover { background: var(--primary); }
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__dots {
  padding-inline: 3px;
  border-radius: 99px;
  background: #260a17b8;
  backdrop-filter: blur(6px);
}
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__dots button::after { background: #fff8; }
.nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__dots button[aria-current=true]::after { background: #fff; }
.nw-blog-card__tag { color: var(--primary); background: var(--secondary); border-radius: 99px; }
.nw-blog-card__meta { padding-block-start: 13px; border-block-start: 1px solid var(--border-light); }
.nw-blog-card__meta > :last-child { color: var(--primary); }
.nw-blog-card__art img { transition: scale .4s ease; }
.nw-blog-card:focus-within, .nw-edit:focus-within { outline: 2px solid var(--primary); outline-offset: 2px; }
.orzen-category-card { padding: 6px; border-radius: 22px; }
.orzen-category-card__art { border-radius: 16px; }
.orzen-category-card__label span { width: 9px; height: 9px; margin-inline: 6px; }
.orzen-card { --orzen-radius: clamp(16px, 2vw, 24px); background: var(--nw-paper); }
.orzen-card__details h3 a:hover { color: var(--primary); text-decoration: none; }
.orzen-card__actions { border: 0; padding-block-start: 0; }
.orzen-card__actions .orzen-card__buy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
  padding: 5px 7px;
  padding-inline-start: clamp(7px, 1.1vw, 15px);
  text-align: start;
  color: var(--primary);
  background: color-mix(in srgb, var(--primary) 7%, var(--nw-paper));
  border: 1px solid color-mix(in srgb, var(--primary) 20%, transparent);
}
.orzen-card__actions .orzen-card__buy:hover { background: var(--primary); color: var(--primary-foreground); }
.orzen-card__actions .orzen-card__buy[hidden] { display: none; }
.orzen-card__buy-icon {
  display: grid;
  flex: none;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: var(--primary-foreground);
  background: var(--primary);
}
.orzen-card__buy:hover .orzen-card__buy-icon { color: var(--primary); background: var(--primary-foreground); }
@media (hover:hover) { .nw-blog-card:hover img { scale: 1.04; } }

/* App drawer */
.nw-mobile-trigger {
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: color-mix(in srgb, var(--primary) 7%, var(--background));
  color: var(--primary);
}
@media (max-width: 1023px) { .nw-mobile-trigger { display: grid; } }
.nw-mobile-menu:not([open]) { display: none; }
.nw-mobile-menu[open] {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  background: transparent;
  color: var(--foreground);
  overflow: hidden;
}
.nw-mobile-menu::backdrop { background: #210b19a0; backdrop-filter: blur(4px); }
.nw-mobile-menu__panel {
  display: flex;
  flex-direction: column;
  position: relative;
  width: min(88%, 379px);
  height: 100%;
  background: var(--nw-paper);
  border-radius: 0;
  overflow: hidden;
  box-shadow: 0 0 40px #210b1959;
  --drawer-offset: -100%;
}
.nw-mobile-menu__panel:dir(rtl) { --drawer-offset: 100%; }
.nw-mobile-menu__brand {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  padding: max(23px, env(safe-area-inset-top, 0px)) 20px 22px;
  border-block-end: 2px solid #c79483;
  background: radial-gradient(ellipse at 100% 0%, #c7948340, transparent 70%), var(--primary);
  color: var(--primary-foreground);
}
.nw-mobile-menu__wordmark .orzen-wordmark { color: inherit; font-size: 1.45rem; }
.nw-mobile-menu__brand p { opacity: .87; font-size: .82rem; margin-block-start: 4px; }
.nw-mobile-menu__brand button {
  display: grid;
  flex: none;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid #fff8;
  border-radius: 0;
}
.nw-mobile-menu__body { flex: 1; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; padding: 12px 15px max(14px, env(safe-area-inset-bottom, 0px)); }
.nw-mobile-menu__nav { display: grid; border-block-start: 1px solid var(--border-light); }
.nw-mobile-menu__nav :is(a,summary), .nw-mobile-menu__account :is(a,button) {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  gap: 7px;
  min-height: 44px;
  padding: 9px 12px;
  border-radius: 0;
  font-size: .91rem;
  text-decoration: none;
}
.nw-mobile-menu__nav summary::-webkit-details-marker { display: none; }
.nw-mobile-menu__nav > :is(a,details) { border-block-end: 1px solid var(--border-light); }
.nw-mobile-menu__nav > a[aria-current=page] { box-shadow: inset -3px 0 var(--primary); font-weight: 650; }
.nw-mobile-menu__nav > a[aria-current=page]:dir(ltr) { box-shadow: inset 3px 0 var(--primary); }
.nw-mobile-menu__nav > :is(a,details[open]), .nw-mobile-menu__account { background: var(--background); }
.nw-mobile-menu__nav a[aria-current=page], .nw-mobile-menu__nav :is(a,summary):hover { color: var(--primary); background: var(--secondary); }
.nw-mobile-menu__nav > a::after {
  content: '';
  width: 7px;
  height: 7px;
  flex: none;
  border-block-start: 1px solid;
  border-inline-end: 1px solid;
  rotate: 45deg;
  opacity: .7;
}
.nw-mobile-menu__nav > a:dir(rtl)::after { rotate: -45deg; }
.nw-mobile-menu__sub { margin: 2px 11px 8px; border-inline-start: 1px solid var(--border); }
.nw-mobile-menu__sub .nw-mobile-menu__all { color: var(--primary); font-weight: 650; }
.nw-mobile-menu__account { margin-block-start: auto; padding: 6px; border-block-start: 1px solid var(--border-light); }
.nw-mobile-menu__nav { margin-block-end: 14px; }
.nw-mobile-menu__account :is(a,button) { justify-content: flex-start; gap: 10px; }
.nw-mobile-menu__account svg { flex: none; color: var(--primary); }
.nw-mobile-menu__brand button:focus-visible { outline-color: currentColor; }
.nw-mobile-menu__account :is(a,button):hover { color: var(--primary); background: var(--secondary); }

#footer a:focus-visible, .nw-campaign button:focus-visible, .nw-campaign a:focus-visible { outline: 2px solid #f7c6b7; outline-offset: 2px; }

@media (max-width: 650px) {
  .nw-campaign__slide[data-copy=center] { min-height: 365px; }
  .nw-campaign__slide[data-copy=center]::after {
    background:
      radial-gradient(ellipse 100% 55% at center, color-mix(in srgb, var(--tint) 74%, transparent), transparent 93%),
      linear-gradient(0deg, color-mix(in srgb, var(--tint) 84%, transparent), transparent 26%),
      color-mix(in srgb, var(--tint) 25%, transparent);
  }
  .nw-campaign__slide[data-copy=center] .nw-campaign__copy { width: 87%; }
  .nw-campaign__slide[data-copy=center] :is(h1,h2) { font-size: clamp(1.27rem, 5.15vw, 1.64rem); }
  .nw-campaign__slide[data-copy=center] .nw-campaign__text { font-size: .87rem; margin-block: 10px 14px; }
  .nw-campaign:not(:has(.nw-campaign__slide:not([data-copy=center]))) .nw-campaign__controls:not([hidden]) { inset-block-end: 11px; }
}
@media (prefers-reduced-motion: no-preference) {
  .nw-mobile-menu[open] .nw-mobile-menu__panel { animation: nw-drawer-in .27s cubic-bezier(.16,1,.3,1) both; }
  @keyframes nw-drawer-in { from { translate: var(--drawer-offset) 0; } }
}
@media (prefers-reduced-motion: reduce) {
  .nw-blog-card__art img { transition: none; }
}

/* White storefront and centered navigation. */
.orzen-header {
  background: color-mix(in srgb, var(--background) 94%, transparent);
  border-block-end: 1px solid var(--border-light);
  box-shadow: 0 5px 23px #24151b08;
  backdrop-filter: blur(16px);
  padding: 10px 0;
}
.nw-header__inner {
  position: relative;
  display: grid;
  grid-template-columns: 1fr minmax(0, auto) 1fr;
  align-items: center;
  min-height: 49px;
  gap: 14px;
}
.nw-header__brand { grid-column: 1; justify-self: start; }
.nw-header__links {
  grid-column: 2;
  gap: clamp(2px, .45vw, 8px);
  padding: 4px 8px;
  border: 1px solid var(--border-light);
  border-radius: 999px;
  background: color-mix(in srgb, var(--secondary) 52%, var(--background));
}
.nw-header__links > li :is(a,button) { text-decoration: none; }
.nw-header__links > li > a,
.nw-header__links > li > :is(el-dropdown,div) > button {
  display: flex;
  align-items: center;
  min-height: 36px;
  padding: 5px clamp(7px, .7vw, 12px);
  border-radius: 999px;
  font-size: .86rem;
  white-space: nowrap;
}
.nw-header__links :is(button[aria-expanded=true],button[data-state=open]) {
  color: var(--primary);
  background: var(--secondary);
}
.nw-header__tools { grid-column: 3; justify-self: end; }
.nw-header__tools > li { position: relative; }
.nw-header__tools > li :is(button,a)[aria-label] { border-radius: 13px; text-decoration: none; }
.nw-header__tools [data-search-trigger] { background: var(--secondary); }
.nw-header__tools > li:last-child > :is(button,a) { background: var(--primary); color: var(--primary-foreground); }
.nw-header__tools > li:last-child > :is(button,a) svg { color: inherit; }
.nw-positioned-popover:popover-open { position: fixed; inset: auto; margin: 0; }
.orzen-header :is(el-menu,el-popover):popover-open,
.orzen-filters :is(el-options,el-popover):popover-open {
  min-width: 208px;
  max-width: min(320px, calc(100vw - 16px));
  padding: 7px;
  border: 1px solid var(--border-light);
  border-radius: 17px;
  background: var(--background);
  box-shadow: 0 16px 48px #26101d24, 0 2px 8px #26101d0a;
}
.orzen-header :is(el-menu,el-popover) :is(a,button),
.orzen-filters el-options el-option { min-height: 42px; padding-inline: 13px; border-radius: 10px; }
.orzen-header :is(el-menu,el-popover) a:focus-visible,
.orzen-filters el-option[aria-selected=true] { background: var(--secondary); color: var(--primary); }

/* Compact campaign and readable text over the image. */
.nw-campaign { margin-block-start: clamp(12px, 1.8vw, 24px); }
.nw-campaign__slide, .nw-campaign__slide[data-copy=center] {
  height: clamp(345px, 34vw, 485px);
  min-height: 0;
  aspect-ratio: auto;
}
.nw-campaign__slide img { object-position: center 39%; }
.nw-campaign__slide[data-copy=center] .nw-campaign__copy { width: min(86%, 650px); padding: 15px 0 53px; }
.nw-campaign__slide[data-copy=center] :is(h1,h2) { font-size: clamp(1.8rem, 3.1vw, 2.8rem); }
.nw-campaign__slide[data-copy=center] .nw-campaign__text { width: min(100%, 54ch); line-height: 1.6; }
.nw-campaign__slide[data-copy=center] .nw-campaign__kicker { margin-block-end: 9px; }

/* Each editorial block uses a layout appropriate to its content. */
.nw-edits { margin-block: var(--nw-gap); }
.nw-edits__heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-block-end: clamp(16px, 2vw, 29px);
}
.nw-edits__heading h2, .section-products h2, .orzen-benefits h2 {
  color: var(--primary);
  font-weight: 650;
  font-size: clamp(1.34rem, 2.7vw, 2.23rem);
  line-height: 1.25;
}
.nw-edits__heading p { max-width: 58ch; margin-block-start: 7px; color: var(--muted); font-size: .93rem; line-height: 1.65; }
.nw-edits__heading:has(.nw-section-link) { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.nw-shelf__heading { margin-block-end: 0; }
.nw-section-link {
  display: inline-flex;
  width: fit-content;
  min-height: 44px;
  align-items: center;
  gap: 7px;
  padding: 5px;
  padding-inline-start: 12px;
  border: 1px solid color-mix(in srgb, var(--primary) 27%, var(--background));
  border-radius: 999px;
  background: var(--background);
  color: var(--primary);
  font-size: .84rem;
  font-weight: 650;
  white-space: nowrap;
  text-decoration: none;
}
.nw-section-link span { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: var(--primary); color: var(--primary-foreground); font-size: .9rem; }
.nw-section-link:is(:hover, :focus-visible) { border-color: var(--primary); }
.nw-section-link:focus-visible, .nw-journal__controls button:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.nw-section-band {
  padding-block: clamp(25px, 4vw, 48px);
  background: color-mix(in srgb, #825237 8%, transparent);
  border-block: 1px solid #82523716;
}
.nw-section-band > :is(.nw-edits,.nw-collections) { margin-block: 0; }
.nw-edits__grid { display: grid; gap: clamp(10px, 1.6vw, 23px); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nw-edit { position: relative; display: grid; min-width: 0; isolation: isolate; }
.nw-edit__art { overflow: hidden; background: var(--secondary); }
.nw-edit__art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 32%; }
.nw-edit__copy { display: grid; align-content: start; gap: 7px; }
.nw-edit__copy h3 { font-size: clamp(1.03rem, 1.55vw, 1.36rem); line-height: 1.35; font-weight: 650; text-wrap: pretty; }
.nw-edit__text { font-size: clamp(.78rem, 1.2vw, .92rem); line-height: 1.62; }
.nw-edit__eyebrow { font-size: .76rem; font-weight: 650; color: var(--accent); }
.nw-edits:is([data-edit-layout=journal], [data-edit-layout=split], [data-edit-layout=lookbook]) .nw-edit .nw-button::before { content: ''; position: absolute; inset: 0; }
.nw-edit:focus-within { outline: 2px solid var(--primary); outline-offset: 3px; }
.nw-edit .nw-button:hover { transform: none; }
.nw-edits[data-edit-layout=feature] .nw-edits__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nw-edits[data-edit-layout=feature] .nw-edit {
  min-height: clamp(205px, 20vw, 270px);
  overflow: hidden;
  border-radius: 19px;
  background: var(--primary);
}
.nw-edits[data-edit-layout=feature] .nw-edit__art { position: absolute; inset: 0; }
.nw-edits[data-edit-layout=feature] .nw-edit::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, #1d0817ed, #1d08179c 36%, #1d081715 84%);
  pointer-events: none;
}
.nw-edits[data-edit-layout=feature] .nw-edit:first-child:nth-last-child(3) { grid-row: span 2; }
.nw-edits[data-edit-layout=feature] .nw-edit__copy {
  z-index: 1;
  align-self: end;
  padding: clamp(17px, 2.3vw, 34px);
  color: #fff;
}
.nw-edits[data-edit-layout=feature] .nw-edit__copy h3 { color: inherit; font-size: clamp(1.12rem, 2vw, 1.57rem); }
.nw-edits[data-edit-layout=feature] .nw-button { background: #220e1cb3; color: #fff; border-color: #fffa; }
.nw-edits[data-edit-layout=mosaic] .nw-edits__grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
.nw-edits[data-edit-layout=mosaic] .nw-edit {
  min-block-size: clamp(194px, 19vw, 258px);
  overflow: hidden;
  border-radius: clamp(16px, 2vw, 25px);
  background: var(--primary);
  color: #fff;
}
.nw-edits[data-edit-layout=mosaic] .nw-edit:first-child:nth-last-child(3) { grid-row: span 2; }
.nw-edits[data-edit-layout=mosaic] .nw-edit__art { position: absolute; inset: 0; }
.nw-edits[data-edit-layout=mosaic] .nw-edit__art img { object-position: center 45%; }
.nw-edits[data-edit-layout=mosaic] .nw-edit__art::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, #240c1af5, #240c1a9c 42%, #240c1a21 89%);
}
.nw-edits[data-edit-layout=mosaic] .nw-edit__copy {
  position: relative;
  align-self: end;
  justify-items: start;
  text-align: start;
  padding: clamp(16px, 2.6vw, 39px);
}
.nw-edits[data-edit-layout=mosaic] .nw-edit__copy h3 { color: inherit; font-size: clamp(1.14rem, 2.15vw, 1.75rem); }
.nw-edits[data-edit-layout=mosaic] .nw-edit:first-child:nth-last-child(3) h3 { font-size: clamp(1.48rem, 3.2vw, 2.48rem); }
.nw-edits[data-edit-layout=mosaic] .nw-edit__text { max-width: 39ch; }
.nw-edits[data-edit-layout=mosaic] .nw-edit .nw-button { min-block-size: 44px; }
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=framed] .nw-edit::after {
  content: '';
  position: absolute;
  inset: 8px;
  border: 1px solid #fff6;
  border-radius: inherit;
  pointer-events: none;
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=framed] .nw-edit__copy { justify-items: center; text-align: center; }
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=framed] .nw-button > span {
  display: grid; place-items: center; inline-size: 24px; block-size: 24px;
  border-radius: 50%; background: var(--primary); color: #fff;
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=evening] .nw-edit__copy { align-self: end; }
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=evening] .nw-edit:nth-child(2) .nw-edit__copy { align-self: start; }
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=evening] .nw-edit:nth-child(2) .nw-edit__art::after {
  background: linear-gradient(180deg, #240c1af7, #240c1ac2 50%, #240c1a25);
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=evening] .nw-button {
  background: #27101bcf; color: #fff; border: 1px solid #fae2d2bd; border-radius: 8px;
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=evening] .nw-button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=studio] .nw-edit__art::after {
  background: linear-gradient(0deg, #310b1bf5, #310b1aa8 44%, #310b1a12 88%);
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=studio] .nw-edit__copy {
  justify-self: stretch;
  color: #fff;
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=studio] .nw-button {
  border: 1px solid #fff8; border-radius: 999px; background: #fff5ec; color: #420916;
}
.nw-edits[data-edit-layout=mosaic][data-mosaic-style=studio] .nw-button > span {
  display: grid; place-items: center; inline-size: 30px; block-size: 30px;
  border-radius: 50%; background: #420916; color: #fff;
}
@media (max-width: 767px) {
  .nw-edits[data-edit-layout=mosaic] .nw-edits__grid { grid-template-columns: minmax(0, 1fr); }
  .nw-edits[data-edit-layout=mosaic] .nw-edit:first-child:nth-last-child(3) { grid-row: auto; min-block-size: clamp(232px, 65vw, 350px); }
  .nw-edits[data-edit-layout=mosaic] .nw-edit__copy { padding: 16px; }
}
.nw-edits[data-edit-layout=split] .nw-edits__grid { grid-template-columns: 1fr; }
.nw-edits[data-edit-layout=split] .nw-edit {
  grid-template-columns: 1.35fr 1fr;
  min-height: 205px;
  background: var(--secondary);
  border: 1px solid var(--border-light);
  border-radius: 19px;
  overflow: hidden;
}
.nw-edits[data-edit-layout=split] .nw-edit:nth-child(even) { grid-template-columns: 1fr 1.35fr; }
.nw-edits[data-edit-layout=split] .nw-edit:nth-child(even) .nw-edit__art { order: 1; }
.nw-edits[data-edit-layout=split] .nw-edit__art { position: relative; }
.nw-edits[data-edit-layout=split] .nw-edit__art img { position: absolute; inset: 0; object-position: center 45%; }
.nw-edits[data-edit-layout=split] .nw-edit__copy { align-content: center; padding: clamp(15px, 2.8vw, 37px); color: var(--primary); }
.nw-edits[data-edit-layout=split] .nw-edit__text { color: var(--muted); }
.nw-edits[data-edit-layout=split] .nw-button { background: var(--primary); color: var(--primary-foreground); }
.nw-edits[data-edit-layout=lookbook] .nw-edits__grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
.nw-edits[data-edit-layout=lookbook] .nw-edit {
  grid-template-columns: 1fr;
  align-items: end;
  min-height: clamp(136px, 14vw, 184px);
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 19px;
  background: var(--primary);
  color: #fff;
}
.nw-edits[data-edit-layout=lookbook] .nw-edit__art { position: absolute; inset: 0; }
.nw-edits[data-edit-layout=lookbook] .nw-edit__art img { position: absolute; inset: 0; }
.nw-edits[data-edit-layout=lookbook] .nw-edit:not(:first-child) .nw-edit__art img { object-position: center 37%; }
.nw-edits[data-edit-layout=lookbook] .nw-edit__art::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, color-mix(in srgb, var(--primary) 85%, #180914) 0%, color-mix(in srgb, var(--primary) 62%, transparent) 42%, color-mix(in srgb, var(--primary) 20%, transparent));
  pointer-events: none;
}
.nw-edits[data-edit-layout=lookbook] .nw-edit__copy { position: relative; align-content: center; padding: clamp(13px, 2.3vw, 27px); }
.nw-edits[data-edit-layout=lookbook] .nw-edit__text { color: #fff8f1; }
.nw-edits[data-edit-layout=lookbook] .nw-edit .nw-button { min-height: 36px; padding-inline: 10px; font-size: .77rem; }
.nw-edits[data-edit-layout=lookbook] .nw-edit:first-child:nth-last-child(3) { grid-row: span 2; }
.nw-edits[data-edit-layout=lookbook] .nw-edit:first-child:nth-last-child(3) .nw-edit__art::after {
  background: linear-gradient(0deg, #210b18f2, #210b186b 39%, #210b1816 75%);
}
.nw-edits[data-edit-layout=lookbook] .nw-edit:first-child:nth-last-child(3) h3 { font-size: clamp(1.16rem, 2vw, 1.65rem); }
.nw-edits[data-edit-layout=journal] .nw-edits__grid {
  --journal-gap: clamp(9px, 1.6vw, 23px);
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - var(--journal-gap) * 2) / 3);
  gap: var(--journal-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding-block: 3px 11px;
}
.nw-edits[data-edit-layout=journal] .nw-edit, .nw-blog-card {
  grid-template-rows: auto 1fr;
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--background);
}
.nw-edits[data-edit-layout=journal] .nw-edit__art { aspect-ratio: 1.65; border-radius: 14px; }
.nw-blog-card__art { border-radius: 14px; }
.nw-journal-index { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(9px, 1.6vw, 23px); }
.nw-journal-index .nw-blog-card { box-shadow: 0 6px 13px #2b172012; }
.nw-journal-index .nw-blog-card:focus-within { outline: 2px solid var(--primary); outline-offset: 2px; }
.nw-edits[data-edit-layout=journal] .nw-edit__copy, .nw-blog-card__body { padding: clamp(13px, 1.65vw, 22px); }
.nw-edits[data-edit-layout=journal] .nw-edit__copy { align-content: stretch; color: var(--primary); }
.nw-edits[data-edit-layout=journal] .nw-edit__text { color: var(--muted); }
.nw-edits[data-edit-layout=journal] .nw-edit { scroll-snap-align: start; box-shadow: 0 6px 13px #2b172012; }
.nw-edits[data-edit-layout=journal] .nw-edit:focus-within { outline-offset: -2px; }
.nw-edits[data-edit-layout=journal] .nw-edit__eyebrow { justify-self: start; padding: 3px 8px; border-radius: 999px; background: var(--secondary); color: var(--primary); }
.nw-edits[data-edit-layout=journal] .nw-button { margin-block-start: auto; min-height: 38px; padding-inline: 10px; }
.nw-journal__controls:not([hidden]) { display: flex; justify-content: center; gap: 8px; margin-block-start: 6px; }
.nw-journal__controls button { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--primary); border-radius: 50%; background: var(--primary); color: var(--primary-foreground); }
.nw-journal__controls button:disabled { color: var(--muted); background: var(--background); border-color: var(--border); }

.section-products { padding-block: clamp(17px, 3vw, 38px); }
.orzen-card {
  --orzen-radius: 15px;
  border-color: var(--border-light);
  box-shadow: 0 4px 13px #27131908;
}
.orzen-card__details h3 { font-size: clamp(.84rem, 1.05vw, 1rem); }
.orzen-card__actions .orzen-card__buy { min-height: 44px; font-weight: 650; }
.orzen-category-card { border-color: var(--border); }
.orzen-category-card__art img { object-position: center 18%; }
.orzen-category-card__label { min-height: 62px; color: var(--primary); }
.nw-shopbar { background: color-mix(in srgb, var(--background) 96%, transparent); }
.nw-shopbar [aria-current=page] svg { background: var(--secondary); }

/* Commerce panels and disclosure controls. */
:is(#filters-drawer, #product-quick-view-modal, #search-dialog) > el-dialog-backdrop {
  background: #23101e75;
  backdrop-filter: blur(5px);
}
:is(#filters-drawer, #product-quick-view-modal, #search-dialog) el-dialog-panel {
  border: 1px solid var(--border-light);
  box-shadow: 0 22px 90px #190d2252;
}
.orzen-filters { padding: clamp(9px, 1.5vw, 18px); background: var(--secondary); border: 1px solid var(--border-light); }
#filters-drawer el-dialog-panel { overflow: hidden; border-start-end-radius: 22px; border-end-end-radius: 22px; }
#filters-drawer .nw-filter-title { min-height: 65px; background: var(--background); }
#filters-drawer .nw-filter-title h2 { color: var(--primary); font-size: 1.35rem; letter-spacing: 0; }
#filters-drawer .nw-filter-title button { flex: 0 0 44px; width: 44px; height: 44px; padding: 0; }
#filters-drawer .nw-filter-scroll > :nth-child(2) { margin-block-start: 9px; }
#filters-drawer label:has(input[name^='attributes']) { background: var(--background); border-color: var(--border); }
#filters-drawer label:has(input:checked) { background: var(--secondary); border-color: var(--primary); }
#filters-drawer button[command=close],
#product-quick-view-modal button[command=close],
#search-dialog button[command=close] {
  border: 1px solid var(--border-light);
  border-radius: 50%;
  background: var(--secondary);
  color: var(--primary);
}
#product-quick-view-modal el-dialog-panel { background: var(--background); border-radius: 23px; }
#product-quick-view-modal .product-gallery__slide > img { border-radius: 16px; }
#product-quick-view-modal .local-choice-row button,
#product-quick-view-modal .product-options__item { border-radius: 12px; }
#quick-view-footer { border-color: var(--border-light); }
#search-dialog el-dialog-panel { border-radius: 0 0 21px 21px; background: var(--background); }
#search-dialog .form-input-wrapper { border-radius: 13px; background: var(--secondary); }
#search-input { background: transparent; }
.nw-mobile-menu__body { background: var(--background); }
.nw-mobile-menu__nav > :is(a,details) { border-color: var(--border-light); }
.nw-mobile-menu__account { background: var(--secondary); }

@media (max-width: 1023px) {
  .nw-header__inner { grid-template-columns: 1fr auto 1fr; }
  .nw-header__brand { grid-column: 2; justify-self: center; }
  .nw-header__tools { grid-column: 3; }
}
@media (max-width: 767px) {
  .nw-edits[data-edit-layout=lookbook] .nw-edit { min-height: clamp(149px, 43vw, 222px); }
}
@media (max-width: 650px) {
  .nw-header__inner { width: calc(100% - 24px); gap: 4px; min-height: 43px; }
  .orzen-header { padding-block: 6px; }
  .nw-header__tools { gap: 4px; }
  .nw-header__tools svg { width: 20px; }
  .nw-campaign__slide, .nw-campaign__slide[data-copy=center] {
    height: clamp(307px, 92vw, 386px);
    min-height: 0;
    max-height: none;
  }
  .nw-campaign__slide[data-copy=center] .nw-campaign__copy { padding-block: 6px 49px; }
  .nw-campaign__slide[data-copy=center] :is(h1,h2) { font-size: clamp(1.27rem, 5.15vw, 1.64rem); }
  .nw-campaign__slide[data-copy=center] .nw-campaign__text { font-size: .84rem; margin-block: 8px 12px; }
  .nw-edits__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nw-edits[data-edit-layout=feature] .nw-edits__grid { grid-template-columns: 1fr; }
  .nw-edits[data-edit-layout=feature] .nw-edit:first-child:nth-last-child(3) { grid-row: auto; }
  .nw-edits[data-edit-layout=feature] .nw-edit { min-height: 208px; }
  .nw-edits[data-edit-layout=split] .nw-edit,
  .nw-edits[data-edit-layout=split] .nw-edit:nth-child(even) { grid-template-columns: 1fr 1fr; min-height: 178px; }
  .nw-edits[data-edit-layout=split] .nw-edit__copy { padding: 12px; gap: 5px; }
  .nw-edits[data-edit-layout=split] .nw-edit__copy h3 { font-size: .98rem; }
  .nw-edits[data-edit-layout=split] .nw-button { min-height: 35px; padding: 5px 7px; font-size: .74rem; gap: 5px; }
  #filters-drawer el-dialog-panel, #product-quick-view-modal el-dialog-panel { border-radius: 21px 21px 0 0; }
  #product-quick-view-modal [data-product-actions] { position: static; }
  #product-quick-view-modal #product-main-section .product-gallery-column { min-width: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .nw-campaign__slide[data-campaign-active] img { animation: nw-campaign-pan 8s ease-out both; }
  .nw-campaign__slide[data-campaign-active] .nw-campaign__copy { animation: nw-campaign-copy .3s ease-out both; }
  .nw-campaign:hover .nw-campaign__slide[data-campaign-active] img,
  .nw-campaign:focus-within .nw-campaign__slide[data-campaign-active] img { animation-play-state: paused; }
  :is(.nw-edit,.nw-collection,.nw-category-index .orzen-category-card,.nw-offer).nw-in-view img { animation: nw-image-in .78s cubic-bezier(.2,.7,.2,1) both; }
  :is(.nw-review,.nw-collection,.nw-edits__heading,.nw-edit,.nw-offer,.section-products .orzen-card).nw-in-view { animation: nw-panel-in .48s cubic-bezier(.22,1,.36,1) both; }
  :is(.nw-edit,.section-products .orzen-card).nw-in-view:nth-child(3n+2), .nw-collections__grid > li:nth-child(3n+2) .nw-collection.nw-in-view { animation-delay: .055s; }
  :is(.nw-edit,.section-products .orzen-card).nw-in-view:nth-child(3n), .nw-collections__grid > li:nth-child(3n) .nw-collection.nw-in-view { animation-delay: .11s; }
  @keyframes nw-image-in { from { transform: scale(1.018); } to { transform: scale(1); } }
  :is(.orzen-header,.orzen-filters) :is(el-menu,el-popover,el-options):popover-open,
  :is(#filters-drawer,#product-quick-view-modal,#search-dialog)[open] el-dialog-panel {
    animation: nw-panel-in .23s cubic-bezier(.22,1,.36,1) both;
  }
  @keyframes nw-campaign-pan { from { transform: scale(1); } to { transform: scale(1.014); } }
  @keyframes nw-campaign-copy { from { opacity: .75; } to { opacity: 1; } }
  @keyframes nw-panel-in { from { opacity: .85; translate: 0 3px; } to { opacity: 1; translate: 0 0; } }
}

/* Collections */
.nw-collections { margin-block: clamp(27px, 4.2vw, 58px); }
.nw-collections__grid, .nw-category-index {
  display: grid;
  gap: clamp(8px, 1.15vw, 16px);
}
.nw-collections__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.nw-category-index { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nw-collection, .nw-category-index .orzen-category-card {
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: end;
  min-height: clamp(145px, 14vw, 203px);
  overflow: hidden;
  padding: 0;
  border: 0;
  border-radius: clamp(13px, 1.5vw, 22px);
  background: var(--primary);
  box-shadow: 0 6px 17px #2b17201a;
  color: #fff;
  text-decoration: none;
}
.nw-category-index .orzen-category-card { min-height: clamp(142px, 17vw, 240px); }
.nw-collection__photo, .nw-category-index .orzen-category-card__art {
  position: absolute;
  inset: 0;
  height: 100%;
  border-radius: 0;
  aspect-ratio: auto;
}
.nw-collection__photo img, .nw-category-index .orzen-category-card__art img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 29%;
}
.nw-collection::before, .nw-category-index .orzen-category-card::before {
  content: '';
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(0deg, color-mix(in srgb, var(--primary) 97%, #160711), color-mix(in srgb, var(--primary) 53%, transparent) 39%, color-mix(in srgb, var(--primary) 18%, transparent) 82%);
  pointer-events: none;
}
.nw-collection::after, .nw-category-index .orzen-category-card::after {
  content: '';
  position: absolute;
  z-index: 1;
  inset: 5px;
  border: 1px solid #fff5;
  border-radius: calc(clamp(13px, 1.5vw, 22px) - 4px);
  pointer-events: none;
}
.nw-collection__info, .nw-category-index .orzen-category-card__label {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  min-height: 0;
  padding: clamp(12px, 1.1vw, 17px);
  color: #fff;
}
.nw-collection__info h3, .nw-category-index .orzen-category-card__label h3 {
  color: inherit;
  font-size: clamp(.81rem, 1.33vw, 1.11rem);
  line-height: 1.35;
  font-weight: 650;
  text-wrap: balance;
}
.nw-collection__arrow, .nw-category-index .orzen-category-card__label span {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border: 1px solid #fff8;
  border-radius: 50%;
  background: #ffffff15;
}
.nw-category-index .orzen-category-card__label span:dir(rtl), .nw-category-index .orzen-category-card__label span { rotate: none; color: inherit; }
.nw-collection:focus-visible, .orzen-category-card:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }

/* Offer */
.nw-offer.section-call-to-action {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  isolation: isolate;
  margin-block: clamp(27px, 4.6vw, 62px);
  border: 0;
  border-radius: clamp(21px, 3.1vw, 38px);
  overflow: hidden;
  background: var(--primary);
  color: var(--primary-foreground);
}
.nw-offer[data-offer-image] { min-height: clamp(216px, 23vw, 320px); }
.nw-offer[data-offer-image]::before, .nw-offer::after { content: ''; position: absolute; pointer-events: none; }
.nw-offer[data-offer-image]::before {
  z-index: 0;
  inset: 0;
  background:
    radial-gradient(ellipse at center, color-mix(in srgb, var(--primary) 83%, transparent), color-mix(in srgb, var(--primary) 33%, transparent) 85%),
    linear-gradient(0deg, #1f0b15a8, #1f0b1528 82%);
}
.nw-offer::after { inset: 8px; border: 1px solid #fff6; border-radius: calc(clamp(21px, 3.1vw, 38px) - 6px); }
.nw-offer.orzen-editorial:not(.orzen-editorial--split) .orzen-editorial__image {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
}
.nw-offer .orzen-editorial__copy {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 9px;
  max-width: 54ch;
  margin-inline: auto;
  padding: clamp(25px, 4.2vw, 55px) 18px;
  color: #fff;
  text-align: center;
}
.nw-offer .orzen-editorial__copy :is(h2,p) { margin: 0; color: inherit; }
.nw-offer h2 { font-size: clamp(1.55rem, 3.3vw, 2.75rem); line-height: 1.25; text-wrap: balance; unicode-bidi: plaintext; }
.nw-offer p { opacity: .9; }
.nw-offer__actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 9px; margin-block-start: 5px; }
.nw-offer__coupon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 6px 11px;
  border: 1px dashed #fffc;
  border-radius: 999px;
  background: #260c1980;
  font-size: .79rem;
}
.nw-offer__coupon code { font-size: 1rem; font-weight: 650; letter-spacing: .04em; }
.nw-offer .orzen-editorial__link { gap: 8px; margin: 0; color: var(--primary); background: #fffaf8; }
.nw-offer .orzen-editorial__link:hover { color: var(--primary); background: #f5dfe3; }
.nw-offer .orzen-editorial__link:focus-visible { outline-color: var(--primary-foreground); }
@media (min-width: 768px) {
  .nw-offer:is([data-banner-composition="start"], [data-banner-composition="end"]) .orzen-editorial__copy {
    justify-items: start;
    text-align: start;
    margin-inline: clamp(24px, 7vw, 108px) auto;
  }
  .nw-offer[data-banner-composition="end"] .orzen-editorial__copy {
    margin-inline: auto clamp(24px, 7vw, 108px);
  }
  .nw-offer[data-banner-composition]:not([data-banner-composition="center"]) p { margin-inline: 0; }
  .nw-offer[data-banner-composition="start"]:dir(ltr),
  .nw-offer[data-banner-composition="end"]:dir(rtl) { --banner-text-side: to right; }
  .nw-offer[data-banner-composition="start"]:dir(rtl),
  .nw-offer[data-banner-composition="end"]:dir(ltr) { --banner-text-side: to left; }
  .nw-offer[data-offer-image][data-banner-composition]:not([data-banner-composition="center"])::before {
    background: linear-gradient(var(--banner-text-side, to left), #2b111cf2, #2b111c91 47%, #24111c24 88%);
  }
}
.nw-offer-dialog {
  position: fixed;
  inset: 0;
  width: min(calc(100% - 28px), 610px);
  max-height: calc(100dvh - 28px);
  margin: auto;
  padding: 0;
  border: 0;
  border-radius: clamp(20px, 3vw, 29px);
  overscroll-behavior: contain;
  background: var(--primary);
  color: #fff;
  box-shadow: 0 25px 75px #1d07188c;
}
.nw-offer-dialog:not([open]) { display: none; }
.nw-offer-dialog::backdrop { background: #1f101ab0; }
.nw-offer-dialog__panel.nw-offer {
  position: relative;
  display: grid;
  isolation: isolate;
  margin: 0;
  border: 0;
  border-radius: inherit;
  background: var(--primary);
}
.nw-offer-dialog__panel.nw-offer[data-offer-image]::before {
  background: linear-gradient(0deg, #190b13ee, #2e1220a6 55%, #34102159), radial-gradient(ellipse at center, #351322a6, transparent);
}
.nw-offer-dialog .orzen-editorial__copy { width: 100%; max-width: 480px; padding: 45px clamp(17px, 4vw, 38px) 34px; }
.nw-offer-dialog__tag { color: #ffe5db; font-size: .82rem; font-weight: 650; }
.nw-offer-dialog .orzen-editorial__copy h2 { font-size: clamp(1.4rem, 4.8vw, 2.23rem); }
.nw-offer-dialog .orzen-editorial__copy .nw-offer-dialog__date { font-size: .81rem; color: #fce8e3; }
.nw-offer-dialog time { font-weight: 650; }
.nw-offer-dialog__timing { width: min(100%, 335px); margin-block: 4px 5px; }
.nw-offer-dialog__countdown { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(4px, 1.2vw, 8px); margin-block-start: 9px; }
.nw-offer-dialog__countdown > div {
  display: grid; gap: 2px; padding: 6px 2px;
  border: 1px solid #f9cfbf6b; border-radius: 11px; background: #1c0d17a6;
}
.nw-offer-dialog__countdown bdi { font-size: clamp(1.02rem, 4.1vw, 1.48rem); line-height: 1.2; font-variant-numeric: tabular-nums; font-weight: 700; }
.nw-offer-dialog__countdown span { font-size: .7rem; color: #f9ded5; }
.nw-offer-dialog .nw-offer__coupon { cursor: pointer; }
.nw-offer-dialog .nw-offer__coupon:focus-visible, .nw-offer-dialog__close button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.nw-offer-dialog__close { position: absolute; z-index: 2; inset-block-start: 12px; inset-inline-end: 13px; }
.nw-offer-dialog__close button {
  display: grid;
  place-items: center;
  inline-size: 44px;
  block-size: 44px;
  border-radius: 50%;
  color: #fff;
  background: #260c19b3;
  font-size: 1.5rem;
  line-height: 1;
}
@media (prefers-reduced-motion: no-preference) {
  .nw-offer-dialog[open] { animation: nw-offer-enter .22s ease-out; }
}
@media (max-height: 460px) {
  .nw-offer-dialog .orzen-editorial__copy { gap: 6px; padding-block: 39px 24px; }
}

/* Ratings */
.nw-reviews {
  display: grid;
  grid-template-columns: minmax(190px, 1fr) minmax(0, 3fr);
  align-items: stretch;
  gap: clamp(9px, 1.55vw, 21px);
  margin-block: var(--nw-gap);
}
.nw-reviews__intro {
  display: grid;
  align-content: center;
  gap: 8px;
  padding: clamp(15px, 2.15vw, 31px);
  border-radius: 22px;
  background: var(--primary);
  color: var(--primary-foreground);
}
.nw-reviews__intro h2 { font-size: clamp(1.12rem, 2vw, 1.65rem); line-height: 1.3; font-weight: 650; }
.nw-reviews__score { display: flex; align-items: center; gap: 10px; }
.nw-reviews__score strong { font-size: clamp(1.85rem, 3.8vw, 2.9rem); line-height: 1; }
.nw-reviews__score small { font-size: .9rem; opacity: .85; }
.nw-reviews__score span { color: #ffe1ae; font-size: 1.28rem; }
.nw-reviews__intro p { line-height: 1.62; font-size: .82rem; color: #fff; opacity: .88; }
.nw-reviews__list {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 2 * 10px) / 3);
  align-items: stretch;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  gap: 10px;
}
.nw-review {
  display: grid;
  grid-template-rows: auto 1fr auto;
  position: relative;
  gap: 15px;
  padding: clamp(14px, 1.6vw, 23px);
  border: 1px solid var(--border);
  border-radius: 22px;
  background: var(--secondary);
  scroll-snap-align: start;
}
.nw-review__quote {
  position: absolute;
  inset: 5px 0 auto;
  inset-inline-start: auto;
  inset-inline-end: 16px;
  line-height: 1;
  font: 3.6rem/1 Georgia, serif;
  color: color-mix(in srgb, var(--primary) 22%, var(--background));
}
.nw-review__rating { display: flex; gap: 3px; width: fit-content; color: #7e4923; font-size: .93rem; }
.nw-review blockquote { color: var(--foreground); font-size: .89rem; line-height: 1.73; }
.nw-review__author, .nw-product-review__name { display: flex; align-items: center; gap: 8px; color: var(--primary); font-size: .83rem; font-weight: 650; }
.nw-review__author span, .nw-product-review__name span { display: grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 50%; color: var(--primary-foreground); background: var(--primary); }
.nw-reviews__controls { display: flex; gap: 7px; margin-block-start: 3px; }
.nw-reviews__controls[hidden] { display: none; }
.nw-reviews__controls button { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #fff7; border-radius: 50%; font-size: 1.05rem; }
.nw-reviews__controls button:disabled { opacity: .44; }
.nw-reviews__controls button:focus-visible { outline-color: #fff !important; }
.nw-product-review { padding: 13px 15px; gap: 9px; border-radius: 15px; background: var(--secondary); }
.nw-product-review > div:first-child { gap: 8px; }
.nw-product-review__name span { width: 29px; height: 29px; }

/* Footer */
#footer.nw-footer {
  padding-block: clamp(23px, 4.3vw, 59px) 18px;
  background: radial-gradient(ellipse at 90% 0, color-mix(in srgb, var(--primary) 68%, transparent), transparent 62%), #21131b;
}
.nw-footer__grid { display: grid; grid-template-columns: minmax(185px, 1.65fr) repeat(4, minmax(105px, 1fr)); gap: clamp(14px, 2vw, 32px); }
.nw-footer__brand {
  display: grid;
  align-content: start;
  justify-items: start;
  gap: 15px;
  padding-inline-end: clamp(11px, 2.1vw, 33px);
  border-inline-end: 1px solid #fff3;
}
.nw-footer__logo .orzen-wordmark { font-size: clamp(1.6rem, 3.5vw, 3.35rem); white-space: normal; overflow-wrap: anywhere; line-height: 1.08; }
.nw-footer__logo img { width: auto; max-width: 100%; max-height: 68px; object-fit: contain; }
.nw-footer__brand :is(p,.text-sm) { font-size: .86rem; line-height: 1.66; }
.nw-footer__nav { min-width: 0; align-self: start; }
.nw-footer__nav summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: 5px 11px;
  color: #f6c6bf;
  border-block-end: 1px solid #fff3;
  list-style: none;
  font-size: .95rem;
  font-weight: 650;
}
.nw-footer__nav summary::-webkit-details-marker { display: none; }
.nw-footer__chevron { width: 7px; height: 7px; border-right: 1px solid; border-bottom: 1px solid; rotate: 45deg; margin-inline: 5px; }
.nw-footer__nav[open] .nw-footer__chevron { rotate: 225deg; translate: 0 2px; }
.nw-footer__nav ul { display: grid; margin-block: 5px 0; }
.nw-footer__nav a { display: inline-flex; align-items: center; min-height: 33px; font-size: .87rem; }
#footer .nw-footer__nav a:hover { color: #ffbdb3; }
.nw-footer__contact {
  grid-column: 1 / -1;
  padding: 13px clamp(13px, 2vw, 24px);
  border: 1px solid #ffe1d13b;
  border-radius: 19px;
  background: color-mix(in srgb, var(--primary) 22%, #f5e1df);
  color: #2b1521;
}
.nw-footer__contact > div, .nw-footer__contact ul { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 15px; margin: 0; }
.nw-footer__contact ul { margin-inline-start: auto; justify-content: flex-end; }
.nw-footer__contact h2 { font-size: clamp(.96rem, 1.35vw, 1.14rem); font-weight: 650; }
.nw-footer__contact-icon { flex: none; }
#footer .nw-footer__contact :is(a,.text-foreground) { color: #2b1521; }
#footer .nw-footer__contact a:hover { color: #53102b; }
#footer .nw-footer__contact :is(a):focus-visible { outline-color: #4f2031; }
#footer .nw-footer__contact .nw-footer__contact-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  padding: 5px 12px;
  border: 1px solid #4c1d3a58;
  border-radius: 99px;
  font-size: .85rem;
  font-weight: 650;
}
.nw-footer__base { margin-block-start: 15px; padding-block-start: 13px; border-block-start: 1px solid #fff3; }
.nw-footer__base-inner, .nw-footer__badges, .nw-footer__marks { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.nw-footer__base-inner { justify-content: space-between; }
.nw-footer__marks > span { display: grid; min-width: 46px; min-height: 29px; place-items: center; border-radius: 7px; padding: 3px; background: #fffaf8; }
.nw-footer__marks img { width: auto; max-width: 45px; height: 21px; }
.nw-footer__top { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border: 1px solid #fff5; border-radius: 50%; font-size: 1.13rem; }
#footer summary:focus-visible { outline: 2px solid #f7c6b7; outline-offset: 3px; }

/* Interior pages and dialogs */
.orzen-category-hero { min-height: clamp(132px, 15vw, 200px); border-radius: 25px; }
.orzen-category-hero[data-visual=image] { min-height: clamp(175px, 21vw, 280px); }
.orzen-category-hero[data-visual=image] .orzen-category-hero__copy { max-width: min(100%, 45ch); background: color-mix(in srgb, var(--primary) 91%, transparent); }
.orzen-category-hero__art { object-position: center 27%; }
.orzen-content__header { margin-block-end: 10px; border: 1px solid var(--border-light); border-radius: 23px; }
.orzen-content__body { border-block-start: 1px solid var(--orzen-line); border-radius: 19px; }
.nw-article__cover { aspect-ratio: 2.5; border-radius: 22px; }
.nw-article :is(#blog-title,.orzen-content__body h2) { color: var(--primary); }
.nw-article .orzen-content__body { margin-block-start: 14px; }
.product-gallery { border: 1px solid var(--border-light); }
.product-details-column, .cart-with-products .lg\:col-span-4 > div:has([data-order-summary-section]) {
  border-radius: 24px;
  box-shadow: 0 10px 35px #29131c0e;
}
#product-quick-view-modal el-dialog-panel { max-width: min(1010px, 100%); }
.nw-quick-view__header { position: sticky; top: 0; z-index: 4; padding: 6px 9px 6px 13px; border: 1px solid var(--border-light); border-radius: 14px; background: var(--background); color: var(--primary); }
.nw-quick-view__header h2 { color: inherit; }
#product-quick-view-modal .product-details-column { box-shadow: none; }
#quick-view-footer { margin-block-start: 11px; padding-block-start: 12px; }
#filters-drawer .nw-filter-actions { background: var(--secondary); }
#filters-drawer .product-filter__options { gap: 7px; }
#filters-drawer .product-filter__checkbox { accent-color: var(--primary); }
:is(#search-dialog,#notify-me-dialog,#cities-dialog) el-dialog-panel { border-radius: 24px; }
#search-dialog el-dialog-panel { width: min(760px, calc(100% - 24px)); margin: 14px auto 0; box-shadow: 0 18px 70px #20142142; }
#search-dialog el-dialog-panel > div { padding: clamp(13px, 2.2vw, 24px); }
#search-dialog [data-search-products] { gap: 8px; }
#search-dialog [data-search-products] > a {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  width: min(100%, 320px);
  padding: 5px;
  border: 1px solid var(--border-light);
  border-radius: 14px;
  color: var(--primary);
  text-decoration: none;
}
#search-dialog [data-search-products] > a > :first-child { border-radius: 10px; }
#search-dialog [data-search-products] > a > :nth-child(2) { min-width: 0; margin: 0; padding-inline-end: 5px; }
#search-dialog [data-search-products] > a h3 { line-height: 1.5; font-weight: 650; }
:is(#notify-me-dialog,#cities-dialog) el-dialog-panel { border: 1px solid var(--border-light); box-shadow: 0 20px 65px #20142138; }

@media (max-width: 1050px) {
  .nw-footer__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .nw-footer__brand { grid-column: 1 / -1; border-inline-end: 0; border-block-end: 1px solid #fff3; padding-block-end: 12px; }
}
@media (max-width: 950px) {
  .nw-collections__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .nw-reviews { grid-template-columns: minmax(155px, .8fr) minmax(0, 2fr); }
  .nw-reviews__list { grid-auto-columns: calc((100% - 10px) / 2); }
}
@media (max-width: 650px) {
  .nw-edits__heading { column-gap: 8px; margin-block-end: 12px; }
  .nw-shelf__heading { margin-block-end: 0; }
  .nw-edits__heading h2, .section-products h2, .orzen-benefits h2, .nw-reviews__intro h2 { font-size: clamp(1.07rem, 4.5vw, 1.35rem); }
  .nw-edits__heading p { margin-block-start: 4px; font-size: .78rem; line-height: 1.5; }
  .nw-section-link { font-size: .74rem; padding-inline: 8px 5px; gap: 4px; }
  .nw-section-link span { width: 24px; height: 24px; font-size: .8rem; }
  .nw-edits[data-edit-layout=lookbook] .nw-edits__grid { grid-template-columns: minmax(0, 1fr); }
  .nw-edits[data-edit-layout=lookbook] .nw-edit:first-child:nth-last-child(3) { min-height: clamp(197px, 55vw, 286px); grid-row: auto; }
  .nw-edits[data-edit-layout=lookbook] .nw-edit__copy { gap: 4px; }
  .nw-edits[data-edit-layout=lookbook] .nw-edit__copy h3 { font-size: .95rem; }
  .nw-edits[data-edit-layout=journal] .nw-edits__grid { grid-auto-columns: calc((100% - var(--journal-gap)) / 2); }
  .nw-edits[data-edit-layout=journal] .nw-edit { padding: 4px; border-radius: 15px; }
  .nw-edits[data-edit-layout=journal] .nw-edit__art { border-radius: 11px; aspect-ratio: 1.38; }
  .nw-edits[data-edit-layout=journal] .nw-edit__copy { padding: 8px 5px 5px; gap: 6px; }
  .nw-edits[data-edit-layout=journal] .nw-edit__copy h3 { font-size: clamp(.83rem, 3.55vw, 1rem); }
  .nw-edits[data-edit-layout=journal] .nw-edit__eyebrow { font-size: .66rem; }
  .nw-edits[data-edit-layout=journal] .nw-button { font-size: .7rem; padding-inline: 6px; }
  .nw-edits[data-edit-layout=journal] .nw-edit__text { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
  .nw-journal-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nw-journal-index .nw-blog-card { padding: 4px; border-radius: 15px; }
  .nw-journal-index .nw-blog-card__art { border-radius: 11px; }
  .nw-journal-index .nw-blog-card__body { padding: 8px 5px 5px; gap: 6px; }
  .nw-journal-index .nw-blog-card__body h3 { font-size: clamp(.83rem, 3.55vw, 1rem); }
  .nw-journal-index .nw-blog-card__body p { font-size: .76rem; }
  .nw-journal-index .nw-blog-card__meta { flex-wrap: wrap; }
  .nw-journal-index .nw-blog-card__meta span { font-size: .71rem; }
  .nw-collections__grid, .nw-category-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nw-collection, .nw-category-index .orzen-category-card { min-height: clamp(109px, 29vw, 162px); }
  .nw-collection__arrow, .nw-category-index .orzen-category-card__label span { width: 23px; height: 23px; font-size: .74rem; }
  .nw-offer[data-offer-image] { min-height: 213px; }
  .nw-offer h2 { font-size: clamp(1.22rem, 5vw, 1.57rem); }
  .nw-offer p { font-size: .83rem; }
  .nw-offer__actions { gap: 6px; }
  .nw-offer__coupon, .nw-offer .orzen-editorial__link { min-height: 42px; padding-inline: 9px; }
  .nw-reviews { grid-template-columns: minmax(0, 1fr); }
  .nw-reviews__intro { grid-template-columns: minmax(0, 1fr) auto; }
  .nw-reviews__intro h2 { align-self: center; }
  .nw-reviews__intro .nw-reviews__score { grid-column: 2; grid-row: 1; }
  .nw-reviews__intro p { grid-column: 1; }
  .nw-reviews__controls { grid-column: 2; align-self: end; }
  .nw-reviews__list { grid-auto-columns: min(85%, 280px); }
  .nw-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .nw-footer__brand { gap: 9px; padding-block-end: 18px; }
  .nw-footer__nav summary { min-height: 46px; padding-block: 8px; cursor: pointer; }
  .nw-footer__nav ul { padding-inline-start: 11px; margin-block: 2px 6px; }
  .nw-footer__nav a { min-height: 42px; }
  .nw-footer__contact { grid-row: 2; margin-block: 13px 4px; padding: 9px; }
  .nw-footer__contact > div, .nw-footer__contact ul { gap: 6px 9px; }
  .nw-footer__contact-icon { width: 20px; height: 20px; }
  .nw-footer__base-inner { justify-content: flex-start; }
  .nw-footer__copyright { flex: 1 0 100%; order: 3; }
  .nw-footer__top { margin-inline-start: auto; }
  #search-dialog el-dialog-panel { margin-block-start: 8px; border-radius: 19px; }
  .nw-quick-view__header { top: -1px; }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  :is(.nw-collection__photo,.nw-category-index .orzen-category-card__art,.nw-edit__art) img { transition: scale .45s cubic-bezier(.22,1,.36,1); }
  :is(a.nw-collection,.nw-category-index .orzen-category-card,.nw-edit:has(a)):hover img { scale: 1.045; }
  a.nw-collection:hover .nw-collection__arrow { background: #fff; color: var(--primary); }
}
.nw-promotion:not([hidden]) {
  display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(170px, .65fr);
  overflow: hidden; border-radius: 25px; border: 1px solid color-mix(in srgb, var(--primary) 19%, white);
  background: #fcf6f2; color: #311921; margin-block: clamp(24px, 5vw, 72px);
}
.nw-promotion__content { min-width: 0; padding: clamp(22px, 5vw, 64px); align-self: center; }
.nw-promotion__label {
  display: inline-flex; align-items: center; gap: .55rem; color: #701a31;
  font-weight: 700; font-size: .82rem;
}
.nw-promotion__label::before {
  content: ''; width: .45rem; height: .45rem; border-radius: 2px;
  background: currentColor; transform: rotate(45deg); flex: none;
}
.nw-promotion h2, .nw-promotion-dialog h2 {
  margin-block: .4rem .45rem; font-size: clamp(1.45rem, 3vw, 2.75rem); font-weight: 700; line-height: 1.2;
}
.nw-promotion p, .nw-promotion-dialog p { margin-block: .4rem; line-height: 1.55; }
.nw-promotion .nw-promotion__expiry, .nw-promotion-dialog .nw-promotion__expiry { color: #6c3d49; font-size: .88rem; margin-block: .7rem; }
.nw-promotion__expiry time { font-weight: 700; }
.nw-promotion__actions, .nw-promotion-dialog__coupon { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem .9rem; margin-block-start: .9rem; }
.nw-promotion__actions button, .nw-promotion-dialog__cta {
  display: inline-flex; align-items: center; justify-content: center; gap: .75rem; min-height: 44px; padding: .6rem 1rem;
  border: 1px solid transparent; border-radius: 10px; background: var(--primary); color: white; font-weight: 650; text-decoration: none;
}
.nw-promotion code, .nw-promotion-dialog code { color: #701a31; font-weight: 700; letter-spacing: .07em; overflow-wrap: anywhere; }
.nw-promotion__visual {
  position: relative; min-height: 170px; display: grid; place-items: center; isolation: isolate;
  background: var(--primary); color: #fff; overflow: hidden;
}
.nw-promotion__visual img, .nw-promotion__visual::after { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; }
.nw-promotion__visual::after { content: ''; background: linear-gradient(145deg, #31101b73, #31101bc4); }
.nw-promotion__visual strong { display: grid; justify-items: center; font-size: clamp(3.1rem, 8vw, 8.3rem); line-height: .88; letter-spacing: -.07em; }
.nw-promotion__visual small { margin-block-start: .55rem; font-size: clamp(.78rem, 1.55vw, 1.2rem); letter-spacing: normal; }
.nw-promotion-dialog[open] {
  position: fixed; inset: 0; display: grid; grid-template-columns: .82fr 1.18fr; margin: auto;
  width: min(calc(100% - 28px), 760px); max-height: calc(100dvh - 32px); overflow: auto;
  overscroll-behavior: contain; border: 0; border-radius: 22px; padding: 0; background: #fff9f5; color: #311921;
  box-shadow: 0 25px 80px #1c08175c;
}
.nw-promotion-dialog:not(:has(.nw-promotion-dialog__media)) { grid-template-columns: 1fr; max-width: 460px; }
.nw-promotion-dialog:not([open]) { display: none; }
.nw-promotion-dialog::backdrop { background: #29121db3; }
.nw-promotion-dialog__media { display: grid; place-items: center; background: #eee4e0; }
.nw-promotion-dialog__media img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 5; max-height: 520px; object-fit: contain; }
.nw-promotion-dialog__copy { min-width: 0; align-self: center; padding: clamp(24px, 4vw, 48px); padding-block-start: clamp(45px, 6vw, 60px); }
.nw-promotion-dialog__product { font-weight: 700; color: #6c3d49; }
.nw-promotion-dialog__dismiss { position: absolute; z-index: 1; inset-block-start: 9px; inset-inline-end: 9px; }
.nw-promotion-dialog__dismiss button, .nw-promotion-dialog__coupon button {
  min-width: 44px; min-height: 44px; border: 1px solid #e1cbd1; border-radius: 9px; background: #fff9f5; color: #701a31; font-weight: 650;
}
.nw-promotion-dialog__dismiss button { font-size: 1.55rem; line-height: 1; }
.nw-promotion-dialog__coupon { padding: .3rem .7rem; justify-content: space-between; border: 1px dashed #b58b98; border-radius: 10px; }
.nw-promotion-dialog__coupon button { padding-inline: .65rem; }
.nw-promotion-dialog__cta { margin-block-start: .85rem; }
.nw-promotion button:focus-visible, .nw-promotion a:focus-visible { outline: 2px solid #9b3550; outline-offset: 3px; }
.nw-card-deal { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.nw-card-deal > span, .nw-card-deal__percent { padding: .23rem .46rem; border-radius: 6px; font-size: .68rem; font-weight: 700; white-space: nowrap; }
.nw-card-deal > span { color: white; background: #55172b; box-shadow: 0 1px 3px #28161933; }
.nw-card-deal > span + span, .nw-card-deal__percent { color: #671730; background: #fff1ed; }
@media (max-width: 570px) {
  .nw-promotion:not([hidden]) { grid-template-columns: minmax(0, 1fr) minmax(90px, .43fr); border-radius: 16px; }
  .nw-promotion__content { padding: 17px 13px; }
  .nw-promotion h2, .nw-promotion-dialog h2 { font-size: 1.4rem; }
  .nw-promotion p, .nw-promotion-dialog p { font-size: .86rem; }
  .nw-promotion__actions { gap: .5rem; }
  .nw-promotion__actions button { padding-inline: .55rem; }
  .nw-promotion-dialog[open] { grid-template-columns: 1fr; }
  .nw-promotion-dialog__media img { height: clamp(118px, 28dvh, 228px); }
  .nw-promotion-dialog__copy { padding: 16px; }
  .nw-promotion-dialog:not(:has(.nw-promotion-dialog__media)) .nw-promotion-dialog__copy { padding-block-start: 58px; }
}
@media (prefers-reduced-motion: no-preference) {
  .nw-promotion-dialog[open] { animation: nw-offer-enter .22s ease-out; }
  @keyframes nw-offer-enter { from { opacity: 0; transform: translateY(11px); } }
}
