/* Base reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Page background */
body {
  font-family: "Courier New", Courier, monospace;
  background-color: #fdfaf3;
  /* paper-like */
  color: #111;
  line-height: 1.8;
}

.featured-projects h2 {
  font-weight: normal;
}


.featured-projects ul {
  list-style: none;
  /* removes bullets */
  padding-left: 0;
  /* removes default left padding */
  margin-left: 0;
  /* optional: removes extra margin */
}



/* Layout */
.page {
  max-width: 800px;
  margin: 80px auto;
  padding: 40px;
}

/* Header */
.header h1 {
  font-size: 2.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
}

.subtitle {
  font-size: 0.9rem;
  color: #555;
  margin-top: 5px;
}

/* Content */
.content {
  margin-top: 40px;
}

.content p {
  margin-bottom: 24px;
}

/* Navigation */
.nav {
  margin-top: 40px;
}

.nav a {
  display: inline-block;
  margin-right: 20px;
  text-decoration: none;
  color: #111;
  border-bottom: 1px solid transparent;
}

.nav a:hover {
  border-bottom: 1px solid #111;
}

/* Footer */
.footer {
  margin-top: 80px;
  font-size: 0.8rem;
  color: #555;
}

/* Table of Contents */
.toc ul {
  list-style: none;
  /* removes bullets */
  padding-left: 0;
  /* removes default left padding */
  margin-left: 0;
  /* optional: removes extra margin */
}

.toc li {
  margin-bottom: 0.5rem;
  /* spacing between items */
}

.toc a {
  text-decoration: none;

}

.toc a:hover {
  text-decoration: underline;
}

.toc h2 {
  font-weight: normal;
}

/* Project todo */


/* Horizontal scrolling gallery */
.gallery-grid {
  display: flex;
  gap: 2rem;
  overflow-x: auto;
  padding-bottom: 1rem;

  /* smooth scrolling */
  scroll-behavior: smooth;
}

/* Hide scrollbar (optional, still scrollable) */
.gallery-grid::-webkit-scrollbar {
  height: 6px;
}

.gallery-grid::-webkit-scrollbar-track {
  background: transparent;
}

.gallery-grid::-webkit-scrollbar-thumb {
  background: #999;
}

/* Gallery items */
.gallery-grid figure {
  min-width: 260px;
  /* controls item width */
  flex-shrink: 0;
}

.gallery-grid img {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid #ccc;
}

/* Caption */
.gallery-grid figcaption {
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: #555;
}