/** Shopify CDN: Minification failed

Line 444:24 Unexpected "("
Line 713:0 Expected "}" to go with "{"

**/
/* ============================================================
   section-pdp.css — Card Shellz PDP styles
   Oswald-based, tactical motif, 2px border-radius max
   ============================================================ */

/* ── Eyebrow line (VENDOR · TYPE) ── */
.csz-pdp__eyebrow {
  font-family: 'Oswald', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #E8650A;
  margin: 0 0 10px;
  line-height: 1.2;
}

/* Override Dawn's first-child margin-top: 0 reset */
.product__info-container > .csz-pdp__eyebrow:first-child,
.product__info-container .csz-pdp__eyebrow {
  margin-top: 20px !important;
}

.csz-pdp__eyebrow-sep {
  color: #CCC;
  letter-spacing: 1px;
}

/* ── Product title ── */
.csz-pdp__title,
.product__title {
  font-family: 'Oswald', sans-serif;
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1.1;
  color: #111;
  margin: 0 0 12px;
}

/* ── Native price block — Oswald override ── */
.product__info-container .price--large,
.product__info-container .price {
  font-family: 'Oswald', sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  line-height: 1.1;
}

/* Sale price (the actual selling price) */
.product__info-container .price-item--sale,
.product__info-container .price-item--regular {
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 2.8rem;
  color: #111;
}

/* Strikethrough compare-at price */
.product__info-container .price--on-sale .price-item--regular {
  font-family: 'Oswald', sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  color: #BBB;
  text-decoration: line-through;
  letter-spacing: 0.5px;
}

/* Sale badge */
.product__info-container .price__badge-sale {
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  background: #E8650A;
  color: white;
  border-radius: 2px;
  padding: 2px 7px;
  border: none;
  align-self: center;
}

/* ── Three-tier price block ── */
.csz-pdp__price-block {
  margin-bottom: 4px;
}

/* Public price — default: full size (guest view) */
.csz-pdp__public-price .price--large,
.csz-pdp__public-price .price {
  font-family: 'Oswald', sans-serif;
}

/* Public price when member price is showing — shrinks to secondary label */
.csz-pdp__public-price--with-member {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 4px;
}
.csz-pdp__public-price--with-member::before {
  content: 'LIST PRICE';
  font-family: 'Oswald', sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 1.5px;
  color: #AAA;
  text-transform: uppercase;
  white-space: nowrap;
  order: -1;
}
/* Hide the LIST PRICE ::before label when the sale span is injected */
.csz-pdp__public-price--with-member:has(.csz-sale-badge)::before {
  display: none;
}

.csz-sale-badge {
  display: inline-flex;
  align-items: center;
  background: #FED7AA;
  color: #7C2D12;
  font-family: 'Oswald', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 3px;
  flex-shrink: 0;
  align-self: center;
  white-space: nowrap;
  line-height: 1;
}
.csz-pdp__public-price--with-member .price--large,
.csz-pdp__public-price--with-member .price {
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  color: #AAA !important;
}
.csz-pdp__public-price--with-member .price-item--sale,
.csz-pdp__public-price--with-member .price-item--regular {
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  color: #AAA !important;
}
/* Keep compare_at strikethrough visible in the public sale price row */
.csz-pdp__public-price--with-member .price__compare { display: inline !important; }

/* Member price block */
.csz-pdp__member-price {
  margin-bottom: 4px;
}
.csz-pdp__member-price-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.csz-pdp__member-price-value {
  font-family: 'Oswald', sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  /* memberPriceColor from plan settings → big $ number */
  color: var(--csz-pdp-price-color, var(--csz-member-price-color, #111));
  letter-spacing: 0.5px;
  line-height: 1.1;
}
.csz-pdp__member-price-badge {
  display: inline-flex;
  align-items: center;
  align-self: center;
  /* Text fallback styling */
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: white;
  background: #E8650A;
  border-radius: 2px;
  padding: 2px 7px;
}
/* When badge contains an image (plan icon), remove the orange pill bg */
.csz-pdp__member-price-badge:has(img) {
  background: none;
  padding: 0;
}
.csz-pdp__plan-icon {
  height: 24px;
  width: auto;
  display: block;
  object-fit: contain;
}
.csz-pdp__member-price-label {
  font-family: 'Oswald', sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  /* uiAccentColor from plan settings → label text */
  color: var(--csz-pdp-accent-color, var(--csz-plan-accent, #888));
  margin-top: 2px;
}

/* Savings row — uses plan color via CSS var */
.csz-pdp__savings-row {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 5px 8px;
  background: color-mix(in srgb, var(--csz-pdp-accent-color, var(--csz-plan-accent, #E8650A)) 8%, white);
  border-left: 2px solid var(--csz-pdp-accent-color, var(--csz-plan-accent, #E8650A));
  border-radius: 0 2px 2px 0;
}
.csz-pdp__savings-amount {
  font-family: 'Oswald', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--csz-pdp-accent-color, var(--csz-plan-accent, #E8650A));
}
.csz-pdp__savings-plan {
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #AAA;
}

/* ── Membership.js injected price stack — Oswald override ── */
.cardshellz-pdp-price-stack {
  font-family: 'Oswald', sans-serif !important;
  align-items: baseline;
  gap: 10px;
  margin-top: 0;
}

.cardshellz-retail-strikethrough {
  font-family: 'Oswald', sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  color: #BBB !important;
  letter-spacing: 0.5px;
}

.cardshellz-member-price-value {
  font-family: 'Oswald', sans-serif !important;
  font-size: 2.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  line-height: 1.1;
}

/* Savings/upsell pill row — keep it compact */
.csz-upsell-row--pdp {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 0;
  flex: 0 0 auto;
}
/* ── Shellz earned badge ── */
/* ── Boost badge + tooltip ── */
.srh-boost {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  align-self: center;
}
.srh-boost__pill {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 2px;
  padding: 3px 7px;
  white-space: nowrap;
}
.srh-boost__pill--core {
  color: #7C2D12;
  background: #FED7AA;
}
.srh-boost__pill--club {
  color: #14532D;
  background: #BBF7D0;
}
.srh-boost__info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1.5px solid #CCC;
  background: white;
  cursor: pointer;
  color: #999;
  font-size: 9px;
  font-weight: 700;
  font-family: 'Oswald', sans-serif;
  flex-shrink: 0;
  align-self: center;
  transition: border-color 0.1s, color 0.1s;
}
.srh-boost__info:hover { border-color: #888; color: #555; }
.srh-boost--club .srh-boost__info:hover { border-color: #16A34A; color: #16A34A; }

.srh-boost__tooltip {
  display: none;
  position: absolute;
  bottom: calc(100% + 8px);
  right: 0;
  width: 220px;
  background: #111;
  border-radius: 2px;
  padding: 12px 14px;
  z-index: 200;
  box-shadow: 0 4px 16px rgba(0,0,0,0.25);
  pointer-events: none;
}
.srh-boost__tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  right: 12px;
  border: 6px solid transparent;
  border-top-color: #111;
}
.srh-boost__info:hover + .srh-boost__tooltip {
  display: block;
  pointer-events: auto;
}

.srh-tt__title {
  font-family: 'Oswald', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #E8650A;
  margin-bottom: 8px;
}
/* Tooltip table — ledger layout */
.srh-tt__table {
  display: table;
  width: 100%;
  border-collapse: collapse;
}
.srh-tt__row {
  display: table-row;
}
.srh-tt__plan,
.srh-tt__pts {
  display: table-cell;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 4px 0;
  vertical-align: middle;
  color: #666;
  font-size: 11px;
}
.srh-tt__plan {
  white-space: nowrap;
  padding-right: 20px;
  text-align: left;
}
.srh-tt__pts {
  font-weight: 700;
  color: #666;
  text-align: right;
  white-space: nowrap;
}
/* .club row — green */
.srh-tt__row--highlight .srh-tt__plan,
.srh-tt__row--highlight .srh-tt__pts {
  color: #4ADE80;
}
.srh-tt__row--divider .srh-tt__plan,
.srh-tt__row--divider .srh-tt__pts {
  border-top: 1px solid #333;
  padding: 0;
  height: 10px;
}
/* Bonus row — orange */
.srh-tt__row--bonus .srh-tt__plan--bonus,
.srh-tt__row--bonus .srh-tt__pts--bonus {
  color: #E8650A;
  padding-top: 2px;
}

/* Suppress membership.js YOU SAVE strip — savings shown in earn bar badge instead */
.csz-upsell-row--pdp:not(.csz-upsell-row--guest) {
  display: none !important;
}

/* Savings badge in earn bar */
.srh-saving-badge {
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: white;
  background: #E8650A;
  border-radius: 2px;
  padding: 2px 7px;
  flex-shrink: 0;
  align-self: center;
  white-space: nowrap;
}
.csz-shellz-earned--member .srh-saving-badge {
  background: #16A34A;
}

/* Club bar tint */
.csz-shellz-earned--member {
  border-color: rgba(74,222,128,0.2);
  border-left: 2px solid #4ADE80;
  background: rgba(27,58,31,0.03);
}
.csz-shellz-earned--member .csz-shellz-earned__text { /* color set by --vb-text CSS variable */ }
.csz-shellz-earned--member .csz-shellz-earned__value { /* color set by --vb-value CSS variable */ }

/* ── Shellz earned bar — 2-col: [SAVING] | [Earn N Shellz][BOOSTED i] ── */
   Color fallback chain (set per-plan in Theme & Design → Rewards Badges tab):
   --csz-rewards-bar-bg        → rewardsBarBg       → plan uiAccentColor (tinted) → #FAFAFA
   --csz-rewards-bar-text      → rewardsBarTextColor → plan uiAccentColor          → #555
   --csz-rewards-bar-value     → rewardsBarValueColor→ memberPriceColor            → #111
   All vars set by membership.js on :root after resolving plan config.
── */
.csz-shellz-earned {
  display: none;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 2px;
  background: var(--csz-rewards-bar-bg, #FAFAFA);
  margin-top: 10px;
  font-family: 'Oswald', sans-serif;
}
.csz-shellz-earned--visible {
  display: flex;
  align-items: center;
  gap: 0;
}

/* Left col: savings badge */
.srh-saving-badge {
  flex-shrink: 0;
  align-self: center;
}

/* Right col: earn text + boost badge grouped */
.csz-shellz-earned__right {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

.csz-shellz-earned__text {
  font-family: 'Oswald', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--csz-rewards-bar-text, #555);
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: nowrap;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
}
.csz-shellz-earned__pre,
.csz-shellz-earned__post {
  color: var(--csz-rewards-bar-text, #555);
  font-weight: 600;
}
.csz-shellz-earned__value {
  color: var(--csz-rewards-bar-value, #111);
  font-weight: 700;
}
.csz-shellz-earned__bonus {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--csz-rewards-bar-value, var(--csz-plan-accent, #E8650A));
  border: 1px solid currentColor;
  border-radius: 2px;
  padding: 2px 5px;
  flex-shrink: 0;
  align-self: center;
}

/* ── Variant picker ── */
.csz-variant-fieldset {
  border: none;
  padding: 0;
  margin: 0 0 16px;
}

.csz-variant-legend {
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #888;
  margin-bottom: 10px;
  display: block;
  float: left;
  width: 100%;
}

.csz-variant-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  clear: both;
}

/* Hide the radio input — scoped so Dawn's radio styles don't apply */
.csz-variant-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
}

/* Variant button — uses label NOT adjacent to product-form__input radio */
.csz-variant-btn {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-width: 90px;
  padding: 9px 14px;
  border: 1.5px solid #DDD;
  border-radius: 2px;
  background: white;
  cursor: pointer;
  transition: border-color 0.1s;
  user-select: none;
}

.csz-variant-btn:hover {
  border-color: #999;
}

.csz-variant-radio:checked + .csz-variant-btn {
  border-color: #111;
  border-width: 2px;
  background: white;
}

.csz-variant-btn__label {
  font-family: 'Oswald', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #333;
  line-height: 1.2;
  display: block;
}

.csz-variant-radio:checked + .csz-variant-btn .csz-variant-btn__label {
  color: #111;
}

.csz-variant-btn__price {
  font-family: 'Oswald', sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: #888;
  letter-spacing: 0.5px;
  display: block;
  margin-top: 2px;
}

.csz-variant-radio:checked + .csz-variant-btn .csz-variant-btn__price {
  color: #E8650A;
}

.csz-variant-btn__oos {
  font-family: 'Oswald', sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #BBB;
  display: block;
  margin-top: 2px;
  margin-top: 2px;
}

.csz-variant-btn--oos {
  opacity: 0.5;
  cursor: not-allowed;
}

/* ── Guarantee card + trust pills ── */
.csz-guarantee {
  margin-top: 16px;
}

.csz-guarantee__card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border: 1.5px solid #E5E5E5;
  border-radius: 2px;
  background: white;
}

.csz-guarantee__icon {
  color: #E8650A;
  flex-shrink: 0;
  align-self: center;
  margin-top: 1px;
}

.csz-guarantee__title {
  font-family: 'Oswald', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #111;
  margin-bottom: 4px;
}

.csz-guarantee__desc {
  font-family: system-ui, sans-serif;
  font-size: 12px;
  color: #666;
  line-height: 1.5;
}

.csz-trust-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
}

.csz-trust-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: 'Oswald', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #555;
  border: 1px solid #DDD;
  border-radius: 2px;
  padding: 5px 10px;
  background: white;
}

.csz-trust-pill svg {
  color: #E8650A;
  flex-shrink: 0;
  align-self: center;
}

/* ── HUD overlay (image corner tags — SKU/TYPE) ── */
.csz-pdp__hud-overlay {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  z-index: 2;
  pointer-events: none;
}

.csz-pdp__hud-tag {
  display: inline-flex;
  align-items: center;
  font-family: 'Oswald', monospace;
  font-size: 9px;
