Page
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Jolly Good Farm — Real Great Food Naturally</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Fredoka:wght@400;600&family=Plus+Jakarta+Sans:wght@300;400;600;700&display=swap" rel="stylesheet">
<style>
:root {
--yellow-pop: #F3B923; /* Black-eyed Susan Yellow */
--sage-green: #7E937D; /* Logo Sage Green */
--dark-soil: #1E251F;
--cream-bg: #FAF8F5;
--crisp-white: #FFFFFF;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: 'Plus Jakarta Sans', sans-serif;
background-color: var(--cream-bg);
color: var(--dark-soil);
line-height: 1.6;
}
h1, h2, h3, .brand-font {
font-family: 'Fredoka', sans-serif;
font-weight: 600;
}
/* Hero Section */
.hero {
position: relative;
height: 85vh;
min-height: 600px;
background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.4)), url('Jolly Good farm Farm view header.jpg') no-search center/cover;
display: flex;
align-items: center;
padding: 0 10%;
}
.hero-card {
background: rgba(255, 255, 255, 0.95);
padding: 3rem;
border-radius: 24px;
max-width: 550px;
box-shadow: 0 20px 40px rgba(0,0,0,0.1);
backdrop-filter: blur(10px);
border: 1px solid rgba(255,255,255,0.2);
}
.hero-card h1 {
font-size: 2.8rem;
color: var(--dark-soil);
line-height: 1.2;
margin-bottom: 1rem;
}
.hero-card p {
font-size: 1.1rem;
color: #555;
margin-bottom: 2rem;
}
.btn-primary {
background-color: var(--yellow-pop);
color: var(--dark-soil);
padding: 1rem 2rem;
border: none;
border-radius: 50px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 1px;
cursor: pointer;
transition: all 0.3s ease;
text-decoration: none;
display: inline-block;
}
.btn-primary:hover {
transform: translateY(-3px);
box-shadow: 0 10px 20px rgba(243, 185, 35, 0.4);
}
/* Premium Split Feature Grid */
.split-grid {
padding: 6rem 10%;
display: grid;
gap: 6rem;
}
.split-row {
display: grid;
grid-template-columns: 1fr 1fr;
align-items: center;
gap: 4rem;
}
.split-row.reverse {
direction: rtl;
}
.split-row.reverse .text-side {
direction: ltr;
}
.text-side h2 {
font-size: 2.3rem;
color: var(--sage-green);
margin-bottom: 1.5rem;
}
.text-side p {
font-size: 1.1rem;
color: #555;
margin-bottom: 1.5rem;
}
.image-side img {
width: 100%;
height: 450px;
object-fit: cover;
border-radius: 32px;
box-shadow: 0 15px 30px rgba(0,0,0,0.08);
}
/* Dynamic Interactive Quote Generator */
.quote-section {
background-color: var(--crisp-white);
padding: 5rem 10%;
border-radius: 50px 50px 0 0;
box-shadow: 0 -10px 30px rgba(0,0,0,0.02);
}
.quote-container {
max-width: 800px;
margin: 0 auto;
}
.section-header {
text-align: center;
margin-bottom: 3rem;
}
.section-header h2 {
font-size: 2.5rem;
color: var(--dark-soil);
}
.form-card {
background: var(--cream-bg);
padding: 3rem;
border-radius: 24px;
border: 2px solid #EFECE6;
}
.form-group {
margin-bottom: 1.5rem;
}
.form-group label {
display: block;
font-weight: 600;
margin-bottom: 0.5rem;
}
.form-control {
width: 100%;
padding: 1rem;
border: 2px solid #E3DFD8;
border-radius: 12px;
font-family: inherit;
font-size: 1rem;
background: var(--crisp-white);
}
.form-control:focus {
outline: none;
border-color: var(--sage-green);
}
.basket-selector {
border: 2px solid var(--sage-green);
background: rgba(126, 147, 125, 0.05);
padding: 1.5rem;
border-radius: 16px;
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 1rem;
}
.basket-info h4 {
font-size: 1.2rem;
color: var(--dark-soil);
}
.basket-price {
font-family: 'Fredoka', sans-serif;
font-size: 1.4rem;
color: var(--sage-green);
}
@media (max-width: 768px) {
.split-row, .split-row.reverse {
grid-template-columns: 1fr;
direction: ltr;
gap: 2rem;
}
.image-side img {
height: 300px;
}
.hero {
padding: 0 5%;
}
}
</style>
</head>
<body>
<!-- HERO SECTION -->
<section class="hero">
<div class="hero-card">
<h1>Magical Fair Farming. Crisp & Professional.</h1>
<p>100% Organically grown heirloom varieties, nurtured in the heart of Linden, Johannesburg. Hand-harvested daily for fine restaurants and conscious homes.</p>
<a href="#quote-generator" class="btn-primary">Request Seasonal Basket</a>
</div>
</section>
<!-- PREMIUM SPLIT GRID SECTIONS -->
<section class="split-grid">
<!-- Row 1: Protected Tunnels -->
<div class="split-row">
<div class="text-side">
<h2>Nette Tunnels, Pure Methods</h2>
<p>We believe in working harmoniously with nature. Our signature white net tunnels provide immaculate micro-climates, ensuring premium, clean crop protection entirely without harsh pesticides or chemicals.</p>
<p><strong>Dependable, clean, and consistent growth all year round.</strong></p>
</div>
<div class="image-side">
<img src="Jolly Good farm tunnels white net covering for plants.jpg" alt="White netting tunnels at Jolly Good Farm">
</div>
</div>
<!-- Row 2: Elite Seedlings -->
<div class="split-row reverse">
<div class="text-side">
<h2>Untreated Heirloom Seeds</h2>
<p>Every single crisp leaf and rich root crop starts its journey from strictly non-GMO, untreated premium seeds. Our propagation house yields vibrant seedlings that ensure elite flavor profiles for local gourmet chefs.</p>
</div>
<div class="image-side">
<img src="Jolly good farm seedlings.jpeg" alt="Organic heirloom seedlings growing in trays">
</div>
</div>
</section>
<!-- INTERACTIVE QUOTE GENERATOR -->
<section class="quote-section" id="quote-generator">
<div class="quote-container">
<div class="section-header">
<h2>Fresh Harvest Quote Assistant</h2>
<p>Select your delivery zone and items below. Our team will automatically process your seasonal quote directly to WhatsApp or email.</p>
</div>
<div class="form-card">
<form id="farmQuoteForm">
<div class="form-group">
<label for="clientName">Your Name / Restaurant</label>
<input type="text" id="clientName" class="form-control" placeholder="e.g., Chef Mitchell" required>
</div>
<div class="form-group">
<label for="suburb">Delivery Suburb (Johannesburg)</label>
<select id="suburb" class="form-control" required>
<option value="">-- Choose your area --</option>
<option value="linden">Linden / Northcliff</option>
<option value="randburg">Randburg Central</option>
<option value="joburg-south">Johannesburg South</option>
</select>
</div>
<div class="form-group">
<label>Current Seasonal Allocation</label>
<div class="basket-selector">
<div class="basket-info">
<h4>Seasonal Harvest Basket (approx. 5.2kg)</h4>
<p style="font-size: 0.9rem; color: #666;">Includes heirloom tomatoes, rainbow chard, carrots, spring onions, and herbs.</p>
</div>
<div class="basket-price">R365</div>
</div>
</div>
<button type="submit" class="btn-primary" style="width: 100%; margin-top: 2rem;">Generate My Quote</button>
</form>
</div>
</div>
</section>
</body>
</html>