/* ===== Manifesto ===== */
.manifesto { padding: var(--space-lg) var(--space-md); position: relative; overflow: hidden; }
.manifesto > *:not(.dots) { position: relative; z-index: 2; }
.manifesto-text { font-family: var(--serif); font-size: clamp(1.4rem, 3.5vw, 2.8rem); line-height: 1.15; font-weight: 400; letter-spacing: -0.02em; max-width: 800px; }

/* ===== Prose section ===== */
.prose { padding: var(--space-lg) var(--space-md); }
.prose-text { font-size: var(--text-lg); line-height: 1.7; color: var(--fg-muted); max-width: 960px; }
.prose-text + .prose-text { margin-top: var(--space-sm); }

/* ===== Two-column split ===== */
.split { display: grid; grid-template-columns: 1fr 1fr; }
.split-cell { padding: var(--space-lg) var(--space-md); border-right: var(--border); }
.split-cell:last-child { border-right: none; }
.split-cell .heading { font-family: var(--serif); font-size: var(--text-display); font-weight: 400; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: var(--space-sm); }
.split-cell .body { font-size: var(--text-base); line-height: 1.6; color: var(--fg-muted); }

/* ===== Principles grid ===== */
.principles { display: grid; grid-template-columns: 1fr 1fr 1fr; }
.principle { padding: var(--space-lg) var(--space-md); border-right: var(--border); display: flex; flex-direction: column; gap: var(--space-xs); }
.principle:last-child { border-right: none; }
.principle-title { font-family: var(--serif); font-size: var(--text-display); font-weight: 400; }
.principle-body { font-size: var(--text-base); line-height: 1.6; color: var(--fg-muted); }

/* ===== Contact row ===== */
.contact-links { display: flex; }
.contact-link { flex: 1; padding: var(--space-md); border-right: var(--border); text-decoration: none; color: var(--fg); font-family: var(--serif); font-size: var(--text-lg); transition: background 0.2s; display: flex; justify-content: space-between; align-items: center; }
.contact-link:last-child { border-right: none; }
.contact-link:hover { background: var(--fg-ghost); }
.contact-arrow { font-family: var(--mono); font-size: var(--text-sm); color: var(--fg-muted); }
.contact-link:hover .contact-arrow { color: var(--fg); }

/* ===== About responsive — 1024px ===== */
@media (max-width: 1024px) {
  .split { grid-template-columns: 1fr; }
  .split-cell { border-right: none; border-bottom: var(--border); }
  .split-cell:last-child { border-bottom: none; }
  .principles { grid-template-columns: 1fr; }
  .principle { border-right: none; border-bottom: var(--border); }
  .principle:last-child { border-bottom: none; }
}

/* ===== About responsive — 768px ===== */
@media (max-width: 768px) {
  .manifesto-text { font-size: clamp(1.2rem, 5vw, 1.6rem); }
  .contact-links { flex-direction: column; }
  .contact-link { border-right: none; border-bottom: var(--border); }
  .contact-link:last-child { border-bottom: none; }
}

/* ===== About responsive — 420px ===== */
@media (max-width: 420px) {
  .page-title { font-size: clamp(2rem, 10vw, 3rem); }
}
