/* Editorial visuals for the National Scheme of Delegation briefing. */
.pd-hero { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 2rem; padding: clamp(1.5rem, 4vw, 3.5rem); margin: 0 0 2.5rem; background: #10233f; color: #fff; border-radius: 1.25rem; overflow: hidden; }
.pd-hero h1 { color: #fff; font-size: clamp(2rem, 3.7vw, 3.5rem); line-height: 1.08; letter-spacing: -.035em; margin: 1rem 0 1.5rem; }
.pd-eyebrow { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.pd-hero .pd-eyebrow { color: #a2e3dc; margin: 0; }
.pd-standfirst { color: #d5e2ef; font-size: 1.15rem; line-height: 1.65; max-width: 38ch; margin: 0; }
.pd-hero-meta { color: #a2e3dc; font-size: .85rem; margin: 2rem 0 0; }
.pd-hero-meta span { padding: 0 .45rem; }
.pd-hero-art { display: block; width: 100%; height: auto; }
.pd-progress { max-width: var(--folio-reading-width); margin: 1.75rem 0 2.5rem; padding: 1.25rem 1.5rem; background: #eef7f6; border-left: 4px solid #0b7476; border-radius: 0 .6rem .6rem 0; color: #10233f; }
.pd-progress p { margin: .5rem 0 0; font-size: .95rem; line-height: 1.65; }
.pd-routes { margin: 2rem 0; padding: clamp(1rem, 2.5vw, 2rem); border: 1px solid #d7e3ed; border-radius: 1rem; background: #f2f7fb; }
.pd-routes figcaption { margin: 0 0 1.5rem; color: #10233f; }
.pd-routes figcaption .pd-eyebrow { color: #0a6163; margin-bottom: .5rem; }
.pd-routes-intro { display: block; font-size: clamp(1.25rem, 2.2vw, 1.75rem); font-weight: 750; line-height: 1.3; }
.pd-route-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.pd-route { --route-accent: #0b7476; display: flex; flex-direction: column; padding: 1.5rem; background: #fff; border: 1px solid #d7e3ed; border-top: 5px solid var(--route-accent); border-radius: .6rem; }
.pd-route-conditional { --route-accent: #1267b1; }
.pd-route-own { --route-accent: #65518b; }
.pd-route .pd-route-label { color: var(--route-accent); font-size: .8rem; font-weight: 800; margin: 0 0 .8rem; }
.pd-route h3 { margin: 0 0 1rem; font-size: 1.4rem; line-height: 1.2; letter-spacing: -.02em; color: #10233f; }
.pd-route p { font-size: .95rem; line-height: 1.6; margin: 0 0 1.25rem; color: #40536b; }
.pd-route-rule { margin-top: auto; padding-top: 1rem; border-top: 1px solid #d7e3ed; }
.pd-rule-label { display: block; color: #10233f; font-size: .85rem; font-weight: 800; line-height: 1.45; margin-bottom: .5rem; }
.pd-route-rule p { margin: 0; }
.pd-routes .pd-routes-note { margin: 1.25rem 0 0; color: #51647d; font-size: .85rem; line-height: 1.6; }
@media (max-width: 850px) {
  .pd-hero { grid-template-columns: 1fr; gap: 1.5rem; }
  .pd-hero h1 { max-width: 22ch; }
  .pd-standfirst { max-width: 52ch; }
  .pd-hero-art { max-width: 26rem; justify-self: center; }
  .pd-route-grid { grid-template-columns: 1fr; }
  .pd-route { padding: 1.25rem; }
}
@media print {
  .pd-hero { color: #10233f; background: #fff; border: 1px solid #d7e3ed; }
  .pd-hero h1, .pd-hero p { color: #10233f; }
  .pd-route { break-inside: avoid; }
}
