/** Shopify CDN: Minification failed

Line 26:0 All "@import" rules must come first

**/
/* ============================================
   CARDSURFER GAMES — Custom Theme Overrides
   Version: 44 (product title font fix + variant button readability)
   ============================================ */

:root {
  --cs-ocean-deep: #0b1f35;
  --cs-ocean-mid: #153554;
  --cs-ocean: #1b6ca0;
  --cs-wave: #2d8cc4;
  --cs-teal: #2ec4b6;
  --cs-brand-red: #c94444;
  --cs-brand-red-lt: #e25555;
  --cs-sand-gold: #d4a24c;
  --cs-sand-lt: #e8c87a;
  --cs-coral: #ff6b6b;
  --cs-foam: #f5f2ed;
  --cs-charcoal: #1c1c1e;
}

@import url('https://fonts.googleapis.com/css2?family=Permanent+Marker&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap');

/* ── GLOBAL BODY ── */
body {
  background: var(--cs-ocean-deep) !important;
  color: var(--cs-foam) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px;
}

/* ── GLOBAL TEXT COLOR OVERRIDE ── */
p, span, div, li, td, th, label, h1, h2, h3, h4, h5, h6 { color: var(--cs-foam); }
a { color: var(--cs-foam); }
a:hover { color: var(--cs-teal); }

/* ── HIDE GHOST HEADER TEXT ── */
.header__heading-link .h2,
.header__heading-link span.h2,
.header__heading-link span,
h1.header__heading > a > span,
h1.header__heading > a > span.h2,
.header__heading span:not(.header__heading-logo-wrapper *) {
  font-size: 0 !important; visibility: hidden !important; width: 0 !important;
  height: 0 !important; overflow: hidden !important; position: absolute !important;
  clip: rect(0,0,0,0) !important;
}

/* ── HIDE ANNOUNCEMENT BARS ── */
.announcement-bar-section,
.shopify-section-group-header-group .announcement-bar-section { display: none !important; }

/* ── RIDE COLOR SCHEME OVERRIDES ── */
.color-scheme-1, .color-scheme-2 { background: transparent !important; }

/* ── DROPDOWNS / SELECTS ── */
.disclosure__list, .disclosure__link, .disclosure__button,
select option { color: #1a2a3a !important; background: #ffffff !important; }
select { color: var(--cs-foam) !important; }

/* ══════════════════════════
   HERO
   ══════════════════════════ */
.cs-hero { position: relative; min-height: 440px; background: linear-gradient(160deg,#0d2240 0%,#153a5e 30%,#1a5580 55%,#1b6ca0 80%,#2d8cc4 100%); display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; }
.cs-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 90% 45% at 50% 105%,rgba(46,196,182,0.1) 0%,transparent 60%), radial-gradient(ellipse 55% 35% at 25% 80%,rgba(27,108,160,0.2) 0%,transparent 55%); }
.cs-hero__content { position: relative; z-index: 10; padding: 40px 20px 28px; margin-top: -20px; }
.cs-hero__logo { max-width: 580px; width: 90%; margin: 0 auto 12px; display: block; filter: drop-shadow(0 16px 50px rgba(0,0,0,0.6)) drop-shadow(0 6px 24px rgba(0,0,0,0.4)); }
.cs-hero__content h1, .cs-hero h1 { color: #c94444 !important; font-family: 'Permanent Marker', cursive !important; font-size: 56px !important; }
.cs-hero__tagline { font-family: 'Permanent Marker', cursive; font-size: 34px; background: linear-gradient(135deg, #f5d060 0%, #d4a24c 40%, #c4922e 70%, #e8c87a 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 12px; letter-spacing: 0.7px; filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5)); }
.cs-hero__subtitle { font-family: 'Permanent Marker', cursive; font-size: 1.6rem; color: var(--cs-brand-red); text-shadow: 0 2px 8px rgba(0,0,0,0.5); margin-bottom: 28px; letter-spacing: 0.03em; max-width: 700px; margin-left: auto; margin-right: auto; line-height: 1.5; }
.cs-hero__store-info { display: flex; flex-direction: column; gap: 8px; align-items: center; margin-bottom: 50px; }
.cs-hero__info-row { display: flex; align-items: center; gap: 8px; font-size: 17px; color: rgba(245,242,237,0.65); font-weight: 500; }
.cs-hero__info-icon { font-size: 16px; }
.cs-hero__info-link { color: rgba(245,242,237,0.75); text-decoration: none; transition: 0.2s; }
.cs-hero__info-link:hover { color: var(--cs-teal); }
.cs-hero__card { position: absolute; width: 22px; height: 30px; background: linear-gradient(135deg,rgba(201,68,68,0.1),rgba(46,196,182,0.05)); border: 1px solid rgba(255,255,255,0.06); border-radius: 3px; animation: cs-float 16s ease-in-out infinite; }
.cs-hero__card:nth-child(1) { left: 9%; top: 25%; animation-duration: 18s; }
.cs-hero__card:nth-child(2) { left: 18%; top: 67%; animation-delay: -3s; animation-duration: 14s; }
.cs-hero__card:nth-child(3) { right: 13%; top: 23%; animation-delay: -7s; animation-duration: 20s; }
.cs-hero__card:nth-child(4) { right: 9%; top: 69%; animation-delay: -5s; animation-duration: 16s; }
@keyframes cs-float { 0%,100% { transform: translateY(0); opacity: 0.14; } 50% { transform: translateY(-18px); opacity: 0.3; } }
.cs-wave { position: absolute; bottom: 0; left: 0; width: 200%; height: 180px; }
.cs-wave svg { width: 100%; height: 100%; }
.cs-wave--1 { animation: cs-wm 7s ease-in-out infinite; }
.cs-wave--2 { animation: cs-wm 10s ease-in-out infinite reverse; bottom: 3px; }
.cs-wave--3 { animation: cs-wm 5.5s ease-in-out infinite; bottom: -2px; }
@keyframes cs-wm { 0%,100% { transform: translateX(0); } 50% { transform: translateX(-25%); } }

/* ══════════════════════════
   TRUST BADGES
   ══════════════════════════ */
.cs-trust { background: linear-gradient(180deg,#0a1a2e,#0d2640); padding: 48px 36px; }
.cs-trust__heading { font-family: 'Permanent Marker', cursive; font-size: 34px; text-align: center; margin-bottom: 6px; color: var(--cs-brand-red); text-shadow: 0 2px 8px rgba(0,0,0,0.4); }
.cs-trust__sub { text-align: center; font-size: 14px; color: rgba(245,242,237,0.4); margin-bottom: 28px; max-width: 520px; margin-left: auto; margin-right: auto; }
.cs-trust__grid { max-width: 1100px; margin: 0 auto; }
.cs-trust__grid--top { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 16px; }
.cs-trust__grid--bottom { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.cs-trust__card { background: rgba(21,53,84,0.3); border: 1px solid rgba(255,255,255,0.06); border-radius: 14px; padding: 22px 14px; text-align: center; transition: 0.3s; cursor: pointer; text-decoration: none; display: block; color: var(--cs-foam); }
.cs-trust__card:hover { border-color: rgba(46,196,182,0.2); background: rgba(21,53,84,0.5); transform: translateY(-4px); color: var(--cs-foam); }
.cs-trust__card--no-link { cursor: default; }
.cs-trust__card--no-link:hover { transform: none; }
.cs-trust__logo-wrap { height: 32px; display: flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.cs-trust__logo-text { font-weight: 800; font-size: 18px; letter-spacing: 0.5px; }
.cs-trust__logo-img { height: 26px; object-fit: contain; }
.cs-trust__stars { color: #fbbf24; font-size: 18px; letter-spacing: 1px; margin-bottom: 4px; }
.cs-trust__rating { font-family: 'JetBrains Mono', monospace; font-size: 28px; font-weight: 700; margin-bottom: 2px; }
.cs-trust__platform { font-size: 14px; font-weight: 700; color: rgba(245,242,237,0.5); margin-bottom: 3px; }
.cs-trust__desc { font-size: 12px; color: rgba(245,242,237,0.25); line-height: 1.4; }
.cs-trust__visit { font-size: 12px; color: var(--cs-teal); margin-top: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }

/* ══════════════════════════
   FORGE
   ══════════════════════════ */
.cs-forge { background: linear-gradient(180deg,#132f4c,#183d5c); padding: 48px 36px; }
.cs-forge__inner { max-width: 600px; margin: 0 auto; text-align: center; }
.cs-forge__title { font-family: 'Permanent Marker', cursive; font-size: 46px; background: linear-gradient(135deg,var(--cs-sand-lt),var(--cs-brand-red-lt)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 4px; letter-spacing: 1px; }
.cs-forge__sub { font-family: 'Permanent Marker', cursive; font-size: 17px; color: rgba(245,242,237,0.35); margin-bottom: 14px; }
.cs-forge__desc { font-size: 14px; color: rgba(245,242,237,0.5); line-height: 1.7; margin-bottom: 22px; }
.cs-forge__btn { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(135deg,var(--cs-sand-gold),#c4922e); padding: 14px 30px; border-radius: 50px; text-decoration: none; transition: 0.3s; color: var(--cs-ocean-deep); font-family: 'Permanent Marker', cursive; font-size: 18px; letter-spacing: 1px; box-shadow: 0 4px 18px rgba(212,162,76,0.3); }
.cs-forge__btn:hover { transform: translateY(-3px); box-shadow: 0 8px 28px rgba(212,162,76,0.4); color: var(--cs-ocean-deep); }
.cs-forge__bolt { font-size: 24px; line-height: 1; }

/* ══════════════════════════
   WISHLIST
   ══════════════════════════ */
.cs-wishlist { background: linear-gradient(135deg,#112e4a,#1a4a6e); padding: 52px 36px; position: relative; }
.cs-wishlist::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse 50% 50% at 50% 50%,rgba(255,107,107,0.04) 0%,transparent 70%); }
.cs-wishlist__wrap { max-width: 860px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: center; position: relative; z-index: 1; }
.cs-wishlist__badge { display: inline-block; background: var(--cs-coral); color: white; font-size: 10px; font-weight: 700; padding: 4px 14px; border-radius: 20px; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 12px; animation: cs-pb 2s ease-in-out infinite; }
@keyframes cs-pb { 0%,100% { box-shadow: 0 0 8px rgba(255,107,107,0.3); } 50% { box-shadow: 0 0 22px rgba(255,107,107,0.6); } }
.cs-wishlist__title { font-family: 'Permanent Marker', cursive; font-size: 36px; margin-bottom: 8px; color: var(--cs-brand-red); text-shadow: 0 2px 8px rgba(0,0,0,0.4); }
.cs-wishlist__desc { font-size: 14px; color: rgba(245,242,237,0.5); line-height: 1.7; }
.cs-wishlist__demo { background: rgba(255,255,255,0.03); border: 1px solid rgba(46,196,182,0.1); border-radius: 16px; padding: 24px; }
.cs-wishlist__notif { display: flex; align-items: center; gap: 12px; padding: 14px; background: rgba(46,196,182,0.05); border: 1px solid rgba(46,196,182,0.12); border-radius: 10px; margin-bottom: 12px; }
.cs-wishlist__notif-icon { font-size: 26px; }
.cs-wishlist__notif-text { font-size: 12px; color: rgba(245,242,237,0.65); }
.cs-wishlist__notif-text strong { color: var(--cs-teal); display: block; margin-bottom: 1px; font-size: 13px; }
.cs-wishlist__minicards { display: flex; gap: 6px; }
.cs-wishlist__mc { flex: 1; background: rgba(21,53,84,0.4); border: 1px solid rgba(255,255,255,0.05); border-radius: 8px; padding: 10px 8px; text-align: center; }
.cs-wishlist__mc-icon { font-size: 16px; margin-bottom: 2px; display: block; }
.cs-wishlist__mc-name { font-size: 10px; font-weight: 600; color: rgba(245,242,237,0.5); }
.cs-wishlist__mc-status { font-size: 9px; color: rgba(245,242,237,0.25); }
.cs-wishlist__mc-status--active { color: var(--cs-teal); }

/* ══════════════════════════
   SHARED SECTION LABELS
   ══════════════════════════ */
.cs-section-label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 3px; margin-bottom: 6px; }
.cs-section-heading { font-family: 'Permanent Marker', cursive; font-size: 34px; letter-spacing: 0.3px; margin-bottom: 20px; color: var(--cs-brand-red); text-shadow: 0 2px 8px rgba(0,0,0,0.4); }

/* ══════════════════════════
   PRODUCT CARD GRID
   ══════════════════════════ */
.cs-singles { background: linear-gradient(180deg,#112e4a,#153a5e); padding: 48px 36px; }
.cs-sealed { background: linear-gradient(180deg,#153a5e,#1a4a6e); padding: 48px 36px; }
.cs-singles__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 220px)); gap: 16px; justify-content: center; }
.cs-singles__card { background: rgba(21,53,84,0.35); border: 1px solid rgba(46,196,182,0.08); border-radius: 12px; overflow: hidden; transition: 0.3s; text-decoration: none; color: var(--cs-foam); display: flex; flex-direction: column; }
.cs-singles__card:hover { box-shadow: 0 16px 40px rgba(0,0,0,0.35); border-color: rgba(46,196,182,0.25); color: var(--cs-foam); transform: translateY(-3px); }
.cs-singles__img { width: 100%; height: 344px; background: linear-gradient(135deg,rgba(21,53,84,0.6),rgba(11,31,53,0.8)); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; }
.cs-sealed-section .cs-singles__img,
.cs-accessories-section .cs-singles__img { height: 344px; }
.cs-singles__badge { position: absolute; top: 8px; left: 8px; font-size: 10px; font-weight: 700; padding: 3px 10px; border-radius: 20px; text-transform: uppercase; letter-spacing: 0.5px; z-index: 2; background: var(--cs-sand-gold); color: var(--cs-ocean-deep); }
.cs-singles__img .cs-tilt-card { position: absolute; inset: 0; width: 100%; height: 100%; }
.cs-singles__img .cs-tilt-inner { width: 100%; height: 100%; border-radius: 0; overflow: hidden; transform-style: preserve-3d; transition: transform 0.5s ease-out; box-shadow: none; }
.cs-singles-section .cs-singles__img .cs-tilt-inner img { width: 100%; height: 100%; object-fit: contain; object-position: center center; display: block; }
.cs-sealed-section .cs-singles__img .cs-tilt-inner img,
.cs-accessories-section .cs-singles__img .cs-tilt-inner img { width: 100%; height: 100%; object-fit: contain; object-position: center center; display: block; padding: 4px; box-sizing: border-box; }
.cs-singles__info { padding: 10px 12px 12px; display: grid; grid-template-rows: 2.6em auto auto; gap: 2px; }
.cs-singles__name { font-weight: 700; font-size: 12px; line-height: 1.3; color: var(--cs-foam); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.cs-singles__set { font-size: 11px; color: rgba(245,242,237,0.3); }
.cs-singles__price { font-weight: 800; font-size: 16px; color: var(--cs-teal); padding-top: 4px; }
.cs-accessories-section .cs-singles__price { color: var(--cs-sand-gold); }

/* ══════════════════════════
   EVENTS
   ══════════════════════════ */
.cs-events { background: linear-gradient(180deg,#1a4a6e,#153a5e); padding: 48px 36px; }
.cs-events__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cs-event-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.05); border-radius: 12px; padding: 18px; display: flex; gap: 14px; transition: 0.3s; cursor: pointer; text-decoration: none; color: var(--cs-foam); }
.cs-event-card:hover { border-color: rgba(46,196,182,0.12); background: rgba(255,255,255,0.07); color: var(--cs-foam); }
.cs-event-card__date { flex-shrink: 0; width: 48px; text-align: center; }
.cs-event-card__month { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--cs-brand-red-lt); }
.cs-event-card__day { font-family: 'Permanent Marker', cursive; font-size: 26px; line-height: 1; margin-top: 2px; }
.cs-event-card__title { font-weight: 700; font-size: 16px; margin-bottom: 3px; }
.cs-event-card__meta { font-size: 10px; color: rgba(245,242,237,0.35); margin-bottom: 5px; }
.cs-event-tag { display: inline-block; font-size: 9px; font-weight: 700; padding: 2px 8px; border-radius: 20px; text-transform: uppercase; letter-spacing: 0.5px; }
.cs-event-tag--mtg { background: rgba(46,196,182,0.08); color: var(--cs-teal); }
.cs-event-tag--riftbound { background: rgba(201,68,68,0.08); color: var(--cs-brand-red-lt); }
.cs-event-modal { display: none; position: fixed; inset: 0; z-index: 9999; align-items: center; justify-content: center; background: rgba(0,0,0,0.7); backdrop-filter: blur(8px); }
.cs-event-modal.active { display: flex; }
.cs-event-modal__content { background: linear-gradient(135deg,#112e4a,#1a4a6e); border: 1px solid rgba(46,196,182,0.15); border-radius: 20px; padding: 36px; max-width: 480px; width: 90%; position: relative; }
.cs-event-modal__close { position: absolute; top: 14px; right: 16px; font-size: 24px; cursor: pointer; color: rgba(245,242,237,0.4); transition: 0.2s; background: none; border: none; }
.cs-event-modal__close:hover { color: var(--cs-foam); }

/* ══════════════════════════
   REWARDS
   ══════════════════════════ */
.cs-rewards { background: linear-gradient(180deg,#153a5e,#1a4a6e); text-align: center; padding: 56px 36px; }
.cs-rewards__inner { max-width: 500px; margin: 0 auto; }
.cs-rewards__icon { width: 62px; height: 62px; margin: 0 auto 16px; background: rgba(212,162,76,0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; border: 2px solid rgba(212,162,76,0.18); }
.cs-rewards__big { font-family: 'Permanent Marker', cursive; font-size: 56px; background: linear-gradient(135deg,var(--cs-sand-gold),#c4922e); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin: 14px 0 6px; }
.cs-rewards__sub { font-size: 13px; color: rgba(245,242,237,0.35); }
.cs-rewards__badges { display: flex; gap: 8px; justify-content: center; margin-top: 18px; flex-wrap: wrap; }
.cs-rewards__badge-item { background: rgba(212,162,76,0.06); border: 1px solid rgba(212,162,76,0.12); border-radius: 8px; padding: 8px 14px; font-size: 11px; font-weight: 600; color: var(--cs-sand-lt); }

/* ══════════════════════════
   COMMUNITY
   ══════════════════════════ */
.cs-community { background: linear-gradient(180deg,#1a4a6e,#0a1e33); text-align: center; padding: 52px 36px; }
.cs-social-btns { display: flex; flex-direction: column; gap: 12px; align-items: center; margin-top: 16px; max-width: 340px; margin-left: auto; margin-right: auto; }
.cs-social-btn { display: inline-flex; align-items: center; gap: 12px; padding: 16px 30px; border-radius: 14px; text-decoration: none; transition: 0.3s; font-weight: 700; font-size: 17px; width: 100%; justify-content: center; }
.cs-social-btn:hover { transform: translateY(-3px); }
.cs-social-btn svg { flex-shrink: 0; }
.cs-social-btn--discord { background: #5865F2; color: white; box-shadow: 0 4px 14px rgba(88,101,242,0.3); }
.cs-social-btn--instagram { background: linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); color: white; box-shadow: 0 4px 14px rgba(225,48,108,0.3); }
.cs-social-btn--facebook { background: #1877F2; color: white; box-shadow: 0 4px 14px rgba(24,119,242,0.3); }

/* ══════════════════════════
   FOOTER
   ══════════════════════════ */
.footer { background: #050c14 !important; }
.footer, .footer *, .footer a, .footer p, .footer span, .footer li, .footer h2, .footer h3 { color: var(--cs-foam) !important; opacity: 1 !important; }
.footer a:hover { color: var(--cs-teal) !important; }
.icon-payment { background: #ffffff !important; border-radius: 4px !important; padding: 2px 4px !important; filter: none !important; }
.icon-payment img, .icon-payment svg { filter: none !important; opacity: 1 !important; mix-blend-mode: normal !important; }
.footer__payment li, .footer__payment .list-payment__item { background: transparent !important; border: none !important; box-shadow: none !important; }

/* ══════════════════════════
   BUTTONS
   ══════════════════════════ */
.cs-btn { padding: 12px 26px; border-radius: 50px; font-size: 14px; font-weight: 700; text-decoration: none; border: none; cursor: pointer; transition: 0.3s; display: inline-flex; align-items: center; gap: 8px; }
.cs-btn:hover { transform: translateY(-2px); text-decoration: none; }
.cs-btn--red { background: linear-gradient(135deg,#e25555,#c94444); color: white; box-shadow: 0 4px 18px rgba(201,68,68,0.3); }
.cs-btn--teal { background: linear-gradient(135deg,var(--cs-teal),#22a89c); color: var(--cs-ocean-deep); box-shadow: 0 4px 18px rgba(46,196,182,0.3); }
.cs-btn--gold { background: linear-gradient(135deg,var(--cs-sand-gold),#c4922e); color: var(--cs-ocean-deep); box-shadow: 0 4px 18px rgba(212,162,76,0.3); }

/* ══════════════════════════
   3D TILT
   ══════════════════════════ */
.cs-tilt-card { perspective: 800px; cursor: pointer; }
.cs-tilt-inner { width: 100%; height: 100%; border-radius: 8px; overflow: hidden; transition: transform 0.5s ease-out; transform-style: preserve-3d; position: relative; }
.cs-tilt-inner img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cs-tilt-glare { position: absolute; inset: 0; pointer-events: none; border-radius: 8px; opacity: 0; transition: opacity 0.2s; }

/* ══════════════════════════
   PRODUCT DETAIL PAGE
   ══════════════════════════ */
.product__media-item img { background: #ffffff !important; padding: 4px !important; border-radius: 12px !important; box-shadow: 0 8px 32px rgba(0,0,0,0.4) !important; }
.product__info-wrapper, .product__info-wrapper *, .product__vendor, .product__title, .quantity__label, .quantity__rules, .product-form__input, .product-form__input *, .share-button, .share-button * { color: var(--cs-foam) !important; }
.price .price-item, .price__regular .price-item, .price__sale .price-item { color: var(--cs-foam) !important; font-size: 1.4rem !important; font-weight: 700 !important; }

/* ══════════════════════════
   PRODUCT DETAIL — TITLE FONT
   Keep product titles as Ride default (not Permanent Marker).
   Overrides the broad v40/v42 h1 rule below.
   ══════════════════════════════════════════ */
.template-product {
  --font-heading-family: 'Plus Jakarta Sans', sans-serif;
  --font-heading-style: normal;
  --font-heading-weight: 700;
}
.template-product #MainContent h1,
.template-product .product__title,
.template-product h1.product__title,
.product__title,
h1.product__title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  color: var(--cs-foam) !important;
  text-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
  -webkit-text-fill-color: var(--cs-foam) !important;
}

/* ══════════════════════════
   COLLECTION PAGE CARDS
   ══════════════════════════ */
.card__media { height: 420px !important; overflow: hidden !important; }
.card__media .media { height: 100% !important; }
.card__media .media img { width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center center !important; padding: 8px !important; box-sizing: border-box !important; }
.card__heading, .card__heading a, .card__heading h3 { color: var(--cs-foam) !important; font-size: 1.1rem !important; font-weight: 700 !important; line-height: 1.3 !important; margin: 0 0 6px 0 !important; }
.card .price-item, .card .price, .card .price__regular { color: var(--cs-foam) !important; font-size: 1.1rem !important; font-weight: 800 !important; }
.card__information { padding: 10px 12px 12px !important; margin-top: 0 !important; }
.card__inner { overflow: hidden !important; }
.card-wrapper { overflow: hidden !important; border-radius: 8px !important; }
.card { display: flex !important; flex-direction: column !important; }
.card__media + .card__information, .card__inner + .card__information { margin-top: 0 !important; padding-top: 10px !important; }
.card .media.media--hover-effect > img:only-child,
.card-wrapper .media.media--hover-effect > img:only-child { transition: none !important; }
.card:hover .media.media--hover-effect > img:first-child:only-child,
.card-wrapper:hover .media.media--hover-effect > img:first-child:only-child { transform: none !important; }
.card-wrapper, .card, .card__inner { overflow: visible !important; }
.card__media { overflow: hidden !important; }
.card__media .media img, .card__media .media { scale: 1 !important; --zoom-in-ratio: 1 !important; }

/* ══════════════════════════
   RELATED PRODUCTS
   ══════════════════════════ */
.related-products h2, .product-recommendations h2, .complementary-products h2 { font-family: 'Permanent Marker', cursive !important; color: var(--cs-brand-red) !important; font-size: 3rem !important; text-shadow: 0 2px 8px rgba(0,0,0,0.4) !important; }
.related-products .card__heading, .related-products .card__heading a, .product-recommendations .card__heading, .product-recommendations .card__heading a { color: var(--cs-foam) !important; font-size: 1.2rem !important; font-weight: 600 !important; }
.related-products .price-item, .product-recommendations .price-item { color: var(--cs-foam) !important; font-size: 1.1rem !important; font-weight: 700 !important; }
.related-products .card__information, .product-recommendations .card__information { padding-top: 8px !important; padding-bottom: 8px !important; }
.related-products .card__media,
.product-recommendations .card__media,
.complementary-products .card__media { height: 280px !important; }
.related-products .card.card--card.card--media .card__inner.ratio,
.product-recommendations .card.card--card.card--media .card__inner.ratio,
.complementary-products .card.card--card.card--media .card__inner.ratio { height: 280px !important; --ratio-percent: unset !important; aspect-ratio: unset !important; padding-bottom: 0 !important; }

/* ══════════════════════════
   RTE
   ══════════════════════════ */
.rte, .rte p, .rte span, .rte li, .rte a, .product__description, .product__description * { color: var(--cs-foam) !important; }

/* ══════════════════════════
   SWYM BACK IN STOCK
   ══════════════════════════ */
.swym-popup-content h2, .swym-popup-content h3, .swym-bis-popup h2, .swym-bis-popup h3, .swym-bis-title { font-family: 'Permanent Marker', cursive !important; color: var(--cs-brand-red) !important; font-size: 1.6rem !important; }
.swym-popup-content p, .swym-popup-content span, .swym-popup-content label, .swym-popup-content small, .swym-bis-popup p, .swym-bis-popup span { color: #1a2a3a !important; font-weight: 500 !important; }
.swym-popup-content input[type="email"], .swym-bis-popup input[type="email"] { color: #1a2a3a !important; background: #f5f5f5 !important; }
.swym-success-msg p, .swym-success-msg span, .swym-confirmation p, .swym-confirmation span { color: #ffffff !important; font-weight: 600 !important; }

/* ══════════════════════════
   RESPONSIVE
   ══════════════════════════ */
@media (max-width: 900px) {
  .cs-hero { min-height: 420px; }
  .cs-hero__logo { max-width: 90%; }
  .cs-hero__content h1, .cs-hero h1 { font-size: 38px !important; }
  .cs-hero__tagline { font-size: 20px; margin-bottom: 40px; }
  .cs-trust__grid--top { grid-template-columns: 1fr 1fr; }
  .cs-trust__grid--bottom { grid-template-columns: 1fr 1fr; }
  .cs-forge__title { font-size: 32px; }
  .cs-wishlist__wrap { grid-template-columns: 1fr; gap: 20px; }
  .cs-events__grid { grid-template-columns: 1fr; }
  .cs-social-btns { max-width: 100%; }
  .cs-section-heading { font-size: 26px; }
  .cs-singles__grid { grid-template-columns: repeat(3, minmax(0, 220px)); justify-content: center; }
  .cs-rewards__big { font-size: 42px; }
}
@media (max-width: 500px) {
  .cs-trust__grid--top, .cs-trust__grid--bottom { grid-template-columns: 1fr; }
  .cs-hero__content h1, .cs-hero h1 { font-size: 28px !important; }
  .cs-hero__tagline { font-size: 17px; }
  .cs-section-heading { font-size: 22px; }
  .cs-singles__grid { grid-template-columns: repeat(2, minmax(0, 220px)); justify-content: center; }
}

/* ══════════════════════════
   HEADER — must be last
   ══════════════════════════ */
.section-header { position: sticky !important; top: 0 !important; z-index: 9999 !important; isolation: isolate !important; }
.section-header.shopify-section-header-sticky, .section-header.shopify-section-header-hidden { position: sticky !important; top: 0 !important; transform: none !important; z-index: 9999 !important; }
.header-wrapper { background: #ffffff !important; border-bottom: 2px solid rgba(0,0,0,0.12) !important; transition: none !important; position: relative !important; z-index: 9999 !important; }
.header { background: transparent !important; padding: 6px 0 !important; margin: 0 !important; display: flex !important; align-items: center !important; min-height: 60px !important; }
.header > * { align-self: center !important; }
.header__heading, .header__inline-menu, .header__icons { align-self: center !important; margin-top: auto !important; margin-bottom: auto !important; }
.header-wrapper .header { margin: 0 !important; background: transparent !important; }
.header-wrapper [class*="color-"] { --color-background: 255,255,255 !important; --gradient-background: #ffffff !important; background: #ffffff !important; }
.header__heading { margin: 0 !important; padding: 0 !important; display: flex !important; align-items: center !important; }
.header__heading-link { padding: 0 !important; margin: 0 !important; display: flex !important; align-items: center !important; }
.header__heading-logo-wrapper { max-width: 340px !important; }
.header__heading-logo { max-height: 80px !important; width: auto !important; filter: drop-shadow(5px 5px 16px rgba(0,0,0,0.5)) drop-shadow(3px 3px 8px rgba(0,0,0,0.35)) !important; }
.header__inline-menu { display: flex !important; align-items: center !important; }
.header__menu-item { display: flex !important; align-items: center !important; }
.header__menu-item, .header__menu-item span, .list-menu__item--link { font-family: 'Permanent Marker', cursive !important; font-size: 19px !important; color: var(--cs-ocean) !important; letter-spacing: 0.6px !important; margin: 0 6px !important; text-transform: none !important; transition: transform 0.2s ease, color 0.2s ease !important; display: inline-block !important; text-decoration: none !important; }
.header__icon, .header__icon svg, .header__icon path { color: #1a2a3a !important; fill: #1a2a3a !important; stroke: #1a2a3a !important; }
.header *:not(.header__heading-logo):not(img) { color: var(--cs-ocean) !important; }
.header__menu-item:hover, .header__menu-item:hover span, .header__menu-item:hover > span, .list-menu__item--link:hover, .list-menu__item--link:hover span, .header a.list-menu__item--link:hover, .header-wrapper .list-menu__item--link:hover, .header-wrapper .header__menu-item:hover span { color: #c94444 !important; text-decoration: none !important; transform: scale(1.12) !important; }
.header__submenu .list-menu__item--link, .header__submenu a, details .list-menu__item--link, details ul a, nav details ul li a { font-family: 'Permanent Marker', cursive !important; font-size: 16px !important; color: var(--cs-ocean) !important; text-decoration: none !important; display: inline-block !important; transition: color 0.2s ease, transform 0.2s cubic-bezier(0.25,0.46,0.45,0.94) !important; }
.header__submenu .list-menu__item--link:hover, .header__submenu a:hover, details .list-menu__item--link:hover, details ul a:hover, nav details ul li a:hover { color: #c94444 !important; text-decoration: none !important; transform: scale(1.12) !important; }

/* ══════════════════════════════════════════
   NUCLEAR COLLECTION PAGE CARD TEXT FIX
   ══════════════════════════════════════════ */
html body .card-wrapper .card__information { padding: 10px 14px 14px !important; margin-top: 0 !important; }
html body .card-wrapper .card__heading { font-size: 1.3rem !important; font-weight: 700 !important; line-height: 1.35 !important; color: var(--cs-foam) !important; margin-bottom: 8px !important; }
html body .card-wrapper .card__heading a { font-size: 1.3rem !important; font-weight: 700 !important; color: var(--cs-foam) !important; }
html body .card-wrapper .card__heading h3 { font-size: 1.3rem !important; font-weight: 700 !important; color: var(--cs-foam) !important; }
html body .card-wrapper .price { color: var(--cs-foam) !important; }
html body .card-wrapper .price-item { font-size: 1.3rem !important; font-weight: 800 !important; color: var(--cs-foam) !important; }
html body .card-wrapper .price__container { margin-top: 4px !important; }
html body .card-wrapper .card { gap: 0 !important; }
html body .card-wrapper .card__media { margin-bottom: 0 !important; }

/* ══════════════════════════════════════════
   COLLECTION PAGE CARD TILE STYLING
   ══════════════════════════════════════════ */
html body .card-wrapper { background: rgba(21,53,84,0.35) !important; border: 1px solid rgba(46,196,182,0.08) !important; border-radius: 12px !important; overflow: hidden !important; transition: box-shadow 0.3s, border-color 0.3s, transform 0.3s !important; }
html body .card-wrapper:hover { box-shadow: 0 16px 40px rgba(0,0,0,0.35) !important; border-color: rgba(46,196,182,0.25) !important; transform: translateY(-3px) !important; }
html body .card-wrapper .card { background: transparent !important; border: none !important; border-radius: 0 !important; box-shadow: none !important; }
html body .card-wrapper .card__information { padding: 10px 12px 14px !important; margin-top: 0 !important; background: transparent !important; }
html body .card-wrapper .card__inner { margin-bottom: 0 !important; }

/* ══════════════════════════════════════════
   RIDE EXACT CLASS FIXES
   v43: synced .card__inner.ratio height to 420px
   ══════════════════════════════════════════ */
html body .card.card--card.card--media { --ratio-percent: unset !important; }
html body .card.card--card.card--media .card__inner.ratio { --ratio-percent: unset !important; height: 420px !important; aspect-ratio: unset !important; padding-bottom: 0 !important; }
html body .card.card--card .card__content { padding: 0 !important; margin: 0 !important; }
html body .card.card--card .card__information { padding: 10px 12px 14px !important; margin: 0 !important; }
html body .card-wrapper.product-card-wrapper { background: rgba(21,53,84,0.35) !important; border: 1px solid rgba(46,196,182,0.08) !important; border-radius: 12px !important; overflow: hidden !important; }
html body .card-wrapper.product-card-wrapper:hover { border-color: rgba(46,196,182,0.25) !important; box-shadow: 0 16px 40px rgba(0,0,0,0.35) !important; transform: translateY(-3px) !important; }
html body .card.card--card { background: transparent !important; border: none !important; box-shadow: none !important; }

/* ── HIDE VENDOR TAGS ── */
.card__vendor, .card-information__vendor, .card-information .vendor, .card-information__text, .product-card-vendor { display: none !important; }
.cs-singles__set { display: none !important; }

/* ══════════════════════════════════════════
   v32 FIXES
   ══════════════════════════════════════════ */
.product__inventory, .product__inventory span, [class*="inventory--low"], .inventory-status, .product-form .inventory { color: var(--cs-brand-red) !important; font-weight: 700 !important; }
cart-notification, .cart-notification, .cart-notification__wrapper { background: var(--cs-ocean-mid) !important; border: 1px solid rgba(46,196,182,0.2) !important; border-radius: 12px !important; }
cart-notification p, cart-notification span, cart-notification a, .cart-notification p, .cart-notification span, .cart-notification a, .cart-notification__name, .cart-notification__links * { color: var(--cs-foam) !important; }
.cart-notification__links .button--secondary { color: var(--cs-foam) !important; border-color: rgba(245,242,237,0.3) !important; }
.cart-notification__links .button:not(.button--secondary) { background: var(--cs-sand-gold) !important; color: var(--cs-ocean-deep) !important; border-color: var(--cs-sand-gold) !important; }

/* ══════════════════════════════════════════
   VARIANT BUTTONS — Condition / Finish
   Always white text so unselected options are readable.
   Selected = dark text on light bg.
   OOS/disabled = white + strikethrough + muted.
   (Replaces the bad color: --cs-ocean-deep from v32)
   ══════════════════════════════════════════ */

/* Variant labels — ensure text is always readable on dark bg */
.product-form__input input[type="radio"] ~ label,
.product-form__input .swatch-input ~ label,
fieldset.product-form__input label {
  color: var(--cs-foam) !important;
}

/* Selected — white pill, dark text, teal border */
.product-form__input input[type="radio"]:checked ~ label,
.product-form__input .swatch-input:checked ~ label {
  color: var(--cs-ocean-deep) !important;
  background: var(--cs-foam) !important;
  border-color: var(--cs-teal) !important;
  font-weight: 700 !important;
}

/* Out of stock — strikethrough, muted. Ride sets input[disabled] on truly OOS variants */
.product-form__input input[type="radio"]:disabled ~ label {
  color: rgba(255,255,255,0.4) !important;
  text-decoration: line-through !important;
  opacity: 0.55 !important;
  cursor: not-allowed !important;
}

/* ══════════════════════════════════════════
   v33 FIXES
   v43: synced search card heights to 420px
   ══════════════════════════════════════════ */
.template-search .card__media, .search-results .card__media { height: 420px !important; overflow: hidden !important; }
.template-search .card__inner.ratio, .search-results .card__inner.ratio, .template-search .card.card--card.card--media .card__inner.ratio { --ratio-percent: unset !important; height: 420px !important; aspect-ratio: unset !important; padding-bottom: 0 !important; }

/* ══════════════════════════════════════════
   v34 FIXES
   ══════════════════════════════════════════ */
.icon-payment { background: #ffffff !important; border-radius: 4px !important; padding: 2px 4px !important; }
.footer__column--info .social-icons svg path, .footer .social-icons svg path { fill: var(--cs-foam) !important; }

/* ══════════════════════════════════════════
   v35 FIXES
   ══════════════════════════════════════════ */
.cs-social-btn--discord { display: none !important; }

/* ══════════════════════════════════════════
   v36 FIXES — Mobile nav + drawer font
   ══════════════════════════════════════════ */
@media (max-width: 989px) {
  .header { min-height: 48px !important; padding: 4px 16px !important; }
  .header__heading-logo { max-height: 40px !important; }
  .header__heading-logo-wrapper { max-width: 120px !important; }
  .header__inline-menu { display: none !important; }
  header-drawer { display: flex !important; visibility: visible !important; }
  .menu-drawer-container { display: flex !important; padding-left: 8px !important; }
  .menu-drawer .list-menu__item--link,
  .menu-drawer a.list-menu__item--link,
  .menu-drawer summary.list-menu__item,
  .menu-drawer details > summary { font-family: 'Permanent Marker', cursive !important; color: var(--cs-ocean) !important; font-size: 18px !important; letter-spacing: 0.4px !important; }
}

/* ══════════════════════════════════════════
   v37 FIXES — Mobile card heights only
   v43: synced mobile heights to match
   ══════════════════════════════════════════ */
@media (max-width: 989px) {
  .cs-singles__img { height: 200px !important; }
  .cs-sealed-section .cs-singles__img,
  .cs-accessories-section .cs-singles__img { height: 200px !important; }
  .card__media { height: 200px !important; }
  html body .card.card--card.card--media .card__inner.ratio { height: 200px !important; }
  .template-search .card__media,
  .search-results .card__media { height: 200px !important; }
  .template-search .card__inner.ratio,
  .search-results .card__inner.ratio,
  .template-search .card.card--card.card--media .card__inner.ratio { height: 200px !important; }
  .related-products .card__media,
  .product-recommendations .card__media { height: 200px !important; }
  .related-products .card.card--card.card--media .card__inner.ratio,
  .product-recommendations .card.card--card.card--media .card__inner.ratio { height: 200px !important; }
}

/* ══════════════════════════════════════════
   v38 FIXES — Related products desktop card height
   ══════════════════════════════════════════ */
.related-products .card__media,
.product-recommendations .card__media,
.complementary-products .card__media { height: 280px !important; }
.related-products .card.card--card.card--media .card__inner.ratio,
.product-recommendations .card.card--card.card--media .card__inner.ratio,
.complementary-products .card.card--card.card--media .card__inner.ratio { height: 280px !important; --ratio-percent: unset !important; aspect-ratio: unset !important; padding-bottom: 0 !important; }

/* ══════════════════════════════════════════
   v39 FIXES — Events calendar full bleed
   ══════════════════════════════════════════ */
#shopify-section-cardsurfer-events-calendar {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
}
#shopify-section-cardsurfer-events-calendar .cs-cal-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  left: auto !important;
  transform: none !important;
}
#shopify-section-cardsurfer-events-calendar .cs-cal-header {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* ══════════════════════════════════════════
   v39b — Bigger calendar text
   ══════════════════════════════════════════ */
.cs-event-chip { font-size: 0.85rem !important; padding: 4px 8px !important; }
.cs-day-number { font-size: 1.2rem !important; }
.cs-cal-days-header div { font-size: 1rem !important; }
.cs-cal-day { min-height: 120px !important; }

/* ══════════════════════════════════════════
   v40 FIXES — Collection + page h1 titles
   Permanent Marker red on all page/collection titles.
   NOTE: .product__title is intentionally excluded —
   see "PRODUCT DETAIL — TITLE FONT" block above.
   ══════════════════════════════════════════ */
.collection__title,
.collection-hero__title,
h1.collection__title,
.template-collection h1,
.collection-header h1,
.page-header h1,
.template-page #MainContent h1,
.template-collection #MainContent h1,
.main-page-title,
h1.title,
.section-header h1,
#MainContent h1:not(.cs-cal-title):not(.cs-br-title):not(.cs-ct-title):not(.product__title) {
  font-family: 'Permanent Marker', cursive !important;
  color: var(--cs-brand-red, #c94444) !important;
  text-shadow: 3px 3px 0 rgba(0,0,0,0.3) !important;
}

/* ══════════════════════════════════════════
   v41 FIXES — Consistent h1 header sizes
   ══════════════════════════════════════════ */
.cs-cal-title,
.cs-br-title,
.cs-ct-title {
  font-size: clamp(3rem, 8vw, 5.5rem) !important;
}

/* ══════════════════════════════════════════
   v42 FIXES — Consistent dark red on ALL page titles
   ══════════════════════════════════════════ */
.cs-cal-title,
.cs-br-title,
.cs-ct-title,
.collection__title,
.collection-hero__title,
h1.collection__title,
.template-collection h1,
.collection-header h1,
.page-header h1,
.template-page #MainContent h1,
.template-collection #MainContent h1,
.main-page-title,
h1.title,
.section-header h1,
#MainContent h1:not(.cs-cal-title):not(.cs-br-title):not(.cs-ct-title):not(.product__title) {
  color: #c94444 !important;
}

/* ══════════════════════════════════════════
   v44 FIXES — Swym back-in-stock popup text
   ══════════════════════════════════════════ */
.swym-popup-content,
.swym-popup-content *,
.swym-bis-popup,
.swym-bis-popup *,
.swym-modal-content,
.swym-modal-content * {
  color: #1a2a3a !important;
}
.swym-popup-content h2,
.swym-popup-content h3,
.swym-bis-popup h2,
.swym-bis-popup h3 {
  font-family: 'Permanent Marker', cursive !important;
  color: var(--cs-brand-red) !important;
}
