/* ═══════════════════════════════════════════════════════════════
 * Glapris PDP — D1 "Classic Focused" + M1 mobile companion.
 * Values mapped 1:1 from design handoff (tokens.css, pdp/d1.jsx,
 * pdp/parts.jsx, pdp/mobile.jsx). Scoped to .glp-pdp.
 * ═══════════════════════════════════════════════════════════════ */

/* Astra WC wrappers → seamless white canvas. Zero ALL padding/margin on the
   ENTIRE chain (#content → .ast-container → #primary → .site-main → wc-container)
   so nothing insets the content (image stays full-width on mobile, no top strip,
   no "white line"). .glp-pdp itself owns all spacing + centering. */
body.single-product.has-glp-pdp #content.site-content,
body.single-product.has-glp-pdp #content.site-content > .ast-container,
body.single-product.has-glp-pdp #primary,
body.single-product.has-glp-pdp #main.site-main,
body.single-product.has-glp-pdp .ast-woocommerce-container {
  background: #fff !important;
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.single-product.has-glp-pdp .ast-breadcrumbs-wrapper { display: none; }

.glp-pdp {
  /* Brand tokens (design tokens.css) */
  --glp-orange: #f58220;
  --glp-orange-dark: #d96d0f;
  --glp-orange-subtle: rgba(245, 130, 32, 0.06);
  --glp-charcoal: #1a1a1a;
  --glp-grey-700: #3d3d3d;
  --glp-grey-500: #6b6b6b;
  --glp-grey-400: #8a8a8a;
  --glp-grey-300: #b0b0b0;
  --glp-grey-200: #d4d4d4;
  --glp-grey-100: #ebebeb;
  --glp-grey-50: #f5f5f5;
  --glp-cream: #ffffff;        /* page canvas — plain white per request */
  --glp-tile: #f4f1ec;         /* warm image-tile grey — SAME as homepage (white product
                                  photos blend in via mix-blend-multiply → no white frame) */
  /* Homepage-card tokens (home.css scopes these to body.has-glp-home; the PDP
     rails reuse .glp-home-card, so re-declare them here). */
  --glp-line: #e8e4de;
  --glp-ink: #2b2b2b;
  --glp-grey: #6b6b6b;
  --glp-out: #d93025;
  --glp-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --glp-hand: 'Caveat', cursive;
  --glp-success: #2d8a4e;
  --glp-warning: #e5a100;
  --glp-error: #d93025;
  --glp-display: 'Antonio', sans-serif;
  --glp-cta-shadow: 0 3px 10px rgba(245, 130, 32, 0.18); /* softened — the .32/18px glow read as "glossy" */

  background: #fff;
  color: var(--glp-charcoal);
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding: 4px 28px 50px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.5;
  -webkit-tap-highlight-color: transparent;
}
.glp-pdp *, .glp-pdp *::before, .glp-pdp *::after { box-sizing: border-box; }

/* Plugin-injected duplicates + WC's own stock text never render in our scope.
   The "X på lager" <p class="stock"> is a sibling of the cart form (echoed by
   the custom simple.php before <form>), so hide any .stock inside the cart wrap —
   our own .glp-stock block shows the proper OBS-style stock instead. */
.glp-pdp .moo-stock-wrap,
.glp-pdp .moo-custom-button,
.glp-pdp .moo-stock-status,
.glp-pdp .glp-buy__cart .stock,
.glp-pdp .glp-buy__cartwrap > .stock,
.glp-pdp .tinv-wraper:not(.glp-buy__ti .tinv-wraper),
.glp-pdp .woocommerce-product-gallery__trigger { display: none !important; }

/* Match the canonical site footer. Legacy catalog JS hides these redundant
   store headings on other templates, but that script is intentionally absent
   on the lean PDP, so keep the footer result consistent in CSS. */
body.has-glp-pdp #colophon .moo-footer-inner-wrap h4 { display: none !important; }
.glp-pdp .glp-buy__ti { display: none !important; }

.glp-pdp :is(button, a, input, select):focus-visible {
  outline: 2px solid var(--glp-orange-dark);
  outline-offset: 2px;
}
/* Kill Astra's dotted focus border + mouse-focus background flash on our
   interactive buttons (the "weird effect" on stock toggle / spec tabs). */
.glp-pdp button { -webkit-tap-highlight-color: transparent; }
.glp-pdp .glp-stock__toggle:focus,
.glp-pdp .glp-tabs__tab:focus,
.glp-pdp .glp-buy__cc:focus,
.glp-pdp .glp-buy__wish:focus,
.glp-pdp .glp-buy__cc-primary:focus {
  border-width: 0 !important;
  border-style: solid !important;
  box-shadow: none !important;
}
.glp-pdp .glp-buy__cc:focus { border-width: 1.5px !important; }
.glp-pdp :is(.glp-stock__toggle, .glp-tabs__tab, .glp-buy__cc, .glp-buy__wish, .glp-buy__cc-primary):focus:not(:focus-visible) {
  outline: none;
}
/* ZERO interactive effect on the stock toggle — no bg, outline, shadow,
   border-colour or transform change on hover/active/focus/focus-visible. */
.glp-pdp .glp-stock__toggle,
.glp-pdp .glp-stock__toggle:hover,
.glp-pdp .glp-stock__toggle:active,
.glp-pdp .glp-stock__toggle:focus,
.glp-pdp .glp-stock__toggle:focus-visible {
  background: #fff !important;
  outline: none !important;
  box-shadow: none !important;
  border-top-color: var(--glp-grey-100) !important;
  color: var(--glp-charcoal) !important;
  transform: none !important;
}
.glp-pdp .glp-tabs__tab,
.glp-pdp .glp-tabs__tab:hover,
.glp-pdp .glp-tabs__tab:active,
.glp-pdp .glp-tabs__tab:focus { background: none !important; }

/* ─── Breadcrumbs — one line, scrolls on overflow ─── */
.glp-pdp__breadcrumbs {
  padding: 14px 0 6px;
  overflow-x: auto; overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.glp-pdp__breadcrumbs::-webkit-scrollbar { display: none; }
.glp-pdp__crumbs ol {
  display: inline-flex; flex-wrap: nowrap; gap: 7px; align-items: center;
  font-size: 12px; color: var(--glp-grey-500);
  list-style: none; padding: 0; margin: 0; white-space: nowrap;
}
.glp-pdp__crumbs li { display: inline-flex; align-items: center; gap: 7px; flex-shrink: 0; }
.glp-pdp__crumbs a { color: inherit; text-decoration: none; }
.glp-pdp__crumbs li:last-child,
.glp-pdp__crumbs li:last-child a { color: var(--glp-charcoal); font-weight: 600; }
.glp-pdp__crumb-sep { color: var(--glp-grey-300); }

/* ─── Main grid: [gallery | buy] / [desc | buy] ─── */
.glp-pdp__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 440px;
  grid-template-areas:
    "gallery buy"
    "desc    buy";
  gap: 24px 44px;
  align-items: start;
  padding-top: 10px;
}
.glp-gallery { grid-area: gallery; min-width: 0; }
.glp-desc    { grid-area: desc;    min-width: 0; }
.glp-pdp__buyarea {
  grid-area: buy;
  position: sticky; top: 16px; align-self: start;
  float: none !important; width: 100% !important; margin: 0 !important;
}

/* ═══ GALLERY (D1: 76px thumbs + 1:1 tile) ═══ */
.glp-gallery {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 14px;
}
.glp-gallery--single { grid-template-columns: minmax(0, 1fr); }
.glp-gallery__thumbs { display: flex; flex-direction: column; gap: 10px; }
.glp-gallery__thumb {
  width: 76px; height: 76px;
  border-radius: 10px;
  border: 2px solid var(--glp-grey-100);
  background: #fff;
  overflow: hidden; padding: 6px;
  cursor: pointer;
}
.glp-gallery__thumb img { width: 100%; height: 100%; object-fit: contain; }
.glp-gallery__thumb.is-active { border-color: var(--glp-orange); }
.glp-gallery__more {
  width: 76px; height: 76px;
  border-radius: 10px;
  border: 1.5px dashed var(--glp-grey-200);
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 600; color: var(--glp-grey-500);
  background: var(--glp-grey-50);
}
.glp-gallery__main {
  position: relative;
  background: #fff;
  border-radius: 16px;
  border: 1px solid var(--glp-grey-100);
  aspect-ratio: 1;
  overflow: hidden;
}
.glp-gallery__img {
  width: 100% !important; height: 100% !important;
  object-fit: contain;
  padding: 42px;
  margin: 0 !important;
}
/* Discount badge — circle over the image */
.glp-gallery__badge {
  position: absolute; top: 14px; left: 14px; z-index: 5;
  width: 52px; height: 52px; border-radius: 50%;
  background: var(--glp-orange); color: #fff;
  font-size: 13px; font-weight: 800; line-height: 1;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 12px rgba(245,130,32,.3);
}
.glp-gallery__btn {
  position: absolute; right: 14px; z-index: 5;
  width: 40px; height: 40px; border-radius: 50%;
  background: #fff !important;
  border: 1px solid var(--glp-grey-100) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  color: var(--glp-grey-500) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
  cursor: pointer; padding: 0 !important;
}
.glp-gallery__btn svg { display: block; stroke: currentColor !important; fill: none !important; }
.glp-gallery__btn:hover { color: var(--glp-charcoal) !important; }
.glp-gallery__btn--zoom  { top: 14px; }
.glp-gallery__btn--heart { display: none !important; top: 12px; right: 12px; width: 34px; height: 34px; }
.glp-gallery__btn--heart.is-active { background: var(--glp-orange) !important; color: #fff !important; box-shadow: 0 5px 15px rgba(245,130,32,.32); }
.glp-gallery__btn--heart.is-active svg { fill: currentColor !important; stroke: currentColor !important; }

/* Prev/next image arrows — centered on the sides */
.glp-gallery__arrow {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 5;
  width: 40px; height: 40px; border-radius: 50%;
  background: #fff; border: 1px solid var(--glp-grey-100);
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  display: flex; align-items: center; justify-content: center;
  color: var(--glp-charcoal); cursor: pointer; padding: 0;
  transition: background .15s, color .15s;
}
.glp-gallery__arrow svg { display: block; stroke: currentColor !important; fill: none !important; }
.glp-gallery__arrow:hover { background: var(--glp-charcoal); color: #fff; border-color: var(--glp-charcoal); }
.glp-gallery__arrow--prev { left: 12px; }
.glp-gallery__arrow--next { right: 12px; }
.glp-gallery__more { cursor: pointer; }

/* ═══ "OM PRODUKTET" (white card) ═══ */
.glp-desc {
  background: #fff;
  border: 1px solid var(--glp-grey-100);
  border-radius: 16px;
  padding: 26px;
}
.glp-desc__title {
  font-family: var(--glp-display);
  font-size: 22px; font-weight: 700;
  text-transform: uppercase; letter-spacing: -.2px;
  margin: 0 0 12px; color: var(--glp-charcoal);
}
.glp-desc__lede, .glp-desc__body { font-size: 14.5px; line-height: 1.7; color: var(--glp-grey-700); }
.glp-desc__lede { margin-bottom: 12px; }
.glp-desc__body { margin-bottom: 8px; }
.glp-desc__lede p, .glp-desc__body p { margin: 0 0 12px; }
.glp-desc__highlights {
  display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
  list-style: none; padding: 12px 0 0; margin: 0;
}
.glp-desc__highlights li { display: flex; gap: 9px; font-size: 13px; color: var(--glp-grey-700); line-height: 1.4; }
.glp-desc__highlights svg { color: var(--glp-success); flex-shrink: 0; margin-top: 1px; }

/* ═══ BUY BOX ═══ */
.glp-buy { font-size: 14px; }

.glp-buy__brand-row { display: flex; align-items: center; gap: 10px; margin-bottom: 9px; flex-wrap: wrap; }
.glp-buy__brand {
  padding: 4px 10px;
  border: 1px solid var(--glp-grey-200);
  border-radius: 4px;
  font-family: var(--glp-display);
  font-weight: 700; font-size: 12px;
  letter-spacing: 1px; text-transform: uppercase;
  color: var(--glp-charcoal); text-decoration: none;
}
/* brand LOGO variant (when the brand term has a thumbnail) — show the logo, no text chrome */
.glp-buy__brand--logo {
  padding: 0;
  border: 0;
  border-radius: 0;
  display: inline-flex;
  align-items: center;
}
.glp-buy__brand--logo img {
  height: 30px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
  display: block;
}
.glp-buy__rating { display: flex; align-items: center; gap: 6px; }
.glp-buy__stars { display: inline-flex; gap: 1px; }
.glp-star { color: #e0e0e0; font-size: 14px; line-height: 1; }
.glp-star.is-on { color: #f5a623; }
.glp-buy__rating-val { font-size: 12.5px; font-weight: 600; }
.glp-buy__rating-link { font-size: 12px; color: var(--glp-grey-500); text-decoration: underline; text-underline-offset: 2px; }

.glp-buy__title {
  font-family: var(--glp-display);
  font-size: 30px; font-weight: 700;
  line-height: 1.05; letter-spacing: -.3px;
  text-transform: uppercase;
  margin: 0 0 12px; color: var(--glp-charcoal);
}

/* Price block (design PriceBlock) */
.glp-buy__price-block { margin-bottom: 12px; }
.glp-buy__price-row { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.glp-buy__price {
  font-family: var(--glp-display);
  font-size: 40px; font-weight: 700; line-height: 1;
  color: var(--glp-charcoal);
}
.glp-buy__price.is-sale { color: var(--glp-error); }
.glp-buy__regular { font-size: 16px; color: var(--glp-grey-400); text-decoration: line-through; font-weight: 400; }
.glp-buy__pct {
  background: var(--glp-orange); color: #fff;
  font-size: 13px; font-weight: 800;
  padding: 3px 9px; border-radius: 5px;
}
.glp-buy__price-sub { font-size: 11.5px; color: var(--glp-grey-500); margin-top: 6px; }

.glp-buy__prisjakt-slot { margin: 0 0 16px; }
.glp-buy__prisjakt-slot:empty { display: none; }

/* Cart form: [qty pill][ATC] then [C&C][heart] */
.glp-buy__cartwrap { margin-bottom: 14px; }
.glp-buy__cart form.cart {
  display: flex; gap: 10px; align-items: stretch; flex-wrap: wrap;
  margin: 0 0 10px;
}
.glp-buy__cart .woocommerce-variation-add-to-cart { display: flex; gap: 10px; align-items: stretch; flex-wrap: wrap; width: 100%; }

/* Variations (variable products) */
.glp-buy__cart .variations { width: 100%; border-collapse: collapse; margin: 0 0 4px; }
.glp-buy__cart .variations td, .glp-buy__cart .variations th { padding: 6px 0; border: 0; background: none; text-align: left; }
.glp-buy__cart .variations label { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .6px; }
.glp-buy__cart .variations select {
  width: 100%; height: 44px; padding: 0 14px;
  border: 1.5px solid var(--glp-grey-200); border-radius: 10px;
  background-color: #fff; font-size: 14px;
}
.glp-buy__cart .reset_variations { font-size: 11.5px; color: var(--glp-grey-500); }
.glp-buy__cart .woocommerce-variation-price { display: none; }

/* Quantity — ONE pill (1.5px border, r12, h58) with - / value / + inside */
.glp-pdp .glp-buy__cart .quantity {
  display: inline-flex !important;
  align-items: center;
  border: 1.5px solid var(--glp-grey-200);
  border-radius: 12px;
  overflow: hidden;
  height: 58px;
  background: #fff;
  flex-shrink: 0;
  margin: 0 !important; padding: 0 !important;
  float: none !important;
}
.glp-pdp .glp-buy__cart .quantity label { display: none !important; }
.glp-pdp .glp-buy__cart .quantity .ast-qty-placeholder,
.glp-pdp .glp-buy__cart .quantity a.minus,
.glp-pdp .glp-buy__cart .quantity a.plus {
  width: 44px; height: 100%;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 18px; font-weight: 600; line-height: 1;
  color: var(--glp-grey-500) !important;
  background: transparent !important;
  border: 0 !important; border-radius: 0 !important;
  text-decoration: none !important;
  user-select: none; cursor: pointer;
  margin: 0 !important; padding: 0 !important;
}
.glp-pdp .glp-buy__cart .quantity a.plus { color: var(--glp-charcoal) !important; }
.glp-pdp .glp-buy__cart .quantity :is(a.minus, a.plus):hover { background: var(--glp-grey-50) !important; }
.glp-pdp .glp-buy__cart .quantity input.qty,
.glp-pdp .glp-buy__cart .quantity input[type="number"] {
  appearance: textfield !important;
  -moz-appearance: textfield !important;
  width: 34px !important; height: 100% !important;
  min-height: 0 !important; min-width: 0 !important;
  border: 0 !important; border-radius: 0 !important;
  background: transparent !important;
  text-align: center !important; text-indent: 0 !important;
  font-size: 16px !important; font-weight: 700 !important;
  color: var(--glp-charcoal) !important;
  padding: 0 !important; margin: 0 !important;
  box-shadow: none !important; outline: 0 !important;
}
.glp-pdp .glp-buy__cart .quantity input::-webkit-outer-spin-button,
.glp-pdp .glp-buy__cart .quantity input::-webkit-inner-spin-button { -webkit-appearance: none !important; margin: 0 !important; }

/* ATC — orange hero (design: h58, r12, fs16/800, glow shadow) */
.glp-buy__cart .single-cart-wrap { flex: 1; min-width: 180px; display: flex; }
.glp-pdp .glp-buy__cart .single_add_to_cart_button {
  flex: 1; width: 100% !important;
  height: 58px !important; min-height: 58px !important;
  background: var(--glp-orange) !important;
  color: #fff !important;
  border: 0 !important; border-radius: 12px !important;
  font-size: 16px !important; font-weight: 800 !important;
  letter-spacing: 0 !important; text-transform: none !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  gap: 10px !important;
  padding: 0 22px !important;
  box-shadow: var(--glp-cta-shadow) !important;
  cursor: pointer;
  white-space: nowrap;
}
/* Keep the button ORANGE through focus/click/added — without these, Astra's dark
   button:focus style takes over after a click and the button goes near-black. */
.glp-pdp .glp-buy__cart .single_add_to_cart_button:focus,
.glp-pdp .glp-buy__cart .single_add_to_cart_button:active,
.glp-pdp .glp-buy__cart .single_add_to_cart_button.loading,
.glp-pdp .glp-buy__cart .single_add_to_cart_button.added {
  background: var(--glp-orange) !important;
  color: #fff !important;
}
.glp-pdp .glp-buy__cart .single_add_to_cart_button:hover { background: var(--glp-orange-dark) !important; }

/* No quantity stepper on the PDP — a single full-width "Legg i handlekurv" CTA.
 * The hidden <input name="quantity" value="1"> still submits, so ATC adds 1
 * (quantity is adjustable in the cart). Kits keep their own configurator UI. */
.glp-pdp .glp-buy__cart:not(.glp-buy__cart--kit) form.cart .quantity { display: none !important; }

/* Secondary row: C&C (outline charcoal) + heart square */
.glp-buy__row { display: flex; gap: 10px; }
.glp-buy__cc {
  flex: 1; height: 52px;
  background: #fff;
  border: 1.5px solid var(--glp-charcoal);
  border-radius: 12px;
  font-size: 14px; font-weight: 700;
  color: var(--glp-charcoal) !important;
  display: flex; align-items: center; justify-content: center; gap: 9px;
  cursor: pointer; padding: 0 16px;
}
/* Subtle hover — NOT the full charcoal fill (read as a "dark pill") */
.glp-buy__cc:hover {
  background: var(--glp-grey-50) !important;
}
.glp-buy__cc:hover svg { stroke: currentColor; }
.glp-buy__wish {
  width: 52px; height: 52px; flex-shrink: 0;
  background: #fff;
  border: 1.5px solid var(--glp-grey-200);
  border-radius: 12px;
  color: var(--glp-grey-500);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; padding: 0;
}
.glp-buy__wish:hover { color: var(--glp-orange-dark); border-color: var(--glp-orange); }
.glp-buy__wish.is-active, .glp-buy__wish[aria-pressed="true"] { background: var(--glp-orange); color: #fff; border-color: var(--glp-orange); box-shadow: 0 4px 12px rgba(245,130,32,.22); }
.glp-buy__wish.is-active svg, .glp-buy__wish[aria-pressed="true"] svg { fill: currentColor !important; stroke: currentColor !important; }

/* Wishlist confirmation: a compact, tactile pop instead of TI's stock effect. */
.glp-pdp [data-action="wishlist"].is-confirmed { animation: glp-wishlist-pop .36s cubic-bezier(.2,.9,.25,1.25); }
@keyframes glp-wishlist-pop { 0% { transform: scale(.88); } 55% { transform: scale(1.11); } 100% { transform: scale(1); } }
.glp-wishlist-toast { position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); z-index: 10050; max-width: calc(100vw - 32px); padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: var(--glp-charcoal); color: #fff; box-shadow: 0 12px 28px rgba(0,0,0,.22); font-size: 13px; font-weight: 700; opacity: 0; pointer-events: none; transform: translateY(10px); transition: opacity .18s ease, transform .18s ease; }
.glp-wishlist-toast.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) { .glp-pdp [data-action="wishlist"].is-confirmed { animation: none; } .glp-wishlist-toast { transition: none; } }

/* Pickup-only */
.glp-buy__pickup-banner {
  display: flex; align-items: center; gap: 12px;
  padding: 14px 15px;
  background: #fffaf5;
  border: 1px solid #f0dfd0;
  border-left: 4px solid var(--glp-orange);
  border-radius: 12px;
  margin-bottom: 10px;
  color: var(--glp-charcoal);
}
.glp-buy__pickup-icon {
  width: 38px; height: 38px; flex: 0 0 38px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%; background: rgba(245,130,32,.12); color: var(--glp-orange-dark);
}
.glp-buy__pickup-copy { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.glp-buy__pickup-copy strong { font-size: 14px; line-height: 1.25; color: var(--glp-charcoal); }
.glp-buy__pickup-copy > span { font-size: 12.5px; line-height: 1.4; color: var(--glp-grey-600); }
.glp-buy__cc-primary {
  flex: 1; height: 58px;
  background: var(--glp-orange);
  color: #fff;
  border: 0; border-radius: 12px;
  font-size: 16px; font-weight: 800;
  display: flex; align-items: center; justify-content: center; gap: 10px;
  box-shadow: var(--glp-cta-shadow);
  cursor: pointer; padding: 0 22px;
}
.glp-buy__cc-primary:hover { background: var(--glp-orange-dark); }
.is-pickup-only .glp-buy__wish { height: 58px; width: 58px; }

/* Pay row */
.glp-buy__payments { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 18px; }
/* real payment / delivery logos — !important + max-width beat the theme/Woo
 * single-product img rules that otherwise blow them up to full width */
.glp-buy__payments .glp-pay-logo { height: 24px !important; width: auto !important; max-width: 120px !important; display: block; border-radius: 5px; }
.glp-buy__payments .glp-pay-chip { display: inline-flex; align-items: center; justify-content: center; height: 24px; padding: 0 10px; border-radius: 5px; }
.glp-buy__payments .glp-pay-chip--bring { background: #7bc144; }
.glp-buy__payments .glp-pay-chip--bring img { height: 11px !important; width: auto !important; max-width: 70px !important; display: block; }

/* Stock view */
.glp-stock {
  border: 1px solid var(--glp-grey-200);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  margin-bottom: 18px;
}
.glp-stock__online { display: flex; align-items: center; gap: 12px; padding: 14px 16px; }
.glp-stock__bubble {
  width: 38px; height: 38px; border-radius: 50%;
  background: rgba(45,138,78,.1); color: var(--glp-success);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.glp-stock__online[data-level="out"] .glp-stock__bubble { background: var(--glp-grey-50); color: var(--glp-grey-400); }
.glp-stock__lines { display: flex; flex-direction: column; }
.glp-stock__line1 { font-size: 13px; font-weight: 700; color: var(--glp-success); }
.glp-stock__online[data-level="out"] .glp-stock__line1 { color: var(--glp-grey-700); }
.glp-stock__line2 { font-size: 11.5px; color: var(--glp-grey-500); }
.glp-stock__toggle {
  width: 100%;
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 16px;
  border: 0; border-top: 1px solid var(--glp-grey-100);
  background: #fff; cursor: pointer;
  font-size: 12.5px; font-weight: 600; color: var(--glp-charcoal);
}
.glp-stock__toggle-label { display: inline-flex; align-items: center; gap: 8px; }
.glp-stock__caret { transition: transform .2s; }
.glp-stock__toggle[aria-expanded="true"] .glp-stock__caret { transform: rotate(180deg); }
.glp-stock__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--glp-grey-100); }
.glp-stock__list[hidden] { display: none; }
.glp-stock__store { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0 12px; padding: 11px 16px; }
.glp-stock__store + .glp-stock__store { border-top: 1px solid var(--glp-grey-50); }
.glp-stock__store-meta { display: flex; flex-direction: column; }
.glp-stock__store-name { font-size: 12.5px; font-weight: 600; }
.glp-stock__store-sub { font-size: 10.5px; color: var(--glp-grey-500); }
.glp-stock__store-count { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 600; color: var(--glp-charcoal); }
.glp-stock__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--glp-grey-300); }
.glp-stock__store[data-level="high"] .glp-stock__dot { background: var(--glp-success); }
.glp-stock__store[data-level="low"]  .glp-stock__dot { background: var(--glp-warning); }
.glp-stock__store[data-level="out"]  .glp-stock__store-count { color: var(--glp-grey-400); }

/* One-time stock alerts */
.glp-stock-alert { margin-top: 10px; }
.glp-stock-alert__trigger {
  width: 100%; min-height: 52px; padding: 10px 16px;
  display: flex; align-items: center; justify-content: center; gap: 8px;
  border: 1.5px solid var(--glp-grey-200); border-radius: 12px;
  background: #fff; color: var(--glp-charcoal);
  font: inherit; font-size: 14px; font-weight: 700; line-height: 1.3;
  cursor: pointer;
}
.glp-pdp .glp-stock-alert__trigger:hover,
.glp-pdp .glp-stock-alert__trigger:focus,
.glp-pdp .glp-stock-alert__trigger:focus-visible {
  border-color: var(--glp-grey-300);
  background: var(--glp-grey-50);
  color: var(--glp-charcoal) !important;
}
.glp-pdp .glp-stock-alert__trigger:hover span,
.glp-pdp .glp-stock-alert__trigger:focus span,
.glp-pdp .glp-stock-alert__trigger:hover svg,
.glp-pdp .glp-stock-alert__trigger:focus svg { color: var(--glp-charcoal) !important; stroke: currentColor; }
.glp-stock-alert__trigger svg { flex: 0 0 auto; }
.glp-stock-alert__dialog {
  width: min(430px, calc(100vw - 32px)); max-width: 430px; padding: 0;
  border: 0; border-radius: 8px; background: #fff; color: var(--glp-charcoal);
  box-shadow: 0 18px 55px rgba(0,0,0,.24); overflow: hidden;
  font-family: var(--glp-font, inherit);
}
.glp-stock-alert__dialog::backdrop { background: rgba(20,20,20,.56); }
.glp-stock-alert__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 24px 24px 18px; border-bottom: 1px solid var(--glp-grey-100); }
.glp-stock-alert__head h2 { margin: 0 0 5px; color: var(--glp-charcoal); font-family: var(--glp-font, inherit); font-size: 22px; font-weight: 800; line-height: 1.2; text-transform: none; }
.glp-stock-alert__head p { margin: 0; color: var(--glp-grey-600); font-size: 13.5px; line-height: 1.45; }
.glp-stock-alert__close { width: 34px; height: 34px; flex: 0 0 34px; padding: 0; border: 0; border-radius: 50%; background: var(--glp-grey-50); color: var(--glp-charcoal); font: 300 27px/31px Arial,sans-serif; cursor: pointer; }
.glp-stock-alert__close:hover { background: var(--glp-grey-100); }
.glp-stock-alert__form {
  display: block; margin: 0; padding: 22px 24px 24px; background: #fff;
}
.glp-stock-alert__form[hidden] { display: none !important; }
.glp-stock-alert__label { display: flex; flex-direction: column; gap: 7px; min-width: 0; margin: 0; }
.glp-stock-alert__label > span { font-size: 13px; font-weight: 700; color: var(--glp-charcoal); }
.glp-stock-alert__label input[type="email"] {
  width: 100%; height: 48px; min-height: 48px; margin: 0; padding: 0 13px;
  border: 1px solid var(--glp-grey-300); border-radius: 5px; background: #fff;
  color: var(--glp-charcoal); font-size: 15px;
}
.glp-stock-alert__label input[type="email"]:focus { border-color: var(--glp-orange); outline: 2px solid rgba(245,130,32,.16); outline-offset: 1px; }
.glp-stock-alert__locations { margin: 20px 0 0; padding: 0; border: 0; }
.glp-stock-alert__locations legend { margin: 0 0 4px; padding: 0; color: var(--glp-charcoal); font-size: 13px; font-weight: 700; }
.glp-stock-alert__location { position: relative; display: flex; align-items: center; gap: 10px; min-height: 43px; margin: 0; padding: 9px 0; border-bottom: 1px solid var(--glp-grey-100); color: var(--glp-charcoal); font-size: 14px; cursor: pointer; }
.glp-stock-alert__location:last-child { border-bottom: 0; }
.glp-stock-alert__location input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.glp-stock-alert__check { position: relative; width: 18px; height: 18px; flex: 0 0 18px; border: 1.5px solid var(--glp-grey-400); border-radius: 3px; background: #fff; }
.glp-stock-alert__location input:checked + .glp-stock-alert__check { border-color: var(--glp-orange); background: var(--glp-orange); }
.glp-stock-alert__location input:checked + .glp-stock-alert__check::after { content: ''; position: absolute; left: 5px; top: 2px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.glp-stock-alert__location input:focus-visible + .glp-stock-alert__check { outline: 2px solid rgba(245,130,32,.28); outline-offset: 2px; }
.glp-stock-alert__submit {
  width: 100%; height: 48px; margin-top: 12px; padding: 0 18px;
  border: 0; border-radius: 6px; background: var(--glp-orange); color: #fff;
  font: inherit; font-size: 15px; font-weight: 800; cursor: pointer;
}
.glp-stock-alert__submit:hover { background: var(--glp-orange-dark); }
.glp-stock-alert__submit:disabled { opacity: .65; cursor: wait; }
.glp-stock-alert__privacy { margin: 12px 0 0; font-size: 11px; line-height: 1.45; color: var(--glp-grey-500); }
.glp-stock-alert__privacy a { color: inherit; text-decoration: underline; }
.glp-stock-alert__hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.glp-stock-alert__success { padding: 28px 24px 24px; text-align: center; }
.glp-stock-alert__success[hidden], .glp-stock-alert__error[hidden] { display: none !important; }
.glp-stock-alert__success-icon { width: 42px; height: 42px; margin: 0 auto 12px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(45,138,78,.11); color: var(--glp-success); font-size: 20px; font-weight: 800; }
.glp-stock-alert__message { margin: 0; color: var(--glp-charcoal); font-size: 14px; font-weight: 650; line-height: 1.5; }
.glp-stock-alert__done { width: 100%; height: 44px; margin-top: 20px; border: 1px solid var(--glp-grey-300); border-radius: 6px; background: #fff; color: var(--glp-charcoal); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.glp-stock-alert__error { margin: -10px 24px 22px; color: var(--glp-error); font-size: 12.5px; line-height: 1.4; }

.glp-stock__store > .glp-stock-alert { display: none; flex: 0 0 100%; margin-top: 8px; }
.glp-stock__store.is-preferred > .glp-stock-alert { display: block; }
.glp-stock__store .glp-stock-alert__trigger { width: auto; min-height: 0; justify-content: flex-start; padding: 1px 0; border: 0; border-radius: 0; background: transparent; color: var(--glp-charcoal); font-size: 11.5px; font-weight: 650; text-decoration: underline; text-underline-offset: 3px; }
.glp-stock__store .glp-stock-alert__trigger:hover { background: transparent; color: var(--glp-orange-dark); }
.glp-stock__store .glp-stock-alert__trigger svg { width: 14px; height: 14px; }

.glp-buy__availability-state { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; padding: 14px; border: 1px solid var(--glp-grey-200); border-radius: 12px; background: var(--glp-grey-50); color: var(--glp-charcoal); }
.glp-buy__availability-icon { width: 38px; height: 38px; flex: 0 0 38px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--glp-grey-200); border-radius: 50%; background: #fff; color: var(--glp-grey-600); }
.glp-buy__availability-copy { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.glp-buy__availability-copy strong { font-size: 13.5px; line-height: 1.3; }
.glp-buy__availability-copy > span { color: var(--glp-grey-600); font-size: 12.5px; line-height: 1.4; }
.glp-buy__availability-state[data-state="discontinued"] { background: #f4f3f1; border-color: #dedbd6; }
.glp-buy__availability-state[data-state="discontinued"] .glp-buy__availability-icon { border-color: #d8d5d0; color: var(--glp-grey-700); }
.glp-buy__row--alert > .glp-stock-alert { flex: 1; min-width: 0; margin-top: 0; }

@media (max-width: 600px) {
  .glp-stock-alert__dialog { width: 100%; max-width: none; margin: auto 0 0; border-radius: 12px 12px 0 0; }
  .glp-stock-alert__head { padding: 22px 20px 17px; }
  .glp-stock-alert__form { padding: 20px 20px calc(22px + env(safe-area-inset-bottom)); }
  .glp-stock-alert__success { padding: 26px 20px calc(22px + env(safe-area-inset-bottom)); }
}

/* Downloads (inline, buy column) */
.glp-buy__downloads { margin-bottom: 18px; }
.glp-buy__downloads-label {
  font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .6px;
  margin-bottom: 9px;
}
.glp-dl-list { display: flex; flex-direction: column; gap: 8px; }
.glp-dl {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--glp-grey-200); border-radius: 10px;
  background: #fff; color: var(--glp-charcoal); text-decoration: none;
}
.glp-dl:hover { border-color: var(--glp-orange); }
.glp-dl__icon {
  width: 34px; height: 34px; border-radius: 8px;
  background: var(--glp-orange-subtle); color: var(--glp-orange-dark);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.glp-dl__meta { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.glp-dl__name { font-size: 12.5px; font-weight: 600; }
.glp-dl__sub { font-size: 11px; color: var(--glp-grey-500); }

/* Trust strip */
.glp-trust {
  display: flex; list-style: none; margin: 0; padding: 14px 0;
  border-top: 1px solid var(--glp-grey-200);
  border-bottom: 1px solid var(--glp-grey-200);
}
.glp-trust li {
  flex: 1; text-align: center;
  font-size: 11.5px; color: var(--glp-grey-700); font-weight: 500;
  display: flex; flex-direction: column; align-items: center; gap: 5px;
}
.glp-trust li + li { border-left: 1px solid var(--glp-grey-200); }
.glp-trust svg { color: var(--glp-orange); }

/* ═══ TABS ═══ */
.glp-tabs { padding-top: 30px; }
.glp-tabs__bar {
  display: flex; gap: 4px;
  border-bottom: 1px solid var(--glp-grey-200);
  margin-bottom: 26px;
}
.glp-tabs__tab {
  padding: 14px 22px;
  font-size: 13px; font-weight: 700; letter-spacing: .3px;
  color: var(--glp-grey-400);
  background: none; border: 0; cursor: pointer;
  position: relative;
}
.glp-tabs__tab.is-active { color: var(--glp-charcoal); }
.glp-tabs__tab.is-active::after {
  content: '';
  position: absolute; bottom: -1px; left: 16px; right: 16px;
  height: 2px; background: var(--glp-orange);
}
.glp-tabs__panel { display: none; max-width: 760px; margin-bottom: 28px; }
.glp-tabs__panel.is-active { display: block; }
.glp-tabs__mtitle { display: none; }

/* Specs table */
.glp-specs { width: 100%; border-collapse: collapse; font-size: 13px; margin: 0; }
.glp-specs tr:nth-child(even) { background: var(--glp-grey-50); }
.glp-specs th, .glp-specs td { padding: 11px 16px; text-align: left; border-bottom: 1px solid var(--glp-grey-100); }
.glp-specs th { font-weight: 600; width: 38%; color: var(--glp-charcoal); }
.glp-specs td { color: var(--glp-grey-700); font-weight: 400; }

/* Spec cards (mobile alternative) */
.glp-spec-cards { display: none; grid-template-columns: 1fr 1fr; gap: 8px; }
.glp-spec-card { padding: 10px 12px; border: 1px solid var(--glp-grey-100); border-radius: 9px; background: #fff; }
.glp-spec-card__k { font-size: 9.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; color: var(--glp-grey-400); }
.glp-spec-card__v { font-size: 12.5px; font-weight: 600; margin-top: 3px; }

/* Reviews */
.glp-reviews__summary {
  display: flex; align-items: center; gap: 20px;
  padding: 22px;
  background: #fff; border: 1px solid var(--glp-grey-100); border-radius: 12px;
  margin-bottom: 20px;
}
.glp-reviews__avg { text-align: center; padding-right: 20px; border-right: 1px solid var(--glp-grey-100); }
.glp-reviews__val { font-family: var(--glp-display); font-size: 50px; font-weight: 700; line-height: 1; }
.glp-reviews__stars { display: flex; gap: 2px; justify-content: center; margin-top: 4px; }
.glp-reviews__count { font-size: 11px; color: var(--glp-grey-500); margin-top: 4px; }
.glp-reviews__bars { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.glp-reviews__bar-row { display: flex; align-items: center; gap: 10px; font-size: 12px; }
.glp-reviews__bar-star { width: 12px; color: var(--glp-grey-500); }
.glp-reviews__bar-track { flex: 1; height: 8px; background: var(--glp-grey-100); border-radius: 4px; overflow: hidden; }
.glp-reviews__bar-fill { display: block; height: 100%; background: var(--glp-orange); }
.glp-reviews__bar-n { width: 28px; color: var(--glp-grey-500); text-align: right; }
.glp-reviews__comments #reviews { padding: 0; }

/* Downloads cards (tab) */
.glp-dl-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.glp-dl-card {
  display: flex; flex-direction: column; gap: 10px;
  padding: 16px;
  border: 1px solid var(--glp-grey-200); border-radius: 12px;
  background: #fff; color: var(--glp-charcoal); text-decoration: none;
}
.glp-dl-card:hover { border-color: var(--glp-orange); }
.glp-dl-card__head { display: flex; align-items: center; justify-content: space-between; }
.glp-dl-card__icon {
  width: 38px; height: 38px; border-radius: 9px;
  background: var(--glp-orange-subtle); color: var(--glp-orange-dark);
  display: flex; align-items: center; justify-content: center;
}
.glp-dl-card__type { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; color: var(--glp-orange-dark); }
.glp-dl-card__name { font-size: 13px; font-weight: 600; }

/* ═══ DISCOVERY ═══ */
.glp-pdp__discovery { padding: 20px 0 10px; display: flex; flex-direction: column; gap: 40px; }

/* FBT */
.glp-fbt { background: #fff; border: 1px solid var(--glp-grey-100); border-radius: 16px; padding: 28px; }
.glp-fbt h2 {
  font-family: var(--glp-display);
  font-size: 26px; font-weight: 700;
  letter-spacing: -.3px; text-transform: uppercase;
  margin: 0 0 18px;
}
.glp-fbt__row { display: flex; align-items: center; gap: 16px; }
.glp-fbt__products { display: flex; align-items: center; gap: 16px; flex: 1; min-width: 0; }
.glp-fbt__item { width: 190px; }
.glp-fbt__tile {
  display: block; aspect-ratio: 1;
  background: var(--glp-tile); border-radius: 12px;
  border: 1px solid var(--glp-grey-100);
  overflow: hidden;
}
.glp-fbt__tile.is-main { border: 2px solid var(--glp-orange); }
.glp-fbt__tile img { width: 100%; height: 100%; object-fit: contain; padding: 14px; mix-blend-mode: multiply; }
.glp-fbt__name { font-size: 13px; font-weight: 600; margin-top: 8px; line-height: 1.3; min-height: 34px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.glp-fbt__price { font-family: var(--glp-display); font-size: 19px; font-weight: 700; margin-top: 3px; }
.glp-fbt__check { display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: #555; margin-top: 5px; }
.glp-fbt__checkbox {
  width: 17px; height: 17px; border-radius: 4px;
  background: var(--glp-orange); color: #fff;
  display: inline-flex; align-items: center; justify-content: center;
}
.glp-fbt__plus { font-size: 26px; color: var(--glp-grey-300); font-weight: 300; }
.glp-fbt__total { border-left: 1px solid var(--glp-grey-100); padding-left: 24px; margin-left: 10px; min-width: 210px; }
.glp-fbt__total-label { font-size: 13px; color: var(--glp-grey-500); }
.glp-fbt__total-val { font-family: var(--glp-display); font-size: 34px; font-weight: 700; line-height: 1.1; }
.glp-fbt__cta {
  margin-top: 12px; width: 100%; height: 50px;
  background: var(--glp-orange); color: #fff;
  border: 0; border-radius: 999px;
  font-size: 14px; font-weight: 700;
  display: flex; align-items: center; justify-content: center; gap: 8px;
  cursor: pointer;
}
.glp-fbt__cta:hover { background: var(--glp-orange-dark); }
.glp-fbt__cta.is-done { background: var(--glp-success); }

/* Rails */
.glp-rail__head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 14px; }
.glp-rail__head h2 {
  font-family: var(--glp-display);
  font-size: 24px; font-weight: 700;
  letter-spacing: -.3px; text-transform: uppercase;
  margin: 0;
}
.glp-rail__all { font-size: 12.5px; color: var(--glp-orange-dark); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.glp-rail__scroller { position: relative; }
.glp-rail__scroller::after {
  content: '';
  position: absolute; top: 0; right: 0; bottom: 16px; width: 70px;
  pointer-events: none; opacity: 0; transition: opacity .2s;
  background: linear-gradient(to left, #fff, rgba(255,255,255,0));
  z-index: 1;
}
.glp-rail__scroller[data-can-next="1"]::after { opacity: 1; }
.glp-rail__track {
  display: flex; gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding: 0 0 16px; margin: 0; list-style: none;
  scroll-behavior: smooth;
}
.glp-rail__track::-webkit-scrollbar { display: none; }

/* Desktop scroll arrows — circular, appear when scrollable */
.glp-rail__nav {
  position: absolute; top: calc(50% - 8px); transform: translateY(-50%);
  z-index: 3;
  width: 44px; height: 44px; border-radius: 50%;
  background: #fff; border: 1px solid var(--glp-grey-100);
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  display: flex; align-items: center; justify-content: center;
  color: var(--glp-charcoal) !important; cursor: pointer;
  padding: 0 !important;
  transition: opacity .15s, background .15s, transform .1s;
}
/* The chevron itself — beats any global svg/button rules that blanked it */
.glp-rail__nav svg {
  display: block !important;
  width: 20px !important; height: 20px !important;
  stroke: currentColor !important;
  fill: none !important;
  opacity: 1 !important;
}
.glp-rail__nav svg * { stroke: currentColor !important; fill: none !important; }
.glp-rail__nav:hover { background: var(--glp-charcoal); color: #fff !important; border-color: var(--glp-charcoal); }
.glp-rail__nav:active { transform: translateY(-50%) scale(.94); }
.glp-rail__nav[hidden] { display: none; }
.glp-rail__nav--prev { left: -10px; }
.glp-rail__nav--next { right: -10px; }

/* Card (design RelCard) */
.glp-card {
  width: 200px; flex: 0 0 200px;
  scroll-snap-align: start;
  background: #fff;
  border: 1px solid var(--glp-grey-100);
  border-radius: 12px;
  overflow: hidden;
  display: flex; flex-direction: column;
}
.glp-card__media { display: block; aspect-ratio: 1; position: relative; background: var(--glp-tile); }
.glp-card__media img { width: 100%; height: 100%; object-fit: contain; padding: 12px; margin: 0 !important; mix-blend-mode: multiply; }
.glp-card__badge {
  position: absolute; top: 8px; left: 8px;
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--glp-orange); color: #fff;
  font-size: 10.5px; font-weight: 800; line-height: 1;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 3px 8px rgba(245,130,32,.28);
}
.glp-card__body { padding: 10px 12px 12px; display: flex; flex-direction: column; flex: 1; }
.glp-card__brand { font-size: 10px; text-transform: uppercase; letter-spacing: .4px; color: var(--glp-grey-500); font-weight: 600; }
.glp-card__title {
  font-size: 12.5px; font-weight: 600; line-height: 1.3;
  min-height: 32px; margin-top: 2px;
  color: var(--glp-charcoal); text-decoration: none;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.glp-card__status { font-size: 10.5px; font-weight: 600; margin-top: 4px; }
.glp-card__status[data-k="utgatt"]  { color: var(--glp-error); }
.glp-card__status[data-k="pickup"]  { color: var(--glp-orange-dark); }
.glp-card__status[data-k="soldout"] { color: var(--glp-grey-500); }
.glp-card__row { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 8px; }
.glp-card__prices { display: flex; align-items: baseline; gap: 6px; }
.glp-card__price { font-family: var(--glp-display); font-size: 18px; font-weight: 700; color: var(--glp-charcoal); }
.glp-card__price.is-sale { color: var(--glp-error); }
.glp-card__regular { font-size: 11px; color: var(--glp-grey-400); }
.glp-card__plus {
  width: 30px; height: 30px; border-radius: 50%;
  background: var(--glp-orange) !important; color: #fff !important;
  display: flex !important; align-items: center; justify-content: center;
  text-decoration: none; flex-shrink: 0;
  padding: 0 !important; border: 0 !important;
  font-size: 0 !important; line-height: 0 !important;
}
.glp-card__plus:hover { background: var(--glp-orange-dark) !important; }
.glp-card__plus.loading { opacity: .5; }
.glp-card__plus.added { background: var(--glp-success) !important; }
.glp-card__plus::after { display: none !important; }

/* ═══ STICKY BUY BAR (mobile only) ═══ */
.glp-stickybar { display: none; }

/* ═══════════ MOBILE (M1) — < 900px ═══════════ */
@media (max-width: 900px) {
  .glp-pdp { padding: 0 0 90px; max-width: none; overflow-x: clip; }

  /* M1 has no breadcrumbs */
  .glp-pdp__breadcrumbs { display: none; }

  /* ONE uniform 14px gutter on the container — image, buy, stock, desc, trust
     all line up to the same left/right edge. No per-child margins. */
  .glp-pdp__main {
    display: flex; flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 14px 14px 0;
  }
  .glp-pdp__buyarea, .glp-buy { display: contents; }

  /* Bulletproof: every section spans the full container width — never rely on
     flex-stretch alone (desktop grid/margin rules must not leak through). */
  .glp-pdp__main > *,
  .glp-pdp__main .glp-buy > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
  }

  .glp-gallery        { order: 1; }
  .glp-buy__head      { order: 2; padding: 0; }
  .glp-buy__cartwrap  { order: 3; padding: 0; margin: 0; }
  .glp-buy__payments  { order: 4; padding: 0; margin: 0; }
  .glp-stock          { order: 5; margin: 0; }
  .glp-desc           { order: 6; margin: 0; padding: 18px; border-radius: 12px; }
  .glp-buy__downloads { order: 7; padding: 0; margin: 0; }
  .glp-trust          { order: 8; margin: 0; }

  /* Hero image — inset card matching the gutter (consistent with all sections) */
  .glp-gallery { display: flex; flex-direction: column; gap: 10px; }
  .glp-gallery__main {
    order: 1;
    border-radius: 14px;
    border: 1px solid var(--glp-grey-100);
  }
  .glp-gallery__img { padding: 24px; }
  /* Discount badge stays a circle on mobile (just slightly smaller) */
  .glp-gallery__badge {
    top: 12px; left: 12px;
    width: 46px; height: 46px;
    border-radius: 50%;
    font-size: 12px;
    padding: 0;
  }
  .glp-gallery__btn--share, .glp-gallery__btn--zoom { display: none !important; }
  .glp-gallery__btn--heart { display: flex !important; }
  /* Thumbnails BELOW the main image on mobile (horizontal strip) */
  .glp-gallery__thumbs {
    order: 2;
    flex-direction: row; overflow-x: auto;
    scrollbar-width: none; padding: 0;
  }
  .glp-gallery__thumbs::-webkit-scrollbar { display: none; }
  .glp-gallery__thumb, .glp-gallery__more { width: 64px; height: 64px; flex-shrink: 0; }

  .glp-buy__title { font-size: 22px; letter-spacing: -.2px; margin-bottom: 10px; }
  .glp-buy__price { font-size: 36px; }

  /* M1 buy block: qty+ATC then C&C+heart */
  .glp-pdp .glp-buy__cart .quantity { height: 52px; }
  .glp-pdp .glp-buy__cart .single_add_to_cart_button { height: 56px !important; min-height: 56px !important; }
  .glp-buy__cc { height: 48px; font-size: 13.5px; }
  .glp-buy__wish { width: 48px; height: 48px; }

  /* Tabs → stacked sections, specs as 2-col cards */
  .glp-tabs { padding: 4px 14px 0; }
  .glp-tabs__bar { display: none; }
  .glp-tabs__panel { display: block; max-width: none; margin-bottom: 20px; }
  .glp-tabs__mtitle {
    display: block;
    font-family: var(--glp-display);
    font-size: 18px; font-weight: 700;
    text-transform: uppercase; letter-spacing: -.2px;
    margin: 0 0 10px;
  }
  /* Specs stay as a clean table on mobile (no boxes) */
  .glp-specs { display: table; width: 100%; }
  .glp-specs th { width: 42%; }
  .glp-spec-cards { display: none; }
  .glp-reviews__summary { flex-direction: column; align-items: stretch; gap: 14px; }
  .glp-reviews__avg { border-right: 0; padding-right: 0; border-bottom: 1px solid var(--glp-grey-100); padding-bottom: 14px; }
  .glp-dl-cards { grid-template-columns: 1fr; }

  /* Discovery */
  .glp-pdp__discovery { padding: 0 0 10px; gap: 24px; }
  .glp-fbt { margin: 0 14px; padding: 16px; border-radius: 12px; }
  .glp-fbt__row { display: block; }
  .glp-fbt__products { display: grid; grid-template-columns: minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr); align-items: start; gap: 4px; }
  .glp-fbt__item { width: auto; min-width: 0; }
  .glp-fbt__tile img { padding: 7px; }
  .glp-fbt__name { min-height: 30px; margin-top: 6px; font-size: 10.5px; }
  .glp-fbt__price { font-size: 16px; }
  .glp-fbt__check { gap: 4px; font-size: 10px; }
  .glp-fbt__checkbox { width: 14px; height: 14px; }
  .glp-fbt__plus { align-self: start; padding-top: 34px; font-size: 19px; text-align: center; }
  .glp-fbt__total { border-left: 0; border-top: 1px solid var(--glp-grey-100); margin-left: 0; padding-left: 0; padding-top: 14px; width: 100%; }
  .glp-rail__head { padding: 0 14px; }
  .glp-rail__head h2 { font-size: 18px; }
  .glp-rail__track { padding: 0 14px 16px; }
  .glp-card { width: 150px; flex-basis: 150px; }
  .glp-card__title { font-size: 11.5px; min-height: 30px; }
  .glp-card__price { font-size: 15px; }
  .glp-card__plus { width: 26px; height: 26px; }
  /* Keep the right-edge fade on mobile (was hidden) — with arrows gone it is
     the main "this scrolls sideways" cue. Shown only when more is scrollable
     (initGlpRail sets data-can-next). */
  .glp-rail__scroller::after { width: 42px; bottom: 16px; }
  .glp-rail__nav { display: none !important; }

  /* Sticky bar (M1 MBuyBar) — appears after scrolling past main CTA */
  .glp-stickybar {
    display: flex; gap: 8px;
    position: fixed; bottom: 0; left: 0; right: 0; z-index: 99;
    background: #fff;
    border-top: 1px solid var(--glp-grey-100);
    padding: 10px 14px;
    box-shadow: 0 -4px 16px rgba(0,0,0,.06);
    transform: translateY(110%);
    transition: transform .25s ease-out;
  }
  .glp-stickybar.is-visible { transform: translateY(0); }
  .glp-stickybar__atc {
    flex: 1; height: 48px;
    background: var(--glp-orange); color: #fff;
    border: 0; border-radius: 999px;
    font-size: 14px; font-weight: 700;
    display: flex; align-items: center; justify-content: center; gap: 8px;
    cursor: pointer;
  }
  .glp-stickybar__atc:hover { background: var(--glp-orange-dark); }
  .glp-stickybar__atc svg { stroke: #fff !important; fill: none !important; flex-shrink: 0; }
  .glp-stickybar__txt { white-space: nowrap; }
  .glp-stickybar__price { font-weight: 800; }
  .glp-stickybar__price::before { content: "·"; margin: 0 4px 0 2px; opacity: .7; }
}

/* ═══ Strikkepakke-konfigurator (glp-kk-*) — cohesion inside new PDP ═══
   The WPCode snippet ships its own styles; these overrides align spacing,
   radii and CTA colours with the D1 buy box. */
.glp-pdp .glp-buy__cart--kit { display: block; }
.glp-pdp .glp-kk-section {
  background: #fff;
  border: 1px solid var(--glp-grey-100);
  border-radius: 12px;
  padding: 14px 16px;
  margin: 0 0 10px;
}
.glp-pdp .glp-kk-label {
  font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .6px;
  color: var(--glp-charcoal);
}
.glp-pdp .glp-kk-trigger,
.glp-pdp .glp-kk-size-buttons button {
  border: 1.5px solid var(--glp-grey-200) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--glp-charcoal) !important;
  font-weight: 600;
}
.glp-pdp .glp-kk-size-buttons button.selected,
.glp-pdp .glp-kk-size-buttons button[aria-pressed="true"] {
  border-color: var(--glp-orange) !important;
  background: var(--glp-orange-subtle) !important;
}
.glp-pdp .glp-kk-submit,
.glp-pdp .glp-buy__cart--kit .single_add_to_cart_button {
  width: 100% !important;
  min-height: 56px !important;
  background: var(--glp-orange) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 12px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  box-shadow: var(--glp-cta-shadow) !important;
  cursor: pointer;
}
.glp-pdp .glp-kk-submit:hover { background: var(--glp-orange-dark) !important; }

/* v1.4.3: retain tactile feedback on the configurator and center its CTA text. */
.glp-pdp .glp-kk-trigger,
.glp-pdp .glp-kk-submit { transition: transform .14s ease, box-shadow .14s ease, background-color .14s ease; }
.glp-pdp .glp-kk-trigger:active,
.glp-pdp .glp-kk-submit:active { transform: scale(.985); box-shadow: none !important; }
.glp-pdp .glp-kk-submit { display:flex !important; align-items:center; justify-content:center; text-align:center; }
.glp-pdp .glp-kk-price-row {
  font-family: var(--glp-display);
  font-weight: 700;
}
.glp-pdp .glp-kk-stock-dot { border-radius: 50%; }

/* Zoom dialog */
.glp-zoom-dialog {
  border: 0; border-radius: 16px; padding: 0;
  max-width: min(90vw, 900px);
  box-shadow: 0 24px 60px rgba(0,0,0,.3);
}
.glp-zoom-dialog::backdrop { background: rgba(0,0,0,.5); }
.glp-zoom-dialog img { display: block; width: 100%; height: auto; }

@media (prefers-reduced-motion: reduce) {
  .glp-pdp *, .glp-stickybar { transition: none !important; }
}

/* Recommendation rails reuse the catalog card component, including the gallery
   carousel and per-store availability. Keep this scope local to PDP rails. */
.has-glp-pdp .glp-rail .glp-cat-card{width:220px;flex:0 0 220px;display:flex;flex-direction:column;scroll-snap-align:start;overflow:hidden;border:1px solid var(--glp-line);border-radius:10px;background:#fff;color:var(--glp-charcoal);font-family:var(--glp-body);list-style:none;}
.has-glp-pdp .glp-rail .glp-cat-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.10);transform:translateY(-2px);}
.has-glp-pdp .glp-rail .glp-cat-card__media{position:relative;aspect-ratio:1;background:var(--glp-tile);}
.has-glp-pdp .glp-rail .glp-cat-card__slides{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.has-glp-pdp .glp-rail .glp-cat-card__slides::-webkit-scrollbar{display:none;}
.has-glp-pdp .glp-rail .glp-cat-card__slide{width:100%;height:100%;flex:0 0 100%;display:block;scroll-snap-align:center;}
.has-glp-pdp .glp-rail .glp-cat-card__img{display:block;width:100%!important;height:100%!important;padding:8px;object-fit:contain;mix-blend-mode:multiply;}
.has-glp-pdp .glp-rail .glp-cat-card__heart{position:absolute;top:10px;right:10px;z-index:4;width:34px;height:34px;margin:0;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 1px 4px rgba(0,0,0,.12);color:#5a5a5a;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.has-glp-pdp .glp-rail .glp-cat-card__heart svg{width:18px;height:18px;fill:none!important;stroke:currentColor!important;stroke-width:1.8;}
.has-glp-pdp .glp-rail .glp-cat-card__heart.is-active{color:var(--glp-orange);}
.has-glp-pdp .glp-rail .glp-cat-card__heart.is-active svg{fill:currentColor!important;}
.has-glp-pdp .glp-rail .glp-cat-card__sticker{position:absolute;top:10px;left:10px;z-index:3;width:46px;height:46px;border-radius:50%;background:var(--glp-orange);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(245,130,32,.30);transform:rotate(-8deg);}
.has-glp-pdp .glp-rail .glp-cat-card__sticker-spar{font-size:7px;font-weight:700;line-height:1;}.has-glp-pdp .glp-rail .glp-cat-card__sticker-pct{font-family:var(--glp-display);font-size:17px;font-weight:700;line-height:1;}
.has-glp-pdp .glp-rail .glp-cat-card__tag{position:absolute;top:10px;left:50%;z-index:3;display:flex;flex-direction:column;align-items:center;transform:translateX(-50%) rotate(-2deg);pointer-events:none;}.has-glp-pdp .glp-rail .glp-cat-card__tag span{font-family:var(--glp-hand);font-size:20px;font-weight:700;line-height:.9;text-shadow:0 1px 2px rgba(255,255,255,.85);}
.has-glp-pdp .glp-rail .glp-cat-card__imgdots{position:absolute;bottom:8px;left:50%;z-index:3;display:flex;gap:5px;transform:translateX(-50%);pointer-events:none;}.has-glp-pdp .glp-rail .glp-cat-card__imgdots span{width:6px;height:6px;border-radius:50%;background:rgba(0,0,0,.22);box-shadow:0 0 0 1px rgba(255,255,255,.4);}.has-glp-pdp .glp-rail .glp-cat-card__imgdots .is-active{width:16px;border-radius:3px;background:var(--glp-orange);}
.has-glp-pdp .glp-rail .glp-cat-card__arrow{position:absolute;top:50%;z-index:4;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--glp-charcoal);box-shadow:0 2px 8px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(-50%);transition:opacity .15s;}.has-glp-pdp .glp-rail .glp-cat-card__arrow--prev{left:8px;}.has-glp-pdp .glp-rail .glp-cat-card__arrow--next{right:8px;}.has-glp-pdp .glp-rail .glp-cat-card__arrow svg{width:15px;height:15px;}.has-glp-pdp .glp-rail .glp-cat-card:hover .glp-cat-card__arrow{opacity:1;}
.has-glp-pdp .glp-rail .glp-cat-card__overlay{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:25px 10px 10px;background:linear-gradient(transparent,rgba(0,0,0,.52));opacity:0;transition:opacity .18s;}.has-glp-pdp .glp-rail .glp-cat-card:hover .glp-cat-card__overlay{opacity:1;}.has-glp-pdp .glp-rail .glp-cat-card__quick{padding:8px 12px;border:0;border-radius:6px;background:#fff;color:var(--glp-charcoal);font-size:12px;font-weight:700;cursor:pointer;}
.has-glp-pdp .glp-rail .glp-cat-card__ti{position:absolute;width:0;height:0;overflow:hidden;}
.has-glp-pdp .glp-rail .glp-cat-card__body{display:flex;min-height:174px;flex:1;flex-direction:column;gap:4px;padding:12px;}.has-glp-pdp .glp-rail .glp-cat-card__brand{color:var(--glp-grey-400);font-size:9.5px;font-weight:600;letter-spacing:.55px;text-transform:uppercase;}.has-glp-pdp .glp-rail .glp-cat-card__title{display:-webkit-box;min-height:2.65em;overflow:hidden;color:var(--glp-charcoal);font-size:12.5px;font-weight:600;line-height:1.32;text-decoration:none;-webkit-box-orient:vertical;-webkit-line-clamp:2;}.has-glp-pdp .glp-rail .glp-cat-card__title:hover{color:var(--glp-orange-dark);}
.has-glp-pdp .glp-rail .glp-cat-card__stock{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:3px;}.has-glp-pdp .glp-rail .glp-cat-card__dot{display:inline-flex;align-items:flex-start;gap:6px;color:var(--glp-success);font-size:10.5px;font-weight:600;line-height:1.3;text-align:left;}.has-glp-pdp .glp-rail .glp-cat-card__dot>span:first-child{width:6px;height:6px;flex:none;margin-top:3px;border-radius:50%;background:currentColor;}.has-glp-pdp .glp-rail .glp-cat-card__dot--muted{color:var(--glp-orange);}.has-glp-pdp .glp-rail .glp-cat-card__dot--out{color:var(--glp-error);}.has-glp-pdp .glp-rail .glp-cat-card__storelink{padding:0;border:0;background:none;font:inherit;cursor:pointer;}.has-glp-pdp .glp-rail .glp-cat-card__storelink:hover .glp-cat-card__storetext{text-decoration:underline;text-decoration-color:var(--glp-orange);text-underline-offset:2px;}
.has-glp-pdp .glp-rail .glp-cat-card__buy{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px;}.has-glp-pdp .glp-rail .glp-cat-card__prices{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}.has-glp-pdp .glp-rail .glp-cat-card__was{color:var(--glp-grey-400);font-size:11px;text-decoration:line-through;}.has-glp-pdp .glp-rail .glp-cat-card__price{color:var(--glp-charcoal);font-family:var(--glp-display);font-size:21px;font-weight:700;line-height:1;}.has-glp-pdp .glp-rail .glp-cat-card__price.is-sale{color:var(--glp-error);}.has-glp-pdp .glp-rail .glp-cat-card__kr{color:var(--glp-grey-400);font-size:10.5px;}.has-glp-pdp .glp-rail .glp-cat-card__cart{position:relative;width:36px;height:36px;flex:none;overflow:hidden;border:0;border-radius:10px;background:var(--glp-orange);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(245,130,32,.25);}.has-glp-pdp .glp-rail .glp-cat-card__cart:hover{background:var(--glp-orange-dark);color:#fff;}.has-glp-pdp .glp-rail .glp-cat-card__cart svg{width:17px;height:17px;}.has-glp-pdp .glp-rail .glp-cat-card__cart.is-added{background:var(--glp-success);}
@media (max-width:900px){.has-glp-pdp .glp-rail .glp-cat-card{width:172px;flex-basis:172px;}.has-glp-pdp .glp-rail .glp-cat-card__body{min-height:158px;padding:10px;}.has-glp-pdp .glp-rail .glp-cat-card__title{font-size:11.5px;}.has-glp-pdp .glp-rail .glp-cat-card__price{font-size:18px;}.has-glp-pdp .glp-rail .glp-cat-card__heart{top:8px;right:8px;width:30px;height:30px;}.has-glp-pdp .glp-rail .glp-cat-card__arrow,.has-glp-pdp .glp-rail .glp-cat-card__overlay{display:none;}}

/* Recommendation cards go directly to product. Avoid a competing quick-view
 * action in every rail, on both mouse and touch devices. */
.has-glp-pdp .glp-rail .glp-cat-card__overlay,
.has-glp-pdp .glp-rail .glp-cat-card__quick{display:none !important;}

/* PDP rails render the same product-card HTML as the catalog. Keep the card
 * typography, spacing and controls identical; only the rail layout differs. */
.has-glp-pdp .glp-rail .glp-cat-card{border:1.5px solid var(--glp-line);font-family:var(--glp-body);}
.has-glp-pdp .glp-rail .glp-cat-card__heart{top:12px;right:12px;width:34px;height:34px;}
.has-glp-pdp .glp-rail .glp-cat-card__sticker{top:12px;left:12px;width:50px;height:50px;box-shadow:0 3px 10px rgba(245,130,32,.35);}
.has-glp-pdp .glp-rail .glp-cat-card__sticker-spar{font-weight:600;letter-spacing:.6px;opacity:.85;}
.has-glp-pdp .glp-rail .glp-cat-card__sticker-pct{font-family:'Antonio',sans-serif;font-size:18px;letter-spacing:-.3px;margin-top:-1px;}
.has-glp-pdp .glp-rail .glp-cat-card__tag{top:12px;}
.has-glp-pdp .glp-rail .glp-cat-card__tag span{font-family:'Caveat',cursive;font-size:21px;}
.has-glp-pdp .glp-rail .glp-cat-card__body{min-height:0;gap:4px;padding:14px 16px 16px;}
.has-glp-pdp .glp-rail .glp-cat-card__brand{font-size:10.5px;font-weight:500;letter-spacing:.6px;color:var(--glp-grey-350);}
.has-glp-pdp .glp-rail .glp-cat-card__title{min-height:2.7em;font-size:14px;font-weight:500;line-height:1.35;}
.has-glp-pdp .glp-rail .glp-cat-card__stock{gap:3px;margin-top:5px;}
.has-glp-pdp .glp-rail .glp-cat-card__dot{font-size:11.5px;font-weight:500;line-height:1.35;}
.has-glp-pdp .glp-rail .glp-cat-card__dot>span:first-child{margin-top:4px;}
.has-glp-pdp .glp-rail .glp-cat-card__buy{gap:8px;padding-top:10px;}
.has-glp-pdp .glp-rail .glp-cat-card__prices{gap:8px;margin-top:0;}
.has-glp-pdp .glp-rail .glp-cat-card__price{font-family:'Antonio',sans-serif;font-size:23px;letter-spacing:-.5px;}
.has-glp-pdp .glp-rail .glp-cat-card__was{font-size:13px;}
.has-glp-pdp .glp-rail .glp-cat-card__cart{width:38px;height:38px;border-radius:11px;box-shadow:0 3px 10px rgba(245,130,32,.3);}
.has-glp-pdp .glp-rail .glp-cat-card__cart svg{width:18px;height:18px;}

@media (max-width:921px){
  .has-glp-pdp .glp-rail .glp-cat-card{width:min(220px,calc((100vw - 36px)/2));flex-basis:min(220px,calc((100vw - 36px)/2));border-width:1px;}
  .has-glp-pdp .glp-rail .glp-cat-card__body{gap:3px;padding:10px 12px 12px;}
  .has-glp-pdp .glp-rail .glp-cat-card__title{min-height:2.6em;font-size:11.5px;}
  .has-glp-pdp .glp-rail .glp-cat-card__brand{font-size:9.5px;}
  .has-glp-pdp .glp-rail .glp-cat-card__was{font-size:11.5px;}
  .has-glp-pdp .glp-rail .glp-cat-card__cart{width:32px;height:32px;border-radius:8px;}
  .has-glp-pdp .glp-rail .glp-cat-card__cart svg{width:16px;height:16px;}
  .has-glp-pdp .glp-rail .glp-cat-card__heart{top:8px;right:8px;width:30px;height:30px;}
  .has-glp-pdp .glp-rail .glp-cat-card__heart svg{width:16px;height:16px;}
}

/* Mobile rail "peek": narrower cards so the next card is partly visible → obvious it scrolls sideways (iPhone 12 Pro etc.) */
@media (max-width:560px){
	.has-glp-pdp .glp-rail .glp-cat-card{width:min(42vw,168px)!important;flex-basis:min(42vw,168px)!important;}
}
