/* 首頁視覺加強：沿用 style-v1 的深藍黑／金色 accent 配色 */
:root {
  --home-glow: rgba(var(--color-accent-rgb), .22);
  --home-glow-soft: rgba(var(--color-accent-rgb), .10);
}

.hero {
  min-height: min(900px, 92vh);
  isolation: isolate;
  background: var(--color-dark);
}
.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 74% 28%, var(--home-glow), transparent 27%),
    linear-gradient(110deg, rgba(13, 23, 32, .92) 0%, rgba(13, 23, 32, .48) 46%, rgba(13, 23, 32, .18) 100%);
  mix-blend-mode: screen;
  opacity: .8;
}
.hero__overlay-bottom {
  z-index: 2;
  background: linear-gradient(180deg, transparent 34%, rgba(13, 23, 32, .28) 58%, var(--color-dark) 100%);
}
.hero__overlay-top {
  z-index: 2;
  background: linear-gradient(180deg, rgba(13, 23, 32, .58), transparent 24%);
}
.hero__content {
  z-index: 4;
}
.hero-tag {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--color-accent);
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: .78rem;
  font-weight: 600;
}
.hero-tag::before {
  content: '';
  width: 38px;
  height: 1px;
  background: var(--color-accent);
  box-shadow: 0 0 18px var(--color-accent);
}
.hero-title {
  max-width: 780px;
  text-wrap: balance;
  text-shadow: 0 10px 40px rgba(0, 0, 0, .42);
}
.hero-desc {
  max-width: 590px;
  color: rgba(220, 232, 242, .78);
  font-size: 1.05rem;
}
.hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.hero .btn-primary,
#cta .btn-primary {
  box-shadow: 0 10px 30px rgba(var(--color-accent-rgb), .22);
}
.hero .btn-primary:hover,
#cta .btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(var(--color-accent-rgb), .34);
}
.hero__dots {
  z-index: 5;
}
.hero__dots button.is-active {
  background: var(--color-accent);
  box-shadow: 0 0 0 5px var(--color-accent-dim), 0 0 18px var(--color-accent);
}

.section {
  position: relative;
  overflow: hidden;
}
.section:not(.section--dark)::before {
  content: '';
  position: absolute;
  width: 460px;
  height: 460px;
  top: -190px;
  right: -160px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--home-glow-soft), transparent 68%);
  pointer-events: none;
}
.section-head,
.section-head--center {
  position: relative;
  z-index: 1;
}
.section-label {
  letter-spacing: .2em;
  color: var(--color-accent);
}
.section-header-desc,
.features-desc {
  color: var(--color-muted);
}
.about-grid,
.features-grid,
.categories-layout,
.stats-grid,
.logo-marquee,
.fp-carousel,
.nc-carousel {
  position: relative;
  z-index: 1;
}
.about-photo--main,
.about-photo--accent {
  border: 1px solid rgba(var(--color-accent-rgb), .34);
  box-shadow: 0 22px 60px rgba(0, 0, 0, .3), 0 0 0 8px rgba(var(--color-accent-rgb), .035);
}
.about-right {
  padding: clamp(24px, 4vw, 52px);
  border: 1px solid var(--color-border);
  background: linear-gradient(145deg, rgba(29, 45, 63, .86), rgba(13, 23, 32, .7));
  box-shadow: var(--shadow-card);
  backdrop-filter: blur(10px);
}
.feature-node,
.category-card,
.product-card,
.news-card,
.stat-item {
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.feature-node:hover,
.category-card:hover,
.product-card:hover,
.news-card:hover,
.stat-item:hover {
  transform: translateY(-8px);
  border-color: rgba(var(--color-accent-rgb), .58);
  box-shadow: 0 18px 44px rgba(0, 0, 0, .34), 0 0 24px var(--home-glow-soft);
}
.cta-bg {
  filter: saturate(1.12) contrast(1.04);
}
#cta::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 50% 42%, var(--home-glow-soft), transparent 46%);
}
#cta .cta-content {
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  .hero { min-height: 760px; }
  .hero-title { font-size: clamp(2.5rem, 12vw, 4rem); }
  .hero-desc { font-size: .96rem; }
  .hero-buttons .btn { width: 100%; }
  .about-right { padding: 24px; }
}
