/* Scoped to the giveaway merchandise accordion, independent of theme shop grids. */
.tgem-merch, .tgem-merch * { box-sizing: border-box; }
.tgem-merch .tgem-merch__panel { background: transparent; color: #fff; padding: 18px clamp(16px, 3vw, 48px) 30px; margin: 0 0 28px; min-width: 0; }
.tgem-merch .tgem-merch__controls { display: flex; justify-content: flex-end; gap: 8px; margin: 0 0 14px; }
.tgem-merch .tgem-merch__controls button { display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid #686868; border-radius: 50%; background: #191919; color: #fff; font: 22px/1 sans-serif; cursor: pointer; box-shadow: none; }
.tgem-merch .tgem-merch__controls button:disabled { opacity: .3; cursor: default; }
.tgem-merch .tgem-merch__controls button:hover:not(:disabled) { background: #353535; }
.tgem-merch .tgem-merch__track { --merch-gap: 24px; display: flex; align-items: stretch; gap: var(--merch-gap); list-style: none; margin: 0; padding: 0 0 12px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #686868 transparent; }
.tgem-merch .tgem-merch__card { flex: 0 0 calc((100% - 4 * var(--merch-gap)) / 4.5); min-width: 0; margin: 0; padding: 0; list-style: none; scroll-snap-align: start; }
.tgem-merch .tgem-merch__media { position: relative; aspect-ratio: 1; background: #151515; overflow: hidden; }
.tgem-merch .tgem-merch__media > a { display: block; width: 100%; height: 100%; }
.tgem-merch .tgem-merch__media img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0; margin: 0; }
.tgem-merch .tgem-merch__popular { position: absolute; top: 12px; left: 12px; max-width: calc(100% - 62px); border-radius: 24px; padding: 7px 12px; background: #29a835; color: #fff; font: 700 11px/1.2 Arial, sans-serif; letter-spacing: .025em; text-transform: uppercase; }
.tgem-merch .tgem-merch__name { margin: 18px 0 8px; padding: 0; color: #fff; font-family: var(--theme-font-h5_font-family, 'Oswald'), 'Arial Narrow', sans-serif; font-size: clamp(16px, 1.35vw, 23px); font-weight: 700; font-style: normal; line-height: 1.25; text-transform: uppercase; letter-spacing: -.025em; }
.tgem-merch .tgem-merch__name a { color: #fff !important; text-decoration: none; }
.tgem-merch .tgem-merch__name a:hover { text-decoration: underline; }
.tgem-merch .tgem-merch__price { color: #bcbcbc; font: 400 19px/1.4 'Arial Narrow', sans-serif; margin: 0 0 6px; }
.tgem-merch .tgem-merch__price .amount, .tgem-merch .tgem-merch__price bdi { color: inherit; font: inherit; }
.tgem-merch .tgem-merch__price ins { text-decoration: none; background: none; }
.tgem-merch .tgem-merch__price del { opacity: .65; font-size: .85em; }
.tgem-merch .tgem-merch__heading { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.tgem-merch .tgem-merch__subtitle { color: #d6d6da; font: 400 clamp(14px, 1.15vw, 18px)/1.45 Arial, sans-serif; letter-spacing: normal; text-transform: none; }
.tgem-merch [hidden] { display: none !important; }
.tgem-merch .tgem-merch__wishlist { position: absolute; right: 12px; top: 12px; }
.tgem-merch .tgem-merch__wishlist .tinv-wraper { margin: 0 !important; }
.tgem-merch .tgem-merch__wishlist a.tinvwl_add_to_wishlist_button { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; min-width: 0; padding: 0; margin: 0; border: 0; border-radius: 50%; background: #f7f0da; color: #292b24; box-shadow: none; }
.tgem-merch .tgem-merch__wishlist a::before { margin: 0 !important; }
.tgem-merch .tgem-merch__wishlist a > span { display: none; }
.tgem-merch a:focus-visible, .tgem-merch button:focus-visible, .tgem-merch__track:focus-visible { outline: 2px solid #237a2b; outline-offset: 3px; }
@media (max-width: 1024px) { .tgem-merch .tgem-merch__card { flex-basis: calc((100% - 2 * var(--merch-gap)) / 3); } }
@media (max-width: 640px) { .tgem-merch .tgem-merch__track { --merch-gap: 16px; } .tgem-merch .tgem-merch__card { flex-basis: 68%; } .tgem-merch .tgem-merch__name { font-size: 18px; } }

.tgem-merch .tgem-merch__track.is-scrollable { cursor: grab; user-select: none; }
.tgem-merch .tgem-merch__track.is-dragging { cursor: grabbing; scroll-snap-type: none; scroll-behavior: auto; }
.tgem-merch .tgem-merch__track.is-dragging a { cursor: grabbing; }
