/* ===== GLOBAL POLISH ===== */

/* Smooth page entry */
body { animation: fadeIn .4s ease; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

/* Selection color */
::selection { background: rgba(212,175,55,0.2); color: var(--white); }

/* Nav underline on active */
.nav__link.active { color: var(--white); }
.nav__link.active::after { width: 100%; }

/* Mobile nav styles */
.nav-mobile {
  position: fixed; inset: 0;
  background: rgba(0,0,0,0.97);
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-8);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--transition-base);
}
.nav-mobile.open { opacity: 1; pointer-events: all; }
.nav-mobile a {
  font-family: var(--font-serif);
  font-size: var(--size-2xl);
  font-weight: var(--weight-light);
  color: var(--white);
  transition: color var(--transition-fast);
  letter-spacing: var(--tracking-wide);
}
.nav-mobile a:hover { color: var(--gold); }
.nav-mobile__close {
  position: absolute;
  top: var(--space-6); right: var(--space-8);
  font-size: var(--size-xl);
  cursor: pointer;
  color: var(--silver);
  transition: color var(--transition-fast);
}
.nav-mobile__close:hover { color: var(--white); }

/* ===== SECTION RHYTHM ===== */
.section + .section { border-top: 1px solid rgba(255,255,255,0.04); }

/* ===== ENHANCED BUTTONS ===== */
.btn { border-radius: 0; }
.btn--primary {
  position: relative;
  overflow: hidden;
}
.btn--primary::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent);
  transition: left .6s ease;
}
.btn--primary:hover::before { left: 100%; }

/* ===== ENHANCED CARDS ===== */
.value-block {
  position: relative;
  overflow: hidden;
}
.value-block::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 2px; height: 0;
  background: var(--gold);
  transition: height var(--transition-luxury);
}
.value-block:hover::before { height: 100%; }

/* ===== REFINED SPACING ===== */
h1 + p, h2 + p { margin-top: var(--space-4); }
p + .btn, p + .divider { margin-top: var(--space-6); }

/* ===== SCROLL INDICATOR ===== */
.scroll-progress {
  position: fixed;
  top: 0; left: 0;
  height: 2px;
  background: var(--gold);
  z-index: 2000;
  transition: width .1s;
}

/* ===== LUXURY LINK STYLE ===== */
.luxury-link {
  font-size: var(--size-xs);
  letter-spacing: var(--tracking-widest);
  text-transform: uppercase;
  color: var(--gold);
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  transition: gap var(--transition-fast);
}
.luxury-link::after { content: '→'; }
.luxury-link:hover { gap: var(--space-5); }

/* ===== ENHANCED PRODUCT CARD ===== */
.product-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: var(--gold);
  transform: scaleX(0);
  transition: transform var(--transition-luxury);
}
.product-card:hover::after { transform: scaleX(1); }

/* ===== FORM POLISH ===== */
.form-input:focus {
  box-shadow: 0 0 0 1px rgba(212,175,55,0.2);
}

/* ===== RESPONSIVE FIXES ===== */
@media (max-width: 768px) {
  .section { padding: var(--space-16) 0; }
  .section--lg { padding: var(--space-20) 0; }

  .hero { min-height: 90vh; padding-bottom: var(--space-16); }
  .hero__gem { display: none; }

  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }

  .footer__grid { grid-template-columns: 1fr 1fr; }
  .footer__brand { grid-column: 1/-1; }

  .btn--lg { padding: var(--space-4) var(--space-8); }
}

@media (max-width: 480px) {
  .hero__cta { flex-direction: column; }
  .hero__cta .btn { width: 100%; justify-content: center; }
  .footer__grid { grid-template-columns: 1fr; }
}

/* ===== PRINT ===== */
@media print {
  .nav, .footer, .hero__scroll, .btn { display: none !important; }
  body { background: white; color: black; }
}
