feat(website): book-a-demo & status pages, expand roadmap/contact

- /demo: book-a-demo page with a what-to-expect column + a form that
  composes a prefilled email to info@dezky.eu (interim, no backend); built
  to swap for a self-hosted scheduler later. Wire every "Book a demo" CTA
  (nav, hero, pricing, the previously-dead final-CTA button, and the
  contact/partners/migration/coming-soon CTAs) to /demo.
- /status: manually-maintained system-status page (overall banner,
  per-service rows, incident history). Live modules operational; Video/Chat
  marked coming soon.
- Roadmap: expand the board (5 items/column) + a "the bigger picture"
  themes grid + a "suggest a feature" CTA + a directional-timelines note.
- Contact: purpose-specific channels (info@ / legal@ / privacy@), a
  response-time note, and a company + "see it live" demo block.
- Drop /status from the [slug].vue stub map; tidy now-unused imports.
This commit is contained in:
Ronni Baslund
2026-06-06 19:19:19 +02:00
parent 3347fa9265
commit d2096eb847
13 changed files with 427 additions and 48 deletions
@@ -2,18 +2,16 @@
// Placeholder body for not-yet-built sub-pages. Shows the page title under a
// "coming soon" eyebrow, an explanatory line, and a demo CTA. Legal pages pass
// the legal-specific body instead of the generic one.
import { useRoute } from 'vue-router'
import { useCopy, goToSection } from '~/composables/useLanding'
import { useCopy } from '~/composables/useLanding'
defineProps<{ title: string, body: string }>()
const copy = useCopy()
const route = useRoute()
</script>
<template>
<LandingPageHeader :label="copy.pages.comingSoonKicker" :title="title" :intro="body" />
<LandingContainer pad="clamp(32px, 5vw, 48px) clamp(20px, 5vw, 64px) clamp(56px, 8vw, 160px)">
<LandingBtn variant="primary" size="lg" @click="goToSection('#final-cta', route.path)">{{ copy.pages.ctaDemo }} </LandingBtn>
<LandingBtn variant="primary" size="lg" @click="navigateTo('/demo')">{{ copy.pages.ctaDemo }} </LandingBtn>
</LandingContainer>
</template>