:root {
  --wine: #482b56;
  --rose: #a65bea;
  --cream: #f8f3fc;
  --ink: #29212f;
  --line: #e6d9ee;
}

.announcement {
  background: linear-gradient(105deg, #35253d, #5e3c70, #9756bc, #482b56);
  background-size: 260% 100%;
  box-shadow: 0 1px 0 #302038;
}

.store-header .utility {
  background: linear-gradient(90deg, #f4eef8, #fcfafe 50%, #efe6f5);
  border-color: #e6d9ee;
}

.store-header .utility > span { color: #5e3c70; }
.store-header .brand-row input { background: #f4eef8; color: #2d2433; }
.store-header .main-nav,
.compact-filter,
.compact-filter > * { border-color: #e6d9ee; }
.store-header .main-nav .sale-link { color: #9854bb; }
.store-header .main-nav a:hover { color: #482b56; border-color: #a65bea; }
.compact-breadcrumb a,
.compact-price b { color: #7d4299; }
.compact-popular,
.compact-popular .compact-card { background: #f0e7f6; }
.compact-photo { background: #ece3f1; }
.card-badge {
  color: #482b56;
  box-shadow: 0 4px 14px rgb(72 43 86 / 9%);
}
.compact-add { border-color: #482b56; background: #482b56; }
.compact-add:hover { background: #653a78; border-color: #653a78; }
.slider-arrow { background: #fcf8fe; color: #482b56; }
.compact-heart.active { color: #9854bb; }
.search-suggestions {
  border-color: #e6d9ee;
  box-shadow: 0 18px 45px rgb(72 43 86 / 15%);
}
.search-suggestions img { background: #f2eaf7; }
.site-toast {
  background: #43294f;
  box-shadow: 0 12px 35px rgb(48 32 56 / 22%);
}
.account-header,
.account-nav,
.account-cards a,
.address-list article,
.order-list article,
.auth-card { border-color: #e6d9ee; }
.account-content button,
.auth-card button { background: #482b56; }
.account-content button:hover,
.auth-card button:hover { background: #653a78; }
.account-shell:not(:has(.account-nav)) {
  background: radial-gradient(circle at 50% 18%, #f2e9f8 0, transparent 42%);
}
.account-shell:not(:has(.account-nav)) .auth-card {
  box-shadow: 0 22px 65px rgb(72 43 86 / 10%);
}
.auth-card > p a { color: #7d4299; }
footer { background: #2f2236; }

.store-header .logo img {
  width: 270px;
  height: 86px;
  max-height: 86px;
  object-fit: contain;
}

.footer-brand img {
  width: 245px;
  height: auto;
  object-fit: contain;
}

.account-header img {
  width: 235px;
  height: 74px;
  object-fit: contain;
}

@media (max-width: 600px) {
  .store-header .logo img {
    width: min(210px, 58vw);
    height: 68px;
  }
  .account-header img {
    width: min(165px, 48vw);
    height: 58px;
  }
}
