.page-copy{max-width:860px;margin:15px auto 30px;font-size:16px;line-height:1.8;overflow-wrap:anywhere}.page-copy h2{font-size:28px;line-height:1.25;color:var(--navy);margin:42px 0 20px;letter-spacing:-.8px}.page-copy h3{font-size:23px;margin:30px 0 15px;color:var(--navy)}.page-copy p{margin:0 0 22px}.page-copy a:not(.button){color:#185a75;text-decoration:underline;text-underline-offset:4px}.page-copy .text-link{font-size:15px;line-height:1.7;text-decoration:none!important;border-bottom:1px solid #9eacaf}.page-copy ul,.page-copy ol{padding-left:28px;margin-bottom:28px}.page-copy li{padding-left:5px;margin-bottom:12px}.page-copy img{max-width:100%;height:auto;max-height:500px;object-fit:contain;display:block;margin:28px auto}.page-copy figure{margin:30px 0}.page-copy figcaption{font-size:13px;color:#586b72;text-align:center}.page-copy blockquote{border-left:3px solid var(--gold);padding:20px 28px;margin:30px 0;background:var(--cream);font-size:27px;line-height:1.5}.page-copy cite{display:block;font:13px/1.6 "Segoe UI",Arial,sans-serif;margin-top:18px}.page-copy table{border-collapse:collapse;width:100%;font-size:14px;margin:30px 0;display:block;overflow-x:auto}.page-copy td,.page-copy th{padding:12px;border:1px solid var(--line);text-align:left}.completion-note{background:#f9f4e8;border-left:3px solid #a78648;padding:18px 22px;margin:25px 0;font-size:14px;line-height:1.75}.completion-note strong{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#705622}.completion-note p{margin:7px 0 0}.resource-entry{padding:10px 0 25px;border-bottom:1px solid var(--line)}.article-meta{font-size:12px;letter-spacing:.6px;color:#566d78;border-bottom:1px solid var(--line);padding-bottom:22px}.legacy-anchor{display:block;height:0;width:0;overflow:hidden}.download-item{padding:16px 20px;background:var(--blue)}.enquiry-composer{max-width:860px;margin:45px auto;padding:30px;background:var(--blue)}.enquiry-composer h2{font-size:32px}.enquiry-composer label{display:block;margin:16px 0 7px;font-size:14px;font-weight:600}.enquiry-composer input,.enquiry-composer select,.enquiry-composer textarea{display:block;width:100%;padding:12px;border:1px solid #8ca0a7;background:white;border-radius:0}.enquiry-composer form>p{font-size:13px;margin-top:18px}.impact-flyer{max-height:none!important;width:650px}.page-copy .report-masthead{display:none}.page-copy .report-wrap{padding:18px 0}.page-copy .report-section{padding:30px 0;border-top:1px solid var(--line)}.page-copy .report-hero{text-align:center;padding:25px 0}.page-copy .report-crest{width:140px;height:140px}.page-copy .report-stat-row,.page-copy .report-numbers,.page-copy .report-strands{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}.page-copy .report-stat,.page-copy .report-strand{background:var(--cream);padding:25px 20px}.page-copy .report-n{font-family:Georgia,serif;font-size:38px;color:var(--navy);line-height:1.1}.page-copy .report-k{font-size:14px;line-height:1.6;margin-top:14px}.page-copy .report-chair{display:grid;grid-template-columns:180px 1fr;gap:35px}.page-copy .report-chair img{width:160px;height:160px;border-radius:50%;object-fit:cover}.page-copy .report-quotes{display:grid;grid-template-columns:1fr 1fr;gap:20px}.page-copy .report-quote{padding:25px;background:var(--cream);border-left:3px solid var(--gold)}.page-copy .report-wide{grid-column:1/-1}.page-copy .report-quote p{font:20px/1.7 Georgia,serif}.page-copy .report-quote .report-who{font:14px/1.6 "Segoe UI",Arial,sans-serif;color:#725a2e}.page-copy .report-who span{display:block}.page-copy .report-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px}.page-copy .report-foot{border-top:1px solid var(--line);padding-top:30px;font-size:13px;text-align:center}.page-copy .report-foot img{width:80px}.page-copy .report-cta{text-align:center;background:var(--cream);padding:30px}.page-copy .report-btn{display:inline-block;padding:12px 24px;margin:10px;background:var(--gold);color:var(--navy)!important;text-decoration:none!important}.page-copy .report-tag{font:26px/1.4 Georgia,serif}.page-copy .report-eyebrow{font-size:12px;color:#705622;text-transform:uppercase;letter-spacing:1.5px}.page-copy .report-section>div>h2{margin-top:15px}.homepage-full-copy{max-width:920px}.homepage-full-copy>h2{border-top:1px solid var(--line);padding-top:35px}.news-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.news-filters button{padding:10px 16px;border:1px solid var(--navy);background:white;color:var(--navy);cursor:pointer}.news-filters button[aria-pressed=true]{background:var(--navy);color:white}.newsletter-band{max-width:1160px;margin:0 auto;padding:35px 40px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.newsletter-band h2{font-size:31px;margin-bottom:10px}.newsletter-band p{font-size:14px;max-width:600px;margin-bottom:0}.editor-body-copy{border-top:1px solid var(--line);padding-top:20px;margin-top:30px}.editor-wrap textarea.copy-paragraph{min-height:110px}.editor-wrap textarea.copy-heading{min-height:65px}a[hidden]{display:none}.editor-wrap details>summary{cursor:pointer;font-size:17px;font-weight:600;padding:12px 0}@media(max-width:650px){.page-copy{font-size:15px;line-height:1.8}.page-copy h2{font-size:25px}.page-copy h3{font-size:22px}.page-copy blockquote{font-size:23px;padding:18px}.page-copy .report-stat-row,.page-copy .report-numbers,.page-copy .report-strands,.page-copy .report-chair,.page-copy .report-quotes,.page-copy .report-cols{grid-template-columns:1fr}.page-copy .report-chair img{margin-left:0}.enquiry-composer{padding:22px}.newsletter-band{display:block;padding:30px 22px}.newsletter-band .button{margin-top:20px}}

.news-accordion {
  max-width: 920px;
  margin: 0 auto 48px;
  border-top: 1px solid var(--line);
}
.news-entry {
  border-bottom: 1px solid var(--line);
}
.news-entry > summary {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 20px 24px;
  cursor: pointer;
  list-style: none;
  color: var(--navy);
  background: var(--cream);
}
.news-entry > summary::-webkit-details-marker { display: none; }
.news-entry > summary:hover,
.news-entry[open] > summary { background: var(--blue); }
.news-entry > summary::after { content: '+'; font-size: 24px; }
.news-entry[open] > summary::after { content: '−'; }
.news-entry time { font-size: 14px; }
.news-title { font-weight: 650; }
.news-entry > .page-copy { padding: 16px 24px 8px; }
@media (max-width: 650px) {
  .news-entry > summary {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 16px;
    padding: 16px;
  }
  .news-entry time { grid-column: 1; }
  .news-title { grid-column: 1; }
  .news-entry > summary::after { grid-column: 2; grid-row: 1 / 3; }
  .news-entry > .page-copy { padding-inline: 16px; }
}

.news-entry--undated > summary { grid-template-columns: minmax(0, 1fr) auto; }
.news-entry--undated > summary::after { grid-column: 2; grid-row: 1; }

.about-menu { position: relative; }
.about-menu > summary {
  cursor: pointer;
  list-style: none;
  padding: 8px 0;
  border-bottom: 2px solid transparent;
}
.about-menu > summary::-webkit-details-marker { display: none; }
.about-menu > summary:hover,
.about-menu.current-section > summary { border-bottom-color: var(--bronze); }
.about-menu > summary span { margin-left: 3px; }
.about-menu > ul {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 20;
  min-width: 225px;
  list-style: none;
  margin: 0;
  padding: 8px 12px;
  background: var(--cream);
  border: 1px solid var(--line);
}
.about-menu > ul a { display: block; padding: 8px 4px; }
@media (max-width: 970px) {
  .about-menu[open] { flex-basis: 100%; }
  .about-menu > ul { position: static; min-width: 0; }
}

.impact-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0 12px;
}
.impact-stats > div {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  padding: 16px;
  border: 1px solid var(--line);
  background: var(--cream);
}
.impact-stats dt { font-size: 14px; line-height: 1.4; }
.impact-stats dd {
  margin: 0 0 6px;
  color: var(--navy);
  font-size: 36px;
  line-height: 1.1;
  font-weight: 650;
}
@media (max-width: 650px) {
  .impact-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.casework-chart {
  --casework-send: #153a54;
  --casework-family: #a66e23;
  --casework-asylum: #337c75;
  --casework-housing: #93638a;
  --casework-criminal: #bd5946;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 24px;
  margin: 20px 0 28px;
}
.casework-pie {
  width: min(210px, 100%);
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(
    var(--casework-send) 0 50%,
    var(--casework-family) 50% 66.6667%,
    var(--casework-asylum) 66.6667% 77.7778%,
    var(--casework-housing) 77.7778% 88.8889%,
    var(--casework-criminal) 88.8889% 100%
  );
}
.page-copy .casework-legend { list-style: none; padding: 0; margin: 0; }
.casework-legend li { display: flex; gap: 8px; align-items: baseline; }
.casework-legend li::before {
  content: "";
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  background: var(--casework-color);
}
.casework-legend strong { margin-left: auto; }
.casework-legend li:nth-child(1) { --casework-color: var(--casework-send); }
.casework-legend li:nth-child(2) { --casework-color: var(--casework-family); }
.casework-legend li:nth-child(3) { --casework-color: var(--casework-asylum); }
.casework-legend li:nth-child(4) { --casework-color: var(--casework-housing); }
.casework-legend li:nth-child(5) { --casework-color: var(--casework-criminal); }

.timeline-year {
  border-inline-start: 2px solid #b08d57;
  padding-inline-start: clamp(12px, 3vw, 28px);
  margin-block: 28px;
}
.timeline-year h2 { margin-top: 0; }
.timeline-year .timeline-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 12px;
  list-style: none;
  padding: 0;
}
.timeline-card {
  background: #f7eedb;
  color: #2b2416;
  border: 1px solid #d2b271;
  border-radius: 10px;
  padding: 14px 16px;
}
.timeline-card.timeline-action {
  background: #1f3b4d;
  color: #fff;
  border-color: #1f3b4d;
}
.timeline-card h3 { color: inherit; margin: 6px 0; }
.timeline-card p { margin: 0; }
.timeline-date { font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.timeline-action .timeline-date, .timeline-action .timeline-links a { color: #f0d9a6; }
.timeline-card .timeline-links { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 8px; }
.timeline-links a { text-decoration: underline; text-underline-offset: 2px; }
.timeline-notes { font-size: .9rem; }

@media (min-width: 1100px) {
  [data-route="/about/timeline"] .inner-content { max-width: 1840px; }
  [data-route="/about/timeline"] .page-copy { max-width: none; }
  .timeline-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr)) minmax(0, 1.35fr);
    grid-template-rows: auto auto auto;
    margin-block: 30px;
  }
  .timeline-year {
    display: grid;
    grid-row: 1 / span 3;
    grid-template-rows: subgrid;
    border: 0;
    margin: 0;
    padding: 0;
  }
  .timeline-year h2 {
    grid-row: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    background: linear-gradient(#b08d57, #b08d57) center / 100% 2px no-repeat;
    font-size: 1.3rem;
  }
  .timeline-year h2 span {
    padding: 5px 16px;
    border-radius: 999px;
    background: #1f3b4d;
    color: #fff;
  }
  .timeline-year .timeline-cards {
    --timeline-connector: 14px;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--timeline-connector);
    margin: 0;
    padding: var(--timeline-connector) 5px;
    font-size: .875rem;
    line-height: 1.4;
  }
  .timeline-year .timeline-actions { grid-row: 1; align-self: end; }
  .timeline-year .timeline-outcomes { grid-row: 3; align-self: start; }
  .timeline-card { position: relative; padding: 10px; }
  .timeline-action::after, .timeline-outcome::before {
    content: "";
    position: absolute;
    left: 50%;
    width: 2px;
    height: calc(var(--timeline-connector) + 2px);
    background: #b08d57;
    transform: translateX(-50%);
  }
  .timeline-action::after { top: 100%; }
  .timeline-outcome::before { bottom: 100%; }
  .timeline-card h3 { font-size: 1.125rem; }
}
.page-copy .story-motto { text-align: center; font-style: italic; }
