.presentation-hero h1 { max-width: 980px; }
.presentation-hero .hero-lead { max-width: 820px; }
.presentation-overview { padding-bottom: 26px; }
.presentation-shell { padding-top: 30px; }
.appendix-link {
  display: block; margin-top: 16px; padding: 11px 10px; border-top: 1px solid var(--line);
  color: var(--sage-dark); font-size: .85rem; font-weight: 800; text-decoration: none;
}
.presentation-section { margin-bottom: 24px; }
.presentation-card {
  position: relative; overflow: hidden; padding: clamp(28px, 5vw, 52px);
  border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface);
  box-shadow: var(--shadow);
}
.presentation-card::before {
  content: ""; position: absolute; right: -100px; top: -100px; width: 210px; height: 210px;
  border-radius: 50%; background: var(--sage-soft); pointer-events: none;
}
.presentation-card > h2 {
  position: relative; max-width: 800px; margin: 0 0 24px;
  font: 500 clamp(2rem, 4.6vw, 3.45rem)/1.05 Georgia, "Times New Roman", serif;
  letter-spacing: -.032em;
}
.presentation-copy { font-size: 1.04rem; }
.presentation-copy > p:first-child {
  max-width: 820px; margin: 0 0 28px; padding: 17px 20px;
  border-left: 4px solid var(--clay); border-radius: 0 12px 12px 0;
  background: var(--clay-soft); color: #403c36; font-size: 1.1rem;
}
.presentation-copy h3 {
  margin-top: 2.2em; padding-top: 1.15em; border-top: 1px solid var(--line);
  font-size: clamp(1.35rem, 2.6vw, 1.75rem);
}
.presentation-copy strong { color: var(--sage-darker); }
.presentation-copy blockquote { max-width: 780px; }
.presentation-copy ul, .presentation-copy ol { padding-left: 1.35rem; }
.presentation-copy li + li { margin-top: .5rem; }
.presentation-copy a { font-weight: 700; }
.presentation-pager {
  display: flex; justify-content: flex-end; margin-top: 36px; padding-top: 15px;
  border-top: 1px solid var(--line); font-size: .88rem; font-weight: 750;
}
.presentation-appendix { box-shadow: var(--shadow); }
.presentation-appendix > summary { color: var(--sage-dark); }
.presentation-appendix .source-content { padding: clamp(24px, 5vw, 48px); }
.presentation-appendix .source-content > h2:first-child { margin-top: 0; }

@media (max-width: 680px) {
  .presentation-card { padding: 27px 20px 32px; border-radius: 17px; }
  .presentation-card > h2 { font-size: 2.05rem; }
  .presentation-copy { font-size: 1rem; }
  .presentation-copy > p:first-child { padding: 14px 15px; font-size: 1.02rem; }
}

@media print {
  .presentation-card { box-shadow: none; break-inside: auto; }
  .presentation-section { break-before: page; }
  .presentation-overview { break-after: page; }
  .presentation-pager { display: none; }
  .presentation-appendix { display: block; }
  .presentation-appendix > summary { display: none; }
  .presentation-appendix .source-content { display: block; }
}
