/** Shopify CDN: Minification failed

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

**/
/* ============================================
   CELESTIAL BEAUTY MARKETPLACE — FULL CSS
   Bold & Graphic Editorial Design System
   ============================================ */

:root {
  --cb-black: #0a0a0a;
  --cb-white: #ffffff;
  --cb-off: #f5f5f3;
  --cb-gray: #e8e8e6;
  --cb-mid: #999999;
  --cb-text: #1a1a1a;
  --cb-accent: #C8195A;
  --cb-accent-hover: #a8133f;
  --cb-accent-lt: #f0d4dc;
  --cb-gold: #B8821A;
  --cb-gold-lt: #E8A830;
  --cb-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif;
  --cb-radius: 4px;
  --cb-radius-lg: 8px;
  --cb-shadow: 0 2px 12px rgba(0,0,0,.08);
  --cb-shadow-md: 0 6px 28px rgba(0,0,0,.12);
}

/* ── GOOGLE FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,700;1,800;1,900&display=swap');

/* ── GLOBAL RESETS & BASE ── */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--cb-font) !important;
  color: var(--cb-text) !important;
  background: var(--cb-white) !important;
  -webkit-font-smoothing: antialiased;
  margin: 0;
}

a { color: inherit; }

/* ============================================
   ANNOUNCEMENT BAR
   ============================================ */
.announcement-bar,
.shopify-section-group-header-group .announcement {
  background: var(--cb-black) !important;
  color: rgba(255,255,255,.65) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  text-align: center !important;
  padding: 9px 20px !important;
  border: none !important;
}

.announcement-bar a,
.announcement-bar__message a {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ============================================
   HEADER
   ============================================ */
header-component,
.header,
.header-wrapper,
[class*='header-section'] .section {
  background: var(--cb-black) !important;
  border-bottom: 1px solid #1e1e1e !important;
  color: #fff !important;
}

.header__inner {
  background: var(--cb-black) !important;
}

/* Logo */
.header__logo,
.header__heading-logo,
.header__logo img {
  max-height: 48px !important;
  width: auto !important;
}

.header__heading {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.02em !important;
}

/* Nav links */
.header__nav a,
.header__menu-item,
.header__menu-item span,
.list-menu__item {
  color: rgba(255,255,255,.55) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: color .2s !important;
}

.header__nav a:hover,
.header__menu-item:hover,
.header__menu-item:hover span {
  color: #fff !important;
}

/* Header icons */
.header__icon,
.header__icon svg,
.cart-count-bubble {
  color: rgba(255,255,255,.55) !important;
  fill: rgba(255,255,255,.55) !important;
}

.header__icon:hover svg {
  fill: #fff !important;
  color: #fff !important;
}

.cart-count-bubble {
  background: var(--cb-accent) !important;
  color: #fff !important;
  fill: #fff !important;
}

/* Search input in header */
.search__input,
.header .search-modal__input {
  background: #1a1a1a !important;
  border: 1px solid #2c2c2c !important;
  color: #fff !important;
  border-radius: var(--cb-radius) !important;
  font-family: var(--cb-font) !important;
}

.search__input::placeholder {
  color: rgba(255,255,255,.28) !important;
}

/* Search button */
.search-modal__submit,
.predictive-search .button {
  background: var(--cb-accent) !important;
  color: #fff !important;
  border: none !important;
}

/* ============================================
   NAVIGATION / MEGA MENU
   ============================================ */
.mega-menu,
.header__submenu,
.list-menu--disclosure {
  background: var(--cb-black) !important;
  border: 1px solid #2a2a2a !important;
  box-shadow: 0 8px 40px rgba(0,0,0,.3) !important;
}

.mega-menu a,
.header__submenu a,
.list-menu--disclosure a {
  color: rgba(255,255,255,.6) !important;
  font-size: 13px !important;
}

.mega-menu a:hover,
.header__submenu a:hover {
  color: #fff !important;
}

/* ============================================
   HERO / SLIDESHOW SECTION
   ============================================ */
.slideshow,
.hero-section,
[class*='slideshow'],
.banner {
  background: var(--cb-black) !important;
  color: #fff !important;
  position: relative;
  overflow: hidden;
}

.slideshow::before {
  content: 'BEAUTY';
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(100px, 18vw, 220px);
  font-weight: 900;
  font-style: italic;
  color: rgba(255,255,255,.03);
  letter-spacing: -.05em;
  pointer-events: none;
  line-height: 1;
  z-index: 1;
  font-family: var(--cb-font);
}

.slideshow::after {
  content: '';
  position: absolute;
  top: -120px;
  right: -80px;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(200,25,90,.15), transparent 65%);
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
}

.banner__box,
.slideshow__text-wrapper,
.hero__text {
  position: relative;
  z-index: 2;
}

.banner__heading,
.slideshow__heading,
.hero__heading,
[class*='banner'] h1,
[class*='banner'] h2 {
  font-size: clamp(36px, 6vw, 72px) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  line-height: .96 !important;
  letter-spacing: -.05em !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
}

.banner__text,
.slideshow__text,
.hero__text p {
  color: rgba(255,255,255,.5) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

/* Hero buttons */
.banner .button,
.slideshow .button,
.hero .button {
  font-family: var(--cb-font) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  border-radius: var(--cb-radius) !important;
  padding: 13px 28px !important;
  transition: background .2s, color .2s !important;
}

.banner .button--primary,
.slideshow .button--primary {
  background: var(--cb-accent) !important;
  color: #fff !important;
  border: none !important;
}

.banner .button--primary:hover,
.slideshow .button--primary:hover {
  background: var(--cb-accent-hover) !important;
}

.banner .button--secondary,
.slideshow .button--secondary {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.3) !important;
}

.banner .button--secondary:hover {
  border-color: rgba(255,255,255,.7) !important;
}

/* ============================================
   SECTION HEADERS / HEADINGS
   ============================================ */
.section-header h2,
.collection__title,
.featured-collection__title,
.title {
  font-size: clamp(20px, 2.8vw, 34px) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.04em !important;
  line-height: 1 !important;
  color: var(--cb-text) !important;
  font-family: var(--cb-font) !important;
}

.section-header .subtitle,
.section-subheading {
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  color: var(--cb-mid) !important;
  display: block !important;
  margin-bottom: 6px !important;
}

.section-header__link,
.collection__view-all {
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: var(--cb-text) !important;
  text-decoration: none !important;
  border-bottom: 1.5px solid var(--cb-text) !important;
  padding-bottom: 1px !important;
  transition: color .2s, border-color .2s !important;
}

.section-header__link:hover {
  color: var(--cb-accent) !important;
  border-color: var(--cb-accent) !important;
}

/* ============================================
   PRODUCT CARDS
   ============================================ */
.card-wrapper,
.product-card-wrapper {
  border: 1px solid var(--cb-gray) !important;
  border-radius: var(--cb-radius-lg) !important;
  background: var(--cb-white) !important;
  overflow: hidden;
  transition: box-shadow .2s, border-color .2s, transform .2s !important;
}

.card-wrapper:hover,
.product-card-wrapper:hover {
  box-shadow: var(--cb-shadow-md) !important;
  border-color: #ccc !important;
  transform: translateY(-3px) !important;
}

/* Card image */
.card__media,
.card-media {
  background: var(--cb-off) !important;
  aspect-ratio: 1 !important;
  overflow: hidden;
  border-bottom: 1px solid var(--cb-gray) !important;
}

.card__media img,
.card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .4s cubic-bezier(.25,.46,.45,.94) !important;
}

.card-wrapper:hover .card__media img,
.product-card-wrapper:hover img {
  transform: scale(1.05) !important;
}

/* Card info */
.card__content,
.card__information {
  padding: 12px 14px 16px !important;
}

.card__vendor,
.card__product-vendor {
  font-size: 9.5px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--cb-mid) !important;
  margin-bottom: 4px !important;
  display: block;
}

.card__heading,
.card__title {
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  color: var(--cb-text) !important;
  letter-spacing: 0 !important;
  font-style: normal !important;
  margin-bottom: 6px !important;
  font-family: var(--cb-font) !important;
}

.card__heading a:hover {
  color: var(--cb-accent) !important;
}

/* Price */
.price,
.price__regular,
.price-item--regular {
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  color: var(--cb-text) !important;
  font-family: var(--cb-font) !important;
}

.price--on-sale .price-item--regular,
.price__sale {
  color: var(--cb-accent) !important;
}

.price-item--compare {
  font-size: 12px !important;
  color: #bbb !important;
  text-decoration: line-through !important;
  font-weight: 400 !important;
}

.badge,
.price__badge-sale,
.product__badge {
  background: var(--cb-accent) !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 3px 7px !important;
  border-radius: 2px !important;
  border: none !important;
}

/* Quick add / ATC buttons */
.quick-add__submit,
.card .button--primary,
.product-form__submit {
  background: var(--cb-black) !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: var(--cb-radius) !important;
  padding: 11px 16px !important;
  width: 100% !important;
  transition: background .2s !important;
  cursor: pointer !important;
}

.quick-add__submit:hover,
.card .button--primary:hover,
.product-form__submit:hover {
  background: var(--cb-accent) !important;
}

/* ============================================
   COLLECTION / FEATURED COLLECTION SECTION
   ============================================ */
.featured-collection,
.collection-section {
  padding: 56px 0 !important;
}

.collection-list-wrapper,
.featured-collection .grid {
  gap: 2px !important;
  background: var(--cb-gray);
  border: 1.5px solid var(--cb-black);
  border-radius: var(--cb-radius-lg);
  overflow: hidden;
}

.collection-list-wrapper .grid__item,
.featured-collection .grid__item {
  background: var(--cb-white);
}

/* Collection cards */
.collection-card,
.card--category {
  background: var(--cb-white) !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background .2s !important;
}

.collection-card:hover {
  background: var(--cb-black) !important;
}

.collection-card:hover .card__heading,
.collection-card:hover .card__title {
  color: #fff !important;
}

/* ============================================
   DARK / FEATURE SECTIONS
   ============================================ */
.color-inverse,
.color-background-1.gradient,
[class*='color-scheme--inverse'],
.section--dark {
  background: var(--cb-black) !important;
  color: #fff !important;
}

.color-inverse h2,
.color-inverse .title,
[class*='color-scheme--inverse'] h2 {
  color: #fff !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.04em !important;
  font-size: clamp(28px, 4vw, 52px) !important;
}

.color-inverse p,
[class*='color-scheme--inverse'] p {
  color: rgba(255,255,255,.45) !important;
  font-size: 13px !important;
  line-height: 1.75 !important;
}

.color-inverse .button--primary,
[class*='color-scheme--inverse'] .button--primary {
  background: var(--cb-accent) !important;
  color: #fff !important;
  border: none !important;
}

/* ============================================
   IMAGE WITH TEXT / FEATURE STRIPS
   ============================================ */
.image-with-text {
  border: 1.5px solid var(--cb-black) !important;
  border-radius: var(--cb-radius-lg) !important;
  overflow: hidden !important;
}

.image-with-text__content {
  padding: clamp(28px, 4vw, 52px) !important;
}

.image-with-text__heading {
  font-size: clamp(24px, 3.5vw, 42px) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.05em !important;
  line-height: 1 !important;
  font-family: var(--cb-font) !important;
}

/* ============================================
   TESTIMONIALS / REVIEWS SECTION
   ============================================ */
.testimonials-section,
.reviews-section {
  background: var(--cb-white) !important;
  padding: 64px 0 !important;
}

.testimonial,
.review-card {
  background: var(--cb-white) !important;
  border: 1px solid var(--cb-gray) !important;
  border-radius: var(--cb-radius-lg) !important;
  padding: 22px !important;
  transition: box-shadow .2s !important;
}

.testimonial:hover,
.review-card:hover {
  box-shadow: var(--cb-shadow) !important;
}

/* Stars */
.rating,
.review-stars,
.star-rating {
  color: var(--cb-gold) !important;
  font-size: 13px !important;
}

/* ============================================
   EMAIL SIGNUP / NEWSLETTER SECTION
   ============================================ */
.email-signup,
.newsletter,
[class*='newsletter'] {
  background: var(--cb-black) !important;
  color: #fff !important;
  padding: clamp(56px, 7vw, 88px) 24px !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.email-signup::before,
.newsletter::before {
  content: 'JOIN';
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(80px, 18vw, 200px);
  font-weight: 900;
  font-style: italic;
  letter-spacing: -.05em;
  color: rgba(255,255,255,.03);
  pointer-events: none;
  white-space: nowrap;
  font-family: var(--cb-font);
}

.email-signup h2,
.newsletter h2,
[class*='newsletter'] h2 {
  font-size: clamp(24px, 5vw, 52px) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.05em !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
  position: relative;
  z-index: 2;
}

.email-signup p,
.newsletter p {
  color: rgba(255,255,255,.4) !important;
  position: relative;
  z-index: 2;
}

.newsletter__input,
.email-signup input[type='email'],
[class*='newsletter'] input {
  background: #1a1a1a !important;
  border: 1px solid #2e2e2e !important;
  color: #fff !important;
  border-radius: var(--cb-radius) !important;
  padding: 12px 18px !important;
  font-family: var(--cb-font) !important;
  font-size: 13px !important;
  outline: none !important;
  transition: border-color .2s !important;
}

.newsletter__input::placeholder {
  color: rgba(255,255,255,.25) !important;
}

.newsletter__input:focus {
  border-color: #555 !important;
}

.newsletter__button,
.email-signup button[type='submit'],
[class*='newsletter'] button {
  background: var(--cb-accent) !important;
  color: #fff !important;
  border: none !important;
  font-family: var(--cb-font) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 12px 22px !important;
  border-radius: var(--cb-radius) !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

.newsletter__button:hover {
  background: var(--cb-accent-hover) !important;
}

/* ============================================
   FOOTER
   ============================================ */
.footer,
.footer-section,
footer {
  background: var(--cb-black) !important;
  color: rgba(255,255,255,.4) !important;
  border-top: 1.5px solid #1a1a1a !important;
}

.footer__heading,
.footer-block__heading {
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.28) !important;
  margin-bottom: 14px !important;
}

.footer__list a,
.footer-block__list a,
.footer-menu a {
  font-size: 13px !important;
  color: rgba(255,255,255,.38) !important;
  text-decoration: none !important;
  transition: color .2s !important;
  display: block !important;
  padding: 4px 0 !important;
}

.footer__list a:hover,
.footer-block__list a:hover {
  color: #fff !important;
}

.footer__copyright,
.footer-copyright {
  color: rgba(255,255,255,.18) !important;
  font-size: 11px !important;
  border-top: 1px solid #1a1a1a !important;
  padding-top: 14px !important;
}

/* Social icons in footer */
.footer .social-links a,
.footer-social a {
  background: #161616 !important;
  border: 1px solid #2a2a2a !important;
  border-radius: var(--cb-radius) !important;
  color: rgba(255,255,255,.35) !important;
  width: 30px !important;
  height: 30px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all .2s !important;
}

.footer .social-links a:hover,
.footer-social a:hover {
  background: var(--cb-accent) !important;
  border-color: var(--cb-accent) !important;
  color: #fff !important;
}

/* ============================================
   CART DRAWER
   ============================================ */
cart-drawer,
.cart-drawer {
  background: var(--cb-white) !important;
  box-shadow: -4px 0 40px rgba(0,0,0,.18) !important;
}

.cart-drawer__header {
  background: var(--cb-black) !important;
  border-bottom: 1px solid #1e1e1e !important;
}

.cart-drawer__title,
.cart-drawer__header h2 {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  font-style: italic !important;
  letter-spacing: -.02em !important;
  font-family: var(--cb-font) !important;
}

.cart-drawer__close {
  background: rgba(255,255,255,.07) !important;
  border-radius: var(--cb-radius) !important;
  color: rgba(255,255,255,.4) !important;
}

.cart-drawer__close:hover {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
}

.cart-item__title {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--cb-text) !important;
}

.cart-item__price .price {
  font-size: 14px !important;
  font-weight: 700 !important;
}

/* Quantity stepper in cart */
.quantity,
.cart-item__quantity {
  border: 1px solid var(--cb-gray) !important;
  border-radius: var(--cb-radius) !important;
  background: var(--cb-white) !important;
}

/* Cart footer / checkout */
.cart__footer {
  background: var(--cb-off) !important;
  border-top: 1px solid var(--cb-gray) !important;
  padding: 16px 20px !important;
}

.cart__checkout-button,
[name='checkout'] {
  background: var(--cb-black) !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: var(--cb-radius) !important;
  padding: 13px !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

.cart__checkout-button:hover,
[name='checkout']:hover {
  background: var(--cb-accent) !important;
}

/* ============================================
   PRODUCT PAGE
   ============================================ */
.product__title,
.product-single__title {
  font-size: clamp(26px, 3.5vw, 44px) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.04em !important;
  line-height: 1.05 !important;
  color: var(--cb-text) !important;
  font-family: var(--cb-font) !important;
}

.product__price .price {
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: -.04em !important;
}

.product__description {
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: #555 !important;
}

.product-form__submit {
  background: var(--cb-black) !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: var(--cb-radius) !important;
  padding: 14px 24px !important;
  transition: background .2s !important;
  cursor: pointer !important;
}

.product-form__submit:hover {
  background: var(--cb-accent) !important;
}

/* Variant options */
.swatch__label,
.block-swatch .swatch {
  border-radius: var(--cb-radius) !important;
  border: 1.5px solid var(--cb-gray) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  transition: all .2s !important;
}

.swatch__label--selected,
.swatch--active {
  border-color: var(--cb-text) !important;
  background: var(--cb-text) !important;
  color: #fff !important;
}

/* ============================================
   BUTTONS — GLOBAL
   ============================================ */
.button,
.shopify-payment-button__button,
btn {
  font-family: var(--cb-font) !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  border-radius: var(--cb-radius) !important;
  transition: background .2s, color .2s, border-color .2s !important;
  cursor: pointer !important;
}

.button--primary {
  background: var(--cb-accent) !important;
  color: #fff !important;
  border: none !important;
}

.button--primary:hover {
  background: var(--cb-accent-hover) !important;
}

.button--secondary {
  background: transparent !important;
  border: 1.5px solid var(--cb-text) !important;
  color: var(--cb-text) !important;
}

.button--secondary:hover {
  border-color: var(--cb-accent) !important;
  color: var(--cb-accent) !important;
}

/* Shopify Pay button */
.shopify-payment-button__button--branded {
  border-radius: var(--cb-radius) !important;
}

/* ============================================
   RICH TEXT / CONTENT SECTIONS
   ============================================ */
.rich-text h1,
.rich-text h2,
.rich-text h3 {
  font-weight: 900 !important;
  font-style: italic !important;
  letter-spacing: -.04em !important;
  line-height: 1.05 !important;
  font-family: var(--cb-font) !important;
  color: var(--cb-text) !important;
}

.rich-text p {
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: #555 !important;
}

/* ============================================
   MARQUEE / LOGO LIST
   ============================================ */
.logo-list,
.brand-logos {
  border-top: 1.5px solid var(--cb-text) !important;
  border-bottom: 1.5px solid var(--cb-text) !important;
  padding: 14px 0 !important;
  overflow: hidden !important;
  background: var(--cb-white) !important;
}

/* ============================================
   ACCORDION / FAQ
   ============================================ */
.accordion__title,
.faq__title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--cb-text) !important;
  font-family: var(--cb-font) !important;
  border-bottom: 1.5px solid var(--cb-text) !important;
  padding: 16px 0 !important;
}

.accordion__title:hover {
  color: var(--cb-accent) !important;
}

.accordion__panel,
.faq__panel {
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #555 !important;
  padding-bottom: 16px !important;
}

/* ============================================
   TRUST / ICON ROW
   ============================================ */
.trust-bar,
.icon-with-text {
  border-top: 1px solid var(--cb-gray) !important;
  border-bottom: 1px solid var(--cb-gray) !important;
  background: var(--cb-white) !important;
  padding: 14px 0 !important;
}

.icon-with-text__heading {
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: var(--cb-text) !important;
}

.icon-with-text__body {
  font-size: 12px !important;
  color: var(--cb-mid) !important;
}

/* ============================================
   BREADCRUMBS
   ============================================ */
.breadcrumb,
.breadcrumbs {
  font-size: 11.5px !important;
  color: var(--cb-mid) !important;
  letter-spacing: .04em !important;
}

.breadcrumb a,
.breadcrumbs a {
  color: var(--cb-mid) !important;
  text-decoration: none !important;
  transition: color .2s !important;
}

.breadcrumb a:hover {
  color: var(--cb-accent) !important;
}

/* ============================================
   PAGINATION
   ============================================ */
.pagination__item a,
.pagination__item button {
  border: 1.5px solid var(--cb-gray) !important;
  border-radius: var(--cb-radius) !important;
  font-family: var(--cb-font) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--cb-text) !important;
  transition: all .2s !important;
}

.pagination__item--current a,
.pagination__item--current button {
  background: var(--cb-black) !important;
  color: #fff !important;
  border-color: var(--cb-black) !important;
}

.pagination__item a:hover {
  border-color: var(--cb-accent) !important;
  color: var(--cb-accent) !important;
}

/* ============================================
   SEARCH MODAL
   ============================================ */
.search-modal {
  background: var(--cb-black) !important;
}

.search-modal__form {
  background: #1a1a1a !important;
  border-bottom: 1px solid #2a2a2a !important;
}

.search-modal__input {
  background: transparent !important;
  color: #fff !important;
  font-family: var(--cb-font) !important;
  font-size: 15px !important;
  border: none !important;
}

.search-modal__input::placeholder {
  color: rgba(255,255,255,.3) !important;
}

/* ============================================
   COLLECTION PAGE FILTERS
   ============================================ */
.facets__wrapper,
.filter-bar {
  border-bottom: 1.5px solid var(--cb-gray) !important;
  padding: 12px 0 !important;
  background: var(--cb-white) !important;
}

.facet-checkbox input:checked + .facet-checkbox__label,
.facets__label--active {
  font-weight: 700 !important;
  color: var(--cb-accent) !important;
}

.facets__reset {
  color: var(--cb-accent) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

.active-facets__button {
  background: var(--cb-accent-lt) !important;
  color: var(--cb-accent) !important;
  border: none !important;
  border-radius: var(--cb-radius) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* ============================================
   PREDICTIVE SEARCH RESULTS
   ============================================ */
.predictive-search {
  background: var(--cb-black) !important;
  border: 1px solid #2a2a2a !important;
  border-radius: var(--cb-radius-lg) !important;
  box-shadow: 0 8px 40px rgba(0,0,0,.3) !important;
}

.predictive-search__result-group-title {
  font-size: 9.5px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.3) !important;
  padding: 12px 16px 4px !important;
}

.predictive-search__item a {
  color: rgba(255,255,255,.8) !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
  display: block !important;
  transition: background .15s !important;
}

.predictive-search__item a:hover {
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 768px) {
  .banner__heading,
  .slideshow__heading {
    font-size: clamp(30px, 8vw, 48px) !important;
  }

  .card__heading { font-size: 12.5px !important; }
  .price { font-size: 14px !important; }

  .footer { padding: 32px 0 16px !important; }

  .newsletter h2 {
    font-size: clamp(22px, 6vw, 36px) !important;
  }
}

/* ============================================
   CELESTIAL BEAUTY — ACCENT UTILITY CLASSES
   ============================================ */
.cb-accent { color: var(--cb-accent) !important; }
.cb-gold { color: var(--cb-gold-lt) !important; }
.cb-bg-black { background: var(--cb-black) !important; }
.cb-italic-heavy {
  font-style: italic !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
}
