Compare commits

...

3 Commits

Author SHA1 Message Date
10926a00a8 oops
All checks were successful
Docker Deploy / build-and-push (push) Successful in 3m13s
2025-06-18 11:15:59 -06:00
f9993bf0df Fix again
All checks were successful
Docker Deploy / build-and-push (push) Successful in 3m9s
2025-06-18 08:23:02 -06:00
d891a846ed Fix
All checks were successful
Docker Deploy / build-and-push (push) Successful in 3m0s
2025-06-18 01:28:16 -06:00
4 changed files with 131 additions and 98 deletions

View File

@ -61,16 +61,18 @@ ${message()}`,
}; };
return ( return (
<form class="space-y-6" onSubmit={handleSubmit}> <form class="space-y-4 lg:space-y-6" onSubmit={handleSubmit}>
<div class="grid grid-cols-1 md:grid-cols-2 gap-4"> <div class="grid grid-cols-1 md:grid-cols-2 gap-3 lg:gap-4">
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">First Name *</span> <span class="label-text font-semibold text-sm lg:text-base">
First Name *
</span>
</label> </label>
<input <input
type="text" type="text"
name="firstName" name="firstName"
class="input input-bordered w-full" class="input input-bordered input-sm lg:input-md w-full"
required required
value={firstName()} value={firstName()}
onInput={(e) => setFirstName(e.currentTarget.value)} onInput={(e) => setFirstName(e.currentTarget.value)}
@ -79,12 +81,14 @@ ${message()}`,
</div> </div>
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">Last Name *</span> <span class="label-text font-semibold text-sm lg:text-base">
Last Name *
</span>
</label> </label>
<input <input
type="text" type="text"
name="lastName" name="lastName"
class="input input-bordered w-full" class="input input-bordered input-sm lg:input-md w-full"
required required
value={lastName()} value={lastName()}
onInput={(e) => setLastName(e.currentTarget.value)} onInput={(e) => setLastName(e.currentTarget.value)}
@ -95,12 +99,14 @@ ${message()}`,
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">Email Address *</span> <span class="label-text font-semibold text-sm lg:text-base">
Email Address *
</span>
</label> </label>
<input <input
type="email" type="email"
name="email" name="email"
class="input input-bordered w-full" class="input input-bordered input-sm lg:input-md w-full"
required required
value={email()} value={email()}
onInput={(e) => setEmail(e.currentTarget.value)} onInput={(e) => setEmail(e.currentTarget.value)}
@ -110,12 +116,14 @@ ${message()}`,
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">Company</span> <span class="label-text font-semibold text-sm lg:text-base">
Company
</span>
</label> </label>
<input <input
type="text" type="text"
name="company" name="company"
class="input input-bordered w-full" class="input input-bordered input-sm lg:input-md w-full"
value={company()} value={company()}
onInput={(e) => setCompany(e.currentTarget.value)} onInput={(e) => setCompany(e.currentTarget.value)}
disabled={status() === "sending"} disabled={status() === "sending"}
@ -124,11 +132,13 @@ ${message()}`,
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">Service Needed</span> <span class="label-text font-semibold text-sm lg:text-base">
Service Needed
</span>
</label> </label>
<select <select
name="service" name="service"
class="select select-bordered w-full" class="select select-bordered select-sm lg:select-md w-full"
value={service()} value={service()}
onChange={(e) => setService(e.currentTarget.value)} onChange={(e) => setService(e.currentTarget.value)}
disabled={status() === "sending"} disabled={status() === "sending"}
@ -144,11 +154,13 @@ ${message()}`,
<div class="form-control"> <div class="form-control">
<label class="label"> <label class="label">
<span class="label-text font-semibold">Project Budget</span> <span class="label-text font-semibold text-sm lg:text-base">
Project Budget
</span>
</label> </label>
<select <select
name="budget" name="budget"
class="select select-bordered w-full" class="select select-bordered select-sm lg:select-md w-full"
value={budget()} value={budget()}
onChange={(e) => setBudget(e.currentTarget.value)} onChange={(e) => setBudget(e.currentTarget.value)}
disabled={status() === "sending"} disabled={status() === "sending"}
@ -163,12 +175,14 @@ ${message()}`,
<div class="form-control"> <div class="form-control">
<label class="label" for="project-details"> <label class="label" for="project-details">
<span class="label-text font-semibold">Project Details *</span> <span class="label-text font-semibold text-sm lg:text-base">
Project Details *
</span>
</label> </label>
<textarea <textarea
id="project-details" id="project-details"
name="message" name="message"
class="textarea textarea-bordered h-32 w-full resize-none" class="textarea textarea-bordered textarea-sm lg:textarea-md h-24 lg:h-32 w-full resize-none"
placeholder="Tell us about your project requirements, timeline, and any specific needs..." placeholder="Tell us about your project requirements, timeline, and any specific needs..."
required required
value={message()} value={message()}
@ -217,10 +231,10 @@ ${message()}`,
</div> </div>
</Show> </Show>
<div class="form-control pt-4"> <div class="form-control pt-2 lg:pt-4">
<button <button
type="submit" type="submit"
class="btn btn-primary btn-lg w-full" class="btn btn-primary btn-md lg:btn-lg w-full"
disabled={status() === "sending"} disabled={status() === "sending"}
> >
{status() === "sending" ? ( {status() === "sending" ? (

View File

@ -1,7 +1,7 @@
--- ---
import Footer from "../components/Footer.astro"; import Footer from "../components/Footer.astro";
import { siteConfig } from "../config/site"; import { siteConfig } from "../config/site";
import "./src/styles/global.css"; import "../styles/global.css";
interface Props { interface Props {
title?: string; title?: string;
@ -16,7 +16,7 @@ const metaTitle =
--- ---
<!doctype html> <!doctype html>
<html lang="en" data-theme="sunset"> <html lang="en">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width" /> <meta name="viewport" content="width=device-width" />

View File

@ -11,47 +11,66 @@ const pageMetaInfo = {
<Layout title={pageMetaInfo.title} description={pageMetaInfo.description}> <Layout title={pageMetaInfo.title} description={pageMetaInfo.description}>
<!-- Hero Section --> <!-- Hero Section -->
<section <section class="py-8 lg:py-16">
class="hero min-h-[60vh] bg-gradient-to-br from-primary to-primary-focus" <div class="max-w-6xl mx-auto px-4">
> <div
<div class="hero-content text-center text-primary-content"> class="hero bg-gradient-to-br from-primary to-secondary rounded-xl lg:rounded-2xl"
<div class="max-w-4xl"> >
<h1 class="text-5xl font-bold mb-6 leading-tight"> <div
{siteConfig.name} class="hero-content text-center text-primary-content py-8 lg:py-16 px-4"
</h1>
<p
class="text-xl mb-8 opacity-90 max-w-2xl mx-auto leading-relaxed"
> >
{siteConfig.hero.description} — Delivering reliable, scalable <div class="max-w-4xl w-full">
solutions tailored to your business needs. <h1
</p> class="text-4xl sm:text-6xl lg:text-8xl font-bold mb-4 lg:mb-6 leading-tight"
<div class="flex flex-col sm:flex-row gap-4 justify-center"> >
<a href="#contact" class="btn btn-secondary btn-lg"> {siteConfig.name}
Start Your Project </h1>
</a> <p
<a class="text-base sm:text-lg lg:text-xl mb-6 lg:mb-8 opacity-90 max-w-2xl mx-auto leading-relaxed"
href="#services" >
class="btn btn-outline btn-lg text-white border-white hover:bg-white hover:text-primary" {siteConfig.hero.description} — Delivering reliable,
> scalable solutions tailored to your business needs.
View Services </p>
</a> <div
class="flex flex-col sm:flex-row gap-3 lg:gap-4 justify-center"
>
<a
href="#contact"
class="btn btn-secondary btn-md lg:btn-lg text-white border-white"
>
Start Your Project
</a>
<a
href="#services"
class="btn btn-secondary btn-md lg:btn-lg text-white border-white"
>
View Services
</a>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
</section> </section>
<div class="max-w-6xl mx-auto px-4 py-16"> <div class="max-w-6xl mx-auto px-4">
<!-- Services Grid --> <!-- Services Grid -->
<section id="services" class="mb-20"> <section id="services" class="mb-16 lg:mb-20">
<div class="text-center mb-12"> <div class="text-center mb-8 lg:mb-12">
<h2 class="text-4xl font-bold mb-4">Our Services</h2> <h2
<p class="text-lg text-base-content/70 max-w-2xl mx-auto"> class="text-2xl sm:text-3xl lg:text-4xl font-bold mb-3 lg:mb-4"
Comprehensive solutions designed to drive your business >
forward Our Services
</h2>
<p
class="text-base lg:text-lg text-base-content/70 max-w-2xl mx-auto px-4"
>
Comprehensive software solutions designed to drive your
business forward
</p> </p>
</div> </div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-6"> <div class="grid grid-cols-1 md:grid-cols-2 gap-4 lg:gap-6">
{ {
siteConfig.featureCards.cards.map((card, index) => ( siteConfig.featureCards.cards.map((card, index) => (
<div class="card bg-base-100 shadow-lg hover:shadow-xl transition-all duration-300 border border-base-200"> <div class="card bg-base-100 shadow-lg hover:shadow-xl transition-all duration-300 border border-base-200">
@ -153,21 +172,23 @@ const pageMetaInfo = {
</section> </section>
<!-- About Section --> <!-- About Section -->
<section class="mb-20"> <section class="mb-16 lg:mb-20">
<div class="hero bg-base-200 rounded-2xl"> <div class="hero bg-base-200 rounded-xl lg:rounded-2xl">
<div class="hero-content text-center py-16"> <div class="hero-content text-center py-12 lg:py-16 px-4">
<div class="max-w-3xl"> <div class="max-w-3xl w-full">
<h2 class="text-3xl font-bold mb-6"> <h2 class="text-2xl sm:text-3xl font-bold mb-4 lg:mb-6">
Why Choose Atash Consulting? Why Choose Atash Consulting?
</h2> </h2>
<p <p
class="text-lg mb-8 text-base-content/80 leading-relaxed" class="text-base lg:text-lg mb-6 lg:mb-8 text-base-content/80 leading-relaxed"
> >
With over a decade of experience in the software With over a decade of experience in the software
industry, we bring deep technical expertise and a industry, we bring deep technical expertise and a
commitment to excellence to every project. commitment to excellence to every project.
</p> </p>
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 mt-8"> <div
class="grid grid-cols-1 md:grid-cols-3 gap-4 lg:gap-6 mt-6 lg:mt-8"
>
<div class="text-center"> <div class="text-center">
<div <div
class="w-16 h-16 bg-primary rounded-full flex items-center justify-center mx-auto mb-4" class="w-16 h-16 bg-primary rounded-full flex items-center justify-center mx-auto mb-4"
@ -222,7 +243,7 @@ const pageMetaInfo = {
</div> </div>
<div class="text-center"> <div class="text-center">
<div <div
class="w-16 h-16 bg-accent rounded-full flex items-center justify-center mx-auto mb-4" class="w-16 h-16 bg-primary rounded-full flex items-center justify-center mx-auto mb-4"
> >
<svg <svg
class="w-8 h-8 text-accent-content" class="w-8 h-8 text-accent-content"
@ -252,13 +273,17 @@ const pageMetaInfo = {
</section> </section>
<!-- Contact Section --> <!-- Contact Section -->
<section id="contact" class="mb-20"> <section id="contact" class="mb-16 lg:mb-20">
<div class="text-center mb-12"> <div class="text-center mb-8 lg:mb-12">
<h2 class="text-4xl font-bold mb-4">Get In Touch</h2> <h2
<p class="text-lg text-base-content/70 max-w-2xl mx-auto"> class="text-2xl sm:text-3xl lg:text-4xl font-bold mb-3 lg:mb-4"
Ready to start your project? Let's discuss how we can help >
transform your ideas into robust, scalable software Get In Touch
solutions. </h2>
<p
class="text-base lg:text-lg text-base-content/70 max-w-2xl mx-auto px-4"
>
Ready to start your project? Let's discuss how we can help.
</p> </p>
</div> </div>
@ -268,12 +293,6 @@ const pageMetaInfo = {
<ContactForm client:load /> <ContactForm client:load />
</div> </div>
</div> </div>
<div class="text-center mt-8">
<p class="text-base-content/60">
We'll get back to you within 24 hours
</p>
</div>
</div> </div>
</section> </section>
</div> </div>

View File

@ -2,36 +2,36 @@
@plugin "daisyui"; @plugin "daisyui";
@plugin "daisyui/theme" { @plugin "daisyui/theme" {
name: "sunset"; name: "light";
default: false; default: true;
prefersdark: false; prefersdark: true;
color-scheme: "dark"; color-scheme: "light";
--color-base-100: oklch(22% 0.019 237.69); --color-base-100: oklch(98% 0 0);
--color-base-200: oklch(20% 0.019 237.69); --color-base-200: oklch(95% 0 0);
--color-base-300: oklch(18% 0.019 237.69); --color-base-300: oklch(91% 0 0);
--color-base-content: oklch(77.383% 0.043 245.096); --color-base-content: oklch(0% 0 0);
--color-primary: oklch(74.703% 0.158 39.947); --color-primary: oklch(74% 0.16 232.661);
--color-primary-content: oklch(14.94% 0.031 39.947); --color-primary-content: oklch(0% 0 0);
--color-secondary: oklch(72.537% 0.177 2.72); --color-secondary: oklch(50% 0.134 242.749);
--color-secondary-content: oklch(14.507% 0.035 2.72); --color-secondary-content: oklch(98% 0.003 247.858);
--color-accent: oklch(71.294% 0.166 299.844); --color-accent: oklch(90% 0.058 230.902);
--color-accent-content: oklch(14.258% 0.033 299.844); --color-accent-content: oklch(18.556% 0.052 122.962);
--color-neutral: oklch(26% 0.019 237.69); --color-neutral: oklch(42% 0.199 265.638);
--color-neutral-content: oklch(70% 0.019 237.69); --color-neutral-content: oklch(84.262% 0.025 278.68);
--color-info: oklch(85.559% 0.085 206.015); --color-info: oklch(60.72% 0.227 252.05);
--color-info-content: oklch(17.111% 0.017 206.015); --color-info-content: oklch(12.144% 0.045 252.05);
--color-success: oklch(85.56% 0.085 144.778); --color-success: oklch(85.72% 0.266 158.53);
--color-success-content: oklch(17.112% 0.017 144.778); --color-success-content: oklch(17.144% 0.053 158.53);
--color-warning: oklch(85.569% 0.084 74.427); --color-warning: oklch(91.01% 0.212 100.5);
--color-warning-content: oklch(17.113% 0.016 74.427); --color-warning-content: oklch(18.202% 0.042 100.5);
--color-error: oklch(85.511% 0.078 16.886); --color-error: oklch(64.84% 0.293 29.349);
--color-error-content: oklch(17.102% 0.015 16.886); --color-error-content: oklch(12.968% 0.058 29.349);
--radius-selector: 1rem; --radius-selector: 1rem;
--radius-field: 0.5rem; --radius-field: 1rem;
--radius-box: 1rem; --radius-box: 1rem;
--size-selector: 0.25rem; --size-selector: 0.25rem;
--size-field: 0.25rem; --size-field: 0.25rem;
--border: 1px; --border: 1px;
--depth: 0; --depth: 1;
--noise: 0; --noise: 0;
} }