/* SPLENDERY — mega-menu dropdown */
.megapanel{
  position:absolute; left:0; right:0; top:100%;
  background:var(--ground); border-top:1px solid var(--hair-soft);
  box-shadow:0 22px 40px rgba(26,22,19,0.10);
  opacity:0; visibility:hidden; transform:translateY(-8px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s;
  z-index:45;
}
.megapanel.open{ opacity:1; visibility:visible; transform:translateY(0); }
.mwrap{ max-width:1320px; margin:0 auto; padding:38px 28px; display:flex; gap:64px; align-items:flex-start; }
.mcol{ display:flex; flex-direction:column; gap:11px; min-width:150px; }
.mtitle{ font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--accent-deep); margin-bottom:6px; }
.mcol a{ font-size:13px; letter-spacing:0.01em; color:var(--muted); width:max-content; }
.mcol a:hover{ color:var(--text); }
.mfeat{ margin-left:auto; width:230px; position:relative; overflow:hidden; }
.mfeat img{ width:100%; aspect-ratio:4/5; object-fit:cover; transition:transform .5s; }
.mfeat:hover img{ transform:scale(1.05); }
.mfeat span{ position:absolute; left:0; right:0; bottom:0; padding:16px; background:linear-gradient(transparent,rgba(26,22,19,0.65)); color:#fff; font-size:12px; letter-spacing:0.05em; text-transform:uppercase; }
@media (max-width:860px){ .megapanel{ display:none; } }

/* ---- Oh Polly-style multi-level mobile drawer ---- */
.nav-scrim{ position:fixed; inset:0; background:rgba(26,22,19,0.4); z-index:70; opacity:0; pointer-events:none; transition:opacity .3s; }
.nav-scrim.open{ opacity:1; pointer-events:auto; }
.nav-drawer{ position:fixed; top:0; left:0; height:100%; width:min(420px,90vw); background:var(--ground); z-index:80; display:flex; flex-direction:column; overflow:hidden; transform:translateX(-105%); transition:transform .34s cubic-bezier(.4,0,.2,1); box-shadow:10px 0 50px rgba(26,22,19,0.16); }
.nav-drawer.open{ transform:translateX(0); }
.nd-top{ display:grid; grid-template-columns:40px 1fr 40px; align-items:center; padding:20px; border-bottom:1px solid var(--hair-soft); }
.nd-h{ text-align:center; font-size:13px; letter-spacing:0.07em; text-transform:uppercase; }
.nd-back, .nd-x{ background:none; border:none; color:var(--text); cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; }
.nd-x{ font-size:26px; line-height:1; justify-self:end; }
.nd-back{ justify-self:start; }
.nd-back svg{ width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.6; transform:rotate(180deg); }
.nd-vp{ flex:1; display:flex; width:200%; transition:transform .34s cubic-bezier(.4,0,.2,1); min-height:0; }
.nav-drawer.show-sub .nd-vp{ transform:translateX(-50%); }
.nd-screen{ width:50%; overflow-y:auto; -webkit-overflow-scrolling:touch; }

.nd-search{ display:flex; align-items:center; gap:10px; width:calc(100% - 40px); margin:18px 20px; padding:13px 15px; background:var(--surface); border:none; cursor:pointer; color:var(--muted); font-family:var(--sans); font-size:12.5px; text-align:left; }
.nd-search svg{ width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:1.3; }

/* inline drawer search */
.nd-searchwrap{ display:flex; align-items:center; gap:10px; margin:18px 20px; padding:13px 15px; background:var(--surface); }
.nd-searchwrap svg{ width:16px; height:16px; stroke:var(--muted); fill:none; stroke-width:1.3; flex:0 0 auto; }
.nd-searchwrap input{ flex:1; min-width:0; border:none; background:none; outline:none; font-family:var(--sans); font-size:13px; color:var(--text); }
.nd-searchwrap input::placeholder{ color:var(--muted); }
.nd-searchwrap input::-webkit-search-cancel-button{ -webkit-appearance:none; appearance:none; }
.nd-sclear{ background:none; border:none; font-size:20px; line-height:1; color:var(--muted); cursor:pointer; padding:0; display:flex; align-items:center; }
.nd-results{ display:none; border-top:1px solid var(--hair-soft); }
.nd-res{ display:flex; align-items:center; gap:13px; padding:12px 20px; border-bottom:1px solid var(--hair-soft); }
.nd-res img{ width:52px; height:66px; object-fit:cover; flex:0 0 auto; background:var(--surface); }
.nd-res-tx{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.nd-res-tx b{ font-weight:500; font-size:13px; letter-spacing:0.01em; color:var(--text); }
.nd-res-tx small{ color:var(--muted); font-size:11.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nd-res-tx em{ font-style:normal; font-size:12.5px; color:var(--text); margin-top:2px; }
.nd-nores{ padding:32px 20px; text-align:center; color:var(--muted); font-size:13px; }
.nd-cats{ border-top:1px solid var(--hair-soft); }
.nd-cat{ width:100%; display:flex; align-items:center; justify-content:space-between; background:none; border:none; border-bottom:1px solid var(--hair-soft); color:var(--text); font-family:var(--sans); font-size:15px; letter-spacing:0.02em; padding:18px 20px; cursor:pointer; }
.nd-cat.nd-sale{ color:var(--accent-deep); }
.nd-chev{ width:18px; height:18px; stroke:var(--muted); fill:none; stroke-width:1.6; flex:0 0 auto; }
.nd-signin{ display:flex; align-items:center; gap:14px; background:var(--nude); padding:18px 20px; margin:18px 0; }
.nd-si-ic{ width:38px; height:38px; border-radius:50%; background:var(--ink); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.nd-si-ic svg{ width:18px; height:18px; stroke:var(--ivory); fill:none; stroke-width:1.4; }
.nd-si-tx{ flex:1; display:flex; flex-direction:column; gap:3px; }
.nd-si-tx b{ font-weight:500; font-size:13px; letter-spacing:0.01em; }
.nd-si-tx small{ color:var(--taupe); font-size:12px; }
.nd-signin .nd-chev{ stroke:var(--ink); }
.nd-flinks{ display:flex; flex-direction:column; padding:0 20px; }
.nd-flinks a{ color:var(--text); font-size:13.5px; padding:11px 0; border-bottom:1px solid var(--hair-soft); }
.nd-social{ display:flex; gap:14px; padding:22px 20px 10px; }
.nd-social span, .nd-social a{ width:34px; height:34px; border-radius:50%; background:var(--ink); color:var(--ivory); display:flex; align-items:center; justify-content:center; font-size:10px; }
.nd-lang{ display:flex; align-items:center; justify-content:space-between; padding:16px 20px 30px; }
.nd-lang > span{ font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted); }
.nd-lbtns{ display:flex; gap:4px; }
.nd-lbtns button{ background:none; border:1px solid var(--hair); color:var(--muted); font-family:var(--sans); font-size:12px; padding:7px 14px; cursor:pointer; }
.nd-lbtns button.on{ background:var(--ink); color:var(--ivory); border-color:var(--ink); }

.nd-feature{ display:block; position:relative; }
.nd-feature img{ width:100%; aspect-ratio:16/10; object-fit:cover; }
.nd-shop{ display:block; background:var(--nude); color:var(--ink); text-align:center; font-size:12px; letter-spacing:0.05em; text-transform:uppercase; padding:15px; }
.nd-sublinks{ display:flex; flex-direction:column; }
.nd-sublinks a{ color:var(--text); font-size:14.5px; padding:16px 20px; border-bottom:1px solid var(--hair-soft); }
