/* Honeypot pole (newsletter) — skryté mimo viewport, ne display:none */
.nwl-hp { position:absolute !important; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* ── Flash toast ─────────────────────────────────────────── */
.flash-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9990;
  background: rgba(0,0,0,.55);
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}
.flash-backdrop--visible {
  opacity: 1;
  pointer-events: auto;
}

.flash-toast {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(.88);
  z-index: 9999;
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
  width: min(570px, 90vw);
  padding: var(--space-6) var(--space-6);
  border-radius: var(--radius-lg);
  box-shadow: 0 24px 64px rgba(0,0,0,.28), 0 4px 16px rgba(0,0,0,.12);
  line-height: 1.6;
  transition: transform .35s cubic-bezier(.34,1.4,.64,1), opacity .25s ease;
  opacity: 0;
  background: var(--color-white);
  pointer-events: none;
}
.flash-toast--visible {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
  pointer-events: auto;
}
.flash-toast--hiding {
  transform: translate(-50%, -50%) scale(.92);
  opacity: 0;
  pointer-events: none;
}

.flash-toast--success { border-top: 5px solid var(--color-success); }
.flash-toast--error   { border-top: 5px solid var(--color-danger);  }
.flash-toast--warning { border-top: 5px solid var(--color-warning); }

.flash-toast__icon { flex-shrink: 0; width: 32px; height: 32px; margin-top: 2px; }
.flash-toast--success .flash-toast__icon { color: var(--color-success); }
.flash-toast--error   .flash-toast__icon { color: var(--color-danger);  }
.flash-toast--warning .flash-toast__icon { color: var(--color-warning); }

.flash-toast__body  { flex: 1; }
.flash-toast__title { font-weight: 700; font-size: var(--text-lg); margin-bottom: var(--space-1); color: var(--color-ink); }
.flash-toast__text  { font-size: var(--text-base); color: var(--color-slate); }

.flash-toast__close {
  flex-shrink: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-silver);
  padding: 0;
  line-height: 1;
  font-size: 1.5rem;
  transition: color .15s;
  margin-top: -4px;
}
.flash-toast__close:hover { color: var(--color-slate); }

.flash-toast__progress {
  position: absolute;
  bottom: 0; left: 0;
  height: 4px;
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  animation: flash-progress 5s linear forwards;
}
.flash-toast--success .flash-toast__progress { background: var(--color-success); }
.flash-toast--error   .flash-toast__progress { background: var(--color-danger);  }
@keyframes flash-progress { from { width: 100%; } to { width: 0; } }

/* ── Mega nav ────────────────────────────────────────────── */
.mnav { background:var(--color-forest); position:sticky; top:var(--header-height); z-index:199; }
.mnav__inner { display:flex; align-items:stretch; }
.mnav__list  { display:flex; align-items:stretch; flex:1; list-style:none; overflow:visible; }
.mnav__item  { position:static; }
.mnav__link  {
  display:flex; align-items:center; gap:5px;
  padding:0 16px; height:48px;
  font-size:13px; font-weight:600; letter-spacing:.04em; text-transform:uppercase;
  color:oklch(92% .02 145); white-space:nowrap; cursor:pointer; text-decoration:none;
  border-bottom:2px solid transparent;
  transition:color 150ms ease, background 150ms ease, border-color 150ms ease;
}
.mnav__link:hover, .mnav__link--open { background:var(--color-forest-dark); color:#fff; border-bottom-color:#fff; }
.mnav__link--active { background:var(--color-forest-dark); color:#fff; border-bottom-color:oklch(62% .18 46); }
.mnav__link--highlight { background:oklch(50% .18 25); color:#fff; margin-left:auto; }
.mnav__link--highlight:hover { background:oklch(42% .20 25); }
.mnav__link--sale { background:oklch(62% .18 46); color:#fff; }
.mnav__link--sale:hover { background:oklch(52% .20 46); }
.mnav__chevron { display:inline-flex; opacity:.65; transition:transform 200ms ease; }
.mnav__link--open .mnav__chevron { transform:rotate(180deg); opacity:1; }
.mnav__actions-desktop { display:flex; flex-shrink:0; }
@media (max-width:1100px) { .mnav__link { padding:0 10px; font-size:12px; } }

/* ── Mega panels ─────────────────────────────────────────── */
.mega-backdrop { position:fixed; inset:0; z-index:190; background:oklch(0% 0 0/.25); opacity:0; pointer-events:none; transition:opacity 200ms ease; }
.mega-backdrop--visible { opacity:1; pointer-events:auto; }
.mega-panel {
  position:absolute; left:0; right:0; top:100%;
  background:#fff; border-top:3px solid oklch(62% .18 46);
  box-shadow:0 12px 40px oklch(17% .008 260/.18);
  z-index:210; opacity:0; transform:translateY(-8px); pointer-events:none;
  transition:opacity 200ms ease, transform 200ms ease;
  border-radius:0 0 var(--radius-lg) var(--radius-lg);
}
.mega-panel--open { opacity:1; transform:translateY(0); pointer-events:auto; }
.mega-inner  { padding:28px 0 0; }
.mega-grid   { display:grid; gap:0; padding:0 32px 24px; }
.mega-col__title { font-size:11px; font-weight:700; color:var(--color-muted); text-transform:uppercase; letter-spacing:.08em; margin-bottom:10px; padding-bottom:6px; border-bottom:1px solid var(--color-fog); }
.mega-col__links { display:flex; flex-direction:column; gap:2px; }
.mega-col__link { font-size:13.5px; font-weight:500; color:var(--color-slate); padding:5px 8px; border-radius:6px; transition:background 120ms, color 120ms; display:block; text-decoration:none; }
.mega-col__link:hover { background:var(--color-forest-muted); color:var(--color-forest); }
.mega-featured { border-top:1px solid var(--color-fog); padding:16px 32px 20px; display:flex; gap:20px; align-items:center; background:var(--color-mist); border-radius:0 0 var(--radius-lg) var(--radius-lg); }
.mega-brands  { display:flex; align-items:center; gap:6px; flex-wrap:wrap; flex:1; }
.mega-brands__label { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--color-muted); margin-right:4px; }
.mega-brand-chip { padding:4px 12px; border-radius:var(--radius-full); border:1px solid var(--color-fog); font-size:11.5px; font-weight:600; color:var(--color-slate); transition:all 150ms; white-space:nowrap; background:#fff; text-decoration:none; display:inline-block; }
.mega-brand-chip:hover { background:var(--color-forest); border-color:var(--color-forest); color:#fff; }
.mega-all-link { font-size:12px; font-weight:700; color:var(--color-forest); text-decoration:none; white-space:nowrap; padding:4px 8px; }
.mega-all-link:hover { text-decoration:underline; }

/* ── Mobile nav button ───────────────────────────────────── */
.mnav-mobile-btn { display:none; align-items:center; justify-content:center; width:44px; height:44px; background:none; border:none; cursor:pointer; color:#fff; border-radius:var(--radius-md); transition:background 150ms; flex-shrink:0; }
.mnav-mobile-btn:hover { background:var(--color-forest-dark); }
.mnav-mobile-label { font-family:var(--font-display); font-weight:700; font-size:13px; color:#fff; text-transform:uppercase; letter-spacing:.04em; display:none; align-items:center; gap:8px; }
@media (max-width:860px) {
  .mnav__list, .mnav__actions-desktop { display:none !important; }
  .mnav-mobile-btn, .mnav-mobile-label { display:flex; }
  .mnav__inner { padding:0 16px; justify-content:space-between; align-items:center; height:48px; }
}

/* ── Mobile drawer ───────────────────────────────────────── */
.mnav-drawer { position:fixed; inset:0; top:0; z-index:300; display:flex; pointer-events:none; }
.mnav-drawer--open { pointer-events:auto; }
.mnav-drawer__backdrop { position:absolute; inset:0; background:oklch(0% 0 0/.5); opacity:0; transition:opacity 250ms ease; }
.mnav-drawer--open .mnav-drawer__backdrop { opacity:1; }
.mnav-drawer__panel { position:relative; z-index:1; width:320px; max-width:90vw; height:100%; background:#fff; overflow-y:auto; transform:translateX(-100%); transition:transform 280ms cubic-bezier(.4,0,.2,1); display:flex; flex-direction:column; box-shadow:var(--shadow-xl); }
.mnav-drawer--open .mnav-drawer__panel { transform:translateX(0); }
.drawer-header { background:var(--color-forest-dark); padding:16px 20px; display:flex; align-items:center; justify-content:space-between; flex-shrink:0; }
.drawer-header__logo { font-family:var(--font-display); font-weight:800; font-size:18px; color:#fff; text-transform:uppercase; letter-spacing:-.02em; }
.drawer-close { width:36px; height:36px; border-radius:var(--radius-md); background:oklch(28% .09 145); border:none; cursor:pointer; color:#fff; display:flex; align-items:center; justify-content:center; transition:background 150ms; }
.drawer-close:hover { background:oklch(22% .08 145); }
.drawer-search { padding:12px 16px; background:var(--color-mist); border-bottom:1px solid var(--color-fog); flex-shrink:0; }
.drawer-search-wrap { position:relative; }
.drawer-search-input { width:100%; height:40px; padding:0 16px 0 40px; border:1.5px solid var(--color-fog); border-radius:var(--radius-full); font-size:14px; outline:none; background:#fff; font-family:var(--font-body); transition:border-color 150ms; }
.drawer-search-input:focus { border-color:var(--color-forest); }
.drawer-search-icon { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:var(--color-muted); }
.drawer-nav { flex:1; padding:8px 0; }
.drawer-item { border-bottom:1px solid var(--color-mist); }
.drawer-item__btn { display:flex; align-items:center; justify-content:space-between; padding:14px 20px; width:100%; background:none; border:none; font-family:var(--font-body); font-size:15px; font-weight:600; color:var(--color-ink); cursor:pointer; text-align:left; transition:background 150ms; text-decoration:none; }
.drawer-item__btn:hover { background:var(--color-mist); }
.drawer-item__btn--active { color:var(--color-forest); background:oklch(97% .02 145); }
.drawer-item__chevron { color:var(--color-muted); transition:transform 200ms; display:flex; }
.drawer-item__btn--open .drawer-item__chevron { transform:rotate(180deg); color:var(--color-forest); }
.drawer-subnav { background:var(--color-mist); overflow:hidden; max-height:0; transition:max-height 280ms ease; }
.drawer-subnav--open { max-height:1200px; }
.drawer-subnav__title { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--color-muted); padding:10px 24px 4px; display:block; }
.drawer-subnav__link { display:block; padding:9px 24px; font-size:14px; color:var(--color-slate); transition:color 120ms, background 120ms; text-decoration:none; }
.drawer-subnav__link:hover { color:var(--color-forest); background:oklch(95% .03 145); }
.drawer-footer { padding:16px 20px 24px; border-top:1px solid var(--color-fog); background:var(--color-mist); flex-shrink:0; }
.drawer-footer__links { display:flex; flex-direction:column; gap:8px; }
.drawer-footer__link { font-size:14px; font-weight:500; color:var(--color-muted); padding:6px 0; transition:color 150ms; }
.drawer-footer__link:hover { color:var(--color-ink); }
.drawer-specials { display:flex; gap:8px; margin-top:16px; }
.drawer-special { flex:1; padding:10px 12px; border-radius:var(--radius-md); font-size:13px; font-weight:700; text-align:center; cursor:pointer; text-decoration:none; transition:opacity 150ms; display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.drawer-special--red    { background:oklch(50% .18 25); color:#fff; }
.drawer-special--orange { background:oklch(62% .18 46); color:#fff; }
.drawer-special:hover { opacity:.88; }

/* ── Currency switch ─────────────────────────────────────── */
.currency-switch { display:flex; align-items:center; background:var(--color-fog); border-radius:20px; padding:2px; gap:1px; }
.currency-switch__btn {
  display:flex; align-items:center; justify-content:center;
  min-width:34px; padding:5px 9px;
  border-radius:18px; font-size:12px; font-weight:700; line-height:1;
  color:var(--color-muted); text-decoration:none; white-space:nowrap;
  transition:background 150ms, color 150ms;
}
.currency-switch__btn--active { background:var(--color-white); color:var(--color-ink); box-shadow:0 1px 4px rgba(0,0,0,.14); }
.currency-switch__btn:not(.currency-switch__btn--active):hover { color:var(--color-ink); }
