/** Shopify CDN: Minification failed

Line 212:10 Expected identifier but found whitespace
Line 212:22 Unexpected ";"

**/
/* ==========================================================================
   UNICUS Brick — Playful Pop design system
   Shared tokens + utilities + Dawn header/footer restyle
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400..800&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root {
  --bx-bg: #eef0f7;
  --bx-ink: #1b2470;
  --bx-muted: #5a5f7a;
  --bx-c1: #F7941D;   /* orange */
  --bx-c2: #8067FF;   /* violet */
  --bx-c3: #f79aa4;   /* pink   */
  --bx-c4: #F0381E;   /* red    */
  --bx-c3-ink: #1b2470;
  --bx-line: rgba(27, 36, 112, .13);
  --bx-head: 'Bricolage Grotesque', sans-serif;
  --bx-body: 'Space Grotesk', sans-serif;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* ---- global typography & background ------------------------------------ */
body {
  background: var(--bx-bg);
  font-family: var(--bx-body);
}
h1, h2, h3, h4, h5,
.h0, .h1, .h2, .h3, .h4, .h5 {
  font-family: var(--bx-head);
  font-weight: 800;
  letter-spacing: -.02em;
}
.button,
.shopify-challenge__button,
.customer button,
button.shopify-payment-button__button--unbranded {
  font-family: var(--bx-body);
  font-weight: 700;
  border-radius: 10px;
}
.button:not(.button--secondary):after { box-shadow: none; }
.button--primary,
.button:not(.button--secondary):not(.link):not(.predictive-search__item) {
  box-shadow: 0 6px 18px rgba(128, 103, 255, .24);
}
.button:not(.button--secondary):hover {
  transform: translateY(-1px);
  box-shadow: 0 9px 24px rgba(128, 103, 255, .28);
}

/* ---- brick primitives ---------------------------------------------------
   .bx-plate     : colored plate w/ bottom-heavy radius + hard drop shadow
   .bx-studs     : stud strip pseudo-element (needs --stud color)
   ------------------------------------------------------------------------ */
.bx-plate {
  position: relative;
  border-radius: 5px 5px 12px 12px;
  box-shadow: 0 7px 0 rgba(0, 0, 0, .2);
}
.bx-studs::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 16px;
  height: 13px;
  width: 70px;
  background: linear-gradient(90deg, var(--stud, var(--bx-ink)) 62%, transparent 62%);
  background-size: 22px 13px;
}
.bx-studs--wide::before { width: 90px; left: 22px; height: 14px; top: -9px; background-size: 24px 14px; }
.bx-badge {
  display: inline-block;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 7px 14px;
  border-radius: 4px 4px 8px 8px;
  font-family: var(--bx-body);
}
.bx-section-title {
  font-family: var(--bx-head);
  font-weight: 800;
  letter-spacing: -.02em;
  margin: 0;
  color: var(--bx-ink);
}

/* page container matching design gutters */
.bx-wrap {
  max-width: 120rem;
  margin: 0 auto;
  padding: 0 4rem;
}
@media (max-width: 749px) {
  .bx-wrap { padding: 0 1.4rem; }
}

/* horizontal snap scroller (mobile) */
@media (max-width: 749px) {
  .bx-hscroll {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 0 1.8rem 6px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .bx-hscroll::-webkit-scrollbar { display: none; }
  .bx-hscroll > * { scroll-snap-align: start; flex: 0 0 auto; }
}

/* visibility helpers — 忠于两版设计 */
@media (max-width: 749px) { .bx-desktop-only { display: none !important; } }
@media (min-width: 750px) { .bx-mobile-only { display: none !important; } }

/* Mobile horizontal-scroll cue: clickable and hidden automatically at the end. */
.bx-scroll-shell { position: relative; }
.bx-scroll-cue { display: none; }
@media (max-width: 749px) {
  .bx-scroll-cue {
    position: absolute;
    z-index: 5;
    right: .8rem;
    top: 50%;
    transform: translateY(-50%);
    width: 4.2rem;
    height: 4.2rem;
    padding: 0;
    border: 1px solid rgba(27, 36, 112, .22);
    border-radius: 50%;
    background: var(--bx-bg);
    color: var(--bx-c2);
    box-shadow: 0 5px 16px rgba(128, 103, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font: 800 2.2rem/1 var(--bx-head);
    cursor: pointer;
    transition: opacity .18s ease, transform .18s ease;
  }
  .bx-scroll-cue::before {
    content: "";
    position: absolute;
    z-index: -1;
    right: -1rem;
    top: -1.5rem;
    bottom: -1.5rem;
    width: 7rem;
    background: linear-gradient(90deg, rgba(238, 240, 247, 0), var(--bx-bg) 48%);
    pointer-events: none;
  }
  .bx-scroll-cue:active { transform: translateY(-50%) translateX(3px); }
  .bx-scroll-cue.is-hidden { opacity: 0; pointer-events: none; }
}

@keyframes bxFade {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: none; }
}

/* ---- Dawn header restyle ------------------------------------------------ */
.header-wrapper { background: var(--bx-bg); }
.header { background: var(--bx-bg); }
.header__menu-item span {
  font-family: var(--bx-body);
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--bx-ink);
}
.header__heading-link { display: flex; align-items: center; }

/* CSS-drawn brick mark + wordmark logo */
.bx-logo { display: inline-flex; align-items: center; gap: 12px; }
.bx-logo-mark {
  position: relative;
  width: 36px;
  height: 25px;
  background: var(--bx-c1);
  border-radius: 4px 4px 6px 6px;
  box-shadow: 0 4px 0 rgba(0, 0, 0, .2);
  flex: 0 0 auto;
}
.bx-logo-mark > span {
  position: absolute;
  top: -5px;
  left: 7px;
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: var(--bx-c1);
  box-shadow: 13px 0 0 var(--bx-c1);
}
.bx-logo-word { height: 19px; width: auto; display: block; }
@media (max-width: 749px) {
  .bx-logo-mark { display: none; }
  .bx-logo-word { height: 16px; }
}

  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bx-ink);
  color: #fff;
  padding: 11px 20px;
  border-radius: 8px;
  font-size: 1.35rem;
  font-weight: 700;
  font-family: var(--bx-body);
  text-decoration: none;
  white-space: nowrap;
  margin-right: 4px;
  align-self: center;
}

.header__icons { align-items: center; }

/* ---- Dawn footer restyle ------------------------------------------------ */
.footer {
  position: relative;
  border-top: none;
  margin-top: 24px;
}
.footer::before {
  content: '';
  position: absolute;
  top: -22px;
  left: 4rem;
  right: 4rem;
  height: 22px;
  background: var(--bx-c2);
  border-radius: 6px;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, .32) 62%, transparent 62%);
  background-size: 32px 22px;
}
@media (max-width: 749px) {
  .footer::before { left: 1.4rem; right: 1.4rem; }
}
.footer__heading, .footer-block__heading {
  font-family: var(--bx-head);
  font-weight: 800;
  letter-spacing: -.02em;
}

/* Dawn base.css hides div:empty — restore intentionally-empty decorative layers */
.bx-hero__shade:empty,
.bx-hero__grid:empty,
.bx-hero__filmstrip:empty,
.bx-banner__shade:empty,
.bx-details__img:empty,
.bx-divider:empty,
.bx-guar__topstuds:empty,
.bx-trio__strip:empty,
.bxpc__strip:empty,
.bxsc__shade:empty {
  display: block;
}

/* ---- video lightbox modal (shared) ---- */
.bx-vmodal{border:1px solid rgba(27,36,112,.24);border-radius:18px;padding:0;background:#14110d;max-width:min(92vw,50rem);width:auto;overflow:hidden;box-shadow:0 18px 54px rgba(128,103,255,.22)}
.bx-vmodal::backdrop{background:rgba(20,17,13,.78)}
.bx-vmodal__close{position:absolute;top:10px;right:10px;z-index:2;width:38px;height:38px;border-radius:50%;background:rgba(238,240,247,.96);color:var(--bx-c2);border:1px solid rgba(27,36,112,.22);font-size:1.7rem;font-weight:800;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 16px rgba(128,103,255,.18)}
.bx-vmodal video{display:block;max-width:min(92vw,50rem);max-height:84vh;width:100%;height:auto;background:#000}

/* ---- brick product card (shared: collection grid + related products) ---- */
.bxpc{display:block;border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(27,36,112,.22);text-decoration:none;color:var(--bx-ink);transition:transform .18s,box-shadow .18s}
.bxpc--c1{--tint:var(--bx-c1);--tagtext:#fff}
.bxpc--c2{--tint:var(--bx-c2);--tagtext:#fff}
.bxpc--c3{--tint:var(--bx-c3);--tagtext:var(--bx-c3-ink)}
.bxpc{box-shadow:0 8px 24px rgba(128,103,255,.15)}
.bxpc:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(128,103,255,.2)}
.bxpc__strip{height:14px;background:var(--tint);background-image:linear-gradient(90deg,rgba(255,255,255,.55) 62%,transparent 62%);background-size:26px 14px}
.bxpc__imgwrap{position:relative;background:#f3ede3}
.bxpc__imgwrap img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block}
.bxpc__tag{position:absolute;top:12px;left:12px;background:var(--tint);color:var(--tagtext);font-size:1.05rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:6px}
.bxpc__body{padding:16px 18px 20px}
.bxpc__name{font-family:var(--bx-head);font-weight:800;font-size:1.7rem;line-height:1.15;margin-bottom:8px}
.bxpc__prices{display:flex;align-items:baseline;gap:8px}
.bxpc__price{font-weight:700;font-size:1.6rem}
.bxpc__was{font-size:1.3rem;color:var(--bx-muted);text-decoration:line-through}
.bxpc--compact{border-radius:14px;box-shadow:0 6px 20px rgba(128,103,255,.14)}
.bxpc--compact:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(128,103,255,.2)}
.bxpc--compact .bxpc__body{padding:14px 16px 16px}
.bxpc--compact .bxpc__name{font-size:1.5rem;margin-bottom:6px}
.bxpc--compact .bxpc__price{font-size:1.4rem}
@media (max-width: 749px){
  .bxpc{border-radius:14px;box-shadow:0 5px 16px rgba(128,103,255,.16)}
  .bxpc__strip{height:11px;background-size:20px 11px}
  .bxpc__body{padding:12px 13px 15px}
  .bxpc__name{font-size:1.4rem}
  .bxpc__price{font-size:1.4rem}
}
