Skip to content

Commit 54f7ff2

Browse files
committed
improve styles
1 parent d1cbd21 commit 54f7ff2

File tree

1 file changed

+70
-62
lines changed
  • src/app/conf/2025/components/top-minds

1 file changed

+70
-62
lines changed

src/app/conf/2025/components/top-minds/index.tsx

Lines changed: 70 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import rajeevRajan from "./speakers/rajeev-rajan.webp"
99
import tenmaiGopal from "./speakers/tenmai-gopal.webp"
1010
import uriGoldshtein from "./speakers/uri-goldshtein.webp"
1111
import TwitterIcon from "@/icons/twitter.svg"
12+
import { Button } from "@/app/conf/_design-system/button"
1213

1314
interface TopMindsSectionProps extends HTMLAttributes<HTMLElement> {}
1415

@@ -19,47 +20,47 @@ export default function TopMindsSection({
1920
return (
2021
<section
2122
className={clsx(
22-
"flex gap-6 px-4 py-8 text-neu-900 max-md:flex-col lg:px-12 xl:gap-x-24 xl:px-24",
23+
"px-4 py-8 text-neu-900 max-md:flex-col lg:px-12 xl:gap-x-24 xl:px-24",
2324
className,
2425
)}
2526
{...rest}
2627
>
27-
<h3 className="typography-h2">Meet the top industry minds</h3>
28-
<div className="grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-3">
28+
<div className="flex flex-wrap max-sm:flex-col">
29+
{/* todo: look up socials */}
30+
<h3 className="grow pb-6 pr-6 typography-h2">
31+
Meet the top industry minds
32+
</h3>
2933
<SpeakerCard
3034
name="Uri Goldshtein"
3135
title="The Guild — Founder"
3236
src={uriGoldshtein}
33-
twitterHref="UriGoldshtein"
34-
linkedinHref="uri-goldshtein-88986749"
3537
/>
3638
<SpeakerCard
3739
name="Elizabeth Stone"
3840
title="Netflix — CTO"
3941
src={elizabethStone}
4042
linkedinHref="https://www.linkedin.com/in/elizabeth-stone-608a754/"
4143
/>
42-
<SpeakerCard
43-
name="Kamil Kisiela"
44-
title="The Guild — Developer"
45-
src={kamilKisiela}
46-
twitterHref="kamilkisiela"
47-
linkedinHref="kamilkisiela"
48-
/>
49-
<SpeakerCard
50-
name="Rajeev Rajan"
51-
title="Atlassian — CTO"
52-
src={rajeevRajan}
53-
twitterHref="rajeevrajango"
54-
linkedinHref="rajeev-rajan"
55-
/>
56-
<SpeakerCard
57-
name="Tenmai Gopal"
58-
title="Hasura — CEO & Co-Founder"
59-
src={tenmaiGopal}
60-
twitterHref="tenmaigopal"
61-
linkedinHref="tenmai"
62-
/>
44+
<div className="flex grow max-sm:contents">
45+
<SpeakerCard
46+
name="Kamil Kisiela"
47+
title="The Guild — Developer"
48+
src={kamilKisiela}
49+
/>
50+
<SpeakerCard
51+
name="Rajeev Rajan"
52+
title="Atlassian — CTO"
53+
src={rajeevRajan}
54+
/>
55+
<SpeakerCard
56+
name="Tenmai Gopal"
57+
title="Hasura — CEO & Co-Founder"
58+
src={tenmaiGopal}
59+
/>
60+
<div className="mt-6 flex grow items-end justify-end pl-6">
61+
<Button variant="secondary">View all speakers</Button>
62+
</div>
63+
</div>
6364
</div>
6465
</section>
6566
)
@@ -71,51 +72,58 @@ function SpeakerCard({
7172
src,
7273
twitterHref,
7374
linkedinHref,
75+
className,
7476
}: {
7577
name: string
7678
title: string
7779
src: string | StaticImageData
7880
twitterHref?: string
7981
linkedinHref?: string
82+
className?: string
8083
}) {
8184
return (
82-
<article className="group flex flex-col">
83-
<div className="relative aspect-square w-full overflow-hidden border border-[#83BD02]">
84-
<Image
85-
src={src}
86-
alt=""
87-
width={236}
88-
height={236}
89-
className="size-full object-cover transition-transform duration-300"
90-
/>
91-
</div>
92-
<div className="flex items-center justify-between border border-t-0 border-[#83BD02] p-3">
93-
<div className="flex flex-col gap-1">
94-
<h4 className="font-medium typography-body-md">{name}</h4>
95-
<p className="text-neu-700 typography-body-sm">{title}</p>
96-
</div>
97-
<div className="flex gap-3">
98-
{twitterHref && (
99-
<a
100-
href={twitterHref}
101-
target="_blank"
102-
rel="noopener noreferrer"
103-
className="text-neu-700 transition-colors hover:text-neu-900"
104-
>
105-
<TwitterIcon className="size-6" />
106-
</a>
107-
)}
108-
{linkedinHref && (
109-
<a
110-
href={linkedinHref}
111-
target="_blank"
112-
rel="noopener noreferrer"
113-
className="text-neu-700 transition-colors hover:text-neu-900"
114-
>
115-
<LinkedInIcon />
116-
</a>
117-
)}
85+
<article
86+
className={clsx(
87+
":border-r border-y border-r border-sec-dark first-of-type:border-l",
88+
className,
89+
)}
90+
>
91+
<Image
92+
src={src}
93+
alt=""
94+
width={236}
95+
height={236}
96+
className="aspect-square size-[236px] w-full object-cover transition-transform"
97+
/>
98+
<div className="flex items-stretch border-t border-sec-dark">
99+
<div className="flex grow flex-col gap-1 p-3">
100+
<h4 className="typography-body-md">{name}</h4>
101+
<p className="text-neu-700 typography-body-xs">{title}</p>
118102
</div>
103+
{(linkedinHref || twitterHref) && (
104+
<div className="flex items-center border-l border-sec-dark sm:flex-col sm:border-l">
105+
{linkedinHref && (
106+
<a
107+
href={linkedinHref}
108+
target="_blank"
109+
rel="noopener noreferrer"
110+
className="flex grow items-center justify-center p-4 transition-colors hover:text-neu-700 dark:hover:text-neu-400 sm:p-2"
111+
>
112+
<LinkedInIcon />
113+
</a>
114+
)}
115+
{twitterHref && (
116+
<a
117+
href={twitterHref}
118+
target="_blank"
119+
rel="noopener noreferrer"
120+
className="flex grow items-center justify-center p-4 transition-colors hover:text-neu-700 dark:hover:text-neu-400 sm:p-2"
121+
>
122+
<TwitterIcon className="size-6" />
123+
</a>
124+
)}
125+
</div>
126+
)}
119127
</div>
120128
</article>
121129
)

0 commit comments

Comments
 (0)