
:root{
  --forest:#18332A; --moss:#6E8C74; --oat:#F3EFE7; --copper:#B56D45; --river:#5B7C8C;
}
*{box-sizing:border-box}
body{margin:0;background:var(--oat);color:#1b1b1b;font:16px/1.65 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
h1,h2,h3{font-family:"Cormorant Garamond",serif;color:var(--forest);line-height:1.2;margin:0 0 .5rem}
a{color:var(--river)}
.container{max-width:1100px;margin:0 auto;padding:1.25rem}
.hero{display:grid;min-height:60vh;place-items:center;text-align:center;background:#000 url('/assets/img/hero.jpg') center/cover no-repeat;color:#fff;padding:6rem 1rem}
.hero h1{font-size:clamp(2rem,5vw,4rem);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.btn{display:inline-block;padding:.85rem 1.15rem;border:none;background:var(--copper);color:#fff;text-decoration:none;border-radius:.5rem}
.grid{display:grid;gap:1.25rem}
@media(min-width:800px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}}
.card{background:#fff;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.06)}
.card img{width:100%;height:220px;object-fit:cover}
.card .pad{padding:1rem}
.footer{background:var(--forest);color:#fff;margin-top:2rem}
.nav{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.nav a{color:var(--forest);text-decoration:none}
.nav a.btn{color:#fff}
.section{padding:2rem 0}
.list{list-style: none; padding: 0; margin: 0}
.list li{margin:.35rem 0;padding-left:1rem;position:relative}
.list li::before{content:"•";position:absolute;left:0;color:var(--moss)}
.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--moss);font-size:.9rem}
figure{margin:0}
img{max-width:100%;height:auto;display:block}
.form{background:#fff;border-radius:.75rem;padding:1rem;box-shadow:0 2px 16px rgba(0,0,0,.06)}
label{display:block;margin:.5rem 0 .25rem}
input,textarea,select{width:100%;padding:.75rem;border-radius:.5rem;border:1px solid #d7d7d7}
input[type=submit]{cursor:pointer;background:var(--copper);border:none;color:#fff}
.alert{padding:1rem;border-radius:.5rem;margin:.75rem 0}
.alert.success{background:#e6f6ea;border:1px solid #9ad3a6}
.alert.error{background:#fdeaea;border:1px solid #f2a2a2}
