/* Cloud banks part with the visitor's scroll, revealing the event schedule. */
.celebration-section {
  padding: 75px 30px 45px;
  overflow: clip;
  isolation: isolate;
  --sky-left: 0%;
  --sky-right: 0%;
}
.celebration-section .section-intro { font-size: 20px; }
.celebration-section .script-heading { font-size: 53px; }
.sky-timeline {
  position: relative;
  list-style: none;
  max-width: 490px;
  padding: 0;
  margin: 53px auto 0;
  text-align: center;
}
.sky-timeline::before {
  content: '';
  position: absolute;
  width: 1px;
  background: #8fb5c8;
  top: 28px;
  bottom: 125px;
  left: 50%;
  transform: translateX(-50%);
}
.schedule-event { position: relative; min-height: 205px; }
.schedule-event::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 24px;
  width: 11px;
  height: 11px;
  background: #83adc3;
  transform: translateX(-50%) rotate(45deg);
}
.schedule-copy { width: 44%; margin-left: auto; }
.schedule-event:nth-child(even) .schedule-copy { margin-left: 0; margin-right: auto; }
.schedule-time { display: block; font: 400 43px / 1.1 var(--serif); color: #4c6279; }
.schedule-time small { font: italic 23px var(--serif); }
.schedule-time-prayer { font-size: 34px; line-height: 1.1; }
.schedule-event h3 { font: 400 28px / 1.15 var(--serif); margin: 10px 0 6px; color: #596f82; }
.schedule-event p { font: italic 17px / 1.4 var(--serif); color: #89949b; }
.sky-clouds { position: absolute; inset: 0; z-index: 5; pointer-events: none; user-select: none; overflow: clip; }
.sky-cloud {
  position: absolute;
  width: 145%;
  max-width: none;
  height: auto;
  will-change: transform;
}
.sky-cloud-left { left: -45%; top: 345px; transform: translate3d(var(--sky-left), 0, 0); }
.sky-cloud-right { right: -45%; top: 205px; transform: translate3d(var(--sky-right), 0, 0) scaleX(-1); }
@media(max-width:760px) {
  .celebration-section { padding: 65px 24px 30px; }
  .celebration-section .eyebrow { font-size: 8px; letter-spacing: 2px; }
  .celebration-section .script-heading { font-size: clamp(38px, 9.5vw, 49px); white-space: nowrap; }
  .celebration-section .section-intro { font-size: 19px; }
  .sky-timeline { margin-top: 43px; }
  .schedule-event { min-height: 205px; }
  .schedule-copy { width: 43%; }
  .schedule-time { font-size: 37px; }
  .schedule-time small { font-size: 20px; }
  .schedule-time-prayer { font-size: 30px; }
  .schedule-event h3 { font-size: 25px; }
  .schedule-event p { font-size: 16px; }
  .sky-cloud-left { top: 345px; }
  .sky-cloud-right { top: 215px; }
}
@media(max-width:370px) {
  .celebration-section { padding-left: 19px; padding-right: 19px; }
  .celebration-section .script-heading { font-size: 35px; }
  .schedule-time { font-size: 33px; }
  .schedule-time-prayer { font-size: 27px; }
  .schedule-event h3 { font-size: 23px; }
  .schedule-event p { font-size: 15px; }
}
@media(prefers-reduced-motion:reduce) {
  .sky-clouds { display: none; }
}
