/* Warm Editorial: page-specific styles layered over the shared utility CSS. */
.editorial {
  --paper: #faf7f0;
  --surface: #fffdf8;
  --ink: #292622;
  --muted: #625d55;
  --accent: #a6462d;
  --line: #ded7cc;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, sans-serif;
}
.editorial .glass-effect { background: var(--surface); backdrop-filter: none; }
.editorial .wide-shell { max-width: 1200px; background: transparent; border: 0; border-radius: 0; }
.wide-layout { width: 100%; }
.editorial h1, .links-section h2 { font-family: "Source Serif 4", Georgia, serif; }
.editorial h1 { font-weight: 500; letter-spacing: -0.04em; }
.editorial .text-gradient { color: var(--ink); background: none; }
.editorial .text-white, .editorial .text-gray-200, .editorial .text-gray-300 { color: var(--ink); }
.editorial .text-gray-400 { color: var(--muted); }
.editorial p.text-gray-200 { color: #46413a; }
.editorial .role-badge {
  display: inline-flex;
  padding: 0.5rem 0;
  margin-bottom: 1rem;
  color: var(--accent);
  font-size: 0.875rem;
  font-weight: 600;
}
.editorial img { border: 1px solid var(--line); box-shadow: none; }
.sidebar-links > a {
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent !important;
  padding: 1rem 0;
}
.sidebar-links > a:hover span { color: var(--accent) !important; }
.capability-grid > div { border: 1px solid var(--line); border-radius: 4px; box-shadow: none; }
.capability-grid > div:hover { border-color: #b5a899; }
.capability-grid h2 { color: var(--ink); }
.capability-grid p { color: var(--muted) !important; }
.contact-actions { display: flex; flex-wrap: wrap; gap: 1rem; }
.contact-actions > a {
  justify-content: center;
  text-align: center;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
  border: 1px solid var(--accent);
  background-image: none;
  box-shadow: none;
  transform: none;
}
.editorial .contact-primary { background: var(--accent); color: #fffdf8; }
.editorial .contact-primary:hover { background: #8d3924; border-color: #8d3924; }
.editorial .mentorship-cta { color: var(--accent); background: transparent; }
.editorial .mentorship-cta:hover { background: #f1e7dc; }
.contact-actions a span { margin: 0; }
.links-section { margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid var(--line); scroll-margin-top: 2rem; }
.links-section h2 { font-size: 1.75rem; font-weight: 500; letter-spacing: -0.02em; }
.links-intro { color: var(--muted); font-size: 0.875rem; margin: 0.5rem 0 1.25rem; }
.link-groups { display: grid; }
.link-group { border-bottom: 1px solid var(--line); padding: 1rem 0; }
.link-group-title { margin: 0 0 0.75rem; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted); }
.link-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem 1rem; }
.profile-link { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 0.625rem 0.75rem; border-radius: 4px; border: 1px solid var(--line); color: var(--ink); font-size: 0.875rem; background: var(--surface); }
.profile-link:hover { color: var(--accent); border-color: var(--accent); background: #f4ede3; }
.profile-link span:last-child { color: var(--accent); }
.editorial a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; box-shadow: none; }
.editorial footer { border-color: var(--line); }
@media (min-width: 768px) {
  .editorial .wide-shell { padding: 2rem; }
  .wide-layout { grid-template-columns: 220px minmax(0, 1fr); gap: 2rem; }
  .wide-layout > div { grid-column: auto; min-width: 0; }
  .sidebar-links { padding-right: 1rem; }
}
@media (min-width: 768px) and (max-width: 959px) {
  .capability-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 1100px) {
  .link-group { display: grid; grid-template-columns: 125px minmax(0, 1fr); gap: 1rem; align-items: start; }
  .link-group-title { padding-top: 0.75rem; margin: 0; }
}
@media (max-width: 479px) {
  .link-list { grid-template-columns: minmax(0, 1fr); }
  .contact-actions > a { width: 100%; padding-left: 1rem; padding-right: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .editorial * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}
