/* The fan uncovers a living garden keepsake. Only optional assets move;
   neither the paper nor the guest text changes scale or position on scroll. */
#invitation-page #events[data-event-layout='chapters'] {
  --living-ink: #263e31;
  --living-garden-ready: 1;
  background: linear-gradient(rgb(34 54 43/.9),rgb(25 43 33/.84)),url('assets/autumn-clearing-mobile-v32.webp') center top/640px auto repeat-y;
}
#invitation-page #events[data-event-layout='chapters'] #events-list { background: none; gap: 2.6rem; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony {
  background: linear-gradient(145deg,rgb(225 230 212/.96),rgb(214 224 202/.96) 49%,rgb(231 223 200/.95)),url('assets/invitation-vellum-v40.webp') center/100% 100%!important;
  border-radius: 46% 46% 5px 5px / 19px 19px 5px 5px;
  box-shadow: 0 18px 32px rgb(7 20 12/.22),inset 0 0 0 1px rgb(211 185 132/.62);
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::before {
  inset: 8px; border-color: rgb(128 118 75/.27); border-radius: 45% 45% 2px 2px / 15px 15px 2px 2px; z-index: 1;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::after {
  content: ''; display: block; position: absolute; z-index: 2; inset: -10%;
  background: url('assets/keepsake-bough-v18.webp') -70px 35%/220px auto no-repeat;
  filter: grayscale(1) brightness(.2) blur(5px); opacity: .035; transform-origin: 0 40%; pointer-events: none;
  animation: living-shade-v50 7.6s ease-in-out infinite alternate paused;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-art {
  border-radius: 44% 44% 0 0 / 16% 16% 0 0; box-shadow: none;
  -webkit-mask-image: linear-gradient(#000 72%,rgb(0 0 0/.85) 85%,transparent 100%);
  mask-image: linear-gradient(#000 72%,rgb(0 0 0/.85) 85%,transparent 100%);
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-art::after { background: linear-gradient(115deg,rgb(239 210 143/.12),transparent 54%); }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy { padding: .65rem 1rem 0; color: var(--living-ink); }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony h3 {
  max-width: 15ch; color: var(--living-ink); font-size: clamp(1.9rem,8.3vw,2.25rem); line-height: 1.04;
  font-weight: 500; letter-spacing: -.035em; text-shadow: 0 1px rgb(255 252 235/.8);
}
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-date { color: #665035; font-size: .98rem; letter-spacing: 0; margin-bottom: .55rem; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-venue { color: #5d6248; font-size: 1.18rem; margin-top: .6rem; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-description { max-width: 29ch; color: #354936; font-size: .86rem; line-height: 1.7; margin: .85rem auto; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-attire { color: #4b563c; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-attire .label { color: #665035; }
#invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-map { color: #324a38; }
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-props { -webkit-mask-image: linear-gradient(#000 78%,transparent); mask-image: linear-gradient(#000 78%,transparent); }
#invitation-page #events[data-event-layout='chapters'] #events-list .conservatory-canopy { animation-duration: 5.8s; filter: drop-shadow(0 5px 4px rgb(20 30 16/.19)); }
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan,
#invitation-page #events[data-event-layout='chapters'] #events-list .autumn-fan-footprint { border-radius: inherit; }

/* Wrappers enter from the edge. Their image children keep a separate,
   anchored breeze afterwards, rather than repeating the entrance. */
#invitation-page #events[data-event-layout='chapters'] #events-list .event-botanicals { display: block; position: absolute; z-index: 6; inset: 0; overflow: hidden; border-radius: inherit; pointer-events: none; }
#invitation-page #events[data-event-layout='chapters'] #events-list .event-botanicals[hidden],
#invitation-page #events[data-event-layout='chapters'] #events-list .event-botanicals [hidden] { display: none!important; }
#invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig {
  --arrival-x: -38px;
  display: block; position: absolute; left: -32px; top: calc(var(--event-scene-height) - 9px); width: 84px;
  opacity: 1; transform: none; filter: saturate(.72) drop-shadow(3px 5px 3px rgb(45 53 27/.19));
}
#invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig--right { --arrival-x: 38px; left: auto; right: -23px; top: calc(var(--event-scene-height) + 72px); width: 70px; }
#invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig img {
  display: block; position: static; width: 100%; height: auto; max-width: none;
  transform-origin: 0 100%; transform: rotate(-12deg); animation: living-maple-v50 4.8s ease-in-out -1s infinite alternate paused;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig--right img {
  transform-origin: 50% 100%; transform: rotate(-15deg) scaleX(-1);
  animation-name: living-rose-v50; animation-duration: 5.6s; animation-delay: -2.5s;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan:not(.is-fan-open) .event-sprig { opacity: 0; transform: translate3d(var(--arrival-x),5px,0); }
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan.is-fan-open .event-sprig { animation: living-arrival-v50 1.9s cubic-bezier(.2,.65,.25,1) 1s both paused; }
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan.is-fan-open .event-sprig--right { animation-delay: 1.25s; }
/* Leaves stay over the photo, never the live date/title. */
#invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter {
  display: block; position: absolute; top: 26px; left: 20%; width: 15px; opacity: 0; transform-origin: 45% 40%;
  filter: saturate(.65) drop-shadow(1px 2px 2px rgb(12 22 13/.16)); animation: living-leaf-v50 9s linear -3s infinite paused;
}
#invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter--two { left: 62%; width: 11px; animation-duration: 11.5s; animation-delay: -7s; }
#invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter img { display: block; width: 100%; height: auto; }
#invitation-page #events[data-event-layout='chapters'] #events-list .fan-running.is-fan-open .event-botanicals span,
#invitation-page #events[data-event-layout='chapters'] #events-list .fan-running.is-fan-open .event-sprig img,
#invitation-page #events[data-event-layout='chapters'] #events-list .fan-running.is-fan-open::after { animation-play-state: running; }
#invitation-page #events[data-event-layout='chapters'] #events-list .has-autumn-fan:not(.is-fan-open) .event-drifter { visibility: hidden; }
@keyframes living-arrival-v50 { from { opacity: 0; transform: translate3d(var(--arrival-x),5px,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
@keyframes living-maple-v50 { from { transform: rotate(-12deg) translate3d(-1px,0,0); } to { transform: rotate(-3deg) translate3d(2px,-3px,0); } }
@keyframes living-rose-v50 { from { transform: rotate(-15deg) scaleX(-1) translate3d(1px,0,0); } to { transform: rotate(-6deg) scaleX(-1) translate3d(-2px,-3px,0); } }
@keyframes living-shade-v50 { from { transform: rotate(-5deg) translate3d(-5px,-2px,0); opacity: .035; } to { transform: rotate(3deg) translate3d(6px,3px,0); opacity: .065; } }
@keyframes living-leaf-v50 {
  0%,6% { opacity: 0; transform: translate3d(0,0,0) rotate(-30deg) scale(.8); }
  15% { opacity: .75; }
  40% { transform: translate3d(16px,calc(var(--event-scene-height) * .33),0) rotate(45deg) scaleX(.72); }
  65% { opacity: .65; transform: translate3d(1px,calc(var(--event-scene-height) * .58),0) rotate(110deg) scaleX(1); }
  80%,100% { opacity: 0; transform: translate3d(22px,calc(var(--event-scene-height) * .72),0) rotate(160deg) scaleX(.65); }
}
@media(min-width:900px) {
  #invitation-page #events[data-event-layout='chapters'] { background-size: auto,100% auto; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony,
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) { border-radius: 6px; grid-template-columns: 180px minmax(0,1fr); gap: 29px; padding-right: 44px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::before { border-radius: 2px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony .ceremony-copy,
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony:nth-child(even) .ceremony-copy { padding: 0; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony h3 { margin-inline: 0; font-size: 2.3rem; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-description { margin-inline: 0; max-width: 31ch; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig { top: auto; bottom: 15px; left: -20px; width: 98px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig--right { left: auto; right: -22px; bottom: 18px; width: 69px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter { top: calc(50% - var(--event-scene-height) / 2 + 9px); left: 58px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter--two { left: 144px; }
}
@media(max-width:359px) {
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony-copy { padding: .65rem .55rem 0; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony h3 { font-size: 1.9rem; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig { left: -38px; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig--right { left: auto; right: -29px; }
}
.card-preview #invitation-page #events[data-event-layout='chapters'] #events-list .event-botanicals,
.card-preview #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::after { display: none; }
@media(prefers-reduced-motion:reduce) {
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-botanicals span,
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig img,
  #invitation-page #events[data-event-layout='chapters'] #events-list .ceremony::after { animation: none!important; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-sprig { opacity: 1; }
  #invitation-page #events[data-event-layout='chapters'] #events-list .event-drifter { display: none; }
}
