:root{
  --bg:#fff8f0;        /* warm wit, zonnig */
  --ink:#202020;       /* primaire tekstkleur */
  --muted:#7a746a;     /* secundaire tekst op licht */
  --gold:#c79b3b;      /* goudaccent */
  --soldout:#a34b3b;   /* badge-kleur */
}

/* Basis */
*{box-sizing:border-box}
html:focus-within{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  line-height:1.6;
}

/* Hyperlinks in de content (main) – goud met warme hover */
main a:link,
main a:visited {
  color: var(--gold);
  text-decoration: underline;
  transition: color .25s, text-decoration-color .25s;
}

main a:hover,
main a:focus-visible {
  color: #1b1713;                    /* warme donkerbruine hoverkleur */
  text-decoration-color: transparent; /* subtiel effect bij hover */
  outline: none;
}

/* Header – donker + gouden gloed */
header{
  padding:16px 20px;
  background:#1b1713;
  color:#ffffff;
  font-weight:bold;
  box-shadow:0 6px 15px rgba(199,155,59,0.25);
  position:relative;
  z-index:10;
}
.brand{
  display:flex;justify-content:space-between;align-items:center;
  gap:16px;max-width:1100px;margin:0 auto;
}
.brand h1{
  font-size:1.25rem;margin:0;letter-spacing:.5px;color:#ffffff;font-weight:800;
}

/* Navigatie – wit + goudaccent */
nav{display:flex;gap:12px;flex-wrap:wrap}
nav a{
  color:#ffffff;text-decoration:none;
  border:1px solid var(--gold);
  padding:6px 10px;border-radius:999px;
  transition:all .25s;font-weight:bold;
}
nav a:hover,
nav a:focus-visible{
  background:var(--gold);color:#1b1713;outline:none;
}

/* Layout & koppen */
main{max-width:1100px;margin:32px auto;padding:0 20px}
h1{font-size:2rem;margin:.4em 0;color:#1b1713}
h2{margin:.2em 0 .4em;color:#1b1713}

/* Banner */
.banner{
  position:relative;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;
}
.banner::after{
  content:"Uit eigen tuin";
  position:absolute;bottom:10px;right:20px;
  background:rgba(0,0,0,0.45);
  padding:8px 14px;border-radius:8px;font-size:1.1rem;
  color:var(--gold);font-weight:700;backdrop-filter:blur(3px)
}
.banner img{
  flex:1 1 48%;border-radius:12px;object-fit:cover;height:320px;
}

/* Cards */
.cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.card{
  border:1px solid #e6dfd4;border-radius:12px;padding:16px;
  background:#ffffff;color:var(--ink);
  position:relative;overflow:hidden;
  box-shadow:0 4px 12px rgba(0,0,0,0.06);
}

/* Badges / meta */
.soldout{
  position:absolute;top:12px;right:12px;
  background:var(--soldout);color:#fff;
  padding:4px 10px;border-radius:6px;font-size:.85rem;font-weight:700;
  box-shadow:0 2px 6px rgba(0,0,0,0.2);
  animation:pulse 2s infinite ease-in-out;
}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.85;transform:scale(1.05);}}
.meta{color:#6a645a;font-size:.95rem;margin:.2em 0 .6em}

/* Buttons */
a.btn{
  display:inline-block;border:1px solid var(--gold);
  padding:8px 12px;border-radius:999px;
  color:#1b1713;text-decoration:none;transition:all .25s;font-weight:700;
}
a.btn:hover,
a.btn:focus-visible{
  background:var(--gold);color:#1b1713;
  box-shadow:0 6px 14px rgba(199,155,59,0.25);outline:none;
}

/* Footer – donker + warme gloed boven */
footer{
  margin:40px 0 20px;text-align:center;
  background:#a34b3b;           
  color:#ffffff;font-weight:bold;
  padding:20px 20px;border-top:1px solid #2a241e;
  box-shadow:0 -6px 15px rgba(199,155,59,0.2);
}
footer a{color:#ffffff;text-decoration:underline}

/* Contentlinks in <main> – inclusief visited */
main a:link,
main a:visited {
  color: var(--gold) !important;
}

main a:hover,
main a:focus-visible {
  color: #1b1713 !important;
}

/* Responsive galerij */
.gallery{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}
.gallery img{
  display: block;            /* voorkomt extra witruimte bij inline-img */
  width: 100%;
  height: 240px;             /* maak er kaartjes van */
  object-fit: cover;         /* mooi bijsnijden */
  border-radius: 12px;
}

/* Tekstopmaak voor inleidende paragrafen */
main p {
    margin-bottom: 1em;
  line-height: 1.6;
  word-break: normal;        /* voorkomt dat woorden te snel breken */
  overflow-wrap: break-word; /* alleen breken bij lange woorden */
}


/* Kleine verbeteringen */
img{max-width:100%;height:auto}
@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
}

