/* Atelier Dika — Archival Editorial Monograph Stylesheet */

:root {
  --color-canvas: #11110f;
  --color-canvas-alt: #161614;
  --color-surface-low: #181815;
  --color-surface: #20201d;
  --color-surface-high: #2a2a27;
  --color-surface-highest: #353532;
  --color-border: #302f2b;
  --color-border-subtle: #242421;
  --color-text-primary: #f2efe7;
  --color-text-secondary: #a7a39a;
  --color-text-muted: #6e6b64;
  --color-accent-green: #23483a;
  --color-accent-green-light: #a7cfbd;
  --color-accent-brass: #b39a62;
  --color-accent-brass-light: #dfc388;
}

html {
  scroll-behavior: smooth;
  background-color: var(--color-canvas);
  color: var(--color-text-primary);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  margin: 0;
  padding: 0;
  background-color: var(--color-canvas);
  font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  overflow-x: hidden;
}

/* Custom Minimal Scrollbar */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #11110f;
}
::-webkit-scrollbar-thumb {
  background: #302f2b;
}
::-webkit-scrollbar-thumb:hover {
  background: #b39a62;
}

/* Typography Utility Classes */
.font-serif-editorial {
  font-family: 'Newsreader', Georgia, Cambria, 'Times New Roman', Times, serif;
  font-feature-settings: "liga" 1, "dlig" 1;
}

.font-sans-editorial {
  font-family: 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Hairline rule utility */
.hairline-b {
  border-bottom: 1px solid var(--color-border);
}
.hairline-t {
  border-top: 1px solid var(--color-border);
}
.hairline-l {
  border-left: 1px solid var(--color-border);
}
.hairline-r {
  border-right: 1px solid var(--color-border);
}
.hairline-all {
  border: 1px solid var(--color-border);
}

/* Sharp corner guarantee */
.sharp {
  border-radius: 0px !important;
}

/* Editorial selection */
::selection {
  background-color: #23483a;
  color: #f2efe7;
}

/* Subtle image reveal and hover */
.editorial-img-container {
  overflow: hidden;
  background-color: #181815;
}

.editorial-img {
  transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
}

.group:hover .editorial-img {
  transform: scale(1.025);
}

/* Interactive link underlines */
.hover-underline-brass {
  position: relative;
  text-decoration: none;
}
.hover-underline-brass::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 1px;
  bottom: -2px;
  left: 0;
  background-color: var(--color-accent-brass);
  transform-origin: bottom right;
  transition: transform 0.3s ease-out;
}
.hover-underline-brass:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

/* Subtle pulse dot */
@keyframes softPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.92); }
}

.animate-soft-pulse {
  animation: softPulse 2.4s infinite ease-in-out;
}

/* Active Nav State */
.nav-link.active {
  color: var(--color-text-primary);
  border-bottom: 1px solid var(--color-accent-brass);
}
