chore: neutralize comiida demo prose -> generic placeholder content

Rewrote the sample pages/components to niche-neutral placeholder copy so the
base carries no Medellín/restaurant/author-specific content:
- about, faq, services  -> generic placeholder pages (structure preserved)
- index hero, Footer, Newsletter, contact, 404, BaseLayout  -> neutral copy

app/src is now free of comiida/medellin/carlos references; build = 13 pages, Complete.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SYHWLHihq3v9nxNwoPCKSn
This commit is contained in:
Carlos Arias 2026-07-04 23:13:55 +00:00
parent 92fa6c9140
commit 0fcf707a17
9 changed files with 52 additions and 115 deletions

View file

@ -44,7 +44,7 @@ const { flush = false } = Astro.props;
</div> </div>
<div class="border-t border-border/60"> <div class="border-t border-border/60">
<div class="mx-auto flex max-w-6xl flex-col items-start justify-between gap-2 px-5 py-5 text-xs text-muted-foreground sm:flex-row sm:items-center"> <div class="mx-auto flex max-w-6xl flex-col items-start justify-between gap-2 px-5 py-5 text-xs text-muted-foreground sm:flex-row sm:items-center">
<div>&copy; {new Date().getFullYear()} {SITE.name}. Dining in Medellín.</div> <div>&copy; {new Date().getFullYear()} {SITE.name}.</div>
<div>Set in Fraunces &amp; Inter.</div> <div>Set in Fraunces &amp; Inter.</div>
</div> </div>
</div> </div>

View file

@ -6,7 +6,7 @@ const { compact = false } = Astro.props;
compact ? ( compact ? (
<div> <div>
<div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Newsletter</div> <div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Newsletter</div>
<p class="mt-2 text-sm text-muted-foreground">Medellín dining in your inbox — new guides and openings.</p> <p class="mt-2 text-sm text-muted-foreground">New posts in your inbox.</p>
<form data-newsletter-form class="mt-3 flex gap-2"> <form data-newsletter-form class="mt-3 flex gap-2">
<input <input
type="email" type="email"
@ -24,9 +24,9 @@ const { compact = false } = Astro.props;
) : ( ) : (
<section data-newsletter-cta class="border-t border-border/60 pt-16 pb-10"> <section data-newsletter-cta class="border-t border-border/60 pt-16 pb-10">
<div class="mx-auto max-w-2xl px-5 text-center"> <div class="mx-auto max-w-2xl px-5 text-center">
<h2 class="font-serif text-3xl font-semibold tracking-tight sm:text-4xl">Eat well in Medellín.</h2> <h2 class="font-serif text-3xl font-semibold tracking-tight sm:text-4xl">Stay in the loop.</h2>
<p class="mt-3 text-muted-foreground"> <p class="mt-3 text-muted-foreground">
One email when it&rsquo;s worth it &mdash; new restaurant guides, openings, and data-driven dining picks for Medellín. One email when it&rsquo;s worth it &mdash; new posts and updates, no spam.
</p> </p>
<form data-newsletter-form class="mx-auto mt-6 flex max-w-md flex-col gap-2 sm:flex-row"> <form data-newsletter-form class="mx-auto mt-6 flex max-w-md flex-col gap-2 sm:flex-row">
<input <input

View file

@ -6,7 +6,7 @@ import DevConsole from "../components/DevConsole.astro";
import { SITE, imageSrc } from "../lib/blog-data.js"; import { SITE, imageSrc } from "../lib/blog-data.js";
const { const {
title = `${SITE.name} - Medellín's restaurant scene for expats, nomads & travelers`, title = `${SITE.name}`,
description = SITE.description, description = SITE.description,
canonical, canonical,
ogType = "website", ogType = "website",

View file

@ -2,7 +2,7 @@
import BaseLayout from "../layouts/BaseLayout.astro"; import BaseLayout from "../layouts/BaseLayout.astro";
--- ---
<BaseLayout title="Page not found - Comiida" description="The page could not be found."> <BaseLayout title="Page not found" description="The page could not be found.">
<div class="mx-auto max-w-2xl px-5 py-32 text-center"> <div class="mx-auto max-w-2xl px-5 py-32 text-center">
<div class="font-serif text-7xl font-semibold tracking-tight">404</div> <div class="font-serif text-7xl font-semibold tracking-tight">404</div>
<h1 class="mt-4 font-serif text-2xl font-semibold">Lost in the margins</h1> <h1 class="mt-4 font-serif text-2xl font-semibold">Lost in the margins</h1>

View file

@ -6,7 +6,7 @@ import { SITE, authors } from "../lib/blog-data.js";
<BaseLayout <BaseLayout
title={`About - ${SITE.name}`} title={`About - ${SITE.name}`}
description={`${SITE.name} is a fully autonomous, AI-run restaurant publication for Medellín — researched, written, illustrated, and SEO-managed every day by a system of agents built by engineer Carlos Arias.`} description={`About ${SITE.name} — who we are and what we cover.`}
canonical="/about" canonical="/about"
> >
<div class="mx-auto max-w-3xl px-5 py-12"> <div class="mx-auto max-w-3xl px-5 py-12">
@ -15,35 +15,29 @@ import { SITE, authors } from "../lib/blog-data.js";
<header class="mt-6"> <header class="mt-6">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">About</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">About</div>
<h1 class="mt-2 font-serif text-5xl font-semibold leading-[1.05] tracking-tight"> <h1 class="mt-2 font-serif text-5xl font-semibold leading-[1.05] tracking-tight">
A restaurant publication that runs itself. About {SITE.name}.
</h1> </h1>
</header> </header>
<div class="prose-article mt-10"> <div class="prose-article mt-10">
<p> <p>
{SITE.name} is an experiment in fully autonomous publishing. Every part of this site &mdash; the research, the writing, the cover images, the SEO, even the editorial calendar &mdash; is produced and managed by a system of AI agents that run on their own, every single day. No human writes the articles. This is placeholder copy for your About page. Describe what {SITE.name} is,
who it&rsquo;s for, and why it exists. Edit this in <code>app/src/pages/about.astro</code>.
</p>
<h2 id="what-we-do">What we do</h2>
<p>
Summarize what visitors will find here &mdash; the topics you cover, the value
you offer, and what makes your site worth their time.
</p> </p>
<h2 id="how-it-works">How it works</h2> <h2 id="how-it-works">How it works</h2>
<p>Each day, with no one at the keyboard, the agents:</p>
<ul>
<li>scan for timely Medellín food news and new openings, and keep an evergreen topic calendar stocked;</li>
<li>write each article to SEO and EEAT standards, with real, linked sources;</li>
<li>generate an original cover illustration;</li>
<li>audit their own work against a quality &amp; SEO rubric &mdash; and revise it until it passes;</li>
<li>then publish on a schedule.</li>
</ul>
<h2 id="honesty">Honest by design</h2>
<p> <p>
Quality and honesty matter even when no human is in the loop. The agents work from real, citable signals &mdash; aggregate ratings, published menus and prices, awards, and local press &mdash; never invented first-hand experiences, and every factual claim links to its source. Cover images are AI-generated illustrations, always labeled as such. If your site uses the content pipeline or other automation, explain it here.
</p> Otherwise, use this space to describe your process, standards, or approach.
<h2 id="who-built-it">Who built it</h2>
<p>
{SITE.name} was built by Carlos Arias, an AI engineer. He doesn&rsquo;t write the articles &mdash; he built the agents that do. {SITE.name} is his passion project: an experiment in how far autonomous, agentic publishing can go, pointed at a subject worth covering &mdash; Medellín&rsquo;s restaurant scene, for the English-speaking expats, nomads, and travelers trying to figure out where to eat.
</p> </p>
</div> </div>
<section class="mt-12 border-t border-border pt-10"> <section class="mt-12 border-t border-border pt-10">
<h2 class="font-serif text-2xl font-semibold tracking-tight">The engineer behind Comiida</h2> <h2 class="font-serif text-2xl font-semibold tracking-tight">The people behind {SITE.name}</h2>
<div class="mt-6 grid gap-6 sm:grid-cols-2 lg:grid-cols-3"> <div class="mt-6 grid gap-6 sm:grid-cols-2 lg:grid-cols-3">
{ {
authors.map((author) => ( authors.map((author) => (

View file

@ -17,7 +17,7 @@ import { SITE } from "../lib/blog-data.js";
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">Contact</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">Contact</div>
<h1 class="mt-2 font-serif text-5xl font-semibold tracking-tight">Say hello.</h1> <h1 class="mt-2 font-serif text-5xl font-semibold tracking-tight">Say hello.</h1>
<p class="mt-4 max-w-xl text-muted-foreground"> <p class="mt-4 max-w-xl text-muted-foreground">
A restaurant tip, a correction, or a question about where to eat in Medellín. We read everything and reply to most of it. A tip, a correction, or a question. We read everything and reply to most of it.
</p> </p>
</header> </header>
@ -48,12 +48,12 @@ import { SITE } from "../lib/blog-data.js";
<div> <div>
<div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Elsewhere</div> <div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Elsewhere</div>
<ul class="mt-3 space-y-3 text-sm"> <ul class="mt-3 space-y-3 text-sm">
<li><a href="https://x.com/hicarlosarias" class="flex items-center gap-2 hover:text-primary"><Icon name="twitter" class="h-3.5 w-3.5" /> @hicarlosarias</a></li> <li><a href="https://x.com/" class="flex items-center gap-2 hover:text-primary"><Icon name="twitter" class="h-3.5 w-3.5" /> @yourhandle</a></li>
<li><a href="/rss.xml" class="flex items-center gap-2 hover:text-primary"><Icon name="rss" class="h-3.5 w-3.5" /> RSS feed</a></li> <li><a href="/rss.xml" class="flex items-center gap-2 hover:text-primary"><Icon name="rss" class="h-3.5 w-3.5" /> RSS feed</a></li>
</ul> </ul>
</div> </div>
<div> <div>
<div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Restaurant tips</div> <div class="text-xs font-medium uppercase tracking-wider text-muted-foreground">Tips</div>
<p class="mt-2 text-sm text-muted-foreground">Know a new opening or an underrated spot? Send it our way — we factor reader tips into our guides and news roundups.</p> <p class="mt-2 text-sm text-muted-foreground">Know a new opening or an underrated spot? Send it our way — we factor reader tips into our guides and news roundups.</p>
</div> </div>
</aside> </aside>

View file

@ -4,38 +4,19 @@ import Breadcrumbs from "../components/Breadcrumbs.astro";
import { SITE } from "../lib/blog-data.js"; import { SITE } from "../lib/blog-data.js";
// Plain-text answers so the visible content exactly matches the FAQPage schema. // Plain-text answers so the visible content exactly matches the FAQPage schema.
// Replace these placeholders with your own questions in app/src/pages/faq.astro.
const faqs = [ const faqs = [
{ {
q: "Is the tap water safe to drink in Medellín?", q: "What is this site about?",
a: "Yes. Medellín's utility, EPM, treats the city's water to a potable standard, and most residents drink it straight from the tap. This is unusual for Latin America and is one reason street food and ice here are lower-risk than in many nearby destinations.", a: "Replace this with a short description of what your site covers and who it is for.",
}, },
{ {
q: "Is street food safe to eat in Medellín?", q: "How often is it updated?",
a: "Generally yes, with a few habits: follow the queues (high turnover means fresher food), order things cooked to order and served hot, and be a little cautious with raw preparations in your first days while your stomach adjusts.", a: "Tell visitors how frequently you publish and what they can expect from new content.",
}, },
{ {
q: "Do I need to tip at restaurants in Medellín?", q: "How can I get in touch?",
a: "Most sit-down restaurants add a voluntary 10% service charge (propina voluntaria) to the bill. You'll usually be asked if you want to include it; you can accept, decline, or adjust it. Tipping beyond that is appreciated but not expected.", a: "Point people to your contact page or email, and update this answer to match how you prefer to be reached.",
},
{
q: "Do restaurants in Medellín have English menus?",
a: "In the tourist- and expat-heavy areas — El Poblado, Provenza, and parts of Laureles — many places have English menus or English-speaking staff. In more local neighborhoods, expect Spanish-only menus, so a translation app helps.",
},
{
q: "Can I pay by card, or do I need cash?",
a: "Cards are widely accepted at sit-down restaurants and cafés in El Poblado, Provenza, and Laureles. Carry some cash (Colombian pesos) for street food, market stalls, small family-run spots, and tips.",
},
{
q: "Which neighborhoods are best for eating out?",
a: "El Poblado and Provenza for upscale and international dining, Laureles for a more local, better-value scene, and Envigado and Sabaneta for traditional Paisa food. Each has a distinct character worth exploring.",
},
{
q: "What are typical restaurant hours?",
a: "Lunch runs roughly 123pm, when many places serve an affordable set menu (menú del día). Dinner is usually 710pm. Some kitchens close between services, and a number of restaurants close on Sundays or Mondays, so it's worth checking ahead.",
},
{
q: "Do I need a reservation?",
a: "For the city's top and fine-dining restaurants, yes — especially on weekends. For cafés, casual spots, and most neighborhood restaurants, you can simply walk in.",
}, },
]; ];
@ -52,8 +33,8 @@ const jsonLd = {
--- ---
<BaseLayout <BaseLayout
title={`Dining in Medellín: FAQ - ${SITE.name}`} title={`FAQ - ${SITE.name}`}
description="Common questions about eating out in Medellín — tap water, tipping, street food, neighborhoods, hours, and more — answered for English-speaking visitors." description={`Frequently asked questions about ${SITE.name}.`}
canonical="/faq" canonical="/faq"
jsonLd={jsonLd} jsonLd={jsonLd}
> >
@ -63,11 +44,10 @@ const jsonLd = {
<header class="mt-6"> <header class="mt-6">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">FAQ</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">FAQ</div>
<h1 class="mt-2 font-serif text-4xl font-semibold tracking-tight sm:text-5xl"> <h1 class="mt-2 font-serif text-4xl font-semibold tracking-tight sm:text-5xl">
Dining in Medellín: FAQ Frequently asked questions
</h1> </h1>
<p class="mt-4 max-w-xl text-muted-foreground"> <p class="mt-4 max-w-xl text-muted-foreground">
Quick, practical answers to the questions English-speaking visitors ask most about eating Quick answers to common questions. Edit these in <code>app/src/pages/faq.astro</code>.
out in Medellín.
</p> </p>
</header> </header>

View file

@ -59,13 +59,13 @@ const jsonLd = {
<div class="relative mx-auto flex min-h-[calc(100svh-6rem)] max-w-6xl items-center px-5 py-20 sm:min-h-[680px] sm:py-24"> <div class="relative mx-auto flex min-h-[calc(100svh-6rem)] max-w-6xl items-center px-5 py-20 sm:min-h-[680px] sm:py-24">
<div class="max-w-4xl text-white drop-shadow-[0_1px_18px_rgba(0,0,0,0.28)]"> <div class="max-w-4xl text-white drop-shadow-[0_1px_18px_rgba(0,0,0,0.28)]">
<h1 class="font-serif text-[2.5rem] font-medium leading-[1.02] tracking-[-0.02em] sm:text-6xl lg:text-7xl"> <h1 class="font-serif text-[2.5rem] font-medium leading-[1.02] tracking-[-0.02em] sm:text-6xl lg:text-7xl">
Medellín&rsquo;s Fresh
<span class="italic text-white"> restaurants</span>, <span class="italic text-white"> stories</span>,
<span class="italic text-white"> food news</span>, and <span class="italic text-white"> guides</span>, and
<span class="italic text-white"> where to eat</span>. <span class="italic text-white"> ideas</span>.
</h1> </h1>
<p class="mt-8 max-w-xl text-lg leading-relaxed text-white/86"> <p class="mt-8 max-w-xl text-lg leading-relaxed text-white/86">
Guides, openings, and data-driven dining picks for English-speaking expats, nomads, and travelers &mdash; researched carefully and updated often. Your homepage hero copy goes here &mdash; describe what {SITE.name} offers and who it&rsquo;s for. Edit it in app/src/pages/index.astro.
</p> </p>
<div class="mt-10 flex flex-wrap items-center gap-x-8 gap-y-4"> <div class="mt-10 flex flex-wrap items-center gap-x-8 gap-y-4">
<a <a

View file

@ -6,7 +6,7 @@ import { SITE } from "../lib/blog-data.js";
<BaseLayout <BaseLayout
title={`Services - ${SITE.name}`} title={`Services - ${SITE.name}`}
description="Work with Comiida: restaurant guides, sponsored editorial features, and local food consulting for businesses operating in Medellín." description={`Work with ${SITE.name} — an overview of what we offer.`}
canonical="/services" canonical="/services"
> >
<div class="mx-auto max-w-3xl px-5 py-12"> <div class="mx-auto max-w-3xl px-5 py-12">
@ -15,86 +15,49 @@ import { SITE } from "../lib/blog-data.js";
<header class="mt-6"> <header class="mt-6">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">Work with us</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">Work with us</div>
<h1 class="mt-2 font-serif text-5xl font-semibold leading-[1.05] tracking-tight"> <h1 class="mt-2 font-serif text-5xl font-semibold leading-[1.05] tracking-tight">
Reach Medellín's food-curious expats, nomads, and travelers. What we offer.
</h1> </h1>
</header> </header>
<div class="prose-article mt-10"> <div class="prose-article mt-10">
<p> <p>
Comiida is the English-language guide to eating in Medellín. Our readers are expats settling in, This is a placeholder Services page. Describe how visitors can work with
digital nomads on extended stays, and travelers planning their first trip &mdash; people actively {SITE.name}, or delete this page if you don&rsquo;t need it. Edit it in
deciding where to eat, drink, and spend. If you want to be part of that conversation, here is how <code>app/src/pages/services.astro</code>.
we can work together.
</p> </p>
</div> </div>
<section class="mt-12 border-t border-border pt-10"> <section class="mt-12 border-t border-border pt-10">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">01</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">01</div>
<h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Restaurant Guides</h2> <h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Service one</h2>
<p class="mt-4 leading-relaxed text-muted-foreground"> <p class="mt-4 leading-relaxed text-muted-foreground">
We produce deep, honest restaurant guides for Medellín neighborhoods, cuisine types, and dining Describe your first offering here &mdash; what it is, who it&rsquo;s for, and
occasions &mdash; the kind of editorial that ranks in search and earns reader trust over time. the outcome a client can expect.
Each guide is researched from public signals (ratings, menus, awards, local press) and written
to the standards of a serious travel publication.
</p>
<ul class="mt-4 space-y-2 text-muted-foreground">
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Neighborhood round-ups (El Poblado, Laureles, Envigado, Sabaneta, and beyond)</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Occasion guides: date night, family brunch, business lunch, late-night bites</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Cuisine-specific lists: Colombian, Japanese, Italian, vegetarian &amp; vegan, and more</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Evergreen pieces updated as the city&rsquo;s scene evolves</li>
</ul>
<p class="mt-4 leading-relaxed text-muted-foreground">
Guides are driven by editorial judgment, not by who pays &mdash; but restaurants that want to
ensure we have the most accurate, up-to-date information about their venue can reach out to
submit details for consideration.
</p> </p>
</section> </section>
<section class="mt-12 border-t border-border pt-10"> <section class="mt-12 border-t border-border pt-10">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">02</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">02</div>
<h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Sponsored Features</h2> <h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Service two</h2>
<p class="mt-4 leading-relaxed text-muted-foreground"> <p class="mt-4 leading-relaxed text-muted-foreground">
A sponsored feature gives your restaurant, food business, or hospitality brand a dedicated, Describe your second offering. Use short paragraphs and bullet lists to keep
long-form placement on Comiida &mdash; written to the same editorial standard as the rest of it scannable.
the site, clearly labeled as sponsored, and built to perform in search over time.
</p>
<ul class="mt-4 space-y-2 text-muted-foreground">
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> A full editorial profile of your venue, concept, or product</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Inclusion in relevant round-up guides and category pages</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> SEO-optimized copy targeting the exact searches your future guests are running</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> Permanent placement &mdash; no monthly subscription, no expiry date</li>
</ul>
<p class="mt-4 leading-relaxed text-muted-foreground">
Sponsored features are a fit for restaurants looking to build lasting organic visibility, food
importers and producers targeting the expat market, and hospitality brands launching in
Medell&iacute;n.
</p> </p>
</section> </section>
<section class="mt-12 border-t border-border pt-10"> <section class="mt-12 border-t border-border pt-10">
<div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">03</div> <div class="text-xs font-medium uppercase tracking-[0.2em] text-primary">03</div>
<h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Local Food Consulting</h2> <h2 class="mt-2 font-serif text-3xl font-semibold tracking-tight">Service three</h2>
<p class="mt-4 leading-relaxed text-muted-foreground"> <p class="mt-4 leading-relaxed text-muted-foreground">
Comiida is built by an AI engineer who lives in Medell&iacute;n and has spent years mapping Describe your third offering, or remove this section if you offer fewer services.
the city&rsquo;s food scene. That knowledge is available for hire.
</p>
<ul class="mt-4 space-y-2 text-muted-foreground">
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> <strong>Market research:</strong> understanding the English-speaking diner in Medellín &mdash; what they look for, where they eat, how they discover new places</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> <strong>Location advice:</strong> neighborhood-by-neighborhood analysis for restaurants planning a new opening or expansion</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> <strong>English menu &amp; copy review:</strong> making sure your translated menu and online presence land correctly with a native-English-speaking audience</li>
<li class="flex items-start gap-2"><span class="mt-1 text-primary">&#8594;</span> <strong>Food tours &amp; concierge briefings:</strong> curated itineraries for corporate groups, relocation services, and travel operators</li>
</ul>
<p class="mt-4 leading-relaxed text-muted-foreground">
Engagements range from a single two-hour briefing call to a multi-week research project.
Scope and pricing are agreed before any work begins.
</p> </p>
</section> </section>
<section class="mt-12 border-t border-border pt-10"> <section class="mt-12 border-t border-border pt-10">
<h2 class="font-serif text-2xl font-semibold tracking-tight">Get in touch</h2> <h2 class="font-serif text-2xl font-semibold tracking-tight">Get in touch</h2>
<p class="mt-4 leading-relaxed text-muted-foreground"> <p class="mt-4 leading-relaxed text-muted-foreground">
All three services start with a conversation. Tell us what you&rsquo;re trying to accomplish Everything starts with a conversation. Tell us what you&rsquo;re trying to
and we&rsquo;ll let you know quickly whether we&rsquo;re a good fit. accomplish and we&rsquo;ll let you know whether we&rsquo;re a good fit.
</p> </p>
<div class="mt-6"> <div class="mt-6">
<a <a