@@ -98,12 +98,12 @@ const { content } = Astro.props
9898---
9999
100100<contact-form>
101- <div class =" min-h-screen" >
101+ <div class =" min-h-screen md:mb-16 " >
102102 { /** Google Maps embed */ }
103103 { /* <Map /> */ }
104104
105105 { /** Contact Form Section */ }
106- <section class =" py-5 bg-page-offset" aria-label =" Contact form" >
106+ <section class =" pt-5 pb-8 bg-page-offset" aria-label =" Contact form" >
107107 <div class =" max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 mt-4" >
108108 <div class =" grid grid-cols-1 lg:grid-cols-3 gap-8 lg:gap-12 items-start" >
109109 { /** Contact Form */ }
@@ -133,13 +133,13 @@ const { content } = Astro.props
133133 </div >
134134
135135 { /** Personal Information */ }
136- <div class =" pb-6 border-b border-trim" >
136+ <div class =" border-b border-trim" >
137137 <h3 class =" flex items-center text-page-inverse text-xl font-semibold mb-6" >
138138 <div class =" w-1 h-5 bg-page-inverse rounded-full mr-3" ></div >
139139 { content .form .contact .header }
140140 </h3 >
141141
142- <div class =" grid grid-cols-1 md:grid-cols-2 gap-6" >
142+ <div class =" grid grid-cols-1 md:grid-cols-2 md: gap-6 md:space-y -6" >
143143 <div class =" space-y-2" >
144144 <label
145145 for =" name"
@@ -151,7 +151,7 @@ const { content } = Astro.props
151151 type =" text"
152152 id =" name"
153153 name =" name"
154- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200"
154+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200"
155155 required
156156 placeholder ={ content .form .contact .fullNamePlaceholder }
157157 minlength =" 2"
@@ -179,7 +179,7 @@ const { content } = Astro.props
179179 type =" email"
180180 id =" email"
181181 name =" email"
182- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200"
182+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200"
183183 required
184184 placeholder ={ content .form .contact .emailPlaceholder }
185185 aria-invalid =" false"
@@ -195,7 +195,7 @@ const { content } = Astro.props
195195 </div >
196196 </div >
197197
198- <div class =" grid grid-cols-1 md:grid-cols-2 gap-6" >
198+ <div class =" grid grid-cols-1 md:grid-cols-2 md: gap-6 md:space-y -6" >
199199 <div class =" space-y-2" >
200200 <label
201201 for =" company"
@@ -207,13 +207,13 @@ const { content } = Astro.props
207207 type =" text"
208208 id =" company"
209209 name =" company"
210- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200"
210+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200"
211211 placeholder ={ content .form .contact .companyPlaceholder }
212212 maxlength =" 100"
213213 />
214214 </div >
215215
216- <div class =" space-y-2" >
216+ <div class =" space-y-2 mt-2 md:mt-0 " >
217217 <label
218218 for =" phone"
219219 class =" block text-content-active text-sm font-medium"
@@ -224,21 +224,21 @@ const { content } = Astro.props
224224 type =" tel"
225225 id =" phone"
226226 name =" phone"
227- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200"
227+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200"
228228 placeholder ={ content .form .contact .phonePlaceholder }
229229 />
230230 </div >
231231 </div >
232232 </div >
233233
234234 { /** Project Information */ }
235- <div class =" pb-6 border-b border-trim" >
235+ <div class =" pb-2 border-b border-trim" >
236236 <h3 class =" flex items-center text-page-inverse text-xl font-semibold mb-6" >
237237 <div class =" w-1 h-5 bg-page-inverse rounded-full mr-3" ></div >
238238 { content .form .project .header }
239239 </h3 >
240240
241- <div class =" grid grid-cols-1 md:grid-cols-2 gap-6" >
241+ <div class =" grid grid-cols-1 md:grid-cols-2 md: gap-6 md:space-y -6" >
242242 <div class =" space-y-2" >
243243 <label
244244 for =" project_type"
@@ -249,15 +249,15 @@ const { content } = Astro.props
249249 <select
250250 id =" project_type"
251251 name =" project_type"
252- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200 cursor-pointer"
252+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200 cursor-pointer"
253253 >
254254 { content .form .project .typeOptions .map ((item ) => (
255255 <option value = { item .value } >{ item .text } </option >
256256 ))}
257257 </select >
258258 </div >
259259
260- <div class =" space-y-2" >
260+ <div class =" space-y-2 mt-2 md:mt-0 " >
261261 <label
262262 for =" budget"
263263 class =" block text-content-active text-sm font-medium"
@@ -267,8 +267,7 @@ const { content } = Astro.props
267267 <select
268268 id =" budget"
269269 name =" budget"
270- required
271- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content-inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200 cursor-pointer"
270+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note-inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded-none transition-colors duration-200 cursor-pointer"
272271 >
273272 { content .form .project .budgetOptions .map ((item ) => (
274273 <option value = { item .value } >{ item .text } </option >
@@ -277,7 +276,7 @@ const { content } = Astro.props
277276 </div >
278277 </div >
279278
280- <div class =" space-y-2" >
279+ <div class =" space-y-2 mb-6 " >
281280 <label
282281 for =" timeline"
283282 class =" block text-content-active text-sm font-medium"
@@ -287,7 +286,7 @@ const { content } = Astro.props
287286 <select
288287 id =" timeline"
289288 name =" timeline"
290- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200 cursor-pointer"
289+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200 cursor-pointer"
291290 >
292291 { content .form .project .timelineOptions .map ((item ) => (
293292 <option value = { item .value } >{ item .text } </option >
@@ -305,7 +304,7 @@ const { content } = Astro.props
305304 <textarea
306305 id =" message"
307306 name =" message"
308- class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-content -inverse focus:border-primary focus:ring-0 focus:outline-none transition-colors duration-200 resize-vertical min-h-30"
307+ class =" w-full px-4 py-3 border-2 border-trim rounded-xl bg-note -inverse/25 focus:border-spotlight focus:ring-0 focus:outline-none focus-visible:border-spotlight focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded -none transition-colors duration-200 resize-vertical min-h-30"
309308 rows =" 6"
310309 required
311310 placeholder ={ content .form .project .descriptionPlaceholder }
@@ -327,16 +326,14 @@ const { content } = Astro.props
327326 </div >
328327
329328 { /** File Upload Section */ }
330- <div class = " pb-6 " >
329+ <div >
331330 <h3 class =" flex items-center text-page-inverse text-xl font-semibold mb-4" >
332331 <div class =" w-1 h-5 bg-page-inverse rounded-full mr-3" ></div >
333332 { content .form .files .header }
334333 </h3 >
335334 <p class =" text-content-active text-sm mb-6" >{ content .form .files .subheader } </p >
336335
337- <div
338- class =" border-2 border-dashed border-trim rounded-xl p-8 text-center bg-page-offset hover:border-primary-hover transition-colors duration-200"
339- >
336+ <div >
340337 <div id =" uppyContainer" hidden >
341338 <div id =" uppyDashboard" ></div >
342339 </div >
@@ -375,7 +372,7 @@ const { content } = Astro.props
375372 <div class =" flex justify-end" >
376373 <button
377374 type =" submit"
378- class =" inline-flex items-center justify-center px-8 py-4 bg-spotlight hover:bg-spotlight-offset text-white font-semibold rounded-xl transition-all duration-200 hover:shadow-lg hover:-translate-y-0.5 disabled:opacity-60 disabled:cursor-not-allowed disabled:transform-none min-w-50"
375+ class =" inline-flex items-center justify-center px-8 py-4 bg-page-inverse hover:bg-content-active text-content-inverse font-semibold rounded-xl transition-all duration-200 focus-visible:outline-2 focus-visible:outline-spotlight focus-visible:outline-offset-2 focus-visible:rounded-none disabled:opacity-60 disabled:cursor-not-allowed disabled:transform-none min-w-50"
379376 id =" submitBtn"
380377 >
381378 <span class =" btn-text" >{ content .form .submitButtonText } </span >
@@ -467,7 +464,9 @@ const { content } = Astro.props
467464 </div >
468465
469466 <div >
470- <h3 class =" text-page-inverse text-xl font-semibold mb-4" >{ content .contact .expertise .header } </h3 >
467+ <h3 class =" text-page-inverse text-xl font-semibold mb-4" >
468+ { content .contact .expertise .header }
469+ </h3 >
471470 <List
472471 items ={ content .contact .expertise .areas }
473472 variant =" colored-marker-list"
@@ -478,7 +477,9 @@ const { content } = Astro.props
478477 </div >
479478
480479 <div >
481- <h3 class =" text-page-inverse text-xl font-semibold mb-4" >{ content .contact .chooseUs .header } </h3 >
480+ <h3 class =" text-page-inverse text-xl font-semibold mb-4" >
481+ { content .contact .chooseUs .header }
482+ </h3 >
482483 <List
483484 items ={ content .contact .chooseUs .areas }
484485 variant =" colored-marker-list"
0 commit comments