.merch-hero {
  position:relative; min-height:580px; display:flex; align-items:center; isolation:isolate; overflow:hidden;
  color:#fff; background-color:#111; background-image:var(--hero-image); background-position:var(--hero-position,center);
  background-size:cover; background-repeat:no-repeat;
}
.merch-hero::before {
  content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(90deg,rgba(7,7,8,.96) 0%,rgba(7,7,8,.86) 40%,rgba(7,7,8,.42) 70%,rgba(7,7,8,.12) 100%);
}
.merch-hero.copy-right::before { background:linear-gradient(270deg,rgba(7,7,8,.96) 0%,rgba(7,7,8,.84) 42%,rgba(7,7,8,.28) 74%,rgba(7,7,8,.06) 100%); }
.merch-hero.copy-right .hero-copy { margin-left:auto; }
.merch-hero.name-badge-hero { background-position:right top; background-size:auto 120%; }
.merch-hero.name-badge-hero::before { background:linear-gradient(90deg,#070708 0%,#070708 36%,rgba(7,7,8,.93) 44%,rgba(7,7,8,.62) 57%,rgba(7,7,8,.18) 69%,rgba(7,7,8,.03) 79%,rgba(7,7,8,0) 88%); }
.merch-hero.headband-hero { background-image:none; }
.merch-hero.headband-hero::before { background:linear-gradient(90deg,#070708 0%,#070708 36%,rgba(7,7,8,.94) 45%,rgba(7,7,8,.58) 58%,rgba(7,7,8,.14) 76%,rgba(7,7,8,0) 100%); }
.headband-people { position:absolute; inset:0 0 0 auto; z-index:-2; width:56%; background-image:var(--hero-image); background-position:left center; background-size:auto 100%; background-repeat:no-repeat; -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 94%,transparent 100%); mask-image:linear-gradient(90deg,transparent 0%,#000 14%,#000 94%,transparent 100%); }
.headband-spotlight { padding:42px 0; background:#f4f5f7; }
.headband-spotlight-inner { display:grid; grid-template-columns:220px minmax(0,680px); gap:42px; align-items:center; justify-content:center; }
.headband-product-circle { width:220px; aspect-ratio:1; border:5px solid var(--pink); border-radius:50%; background-image:var(--hero-image); background-position:61% 78%; background-size:421.875% auto; background-repeat:no-repeat; box-shadow:0 14px 30px rgba(11,13,18,.12); }
.headband-spotlight h2 { margin:4px 0 10px; font-size:clamp(28px,3vw,42px); }
.headband-spotlight p:not(.section-kicker) { margin:0 0 14px; color:var(--muted); line-height:1.65; }
.merch-hero .hero-copy { max-width:650px; padding-block:62px; }
.merch-hero h1 { font-size:clamp(44px,6vw,76px); }
.merch-hero .proof-list { max-width:650px; }
.merch-options { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:30px; }
.merch-option { min-height:180px; padding:24px; border-top:4px solid var(--pink); background:#fff; color:var(--ink); }
.merch-option svg { width:26px; margin-bottom:28px; color:var(--teal); }
.merch-option h3 { margin-bottom:8px; font-size:19px; }
.merch-option p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }
.merch-spec-band { padding-block:64px; background:#f4f5f7; }
.merch-spec-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:start; }
.merch-spec-grid { display:grid; grid-template-columns:1fr 1fr; border-top:2px solid var(--ink); }
.merch-spec { min-height:125px; padding:22px 18px; border-bottom:1px solid var(--line); }
.merch-spec:nth-child(odd) { border-right:1px solid var(--line); }
.merch-spec strong { display:block; margin-bottom:6px; font-size:17px; }
.merch-spec span { color:var(--muted); font-size:14px; line-height:1.5; }
.merch-pricing { background:#f5f5f4; }
.pricing-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:28px; }
.pricing-heading .section-title { margin-bottom:0; }
.pricing-heading > p { margin:0 0 7px; color:var(--muted); font-weight:700; }
.merch-price-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.merch-price { min-width:0; padding:25px 22px 23px; background:#fff; border:1px solid #d7d7d9; border-top:4px solid var(--pink); border-radius:6px; box-shadow:0 8px 24px rgba(20,20,20,.06); transition:transform .2s ease,box-shadow .2s ease; }
.merch-price:hover { transform:translateY(-2px); box-shadow:0 13px 30px rgba(20,20,20,.1); }
.merch-price span,.merch-price small { display:block; color:var(--muted); font-weight:750; }
.merch-price span { font-size:15px; }
.merch-price small { font-size:13px; }
.merch-price strong { display:block; margin:9px 0 4px; color:var(--pink); font-family:var(--font-display); font-size:clamp(36px,3.5vw,46px); line-height:1; }
.pricing-note { display:flex; align-items:center; gap:9px; margin:20px 0 0; font-weight:700; }
.pricing-note svg { width:20px; color:#009c92; flex:0 0 auto; }
.merch-table-wrap { overflow-x:auto; margin-top:26px; border:1px solid #d4d4d4; border-top:4px solid var(--pink); border-radius:6px; background:#fff; box-shadow:0 10px 28px rgba(20,20,20,.07); }
.merch-price-table { width:100%; min-width:720px; border-collapse:collapse; font-size:16px; }
.merch-price-table th,.merch-price-table td { padding:19px 18px; border-right:1px solid #dedede; border-bottom:1px solid #dedede; text-align:center; }
.merch-price-table th:last-child,.merch-price-table td:last-child { border-right:0; }
.merch-price-table thead th { background:#151518; color:#fff; font-size:15px; }
.merch-price-table thead th:first-child { text-align:left; }
.merch-price-table tbody th { background:#f2f3f5; text-align:left; white-space:nowrap; font-size:16px; font-weight:850; }
.merch-price-table tbody td { color:var(--pink); font-family:var(--font-display); font-size:clamp(23px,2.2vw,30px); font-weight:900; line-height:1; white-space:nowrap; }
.merch-price-table tbody tr:nth-child(even) td { background:#fff8fc; }
.merch-price-table tbody tr:hover td { background:#fff0f8; }
.merch-price-table tbody tr:last-child th,.merch-price-table tbody tr:last-child td { border-bottom:0; }
.merch-pricing-intro { max-width:800px; margin:10px 0 0; color:var(--muted); }
.merch-gallery .gallery-item:nth-child(1) { grid-column:span 6; grid-row:span 2; }
.merch-gallery .gallery-item:nth-child(2) { grid-column:span 3; }
.merch-gallery .gallery-item:nth-child(3) { grid-column:span 3; }
.merch-gallery .gallery-item:nth-child(n+4) { grid-column:span 2; }
.merch-gallery .gallery-item img { object-fit:cover; }
.merch-gallery .gallery-item figcaption { max-width:calc(100% - 20px); padding:8px 11px; background:rgba(10,10,11,.9); font-family:Inter,"Segoe UI",Arial,sans-serif; font-size:13px; font-weight:700; line-height:1.35; }
.merch-gallery img[alt="Premium Resin Domed"] { object-position:center 42%; }
.merch-note { margin:16px 0 0; color:var(--muted); font-size:13px; }
.mobile-nav-label { padding:14px 4px 4px; color:var(--pink); font-size:12px; font-weight:900; text-transform:uppercase; }
@media(max-width:980px){
  .merch-options { grid-template-columns:1fr 1fr; }
  .merch-spec-layout { grid-template-columns:1fr; gap:34px; }
}
@media(max-width:700px){
  .merch-hero { min-height:620px; align-items:end; background-position:var(--hero-mobile-position,var(--hero-position,center)); }
  .merch-hero::before,.merch-hero.copy-right::before { background:linear-gradient(180deg,rgba(7,7,8,.2) 0%,rgba(7,7,8,.73) 42%,rgba(7,7,8,.98) 100%); }
  .merch-hero.name-badge-hero::before { background:linear-gradient(180deg,rgba(7,7,8,0) 0%,rgba(7,7,8,.12) 42%,rgba(7,7,8,.9) 74%,rgba(7,7,8,.99) 100%); }
  .merch-hero.name-badge-hero { background-position:right top; background-size:auto 76%; }
  .merch-hero.headband-hero::before { background:linear-gradient(180deg,rgba(7,7,8,.04) 0%,rgba(7,7,8,.18) 36%,rgba(7,7,8,.94) 66%,#070708 100%); }
  .headband-people { inset:0 0 auto; width:100%; height:58%; background-position:left top; background-size:auto 100%; -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%); mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%); }
  .headband-spotlight-inner { grid-template-columns:150px 1fr; gap:22px; }
  .headband-product-circle { width:150px; }
  .merch-hero.copy-right .hero-copy { margin-left:0; }
  .merch-hero .hero-copy { max-width:none; padding-block:70px 34px; }
  .merch-options { grid-template-columns:1fr 1fr; gap:8px; }
  .merch-option { min-height:165px; padding:17px; }
  .merch-option svg { margin-bottom:20px; }
  .merch-spec-grid { grid-template-columns:1fr; }
  .merch-spec:nth-child(odd) { border-right:0; }
  .pricing-heading { display:block; margin-bottom:20px; }
  .pricing-heading > p { margin-top:10px; }
  .merch-price-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .merch-price { padding:16px 14px; }
  .merch-price strong { font-size:29px; }
  .merch-table-wrap { margin-inline:-14px; }
  .merch-price-table th,.merch-price-table td { padding:13px 14px; }
  .merch-gallery .gallery-item:nth-child(n) { grid-column:span 1; grid-row:span 1; }
  .merch-gallery .gallery-item:nth-child(1) { grid-column:span 2; grid-row:span 2; }
}
@media (max-width:560px) {
  .headband-spotlight-inner { grid-template-columns:1fr; text-align:center; }
  .headband-product-circle { width:180px; margin-inline:auto; }
}
@media(max-width:380px){ .merch-options { grid-template-columns:1fr; } }

/* Mobile merchandise experience: image-first, compact and easy to scan. */
@media (max-width:700px) {
  body { padding-bottom:72px; }
  body .offer-bar {
    min-height:30px;
    padding:5px 12px;
    font-size:10px;
    line-height:1.2;
  }
  body .site-header { height:58px; }
  body .site-header .header-inner { width:calc(100% - 24px); }
  body .brand img { width:132px; }
  body .header-actions { gap:8px; }
  body .header-actions > .button {
    min-height:42px;
    padding:9px 14px;
    font-size:14px;
  }
  body .icon-button { width:42px; height:42px; }

  .merch-hero {
    min-height:0;
    display:block;
    background-color:#0b0b0e;
    background-image:none;
  }
  .merch-hero::after {
    content:"";
    position:absolute;
    z-index:-2;
    inset:0 0 auto;
    height:310px;
    background-color:#ececef;
    background-image:var(--hero-mobile-image,var(--hero-image));
    background-position:var(--hero-mobile-position,var(--hero-position,center));
    background-size:cover;
    background-repeat:no-repeat;
  }
  .merch-hero::before,
  .merch-hero.copy-right::before,
  .merch-hero.name-badge-hero::before,
  .merch-hero.headband-hero::before {
    background:linear-gradient(180deg,rgba(7,7,8,0) 0,rgba(7,7,8,.04) 190px,rgba(7,7,8,.88) 285px,#0b0b0e 350px,#0b0b0e 100%);
  }
  .merch-hero.name-badge-hero,
  .merch-hero.headband-hero { background-image:none; }
  .merch-hero.name-badge-hero::after {
    background-position:58% 34%;
  }
  .merch-hero.headband-hero::after { display:none; }
  .headband-people {
    z-index:-2;
    width:100%;
    height:310px;
    background-position:left top;
    background-size:auto 100%;
    -webkit-mask-image:none;
    mask-image:none;
  }
  .merch-hero .wrap { width:min(100% - 32px,var(--max)); }
  .merch-hero .hero-copy {
    max-width:none;
    padding:270px 0 34px;
  }
  .merch-hero .eyebrow {
    gap:9px;
    margin-bottom:13px;
    font-size:11px;
    line-height:1.35;
  }
  .merch-hero .eyebrow::before { width:24px; flex:0 0 24px; }
  .merch-hero h1 {
    max-width:100%;
    margin-bottom:16px;
    font-size:clamp(38px,10.5vw,46px);
    line-height:1.02;
  }
  .merch-hero .hero-lead {
    margin-bottom:22px;
    font-size:17px;
    line-height:1.48;
  }
  .merch-hero .hero-actions {
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:24px;
  }
  .merch-hero .hero-actions .button { min-height:54px; font-size:16px; }
  .merch-hero .proof-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    max-width:none;
    border-top:1px solid rgba(255,255,255,.18);
  }
  .merch-hero .proof-list li {
    min-width:0;
    padding:12px 8px 0 0;
    align-items:flex-start;
    font-size:12px;
    line-height:1.35;
  }
  .merch-hero .proof-list svg { width:16px; min-width:16px; }

  .mobile-cta {
    gap:6px;
    padding:7px 10px calc(7px + env(safe-area-inset-bottom));
    box-shadow:0 -10px 30px rgba(12,12,14,.1);
  }
  .mobile-cta .button { min-height:44px; }
  .gallery-head .section-title,
  .merch-spec-band .section-title,
  .merch-pricing .section-title { font-size:32px; line-height:1.08; }
  .merch-gallery .gallery-item:nth-child(1) { min-height:300px; }
}

@media (max-width:380px) {
  body .brand img { width:122px; }
  body .header-actions > .button { padding-inline:11px; font-size:13px; }
  .merch-hero::after,
  .headband-people { height:285px; }
  .merch-hero .hero-copy { padding-top:250px; }
  .merch-hero h1 { font-size:37px; }
  .merch-hero .proof-list { grid-template-columns:1fr; }
}
