/* De Korenschoof Texel — basisstijl. Het echte ontwerp volgt uit Figma. */

:root {
  --color-text: #1f2a24;
  --color-bg: #ffffff;
  --color-accent: #4f7a3a;
  --font-body: system-ui, -apple-system, "Segoe UI", sans-serif;
  --container: 72rem;
}

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-body); color: var(--color-text); background: var(--color-bg); line-height: 1.6; }
img { max-width: 100%; height: auto; display: block; }

.container { width: min(100% - 2rem, var(--container)); margin-inline: auto; }

/* Typografie hangt aan classes, nooit aan de tag: zo verandert er niets als de redacteur een ander kopniveau kiest */
.text-h1 { font-size: clamp(2rem, 5vw, 3.25rem); font-weight: 700; line-height: 1.15; margin: 0 0 1rem; }
.text-h2 { font-size: clamp(1.5rem, 3.5vw, 2.25rem); font-weight: 700; line-height: 1.2; margin: 0 0 1rem; }
.text-eyebrow { font-size: .875rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--color-accent); margin: 0 0 .5rem; }

/* Kopniveau kiesbaar in het panel: als kop (h1–h6) blijven deze er hetzelfde uitzien als gewone tekst */
:where(h1, h2, h3, h4, h5, h6):where(.text-eyebrow, .b-text__eyebrow, .b-page-header__eyebrow) { font-size: inherit; font-weight: inherit; }

.prose > :first-child { margin-top: 0; }
.prose > :last-child { margin-bottom: 0; }

.button-row { margin: 1.5rem 0 0; }
.button { display: inline-block; padding: .75rem 1.5rem; border-radius: 999px; background: var(--color-accent); color: #fff; text-decoration: none; font-weight: 600; }

.b-page-header { padding: clamp(3rem, 8vw, 6rem) 0 2rem; }
.b-text { padding: clamp(2rem, 6vw, 4rem) 0; }

.b-page-header__grid,
.b-text__grid { display: grid; gap: 2rem; align-items: center; }

@media (min-width: 900px) {
  .b-page-header__grid,
  .b-text__grid { grid-template-columns: 1fr 1fr; gap: 4rem; }
}

.text-h3 { font-size: 1.375rem; font-weight: 700; line-height: 1.25; margin: 0 0 .5rem; }
.button--secondary { background: transparent; color: var(--color-accent); box-shadow: inset 0 0 0 2px var(--color-accent); }

.b-apartments { padding: clamp(2rem, 6vw, 4rem) 0; }
.b-apartments__grid { display: grid; gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); }
.b-apartments__card { display: flex; flex-direction: column; }
.b-apartments__img { border-radius: 1rem; aspect-ratio: 4 / 3; object-fit: cover; width: 100%; margin-bottom: 1rem; }
.b-apartments__title a { color: inherit; text-decoration: none; }
.b-apartments__text { margin: 0 0 1rem; flex: 1; }
.b-apartments__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0; }

.b-tommy { padding: clamp(2rem, 6vw, 4rem) 0; }

.b-text__figure { margin: 0; }
.b-page-header__img,
.b-text__img { border-radius: 1rem; width: 100%; }
