# Events

This folder contains **repeatable playbooks** for how we work an event (strategy → scheduling → outreach → execution → follow-up), plus event-specific notes.

## Standard process (use for any event)

### 0) Define constraints (15 minutes)
- Confirm **official event dates** + your **on-site dates**.
- Decide **meeting window** (days + hours) and **timezone** (use event city).
- Decide **meeting format** (30/45 min) + buffers (recommended: 15/15).

### 1) Create the “anchor” calendar event (Google Calendar)
Create one all-day (or fixed-time) *container* event covering your on-site window.
- Title: `{EVENT} {YEAR} — {CITY} (Meetings)`
- Dates: on-site window
- **Show as: Free** (critical; avoid blocking scheduling tools)
- Description should include:
  - On-site dates + meeting window
  - Primary booking link (event shortlink)
  - Secondary booking link (/call)
  - 3–5 bullets of what you’re booking (so you can forward it)
  - Key links (slate hub, product sites)

### 2) Create a dedicated Cal.com event type
Create a dedicated public booking page for the event.
- Slug: `{event}-{city}-{year}` (stable)
- Duration: 30m (default)
- Buffers: 15m before / 15m after
- Location: In-person (city) + Cal Video fallback
- Questions: "Company + role" and "What do you want to discuss?"

**Availability rules:**
- Timezone: event city
- Weekly hours: set a sane default window (e.g. 10:00–18:00)
- Booking window: hard-limit to the meeting date range (not the whole month)

**Verification (do before outreach):**
- Open the public page and confirm *only* the intended dates are enabled and that time slots appear.

**Cal.com gotchas (from EFM 2026):**
- If availability looks empty, check the **schedule** behind the event type has real weekly availability (not `availability: []` + only overrides).
- Slots API expects `start`/`end` query params (not `startTime`/`endTime`).

### 3) Add/maintain a first-party shortlink
In `src/sites/cultscale/public/_redirects`, add:
- `/{event}` → `https://cal.com/cultscale/{slug} 302`

Use the shortlink in outreach so you can change providers later without breaking links.

### 4) Outreach (2 waves)
- Wave 1 (T-3 to T-2 weeks): priority targets, 10–20 outbound
- Wave 2 (T-7 to T-3 days): fill gaps + same-day pings

Keep asks single-threaded:
- Slate meetings (audience, positioning, release pathways) — don’t blur.

### 5) During the event (daily cadence)
- Morning: lock priorities + send 3–5 pings
- Between meetings: capture 3 bullets (need / next step / date)
- End of day: send follow-ups + book next-step holds

### 6) Post-event (48 hours)
Every "yes" gets:
- recap email
- 2 concrete next steps
- a calendar hold

## Event playbooks
- `efm-2026/` — European Film Market / Berlinale
