<template>
  <PageShell title="Refund Policy" subtitle="How Ghost Guild handles refund requests">
    <div class="policy-prose">
      <p class="policy-updated">Last updated: April 20, 2026</p>

      <section class="policy-section">
        <p>
          Ghost Guild is a program of Baby Ghosts, a Canadian non-profit.
          Contributions and event ticket revenue go directly toward running the
          program. We handle refund requests on a case-by-case basis rather
          than by blanket rule.
        </p>
      </section>

      <section class="policy-section">
        <h2>Membership dues</h2>
        <p>
          Membership is pay-what-you-can, and you can change or pause your
          contribution any time as your situation changes. We don't refund dues
          that have already been charged. If paying ever becomes a problem, the
          Solidarity Fund is there for that reason; reach out and we'll work it
          out.
        </p>
      </section>

      <section class="policy-section">
        <h2>Event tickets</h2>
        <p>
          Paid event registrations can't be cancelled from your account page.
          Refunds for events are considered case-by-case at admin discretion,
          taking into account how close to the event you're asking, whether
          your spot can be filled, and the circumstances behind the request.
        </p>
        <p>
          If you can no longer attend an event you've paid for, email
          <a href="mailto:hello@ghostguild.org">hello@ghostguild.org</a> as
          early as you can and we'll sort it out with you.
        </p>
      </section>

      <section class="policy-section">
        <h2>Contact</h2>
        <p>
          Refund requests, questions, anything else:
          <a href="mailto:hello@ghostguild.org">hello@ghostguild.org</a>
        </p>
      </section>
    </div>
  </PageShell>
</template>

<script setup>
useHead({
  title: 'Refund Policy · Ghost Guild',
})
</script>

<style scoped>
.policy-prose {
  max-width: 720px;
  padding: 32px;
}

.policy-updated {
  font-family: "Commit Mono", monospace;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--candle);
  margin-bottom: 24px;
}

.policy-section {
  padding: 28px 0;
  border-bottom: 1px dashed var(--border);
}
.policy-section:first-of-type {
  padding-top: 0;
}
.policy-section:last-child {
  border-bottom: none;
}

.policy-section h2 {
  font-family: "Brygada 1918", serif;
  font-size: 20px;
  font-weight: 600;
  color: var(--text-bright);
  letter-spacing: -0.01em;
  margin-bottom: 16px;
  line-height: 1.25;
}

.policy-section p {
  font-size: 13px;
  color: var(--text-dim);
  line-height: 1.7;
  margin-bottom: 12px;
}

.policy-section a {
  color: var(--candle);
}

.policy-section strong {
  color: var(--text-bright);
  font-weight: 600;
}

@media (max-width: 640px) {
  .policy-prose {
    padding: 20px 16px;
  }
}
</style>
