:root { --gold:#a77a13; --ink:#111319; --muted:#5f636d; --line:#d2d1cc; --paper:#fff; --cyan:#26bdb8; }
* { box-sizing: border-box; }
html, body { margin:0; color:var(--ink); background:#e9e8e4; font-family: Arial, Helvetica, sans-serif; }
a { color:inherit; }
.skip-link { position:absolute; left:-9999px; }
.skip-link:focus { left:1rem; top:1rem; padding:.7rem; background:#fff; z-index:9; }
#report { width:min(100%, 8.5in); margin:auto; }
.report-page { width:8.5in; min-height:11in; padding:.38in .42in .34in; background:var(--paper); position:relative; display:flex; flex-direction:column; }
.report-page + .report-page { margin-top:.2in; }
.report-header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--line); padding-bottom:.13in; }
.report-header p { margin:0; }
.brandline { font-size:9.5pt; font-weight:700; }
.kicker, h2, .summary-grid span, .phase-grid span, .definition-grid > article > span { color:var(--gold); font-size:8.5pt; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.report-header a { font-size:8pt; }
h1 { margin:.25in 0 .08in; font-size:29pt; line-height:1.02; letter-spacing:-.035em; }
.emphasis { align-self:flex-start; border:1px solid #d8c58d; border-radius:999px; padding:.09in .16in; color:var(--gold); font-size:8pt; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.generated { margin:.2in 0; color:#454952; font-size:8.5pt; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; }
.summary-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:.1in; }
.summary-grid article { min-height:1.12in; border:1px solid var(--line); border-radius:.11in; padding:.16in; display:flex; flex-direction:column; justify-content:space-between; }
.summary-grid strong { font-size:13pt; line-height:1.18; }
.narrative { margin-top:.18in; }
h2 { margin:0 0 .06in; }
.narrative p, .reflection p { margin:0; color:#42464f; font-size:10.4pt; line-height:1.55; }
.reflection { margin-top:.18in; border-top:1px solid var(--line); padding-top:.15in; }
.reflection p { font-size:13pt; }
footer { margin-top:auto; display:flex; justify-content:space-between; gap:1rem; padding-top:.12in; border-top:1px solid var(--line); color:#777b84; font-size:7.5pt; }
.phase-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.1in; margin-top:.15in; }
.phase-grid article { min-height:1.0in; border:1px solid var(--line); border-radius:.1in; padding:.13in; }
.phase-grid p { margin:.06in 0 0; font-size:9.5pt; line-height:1.45; }
.section-title { margin:.2in 0 .1in; }
.definition-grid { display:grid; grid-template-columns:1fr 1fr; gap:.1in; }
.definition-grid article { min-height:1.72in; border:1px solid var(--line); border-radius:.11in; padding:.14in; }
.definition-grid h3 { margin:.07in 0; font-size:13pt; line-height:1.2; }
.definition-grid p { margin:0; color:#4a4e57; font-size:9.3pt; line-height:1.47; }
.definition-grid .sata { border-top:4px solid #4d4a9e; }
.definition-grid .coda { border-top:4px solid #d99a22; }
.framework { margin-top:.13in; border:1px solid var(--line); border-radius:.11in; padding:.14in; }
.framework h2 { margin:0; }
.framework h3 { margin:.05in 0; font-size:12pt; }
.framework p { margin:0; color:#4a4e57; font-size:9.3pt; line-height:1.45; }
.boundary { margin-top:.12in; padding:.12in .14in; border-left:4px solid var(--cyan); color:#3f434c; background:#f2fbfa; font-size:8.8pt; line-height:1.45; }
@media screen and (max-width: 700px) {
  #report { width:100%; }
  .report-page { width:100%; min-height:auto; padding:1rem; }
  .summary-grid, .phase-grid, .definition-grid { grid-template-columns:1fr; }
}
@page { size: Letter; margin:0; }
@media print {
  html, body { background:#fff; }
  #report { width:auto; margin:0; }
  .report-page { width:8.5in; height:11in; min-height:11in; margin:0; break-after:page; page-break-after:always; overflow:hidden; }
  .report-page:last-child { break-after:auto; page-break-after:auto; }
  a { text-decoration:none; }
}
