/* Page-specific story layout; shared site typography and colors remain in style.css. */
.kyser-intro-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; }
.kyser-intro h2 { max-width: 20ch; }
.kyser-intro p:first-child { margin-top: 0; }
.kyser-stories { padding-bottom: 4rem; }
.kyser-stories-intro { border-top: 3px solid var(--color-dark); padding-top: 1.5rem; }
.kyser-story { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; padding-block: 3.5rem; border-bottom: 1px solid var(--color-rule); scroll-margin-top: 8rem; }
.kyser-story-heading { grid-row: 1; }
.kyser-story-heading h2 { max-width: 25ch; margin-bottom: 0; font-size: clamp(2rem, 3.7vw, 3rem); line-height: 1.08; }
.kyser-story-copy { grid-row: 3; }
.kyser-story-copy p:first-child { margin-top: 0; }
.kyser-story-photos { grid-row: 2; display: grid; gap: 1rem; align-content: start; }
.kyser-takeaway { border-left: 3px solid var(--color-ochre); padding-left: 1.1rem; margin-top: 1.75rem; font-weight: 700; color: var(--color-dark); }
.kyser-story-text-only .kyser-story-copy { grid-row: 2; }
.kyser-story-photos figure { margin: 0; }
.kyser-story-photos img { width: 100%; height: auto; }
.kyser-story-photos figcaption { margin-top: .5rem; font-size: .95rem; color: var(--color-muted); }
.kyser-closing .container { max-width: 850px; }
.kyser-principle { font-family: var(--font-heading); font-size: clamp(1.8rem, 3.5vw, 2.8rem); line-height: 1.2; font-weight: 600; color: var(--color-cream); }
@media (min-width: 800px) {
 .kyser-intro-grid { grid-template-columns: .85fr 1.15fr; gap: 4rem; }
 .kyser-story { grid-template-columns: 1.15fr 1fr; grid-template-rows: min-content 1fr; column-gap: clamp(2rem, 5vw, 5rem); row-gap: 1.5rem; }
 .kyser-story-heading { grid-column: 1; }
 .kyser-story-copy { grid-column: 1; grid-row: 2; }
 .kyser-story-photos { grid-column: 2; grid-row: 1 / 3; padding-top: .4rem; }
 .kyser-story-text-only .kyser-story-copy { grid-column: 2; grid-row: 1; }
 .kyser-story-photo-left { grid-template-columns: 1fr 1.15fr; }
 .kyser-story-photo-left .kyser-story-heading,
 .kyser-story-photo-left .kyser-story-copy { grid-column: 2; }
 .kyser-story-photo-left .kyser-story-photos { grid-column: 1; }
}
