/* Run 4 narrative additions. Accepted tokens, components and shell unchanged. */
.project-title{max-width:68rem}.project-prose{max-width:70ch}.project-prose p{line-height:1.65}.project-story{max-width:72rem}.project-parallel{background:var(--gm-ivory);padding:1.5rem;border-left:3px solid var(--gm-gold)}.project-parallel h2{font-size:1.1rem;letter-spacing:.12em}.project-artefact{padding:1.25rem;background:var(--gm-card);border-radius:var(--gm-radius);margin:1.5rem 0}.project-sequence{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin:.5rem 0;padding-left:1.5rem}.project-sequence li{padding:.25rem;line-height:1.45}.project-placeholder{margin:1.5rem 0;padding:1.25rem;border:1px dashed var(--gm-line);background:var(--gm-paper)}.project-placeholder figcaption{font-weight:bold}.project-placeholder p{margin-bottom:0;font-size:.9rem}.project-photo{margin:1.5rem 0;max-width:52rem}.project-photo .gm-image{width:100%;height:auto;max-height:30rem;object-fit:contain}.project-photo figcaption{font-size:.9rem;margin-top:.5rem}.project-media-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.project-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.95rem}.project-table th,.project-table td{padding:.75rem;border:1px solid var(--gm-line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.project-table th{background:var(--gm-ivory)}.project-pullquote{font-size:clamp(1.3rem,2vw,1.8rem);border-left:3px solid var(--gm-gold);padding:1rem;margin:1.5rem 0}.project-bullet{padding-left:1rem;border-left:2px solid var(--gm-line)}.site-lab iframe{height:900px}.site-lab.gm-lab--tablet iframe{height:900px}.site-lab.gm-lab--mobile iframe{height:900px}@media(max-width:600px){.project-media-pair{grid-template-columns:1fr}.project-table{font-size:.85rem}.project-table th,.project-table td{padding:.5rem}.project-title h1{font-size:2.1rem}.project-parallel{padding:1rem}.project-sequence{display:block}.project-sequence li{margin:.5rem 0}}

/* QA: consistent type rhythm for project/case-study prose, excluding approved specialised reading treatments. */
.project-story>.gm-section>h2{line-height:1.25;margin-bottom:1rem}
.project-story>.gm-section .project-prose>p{line-height:1.7;margin-block:.9rem}
.project-story>.gm-section .project-prose>p:first-child{margin-top:0}
.project-story>.gm-section .project-prose>p:last-child{margin-bottom:0}

/* Accepted editorial summary-panel refinement: Human / AI / real-world roles.
   Scoped to editorial role summaries, not ordinary data, comparison, TERP or
   evidence tables. Keep a cream outer panel, lilac headers, white content. */
body.final-editorial .project-story > :is(#parallel,#roles){
  background:var(--gm-ivory);
  border:1px solid var(--gm-line);
  border-left:3px solid var(--gm-plum);
  border-radius:.7rem;
  padding:clamp(1.05rem,2.3vw,1.7rem);
}
body.final-editorial .project-story > :is(#parallel,#roles) > h2{color:var(--gm-plum)}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table-wrap{max-width:100%;overflow-x:auto}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table th{
  background:var(--gm-lavender);color:var(--gm-plum);font-weight:700;
  border-bottom:2px solid var(--gm-plum);vertical-align:middle
}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table td{background:var(--gm-paper);color:var(--gm-body)}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table th,
body.final-editorial .project-story > :is(#parallel,#roles) .project-table td{
  border-inline-end:1px solid var(--gm-line);border-bottom:1px solid var(--gm-line);
  overflow-wrap:anywhere
}
body.final-editorial .project-story > :is(#parallel,#roles) .project-table th:first-child,
body.final-editorial .project-story > :is(#parallel,#roles) .project-table td:first-child{border-inline-start:1px solid var(--gm-line)}
@media(max-width:650px){body.final-editorial .project-story > :is(#parallel,#roles){padding:1rem}}
