:root {
    --stone: #f4f1ee;
    --charcoal: #333333;
    --white: #ffffff;
    --accent: #5e6d5e; /* Sage green - very Wairarapa */
    --link: #8d775f;
}

body { font-family: 'Inter', sans-serif; margin: 0; color: var(--charcoal); background-color: var(--white); line-height: 1.6; }

nav {
    padding: 20px 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--white);
    position: sticky; top: 0; z-index: 1000;
}

nav .logo { font-family: 'Playfair Display', serif; font-size: 1.4rem; font-weight: bold; text-decoration: none; color: var(--charcoal); }
nav .links a { margin-left: 25px; text-decoration: none; color: var(--charcoal); font-size: 0.85rem; letter-spacing: 1px; text-transform: uppercase; }

/* Hero Styling */
.hero {
    height: 60vh;
    background: linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.2)), url('hero.jpg'); /* Rename your image to hero.jpg */
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;
}

.content { padding: 80px 10%; max-width: 1200px; margin: 0 auto; }
h1, h2, h3 { font-family: 'Playfair Display', serif; font-weight: 600; }

/* Service Cards */
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 40px; margin-top: 40px; }
.card { background: var(--stone); padding: 40px; border-radius: 4px; transition: transform 0.3s; }
.card:hover { transform: translateY(-5px); }

/* Checklist Styling */
.checklist-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 20px;
    border-bottom: 1px solid #eee;
}
.checklist-item input[type="checkbox"] { transform: scale(1.5); margin-top: 5px; accent-color: var(--accent); }

.btn { background: var(--charcoal); color: white; padding: 15px 30px; text-decoration: none; display: inline-block; font-size: 0.9rem; margin-top: 20px; }
footer { text-align: center; padding: 60px; font-size: 0.8rem; background: var(--stone); margin-top: 80px; }