/* Shop mega-menu — one script + this sheet on every page (18 Sep 2026).
   assets/sahra-nav.js turns the existing "Shop" link into the trigger and
   builds the panel from data, so the seven hand-maintained headers and the
   two generated ones never drift. Desktop only; phones keep the slide-down
   menu, which the script regroups. Colours are the site's own tokens with
   literal fallbacks because the shell pages do not define --sand/--ink.
   18 Sep, second push: content changed so the ?v= hash changes — Vercel's bom1
   edge was returning 404 for the first hashed URL (iad1 served it fine). */
.sbn-trig{display:inline-flex;align-items:center;gap:2px}
.sbn-caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;margin:0 0 0 -2px;background:none;border:0;cursor:pointer;color:inherit;border-radius:50%}
.sbn-caret svg{width:11px;height:11px;transition:transform .25s}
.sbn-caret:hover,.sbn-caret:focus-visible{color:#B4823C}
.sbn-caret:focus-visible{outline:2px solid #C99A55;outline-offset:2px}
.sbn-open .sbn-caret svg{transform:rotate(180deg)}
.hdr-nav .sbn-trig{flex:0 0 auto}
.hdr-nav .sbn-caret{width:20px;height:20px;margin-left:-8px;margin-right:2px}
.sbn-hide{display:none!important}
/* The links row is a <nav> and sahra-sky.css makes every nav position:relative,
   so any script that writes top:<topbar height> to "the nav" (meant for the
   fixed #nav on the homepage) shoves this row out of the header and under the
   hero. Seen on Faheem's machine on /places/ on 18 Sep with a stale script
   from the same CDN edge that 404'd this sheet. !important beats an inline
   style, so the row stays put whatever writes to it. */
.hdr-nav{top:0!important}
/* the host header must sit above what follows it while the panel is open —
   sahra-sky.css flattens nav/.hdr to position:relative; z-index:1 on the
   shell and product pages, which let the hero paint over the panel. */
.sbn-open{z-index:140!important}

.sbn-panel{position:absolute;left:0;right:0;top:100%;z-index:130;
  background:#FAF6EF;color:#33271B;
  border-top:1px solid rgba(51,39,27,.1);border-bottom:1px solid rgba(51,39,27,.12);
  box-shadow:0 30px 60px -30px rgba(51,39,27,.45);
  padding:26px max(28px,calc((100% - 1180px)/2)) 20px;
  display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:26px 34px;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .18s ease,transform .22s ease,visibility 0s linear .22s;
  font-family:Jost,system-ui,-apple-system,'Segoe UI',sans-serif;text-align:left;letter-spacing:0;text-transform:none}
.sbn-open .sbn-panel{opacity:1;visibility:visible;transform:none;transition:opacity .18s ease,transform .22s ease,visibility 0s}
.sbn-col{min-width:0}
.sbn-h{display:block;font-family:'Space Mono',ui-monospace,Menlo,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8E7F6C;margin:0 0 10px;font-weight:400}
.sbn-panel a.sbn-l{display:flex;align-items:baseline;gap:8px;padding:6px 0;color:#33271B;text-decoration:none;font-size:15px;font-weight:500;line-height:1.35;opacity:1;background:none;border-radius:0;box-shadow:none;letter-spacing:0;text-transform:none}
.sbn-panel a.sbn-l::after{display:none!important}
.sbn-panel a.sbn-l:hover{color:#B4823C;background:none}
.sbn-panel a.sbn-l small{font-family:'Space Mono',ui-monospace,Menlo,monospace;font-size:10.5px;letter-spacing:.04em;color:#8E7F6C;font-weight:400}
.sbn-panel a.sbn-l.sbn-all{margin-top:6px;padding-top:10px;border-top:1px solid rgba(51,39,27,.1);font-size:13px;font-weight:600}
.sbn-feat{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center;padding:12px;border:1px solid rgba(51,39,27,.1);border-radius:12px;background:#FFFDF9;text-decoration:none;color:#33271B}
.sbn-feat:hover{border-color:#C99A55}
.sbn-feat img{width:96px;height:120px;object-fit:cover;border-radius:8px;display:block}
.sbn-badge{display:inline-block;font-family:'Space Mono',ui-monospace,Menlo,monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#B4823C;border:1px solid #C99A55;background:#FBF0DC;padding:3px 8px;border-radius:2px;margin-bottom:8px}
.sbn-feat b{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size-adjust:.44;font-weight:500;font-size:19px;line-height:1.15;margin-bottom:4px;text-transform:none;letter-spacing:0}
.sbn-feat span{display:block;font-size:13px;color:#6B5B48;line-height:1.4}
.sbn-foot{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 20px;border-top:1px solid rgba(51,39,27,.1);padding-top:12px;font-family:'Space Mono',ui-monospace,Menlo,monospace;font-size:11px;color:#6B5B48}

/* the phone menu gets group labels from the script */
.m-panel .sbn-mh{display:block;font-family:'Space Mono',ui-monospace,Menlo,monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#B9A88C;padding:18px 4px 4px}
.m-panel .sbn-mh:first-of-type{padding-top:0}
.m-panel a.sbn-sub{font-size:16px;padding:11px 4px 11px 14px;color:#EDE3D2}

@media(max-width:820px){.sbn-panel,.sbn-caret{display:none!important}.sbn-hide{display:none!important}}
@media(prefers-reduced-motion:reduce){.sbn-panel,.sbn-caret svg{transition:none}}
