@charset "UTF-8";
.story-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 26px; min-height: 48px; padding: 8px 0; border-bottom: 1px solid var(--terracotta); color: var(--ink); font-size: 17px; line-height: 1.5; }
.story-link > span { font-size: 23px; }
.story-link:hover { color: var(--terracotta); }
.story-link-light { color: var(--paper); border-color: var(--gold-light); }
.story-link-light:hover { color: var(--gold-light); }
.story-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); max-width: 1660px; margin: 0 auto; padding: 62px var(--gutter) 68px; gap: 70px; align-items: center; }
.story-hero-copy { min-width: 0; }
.story-hero .eyebrow { color: var(--terracotta); margin-bottom: 28px; }
.story-hero h1 { font-size: clamp(51px, 4.6vw, 76px); line-height: 1.08; letter-spacing: -2px; margin-bottom: 30px; }
.story-lead { color: var(--muted); font-size: 21px; line-height: 1.75; max-width: 690px; margin-bottom: 25px; }
.story-byline { font-size: 16px; line-height: 1.65; margin-bottom: 23px; }
.story-byline > span { color: var(--muted); }
.story-hero-photo { margin: 0; padding: 14px; background: #ecd1ac; border: 1px solid var(--line); }
.story-hero-photo img { height: 490px; object-fit: cover; object-position: 50% 20%; }
.story-hero-photo figcaption { color: var(--muted); padding: 15px 2px 3px; font-size: 14px; line-height: 1.6; }
.story-reading { max-width: 1140px; margin: 0 auto; padding: 0 var(--gutter) 80px; }
.story-chapter { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 30px; padding: 54px 0; border-top: 1px solid var(--line); }
.story-chapter-number { color: var(--terracotta); font-family: var(--serif); font-size: 36px; line-height: 1.2; padding-top: 4px; }
.story-chapter h2, .story-chapter h3 { font-size: clamp(32px, 3vw, 43px); font-weight: 400; line-height: 1.18; letter-spacing: -.8px; max-width: 750px; margin: 0 0 27px; }
.story-chapter p { font-size: 19px; line-height: 1.9; color: var(--muted); max-width: 780px; margin: 0 0 23px; }
.story-chapter p:last-child { margin-bottom: 0; }
.story-pedigree { padding: 42px 44px; margin-top: 14px; background: #f1dcbd; border: 1px solid #c9a57e; }
.story-pedigree .eyebrow { margin-bottom: 22px; }
.story-pedigree h2 { font-size: clamp(32px, 3vw, 42px); line-height: 1.2; letter-spacing: -.8px; margin-bottom: 24px; }
.story-pedigree p:not(.eyebrow) { font-size: 18px; line-height: 1.8; color: var(--muted); margin-bottom: 22px; }
.story-pedigree p.story-source { font-size: 15px; }
.story-closing { text-align: center; margin-top: 58px; padding: 48px 28px; background: var(--dark); color: var(--paper); }
.story-closing .eyebrow { color: var(--gold-light); }
.story-closing p { font-family: var(--serif); font-size: clamp(29px, 3vw, 39px); line-height: 1.35; margin: 22px 0; }
.story-closing .story-link { color: var(--paper); border-color: var(--gold-light); }
.story-invitation { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 70px; padding: 70px var(--gutter); background: #f1dcbd; border-block: 1px solid var(--line); }
.story-invitation h2 { font-size: clamp(43px, 4vw, 61px); line-height: 1.1; }
.story-invitation p:not(.eyebrow) { max-width: 720px; color: var(--muted); font-size: 19px; line-height: 1.85; margin: 0 0 22px; }
@media (max-width: 900px) {
  .story-hero { gap: 35px; }
  .story-hero h1 { font-size: 52px; }
  .story-lead { font-size: 19px; }
  .story-hero-photo img { height: 430px; }
  .story-chapter { grid-template-columns: 52px minmax(0,1fr); gap: 22px; }
  .story-invitation { gap: 40px; }
}
@media (max-width: 600px) {
  .story-hero { grid-template-columns: minmax(0,1fr); padding-top: 38px; padding-bottom: 38px; gap: 30px; }
  .story-hero h1 { font-size: clamp(42px, 11.7vw, 57px); letter-spacing: -1.5px; }
  .story-hero .eyebrow { font-size: 12px; }
  .story-lead { font-size: 19px; }
  .story-byline { font-size: 16px; }
  .story-hero-photo { max-width: 390px; width: 100%; justify-self: center; }
  .story-hero-photo img { height: 370px; object-position: 50% 20%; }
  .story-reading { padding-bottom: 48px; }
  .story-chapter { grid-template-columns: minmax(0,1fr); gap: 17px; padding: 35px 0; }
  .story-chapter-number { font-size: 29px; padding: 0; }
  .story-chapter h2, .story-chapter h3 { font-size: 34px; margin-bottom: 22px; }
  .story-chapter p { font-size: 18px; line-height: 1.85; }
  .story-pedigree { padding: 28px 23px; }
  .story-pedigree h2 { font-size: 33px; }
  .story-pedigree p:not(.eyebrow) { font-size: 18px; }
  .story-pedigree p.story-source { font-size: 15px; }
  .story-link { font-size: 17px; gap: 16px; }
  .story-closing { margin-top: 35px; padding: 35px 22px; }
  .story-invitation { grid-template-columns: minmax(0,1fr); padding: 48px var(--gutter); gap: 25px; }
  .story-invitation h2 { font-size: 48px; }
  .story-invitation p:not(.eyebrow) { font-size: 18px; }
}
.story-part-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 16px; max-width: 1660px; margin: 0 auto; padding: 28px var(--gutter) 0; }
.story-part-links a { display: inline-flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 52px; padding: 12px 22px; border: 1px solid var(--line); font-size: 17px; line-height: 1.5; }
.story-part-links a:hover { background: #f1dcbd; border-color: var(--terracotta); }
.story-part-links a > span:first-child { color: var(--terracotta); }
.story-pega-section { background: var(--paper); border-top: 1px solid var(--line); padding-bottom: 1px; }
.pega-story-hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 50px; }
.pega-story-hero h2 { font-size: clamp(45px, 4.1vw, 65px); line-height: 1.1; letter-spacing: -1.6px; margin-bottom: 28px; }
.pega-story-photos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; min-width: 0; }
.pega-story-photos figure { margin: 0; padding: 12px; background: #ecd1ac; border: 1px solid var(--line); min-width: 0; }
.pega-story-photos img { height: 400px; width: 100%; object-fit: contain; background: #fff3df; }
.pega-story-photos figcaption { font-size: 16px; line-height: 1.5; color: var(--muted); padding: 12px 0 2px; }
@media (max-width: 900px) {
  .pega-story-hero { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .pega-story-photos { width: 100%; max-width: 660px; justify-self: center; }
}
@media (max-width: 600px) {
  .story-part-links { padding-top: 23px; gap: 10px; }
  .story-part-links a { width: 100%; padding: 12px 17px; gap: 14px; }
  .pega-story-hero h2 { font-size: 43px; letter-spacing: -1px; }
  .pega-story-photos { gap: 12px; }
  .pega-story-photos figure { padding: 8px; }
  .pega-story-photos img { height: 250px; }
  .pega-story-photos figcaption { font-size: 15px; }
}
