/* Sky River: a landscape and field-production essay within the Alchemist shell. */
.sr-case { color: #373737; background: #fff; }
.sr-case .sr-wrap, .sr-case .page-container { width: calc(100% - 80px); max-width: 1160px; margin-left: auto; margin-right: auto; }
.sr-case a { color: inherit; text-underline-offset: 5px; }
.sr-case a:focus-visible, .sr-case summary:focus-visible { outline: 2px solid #373737; outline-offset: 6px; }
.sr-case h1, .sr-case h2, .sr-case h3 { font-family: HafferXH, sans-serif; font-weight: 500; letter-spacing: -.025em; }
.sr-case h1 { font-size: clamp(3rem, 4.6vw, 4.3rem); line-height: 1.06; margin: 0 0 29px; }
.sr-case h2 { font-size: 2.4rem; line-height: 1.18; margin: 0 0 27px; }
.sr-case h3 { font-size: 1.35rem; line-height: 1.35; margin: 0 0 18px; }
.sr-case p { font-size: 1rem; line-height: 1.8; margin: 0 0 22px; }
.sr-case p.sr-kicker { color: #6c6c6c; font-size: .8rem; line-height: 1.5; margin: 0 0 17px; }
.sr-case .doc-story__figure { margin: 0; max-width: 650px; }
.sr-case .doc-story__figure img { display: block; width: 100%; max-width: 100%; height: auto; object-fit: contain; }
.sr-case .doc-story__figure figcaption { font-size: .8rem; line-height: 1.65; color: #6c6c6c; margin-top: 11px; }
.sr-prose p:last-child { margin-bottom: 0; }
.sr-intro { padding-top: 35px; }
.sr-case .doc-story__back { margin-bottom: 43px; }
.sr-opening { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 600px); gap: 70px; align-items: start; }
.sr-identity { padding-top: 10px; }
.sr-case p.sr-lead { max-width: 425px; font-size: 1.35rem; line-height: 1.55; margin-bottom: 0; }
.sr-case p.sr-assignment { margin: 27px 0 0; }
.sr-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; padding: 24px 0; margin: 43px 0 0; }
.sr-facts dt { color: #6c6c6c; font-size: .78rem; line-height: 1.5; margin-bottom: 7px; }
.sr-facts dd { font-size: .94rem; line-height: 1.6; margin: 0; }
.sr-contents { display: flex; flex-wrap: wrap; gap: 12px 28px; padding-top: 22px; font-size: .8rem; line-height: 1.6; }
.sr-contents a { text-decoration: none; }
.sr-contents a:hover { text-decoration: underline; }
.sr-section { margin-top: 83px; scroll-margin-top: 105px; }
.sr-access > header { max-width: 650px; margin-bottom: 30px; }
.sr-access > header h2 { margin-bottom: 0; }
.sr-access-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 610px); gap: 75px; align-items: start; }
.sr-access-image { padding-top: 7px; }
.sr-transport { display: grid; grid-template-columns: minmax(0, 345px) minmax(0, 570px); gap: 90px; max-width: 1005px !important; border-top: 1px solid #d8d8d8; padding-top: 56px; }
.sr-transport-frames { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 35px; max-width: 1005px !important; margin-top: 38px; }
.sr-case .sr-transport-frames p.sr-kicker { grid-column: 1 / -1; margin: 0; }
.sr-field { display: grid; grid-template-columns: minmax(0, 525px) minmax(0, 1fr); column-gap: 75px; align-items: center; }
.sr-field-copy { grid-column: 2; grid-row: 1; }
.sr-field-image { grid-column: 1; grid-row: 1; }
.sr-gorge { background: #f7f7f7; padding: 65px 0; }
.sr-gorge > .sr-wrap { max-width: 1040px; }
.sr-gorge header { max-width: 740px; margin-bottom: 32px; }
.sr-gorge h2 { font-size: 2.65rem; margin-bottom: 0; }
.sr-gorge-prose { columns: 2; column-gap: 70px; }
.sr-gorge-prose p { break-inside: avoid; }
.sr-return { max-width: 1160px !important; }
.sr-return h2 { max-width: 670px; }
.sr-return-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 500px); gap: 70px; align-items: start; }
.sr-return-image { padding-top: 7px; }
.sr-sequence { padding-top: 59px; border-top: 1px solid #d8d8d8; }
.sr-sequence-opening { display: grid; grid-template-columns: minmax(0, 625px) minmax(0, 1fr); gap: 80px; align-items: center; }
.sr-sequence-opening header { grid-column: 2; grid-row: 1; }
.sr-sequence-opening > .doc-story__figure { grid-column: 1; grid-row: 1; }
.sr-sequence-opening header p:last-child { margin-bottom: 0; }
.sr-sequence-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; max-width: 1070px; margin: 42px auto 0; }
.sr-programme { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 90px; max-width: 1030px !important; padding-top: 64px; border-top: 1px solid #d8d8d8; align-items: start; }
.sr-poster { margin: 0; }
.sr-poster img { display: block; width: 100%; max-width: 100%; height: auto; }
.sr-credits h2 { font-size: 2.25rem; margin-bottom: 21px; }
.sr-credits dl { display: grid; gap: 19px; margin: 27px 0; padding: 25px 0; border-top: 1px solid #ededed; border-bottom: 1px solid #ededed; }
.sr-credits dl > div { display: grid; grid-template-columns: 125px minmax(0, 1fr); gap: 23px; }
.sr-credits dt { font-size: .78rem; color: #6c6c6c; line-height: 1.65; }
.sr-credits dd { font-size: .94rem; line-height: 1.65; margin: 0; }
.sr-source-links { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; font-size: .82rem; line-height: 1.65; }
.sr-more { margin-top: 62px; border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; padding: 24px 0; }
.sr-more summary { cursor: pointer; font-size: 1.1rem; line-height: 1.6; }
.sr-more summary span { color: #6c6c6c; font-size: .8rem; margin-left: 20px; }
.sr-case p.sr-gallery-note { max-width: 720px; margin: 25px 0 29px; font-size: .86rem; color: #6c6c6c; }
.sr-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 37px; padding-bottom: 16px; }
.sr-planning { padding-top: 7px; }
.sr-planning-intro { display: grid; grid-template-columns: 1fr 1.1fr; gap: 80px; align-items: end; margin-bottom: 35px; }
.sr-planning-intro h2, .sr-planning-intro > p { margin-bottom: 0; }
.sr-planning-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; }
.sr-planning-grid > section { border-top: 1px solid #d8d8d8; padding-top: 23px; }
.sr-planning-grid p { font-size: .95rem; margin-bottom: 0; }
.sr-planning-close { display: grid; grid-template-columns: 1.3fr 1fr; gap: 80px; border-top: 1px solid #ededed; margin-top: 32px; padding-top: 27px; }
.sr-planning-close p { margin-bottom: 0; }
.sr-planning-close nav { display: grid; gap: 13px; align-content: start; font-size: .9rem; line-height: 1.65; }
.sr-case .doc-story__contact { margin-top: 74px; }
.sr-case .doc-story__contact h2 { max-width: 470px; }

@media (min-width: 721px) and (max-width: 1000px) {
    .sr-case .sr-wrap, .sr-case .page-container { width: calc(100% - 56px); }
    .sr-opening { grid-template-columns: .95fr 1.05fr; gap: 35px; }
    .sr-case h1 { font-size: 3.1rem; }
    .sr-case h2, .sr-gorge h2 { font-size: 2.1rem; }
    .sr-case p.sr-lead { font-size: 1.2rem; }
    .sr-access-body, .sr-field { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; }
    .sr-transport { grid-template-columns: .8fr 1.2fr; gap: 45px; }
    .sr-transport-frames { gap: 16px 28px; }
    .sr-return-body { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; }
    .sr-sequence-opening { grid-template-columns: 1.15fr .85fr; gap: 38px; }
    .sr-gorge-prose { column-gap: 40px; }
    .sr-programme { grid-template-columns: 250px minmax(0, 1fr); gap: 45px; }
    .sr-credits dl > div { grid-template-columns: 105px minmax(0, 1fr); gap: 16px; }
    .sr-planning-intro, .sr-planning-close { gap: 40px; }
    .sr-facts { gap: 20px; }
}

@media (max-width: 720px) {
    .sr-case .sr-wrap, .sr-case .page-container { width: calc(100% - 48px); }
    .sr-intro { padding-top: 25px; }
    .sr-case .doc-story__back { margin-bottom: 31px; }
    .sr-opening, .sr-access-body, .sr-transport, .sr-field, .sr-sequence-opening, .sr-sequence-pair, .sr-programme, .sr-gallery, .sr-planning-intro, .sr-planning-grid, .sr-planning-close { display: grid; grid-template-columns: minmax(0, 1fr); gap: 30px; }
    .sr-identity { padding-top: 0; }
    .sr-case h1 { font-size: clamp(2.9rem, 10vw, 3.65rem); line-height: 1.07; margin-bottom: 23px; }
    .sr-case h2, .sr-gorge h2, .sr-credits h2 { font-size: 2rem; line-height: 1.2; margin-bottom: 24px; }
    .sr-case h3 { font-size: 1.4rem; }
    .sr-case p { line-height: 1.8; }
    .sr-case p.sr-kicker { font-size: .78rem; margin-bottom: 14px; }
    .sr-case p.sr-lead { font-size: 1.25rem; line-height: 1.55; max-width: none; }
    .sr-case p.sr-assignment { margin-top: 25px; }
    .sr-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 19px; padding: 24px 0; margin-top: 31px; }
    .sr-contents { gap: 12px 23px; }
    .sr-section { margin-top: 58px; scroll-margin-top: 85px; }
    .sr-access > header { margin-bottom: 24px; }
    .sr-access > header h2 { margin-bottom: 0; }
    .sr-access-image { padding-top: 0; }
    .sr-transport { padding-top: 40px; gap: 0; }
    .sr-transport-frames { grid-template-columns: minmax(0, 1fr); gap: 28px; margin-top: 30px; }
    .sr-return-body { grid-template-columns: minmax(0, 1fr); gap: 30px; }
    .sr-return-image { padding-top: 0; }
    .sr-field-copy, .sr-field-image, .sr-sequence-opening header, .sr-sequence-opening > .doc-story__figure { grid-column: auto; grid-row: auto; }
    .sr-gorge { padding: 44px 0; }
    .sr-gorge header { margin-bottom: 24px; }
    .sr-gorge h2 { margin-bottom: 0; }
    .sr-gorge-prose { columns: auto; }
    .sr-sequence { padding-top: 43px; }
    .sr-sequence-pair { margin-top: 30px; }
    .sr-programme { padding-top: 45px; gap: 34px; }
    .sr-poster { width: 260px; max-width: 100%; margin: 0 auto; }
    .sr-credits dl > div { grid-template-columns: 100px minmax(0, 1fr); gap: 18px; }
    .sr-more { margin-top: 46px; }
    .sr-more summary { font-size: 1rem; }
    .sr-more summary span { display: block; margin-left: 19px; }
    .sr-gallery { gap: 29px; }
    .sr-planning { padding-top: 0; }
    .sr-planning-intro { gap: 0; margin-bottom: 29px; }
    .sr-planning-grid { gap: 28px; }
    .sr-planning-grid p { font-size: 1rem; }
    .sr-planning-close { margin-top: 30px; gap: 27px; }
    .sr-case .doc-story__contact { margin-top: 50px; }
    .sr-case .doc-story__contact h2 { margin-bottom: 0; }
}
