/*
 * FCTRYLAB-inspired design layer.
 * Adds sharper typography treatment, structured panels, and stronger motion cues
 * without rewriting page-specific layouts.
 */

:root {
  --fx-ink: #0b0f0d;
  --fx-metal: #121714;
  --fx-sand: #f4f1e9;
  --fx-panel: rgba(255, 255, 255, 0.84);
  --fx-line: rgba(11, 15, 13, 0.14);
  --fx-accent: #c9a84c;
  --fx-accent-soft: rgba(201, 168, 76, 0.18);
}

body {
  background:
    radial-gradient(900px 480px at 14% -8%, rgba(201, 168, 76, 0.1), transparent 62%),
    radial-gradient(680px 380px at 88% -20%, rgba(23, 28, 25, 0.08), transparent 64%),
    var(--fx-sand);
}

nav {
  border-bottom: 1px solid var(--fx-line);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
}

nav.scrolled {
  border-bottom-color: rgba(201, 168, 76, 0.34);
  box-shadow: 0 10px 34px rgba(0, 0, 0, 0.08);
}

.nav-links a {
  font-weight: 600;
  letter-spacing: 0.18em;
}

.hero-title,
.page-hero h1 {
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.hero-subtitle,
.page-hero p {
  max-width: 740px;
  color: rgba(11, 15, 13, 0.78);
}

.hero-cta,
.btn,
button,
.submit-btn,
.cat-tab {
  border-radius: 4px;
  border-width: 1.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
}

.hero-cta:hover,
.btn:hover,
button:hover,
.submit-btn:hover {
  transform: translateY(-2px);
}

.about-grid,
.timeline-category,
.timeline-item,
.bio-section,
.highlight-card,
.art-item,
.gallery-item,
.contact-form,
.social-card,
.info-card {
  background: var(--fx-panel);
  border: 1px solid var(--fx-line);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.timeline-category,
.timeline-item,
.contact-form {
  backdrop-filter: blur(8px);
}

.gallery-label h2,
.page-hero h1,
.section-title {
  position: relative;
}

.gallery-label h2::after,
.section-title::after {
  content: "";
  display: block;
  width: 72px;
  height: 2px;
  margin-top: 0.65rem;
  background: linear-gradient(90deg, var(--fx-accent), transparent);
}

.cat-tab.active,
.hero-cta,
.submit-btn,
.social-card:hover,
.timeline-item:hover {
  border-color: var(--fx-accent);
}

.cat-tab.active,
.submit-btn,
.hero-cta::before,
.btn::before,
button::before {
  background: var(--fx-accent);
}

.lb-topbar,
.lb-filmstrip-wrap {
  border-color: rgba(201, 168, 76, 0.24);
}

.lb-thumb.active {
  border-color: var(--fx-accent);
  box-shadow: 0 0 0 2px var(--fx-accent-soft);
}

.gallery-meta,
.coming-soon {
  border-color: rgba(11, 15, 13, 0.16);
  color: var(--fx-metal);
}

.overlay {
  background: linear-gradient(145deg, rgba(201, 168, 76, 0.14), rgba(10, 14, 12, 0.14));
}

.footer-copy {
  opacity: 0.84;
}

@media (max-width: 768px) {
  .hero-title,
  .page-hero h1 {
    letter-spacing: 0.02em;
  }

}
