Add contact form and WhatsApp integration

- Created a new, styled contact form with input validation.
- Added WhatsApp Chat link for direct communication.
- Introduced `ContactForm.css` with responsive styles to improve usability.
This commit is contained in:
k
2025-07-20 14:28:13 +02:00
parent 749b3e5079
commit 096883b0ee
2 changed files with 163 additions and 5 deletions

View File

@ -1,11 +1,42 @@
---
import Layout from "../components/Layout.astro";
import "../../styles/components/ContactForm.css";
---
<Layout>
<h1>Contact</h1>
<p>Hier findest du alle aktuellen und kommenden Contact im Gallus Pub.</p>
<div class="contact-container">
<h1 class="contact-title">Kontakt</h1>
<form class="contact-form">
<div class="form-group">
<label for="name">Name</label>
<input type="text" id="name" name="name" required>
</div>
<div class="form-group">
<label for="email">E-Mail</label>
<input type="email" id="email" name="email" required>
</div>
<div class="form-group">
<label for="subject">Betreff</label>
<input type="text" id="subject" name="subject" required>
</div>
<div class="form-group">
<label for="message">Nachricht</label>
<textarea id="message" name="message" rows="5" required></textarea>
</div>
<button type="submit" class="submit-button">Senden</button>
</form>
<div class="whatsapp-container">
<p>Oder kontaktiere uns direkt über WhatsApp:</p>
<a href="https://wa.me/41772322770" class="whatsapp-link" target="_blank" rel="noopener noreferrer">
<span class="whatsapp-icon">📱</span>
<span>WhatsApp Chat starten</span>
</a>
</div>
</div>
</Layout>

View File

@ -0,0 +1,127 @@
/* styles/components/ContactForm.css */
.contact-container {
max-width: 800px;
margin: 2rem auto;
padding: 0 1rem;
}
.contact-title {
margin-top: 70px;
padding-top: 2rem;
text-align: center;
margin-bottom: 2rem;
font-size: 2.5rem;
color: var(--color-text);
}
.contact-form {
background-color: rgba(33, 59, 40, 0.05);
padding: 2rem;
border-radius: 8px;
margin-bottom: 2rem;
}
.form-group {
margin-bottom: 1.5rem;
}
.form-group label {
display: block;
margin-bottom: 0.5rem;
font-weight: bold;
color: var(--color-text);
}
.form-group input,
.form-group textarea {
width: 100%;
padding: 0.75rem;
border: 1px solid #ccc;
border-radius: 4px;
font-family: inherit;
font-size: 1rem;
background-color: #fff;
}
.form-group textarea {
resize: vertical;
}
.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color: #213b28;
box-shadow: 0 0 0 2px rgba(33, 59, 40, 0.2);
}
.submit-button {
background-color: #213b28;
color: white;
border: none;
padding: 0.75rem 1.5rem;
font-size: 1rem;
font-weight: bold;
border-radius: 4px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.submit-button:hover {
background-color: #2a4c35;
}
.whatsapp-container {
text-align: center;
margin: 2rem 0;
}
.whatsapp-link {
display: inline-flex;
align-items: center;
background-color: #25D366;
color: white;
text-decoration: none;
padding: 0.75rem 1.5rem;
border-radius: 4px;
font-weight: bold;
transition: background-color 0.3s ease;
margin-top: 0.5rem;
}
.whatsapp-link:hover {
background-color: #128C7E;
}
.whatsapp-icon {
font-size: 1.2rem;
margin-right: 0.5rem;
display: inline-block;
}
/* Responsive adjustments */
@media (max-width: 768px) {
.contact-form {
padding: 1.5rem;
}
.contact-title {
font-size: 2rem;
}
}
@media (max-width: 480px) {
.contact-form {
padding: 1rem;
}
.contact-title {
font-size: 1.75rem;
}
.submit-button,
.whatsapp-link {
width: 100%;
justify-content: center;
}
}