/* Portfolio theme guard: keep the established dark neutral palette and Inter typography. */
:root {
  color-scheme: dark;
  --bg: #090a0b;
  --surface: #101112;
  --surface-soft: #151617;
  --ink: #f1f0eb;
  --muted: #8a8a87;
  --dim: #555654;
  --line: rgba(241, 240, 235, .15);
  --accent: #aeb9a9;
}

html,
body {
  background: var(--bg);
  color: var(--ink);
  font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

/* Prevent browser link-history/default colours from leaking into the design. */
a,
a:link,
a:visited {
  color: inherit;
}

.identity,
.identity:link,
.identity:visited,
.identity strong,
.project-open,
.project-open:link,
.project-open:visited,
.project-card-copy h2,
.about-introduction h1,
.about-directory-column h2,
.about-section-heading h2,
#viewer-title,
.project-story-copy h3 {
  color: var(--ink);
}

.site-header nav a,
.site-header nav a:link,
.site-header nav a:visited,
footer a,
footer a:link,
footer a:visited,
.intro-copy,
.project-card-meta,
.project-card-summary,
.project-summary,
.project-story-copy > p:not(.project-eyebrow),
.project-story-copy li {
  color: var(--muted);
}

.site-header nav a:hover,
.site-header nav a:focus-visible,
.site-header nav a[aria-current='page'],
footer a:hover,
footer a:focus-visible {
  color: var(--ink);
}

.mutating-word {
  color: var(--accent);
}

.viewer,
.viewer::backdrop {
  background: var(--bg);
  color: var(--ink);
}

/* Portfolio readability: 12% larger project story copy across all case studies. */
.project-story-copy h3 {
  font-size: clamp(38px, 5.04vw, 76px);
}

.project-story-copy > p:not(.project-eyebrow) {
  font-size: 16.8px;
}

.project-story-copy li {
  font-size: clamp(16.8px, 1.29vw, 19px);
  line-height: 1.58;
}

.project-story-copy li + li {
  margin-top: .42em;
}

@media (max-width: 600px) {
  .project-story-copy h3 {
    font-size: 44.8px;
  }
}
