@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/dm-sans-latin.woff2') format('woff2')}

:root{--green:#192e1c;--deep:#192e1c;--paper:#f8f6ef;--ink:#27392e;--line:#d6dacd;--gold:#d6b478}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #b48432;outline-offset:6px}a:hover{text-decoration:underline}img{max-width:100%;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(4rem,6.8vw,6.9rem);margin-bottom:25px}h2{font-size:clamp(2.9rem,4.3vw,4.5rem);margin-bottom:26px}h3{font-size:2.3rem}em{font-weight:400;color:#6a7954}.wrap{width:min(1280px,88%);margin:auto}.skip{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:9}.skip:focus{top:10px}header{padding:24px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{width:220px;flex-shrink:0}.logo{display:block;overflow:hidden;aspect-ratio:4.8;background:var(--green)}.logo img{width:100%;height:auto;transform:translateY(-21%)}nav{display:flex;gap:32px;font-size:.94rem}.header-contact{border-bottom:1px solid var(--green);padding:8px 0;font-weight:600}.header-contact span{margin-left:22px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center;padding-top:66px;padding-bottom:66px}.eyebrow{font-size:.76rem;letter-spacing:.17em;font-weight:600;margin-bottom:24px}.hero-copy>p:not(.eyebrow){max-width:520px}.lead{font-size:1.2rem;line-height:1.6}.hero-copy>p:not(.eyebrow):not(.lead){color:#5d685f}.hero-image{position:relative;padding:12px;border:1px solid #aab6a1;border-radius:260px 260px 0 0}.hero-image img{width:100%;height:570px;object-fit:cover;object-position:49% 50%;border-radius:250px 250px 0 0}.hero-image figcaption{position:absolute;bottom:35px;left:32px;right:32px;background:var(--paper);padding:12px;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:1.15rem}.actions{display:flex;align-items:flex-start;flex-direction:column;gap:17px;margin:30px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:var(--green);color:white;padding:17px 23px;font-size:.95rem;font-weight:500;transition:background .2s}.button:hover{background:var(--deep);filter:brightness(.9);text-decoration:none}.text-link{font-size:.9rem;border-bottom:1px solid #afb7a9}.hero-note{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:28px;font-size:.8rem}.hero-note span:before{content:'\2713';margin-right:9px}.ribbon{background:var(--green);color:var(--paper);display:flex;align-items:center;justify-content:center;gap:6%;padding:22px;font-size:.8rem;letter-spacing:.15em}.ribbon span[aria-hidden]{color:var(--gold);font-size:1.4rem}.section{padding-top:95px;padding-bottom:95px}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:44px}.section-heading h2{margin:0}.section-heading>p{max-width:325px;color:#657061;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.services article{border-top:1px solid #aeb9a6;padding-top:25px;display:flex;flex-direction:column}.number{font-size:.75rem;letter-spacing:.13em;color:#64755d;margin-bottom:28px}.services h3{margin-bottom:20px}.services p{color:#5e685f}.services ul{padding:0;list-style:none;margin:0 0 28px;font-size:.92rem}.services li{padding:7px 0;border-bottom:1px solid var(--line)}.services a{margin-top:auto;font-size:.9rem;font-weight:600;display:flex;justify-content:space-between}.projects{background:#e9ede3}.project-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px}.project-grid img{width:100%;aspect-ratio:1.15;object-fit:cover}.project-grid figure:nth-child(2) img{border-radius:180px 180px 0 0}.project-grid figcaption{padding-top:22px}.project-grid h3{font-size:1.85rem;margin-bottom:6px}.project-grid span{font-size:.83rem;color:#5d685f}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;align-items:center}.about p{color:#5d685f}.about .eyebrow{color:var(--green)}.about-mark{aspect-ratio:.85;border:1px solid #aeb9a6;border-radius:250px 250px 0 0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px;background:#eef0e7}.about-mark>span{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(3rem,6vw,6rem);line-height:.95}.about-mark i{color:#8c986e}.about-mark small{font-size:.68rem;letter-spacing:.18em;margin-top:42px}.transition{border-left:2px solid #aaba91;padding-left:20px;font-style:italic}.contact{background:var(--deep);color:var(--paper);padding:85px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.contact h2{font-size:clamp(3.5rem,5.4vw,5.5rem);margin:0}.contact em{color:#cccea6}.contact .eyebrow{color:#cccea6}.contact-inner>div>p:not(.eyebrow){max-width:440px}.light{background:var(--paper);color:var(--deep)}.light:hover{background:#dfe4d0}.phone{display:block;margin-top:20px;text-decoration:underline}.small{font-size:.85rem;color:#c0cbbb;margin-top:28px;margin-bottom:0}footer{display:flex;justify-content:space-between;gap:20px;padding-top:28px;padding-bottom:28px;font-size:.8rem}@media(max-width:950px){header{flex-wrap:wrap}.brand{width:180px}nav{gap:18px}.hero{gap:5%;padding-top:45px}.hero-image img{height:500px}.hero-note{flex-direction:column;gap:5px}.services{gap:25px}.section-heading{align-items:start;flex-direction:column;gap:20px}.section-heading>p{max-width:600px}.about{gap:7%}.ribbon{gap:4%}}@media(max-width:650px){header{padding:18px 6%;gap:18px}nav{order:3;width:100%;justify-content:space-between;font-size:.85rem}.header-contact{font-size:.85rem}.hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:42px;gap:35px}h1{font-size:4.35rem}.hero-image{max-width:420px;width:100%;margin:auto}.hero-image img{height:390px}.hero-note{flex-direction:row;gap:20px;font-size:.74rem}.ribbon{font-size:.58rem;letter-spacing:.08em;gap:4%;padding:17px 12px}.ribbon span[aria-hidden]{font-size:1rem}.section{padding-top:60px;padding-bottom:60px}.services,.project-grid,.about,.contact-inner{grid-template-columns:1fr;gap:38px}.services article{padding-top:20px}.number{margin-bottom:15px}.services h3{margin-bottom:15px}.project-grid img{aspect-ratio:1.25}.about-mark{max-width:280px;width:100%;margin:auto;aspect-ratio:1}.about-mark>span{font-size:4.7rem}.about-mark small{margin-top:20px}.contact{padding:60px 0}.contact-inner{gap:30px}footer{flex-direction:column;gap:7px}.button{max-width:100%;font-size:.9rem}.eyebrow{font-size:.72rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Krachtige typografie en een compacte projectgalerij. */
body { font-family: 'DM Sans', Arial, sans-serif; }
h1, h2, h3 { font-family: 'DM Sans', Arial, sans-serif; font-weight: 700; letter-spacing: -.045em; }
h1 { font-size: clamp(3.6rem, 6.5vw, 6.6rem); line-height: .98; text-transform: uppercase; }
h2 { font-size: clamp(2.5rem, 4vw, 4rem); line-height: 1.08; }
h3 { font-size: 1.85rem; line-height: 1.15; letter-spacing: -.035em; }
.eyebrow, .number { font-size: .8rem; }
.hero { grid-template-columns: .85fr 1.25fr; gap: 5%; padding-block: 52px; }
.hero-image { padding: 0; border: 0; border-radius: 0; overflow: hidden; }
.hero-image img { width: 100%; height: 500px; object-fit: cover; object-position: 53% 50%; border-radius: 0; }
.hero-image figcaption { position: absolute; bottom: 0; left: 0; right: 0; padding: 65px 24px 20px; background: linear-gradient(transparent, rgba(10,25,16,.86)); color: white; font: 500 .8rem/1.5 'DM Sans', Arial, sans-serif; text-align: left; }
.hero-location { font-size: .875rem; color: #5d685f; margin-bottom: 0; }
.section { padding-block: 72px; }
.services p { margin-bottom: 28px; }
.services a { min-height: 44px; align-items: center; }
.services .number { margin-bottom: 22px; }
.projects .section-heading { align-items: end; gap: 20px; margin-bottom: 30px; }
.projects .section-heading > p { font-size: .9rem; }
.project-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.project-grid figure { position: relative; overflow: hidden; aspect-ratio: 4 / 3; background: var(--deep); }
.project-grid img, .project-grid figure:nth-child(2) img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; border-radius: 0; transition: transform .4s ease; }
.project-grid figure:nth-child(3) img { object-position: 50% 60%; }
.project-grid figure:nth-child(4) img { object-position: 50% 65%; }
.project-grid figcaption { position: absolute; inset: auto 0 0; padding: 60px 22px 20px; background: linear-gradient(transparent,rgba(7,18,11,.88)); color: white; pointer-events: none; }
.project-grid h3 { margin: 0; font-size: clamp(1.1rem, 1.8vw, 1.6rem); letter-spacing: -.02em; line-height: 1.2; }
@media(hover:hover) { .project-grid figure:hover img { transform: scale(1.035); } }
.about { grid-template-columns: 1fr 1fr; gap: 8%; }
.about-photo { overflow: hidden; }
.about-photo img { width: 100%; height: auto; aspect-ratio: 1.15; object-fit: cover; object-position: 75% 50%; }
.about p { max-width: 520px; }
.contact h2 { font-size: clamp(3rem,5vw,5rem); }
@media(max-width:950px) {
  .hero { grid-template-columns: 1fr 1fr; }
  .hero-image img { height: 460px; }
  .project-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .project-grid h3 { font-size: 1.35rem; }
}
@media(max-width:650px) {
  .hero { grid-template-columns: 1fr; padding-block: 32px; gap: 28px; }
  h1 { font-size: clamp(3.4rem,14vw,5rem); }
  .hero-image { max-width: none; }
  .hero-image img { height: auto; aspect-ratio: 1.15; }
  .hero-image figcaption { font-size: .75rem; padding: 45px 18px 15px; }
  .section { padding-block: 48px; }
  .services { gap: 22px; }
  .projects .section-heading { align-items: start; gap: 8px; }
  .project-grid { gap: 10px; }
  .project-grid figure { aspect-ratio: 1; }
  .project-grid figcaption { padding: 40px 12px 14px; }
  .project-grid h3 { font-size: 1rem; overflow-wrap: anywhere; }
  .about { grid-template-columns: 1fr; gap: 28px; }
  .ribbon { flex-wrap: wrap; font-size: .75rem; gap: 12px; }
  .ribbon span { white-space: nowrap; }
  .ribbon span[aria-hidden] { font-size: .9rem; }
}
@media(prefers-reduced-motion:reduce) { .project-grid img { transition: none; } }

/* Toon het originele beeldmerk en woordmerk uit het aangeleverde merkbord. */
.brand-new { display: flex; align-items: center; gap: 12px; width: 232px; }
.brand-symbol, .brand-wordmark { display: block; position: relative; overflow: hidden; flex: none;  }
.brand-symbol { width: 52px; aspect-ratio: 1; }
.brand-wordmark { width: 168px; aspect-ratio: 530 / 60; }
.brand-new img { display: block; position: static; width: 100%; height: auto; }
@media(max-width:650px) {
  .brand-new { width: 200px; gap: 10px; }
  .brand-symbol { width: 44px; }
  .brand-wordmark { width: 146px; }
}

.hero-image figcaption,.project-grid figcaption{background:rgba(25,46,28,.94)}
.number{color:#4d6149}.hero-location,.about p,.services p{color:#4f5b51}

.hero-image figcaption{padding:16px 24px}.project-grid figcaption{padding:16px 22px}@media(max-width:650px){.hero-image figcaption{padding:12px 18px}.project-grid figcaption{padding:12px}}

.projects .section-heading > p{color:#465044}
