/* A continuous recollection: complete passages, then space to look. */
.annual-2023 { --gutter: clamp(25px, 6vw, 104px); }
.annual-2023 .photo img { height: auto; object-fit: cover; }
.annual-2023 .opening { grid-template-columns: 36% 64%; padding-right: 0; padding-top: 24px; align-items: end; }
.annual-2023 .opening-copy { padding-right: 30px; padding-bottom: 5px; }
.annual-2023 .opening .year { margin-top: 27px; margin-bottom: 22px; }
.annual-2023 .opening h1 { font-size: clamp(38px, 3.8vw, 60px); max-width: 340px; }
.annual-2023 .hero-photo img { aspect-ratio: 1.8; object-position: 50% 53%; }
.annual-2023 .intro { padding-top: 98px; padding-bottom: 108px; }
.annual-2023 .intro > .prose { max-width: 650px; }
.annual-2023 .prose { font-size: 18px; line-height: 1.95; }
.annual-2023 .chapter-grid { max-width: 1320px; display: grid; grid-template-columns: .78fr 1.3fr; gap: 80px; }
.annual-2023 .first-chapter { margin-bottom: 108px; }
.annual-2023 .first-chapter .chapter-heading { max-width: 300px; }
.annual-2023 .threshold-photo { width: 86%; max-width: 1390px; margin-left: auto; }
.annual-2023 .threshold-photo img { aspect-ratio: 1.79; }
.annual-2023 .offset-reading { max-width: 650px; margin: 82px max(var(--gutter), calc((100vw - 1164px)/2)) 118px auto; }
.annual-2023 .offset-reading .chapter-heading { max-width: 550px; margin-bottom: 31px; }
.annual-2023 .quiet { padding: 100px 0 108px; }
.annual-2023 .quiet-grid { grid-template-columns: .96fr 1.24fr; gap: 76px; }
.annual-2023 .quiet-side { padding-top: 4px; }
.annual-2023 .quiet-side .chapter-heading { max-width: 330px; margin-bottom: 46px; }
.annual-2023 .prayer-photo img { aspect-ratio: 1.6; object-position: 53% 50%; }
.annual-2023 .photo-credit { font: 10px/1.8 var(--sans); letter-spacing: .015em; color: #a6b7a7; margin-top: 13px; }
.annual-2023 .forest-passage { padding-top: 110px; }
.annual-2023 .forest-photo { width: 84%; max-width: 1340px; }
.annual-2023 .forest-photo img { aspect-ratio: 1.8; object-position: 50% 52%; }
.annual-2023 .path-reading { margin-bottom: 112px; }
.annual-2023 .ending { max-width: 650px; padding-top: 0; padding-bottom: 112px; }
.annual-2023 .ending .chapter-heading { padding-top: 44px; border-top: 1px solid var(--hair); margin-bottom: 32px; }
.annual-2023 .record-note { max-width: 560px; color: var(--subtle); font: 12px/1.9 var(--sans); }
.annual-2023 .record-note p + p { margin-top: 12px; }
html[lang=ja] .annual-2023 .opening h1 { font: 400 clamp(26px, 2.7vw, 41px)/1.75 var(--body); letter-spacing: .055em; }
html[lang=ja] .annual-2023 .prose { line-height: 2.15; }
html[lang=ja] .annual-2023 .chapter-heading h2 { text-wrap: pretty; }
.annual-2023 .heading-phrase { display: inline-block; }
html[lang=ja] .annual-2023 .quiet-side .chapter-heading { max-width: 365px; }
@media (min-width: 1600px) {
  .annual-2023 .opening { max-width: 1740px; }
  .annual-2023 .opening-copy { padding-left: max(var(--gutter), calc((1740px - 1300px)/2)); }
}
@media (max-width: 1050px) and (min-width: 701px) {
  .annual-2023 .opening { grid-template-columns: 38% 62%; }
  .annual-2023 .opening-copy { padding-right: 20px; }
  .annual-2023 .opening .year { font-size: 78px; margin-top: 20px; margin-bottom: 17px; }
  .annual-2023 .opening h1 { font-size: 37px; }
  .annual-2023 .hero-photo img { aspect-ratio: 1.35; }
  .annual-2023 .chapter-grid { gap: 48px; grid-template-columns: .7fr 1.3fr; }
  .annual-2023 .quiet-grid { gap: 45px; grid-template-columns: .8fr 1.3fr; }
  .annual-2023 .intro > .prose, .annual-2023 .offset-reading { max-width: 610px; }
  .annual-2023 .prose { font-size: 17px; }
  .annual-2023 .ending { max-width: 660px; }
}
@media (max-width: 700px) {
  .annual-2023 .opening { display: flex; align-items: stretch; padding-top: 18px; }
  .annual-2023 .opening-copy { padding: 0 var(--gutter) 34px; }
  .annual-2023 .opening .year { font-size: 80px; margin: 18px 0 17px; }
  .annual-2023 .opening h1 { font-size: 40px; line-height: 1.06; max-width: 330px; }
  .annual-2023 .hero-photo img { aspect-ratio: 1.5; object-position: 53% 53%; }
  .annual-2023 .intro { padding-top: 55px; padding-bottom: 66px; }
  .annual-2023 .prose { font-size: 17px; line-height: 1.95; }
  .annual-2023 .chapter-grid { display: block; }
  .annual-2023 .first-chapter { margin-bottom: 66px; }
  .annual-2023 .first-chapter .chapter-heading { max-width: 310px; }
  .annual-2023 .threshold-photo { width: calc(100% - var(--gutter)); }
  .annual-2023 .threshold-photo img { aspect-ratio: 1.35; object-position: 36% 50%; }
  .annual-2023 .offset-reading { margin: 47px var(--gutter) 70px; }
  .annual-2023 .quiet { padding: 61px 0 65px; }
  .annual-2023 .quiet-grid { display: block; }
  .annual-2023 .quiet-side { padding: 0; }
  .annual-2023 .quiet-side .chapter-heading { margin-bottom: 29px; max-width: 320px; }
  .annual-2023 .quiet-grid .prayer-photo { margin-bottom: 0; }
  .annual-2023 .prayer-photo img { aspect-ratio: 1.5; }
  .annual-2023 .photo-credit { margin-top: 11px; margin-bottom: 34px; font-size: 10px; }
  .annual-2023 .forest-passage { padding-top: 66px; }
  .annual-2023 .forest-photo { width: calc(100% - var(--gutter)); }
  .annual-2023 .forest-photo img { aspect-ratio: 1.35; }
  .annual-2023 .path-reading { margin-bottom: 65px; }
  .annual-2023 .ending { padding: 0 var(--gutter) 72px; max-width: none; }
  .annual-2023 .ending .chapter-heading { padding-top: 36px; margin-bottom: 27px; }
  .annual-2023 .record-note { font-size: 11px; }
  html[lang=ja] .annual-2023 .opening h1 { font-size: clamp(23px, 6.8vw, 29px); line-height: 1.65; letter-spacing: .035em; max-width: none; }
  html[lang=ja] .annual-2023 .prose { line-height: 2.1; letter-spacing: .01em; }
}
@media print {
  .annual-2023 .chapter-grid, .annual-2023 .quiet-grid { display: block; }
  .annual-2023 .intro, .annual-2023 .ending { padding: 25px; }
  .annual-2023 .quiet { padding: 25px; }
  .annual-2023 .forest-passage { padding-top: 25px; }
  .annual-2023 .photo-credit { color: var(--ink); }
}
