:root {
  --ui-card-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  --ui-card-shadow-hover: 0 16px 35px rgba(15, 23, 42, 0.16);
  --ui-accent: #d97706;
  --ui-accent-dark: #b45309;
  --ui-soft-bg: linear-gradient(180deg, #fff 0%, #fff9f1 100%);
}

/* Homepage enhancements */
.banner .slider-item {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--ui-card-shadow);
}
.banner .banner-content {
  background: rgba(0, 0, 0, 0.52);
  backdrop-filter: blur(3px);
  border-radius: 16px;
  padding: 18px 22px;
}

.category { padding-top: 16px; }
.category-item-container {
  gap: 16px;
  padding: 6px 4px 18px;
}
.category-item {
  background: var(--ui-soft-bg);
  border-radius: 18px;
  border: 1px solid rgba(217, 119, 6, 0.16);
  box-shadow: var(--ui-card-shadow);
  transition: transform .2s ease, box-shadow .2s ease;
}
.category-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--ui-card-shadow-hover);
}
.category-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(217, 119, 6, 0.28);
  color: #9a4f05;
  font-weight: 600;
}

.home-bottom-cta {
  margin-top: 38px;
  border-radius: 20px;
  background: linear-gradient(130deg, #111827 0%, #0f172a 45%, #78350f 100%);
  color: #fff;
  padding: 26px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.home-bottom-cta p { color: rgba(255,255,255,.86); margin-top: 6px; }
.home-bottom-cta .cta-links { display: flex; gap: 10px; flex-wrap: wrap; }
.home-bottom-cta a {
  padding: 9px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.35);
  color: #fff;
  font-weight: 600;
}
.home-bottom-cta a:hover { background: rgba(255,255,255,.12); }

/* Category page enhancements */
.category-page-wrapper { background: linear-gradient(180deg, #fff 0%, #fffdf8 100%); }
.category-control-panel {
  margin: 22px 0 30px;
  padding: 18px;
  background: #fff;
  border-radius: 16px;
  border: 1px solid #f0e7da;
  box-shadow: var(--ui-card-shadow);
}
.category-control-grid {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: end;
}
.range-filter-wrap label,
.sort-control label { font-weight: 600; color: #252525; }
.price-range-inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 10px;
}
.price-range-inputs input {
  width: 100%;
  accent-color: var(--ui-accent);
}
.price-range-labels {
  margin-top: 6px;
  display: flex;
  justify-content: space-between;
  font-size: .86rem;
  color: #555;
}
.sort-select {
  border-radius: 999px;
  padding: 10px 14px;
}
.product-count {
  display: inline-flex;
  margin-top: 12px;
  background: #fff7ed;
  color: #7c2d12;
  border: 1px solid #fed7aa;
}
.showcase {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid #f1f1f1;
  transition: transform .2s ease, box-shadow .2s ease;
}
.showcase:hover {
  transform: translateY(-3px);
  box-shadow: var(--ui-card-shadow);
}

@media (max-width: 768px) {
  .category-control-grid { grid-template-columns: 1fr; }
  .home-bottom-cta { flex-direction: column; align-items: flex-start; }
}

/* Homepage hero readability without dark text block */
.banner .banner-content {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.06) 100%);
  border: 1px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.18);
}

.banner .banner-subtitle,
.banner .banner-title,
.banner .banner-text,
.banner .banner-keyword-support {
  color: #111111;
  text-shadow: 0 1px 4px rgba(255, 255, 255, 0.35);
}

/* Curated quick links UI refresh */
.seo-internal-links .container {
  background: radial-gradient(circle at top right, #fff3e0 0%, #ffffff 38%, #fffefb 100%);
  border: 1px solid #f3e3c7;
  border-radius: 20px;
  box-shadow: 0 16px 36px rgba(17, 24, 39, 0.08);
  padding: 28px;
}

.seo-heading-wrap {
  background: #ffffff;
  border: 1px solid #f5e8d2;
  border-radius: 14px;
  padding: 16px 18px;
}

.seo-link-grid {
  gap: 18px;
}

.seo-link-card {
  border: 1px solid #f0dfc0;
  border-radius: 16px;
  box-shadow: 0 10px 22px rgba(17, 24, 39, 0.06);
  transition: transform .2s ease, box-shadow .2s ease;
}

.seo-link-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 28px rgba(17, 24, 39, 0.12);
}

.seo-link-card h3 {
  color: #7c2d12;
  margin-bottom: 14px;
}

.seo-link-card ul {
  gap: 8px;
}

.seo-link-card a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border-radius: 10px;
  font-weight: 500;
  transition: background-color .2s ease, color .2s ease;
}

.seo-link-card a::before {
  content: "↗";
  color: #d97706;
  font-weight: 700;
}

.seo-link-card a:hover {
  background: #fff3dd;
  color: #7c2d12;
  text-decoration: none;
}

/* High-focus trust content redesign */
.home-seo-content-trust {
  margin-top: 10px;
  padding-top: 18px;
}

.home-seo-content-trust .container {
  background: linear-gradient(145deg, #fffdf8 0%, #ffffff 52%, #fff8ee 100%);
  border: 1px solid #f2e3ca;
  border-radius: 20px;
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
  padding: 24px;
}

.home-seo-hero {
  margin-bottom: 18px;
}

.home-seo-kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff2d8;
  border: 1px solid #f7d8a3;
  border-radius: 999px;
  color: #9a3412;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  margin-bottom: 10px;
  padding: 6px 12px;
  text-transform: uppercase;
}

.home-seo-lead {
  color: #374151;
  font-size: 1.02rem;
  line-height: 1.8;
  margin-top: 10px;
  max-width: 88ch;
}

.home-seo-trust-grid {
  display: grid;
  gap: 14px;
}

.home-seo-trust-card {
  background: #ffffff;
  border: 1px solid #f1e3ca;
  border-radius: 14px;
  padding: 16px 18px;
}

.home-seo-trust-card h3 {
  color: #7c2d12;
  font-size: 1rem;
  margin-bottom: 8px;
}

.home-seo-trust-card p {
  margin-bottom: 0;
}

.home-seo-trust-card-contact {
  background: linear-gradient(135deg, #fff7ea 0%, #fff 100%);
  border-color: #efcc90;
}

.home-seo-call-btn {
  display: inline-flex;
  margin-top: 12px;
  border-radius: 999px;
  background: #9a3412;
  color: #fff !important;
  font-weight: 600;
  padding: 9px 14px;
  text-decoration: none !important;
}

.home-seo-call-btn:hover {
  background: #7c2d12;
}

@media (min-width: 992px) {
  .home-seo-trust-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .seo-internal-links .container,
  .home-seo-content-trust .container {
    padding: 16px;
  }

  .seo-heading-wrap {
    padding: 12px;
  }
}
