/** Shopify CDN: Minification failed

Line 82:8 Expected ":"

**/
/* Self-Hosted Fonts */

@font-face {
  font-family: "ElderGods BB";
  src: url("ElderGodsBB.eot");
  src: url("ElderGodsBB.eot?#iefix") format("embedded-opentype"),
  url("ElderGodsBB.woff2") format("woff2"),
  url("ElderGodsBB.woff") format("woff"),
  url("ElderGodsBB.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "ElderGods BB";
  src: url("ElderGodsBB-Italic.eot");
  src: url("ElderGodsBB-Italic.eot?#iefix") format("embedded-opentype"),
  url("ElderGodsBB-Italic.woff2") format("woff2"),
  url("ElderGodsBB-Italic.woff") format("woff"),
  url("ElderGodsBB-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}

/* Homepage background: white (was cream #f6ebd8, owner requested removal) */
body.index-page {
  background-color: #ffffff !important;
  letter-spacing: 0.1px !important;
}

body {
  background-color: white;
}

body.wicked-clothes-gdpr {
  /* background-color: #f6ebd8 !important;
  cursor: url("/cdn/shop/files/heart-cursor-dropshadow.png?17678") 25 25, auto !important; */
}

* {
  font-family: 'Futura', sans-serif;
}

/* #CartPopup */
/* Upcart side-cart  */

#CartPopup .upcart-header .upcart-header-text {
  font-weight: 600;
  font-size: 100% !important;
}

#CartPopup .styles_CartPreview__empty__WFP86 h3 {
  font-weight: 400;
}

/* Upcart side-cart-end  */

/* Wishlist Page  */

.wishlistpage h1 {
  font-weight: bold;
}

.wishlistpage .products .buttons {
  display: flex;
  flex-direction: column-reverse;
  row-gap: 0px;
  margin: 0px 0px;
}

.wishlistpage .products .addbutton {
  margin-bottom: 10px !important;
}

.wishlistpage a.btn.btn-warning.removebutton {
  background-color: #ffffff;
  border none !important;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.wishlistpage a.btn.btn-warning.removebutton:focus {
  background-color: #ffffff;
  border-color: #ffffff;
}

.wishlistpage .product .text h3 {
  font-size: 14px;
  font-weight: 600;
  height: auto;
  text-transform: none;
  letter-spacing: 0.08em;
}

/* ═══ Hide "Sale" badge on product cards ═══
 * Every product is on sale so the badge is meaningless noise covering
 * the product image — the #1 selling asset. "Sold Out" badge (color-inverse) is kept.
 * Sale badge uses color-accent-2, sold out uses color-inverse. */
.price__badge-sale,
.card__badge .badge.color-accent-2 {
  display: none !important;
}

/* ═══ Card Price Overrides ═══
 * These MUST live here in wc-base.css (not component-price.css or
 * component-card.css) because Shopify's CDN aggressively caches
 * Dawn's built-in CSS files. wc-base.css loads after Dawn's CSS
 * in the cascade and reliably applies.
 *
 * Card title uses .h5 = calc(var(--font-heading-scale) * 1.2rem)
 * on mobile, 1.3rem on 750px+. Price must use the same formula
 * so they match exactly. "font-size: inherit" does NOT work here
 * because .price and h3.h5 are siblings — inherit resolves to
 * body text size, not the heading size. */

/* Price: not bold, no extra margin (generic — all contexts) */
.price {
  margin: 0;
}

.price .price-item {
  font-weight: 400;
}

.price--on-sale .price__sale {
  font-weight: 400;
}

/* Card-specific: match .h5 title size exactly */
.card-information .price .price-item,
.card-information .price--on-sale .price-item--regular {
  font-size: calc(var(--font-heading-scale) * 1.2rem) !important;
  font-weight: 400 !important;
}

@media screen and (min-width: 750px) {
  .card-information .price .price-item,
  .card-information .price--on-sale .price-item--regular {
    font-size: calc(var(--font-heading-scale) * 1.3rem) !important;
  }
}

/* Strikethrough compare price: minimal gap, no overhang */
.card-information .price--on-sale .price-item--regular {
  margin-right: 0.15rem !important;
}

/* Tighter vertical spacing around price in cards */
.card-information > .price {
  margin-top: 0.15rem !important;
}


/* Card info area: tighter padding above and below */
.card__information {
  padding: 0.4rem 0.8rem 0.5rem;
}

@media screen and (min-width: 750px) {
  .card__information {
    padding: 0.4rem 0.8rem 0.5rem;
  }
}

/* ═══ Collection Grid: Edge-to-Edge on Mobile ═══
 * Pull the product grid outward into the container's padding so
 * product images are larger. Design art is the #1 selling factor.
 * Container has padding: 0 1.5rem (24px). Grid gap = 5px.
 * Negative margin = gap - padding = 5px - 24px = -19px per side.
 * This only affects the grid — pagination/filters keep their padding. */
@media screen and (max-width: 749px) {
  ul.product-grid {
    margin-left: calc(var(--grid-mobile-horizontal-spacing) - 1.5rem);
    margin-right: calc(var(--grid-mobile-horizontal-spacing) - 1.5rem);
  }
}

/* ═══ Hero Banner: Tighter spacing on mobile ═══
 * Previously 0.875rem 2rem 0.5rem (14/32/8 px). User wanted 5-10px less
 * above the CTA and below the trust line — now 4/32/2 px. */
@media screen and (max-width: 749px) {
  .banner__box {
    padding: 0.25rem 2rem 0.125rem;
  }
}

/* Hero trust-line ("1,563,403+ shirts sold since 2010") — +2pt mobile,
 * +50% desktop. Bold-ish so it holds against the hero yellow. */
.banner .banner__text {
  font-size: 1.7rem;        /* ~17px mobile, up from body 15px */
  font-weight: 500;
  color: #1a1a1a;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 750px) {
  .banner .banner__text {
    font-size: 2.2rem;      /* ~22px desktop */
  }
}

/* ═══ Homepage Featured Collection: Kill white gap above grid ═══
 * The .collection__title has class .title-wrapper which Dawn styles
 * with margin-bottom:3rem in base.css. Needs !important to override.
 * The ul.grid also has margin-bottom:2rem from base.css. */
[id*="featured_collection"] .title-wrapper {
  margin-bottom: 0 !important;
}
[id*="featured_collection"] .product-grid {
  margin-top: 0;
}

/* ═══ PDP Artist Credit ═══ */
.product__title + .wc-pdp-artist {
  font-size: 18px;                /* mobile — 15% smaller than desktop's 21px */
  color: #888;
  margin: -15px 0 -1.5px;         /* top: more pull-up (-25% visible gap above); bottom: −1.5px (~−10% visible gap below) */
  padding: 0;
}
@media screen and (min-width: 750px) {
  .product__title + .wc-pdp-artist {
    font-size: 21px;              /* desktop +50% over original 14px */
  }
}

/* ═══ PDP — kill desktop top whitespace above title ═══
 * The trust-bar-wrapper grid item is display:none on desktop but its
 * markup still occupied a slot. Pull the info column up flush. */
@media screen and (min-width: 990px) {
  .product__info-wrapper {
    padding-top: 0 !important;
    align-self: start;
  }
  .product__info-container {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  .product__info-container > *:first-child,
  .product__info-container > .product__title:first-of-type {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .product__info-container > .product__title > h1,
  .product__info-container > .product__title > .h1 {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  /* Trust-bar-wrapper: leave hidden but ensure it doesn't reserve a row */
  .trust-bar-wrapper {
    display: none !important;
    grid-column: 1 / -1;
    height: 0;
  }
}

/* ═══ PDP: B3G3F badge inline with price ═══ */
.wc-price-row {
  display: flex;
  align-items: center;
  justify-content: flex-start !important;
  gap: 10px;
  flex-wrap: wrap;
}
.wc-b3g3f-badge {
  background: #cc0000;
  color: #fff;
  padding: 4px 10px;
  font-weight: 800;
  font-size: 12px;
  border-radius: 5px;
  white-space: nowrap;
  letter-spacing: 0.3px;
}

/* ═══ PDP: Collapsible product description ═══ */
.wc-description-collapse {
  border-top: none;
  padding: 0;
  margin-top: 0;
}
.wc-description-collapse__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 0;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.wc-description-collapse__toggle::-webkit-details-marker {
  display: none;
}
.wc-description-collapse__toggle::after {
  content: '+';
  font-size: 27px;
  font-weight: 300;
  line-height: 1;
}
.wc-description-collapse[open] .wc-description-collapse__toggle::after {
  content: '−';
}
.wc-description-collapse .product__description {
  padding-bottom: 12px;
}
.wc-description-collapse {
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 4px;
}


/* ═══ Hero Banner: Clean up $99 price styling ═══ */
.banner .wc-hero-price {
  color: #cc0000;
  font-weight: 900;
  font-size: 110%;
}

.wishlistpage p.price {
  font-weight: bold;
}

/* ═══════════════════════════════════════════════════════════════════
   PRODUCT CARDS — homepage + collection
   ───────────────────────────────────────────────────────────────────
   - Product name (below image/Quick Add): +2pt mobile, +50% desktop
     on collections, slight bump on homepage.
   - "by Artist": +2pt mobile, +50% desktop on collections, darker.
   - Uses !important to override inline style on card__artist and
     the .h5 size class on card__heading.
   ═══════════════════════════════════════════════════════════════════ */

/* Card title — beats .card__heading.h5 via high specificity + !important
 * NOTE: heading lives inside .card__information (underscore), NOT
 * .card-information (hyphen — that's a sibling div for price/vendor).
 * The hyphen-named selectors are kept for any legacy markup. */
.card__information .card__heading,
.card__information .card__heading.h5,
.card__information h3.card__heading,
.card__information .card__heading a,
.card__information .card__heading .full-unstyled-link,
.card-information .card__heading,
.card-information .card__heading.h5,
.card-information h3.card__heading,
.card-information .card__heading a,
.card-information .card__heading .full-unstyled-link {
  font-size: calc(var(--font-heading-scale) * 1.3rem) !important;   /* −1pt mobile (was 1.4rem) */
  font-weight: 700 !important;
  color: #000 !important;
  letter-spacing: 0.02rem;
  line-height: 1.3 !important;
}
@media screen and (min-width: 750px) {
  .card__information .card__heading,
  .card__information .card__heading.h5,
  .card__information h3.card__heading,
  .card__information .card__heading a,
  .card__information .card__heading .full-unstyled-link,
  .card-information .card__heading,
  .card-information .card__heading.h5,
  .card-information h3.card__heading,
  .card-information .card__heading a,
  .card-information .card__heading .full-unstyled-link {
    font-size: calc(var(--font-heading-scale) * 1.75rem) !important;  /* −2pt desktop (was 1.95rem) */
  }
}

/* Artist credit — overrides the inline style="font-size:11px; color:#888" */
.card__artist {
  font-size: 13px !important;
  color: #555 !important;           /* was #888 (5.5:1) — now 7:1 on white */
  font-weight: 500 !important;
  margin: 0 0 3px !important;
  padding: 0 !important;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 750px) {
  .card__artist {
    font-size: 17px !important;     /* +50% desktop */
  }
}

/* Card price — +2pt mobile / +50% desktop. Colors left to Dawn defaults
 * (sale price red #d0284b, strikethrough compare #8d8d8d). */
.card-information .price .price-item,
.card-information .price--on-sale .price-item--regular {
  font-size: calc(var(--font-heading-scale) * 1.4rem) !important;
  font-weight: 500 !important;
}
@media screen and (min-width: 750px) {
  .card-information .price .price-item,
  .card-information .price--on-sale .price-item--regular {
    font-size: calc(var(--font-heading-scale) * 1.95rem) !important;
  }
}

/* Keep the tighter right margin on the strikethrough; color stays Dawn default */
.card-information .price--on-sale .price-item--regular {
  margin-right: 0.2rem !important;
}

/* ═══ PDP product description — +2pt ═══ */
.product__info-container .product__description,
.product__info-container .product__description p,
.wc-description-collapse .product__description,
.wc-description-collapse .product__description p {
  font-size: 17px;                /* +2pt over body 15px */
  line-height: 1.55;
}