diff --git a/css/style.css b/css/style.css index 4872efb..cf29295 100644 --- a/css/style.css +++ b/css/style.css @@ -726,6 +726,205 @@ img { margin-top: 12px; } +/* --- How It Works --- */ +.how-it-works { + padding: 100px 0; + background: var(--off-white); +} + +.steps-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); + gap: 40px; + max-width: 900px; + margin: 0 auto; +} + +.step-card { + text-align: center; + padding: 32px 24px; +} + +.step-number { + display: inline-flex; + align-items: center; + justify-content: center; + width: 48px; + height: 48px; + background: linear-gradient(135deg, var(--blue-accent), var(--cyan-bright)); + color: var(--blue-dark); + font-family: 'Montserrat', sans-serif; + font-weight: 900; + font-size: 1.4rem; + border-radius: 50%; + margin-bottom: 16px; + box-shadow: 0 4px 16px rgba(77, 200, 245, 0.3); +} + +.step-icon { + font-size: 3rem; + margin-bottom: 12px; +} + +.step-card h4 { + font-size: 1.2rem; + color: var(--blue-dark); + margin-bottom: 8px; +} + +.step-card p { + color: var(--text-mid); + font-size: 0.95rem; +} + +.step-card a { + color: var(--blue-accent); + font-weight: 600; +} + +/* --- Gallery --- */ +.gallery { + padding: 100px 0; + background: var(--white); +} + +.gallery-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 32px; + margin-bottom: 24px; +} + +.gallery-item { + border-radius: var(--radius-lg); + overflow: hidden; + box-shadow: var(--shadow); +} + +.gallery-before-after { + position: relative; + width: 100%; + aspect-ratio: 4 / 3; + overflow: hidden; +} + +.gallery-before-after img { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + object-fit: cover; +} + +.gallery-before-after img:last-child { + clip-path: inset(0 50% 0 0); + transition: clip-path 0.3s ease; +} + +.gallery-item:hover .gallery-before-after img:last-child { + clip-path: inset(0 0 0 0); +} + +.gallery-label { + position: absolute; + top: 12px; + padding: 4px 14px; + border-radius: 50px; + font-family: 'Montserrat', sans-serif; + font-weight: 700; + font-size: 0.8rem; + text-transform: uppercase; + letter-spacing: 0.5px; + color: var(--white); + z-index: 2; +} + +.gallery-label-before { + left: 12px; + background: rgba(0, 0, 0, 0.6); +} + +.gallery-label-after { + right: 12px; + background: rgba(34, 197, 94, 0.85); +} + +.gallery-caption { + padding: 16px 20px; + background: var(--white); + font-family: 'Montserrat', sans-serif; + font-weight: 600; + font-size: 0.95rem; + color: var(--text-dark); + text-align: center; +} + +.gallery-note { + text-align: center; + color: var(--gray); + font-size: 0.9rem; +} + +/* --- Testimonials --- */ +.testimonials { + padding: 100px 0; + background: linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-mid) 100%); + color: var(--white); +} + +.testimonials .section-title { + color: var(--white); +} + +.testimonials-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 28px; +} + +.testimonial-card { + background: rgba(255, 255, 255, 0.08); + border: 1px solid rgba(255, 255, 255, 0.12); + border-radius: var(--radius-lg); + padding: 32px 28px; + transition: all var(--transition); +} + +.testimonial-card:hover { + background: rgba(255, 255, 255, 0.14); + transform: translateY(-4px); +} + +.testimonial-stars { + font-size: 1.2rem; + margin-bottom: 12px; +} + +.testimonial-text { + color: rgba(255, 255, 255, 0.9); + font-size: 1rem; + line-height: 1.7; + margin-bottom: 20px; + font-style: italic; +} + +.testimonial-author { + display: flex; + flex-direction: column; + gap: 2px; +} + +.testimonial-author strong { + color: var(--cyan-bright); + font-size: 1rem; +} + +.testimonial-author span { + color: rgba(255, 255, 255, 0.6); + font-size: 0.85rem; +} + /* --- Footer --- */ .footer { background: var(--blue-dark); diff --git a/img/after-house.jpg b/img/after-house.jpg new file mode 100644 index 0000000..4ad9862 --- /dev/null +++ b/img/after-house.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/after-house.png b/img/after-house.png new file mode 100644 index 0000000..ea2014b Binary files /dev/null and b/img/after-house.png differ diff --git a/img/after-storefront.jpg b/img/after-storefront.jpg new file mode 100644 index 0000000..51612f8 --- /dev/null +++ b/img/after-storefront.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/after-storefront.png b/img/after-storefront.png new file mode 100644 index 0000000..d7d4cdd Binary files /dev/null and b/img/after-storefront.png differ diff --git a/img/after-truck.jpg b/img/after-truck.jpg new file mode 100644 index 0000000..08efff9 --- /dev/null +++ b/img/after-truck.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/after-truck.png b/img/after-truck.png new file mode 100644 index 0000000..726b9c2 Binary files /dev/null and b/img/after-truck.png differ diff --git a/img/apple-touch-icon.png b/img/apple-touch-icon.png new file mode 100644 index 0000000..9def841 Binary files /dev/null and b/img/apple-touch-icon.png differ diff --git a/img/before-house.jpg b/img/before-house.jpg new file mode 100644 index 0000000..d283c00 --- /dev/null +++ b/img/before-house.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/before-house.png b/img/before-house.png new file mode 100644 index 0000000..17ccab3 Binary files /dev/null and b/img/before-house.png differ diff --git a/img/before-storefront.jpg b/img/before-storefront.jpg new file mode 100644 index 0000000..e7e83e2 --- /dev/null +++ b/img/before-storefront.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/before-storefront.png b/img/before-storefront.png new file mode 100644 index 0000000..b45628c Binary files /dev/null and b/img/before-storefront.png differ diff --git a/img/before-truck.jpg b/img/before-truck.jpg new file mode 100644 index 0000000..4a8d785 --- /dev/null +++ b/img/before-truck.jpg @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/img/before-truck.png b/img/before-truck.png new file mode 100644 index 0000000..d33b561 Binary files /dev/null and b/img/before-truck.png differ diff --git a/img/favicon.png b/img/favicon.png new file mode 100644 index 0000000..8a41606 Binary files /dev/null and b/img/favicon.png differ diff --git a/img/og-banner.jpg b/img/og-banner.jpg new file mode 100644 index 0000000..88c6d13 Binary files /dev/null and b/img/og-banner.jpg differ diff --git a/index.html b/index.html index f293a45..cecb861 100644 --- a/index.html +++ b/index.html @@ -3,8 +3,60 @@
-Three simple steps to a cleaner surface
+Call (740) 502-3120 or fill out our quick form with details about what needs cleaning.
+We'll assess the job and give you a clear, honest quote — no hidden fees, no surprises.
+Show up when we say we will, do great work, and you'll see the difference immediately.
+See the difference professional pressure washing makes
+
+
+ Fleet Wash — Delivery Trucks
+
+
+ House Wash — Vinyl Siding
+
+
+ Storefront — Windows & Facade
+📸 Real photos from actual jobs in the Coshocton area
+Don't just take our word for it
+"Williams Pressure Washing did an amazing job on our fleet of 12 delivery trucks. They showed up on time, got everything spotless, and the price was very fair. We'll be calling them every month."
+ +"Our house hasn't looked this good since we built it 15 years ago. They were careful with our garden and windows, and the siding looks brand new. Highly recommend!"
+ +"We hire Williams to clean our storefront every quarter. The difference is night and day — customers definitely notice. Professional, reliable, and affordable."
+ +