mirror of
https://git.kh3group.com/georgebiri/khy_website.git
synced 2026-07-02 07:03:33 +00:00
All checks were successful
continuous-integration/drone/push Build is passing
906 lines
32 KiB
HTML
906 lines
32 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>Contact - KHY</title>
|
||
<meta
|
||
name="description"
|
||
content="Get in touch with KHY for professional furniture and design services."
|
||
/>
|
||
<link rel="stylesheet" href="styles/main.css" />
|
||
<style>
|
||
/* Smooth scrolling for the entire page */
|
||
html {
|
||
scroll-behavior: smooth;
|
||
}
|
||
|
||
/* Active navigation link styling */
|
||
.nav-link.active {
|
||
color: #b8873f !important;
|
||
font-weight: 500;
|
||
}
|
||
|
||
/* Force responsive behavior */
|
||
@media (min-width: 640px) {
|
||
.sm\:hidden {
|
||
display: none !important;
|
||
}
|
||
.sm\:flex {
|
||
display: flex !important;
|
||
}
|
||
}
|
||
</style>
|
||
<link
|
||
href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:wght@100;200;300;400;500;600;700&family=Poppins:wght@400;500;600&display=swap"
|
||
rel="stylesheet"
|
||
/>
|
||
</head>
|
||
<body class="bg-white font-sans text-gray-800">
|
||
<!-- Header -->
|
||
<header
|
||
class="fixed w-full h-20 sm:h-28 top-0 left-0 bg-white shadow-[0_8px_24px_rgba(0,0,0,0.06)] border-b border-black/10 z-50"
|
||
>
|
||
<nav class="h-full">
|
||
<div
|
||
class="max-w-7xl mx-auto h-full flex items-center justify-between px-5"
|
||
>
|
||
<!-- Logo Section -->
|
||
<div class="flex items-center">
|
||
<a href="index.html" class="cursor-pointer">
|
||
<img
|
||
src="assets/images/khy_logo.png"
|
||
alt="KHY Logo"
|
||
class="h-12 sm:h-20 w-auto drop-shadow-sm hover:opacity-80 transition-opacity"
|
||
/>
|
||
</a>
|
||
</div>
|
||
|
||
<!-- Desktop Navigation -->
|
||
<ul class="hidden sm:flex space-x-10">
|
||
<li>
|
||
<a
|
||
href="index.html"
|
||
class="nav-link text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors text-shadow-default"
|
||
>Home</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="index.html#products"
|
||
class="nav-link text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors text-shadow-default"
|
||
>Products</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="index.html#about"
|
||
class="nav-link text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors text-shadow-default"
|
||
>About</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="contact.html"
|
||
class="nav-link text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors text-shadow-default"
|
||
>Contact</a
|
||
>
|
||
</li>
|
||
</ul>
|
||
|
||
<!-- Mobile Hamburger -->
|
||
<div class="sm:hidden flex items-center">
|
||
<!-- Hamburger Button -->
|
||
<button
|
||
id="mobile-menu-button"
|
||
class="text-black hover:text-gray-600 transition-colors"
|
||
aria-label="Open mobile menu"
|
||
>
|
||
<svg
|
||
class="w-7 h-7"
|
||
fill="none"
|
||
stroke="currentColor"
|
||
viewBox="0 0 24 24"
|
||
>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M4 6h16M4 12h16M4 18h16"
|
||
></path>
|
||
</svg>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
</header>
|
||
|
||
<!-- Mobile Menu Overlay -->
|
||
<div
|
||
id="mobile-menu-overlay"
|
||
class="fixed inset-0 bg-black bg-opacity-50 z-40 hidden transition-opacity duration-300 sm:hidden"
|
||
></div>
|
||
|
||
<!-- Mobile Menu -->
|
||
<div
|
||
id="mobile-menu"
|
||
class="fixed top-0 right-0 h-full w-80 bg-white shadow-xl z-50 transform translate-x-full transition-transform duration-300 sm:hidden"
|
||
>
|
||
<!-- Mobile Menu Header -->
|
||
<div class="flex items-center justify-end p-5 border-b border-gray-200">
|
||
<button
|
||
id="mobile-menu-close"
|
||
class="p-2 text-black hover:text-gray-600 transition-colors"
|
||
aria-label="Close mobile menu"
|
||
>
|
||
<svg
|
||
class="w-6 h-6"
|
||
fill="none"
|
||
stroke="currentColor"
|
||
viewBox="0 0 24 24"
|
||
>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M6 18L18 6M6 6l12 12"
|
||
></path>
|
||
</svg>
|
||
</button>
|
||
</div>
|
||
|
||
<!-- Mobile Menu Items -->
|
||
<nav class="p-5">
|
||
<ul class="flex flex-col space-y-4">
|
||
<li>
|
||
<a
|
||
href="index.html"
|
||
class="nav-link block text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors py-2"
|
||
>Home</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="index.html#products"
|
||
class="nav-link block text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors py-2"
|
||
>Products</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="index.html#about"
|
||
class="nav-link block text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors py-2"
|
||
>About</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="contact.html"
|
||
class="block text-black hover:text-gray-600 font-playfair text-md font-extralight tracking-wider transition-colors py-2"
|
||
>Contact</a
|
||
>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
</div>
|
||
|
||
<main>
|
||
<!-- Hero Section -->
|
||
<section class="relative h-80 mt-20 sm:mt-28">
|
||
<!-- Background Image -->
|
||
<div class="absolute inset-0 w-full h-full">
|
||
<img
|
||
src="assets/images/first_homepage.jpg"
|
||
alt="Modern office interior"
|
||
class="w-full h-full object-cover object-center"
|
||
style="filter: blur(2px)"
|
||
/>
|
||
</div>
|
||
|
||
<!-- White Overlay -->
|
||
<div class="absolute inset-0 bg-white bg-opacity-60"></div>
|
||
|
||
<!-- Overlay Content -->
|
||
<div
|
||
class="absolute z-10 inset-0 flex items-center justify-center text-center text-black"
|
||
>
|
||
<h1
|
||
class="font-playfair font-medium text-3xl md:text-4xl lg:text-5xl leading-tight"
|
||
>
|
||
Contact
|
||
</h1>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Get In Touch Section -->
|
||
<section class="relative bg-white py-20">
|
||
<div class="max-w-7xl mx-auto px-5">
|
||
<!-- Section Header -->
|
||
<div class="text-center mb-16">
|
||
<h2
|
||
class="font-playfair font-bold text-2xl md:text-3xl lg:text-4xl leading-tight text-black mb-6"
|
||
>
|
||
Get In Touch With Us
|
||
</h2>
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-500 max-w-2xl mx-auto"
|
||
>
|
||
For More Information About Our Product & Services. Please Feel
|
||
Free To Drop Us An Email. Our Staff Always Be There To Help You
|
||
Out. Do Not Hesitate!
|
||
</p>
|
||
</div>
|
||
|
||
<!-- Contact Content -->
|
||
<div class="grid grid-cols-1 lg:grid-cols-2 gap-16">
|
||
<!-- Contact Information -->
|
||
<div class="bg-white p-8 rounded-lg shadow-sm">
|
||
<div class="space-y-8">
|
||
<!-- Address -->
|
||
<div class="flex items-start space-x-4">
|
||
<img
|
||
src="assets/icons/address.png"
|
||
alt="Address"
|
||
class="w-6 mt-1"
|
||
/>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-2"
|
||
>
|
||
Address
|
||
</h3>
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-black"
|
||
>
|
||
5 Labone Crescent, <br />
|
||
Greater Accra, <br />
|
||
Ghana
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Phone -->
|
||
<div class="flex items-start space-x-4">
|
||
<img
|
||
src="assets/icons/phone.png"
|
||
alt="Phone"
|
||
class="w-6 h-6 mt-1"
|
||
/>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-2"
|
||
>
|
||
Phone
|
||
</h3>
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-black"
|
||
>
|
||
Mobile: +(233) 546-6789
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Working Time -->
|
||
<div class="flex items-start space-x-4">
|
||
<img
|
||
src="assets/icons/time.png"
|
||
alt="Time"
|
||
class="w-6 h-6 mt-1"
|
||
/>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-2"
|
||
>
|
||
Working Time
|
||
</h3>
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-black"
|
||
>
|
||
Monday-Friday: 9AM - 5PM
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Contact Form -->
|
||
<div class="bg-white p-8 rounded-lg shadow-sm">
|
||
<form id="contact-form" class="space-y-6">
|
||
<!-- Name -->
|
||
<div>
|
||
<label
|
||
class="block font-playfair font-semibold text-base text-black mb-2"
|
||
>
|
||
Your name
|
||
</label>
|
||
<input
|
||
type="text"
|
||
id="contact-name"
|
||
name="name"
|
||
placeholder="First name last name"
|
||
class="w-full px-4 py-3 font-playfair font-normal text-base text-gray-500 bg-white border border-gray-300 rounded-lg focus:outline-none focus:border-uc-gold"
|
||
required
|
||
/>
|
||
</div>
|
||
|
||
<!-- Email -->
|
||
<div>
|
||
<label
|
||
class="block font-playfair font-semibold text-base text-black mb-2"
|
||
>
|
||
Email address
|
||
</label>
|
||
<input
|
||
type="email"
|
||
id="contact-email"
|
||
name="email"
|
||
placeholder="your@email.com"
|
||
class="w-full px-4 py-3 font-playfair font-normal text-base text-gray-500 bg-white border border-gray-300 rounded-lg focus:outline-none focus:border-uc-gold"
|
||
required
|
||
/>
|
||
</div>
|
||
|
||
<!-- Subject -->
|
||
<div>
|
||
<label
|
||
class="block font-playfair font-semibold text-base text-black mb-2"
|
||
>
|
||
Subject
|
||
</label>
|
||
<input
|
||
type="text"
|
||
id="contact-subject"
|
||
name="subject"
|
||
placeholder="Title of your message"
|
||
class="w-full px-4 py-3 font-playfair font-normal text-base text-gray-500 bg-white border border-gray-300 rounded-lg focus:outline-none focus:border-uc-gold"
|
||
required
|
||
/>
|
||
</div>
|
||
|
||
<!-- Message -->
|
||
<div>
|
||
<label
|
||
class="block font-playfair font-semibold text-base text-black mb-2"
|
||
>
|
||
Message
|
||
</label>
|
||
<textarea
|
||
rows="5"
|
||
id="contact-message"
|
||
name="message"
|
||
placeholder="Type your message here ..."
|
||
class="w-full px-4 py-3 font-playfair font-normal text-base text-gray-500 bg-white border border-gray-300 rounded-lg focus:outline-none focus:border-uc-gold resize-none"
|
||
required
|
||
></textarea>
|
||
</div>
|
||
|
||
<!-- Success Message -->
|
||
<div
|
||
id="contact-success"
|
||
class="hidden bg-green-50 border border-green-200 text-green-800 px-4 py-3 rounded-lg font-playfair font-normal text-base mb-4"
|
||
style="display: none"
|
||
>
|
||
Thank you for your message! We will reply to you shortly.
|
||
</div>
|
||
|
||
<!-- Error Message -->
|
||
<div
|
||
id="contact-error"
|
||
class="hidden bg-red-50 border border-red-200 text-red-800 px-4 py-3 rounded-lg font-playfair font-normal text-base mb-4"
|
||
style="display: none"
|
||
>
|
||
Please fill in all required fields before submitting.
|
||
</div>
|
||
|
||
<!-- Submit Button -->
|
||
<button
|
||
type="submit"
|
||
id="contact-submit"
|
||
class="bg-uc-gold text-white font-playfair font-normal text-base px-8 py-3 rounded-lg hover:bg-opacity-90 transition-all"
|
||
>
|
||
Submit
|
||
</button>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Quote Request Section -->
|
||
<div class="mt-20 bg-gray-50 p-8 rounded-lg">
|
||
<div class="text-center mb-8">
|
||
<h3
|
||
class="font-playfair font-bold text-2xl md:text-3xl leading-tight text-black mb-4"
|
||
>
|
||
Need a Quote?
|
||
</h3>
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-600 max-w-2xl mx-auto"
|
||
>
|
||
Looking for a custom quote for your furniture needs? Simply
|
||
provide your contact information above and mention "Quote
|
||
Request" in your message. Our team will get back to you with a
|
||
personalized quote tailored to your requirements.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 text-center">
|
||
<div class="bg-white p-6 rounded-lg shadow-sm">
|
||
<div
|
||
class="w-12 h-12 bg-uc-gold rounded-full flex items-center justify-center mx-auto mb-4"
|
||
>
|
||
<svg
|
||
class="w-6 h-6 text-white"
|
||
fill="none"
|
||
stroke="currentColor"
|
||
viewBox="0 0 24 24"
|
||
>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"
|
||
></path>
|
||
</svg>
|
||
</div>
|
||
<h4 class="font-playfair font-semibold text-lg text-black mb-2">
|
||
Quick Response
|
||
</h4>
|
||
<p class="font-playfair font-normal text-sm text-gray-600">
|
||
We'll get back to you within 24 hours with your personalized
|
||
quote.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="bg-white p-6 rounded-lg shadow-sm">
|
||
<div
|
||
class="w-12 h-12 bg-uc-gold rounded-full flex items-center justify-center mx-auto mb-4"
|
||
>
|
||
<svg
|
||
class="w-6 h-6 text-white"
|
||
fill="none"
|
||
stroke="currentColor"
|
||
viewBox="0 0 24 24"
|
||
>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1"
|
||
></path>
|
||
</svg>
|
||
</div>
|
||
<h4 class="font-playfair font-semibold text-lg text-black mb-2">
|
||
Competitive Pricing
|
||
</h4>
|
||
<p class="font-playfair font-normal text-sm text-gray-600">
|
||
Get the best value with our competitive and transparent
|
||
pricing.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="bg-white p-6 rounded-lg shadow-sm">
|
||
<div
|
||
class="w-12 h-12 bg-uc-gold rounded-full flex items-center justify-center mx-auto mb-4"
|
||
>
|
||
<svg
|
||
class="w-6 h-6 text-white"
|
||
fill="none"
|
||
stroke="currentColor"
|
||
viewBox="0 0 24 24"
|
||
>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z"
|
||
></path>
|
||
<path
|
||
stroke-linecap="round"
|
||
stroke-linejoin="round"
|
||
stroke-width="2"
|
||
d="M15 11a3 3 0 11-6 0 3 3 0 016 0z"
|
||
></path>
|
||
</svg>
|
||
</div>
|
||
<h4 class="font-playfair font-semibold text-lg text-black mb-2">
|
||
Local Service
|
||
</h4>
|
||
<p class="font-playfair font-normal text-sm text-gray-600">
|
||
Serving Greater Accra with quality furniture and excellent
|
||
service.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Features Section -->
|
||
<section class="relative bg-floral-white py-16">
|
||
<div class="max-w-7xl mx-auto px-5">
|
||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8">
|
||
<!-- High Quality -->
|
||
<div class="flex items-center space-x-4">
|
||
<div class="w-12 h-12">
|
||
<img
|
||
src="assets/icons/trophy.png"
|
||
alt="Trophy"
|
||
class="w-full h-full object-contain"
|
||
/>
|
||
</div>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-1"
|
||
>
|
||
High Quality
|
||
</h3>
|
||
<p class="font-playfair font-normal text-lg text-gray-500">
|
||
crafted from top materials
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Warranty Protection -->
|
||
<div class="flex items-center space-x-4">
|
||
<div class="w-12 h-12">
|
||
<img
|
||
src="assets/icons/warranty.png"
|
||
alt="Guarantee"
|
||
class="w-full h-full object-contain"
|
||
/>
|
||
</div>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-1"
|
||
>
|
||
Warranty Protection
|
||
</h3>
|
||
<p class="font-playfair font-normal text-lg text-gray-500">
|
||
Over 2 years
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Free Shipping -->
|
||
<div class="flex items-center space-x-4">
|
||
<div class="w-12 h-12">
|
||
<img
|
||
src="assets/icons/shipping.png"
|
||
alt="Shipping"
|
||
class="w-full h-full object-contain"
|
||
/>
|
||
</div>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-1"
|
||
>
|
||
Free Shipping
|
||
</h3>
|
||
<p class="font-playfair font-normal text-lg text-gray-500">
|
||
Order over 150 $
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- 24/7 Support -->
|
||
<div class="flex items-center space-x-4">
|
||
<div class="w-12 h-12">
|
||
<img
|
||
src="assets/icons/support.png"
|
||
alt="Support"
|
||
class="w-full h-full object-contain"
|
||
/>
|
||
</div>
|
||
<div>
|
||
<h3
|
||
class="font-playfair font-semibold text-2xl text-black mb-1"
|
||
>
|
||
24 / 7 Support
|
||
</h3>
|
||
<p class="font-playfair font-normal text-lg text-gray-500">
|
||
Dedicated support
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
|
||
<!-- Footer Separator -->
|
||
<div class="border-t border-gray-200"></div>
|
||
|
||
<!-- Footer -->
|
||
<footer class="bg-white">
|
||
<!-- Main Footer Content -->
|
||
<div class="max-w-7xl mx-auto px-5 py-16">
|
||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
|
||
<!-- Company Information -->
|
||
<div class="space-y-2">
|
||
<!-- Logo -->
|
||
<div class="w-16 h-20">
|
||
<a
|
||
href="index.html"
|
||
aria-label="Go to KHY home"
|
||
title="KHY Home"
|
||
class="inline-block w-full h-full group focus:outline-none focus-visible:ring-2 focus-visible:ring-uc-gold rounded-md transition"
|
||
>
|
||
<img
|
||
src="assets/images/khy_logo.png"
|
||
alt="khy"
|
||
class="w-full h-full object-contain transition-transform duration-300 group-hover:scale-105"
|
||
/>
|
||
</a>
|
||
</div>
|
||
|
||
<!-- Address -->
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-600"
|
||
>
|
||
5 Labone Crescent, Greater Accra, Ghana
|
||
</p>
|
||
|
||
<!-- Contact Info -->
|
||
<div class="space-y-1">
|
||
<!-- Phone -->
|
||
<div class="flex items-center space-x-3">
|
||
<img
|
||
src="assets/images/phone.png"
|
||
alt="Phone"
|
||
class="w-4 h-4"
|
||
/>
|
||
<span class="font-playfair font-normal text-base text-gray-800">
|
||
+233 (555) 76677
|
||
</span>
|
||
</div>
|
||
|
||
<!-- Email -->
|
||
<div class="flex items-center space-x-3">
|
||
<img src="assets/images/mail.png" alt="Email" class="w-4 h-4" />
|
||
<span class="font-playfair font-normal text-base text-gray-800">
|
||
design@khyltd.com
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Quick Links -->
|
||
<div class="space-y-4 md:ml-6 lg:ml-8">
|
||
<h3
|
||
class="font-playfair font-normal text-sm leading-snug tracking-widest text-eerie-black uppercase"
|
||
>
|
||
Quick Links
|
||
</h3>
|
||
<div class="space-y-4">
|
||
<a
|
||
href="index.html"
|
||
class="block font-playfair font-normal text-base leading-relaxed tracking-wider text-gray-900 hover:text-black transition-colors"
|
||
>
|
||
Home
|
||
</a>
|
||
<a
|
||
href="product-catalog.html"
|
||
class="block font-playfair font-normal text-base leading-relaxed tracking-wider text-gray-900 hover:text-black transition-colors"
|
||
>
|
||
Products
|
||
</a>
|
||
<a
|
||
href="#about"
|
||
class="block font-playfair font-normal text-base leading-relaxed tracking-wider text-gray-900 hover:text-black transition-colors"
|
||
>
|
||
About
|
||
</a>
|
||
<a
|
||
href="contact.html"
|
||
class="block font-playfair font-normal text-base leading-relaxed tracking-wider text-gray-900 hover:text-black transition-colors"
|
||
>
|
||
Contact Us
|
||
</a>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Company / Hours / Social -->
|
||
<div class="space-y-4">
|
||
<h3
|
||
class="font-playfair font-normal text-sm leading-snug tracking-widest text-eerie-black uppercase"
|
||
>
|
||
Company
|
||
</h3>
|
||
<div class="space-y-4">
|
||
<p
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-900"
|
||
>
|
||
Mon–Fri: 9AM – 5PM · Accra, Ghana
|
||
</p>
|
||
<div class="flex items-center space-x-6">
|
||
<a
|
||
href="#"
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-900 hover:text-black transition-colors"
|
||
>Instagram</a
|
||
>
|
||
<a
|
||
href="#"
|
||
class="font-playfair font-normal text-base leading-relaxed text-gray-900 hover:text-black transition-colors"
|
||
>LinkedIn</a
|
||
>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Copyright Section -->
|
||
<div class="border-t border-light-silver">
|
||
<div class="max-w-7xl mx-auto px-5 py-4">
|
||
<p
|
||
class="font-playfair font-normal text-xs leading-relaxed text-davys-grey"
|
||
>
|
||
© 2025 khy. All rights reserved.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
|
||
<script src="scripts/main.js?v=1.1"></script>
|
||
<script>
|
||
// Contact form validation and submission
|
||
document.addEventListener("DOMContentLoaded", function () {
|
||
const contactForm = document.getElementById("contact-form");
|
||
const successMessage = document.getElementById("contact-success");
|
||
const errorMessage = document.getElementById("contact-error");
|
||
const submitButton = document.getElementById("contact-submit");
|
||
|
||
if (contactForm) {
|
||
contactForm.addEventListener("submit", function (e) {
|
||
e.preventDefault();
|
||
|
||
// Get form fields
|
||
const name = document.getElementById("contact-name").value.trim();
|
||
const email = document.getElementById("contact-email").value.trim();
|
||
const subject = document
|
||
.getElementById("contact-subject")
|
||
.value.trim();
|
||
const message = document
|
||
.getElementById("contact-message")
|
||
.value.trim();
|
||
|
||
// Hide any existing messages
|
||
successMessage.classList.add("hidden");
|
||
errorMessage.classList.add("hidden");
|
||
|
||
// Validate all fields
|
||
if (!name || !email || !subject || !message) {
|
||
// Show error message
|
||
errorMessage.classList.remove("hidden");
|
||
errorMessage.style.display = "block";
|
||
|
||
// Highlight empty fields with red border
|
||
const fields = [name, email, subject, message];
|
||
const fieldIds = [
|
||
"contact-name",
|
||
"contact-email",
|
||
"contact-subject",
|
||
"contact-message",
|
||
];
|
||
|
||
fieldIds.forEach((fieldId, index) => {
|
||
const field = document.getElementById(fieldId);
|
||
if (!fields[index]) {
|
||
field.classList.add("border-red-500");
|
||
field.classList.remove("border-gray-300");
|
||
} else {
|
||
field.classList.remove("border-red-500");
|
||
field.classList.add("border-gray-300");
|
||
}
|
||
});
|
||
|
||
// Scroll to error message
|
||
errorMessage.scrollIntoView({
|
||
behavior: "smooth",
|
||
block: "center",
|
||
});
|
||
|
||
// Hide error message after 3 seconds
|
||
setTimeout(() => {
|
||
errorMessage.classList.add("hidden");
|
||
errorMessage.style.display = "none";
|
||
}, 3000);
|
||
|
||
return;
|
||
}
|
||
|
||
// Validate email format
|
||
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
||
if (!emailRegex.test(email)) {
|
||
errorMessage.textContent = "Please enter a valid email address.";
|
||
errorMessage.classList.remove("hidden");
|
||
errorMessage.style.display = "block";
|
||
document
|
||
.getElementById("contact-email")
|
||
.classList.add("border-red-500");
|
||
document
|
||
.getElementById("contact-email")
|
||
.classList.remove("border-gray-300");
|
||
|
||
// Hide error message after 3 seconds
|
||
setTimeout(() => {
|
||
errorMessage.classList.add("hidden");
|
||
errorMessage.style.display = "none";
|
||
}, 3000);
|
||
|
||
return;
|
||
}
|
||
|
||
// All validation passed - show success message
|
||
successMessage.classList.remove("hidden");
|
||
successMessage.style.display = "block";
|
||
|
||
// Reset form
|
||
contactForm.reset();
|
||
|
||
// Reset all field borders
|
||
const allFields = [
|
||
"contact-name",
|
||
"contact-email",
|
||
"contact-subject",
|
||
"contact-message",
|
||
];
|
||
allFields.forEach((fieldId) => {
|
||
const field = document.getElementById(fieldId);
|
||
field.classList.remove("border-red-500");
|
||
field.classList.add("border-gray-300");
|
||
});
|
||
|
||
// Scroll to success message
|
||
successMessage.scrollIntoView({
|
||
behavior: "smooth",
|
||
block: "center",
|
||
});
|
||
|
||
// Hide success message after 3 seconds
|
||
setTimeout(() => {
|
||
successMessage.classList.add("hidden");
|
||
successMessage.style.display = "none";
|
||
}, 3000);
|
||
|
||
// Optional: Disable submit button temporarily
|
||
submitButton.disabled = true;
|
||
submitButton.textContent = "Message Sent!";
|
||
submitButton.classList.add("bg-green-600");
|
||
submitButton.classList.remove("bg-uc-gold");
|
||
|
||
// Re-enable button after 3 seconds
|
||
setTimeout(() => {
|
||
submitButton.disabled = false;
|
||
submitButton.textContent = "Submit";
|
||
submitButton.classList.remove("bg-green-600");
|
||
submitButton.classList.add("bg-uc-gold");
|
||
}, 3000);
|
||
});
|
||
|
||
// Real-time validation feedback
|
||
const formFields = [
|
||
"contact-name",
|
||
"contact-email",
|
||
"contact-subject",
|
||
"contact-message",
|
||
];
|
||
formFields.forEach((fieldId) => {
|
||
const field = document.getElementById(fieldId);
|
||
if (field) {
|
||
field.addEventListener("input", function () {
|
||
// Remove error styling when user starts typing
|
||
this.classList.remove("border-red-500");
|
||
this.classList.add("border-gray-300");
|
||
|
||
// Hide error message when user starts correcting
|
||
if (this.value.trim()) {
|
||
errorMessage.classList.add("hidden");
|
||
}
|
||
});
|
||
}
|
||
});
|
||
}
|
||
});
|
||
</script>
|
||
</body>
|
||
</html>
|