/* Place cards (core/events/001) — library w1 (A1279), ported from themes/garden/theme.css (Wave 2, A1263): paper place
   cards with a sprig, placed on the table in step with the scroll, and the calendar menu. A light part over the skin's
   light ground (Garden: the page itself). */
.ev001 {
  --ev001-radius: 6px;
  --ev001-shadow: 0 1px 2px rgb(58 52 49 / .06), 0 14px 34px rgb(58 52 49 / .10);
  background: var(--k-light-ground); color: var(--k-ink);
}
.ev001__inner {
  position: relative; z-index: 1;
  max-width: calc(var(--k-measure) + 2 * var(--k-gutter)); margin: 0 auto;
  padding: var(--k-section-pad) var(--k-gutter) 0; text-align: center;
}
.ev001 .k-kicker + .k-title { margin-top: var(--k-s-2); }

/* events: place cards (scroll-linked placement in section.js; the origin matches GSAP's) */
.ev001__list { display: grid; gap: var(--k-s-9); margin-top: calc(var(--k-s-8) + 24px); }
.ev001-card {
  position: relative; margin: 0 auto; padding: var(--k-s-8) var(--k-s-5) var(--k-s-6);
  background: var(--k-grain), var(--k-card); border-radius: var(--ev001-radius); box-shadow: var(--ev001-shadow);
  transform: rotate(-.6deg); transform-origin: 50% 100%;
}
.ev001-event:nth-child(even) .ev001-card { transform: rotate(.6deg); }
.ev001-card::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgb(var(--c-secondary-rgb) / .45); border-radius: 3px; pointer-events: none; }
.ev001-card__sprig { position: absolute; top: -52px; left: 50%; width: 76px; height: auto; margin-left: -38px; transform-origin: 50% 100%; }
.ev001-card__num { font: 600 .75rem/1 var(--k-font-body); letter-spacing: .3em; color: var(--c-secondary-dark); }
.ev001-card__name { margin-top: var(--k-s-2); font: 400 clamp(2.375rem, 10.5vw, 3.125rem)/1.05 var(--k-font-script); color: var(--c-primary); }
.ev001-card__when { margin-top: var(--k-s-3); display: grid; gap: 2px; }
.ev001-card__weekday { font: 600 .75rem/1.4 var(--k-font-body); letter-spacing: .22em; text-transform: uppercase; color: var(--c-secondary-dark); }
.ev001-card__date { font-size: 1.375rem; }
.ev001-card__time { font-style: italic; color: var(--k-ink-soft); }
.ev001-card__facts { margin-top: var(--k-s-5); padding-top: var(--k-s-5); display: grid; gap: var(--k-s-4); border-top: 1px solid var(--k-line); }
.ev001-fact dt { font: 600 .6875rem/1.4 var(--k-font-body); letter-spacing: .22em; text-transform: uppercase; color: var(--c-secondary-dark); }
.ev001-fact dd { margin: 2px 0 0; }
.ev001-venue, .ev001-address { display: block; }
.ev001-address { font-size: 1.0625rem; color: var(--k-ink-soft); }
.ev001-card__actions { position: relative; z-index: 1; margin-top: var(--k-s-6); display: flex; flex-direction: column; align-items: center; gap: var(--k-s-3); }
.ev001-card__actions .k-btn { width: min(100%, 260px); }

/* add to calendar (engine partial): the menu sits in-flow under the button (the skin styles the button) */
.ev001 .kjy-cal { width: min(100%, 260px); }
.ev001 .kjy-cal__toggle { width: 100%; list-style: none; }
.ev001 .kjy-cal__toggle::-webkit-details-marker { display: none; }
.ev001 .kjy-cal__toggle::after {
  content: ""; width: 7px; height: 7px; margin-left: var(--k-s-1);
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg); transition: transform .2s;
}
.ev001 .kjy-cal[open] .kjy-cal__toggle::after { transform: translateY(2px) rotate(225deg); }
.ev001 .kjy-cal__menu { margin-top: var(--k-s-2); padding: var(--k-s-1) 0; background: var(--k-paper); border: 1px solid rgb(var(--c-secondary-rgb) / .35); border-radius: 12px; }
.ev001 .kjy-cal__opt { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 var(--k-s-4); font-size: 1.0625rem; color: var(--c-primary); text-decoration: none; }
.ev001 .kjy-cal__opt + .kjy-cal__opt { border-top: 1px solid rgb(var(--c-secondary-rgb) / .25); }
