/* Phase 06: additional editorial content. Spacing follows a 4/8px rhythm.
   Roomy negative space and narrow text lines give a 70/30-inspired hierarchy;
   the ratio is a visual heuristic, not a literal screen-area measurement. */
:root {
  --kv6-s1:4px;
  --kv6-s2:8px;
  --kv6-s3:12px;
  --kv6-s4:16px;
  --kv6-s6:24px;
  --kv6-s8:32px;
  --kv6-s10:40px;
  --kv6-s12:48px;
  --kv6-s16:64px;
  --kv6-s20:80px;
  --kv6-navy:#16382c;
  --kv6-muted:#456153;
  --kv6-rule:#dce6df;
}
.kv6-editorial {
  display:block;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:clamp(var(--kv6-s12),6vw,var(--kv6-s20)) var(--kv6-s6);
  box-sizing:border-box;
  color:#24362d;
  font-size:16px;
  line-height:1.75;
  overflow-wrap:break-word;
}
.kv6-editorial__inner {
  max-width:744px;
  margin:0;
}
.kv6-editorial h2 {
  margin:var(--kv6-s16) 0 var(--kv6-s6);
  padding-top:var(--kv6-s8);
  border-top:1px solid var(--kv6-rule);
  font-size:clamp(24px,2.75vw,32px);
  line-height:1.26;
  letter-spacing:-.025em;
  color:var(--kv6-navy);
  font-weight:700;
  text-wrap:balance;
}
.kv6-editorial h2:first-child {
  margin-top:0;
  padding-top:0;
  border-top:0;
}
.kv6-editorial h3 {
  margin:var(--kv6-s10) 0 var(--kv6-s4);
  font-size:20px;
  line-height:1.35;
  color:var(--kv6-navy);
}
.kv6-editorial p {
  margin:0 0 var(--kv6-s6);
  max-width:74ch;
}
.kv6-editorial p + p { margin-top:var(--kv6-s4); }
.kv6-editorial a { color:#227049; text-underline-offset:3px; }
.kv6-editorial a:hover { color:#164d32; }
.kv6-editorial :focus-visible { outline:2px solid #227049; outline-offset:4px; }
.kv6-page-editorial-section {
  border-top:1px solid var(--kv6-rule);
  background:transparent;
}
.kv6-page-editorial-section .kv6-editorial { padding-top:var(--kv6-s16); }
.kv6-list-intro {
  max-width:66ch;
  margin:0 0 var(--kv6-s12);
  color:var(--kv6-muted);
  font-size:18px;
  line-height:1.65;
}
.kv6-list-after { margin-top:var(--kv6-s16); border-top:1px solid var(--kv6-rule); }
.kv6-list-after .kv6-editorial { padding-left:0; padding-right:0; }
/* Inline editor content appears in the existing layout without forcing card widths. */
.dce-reading-main .kv6-editorial,
.kv4-intro .kv6-editorial,
.dce-editorial .kv6-editorial { padding-left:0; padding-right:0; }
/* The homepage keeps all original sections and adds an editorial continuation. */
body.home .kv6-editorial { margin-top:var(--kv6-s8); }
@media (min-width: 1120px) {
  .kv6-editorial__inner { max-width:744px; }
}
@media (max-width: 767px) {
  .kv6-editorial { padding:var(--kv6-s12) var(--kv6-s4); font-size:16px; line-height:1.7; }
  .kv6-editorial h2 { margin-top:var(--kv6-s12); padding-top:var(--kv6-s6); font-size:24px; }
  .kv6-editorial p { margin-bottom:var(--kv6-s6); }
  .kv6-list-after { margin-top:var(--kv6-s12); }
  .kv6-page-editorial-section .kv6-editorial { padding-top:var(--kv6-s12); }
}

/* KIBALE_PHASE07_LAYOUT_START */
/* Kibale Ventures: Phase 07 editorial hierarchy and responsive spacing.
   4/8px base; 70/30 is a qualitative visual balance, not literal viewport coverage. */
:root {
  --kv7-1: 4px; --kv7-2: 8px; --kv7-3: 12px; --kv7-4: 16px;
  --kv7-6: 24px; --kv7-8: 32px; --kv7-10: 40px; --kv7-12: 48px;
  --kv7-14: 56px; --kv7-16: 64px; --kv7-20: 80px;
  --kv7-ink: #173c31; --kv7-body:#283c34; --kv7-muted: #51665b;
  --kv7-border: #dee9e1; --kv7-background: #f6faf7;
}
.kv6-editorial.kv7-editorial {
  width: 100%; max-width: 1248px; margin-inline: auto;
  padding: clamp(48px,6vw,80px) clamp(16px,3vw,32px);
  box-sizing: border-box; color: var(--kv7-body);
}
.kv6-editorial.kv7-editorial .kv6-editorial__inner { max-width: none; width:100%; }
.kv7-editorial .kv7-chapter {
  display: block; margin: 0; padding: var(--kv7-16) 0;
  border-bottom: 1px solid var(--kv7-border);
}
.kv7-editorial .kv7-chapter:first-child { padding-top: 0; }
.kv7-editorial .kv7-chapter:last-child { border-bottom:0; padding-bottom:0; }
.kv7-editorial .kv7-chapter__copy { max-width: 76ch; min-width: 0; margin-inline: auto; }
.kv7-editorial .kv7-chapter--media {
  display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);
  align-items:center; gap: clamp(32px,5vw,80px);
  padding-block: var(--kv7-20);
}
.kv7-editorial .kv7-chapter--media .kv7-chapter__copy { width:100%; max-width: 70ch; }
.kv7-editorial .kv7-chapter--media:nth-child(even) .kv7-chapter__copy { order:2; }
.kv7-editorial .kv7-chapter--media:nth-child(even) .kv7-figure { order:1; }
.kv7-editorial .kv7-chapter h2 {
  margin: 0 0 var(--kv7-6); padding: 0; border:0; color:var(--kv7-ink);
  font-size:clamp(24px,2.6vw,34px); line-height:1.24; font-weight:700;
  text-wrap:balance; letter-spacing:-.025em; max-width:30ch;
}
.kv7-editorial .kv7-chapter h3 {
  margin:var(--kv7-8) 0 var(--kv7-3); color:var(--kv7-ink);
  font-size:clamp(18px,1.65vw,22px); line-height:1.35;
  font-weight:650; letter-spacing:-.01em; max-width:48ch;
}
.kv7-editorial .kv7-chapter p {
  margin:0 0 var(--kv7-6); max-width:72ch;
  font-size:clamp(16px,1.15vw,17px); line-height:1.76;
}
.kv7-editorial .kv7-chapter p:last-child { margin-bottom:0; }
.kv7-editorial .kv7-figure { width:100%; margin:0; align-self: center; min-width:0; }
.kv7-editorial .kv7-figure img {
  display:block; width:100%; height:auto; max-height:460px;
  object-fit:cover; border-radius: 20px 4px 20px 4px;
  aspect-ratio: 5 / 4; background:var(--kv7-background);
}
.kv7-editorial .kv7-figure figcaption {
  color:var(--kv7-muted); font-size:13px; line-height:1.55;
  max-width:45ch; margin-top:var(--kv7-3);
}
.kv7-editorial .kv7-chapter a { text-decoration-thickness:1px; text-underline-offset:3px; }
.kv7-editorial .kv7-chapter a:focus-visible {
  outline:2px solid #227049; outline-offset:4px;
}
@media (max-width: 900px) {
  .kv7-editorial .kv7-chapter { padding-block:var(--kv7-12); }
  .kv7-editorial .kv7-chapter--media {
    grid-template-columns:minmax(0,1fr); gap:var(--kv7-6); padding-block:var(--kv7-12);
  }
  .kv7-editorial .kv7-chapter--media:nth-child(even) .kv7-chapter__copy,
  .kv7-editorial .kv7-chapter--media:nth-child(even) .kv7-figure { order:initial; }
  .kv7-editorial .kv7-chapter__copy,
  .kv7-editorial .kv7-chapter--media .kv7-chapter__copy { max-width:74ch; }
  .kv7-editorial .kv7-figure { max-width:720px; margin-inline:auto; }
  .kv7-editorial .kv7-figure img { aspect-ratio:16/9; }
}
@media (max-width:600px) {
  .kv6-editorial.kv7-editorial { padding:40px 16px 48px; }
  .kv7-editorial .kv7-chapter,
  .kv7-editorial .kv7-chapter--media { padding-block:40px; }
  .kv7-editorial .kv7-chapter h2 { margin-bottom:20px; font-size:24px; }
  .kv7-editorial .kv7-chapter h3 { margin-top:28px; font-size:19px; }
  .kv7-editorial .kv7-chapter p { font-size:16px; line-height:1.7; margin-bottom:20px; }
  .kv7-editorial .kv7-figure img { aspect-ratio:4/3; border-radius:16px 4px; }
}
@media (prefers-reduced-motion:reduce) {
  .kv7-editorial *, .kv7-editorial *::before, .kv7-editorial *::after {
    scroll-behavior:auto; transition:none; animation:none;
  }
}

/* KIBALE_PHASE07_LAYOUT_END */
