/* A walk through four celebrations. Each compact botanical mount opens in
   its own reading position; content stays in normal document flow. */
#invitation-page #events[data-event-layout='chapters'] {
  --event-scene-height: clamp(286px,96vw,374px);
  --chapter-art-width: min(84vw,310px);
  padding-bottom: 3.5rem;
}
#invitation-page #events[data-event-layout='chapters']>.section-intro {
  max-width: 650px; padding: 2.8rem 1.4rem 2rem;
}
#invitation-page #events[data-event-layout='chapters']>.section-intro h2 {
  max-width: 18ch; font-size: clamp(2.3rem,9.3vw,3.4rem);
  line-height: 1.08; letter-spacing: -.025em;
}
#invitation-page #events[data-event-layout='chapters']>.section-intro p {
  margin-top: .75rem; max-width: 32ch; font-size: 1.12rem; line-height: 1.4;
}
#invitation-page #events[data-event-layout='chapters'] #events-list {
  display: flex; flex-direction: column; gap: 2.8rem;
  width: min(calc(100% - 28px),900px); margin-inline: auto;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony {
  --autumn-fan-ready: 1;
  display: grid; grid-template-columns: minmax(0,1fr);
  align-items: start; justify-items: center;
  position: relative; width: 100%; min-height: 0; height: auto;
  margin: 0; padding: 0; overflow: visible;
  background: none!important; opacity: 1; transform: none; animation: none;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::before,
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::after { content: none; display: none; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-art {
  grid-column: 1; grid-row: 1; position: relative; inset: auto;
  order: 0!important; width: var(--chapter-art-width); height: var(--event-scene-height);
  min-height: 0; margin: 0; border-radius: 48% 48% 0 0 / 12% 12% 0 0;
  transform: none; animation: none;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy {
  grid-column: 1; grid-row: 2; position: relative;
  width: min(100%,330px); max-width: none; min-height: 0;
  margin: -10px 0 0!important; padding: 1.55rem 1.55rem 1.65rem;
  text-align: center; border-radius: 48% 48% 3px 3px / 12px 12px 3px 3px;
  background: linear-gradient(rgb(238 224 192/.94),rgb(238 224 192/.9)),url('assets/invitation-vellum-v40.webp') center/100% 100%;
  box-shadow: 0 12px 25px rgb(8 22 13/.13);
  transform: none!important; opacity: 1; animation: none;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony h3 {
  font-size: clamp(2.15rem,9.2vw,2.7rem); line-height: 1.04;
  font-weight: 500; letter-spacing: -.03em; margin: 0 auto;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-date {
  font-size: 1rem; line-height: 1.4; margin-bottom: .65rem;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-venue {
  font-size: 1.18rem; line-height: 1.35; margin-top: .65rem;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-description {
  font-size: .85rem; line-height: 1.75; margin: .85rem auto;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-attire {
  font-size: .8rem; line-height: 1.65; margin: 0 auto;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-attire .label {
  font-size: 1rem; margin-bottom: .05rem;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-map {
  min-height: 44px; margin-top: .35rem; font-size: .78rem; padding: .65rem .2rem;
}
/* Fan, fixed observation footprint and photographic aperture share dimensions.
   Only the silk blades transform, never the article or its reading plane. */
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-footprint,
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan,
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props {
  position: absolute; inset: 0 auto auto 50%;
  width: var(--chapter-art-width); height: var(--event-scene-height);
  border-radius: 48% 48% 0 0 / 12% 12% 0 0;
  transform: translateX(-50%); pointer-events: none;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-footprint { visibility: hidden; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan {
  z-index: 9; isolation: isolate; overflow: hidden; perspective: 1100px;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan[hidden],
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props [hidden] { display: none!important; }
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props { z-index: 10; }
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props>span { animation-play-state: paused!important; }
#invitation-page #events[data-event-layout='chapters'] #events-list .fan-running .conservatory-props>span { animation-play-state: running!important; }
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-pendant { height: 170px; max-width: 40px; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-veil {
  display: block; position: absolute; inset: 0; z-index: 1;
  background: radial-gradient(ellipse at 50% 32%,#556047 0,#243c2d 64%,#182d23 100%);
  box-shadow: inset 0 0 0 1px rgb(231 199 145/.32),inset 0 0 60px rgb(7 23 14/.35);
  opacity: 1; transition: opacity 1.5s ease .28s;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blades { position: absolute; inset: 0; z-index: 2; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade {
  --closed-angle: calc((var(--blade-index) - 3) * 16deg);
  --open-angle: -112deg;
  display: block; position: absolute; left: 9%; bottom: -1.2%; width: 82%; height: 107%;
  transform-origin: 50% 97%; transform: rotate(var(--closed-angle));
  transition: transform 2.65s cubic-bezier(.3,.02,.16,1);
  transition-delay: calc(var(--blade-index) * 65ms + 140ms);
  filter: drop-shadow(-3px 1px 4px rgb(27 21 10/.32)); backface-visibility: hidden;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(1) { --open-angle: -134deg; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(2) { --open-angle: -123deg; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(3) { --open-angle: -112deg; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(4) { --open-angle: 103deg; z-index: 4; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(5) { --open-angle: 114deg; z-index: 3; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(6) { --open-angle: 125deg; z-index: 2; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade:nth-child(7) { --open-angle: 136deg; z-index: 1; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-blade img {
  display: block; position: static; width: 100%; height: 100%; max-width: none;
  object-fit: fill; opacity: 1; transform: none; animation: none; filter: saturate(.78) brightness(.95);
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-pivot {
  display: block; position: absolute; z-index: 6; bottom: -.1%;
  left: calc(50% - 17px); width: 34px; height: 34px;
  filter: drop-shadow(0 3px 4px rgb(15 22 11/.4)); transform: rotate(-25deg);
  transition: transform 2.9s cubic-bezier(.3,.02,.16,1),opacity 1.5s ease 1.4s;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-pivot img {
  display: block; width: 100%; height: 100%; object-fit: contain;
  transform: none; animation: none; filter: saturate(.65); opacity: 1;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .is-fan-open .autumn-fan-veil { opacity: 0; }
#invitation-page #events[data-event-layout='chapters'] #events-list .is-fan-open .autumn-fan-blade { transform: rotate(var(--open-angle)); }
#invitation-page #events[data-event-layout='chapters'] #events-list .is-fan-open .autumn-fan-pivot { transform: rotate(20deg); opacity: .88; }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan::after {
  content: ''; position: absolute; z-index: 5; inset: -25% -75%;
  background: linear-gradient(112deg,transparent 42%,rgb(255 240 191/.2) 49%,transparent 56%);
  opacity: 0; transform: translate3d(-28%,0,0); pointer-events: none; mix-blend-mode: soft-light;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .is-fan-open .autumn-fan::after { animation: autumn-fan-light-v48 2.8s ease both paused; }
#invitation-page #events[data-event-layout='chapters'] #events-list .is-fan-open.fan-running .autumn-fan::after { animation-play-state: running; }
#invitation-page #events[data-event-layout='chapters'] #events-list .fan-settled .autumn-fan::after { animation: none; opacity: 0; }
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan.is-fan-open:not(.fan-settled) .ceremony-copy>* { animation: autumn-fan-words-v48 1.2s ease 1.25s both paused; }
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan.is-fan-open.fan-running:not(.fan-settled) .ceremony-copy>* { animation-play-state: running; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy:focus-within>* { animation: none!important; opacity: 1!important; transform: none!important; }
@keyframes autumn-fan-light-v48 {
  0%,10% { opacity: 0; transform: translate3d(-28%,0,0); }
  35% { opacity: .8; }
  78%,100% { opacity: 0; transform: translate3d(28%,0,0); }
}
@keyframes autumn-fan-words-v48 {
  from { opacity: .2; transform: translate3d(0,8px,0); }
  to { opacity: 1; transform: translate3d(0,0,0); }
}
@media(min-width:900px) {
  #invitation-page #events[data-event-layout='chapters'] { --chapter-art-width: 340px; --event-scene-height: 420px; }
  #invitation-page #events[data-event-layout='chapters']>.section-intro { padding-top: 3.5rem; padding-bottom: 2.7rem; }
  #invitation-page #events[data-event-layout='chapters'] #events-list { gap: 3.5rem; max-width: 880px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony {
    grid-template-columns: 380px minmax(0,1fr); align-items: center;
  }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-art { grid-column: 1; grid-row: 1; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy {
    grid-column: 2; grid-row: 1; width: calc(100% - 22px); margin: 0!important;
    padding: 2rem; border-radius: 3px; text-align: left;
  }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony h3 { font-size: 2.7rem; margin-inline: 0; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-description { margin-inline: 0; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-footprint,
  #invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan,
  #invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props {
    inset: 50% auto auto 20px; transform: translateY(-50%);
  }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) { grid-template-columns: minmax(0,1fr) 380px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .ceremony-art { grid-column: 2; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .ceremony-copy { grid-column: 1; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .autumn-fan-footprint,
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .autumn-fan,
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .conservatory-props { left: auto; right: 20px; }
}
.card-preview #invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan { display: none!important; }
@media(prefers-reduced-motion:reduce) {
  #invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan { display: none!important; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy>* { animation: none!important; opacity: 1!important; transform: none!important; }
}
