11---
22import { Image } from " astro:assets" ;
33import { getCollection } from " astro:content" ;
4- import circleCheckIcon from " ../../assets/circle-check-icon.svg" ;
5- import paulJeszenszky from " ../../assets/paul-jeszenszky.png" ;
6- import picCrocoderTeam from " ../../assets/pic-crocoder-team-3362ae.png" ;
7- import quoteIcon from " ../../assets/quote-icon.svg" ;
8- import targetIconCorrect from " ../../assets/target-icon-correct.svg" ;
4+ import crocoIcon from " ../../assets/croco_in_cloud.png" ;
5+ import idealForIllustration from " ../../assets/pic_phase_3.png" ;
6+ import staffCollaborationImg from " ../../assets/staff_collaboration.png" ;
97import Pill from " ../../components/Pill.astro" ;
108import Section from " ../../components/Section.astro" ;
9+ import { grid_classes } from " ../_grid" ;
10+ import CircleCheck from " ../icons/CircleCheck.astro" ;
1111
1212export type MainContent = {
1313 pillText: string ;
@@ -29,7 +29,7 @@ const staffContent = (await getCollection("staff_augmentation")) as {
2929}[];
3030
3131const contentVariantId = String (
32- Astro .url .searchParams .get (" id" ) || " backfill-your-developer-gap" ,
32+ Astro .url .searchParams .get (" id" ) || " backfill-your-developer-gap"
3333);
3434
3535let content = staffContent .find ((c ) => c .data .id === contentVariantId );
@@ -42,167 +42,132 @@ const { data } = content;
4242---
4343
4444<Section
45- className =" !py -0 !px-0 "
46- contentClassName =" relative before:absolute before:z-[-1] before:top-0 before:w-full before:h-full before: bg-[#4E5BC8 ] md:max-w-screen"
45+ className =" !p -0 bg-[#4E5BC8] "
46+ contentClassName =" relative before:absolute before:z-[-1] before:top-0 before:w-full before:h-full bg-contrast rounded-t-4xl md:rounded-t-[96px ] md:max-w-screen overflow-hidden pb-12 lg:pb-24 "
4747>
4848 <div
49- class =" px-4 md:px-7 py-18 md:py-24 bg-[#1E1A1A] rounded-t-4xl md:rounded-t-[96px] "
49+ class ={ ` ${ grid_classes } md:max-w-[var(--max-width)] md:mx-auto relative z-[2] ` }
5050 >
51- <div class =" md:max-w-[var(--max-width)] md:mx-auto" >
52- <!-- Section Title -->
51+ <div
52+ class =" relative
53+ col-span-6
54+ overflow-hidden
55+ h-[calc(120vw+100px)]
56+ max-h-[700px]
57+ md:col-span-12
58+ md:h-[70vw]
59+ lg:col-span-6
60+ lg:max-h-[870px]
61+ xl:overflow-visible"
62+ >
5363 <div
54- class =" flex flex-col items-center gap-4 mb-12 md:mb-24 px-1 md:px-2 xl:px-[104px] mx-auto"
64+ class =" aspect-square
65+ relative
66+ rounded-full
67+ overflow-hidden
68+ w-[120%]
69+ max-w-[630px]
70+ -left-1/4
71+ -top-1/12
72+ md:w-[70%]
73+ md:-left-18
74+ lg:w-[120%]
75+ lg:-left-1/5
76+ lg:max-w-[800px]"
5577 >
56- <Pill className =" min-w-0 w-auto max-w-[280px] !whitespace-normal break-words text-center sm:w-fit sm:max-w-none" >
57- { data .main .pillText }
58- </Pill >
59- <h2
60- class =" text-[32px] leading-[36px] md:text-[48px] md:leading-[52px] lg:text-[60px] lg:leading-[66px] xl:text-[74px] xl:leading-[81px] font-medium tracking-[-2%] text-center"
78+ <Image
79+ src ={ staffCollaborationImg }
80+ alt =" Two male developers in CroCoder hoodies collaborating"
81+ class =" absolute top-1/12 left-1/6 md:left-0"
82+ />
83+ </div >
84+ <Image
85+ src ={ crocoIcon }
86+ alt =" Illustration of a crocodile in a cloud with laptop"
87+ class =" absolute bottom-0 left-4 lg:left-7 w-[300px]"
88+ />
89+ </div >
90+ <div
91+ class =" col-span-6 md:col-span-12 py-12 lg:py-24 px-4 md:px-7 lg:col-span-6 lg:pl-0"
92+ >
93+ <div class =" flex flex-col gap-4" >
94+ <Pill >We're 100% Focused on results</Pill >
95+ <h2
96+ class =" text-[32px]
97+ leading-[36px]
98+ font-medium
99+ tracking-[-2%]
100+ md:text-[48px]
101+ md:leading-[52px]
102+ lg:text-[54px]
103+ lg:leading-[1.1]"
61104 >
62- <span class =" text-white block md:whitespace-nowrap"
63- >{ data .main .title_1 } </span
64- >
65- <span class =" text-[#FEC343] block" >{ data .main .title_2 } </span >
105+ <span class =" text-white block" > Flexible, Embedded Engineers, </span >
106+ <span class =" text-[#FEC343] block" >Ready to Plug-In</span >
66107 </h2 >
67108 </div >
68-
69- <!-- Content Container -->
70- <div class =" pb-12 md:pb-24" >
71- <div class =" grid grid-cols-1 xl:grid-cols-2 gap-4" >
72- <!-- Left Column -->
73- <div class =" space-y-4" >
74- <!-- Main Description Card -->
75- <div
76- class =" bg-[rgba(66,76,109,0.9)] rounded-2xl p-6 md:p-12 text-white"
77- >
78- <div
79- class =" w-[60px] h-[60px] md:w-[90px] md:h-[90px] flex items-center justify-center mb-6 md:mb-7"
80- >
81- <Image
82- src ={ targetIconCorrect }
83- alt =" Target icon"
84- width ={ 90 }
85- height ={ 90 }
86- loading =" lazy"
87- class =" w-full h-full"
88- />
89- </div >
90- <div class =" space-y-4 md:space-y-7" >
91- {
92- data .main .aboutUs .map ((about ) => (
93- <p class = " text-[16px] leading-[24px] md:text-[22px] md:leading-[32px] font-normal" >
94- { about }
95- </p >
96- ))
97- }
98- </div >
99- </div >
100-
101- <!-- Testimonial Card -->
102- <div
103- class =" bg-white rounded-2xl p-4 md:p-7 backdrop-blur-[30px] flex flex-col md:flex-row gap-4"
104- >
105- <div class =" flex-1" >
106- <p
107- class =" text-sm md:text-base leading-[22px] md:leading-[26px] text-black mb-4 md:mb-7"
108- >
109- We have found the perfect extension of our team with CroCoder.
110- We operate as one team, celebrating our wins and working
111- through the challenges together. They "own" the roadmap,
112- deadlines and outcomes with us — from the ideation and
113- direction stages through to post-launch optimization.
114- </p >
115- <div class =" flex items-center gap-3" >
116- <div
117- class =" w-[48px] h-[48px] md:w-[72px] md:h-[72px] rounded-full overflow-hidden flex-shrink-0"
118- >
119- <Image
120- src ={ paulJeszenszky }
121- alt =" Paul Jeszenszky"
122- width ={ 72 }
123- height ={ 72 }
124- class =" w-full h-full object-cover"
125- loading =" lazy"
126- />
127- </div >
128- <div >
129- <p
130- class =" text-[16px] md:text-[20px] leading-[22px] md:leading-[28px] text-black font-medium"
131- >
132- Paul Jeszenszky
133- </p >
134- <p
135- class =" text-[14px] md:text-[20px] leading-[20px] md:leading-[28px] text-black"
136- >
137- Submix co-founder & CEO
138- </p >
139- </div >
140- </div >
141- </div >
142- <div
143- class =" w-[60px] h-[40px] md:w-[82px] md:h-[54px] opacity-20 self-start md:self-auto"
144- >
145- <Image
146- src ={ quoteIcon }
147- alt =" Quote icon"
148- width ={ 82 }
149- height ={ 54 }
150- loading =" lazy"
151- class =" w-full h-full"
152- />
153- </div >
154- </div >
155- </div >
156-
157- <!-- Right Column - Ideal for Teams Card -->
158- <div
159- class =" bg-[rgba(60,56,67,0.8)] rounded-2xl p-6 md:p-12 text-white flex flex-col justify-center"
160- >
161- <h3
162- class =" text-[24px] leading-[28px] md:text-[36px] md:leading-[40px] font-medium mb-4 md:mb-7"
163- >
164- Ideal for Teams who
165- </h3 >
166- <div class =" space-y-4 md:space-y-7 mb-4 md:mb-7" >
167- {
168- content .data .main .fitChecks .map ((check ) => (
169- <div class = " flex gap-4 md:gap-7" >
170- <div class = " w-8 h-8 md:w-12 md:h-12 flex-shrink-0" >
171- <Image
172- src = { circleCheckIcon }
173- alt = " Check icon"
174- width = { 48 }
175- height = { 48 }
176- loading = " lazy"
177- class = " w-full h-full"
178- />
179- </div >
180- <div >
181- <p class = " text-[16px] mb-2 leading-[24px] md:text-[22px] md:leading-[32px] md:h-8 flex items-center font-semibold" >
182- { check .highlight }
183- </p >
184- <p class = " text-[16px] leading-[24px] md:text-[22px] md:leading-[32px]" >
185- { check .text }
186- </p >
187- </div >
188- </div >
189- ))
190- }
191- </div >
192-
193- <div class =" flex justify-center" >
194- <Image
195- src ={ picCrocoderTeam }
196- alt =" CroCoder team"
197- widths ={ [320 , 480 , 640 , 800 ]}
198- sizes =" (max-width: 768px) calc(100vw - 32px), 640px"
199- loading =" lazy"
200- class =" w-full max-w-[625px] h-auto"
109+ <div class =" pt-12 flex flex-col gap-8" >
110+ {
111+ data .main .aboutUs .map ((p ) => (
112+ <p class = " text-[22px] leading-8 text-white" >{ p } </p >
113+ ))
114+ }
115+ </div >
116+ </div >
117+ <div
118+ class =" col-span-6
119+ bg-[#3C3843CC]
120+ rounded-[48px]
121+ mx-4
122+ py-12
123+ px-4
124+ flex
125+ flex-col
126+ items-center
127+ overflow-hidden
128+ md:col-span-12
129+ md:mx-7
130+ lg:p-12
131+ xl:mx-7"
132+ >
133+ <h2
134+ class =" text-[32px]
135+ leading-[36px]
136+ font-medium
137+ tracking-[-2%]
138+ text-white
139+ text-center
140+ md:text-[48px]
141+ md:leading-[52px]
142+ lg:text-[54px]
143+ lg:leading-[1.1]"
144+ >
145+ <span class =" text-[#FEC343]" >Ideal</span > For Teams Who
146+ </h2 >
147+ <div class =" flex flex-col lg:flex-row gap-7 mt-12" >
148+ {
149+ data .main .fitChecks .map ((c ) => (
150+ <div class = " flex lg:flex-col items-center gap-4 grow basis-0" >
151+ <CircleCheck
152+ width = { 48 }
153+ height = { 48 }
154+ stroke = " #FEC343"
155+ classNames = " min-w-12"
201156 />
157+ <p class = " text-[22px] leading-8 text-white lg:text-center" >
158+ <strong >{ c .highlight } </strong >
159+ <br />
160+ { c .text }
161+ </p >
202162 </div >
203- </ div >
204- </ div >
163+ ))
164+ }
205165 </div >
166+ <Image
167+ src ={ idealForIllustration }
168+ alt =" Illustration of crocodile and developers collaborating"
169+ class =" w-[calc(100%+32px)] max-w-[715px] relative top-21"
170+ />
206171 </div >
207172 </div >
208173</Section >
0 commit comments