/** Shopify CDN: Minification failed

Line 773:24 Unexpected ".404-content"

**/
/* OshiBubbles — Round 13: Filter fix retained + Partners + FULL SWEEP */

/* ============== FILTER FIX ============== */
@media screen and (min-width: 750px) {
  html body .facets-container > menu-drawer.mobile-facets__wrapper,
  html body .facets-container > menu-drawer,
  html body .facets-container > .active-facets.active-facets-mobile,
  html body .facets-container > .product-count.medium-hide,
  html body .facets-container > .medium-hide,
  html body .facets-container > .large-up-hide,
  html body .facets-container .mobile-facets__wrapper,
  html body .facets-container .active-facets-mobile {
    display: none !important;
    visibility: hidden !important;
  }
}
html body .facets-container,
html body div.facets-container {
  display: block !important;
  background: rgba(255,255,255,.95) !important;
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 4px 14px rgba(42,35,74,.08) !important;
  padding: 18px 28px !important;
  margin: 0 0 36px !important;
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
  box-sizing: border-box;
}
html body .facets-container > facet-filters-form,
html body .facets-container > facet-filters-form.facets {
  display: block !important;
  width: 100% !important;
  overflow: visible !important;
  background: transparent !important;
}
html body .facets-container form.facets__form,
html body .facets-container form#FacetFiltersForm,
html body form#FacetFiltersForm {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  grid-template-areas: "filters sort count" !important;
  align-items: center !important;
  column-gap: 24px !important;
  row-gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
}
html body .facets-container form#FacetFiltersForm > .facets__wrapper,
html body .facets-container form.facets__form > .facets__wrapper,
html body form#FacetFiltersForm > div#FacetsWrapperDesktop {
  grid-area: filters !important;
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 12px !important;
  justify-self: start !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
}
html body .facets-container form#FacetFiltersForm > .facet-filters,
html body .facets-container form#FacetFiltersForm > .facet-filters.sorting,
html body .facets-container form.facets__form > .facet-filters,
html body form#FacetFiltersForm > .facet-filters.sorting {
  grid-area: sort !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px 10px !important;
  justify-self: end !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .facets-container form#FacetFiltersForm > .product-count,
html body .facets-container form.facets__form > .product-count,
html body form#FacetFiltersForm > .product-count {
  grid-area: count !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-self: end !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .facets-container form#FacetFiltersForm > .active-facets,
html body .facets-container form.facets__form > .active-facets {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 8px 0 0 !important;
}
html body .facets-container form#FacetFiltersForm > .active-facets:empty,
html body .facets-container form.facets__form > .active-facets:empty {
  display: none !important;
  margin: 0 !important;
}

/* ============== COLLECTION PAGE ============== */
html body .template-collection main,
html body body[class*="template-collection"] main,
html body .collection {
  background: linear-gradient(180deg, #fef6fb 0%, #fafefe 50%, #fbf3fa 100%);
  position: relative;
}
html body .collection .product-grid,
html body .collection .grid {
  gap: 32px !important;
  padding-top: 0 !important;
}
html body .collection .product-card-wrapper {
  transition: transform .35s cubic-bezier(0.4, 0, 0.2, 1);
}
html body .collection .product-card-wrapper .card {
  background: #ffffff !important;
  border-radius: 32px !important;
  box-shadow: 0 14px 36px rgba(42,35,74,.10) !important;
  border: 0 !important;
  overflow: hidden !important;
  padding: 16px 16px 20px !important;
}
html body .collection .product-card-wrapper .card .card__inner,
html body .collection .product-card-wrapper .card .card__media {
  border-radius: 22px !important;
  background: linear-gradient(135deg, #f5e4ef 0%, #e6f6ff 100%) !important;
  margin: 0 0 12px !important;
}
html body .collection .product-card-wrapper .card__information {
  padding: 8px 8px 0 !important;
}
html body .collection .product-card-wrapper .card__heading,
html body .collection .product-card-wrapper .card__heading a {
  font-weight: 800 !important;
  color: #2a234a !important;
  font-size: 1.05rem !important;
  letter-spacing: -.005em;
}
html body .collection .product-card-wrapper:hover .card {
  transform: translateY(-8px) rotate(-.5deg);
  box-shadow: 0 28px 56px rgba(42,35,74,.18) !important;
}

/* Pagination */
html body .pagination-wrapper {
  margin-top: 60px !important;
  display: flex !important;
  justify-content: center !important;
}
html body .pagination__list {
  display: inline-flex !important;
  gap: 6px !important;
  background: rgba(255,255,255,0.95) !important;
  border-radius: 999px !important;
  padding: 6px !important;
  box-shadow: 0 4px 14px rgba(42,35,74,.08) !important;
  list-style: none !important;
}
html body .pagination__item {
  border-radius: 999px !important;
  padding: 8px 16px !important;
  color: #6e5f8b !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
html body .pagination__item:hover {
  background: #f5e4ef !important;
  color: #2a234a !important;
}
html body .pagination__item.pagination__item--current {
  background: linear-gradient(135deg, #c569a0, #eac6e3) !important;
  color: white !important;
}

/* Collection promo + shortcuts */
.oshi-coll-shortcuts { padding: 24px 0; text-align: center; }
.oshi-coll-shortcuts__inner {
  display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 10px;
  padding: 14px 24px;
  background: rgba(255,255,255,.92);
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(42,35,74,.08);
}
.oshi-coll-shortcuts__label {
  font-size: 0.74rem; font-weight: 800; color: #6e5f8b;
  text-transform: uppercase; letter-spacing: 0.14em;
  align-self: center; margin: 0 4px 0 0;
}
.oshi-coll-shortcuts__chip {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 9px 18px; border-radius: 999px;
  background: linear-gradient(135deg, #f5e4ef, #e6f6ff);
  color: #2a234a; font-weight: 700; font-size: 0.9rem;
  text-decoration: none; border: 1.5px solid transparent;
  transition: all .2s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
.oshi-coll-shortcuts__chip:hover {
  background: linear-gradient(135deg, #c569a0, #eac6e3);
  color: white; border-color: #c569a0;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(197,105,160,0.3);
}
.oshi-coll-promo { padding: 0 32px 24px; max-width: 1400px; margin: 0 auto; }
.oshi-coll-promo__inner { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.oshi-coll-promo__cell {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 22px;
  background: rgba(255,255,255,.85);
  border-radius: 18px;
  box-shadow: 0 4px 14px rgba(42,35,74,.06);
}
.oshi-coll-promo__icon { font-size: 1.6rem; flex-shrink: 0; }
.oshi-coll-promo__text { margin: 0; font-weight: 600; font-size: 0.92rem; color: #2a234a; line-height: 1.4; }
@media (max-width: 750px) { .oshi-coll-promo__inner { grid-template-columns: 1fr; } }

@media (max-width: 880px) {
  html body .facets-container form#FacetFiltersForm,
  html body .facets-container form.facets__form {
    grid-template-columns: 1fr !important;
    grid-template-areas: "filters" "sort" "count" !important;
  }
  html body .facets-container form#FacetFiltersForm > .facet-filters,
  html body .facets-container form#FacetFiltersForm > .product-count {
    justify-self: start !important;
  }
}

/* ============== PARTNERS PAGE ============== */
.oshi-partners-hero {
  position: relative;
  padding: clamp(80px, 12vw, 160px) 0 100px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 800px 600px at 12% 20%, rgba(234,198,227,0.65), transparent 60%),
    radial-gradient(ellipse 700px 500px at 88% 80%, rgba(203,240,255,0.65), transparent 60%),
    radial-gradient(ellipse 500px 400px at 50% 100%, rgba(212,244,227,0.45), transparent 70%),
    linear-gradient(165deg, #fef6fb 0%, #f3fafd 50%, #f7eff9 100%);
  text-align: center;
}
.oshi-partners-hero__deco { position: absolute; inset: 0; pointer-events: none; z-index: 1; overflow: hidden; }
.oshi-partners-hero__bubble {
  position: absolute; border-radius: 999px;
  background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.95), rgba(234,198,227,0.5));
  box-shadow: 0 0 40px rgba(255,255,255,0.6), inset 0 0 30px rgba(255,255,255,0.55);
  animation: oshi-partners-float 9s ease-in-out infinite;
}
@keyframes oshi-partners-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-25px); } }
.oshi-partners-hero__sparkle {
  position: absolute;
  font-size: clamp(1.4rem, 2.2vw, 2rem);
  color: #c569a0;
  text-shadow: 0 4px 18px rgba(197,105,160,0.5);
  animation: oshi-partners-sparkle 3s ease-in-out infinite;
}
@keyframes oshi-partners-sparkle { 0%, 100% { transform: scale(1) rotate(0deg); opacity: 0.7; } 50% { transform: scale(1.3) rotate(20deg); opacity: 1; } }
.oshi-partners-hero__container {
  position: relative; z-index: 2;
  max-width: 1100px; margin: 0 auto;
  padding: 0 32px;
}
.oshi-partners-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 10px 24px;
  background: rgba(255,255,255,0.94);
  border-radius: 999px;
  font-size: 0.82rem; font-weight: 800;
  color: #c569a0;
  text-transform: uppercase; letter-spacing: 0.16em;
  margin-bottom: 30px;
  box-shadow: 0 4px 14px rgba(42,35,74,.08);
}
.oshi-partners-hero__eyebrow::before {
  content: ''; width: 8px; height: 8px;
  border-radius: 999px; background: #c569a0;
  animation: oshi-eyebrow-pulse 2s ease-in-out infinite;
}
@keyframes oshi-eyebrow-pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.45; transform: scale(1.6); } }
html body .oshi-partners-hero__title {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: clamp(3.4rem, 9vw, 8rem) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.028em !important;
  color: #2a234a !important;
  margin: 0 0 28px !important;
  font-weight: 400 !important;
}
.oshi-partners-hero__title p { margin: 0; }
.oshi-partners-hero__title em {
  font-style: normal;
  background: linear-gradient(135deg, #c569a0 0%, #9b6fb8 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
.oshi-partners-hero__lede {
  font-size: clamp(1.05rem, 1.8vw, 1.4rem);
  color: #6e5f8b; line-height: 1.55;
  max-width: 720px; margin: 0 auto 44px;
}
.oshi-partners-hero__stats {
  display: inline-flex; gap: 36px;
  padding: 28px 48px;
  background: rgba(255,255,255,0.94);
  border-radius: 999px;
  box-shadow: 0 18px 42px rgba(42,35,74,.10);
  flex-wrap: wrap; justify-content: center;
}
.oshi-partners-hero__stat { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.oshi-partners-hero__stat-num {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif;
  font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1;
  background: linear-gradient(135deg, #c569a0, #9b6fb8);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.oshi-partners-hero__stat-label {
  font-size: 0.74rem; font-weight: 800;
  color: #6e5f8b;
  text-transform: uppercase; letter-spacing: 0.14em;
}
.oshi-partners-how { padding: 90px 0; position: relative; }
.oshi-partners-how__container {
  max-width: 1200px; margin: 0 auto; padding: 0 32px;
  text-align: center;
}
.oshi-partners-how__eyebrow {
  display: inline-block; padding: 8px 20px;
  background: rgba(255,255,255,0.92); border-radius: 999px;
  font-size: 0.78rem; font-weight: 800; color: #c569a0;
  text-transform: uppercase; letter-spacing: 0.16em;
  margin-bottom: 18px;
  box-shadow: 0 4px 14px rgba(42,35,74,.08);
}
html body .oshi-partners-how__heading {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: clamp(2rem, 4.5vw, 3.6rem) !important;
  line-height: 1.05 !important; letter-spacing: -.022em !important;
  color: #2a234a !important; margin: 0 0 56px !important;
  font-weight: 400 !important;
}
.oshi-partners-how__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.oshi-partners-how__step {
  position: relative; padding: 40px 32px;
  background: white; border-radius: 28px;
  box-shadow: 0 14px 36px rgba(42,35,74,.10);
  text-align: left;
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.oshi-partners-how__step:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 56px rgba(42,35,74,.16);
}
.oshi-partners-how__step-num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 56px; height: 56px; border-radius: 999px;
  background: linear-gradient(135deg, #c569a0, #eac6e3);
  color: white;
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif;
  font-size: 1.6rem; margin-bottom: 22px;
  box-shadow: 0 6px 18px rgba(197,105,160,0.35);
}
html body .oshi-partners-how__step-title {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: 1.4rem !important; margin: 0 0 10px !important;
  color: #2a234a !important; letter-spacing: -.012em !important;
}
.oshi-partners-how__step-text {
  margin: 0; color: #6e5f8b;
  line-height: 1.6; font-size: 0.95rem;
}
.oshi-partners-cta {
  padding: 100px 0; position: relative; overflow: hidden;
  background: linear-gradient(135deg, #2a234a 0%, #5b4d8d 100%);
  color: white;
}
.oshi-partners-cta::before, .oshi-partners-cta::after { content: ''; position: absolute; border-radius: 999px; pointer-events: none; }
.oshi-partners-cta::before {
  width: 420px; height: 420px; top: -120px; left: -120px;
  background: radial-gradient(circle at 35% 30%, rgba(234,198,227,0.45), transparent 70%);
}
.oshi-partners-cta::after {
  width: 520px; height: 520px; bottom: -160px; right: -160px;
  background: radial-gradient(circle at 35% 30%, rgba(203,240,255,0.4), transparent 70%);
}
.oshi-partners-cta__inner {
  position: relative; z-index: 2;
  max-width: 800px; margin: 0 auto; padding: 0 32px;
  text-align: center;
}
.oshi-partners-cta__eyebrow {
  display: inline-block; padding: 8px 22px;
  background: rgba(255,255,255,0.18); border-radius: 999px;
  font-size: 0.82rem; font-weight: 800; color: #eac6e3;
  text-transform: uppercase; letter-spacing: 0.16em;
  margin-bottom: 24px;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
html body .oshi-partners-cta__title {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: clamp(2.4rem, 6vw, 5rem) !important;
  line-height: 0.96 !important; letter-spacing: -.025em !important;
  color: white !important; margin: 0 0 20px !important;
  font-weight: 400 !important;
}
.oshi-partners-cta__lede {
  font-size: clamp(1.05rem, 1.6vw, 1.3rem);
  color: rgba(255,255,255,0.88);
  line-height: 1.55; margin: 0 0 36px;
}
.oshi-partners-cta__buttons { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

html body .template-page-partners .collection-list,
html body body[class*="template-page-partners"] .collection-list { padding: 60px 0 !important; }
html body .template-page-partners .collection-list .grid,
html body .template-page-partners .collection-list ul.grid { gap: 24px !important; }
html body .template-page-partners .card-wrapper.collection-card-wrapper {
  transition: transform .35s cubic-bezier(0.4, 0, 0.2, 1);
}
html body .template-page-partners .card-wrapper.collection-card-wrapper:hover {
  transform: translateY(-8px) scale(1.04);
}
html body .template-page-partners .card-wrapper.collection-card-wrapper .card {
  background: white !important; border-radius: 24px !important;
  box-shadow: 0 14px 32px rgba(42,35,74,.10) !important;
  overflow: hidden !important; padding: 0 !important;
}
html body .template-page-partners .card-wrapper.collection-card-wrapper .card .card__inner,
html body .template-page-partners .card-wrapper.collection-card-wrapper .card .card__media {
  border-radius: 0 !important;
  background: linear-gradient(135deg, #f5e4ef 0%, #e6f6ff 100%) !important;
  margin: 0 !important;
}
html body .template-page-partners .card-wrapper.collection-card-wrapper .card__heading,
html body .template-page-partners .card-wrapper.collection-card-wrapper .card__heading a {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: 1.05rem !important; letter-spacing: -.005em !important;
  color: #2a234a !important; text-align: center !important;
  padding: 14px 12px !important;
}
html body .template-page-partners .card-wrapper.collection-card-wrapper:hover .card {
  box-shadow: 0 28px 56px rgba(42,35,74,.18), 0 0 32px rgba(197,105,160,0.18) !important;
}
html body .template-page-partners .collection-list-title,
html body .template-page-partners .section-header__heading,
html body .template-page-partners .collection-list .title {
  text-align: center !important; margin-bottom: 36px !important;
}
html body .template-page-partners .collapsible-content,
html body .template-page-partners .collapsible-content-wrapper {
  padding: 80px 0 !important;
  max-width: 900px; margin: 0 auto;
}
html body .template-page-partners .accordion {
  border-radius: 24px !important; background: white !important;
  margin-bottom: 12px !important; border: 0 !important;
  box-shadow: 0 4px 14px rgba(42,35,74,.06) !important; overflow: hidden;
}
html body .template-page-partners .accordion summary {
  padding: 22px 28px !important;
  font-weight: 700 !important; color: #2a234a !important;
  font-size: 1.05rem;
}
@media (max-width: 750px) {
  .oshi-partners-hero { padding: 60px 0 70px; }
  .oshi-partners-hero__stats { flex-direction: column; gap: 20px; padding: 22px 36px; border-radius: 28px; }
  .oshi-partners-how__steps { grid-template-columns: 1fr; gap: 18px; }
  .oshi-partners-cta { padding: 70px 0; }
}

/* ============================================================
   FULL SWEEP — cart drawer/page, account, login, search, 404, FAQ
   ============================================================ */

/* CART DRAWER */
html body cart-drawer .drawer__inner,
html body .cart-drawer .drawer__inner {
  background: linear-gradient(180deg, #fef6fb 0%, #ffffff 50%, #f7eff9 100%) !important;
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: -20px 0 60px rgba(42,35,74,0.12);
}
html body .drawer__header,
html body .cart-drawer__header {
  border-bottom: 1px solid rgba(42,35,74,0.08) !important;
  padding: 26px 30px !important;
  background: rgba(255,255,255,0.85) !important;
}
html body .drawer__heading {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: 1.7rem !important;
  color: #2a234a !important;
  font-weight: 400 !important;
  margin: 0 !important;
}
html body .drawer__close {
  border-radius: 999px !important;
  background: rgba(42,35,74,0.06) !important;
  border: 0 !important;
  width: 40px !important;
  height: 40px !important;
  transition: background .2s;
}
html body .drawer__close:hover { background: rgba(197,105,160,0.18) !important; }

html body .cart-items {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
html body .cart-item,
html body cart-items .cart-item {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(42,35,74,0.08) !important;
  padding: 18px 0 !important;
  margin: 0 30px !important;
}
html body .cart-item__media,
html body .cart-item__image-container {
  border-radius: 16px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #f5e4ef, #e6f6ff) !important;
}
html body .cart-item__name,
html body .cart-item__name a {
  color: #2a234a !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  font-size: 1rem !important;
  letter-spacing: -.005em !important;
}
html body .cart-item__details,
html body .cart-item__details .product-option {
  color: #6e5f8b !important;
  font-size: 0.85rem !important;
}
html body .cart-item .price,
html body .cart-item__price-wrapper .price-item {
  font-weight: 800 !important;
  color: #2a234a !important;
  font-size: 1rem !important;
}
html body .cart-item .quantity {
  border-radius: 999px !important;
  border: 1.5px solid rgba(42,35,74,0.16) !important;
  background: white !important;
  overflow: hidden !important;
  height: 42px !important;
}
html body .cart-item .quantity__button {
  border: 0 !important;
  background: transparent !important;
  color: #2a234a !important;
  cursor: pointer;
}
html body .cart-item .quantity__button:hover { background: #f5e4ef !important; }
html body .cart-remove-button .button,
html body cart-remove-button .button {
  background: transparent !important;
  color: #c569a0 !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 6px 10px !important;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}
html body .cart-remove-button .button:hover {
  color: #2a234a !important;
  background: #f5e4ef !important;
  transform: none !important;
}
html body .cart-drawer__footer,
html body .cart__footer {
  background: rgba(255,255,255,0.96) !important;
  border-top: 1px solid rgba(42,35,74,0.08) !important;
  padding: 24px 30px !important;
  border-radius: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  box-shadow: 0 -8px 24px rgba(42,35,74,0.05) !important;
}
html body .totals,
html body .cart__total-amount {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  color: #2a234a !important;
}
html body .totals__total-value {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: 1.8rem !important;
  background: linear-gradient(135deg, #c569a0, #9b6fb8);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 400 !important;
}
html body .cart__ctas,
html body .cart-drawer__footer .cart__ctas {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
html body .cart__ctas .button,
html body .cart-drawer__footer .button,
html body .cart__checkout-button {
  width: 100% !important;
  font-size: 0.95rem !important;
  padding: 18px 36px !important;
}
html body .cart__warnings,
html body .cart-drawer__warnings {
  text-align: center !important;
  padding: 60px 24px !important;
}
html body .cart__empty-text {
  font-family: var(--font-heading-family), 'Poetsen One', system-ui, sans-serif !important;
  font-size: 1.6rem !important;
  color: #2a234a !important;
  margin-bottom: 16px !important;
}

/* ============== ACCOUNT / LOGIN / REGISTER ============== */
html body .customer {
  background: linear-gradient(180deg, #fef6fb 0%, #ffffff 60%, #f7eff9 100%);
  min-height: 60vh;
  padding: 80px 20px !important;
  position: relative;
}
html body .customer h1,
html body .customer .title {
  font-size: clamp(2.2rem, 4vw, 3.6rem) !important;
  text-align: center !important;
  margin-bottom: 32px !important;
  color: #2a234a !important;
}
html body .customer .field,
html body .customer__login-form .field,
html body .customer__register-form .field {
  margin-bottom: 16px !important;
  position: relative !important;
}
html body .customer input[type="text"],
html body .customer input[type="email"],
html body .customer input[type="password"],
html body .customer input[type="tel"],
html body .customer textarea {
  border-radius: 16px !important;
  border: 1.5px solid rgba(42,35,74,0.16) !important;
  background: white !important;
  padding: 16px 20px !important;
  font-size: 1rem !important;
  color: #2a234a !important;
  width: 100% !important;
  transition: border-color .2s, box-shadow .2s !important;
}
html body .customer input:focus {
  border-color: #c569a0 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(197,105,160,0.15) !important;
}
html body .customer label,
html body .customer .field__label {
  font-weight: 700 !important;
  color: #2a234a !important;
  font-size: 0.85rem !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
}
html body .customer__login-form,
html body .customer__register-form,
html body .login,
html body .register,
html body .customer .form,
html body main .login,
html body main .register {
  max-width: 480px !important;
  margin: 0 auto !important;
  background: white !important;
  padding: 44px !important;
  border-radius: 32px !important;
  box-shadow: 0 22px 48px rgba(42,35,74,0.10) !important;
  border: 0 !important;
}
html body .customer__login-form .button,
html body .customer__register-form .button,
html body .login .button,
html body .register .button {
  width: 100% !important;
  margin-top: 8px !important;
}
html body .customer .pxu-form__forgot-password,
html body .customer p a {
  color: #c569a0 !important;
  font-weight: 700 !important;
}
html body .customer__account .account__sidebar {
  background: white !important;
  border-radius: 28px !important;
  padding: 28px !important;
  box-shadow: 0 14px 36px rgba(42,35,74,0.08) !important;
  border: 0 !important;
}
html body .account__order-history,
html body .customer .order-history {
  background: white;
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 10px 28px rgba(42,35,74,0.06);
  margin-top: 24px;
}

/* ============== SEARCH PAGE ============== */
html body .template-search main {
  background: linear-gradient(180deg, #fef6fb 0%, #ffffff 60%, #f7eff9 100%);
  padding: 60px 0 80px !important;
}
html body .search,
html body .search-page {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px !important;
}
html body .search__input,
html body input[type="search"],
html body .template-search input.field__input {
  background: white !important;
  border: 1.5px solid rgba(42,35,74,0.16) !important;
  border-radius: 999px !important;
  padding: 18px 28px !important;
  font-size: 1.1rem !important;
  width: 100% !important;
  color: #2a234a !important;
  transition: border-color .2s, box-shadow .2s;
}
html body .search__input:focus,
html body input[type="search"]:focus {
  border-color: #c569a0 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 4px rgba(197,105,160,0.15) !important;
}
html body .template-search h1,
html body .search h1 {
  text-align: center !important;
  margin-bottom: 36px !important;
}
html body .template-search .product-grid {
  gap: 24px !important;
}

/* ============== 404 PAGE ============== */
html body .template-404 main,
html body main #shopify-section-404,
html body section[class*="404"] {
  background: linear-gradient(180deg, #fef6fb 0%, #ffffff 60%, #f7eff9 100%);
  text-align: center !important;
  padding: 100px 20px !important;
  position: relative;
  overflow: hidden;
}
html body .template-404 .404-content,
html body .template-404 main h1 {
  font-size: clamp(4rem, 12vw, 10rem) !important;
  background: linear-gradient(135deg, #c569a0, #9b6fb8);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 16px !important;
  font-weight: 400 !important;
}
html body .template-404 main p {
  color: #6e5f8b !important;
  font-size: 1.2rem !important;
  margin-bottom: 28px !important;
}

/* ============== STATIC PAGES (About, FAQ, Contact) ============== */
html body .template-page main,
html body body[class*="template-page"]:not([class*="template-page-partners"]) main {
  background: linear-gradient(180deg, #fef6fb 0%, #ffffff 50%, #f7eff9 100%);
}
html body .template-page .page-width--narrow .main-page-title {
  text-align: center !important;
  margin-bottom: 24px !important;
  font-size: clamp(2.4rem, 5vw, 4.4rem) !important;
}
html body .template-page .rte {
  font-size: 1.08rem !important;
  line-height: 1.7 !important;
  color: #4a4068 !important;
}
html body .template-page .rte h2,
html body .template-page .rte h3 {
  margin-top: 1.6em !important;
  margin-bottom: 0.6em !important;
}
html body .template-page .rte a {
  color: #c569a0 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* FAQ collapsible content polish (global) */
html body .accordion {
  border-radius: 24px !important;
  background: white !important;
  margin-bottom: 12px !important;
  border: 0 !important;
  box-shadow: 0 6px 18px rgba(42,35,74,0.06) !important;
  overflow: hidden;
  transition: box-shadow .2s;
}
html body .accordion:hover {
  box-shadow: 0 14px 32px rgba(42,35,74,0.10) !important;
}
html body .accordion summary {
  padding: 22px 28px !important;
  font-weight: 700 !important;
  color: #2a234a !important;
  font-size: 1.05rem;
  cursor: pointer;
}
html body .accordion summary:hover { background: rgba(245,228,239,0.4) !important; }
html body .accordion[open] summary { background: rgba(245,228,239,0.6) !important; border-bottom: 1px solid rgba(42,35,74,0.06) !important; }
html body .accordion__content {
  padding: 22px 28px !important;
  color: #4a4068 !important;
  line-height: 1.7 !important;
}
