:root{
  --bg:#faf7f2; --fg:#1f2a26; --muted:#5f6b66; --accent:#2f8f5f; --accent-2:#e8c26d;
  --card:#fff; --border:#e3ded4; --shadow:0 2px 10px rgba(30,50,40,.06);
  --radius:10px; --wrap:1140px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--fg);font:400 16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2;margin:0 0 .6em}
h1{font-size:36px} h2{font-size:26px} h3{font-size:20px}
.muted{color:var(--muted)}
.button{display:inline-block;padding:12px 22px;background:var(--accent);color:#fff;border-radius:var(--radius);font-weight:600;border:0;cursor:pointer;transition:.15s}
.button:hover{background:#256e49;text-decoration:none}
.button--ghost{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
.button--ghost:hover{background:var(--accent);color:#fff}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}

/* header */
.site-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}
.site-header .row{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:Georgia,serif;font-weight:700;font-size:20px;color:var(--fg);display:flex;align-items:center;gap:10px}
.logo-mark{width:32px;height:32px;background:var(--accent);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}
.nav{display:flex;gap:22px;align-items:center}
.nav a{color:var(--fg);font-weight:500}
.nav a.active{color:var(--accent)}
.nav-mobile-toggle{display:none;background:none;border:0;cursor:pointer;font-size:22px}
@media (max-width:820px){
  .nav{position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;border-bottom:1px solid var(--border);display:none}
  .nav.open{display:flex}
  .nav-mobile-toggle{display:block}
}

/* hero */
.hero{padding:60px 0;background:linear-gradient(180deg,#f0ede4 0%,var(--bg) 100%)}
.hero .row{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
@media (max-width:820px){ .hero .row{grid-template-columns:1fr} }
.hero h1{font-size:44px}
.hero p{font-size:18px;color:var(--muted);margin-bottom:24px}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap}
.hero img{border-radius:var(--radius);box-shadow:var(--shadow)}

/* sections */
.section{padding:56px 0}
.section h2{margin-bottom:6px}
.section .lead{color:var(--muted);margin-bottom:34px;font-size:17px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media (max-width:820px){ .grid-3,.grid-2{grid-template-columns:1fr} }
.tile img{border-radius:var(--radius) var(--radius) 0 0;aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;display:block}
.tile .body{padding:18px}
.tile h3{margin-bottom:6px}
.tile p{color:var(--muted);margin:0 0 14px}

/* article */
.article{padding:40px 0;max-width:760px;margin:0 auto}
.article h1{margin-bottom:16px}
.article p{margin:0 0 14px}
.article ul{margin:0 0 14px 22px}
.article .meta{color:var(--muted);font-size:14px;margin-bottom:26px}

/* footer */
.site-footer{background:#1f2a26;color:#d9dcd8;padding:40px 0 22px;margin-top:60px}
.site-footer a{color:#d9dcd8}
.site-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
@media (max-width:820px){ .site-footer .cols{grid-template-columns:1fr} }
.site-footer h4{color:#fff;font-family:inherit;font-size:15px;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{padding:5px 0}
.site-footer .copyright{border-top:1px solid #2f3a35;margin-top:28px;padding-top:16px;font-size:13px;color:#8b948f}

/* cookie banner */
.cookie-banner{position:fixed;right:20px;bottom:20px;left:auto;max-width:380px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;box-shadow:0 6px 24px rgba(20,30,25,.14);z-index:200;display:none}
@media (max-width:500px){ .cookie-banner{left:12px;right:12px;max-width:none} }
.cookie-banner.show{display:block}
.cookie-banner p{margin:0 0 12px;font-size:14px}
.cookie-banner .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.cookie-banner .button{padding:8px 16px;font-size:14px}
.cookie-banner a{color:var(--accent)}

/* forms */
form label{display:block;margin:0 0 6px;font-weight:500;font-size:14px}
form input,form textarea{width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:8px;font:inherit;background:#fff}
form .field{margin:0 0 16px}
form textarea{min-height:130px;resize:vertical}

/* util */
.center{text-align:center}
.mt-lg{margin-top:32px}
