/* JquanUI atomic-first residual CSS: visual, responsive and interaction-only. Demo V3.73 */
.shop-page {
    --shop-paper: #f3ecdd;
    --shop-ink: #10211f;
    --shop-moss: #365e58;
    --shop-clay: #ad7651;
    background: var(--ql-black)
}

.shop-page .global-nav:not(.scrolled) {
    color: var(--shop-ink)
}

.shop-page .global-nav:not(.scrolled) .brand-logo {
    filter: invert(1)
}

.shop-page .global-nav:not(.scrolled) .wordmark b {
    color: var(--shop-moss)
}

.shop-page .global-nav:not(.scrolled) .wordmark small,
.shop-page .global-nav:not(.scrolled) .main-nav a,
.shop-page .global-nav:not(.scrolled) .locale-switch button {
    color: rgba(16, 33, 31, .62)
}

.shop-page .global-nav:not(.scrolled) .main-nav a:hover,
.shop-page .global-nav:not(.scrolled) .main-nav a[aria-current=page],
.shop-page .global-nav:not(.scrolled) .locale-switch button[aria-pressed=true] {
    color: var(--green-hi)
}

.shop-page .global-nav:not(.scrolled) .locale-switch i,
.shop-page .global-nav:not(.scrolled) .icon-btn {
    border-color: rgba(16, 33, 31, .2)
}

.shop-page .global-nav:not(.scrolled) .nav-ticket {
    background: var(--shop-ink);
    color: var(--shop-paper)
}

.shop-hero {
    background: var(--shop-paper);
    color: var(--shop-ink)
}

.shop-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(89deg, rgba(42, 55, 48, .035) 0 1px, transparent 1px 7px);
    opacity: .55;
    pointer-events: none
}

.shop-hero::after {
    content: "";
    position: absolute;
    z-index: 1;
    inset: auto 0 0;
    height: 24%;
    background: linear-gradient(transparent, var(--shop-paper));
    pointer-events: none
}

.shop-hero-figure {
    background: #1d443f
}

.shop-hero-figure::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(23, 62, 55, .5), rgba(3, 12, 10, .18)), linear-gradient(0deg, rgba(9, 27, 24, .4), transparent 55%)
}

.shop-hero-figure img {
    filter: saturate(.72) contrast(1.1);
}

.shop-hero .kicker {
    color: var(--shop-moss)
}

.shop-hero h1 {
    color: #173b36
}

.shop-hero h1 .zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .12em
}

.shop-hero-line {
    color: rgba(16, 33, 31, .7)
}

.shop-hero-line.zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .08em
}

.shop-hero-link {
    border-bottom: 1px solid rgba(16, 33, 31, .36);
}

.shop-hero-link:hover {
    color: var(--shop-moss)
}

.shop-hero-link i {
    transition: transform .25s var(--ease)
}

.shop-hero-link:hover i {
    transform: translateY(4px)
}

.shop-collection {
    --shop-ink: #f2f1e9;
    --shop-paper: #0d1514;
    --shop-moss: #5e8981;
    background: #050909;
    color: var(--shop-ink)
}

.shop-section-head .kicker {
    color: var(--shop-moss)
}

.shop-section-head h2 .zh,
.shop-route h2 .zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .1em
}

.shop-section-head>p {
    color: rgba(242, 241, 233, .6)
}

.shop-filters {
    border-block: 1px solid rgba(242, 241, 233, .2);
}

.shop-filters button {
    border: 0;
    border-right: 1px solid rgba(242, 241, 233, .14);
    background: transparent;
    color: rgba(242, 241, 233, .56);
    transition: color .25s, background .25s
}

.shop-filters button:last-child {
    border-right: 0
}

.shop-filters button:hover,
.shop-filters button[aria-selected=true] {
    background: rgba(255, 255, 255, .06);
    color: var(--shop-ink)
}

.shop-filters button[aria-selected=true]::after {
    content: "";
    position: absolute;
    right: 15px;
    bottom: 14px;
    left: 15px;
    height: 2px;
    background: var(--shop-moss)
}

.filter-index {
    color: var(--shop-clay)
}

.shop-product {
    transition: opacity .32s var(--ease), transform .32s var(--ease)
}

.shop-product[hidden] {
    display: none
}

.shop-product-open {
    border: 0;
    background: transparent;
    color: inherit;
}

.product-stage {
    background: var(--shop-paper);
    border: 1px solid rgba(242, 241, 233, .1);
    isolation: isolate
}

.product-stage::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, .55), transparent 48%), repeating-linear-gradient(90deg, rgba(31, 59, 51, .035) 0 1px, transparent 1px 6px)
}

.stage-shadow {
    border-radius: 50%;
    background: rgba(0, 0, 0, .5);
    filter: blur(25px);
    transform: translate(12%, 18%)
}

.scarf-object {
    box-shadow: 18px 25px 28px rgba(19, 35, 31, .25);
    transform: rotate(-11deg);
    transition: transform .7s var(--ease)
}

.scarf-object::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(115deg, rgba(255, 255, 255, .36), transparent 40%, rgba(7, 28, 27, .22));
    mix-blend-mode: screen
}

.stage-label {
    color: rgba(242, 241, 233, .7)
}

.product-stage--book {
    background: #e8dfcd
}

.book-object {
    box-shadow: 15px 20px 22px rgba(31, 40, 33, .27);
    transform: rotate(6deg);
    transition: transform .7s var(--ease)
}

.book-object::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, rgba(15, 30, 28, .07), rgba(4, 16, 16, .45))
}

.book-object span {
    color: #f3ecdd
}

.product-stage--postcards {
    background: #f0e6d4
}

.postcard {
    box-shadow: 10px 14px 20px rgba(28, 40, 31, .22);
    transition: transform .65s var(--ease)
}

.postcard-one {
    transform: translate(-25%, -2%) rotate(-8deg)
}

.postcard-two {
    transform: translate(24%, 5%) rotate(10deg)
}

.product-stage--ticket {
    background: #dcd2c0
}

.ticket-object {
    border: 1px solid rgba(16, 33, 31, .4);
    background: #f3ecdd;
    box-shadow: 13px 18px 20px rgba(26, 40, 33, .2);
    color: #173b36;
    transform: rotate(-4deg);
    transition: transform .7s var(--ease)
}

.ticket-object b {
    color: var(--shop-clay);
    font: 400 clamp(42px, 6vw, 78px)/.8 var(--title)
}

.product-stage--palette {
    background: #ede4d3
}

.palette-object {
    background: #f6f0e5;
    box-shadow: 12px 17px 22px rgba(30, 39, 33, .18);
    transform: rotate(4deg);
    transition: transform .7s var(--ease)
}

.palette-object i {
    border-radius: 50%;
    background: #326a69;
    box-shadow: inset 4px 5px 7px rgba(255, 255, 255, .33), inset -4px -4px 7px rgba(0, 0, 0, .18)
}

.palette-object i:nth-child(2) {
    background: #6e9884
}

.palette-object i:nth-child(3) {
    background: #a6b279
}

.palette-object i:nth-child(4) {
    background: #1b393b
}

.palette-object span {
    color: rgba(16, 33, 31, .6)
}

.product-stage--landscape {
    background: #1f4b48
}

.product-stage--landscape::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(8, 29, 27, .44), rgba(8, 29, 27, .05)), linear-gradient(0deg, rgba(6, 21, 20, .54), transparent)
}

.product-stage--landscape img {
    filter: saturate(.75);
}

.landscape-edition {
    color: #f3ecdd
}

.landscape-edition b {
    font: 400 clamp(24px, 3vw, 40px) "Noto Serif SC", serif;
}

/* ---- Dark treatment for .shop-collection product stages ---- */
.shop-collection .product-stage--book { background: #17201e; }
.shop-collection .product-stage--postcards { background: #1a221f; }
.shop-collection .product-stage--ticket { background: #1b2623; }
.shop-collection .ticket-object {
    border-color: rgba(242, 241, 233, .28);
    background: #232f2b;
    box-shadow: 13px 18px 20px rgba(0, 0, 0, .42);
    color: #f2f1e9;
}
.shop-collection .product-stage--palette { background: #18201d; }
.shop-collection .palette-object {
    background: #22302b;
    box-shadow: 12px 17px 22px rgba(0, 0, 0, .42);
}
.shop-collection .palette-object span { color: rgba(242, 241, 233, .62); }
.shop-collection .stage-shadow { background: rgba(0, 0, 0, .5); }
.shop-collection .product-stage::before {
    background: linear-gradient(135deg, rgba(255, 255, 255, .06), transparent 48%), repeating-linear-gradient(90deg, rgba(242, 241, 233, .03) 0 1px, transparent 1px 6px);
}
.shop-collection .book-object,
.shop-collection .postcard,
.shop-collection .ticket-object,
.shop-collection .palette-object {
    box-shadow: 12px 17px 22px rgba(0, 0, 0, .42);
}
.shop-collection .scarf-object { box-shadow: 18px 25px 28px rgba(0, 0, 0, .45); }
.shop-collection .product-price { color: rgba(242, 241, 233, .58); }
.shop-collection .product-price b { color: rgba(242, 241, 233, .3); }
.shop-collection .shop-empty { color: rgba(242, 241, 233, .6); }

.shop-product-open:hover .scarf-object {
    transform: rotate(-6deg) scale(1.035)
}

.shop-product-open:hover .book-object {
    transform: rotate(1deg) translateY(-4px)
}

.shop-product-open:hover .postcard-one {
    transform: translate(-30%, -6%) rotate(-13deg)
}

.shop-product-open:hover .postcard-two {
    transform: translate(28%, 1%) rotate(14deg)
}

.shop-product-open:hover .ticket-object {
    transform: rotate(0) translateY(-4px)
}

.shop-product-open:hover .palette-object {
    transform: rotate(0) translateY(-4px)
}

.product-number {
    color: var(--shop-clay)
}

.product-meta h3 .zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .08em
}

.product-price {
    color: rgba(16, 33, 31, .56)
}

.product-price b {
    color: rgba(16, 33, 31, .25);
}

.product-meta>i {
    color: var(--shop-moss);
    transform: translate(-4px, 4px);
    transition: .3s var(--ease)
}

.shop-product-open:hover .product-meta>i,
.shop-product-open:focus-visible .product-meta>i {
    opacity: 1;
    transform: none
}

.shop-empty {
    color: rgba(16, 33, 31, .6)
}

.shop-route {
    border-top: 1px solid rgba(243, 236, 221, .1);
    background: #0b1716
}

.shop-route h2 {
    color: #edf0e7
}

.shop-route-copy p {
    color: var(--muted)
}

.shop-route-copy .zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .04em
}

.shop-route .secondary-btn {
    border-color: rgba(243, 236, 221, .36)
}

.shop-modal[hidden] {
    display: none
}

.shop-modal-backdrop {
    background: rgba(2, 8, 8, .78);
    backdrop-filter: blur(10px)
}

.shop-modal-panel,
.shop-notify-panel {
    background: #f0e8d8;
    color: var(--shop-ink);
    box-shadow: 0 35px 90px rgba(0, 0, 0, .48)
}

.shop-modal-close {
    border: 1px solid rgba(16, 33, 31, .22);
    border-radius: 0;
    background: rgba(243, 236, 221, .85);
    color: var(--shop-ink);
}

.shop-modal-art {
    background: var(--shop-paper);
}

.shop-modal-art::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(16, 33, 31, .08), transparent 45%)
}

.shop-modal-copy .kicker {
    color: var(--shop-moss)
}

.shop-modal-copy h2 {
    color: var(--shop-ink)
}

.shop-modal-price {
    color: var(--shop-clay);
}

.shop-modal-story {
    color: rgba(16, 33, 31, .8)
}

.shop-specs {
    border-top: 1px solid rgba(16, 33, 31, .16)
}

.shop-specs div:last-child {
    grid-column: span 2
}

.shop-specs dt {
    color: rgba(16, 33, 31, .52);
}

.shop-modal-actions .primary-btn {
    background: var(--shop-moss)
}

.shop-modal-actions .secondary-btn {
    border-color: rgba(16, 33, 31, .28)
}

.shop-modal-status {
    color: var(--shop-moss);
}

.shop-notify-panel {
    background: #0d1b19;
    color: #edf0e7
}

.shop-notify-panel h2 {
    color: #edf0e7
}

.shop-notify-panel h2 .zh {
    font-family: "Noto Serif SC", serif;
    letter-spacing: .08em
}

.shop-notify-product {
    color: var(--green-hi)
}

.shop-notify-panel label {
    color: rgba(237, 240, 231, .55);
}

.shop-notify-panel input,
.shop-notify-panel select {
    border: 0;
    border-bottom: 1px solid rgba(237, 240, 231, .3);
    border-radius: 0;
    background: transparent;
    color: #edf0e7;
    outline: 0
}

.shop-notify-panel select option {
    color: #000
}

.shop-notify-panel .primary-btn {
    background: var(--green)
}

.shop-notify-success {
    color: #b8d5c3
}

.shop-notify-error {
    color: #d99b79;
}

@media(prefers-reduced-motion:reduce) {

    .shop-product,
    .product-stage *,
    .shop-hero-link i {
        transition: none !important
    }
}

/* Demo V3.73 shop black-gold / flowing-gold tuning. Complex visual CSS only; structure stays atomic-first. */
.shop-page {
    --shop-paper: #030303;
    --shop-ink: #f3ecda;
    --shop-moss: var(--green-hi);
    --shop-clay: #b89865;
    --shop-gold-hi: #e1c990;
    background: #030303;
    color: var(--shop-ink)
}
.shop-page .global-nav:not(.scrolled) { color: #fff8e4; background: linear-gradient(180deg, rgba(3,3,3,.70), transparent); }
.shop-page .global-nav:not(.scrolled) .wordmark small,
.shop-page .global-nav:not(.scrolled) .main-nav a,
.shop-page .global-nav:not(.scrolled) .locale-switch button { color: rgba(243, 236, 218, .72); }
.shop-page .global-nav:not(.scrolled) .wordmark b,
.shop-page .global-nav:not(.scrolled) .main-nav a:hover,
.shop-page .global-nav:not(.scrolled) .main-nav a[aria-current=page],
.shop-page .global-nav:not(.scrolled) .locale-switch button[aria-pressed=true] { color: var(--green-hi); }
.shop-page .global-nav:not(.scrolled) .locale-switch i,
.shop-page .global-nav:not(.scrolled) .icon-btn { border-color: rgba(225, 201, 144, .24); }
.shop-page .global-nav:not(.scrolled) .nav-ticket { background: linear-gradient(180deg, var(--shop-gold-hi), var(--shop-clay)); color: #030303; }
.shop-hero {
    background:
        radial-gradient(70% 62% at 78% 24%, rgba(184, 152, 101, .22), transparent 58%),
        radial-gradient(54% 42% at 18% 78%, rgba(143, 230, 212, .10), transparent 64%),
        linear-gradient(180deg, #050505 0%, #0b0906 60%, #030303 100%);
    color: #fff8e4
}
.shop-hero::before { background-image: linear-gradient(90deg, transparent, rgba(225, 201, 144, .22), transparent), repeating-linear-gradient(90deg, transparent 0, transparent calc(12.5% - 1px), rgba(225, 201, 144, .10) 12.5%); opacity: .20; }
.shop-hero::after { background: linear-gradient(transparent, #030303); }
.shop-hero-figure { background: #0b0906; border-left: 1px solid rgba(225, 201, 144, .18); }
.shop-hero-figure::after { background: linear-gradient(90deg, rgba(3,3,3,.42), rgba(184,152,101,.08)), linear-gradient(0deg, rgba(3,3,3,.72), transparent 55%); }
.shop-hero-figure img { filter: saturate(.78) brightness(.74) contrast(1.06); }
.shop-hero .kicker,
.shop-section-head .kicker,
.shop-route .kicker,
.shop-modal-copy .kicker { color: var(--shop-gold-hi); }
.shop-hero h1,
.shop-section-head h2,
.shop-route h2,
.shop-modal-copy h2,
.shop-notify-panel h2 { color: #fff8e4; text-shadow: 0 22px 58px rgba(0,0,0,.38); }
.shop-hero-line,
.shop-route-copy p { color: rgba(243, 236, 218, .72); }
.shop-section-head>p { color: rgba(243, 236, 218, .58); }
.shop-hero-link { border-bottom-color: rgba(225, 201, 144, .42); color: var(--green-hi); }
.shop-hero-link:hover { color: var(--shop-gold-hi); }
.shop-collection {
    --shop-ink: #f3ecda;
    --shop-paper: #080604;
    --shop-moss: var(--green-hi);
    background:
        radial-gradient(760px 480px at 12% 8%, rgba(143, 230, 212, .08), transparent 64%),
        radial-gradient(820px 520px at 88% 18%, rgba(184, 152, 101, .12), transparent 66%),
        #030303;
}
.shop-filters { border-block-color: rgba(225, 201, 144, .22); }
.shop-filters button { border-right-color: rgba(225, 201, 144, .16); color: rgba(243, 236, 218, .58); }
.shop-filters button:hover,
.shop-filters button[aria-selected=true] { background: rgba(184, 152, 101, .08); color: #fff8e4; }
.shop-filters button[aria-selected=true]::after { background: linear-gradient(90deg, var(--shop-gold-hi), var(--green-hi)); }
.filter-index,
.product-number,
.shop-modal-price { color: var(--shop-gold-hi); }
.product-stage { background: #080604; border-color: rgba(225, 201, 144, .20); box-shadow: 0 20px 55px rgba(0,0,0,.32), inset 0 0 0 1px rgba(255,248,228,.035); }
.product-stage::before { background: linear-gradient(135deg, rgba(225, 201, 144, .12), transparent 48%), repeating-linear-gradient(90deg, rgba(225, 201, 144, .035) 0 1px, transparent 1px 7px); }
.shop-collection .product-stage--book,
.shop-collection .product-stage--postcards,
.shop-collection .product-stage--ticket,
.shop-collection .product-stage--palette { background: #0b0906; }
.shop-collection .ticket-object,
.shop-collection .palette-object { border-color: rgba(225, 201, 144, .26); background: #15110b; color: #fff8e4; }
.shop-collection .product-price { color: rgba(243, 236, 218, .58); }
.product-meta>i { color: var(--green-hi); }
.shop-route { border-top-color: rgba(225, 201, 144, .18); background: linear-gradient(180deg, #030303, #0b0906 58%, #030303); }
.shop-route .secondary-btn,
.shop-modal-actions .secondary-btn { border-color: rgba(225, 201, 144, .34); color: #fff8e4; }
.shop-route .secondary-btn:hover,
.shop-modal-actions .secondary-btn:hover { background: linear-gradient(180deg, var(--shop-gold-hi), var(--shop-clay)); color: #030303; }
.shop-modal-backdrop { background: rgba(3, 3, 3, .82); backdrop-filter: blur(12px); }
.shop-modal-panel,
.shop-notify-panel { background: #080604; color: #f3ecda; border: 1px solid rgba(225, 201, 144, .26); box-shadow: 0 35px 90px rgba(0, 0, 0, .58); }
.shop-modal-close { border-color: rgba(225, 201, 144, .30); background: rgba(3, 3, 3, .64); color: #f3ecda; }
.shop-modal-art { background: #0b0906; }
.shop-modal-story { color: rgba(243, 236, 218, .72); }
.shop-specs { border-top-color: rgba(225, 201, 144, .20); }
.shop-specs dt,
.shop-specs dd,
.shop-notify-panel label { color: rgba(243, 236, 218, .62); }
.shop-modal-actions .primary-btn,
.shop-notify-panel .primary-btn { background: linear-gradient(180deg, var(--shop-gold-hi), var(--shop-clay)); color: #030303; }
.shop-modal-status,
.shop-notify-product,
.shop-notify-success { color: var(--green-hi); }
.shop-notify-panel input,
.shop-notify-panel select { border-bottom-color: rgba(225, 201, 144, .30); color: #f3ecda; }
.shop-page .industry-links { border-block: 1px solid rgba(225, 201, 144, .24); background: #030303; }
.shop-page .industry-links a { border-color: rgba(225, 201, 144, .24); color: rgba(243, 236, 218, .78); transition: color 280ms ease, background 280ms ease; }
.shop-page .industry-links a:hover,
.shop-page .industry-links a:focus-visible { color: var(--shop-gold-hi); background: linear-gradient(90deg, rgba(184, 152, 101, .10), rgba(143, 230, 212, .06)); }
.shop-page .industry-links i { color: var(--green-hi); }


/* Demo V3.60 task2 page-by-page visual pass: shop black-gold continuity. */
.shop-page .global-nav:not(.scrolled) {
  color: #fff8e4;
  background: linear-gradient(180deg, rgba(3, 3, 3, .78), rgba(3, 3, 3, .18), transparent);
}
.shop-page .global-nav:not(.scrolled) .brand-logo { filter: none; }
.shop-page .global-nav:not(.scrolled) .wordmark b { color: var(--green-hi); }
.shop-page .global-nav:not(.scrolled) .locale-switch button { color: rgba(255, 250, 235, .62); }
.shop-page .global-nav:not(.scrolled) .icon-btn { border-color: rgba(225, 201, 144, .22); }
.shop-hero {
  background:
    radial-gradient(900px 520px at 12% 8%, rgba(225, 201, 144, .15), transparent 64%),
    radial-gradient(760px 460px at 82% 14%, rgba(143, 230, 212, .09), transparent 66%),
    linear-gradient(180deg, #050504 0%, #0a0805 54%, #030303 100%);
  color: #fff8e4;
}
.shop-hero::before {
  background: repeating-linear-gradient(90deg, rgba(225, 201, 144, .14) 0 1px, transparent 1px 9px);
  opacity: .22;
  mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
}
.shop-hero::after {
  background: linear-gradient(transparent, #030303);
}
.shop-hero-figure {
  background: #060605;
  box-shadow: inset 0 0 0 1px rgba(225, 201, 144, .20), 0 32px 92px rgba(0, 0, 0, .42);
}
.shop-hero-figure::after {
  background: linear-gradient(90deg, rgba(3, 3, 3, .74), rgba(3, 3, 3, .10) 48%, rgba(184, 152, 101, .12)), linear-gradient(0deg, rgba(3, 3, 3, .62), transparent 56%);
}
.shop-hero .kicker,
.shop-hero-link,
.shop-modal-price,
.shop-modal-status,
.shop-notify-product,
.shop-notify-success {
  color: var(--green-hi);
}
.shop-hero h1,
.shop-route h2,
.shop-modal-copy h2,
.shop-notify-panel h2 {
  color: #fff8e4;
  text-shadow: 0 20px 54px rgba(0, 0, 0, .44);
}
.shop-hero-line,
.shop-modal-story,
.shop-specs dd,
.shop-notify-panel p {
  color: rgba(243, 236, 218, .70);
}
.shop-hero-link {
  border-bottom-color: rgba(143, 230, 212, .52);
}
.product-stage,
.product-stage--book,
.product-stage--postcards,
.product-stage--ticket,
.product-stage--palette,
.shop-modal-art {
  background:
    linear-gradient(135deg, rgba(184, 152, 101, .16), rgba(143, 230, 212, .06) 46%, rgba(3, 3, 3, .88)),
    #070706;
  border-color: rgba(225, 201, 144, .22);
}
.product-stage::before {
  background: repeating-linear-gradient(90deg, rgba(225, 201, 144, .10) 0 1px, transparent 1px 8px);
  opacity: .45;
}
.ticket-object,
.palette-object {
  background: linear-gradient(180deg, rgba(255, 248, 228, .92), rgba(184, 152, 101, .72));
  color: #0b0b08;
}
.shop-modal-panel,
.shop-notify-panel {
  border: 1px solid rgba(225, 201, 144, .26);
  background:
    radial-gradient(620px 360px at 16% 0%, rgba(225, 201, 144, .14), transparent 62%),
    linear-gradient(180deg, #080705, #030303);
  color: rgba(255, 250, 235, .92);
  box-shadow: 0 38px 110px rgba(0, 0, 0, .62), inset 0 0 0 1px rgba(255, 248, 228, .04);
}
.shop-modal-close {
  border-color: rgba(225, 201, 144, .28);
  background: rgba(3, 3, 3, .62);
  color: #fff8e4;
}
.shop-modal-copy .kicker,
.shop-specs dt {
  color: rgba(225, 201, 144, .68);
}
.shop-specs {
  border-top-color: rgba(225, 201, 144, .22);
}
.shop-modal-actions .secondary-btn {
  border-color: rgba(225, 201, 144, .34);
  color: #fff8e4;
}
.shop-notify-panel input,
.shop-notify-panel select {
  color: #fff8e4;
}
.shop-notify-panel select option {
  background: #080705;
  color: rgba(255, 250, 235, .94);
}


/* Demo V3.60 final art/UI sweep: shop product objects and route finish. */
.shop-page .book-object,
.shop-page .postcard,
.shop-page .ticket-object,
.shop-page .palette-object {
  box-shadow: 0 20px 48px rgba(0, 0, 0, .36), inset 0 0 0 1px rgba(255, 248, 228, .10);
}
.shop-page .book-object,
.shop-page .ticket-object,
.shop-page .palette-object {
  background: linear-gradient(180deg, rgba(255, 248, 228, .92), rgba(184, 152, 101, .72));
  color: #0b0b08;
}
.shop-page .postcard { border: 1px solid rgba(225, 201, 144, .28); }
.shop-route {
  border-top: 1px solid rgba(225, 201, 144, .20);
  background:
    radial-gradient(700px 420px at 20% 16%, rgba(143, 230, 212, .09), transparent 66%),
    linear-gradient(180deg, #050504, #030303);
}
.shop-route h2 { color: #fff8e4; text-shadow: 0 20px 54px rgba(0, 0, 0, .42); }
.shop-route-copy { color: rgba(243, 236, 218, .70); }

/* Shop uses the same navigation material and flowing-gold ticket interaction as the site shell. */
.shop-page .global-nav:not(.scrolled),
.shop-page .global-nav.scrolled {
  color: #fff8e4;
}
.shop-page .global-nav:not(.scrolled) {
  background: rgba(2, 5, 5, .58);
  -webkit-backdrop-filter: saturate(130%) blur(14px);
  backdrop-filter: saturate(130%) blur(14px);
  box-shadow: inset 0 -1px rgba(225, 201, 144, .08);
}
.shop-page .global-nav:not(.scrolled) .main-nav a,
.shop-page .global-nav:not(.scrolled) .wordmark small {
  color: rgba(255, 255, 255, .72);
}
.shop-page .global-nav:not(.scrolled) .nav-ticket,
.shop-page .global-nav.scrolled .nav-ticket {
  border: 1px solid rgba(225, 201, 144, .34);
  background: linear-gradient(90deg, #b89865 0%, var(--green-hi) 52%, #e1c990 100%) left / 0% 100% no-repeat, rgba(184, 152, 101, .10) !important;
  color: #fff8e4;
}
.shop-page .global-nav .nav-ticket:hover,
.shop-page .global-nav .nav-ticket:focus-visible {
  background-size: 100% 100%, auto !important;
  color: #030303;
}
.shop-page .shop-hero-figure img {
  filter: saturate(.9) brightness(.88) contrast(1.04);
}
.shop-page .shop-hero-figure::after {
  background: linear-gradient(90deg, rgba(3, 3, 3, .70), rgba(3, 3, 3, .06) 52%, rgba(184, 152, 101, .10)), linear-gradient(0deg, rgba(3, 3, 3, .48), transparent 58%);
}
