···55 <div class="text-center">
66 <h2 class="text-section">Choose your provider.</h2>
77 <div class="divider" />
88- <p class="text-body mt-2" style={{ maxWidth: "640px", margin: "1rem auto 0" }}>
99- Your Atmosphere account lives with a <strong>provider</strong> — a service
1010- that stores your data and keeps it available across every app. That
1111- provider might be an app you already use, or a host that only holds
1212- accounts. You pick who hosts your account, and you can switch any time.
88+ <p
99+ class="text-body mt-2"
1010+ style={{ maxWidth: "640px", margin: "1rem auto 0" }}
1111+ >
1212+ Your Atmosphere account lives with a <strong>provider</strong>{" "}
1313+ — a service that stores your data and keeps it available across
1414+ every app. That provider might be an app you already use, or a host
1515+ that only holds accounts. You pick who hosts your account, and you
1616+ can switch any time.
1317 </p>
1418 </div>
1519···1721 <div class="glass provider-card provider-card-featured">
1822 <div class="provider-card-badge font-mono">Most popular</div>
1923 <div class="provider-logo-row">
2020- <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
2424+ <svg
2525+ width="28"
2626+ height="28"
2727+ viewBox="0 0 24 24"
2828+ fill="none"
2929+ stroke="currentColor"
3030+ stroke-width="1.5"
3131+ stroke-linecap="round"
3232+ stroke-linejoin="round"
3333+ aria-hidden="true"
3434+ >
2135 <rect x="2" y="3" width="20" height="18" rx="2" />
2236 <path d="M6 8h12M8 12h5M8 16h8" />
2337 </svg>
···4458 <path d="M135.72 44.03C202.216 93.951 273.74 195.17 300 249.49C326.26 195.17 397.784 93.951 464.28 44.03C512.378 8.502 588 -22.418 588 69.85C588 90.97 576.42 192.07 570 213.89C548.2 284.29 472.94 303.23 405.91 292.28C521.44 315.16 549.46 397.65 489.46 480.13C377.23 634.08 316.03 475.75 302.29 436.08C300.83 431.89 300.16 429.94 300 429.94C299.84 429.94 299.17 431.89 297.71 436.08C283.97 475.76 222.77 634.08 110.54 480.13C50.54 397.65 78.56 315.16 194.09 292.28C127.06 303.23 51.8 284.29 30 213.89C23.58 192.07 12 90.97 12 69.85C12 -22.418 87.622 8.502 135.72 44.03Z" />
4559 </svg>
4660 </a>{" "}
4747- are also account providers. When you sign up, they provide an account for
4848- you and your data is hosted by them. Some apps are not account providers:
4949- they are just apps, and you sign in with an account hosted somewhere
5050- else. If you already use Bluesky, you have an Atmosphere-ready account
5151- with no extra sign-up.
6161+ are also account providers. When you sign up, they provide an
6262+ account for you and your data is hosted by them. Some apps are not
6363+ account providers: they are just apps, and you sign in with an
6464+ account hosted somewhere else.
5265 </p>
5366 </div>
54675568 <div class="glass provider-card">
5669 <div class="provider-logo-row">
5757- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
7070+ <svg
7171+ width="24"
7272+ height="24"
7373+ viewBox="0 0 24 24"
7474+ fill="none"
7575+ stroke="currentColor"
7676+ stroke-width="1.5"
7777+ stroke-linecap="round"
7878+ stroke-linejoin="round"
7979+ >
5880 <rect x="3" y="3" width="7" height="7" rx="1" />
5981 <rect x="14" y="3" width="7" height="7" rx="1" />
6082 <rect x="14" y="14" width="7" height="7" rx="1" />
···6385 <span class="provider-name font-mono">Independent providers</span>
6486 </div>
6587 <p class="text-body-sm">
6666- Independent providers are account hosts — they are not apps themselves,
6767- they only hold your account and data. A growing number of them offer
6868- Atmosphere accounts: some are community-run, some focus on privacy, and
6969- new ones are launching all the time.
8888+ Independent providers are account hosts — they are not apps
8989+ themselves, they only hold your account and data. A growing number
9090+ of them offer Atmosphere accounts: some are community-run, some
9191+ focus on privacy.
7092 </p>
7193 </div>
72947395 <div class="glass provider-card">
7496 <div class="provider-logo-row">
7575- <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
9797+ <svg
9898+ width="24"
9999+ height="24"
100100+ viewBox="0 0 24 24"
101101+ fill="none"
102102+ stroke="currentColor"
103103+ stroke-width="1.5"
104104+ stroke-linecap="round"
105105+ stroke-linejoin="round"
106106+ >
76107 <path d="M12 2L2 7l10 5 10-5-10-5z" />
77108 <path d="M2 17l10 5 10-5" />
78109 <path d="M2 12l10 5 10-5" />
···8912090121 <p
91122 class="text-body-sm text-center mt-3"
9292- style={{ maxWidth: "520px", margin: "1.5rem auto 0", fontStyle: "italic" }}
123123+ style={{
124124+ maxWidth: "520px",
125125+ margin: "1.5rem auto 0",
126126+ fontStyle: "italic",
127127+ }}
93128 >
9494- No matter which provider you choose, your account works everywhere and you can
9595- move to a different provider at any time — no data lost.
129129+ No matter which provider you choose, your account works everywhere and
130130+ you can move to a different provider at any time — no data lost.
96131 </p>
97132 </div>
98133 </section>
-42
components/HowItWorks.tsx
···11-export default function HowItWorks() {
22- const pillars = [
33- {
44- number: "1",
55- title: "Identity",
66- description:
77- "One universal account that belongs to you. Your handle is a domain — even one you already own. No platform can take it away.",
88- },
99- {
1010- number: "2",
1111- title: "Connections",
1212- description:
1313- "Your social graph travels with you. Creators keep their audiences. Find the same people across every app. No more starting over.",
1414- },
1515- {
1616- number: "3",
1717- title: "Choice",
1818- description:
1919- "Choose your apps, algorithms, and moderation. Don't like something? Switch and pick up where you left off. It's your call, always.",
2020- },
2121- ];
2222-2323- return (
2424- <section class="section reveal">
2525- <div class="container">
2626- <div class="text-center">
2727- <h2 class="text-section">How it works.</h2>
2828- <div class="divider" />
2929- </div>
3030- <div class="pillars-grid">
3131- {pillars.map((p) => (
3232- <div key={p.title} class="glass pillar-card">
3333- <div class="pillar-number">{p.number}</div>
3434- <h3 class="text-subsection mb-2">{p.title}</h3>
3535- <p class="text-body-sm">{p.description}</p>
3636- </div>
3737- ))}
3838- </div>
3939- </div>
4040- </section>
4141- );
4242-}