{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "agency-contact",
  "title": "Agency: Contact",
  "description": "The question, a line on how the studio replies, and the email set large with a copy button.",
  "dependencies": [
    "motion"
  ],
  "registryDependencies": [
    "https://eased.dev/r/eased-tokens.json",
    "https://eased.dev/r/eased-motion.json",
    "https://eased.dev/r/agency-core.json",
    "https://eased.dev/r/button.json",
    "https://eased.dev/r/eased-copy.json"
  ],
  "files": [
    {
      "path": "src/registry/eased/templates/agency/contact.tsx",
      "content": "\"use client\";\n\nimport { CopyIcon, useCopy } from \"../../_primitives/copy/copy\";\nimport { Button } from \"../../button/button\";\nimport { contact } from \"./content\";\nimport { Reveal, Section } from \"./kit\";\n\n/**\n * The close: the question, a line on how the studio answers, and the email set as large as the\n * question, as the one way in. A button beside it copies the address, its label swapping to\n * Copied, for people whose mail app is not the default.\n */\nexport function Contact() {\n  const { copied, copy } = useCopy(contact.email);\n  return (\n    <Section id=\"contact\" label={contact.label} className=\"flex flex-col gap-pad-lg\">\n      <Reveal className=\"flex flex-col gap-pad-base\">\n        <p className=\"font-display text-display-5xl font-medium tracking-display text-balance text-text sm:text-display-6xl\">{contact.title}</p>\n        <p className=\"max-w-xl text-ui-md text-pretty text-text-secondary\">{contact.body}</p>\n      </Reveal>\n      <Reveal index={1} className=\"flex flex-wrap items-center gap-x-pad-md gap-y-in\">\n        <a\n          href={`mailto:${contact.email}`}\n          className=\"focus-ring min-w-0 rounded-control-sm font-display text-display-3xl font-medium tracking-display break-all text-text underline decoration-line-strong decoration-2 underline-offset-[0.18em] transition-colors duration-(--eased-duration-fast) ease-standard hover-fine:decoration-text sm:text-display-5xl\"\n        >\n          {contact.email}\n        </a>\n        <Button variant=\"secondary\" swapKey={copied ? \"copied\" : \"idle\"} onClick={() => void copy()}>\n          <CopyIcon copied={copied} />\n          {copied ? contact.copied : contact.copy}\n        </Button>\n        <span role=\"status\" className=\"sr-only\">\n          {copied ? contact.copied : \"\"}\n        </span>\n      </Reveal>\n    </Section>\n  );\n}\n",
      "type": "registry:component",
      "target": "@components/eased/templates/agency/contact.tsx"
    }
  ],
  "meta": {
    "template": "agency",
    "kind": "template-section",
    "industries": [
      "media"
    ]
  },
  "type": "registry:block"
}