/* Boutiq V5 — header v1.6, written from scratch (namespace: bqh-). */

.bqh-shell { width: 100%; max-width: var(--bq-max, 1240px); margin: 0 auto; padding: 0 18px; }

/* Topbar */
.bqh-topbar {
  background: linear-gradient(90deg, var(--bq-violet, #8a2be2), var(--bq-orange, #ff6a00));
  color: #fff; font-size: .78rem; font-weight: 600; letter-spacing: .5px;
}
.bqh-topbar[hidden] { display: none; }
.bqh-topbar__inner { position: relative; display: flex; align-items: center; justify-content: center; gap: .6rem; padding-top: 8px; padding-bottom: 8px; text-align: center; }
.bqh-topbar__x { position: absolute; right: 12px; background: none; border: 0; color: rgba(255,255,255,.8); font-size: 1.1rem; line-height: 1; cursor: pointer; }

/* Bar */
.bqh-header {
  position: sticky; top: 0; z-index: 900;
  background: rgba(7, 6, 12, .96); backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--bq-line, rgba(255,255,255,.1));
}
.bqh-bar { display: flex; align-items: center; gap: 1.2rem; min-height: 70px; }
.bqh-bar__left { display: flex; align-items: center; gap: .8rem; flex: 0 0 auto; }

/* Brand */
.bqh-brand { display: inline-flex; align-items: center; gap: .6rem; text-decoration: none; }
.bqh-brand__mark {
  display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 12px;
  background: linear-gradient(135deg, var(--bq-violet, #8a2be2), var(--bq-orange, #ff6a00));
  color: #fff; font-family: var(--bq-display, sans-serif); font-size: .8rem; letter-spacing: .5px;
}
.bqh-brand__text { display: flex; flex-direction: column; line-height: 1.05; }
.bqh-brand__text strong { font-family: var(--bq-display, sans-serif); font-size: 1.15rem; text-transform: uppercase; color: #fff; letter-spacing: .6px; }
.bqh-brand__text small { font-size: .6rem; letter-spacing: .34em; text-transform: uppercase; color: var(--bq-violet-2, #b56bff); }

/* Centered nav */
.bqh-nav { flex: 1 1 auto; display: flex; justify-content: center; min-width: 0; }
.bqh-nav ul { display: flex; align-items: center; gap: 1.15rem; list-style: none; margin: 0; padding: 0; }
.bqh-nav a {
  color: var(--bq-text, #f4f2fb); font-weight: 700; font-size: .78rem; letter-spacing: .08em;
  text-transform: uppercase; text-decoration: none; white-space: nowrap; padding: .35rem 0;
}
.bqh-nav a:hover, .bqh-nav a:focus-visible { color: var(--bq-orange, #ff6a00); }

/* Right actions */
.bqh-actions { display: flex; align-items: center; gap: .55rem; flex: 0 0 auto; margin-left: auto; }
.bqh-icon {
  display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
  border: 1px solid var(--bq-line, rgba(255,255,255,.1)); background: rgba(255,255,255,.04);
  color: var(--bq-text, #f4f2fb); cursor: pointer; position: relative; padding: 0; text-decoration: none;
}
.bqh-icon:hover { border-color: var(--bq-violet-2, #b56bff); color: var(--bq-violet-2, #b56bff); }
.bqh-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.bqh-cart__count {
  position: absolute; top: -4px; right: -4px; min-width: 20px; height: 20px; padding: 0 5px;
  border-radius: 999px; background: var(--bq-orange, #ff6a00); color: #fff;
  font-size: .66rem; font-weight: 800; display: grid; place-items: center;
}
.bqh-cta {
  display: inline-flex; align-items: center; padding: .62rem 1.15rem; border-radius: 999px;
  background: linear-gradient(100deg, var(--bq-violet, #8a2be2), var(--bq-orange, #ff6a00));
  color: #fff; font-size: .76rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; text-decoration: none;
}
.bqh-cta:hover { color: #fff; filter: brightness(1.08); }

/* Burger (mobile only) */
.bqh-burger { display: none; background: none; border: 0; padding: 0; color: #fff; cursor: pointer; }
.bqh-burger svg { width: 26px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }

/* Search panel */
.bqh-search-panel { border-top: 1px solid var(--bq-line, rgba(255,255,255,.1)); background: var(--bq-bg-2, #0e0b18); padding: 1.1rem 0; }
.bqh-search-panel .bq-search-form { position: relative; display: flex; align-items: center; gap: .5rem; background: var(--bq-card, #141024); border: 1px solid var(--bq-line, rgba(255,255,255,.1)); border-radius: 999px; padding: .25rem .35rem .25rem 1.1rem; }
.bqh-search-panel .bq-search-field, .bqh-drawer .bq-search-field {
  flex: 1; background: transparent; border: 0; outline: none; color: #fff; font: inherit; font-size: .92rem; padding: .7rem 0;
}
.bqh-search-panel .bq-search-field::placeholder, .bqh-drawer .bq-search-field::placeholder { color: var(--bq-muted, #a49dbd); }
.bqh-search-panel .bq-search-submit, .bqh-drawer .bq-search-submit {
  display: inline-grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%;
  background: linear-gradient(100deg, var(--bq-violet, #8a2be2), var(--bq-orange, #ff6a00)); color: #fff; cursor: pointer;
}
.bqh-search-hints { margin: .7rem 0 0; font-size: .82rem; color: var(--bq-muted, #a49dbd); }

/* Drawer */
.bqh-drawer { position: fixed; inset: 0; z-index: 1000; }
.bqh-drawer[hidden] { display: none; }
.bqh-drawer__backdrop { position: absolute; inset: 0; border: 0; background: rgba(4, 2, 10, .7); cursor: pointer; }
.bqh-drawer__panel {
  position: absolute; top: 0; right: 0; bottom: 0; z-index: 2; width: min(340px, 88vw);
  background: var(--bq-bg-2, #0e0b18); border-left: 1px solid var(--bq-line, rgba(255,255,255,.1));
  padding: 16px; overflow-y: auto; transform: translateX(100%); transition: transform .25s ease;
}
.bqh-drawer.is-open .bqh-drawer__panel { transform: translateX(0); }
.bqh-drawer__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.bqh-drawer__search { margin-bottom: 1rem; }
.bqh-drawer .bq-search-form { position: relative; display: flex; align-items: center; gap: .4rem; background: var(--bq-card, #141024); border: 1px solid var(--bq-line, rgba(255,255,255,.1)); border-radius: 999px; padding: .2rem .25rem .2rem 1rem; }
.bqh-drawer__menu { list-style: none; margin: 0; padding: 0; }
.bqh-drawer__menu a {
  display: block; padding: .85rem .3rem; border-bottom: 1px solid var(--bq-line, rgba(255,255,255,.1));
  color: #fff; font-weight: 700; font-size: .85rem; letter-spacing: .07em; text-transform: uppercase; text-decoration: none;
}
.bqh-drawer__menu a:hover { color: var(--bq-orange, #ff6a00); }
body.bqh-locked { overflow: hidden; }

/* Responsive */
@media (max-width: 1180px) {
  .bqh-nav ul { gap: .8rem; }
  .bqh-nav a { font-size: .72rem; }
}
@media (max-width: 1024px) {
  .bqh-nav { display: none; }
  .bqh-burger { display: inline-flex; }
  .bqh-icon--account { display: none; }
}
@media (max-width: 560px) {
  .bqh-cta { display: none; }
  .bqh-bar { min-height: 62px; gap: .6rem; }
  .bqh-brand__text strong { font-size: 1rem; }
}
