
:root{
  --bg:#f5f1ea;
  --ink:#14120f;
  --muted:#6d665d;
  --gold:#b87622;
  --gold2:#d29a4d;
  --line:#ddd4c9;
  --dark:#11100e;
  --white:#fffdf9;
  --radius:16px;
  --shell:min(1180px,calc(100% - 40px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit}
.shell{width:var(--shell);margin-inline:auto}
.narrow{max-width:820px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05)}
.header-inner{min-height:96px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img,.custom-logo{width:245px;height:auto;max-height:88px;object-fit:contain}
.primary-nav{margin-left:auto}
.primary-nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0;align-items:center}
.primary-nav a{text-decoration:none;font-size:.96rem;font-weight:650}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--gold),#8c5319);color:#fff;text-decoration:none;padding:15px 22px;border-radius:10px;font-weight:800;border:1px solid transparent}
.btn-small{padding:12px 17px;white-space:nowrap}
.btn-outline{background:transparent;border-color:var(--gold);color:#fff}
.hero{min-height:630px;background-size:cover;background-position:center 52%;display:flex;align-items:center;color:#fff}
.hero-inner{width:var(--shell)}
.hero-copy{max-width:560px;padding:70px 0}
.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--gold2);font-size:.82rem;margin-bottom:14px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin:0 0 18px}
h1{font-size:clamp(3.1rem,6vw,5.6rem);max-width:720px}
h2{font-size:clamp(2.2rem,4vw,3.7rem)}
h3{font-size:1.35rem}
.hero p{font-size:1.08rem;max-width:550px;color:#f3eee7}
.trust{display:flex;gap:24px;flex-wrap:wrap;list-style:none;padding:0;margin:28px 0 0;font-size:.92rem}
.trust li:before{content:"✓";color:var(--gold2);margin-right:8px}
.service-strip{background:#fbf8f3;border-bottom:1px solid var(--line)}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.service-grid article{padding:28px 24px;display:flex;gap:16px;border-right:1px solid var(--line)}
.service-grid article:last-child{border-right:0}
.service-grid p{margin:0;color:var(--muted);font-size:.93rem}
.icon{color:var(--gold);font-size:2rem;font-weight:700}
.section{padding:84px 0}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.about-photo img{width:100%;aspect-ratio:4/4.5;object-fit:cover;object-position:center top;border-radius:var(--radius)}
.about-copy p{color:#443f38}
.dark{background:linear-gradient(180deg,#161512,#0c0c0b);color:#fff}
.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:28px}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.project-card{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:12px;background:#2b2924;min-height:240px}
.placeholder{display:flex;align-items:end;padding:14px;font-weight:800;background:linear-gradient(180deg,#504638,#201c16)}
.placeholder.after{background:linear-gradient(180deg,#a67a46,#4d3218)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}
.steps article{padding:28px;border:1px solid var(--line);border-radius:14px;background:#fff}
.steps strong{display:block;color:var(--gold);font-size:1.6rem;margin-bottom:14px}
.reviews{background:#f7f2ea}
.lead{font-size:1.18rem;color:var(--muted)}
.site-footer{background:#11100e;color:#fff;padding:28px 0 18px}
.footer-card{background:#fffaf2;color:#17130f;border-radius:18px;padding:28px;display:grid;grid-template-columns:240px 1fr auto;gap:26px;align-items:center}
.footer-brand img{width:220px}
.footer-copy h2{font-size:1.8rem;margin-bottom:8px}
.footer-copy p{margin:0 0 12px}
.contact-row{display:flex;flex-wrap:wrap;gap:18px;font-size:.92rem}
.contact-row a{text-decoration:none}
.legal{padding-top:18px;font-size:.86rem;color:#c9c3ba}
.legal a{color:#fff}
@media(max-width:1000px){
  .header-inner{min-height:82px}
  .primary-nav{display:none}
  .header-inner .btn-small{margin-left:auto}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .service-grid article:nth-child(2){border-right:0}
  .split{grid-template-columns:1fr;gap:36px}
  .project-grid,.steps{grid-template-columns:1fr}
  .footer-card{grid-template-columns:180px 1fr}
  .footer-card>.btn{grid-column:1/-1}
}
@media(max-width:640px){
  :root{--shell:min(100% - 24px,1180px)}
  .brand img,.custom-logo{width:170px}
  .header-inner .btn-small{font-size:.84rem;padding:10px 12px}
  .hero{min-height:560px;background-position:60% center}
  .hero-copy{padding:58px 0}
  h1{font-size:clamp(2.6rem,14vw,4rem)}
  .service-grid{grid-template-columns:1fr}
  .service-grid article{border-right:0;border-bottom:1px solid var(--line)}
  .service-grid article:last-child{border-bottom:0}
  .section{padding:62px 0}
  .section-heading{display:block}
  .section-heading .btn{margin-top:10px}
  .footer-card{grid-template-columns:1fr}
  .footer-brand img{width:180px}
}

/* v1.1 — uitwerking Over mij en Projecten */
.about-split{align-items:center}
.about-photo-wrap{position:relative}
.about-photo{overflow:hidden;border-radius:18px;box-shadow:0 18px 50px rgba(31,24,17,.10)}
.about-photo img{aspect-ratio:4/4.7;object-fit:cover;object-position:center top}
.about-badge{position:absolute;right:-20px;bottom:26px;background:#181512;color:#fff;padding:16px 18px;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.2);max-width:230px}
.about-badge strong,.about-badge span{display:block}
.about-badge strong{font-family:Georgia,"Times New Roman",serif;font-size:1.05rem}
.about-badge span{font-size:.78rem;color:#d8cfc5;margin-top:3px}
.about-intro{font-weight:750;color:#1a1714!important;font-size:1.05rem}
.about-points{display:flex;flex-wrap:wrap;gap:10px 18px;margin:24px 0 14px}
.about-points span{font-weight:700;font-size:.92rem}
.about-signature{padding-left:16px;border-left:3px solid var(--gold);font-weight:700;color:#28231e!important}
.text-link{display:inline-block;margin-top:8px;color:#8d561c;font-weight:800;text-decoration:none}
.text-link:hover{text-decoration:underline}

.projects-heading{align-items:flex-end}
.projects-heading>div{max-width:720px}
.projects-intro{max-width:680px;color:#cfc8be;margin:8px 0 0}
.project-grid{gap:22px}
.project-v11{display:block;background:#1b1916;min-height:0;border:1px solid rgba(255,255,255,.09);overflow:hidden}
.project-title{padding:16px 16px 12px;font-family:Georgia,"Times New Roman",serif;font-size:1.22rem;font-weight:700}
.project-comparison{display:grid;grid-template-columns:1fr 1fr;min-height:285px}
.project-image{position:relative;min-width:0;background:#302c26;overflow:hidden}
.project-image+.project-image{border-left:1px solid rgba(255,255,255,.12)}
.project-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.project-empty{height:100%;min-height:285px;display:grid;place-items:center;padding:20px;text-align:center;color:#aaa094;background:linear-gradient(145deg,#37322b,#26221d)}
.project-empty-after{background:linear-gradient(145deg,#6e4a28,#3e2a1a);color:#dbc8b1}
.project-label{position:absolute;left:12px;bottom:12px;background:#11100e;color:#fff;padding:6px 10px;border-radius:7px;font-size:.8rem;font-weight:800}
.project-label-after{background:var(--gold)}
.projects-foot{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.projects-foot p{margin:0;color:#ddd6cc}
.light-link{color:#d9a45e;margin-top:0}

@media(max-width:1000px){
  .about-badge{right:16px}
}
@media(max-width:640px){
  .about-badge{position:static;margin-top:12px;max-width:none}
  .about-points{display:grid;gap:7px}
  .project-comparison{min-height:220px}
  .project-empty{min-height:220px}
  .projects-foot{display:block}
  .projects-foot .text-link{margin-top:8px}
}

/* v1.2.1 — groter logo in header */
@media(min-width:1001px){
  .header-inner{min-height:112px}
  .brand img,.custom-logo{width:300px;max-height:100px}
}
@media(min-width:641px) and (max-width:1000px){
  .brand img,.custom-logo{width:220px;max-height:86px}
}

/* v1.3 — visuele verfijning header / hero / diensten */
:root{
  --shell:min(1320px,calc(100% - 56px));
}

@media(min-width:1001px){
  .site-header{background:rgba(255,253,249,.985)}
  .header-inner{
    min-height:132px;
    gap:36px;
  }
  .brand{
    min-width:330px;
  }
  .brand img,
  .custom-logo{
    width:330px;
    max-height:116px;
    object-fit:contain;
    object-position:left center;
  }
  .primary-nav{
    margin-left:auto;
  }
  .primary-nav ul{
    gap:30px;
  }
  .primary-nav a{
    font-size:1rem;
    font-weight:700;
  }
  .header-inner .btn-small{
    padding:15px 22px;
    font-size:.98rem;
    border-radius:10px;
  }

  .hero{
    min-height:610px;
    background-position:center 50%;
  }
  .hero-copy{
    max-width:610px;
    padding:72px 0 74px;
  }
  .hero h1{
    font-size:clamp(3.55rem,5.1vw,5.15rem);
    max-width:620px;
    line-height:1.03;
    letter-spacing:-.025em;
    margin-bottom:22px;
  }
  .hero p{
    max-width:560px;
    font-size:1.05rem;
    line-height:1.65;
  }
  .hero .btn{
    margin-top:4px;
  }
  .trust{
    margin-top:28px;
    gap:28px;
  }

  .service-grid article{
    padding:30px 28px;
  }
  .service-grid h3{
    font-size:1.38rem;
  }
}

@media(min-width:641px) and (max-width:1000px){
  :root{
    --shell:min(100% - 36px,1180px);
  }
  .brand{
    min-width:245px;
  }
  .brand img,
  .custom-logo{
    width:245px;
    max-height:94px;
  }
  .header-inner{
    min-height:104px;
  }
  .hero h1{
    font-size:clamp(3rem,7vw,4.4rem);
    max-width:620px;
    line-height:1.04;
  }
}

@media(max-width:640px){
  .brand img,
  .custom-logo{
    width:185px;
    max-height:72px;
  }
  .header-inner{
    min-height:88px;
    gap:10px;
  }
  .header-inner .btn-small{
    font-size:.76rem;
    padding:9px 10px;
  }
  .hero h1{
    font-size:clamp(2.45rem,12vw,3.6rem);
    line-height:1.03;
    max-width:95%;
  }
  .hero p{
    font-size:.98rem;
  }
}

/* v1.3.1 — hero terug naar eerdere, verder uitgezoomde weergave */
@media(min-width:1001px){
  .hero{
    min-height:630px;
    background-size:cover;
    background-position:center 52%;
  }
  .hero-copy{
    max-width:560px;
    padding:82px 0 78px;
  }
  .hero h1{
    font-size:clamp(3.2rem,4.5vw,4.65rem);
    max-width:560px;
    line-height:1.04;
    letter-spacing:-.02em;
  }
}
@media(min-width:641px) and (max-width:1000px){
  .hero{
    min-height:560px;
    background-position:60% center;
  }
  .hero h1{
    font-size:clamp(2.8rem,6.4vw,4rem);
    max-width:560px;
  }
}

/* v1.3.2 — hero duidelijk verder uitgezoomd */
@media(min-width:1201px){
  .hero{
    min-height:780px;
    background-size:cover;
    background-position:center 46%;
  }
  .hero-copy{
    max-width:560px;
    padding:110px 0 105px;
  }
  .hero h1{
    font-size:clamp(3rem,4vw,4.3rem);
    max-width:540px;
    line-height:1.04;
  }
  .hero p{
    max-width:520px;
  }
}

@media(min-width:1001px) and (max-width:1200px){
  .hero{
    min-height:700px;
    background-size:cover;
    background-position:center 47%;
  }
  .hero-copy{
    max-width:540px;
    padding:95px 0 90px;
  }
  .hero h1{
    font-size:clamp(2.9rem,4.4vw,4rem);
    max-width:520px;
  }
}

@media(min-width:641px) and (max-width:1000px){
  .hero{
    min-height:620px;
    background-position:58% 48%;
  }
  .hero-copy{
    max-width:520px;
    padding:78px 0;
  }
  .hero h1{
    font-size:clamp(2.7rem,6vw,3.8rem);
    max-width:510px;
  }
}

/* v1.4 — horizontale logo-opzet zoals goedgekeurd concept */
.site-header{
  overflow:visible;
}
.header-inner{
  position:relative;
}
.brand-cluster{
  position:relative;
  display:flex;
  align-items:center;
  gap:18px;
  flex:0 0 auto;
  padding:8px 22px 10px 0;
}
.brand-slogan{
  max-width:190px;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-size:1rem;
  line-height:1.25;
  color:#7a3f13;
  transform:rotate(-1.5deg);
}
.brand-cluster::after{
  content:"";
  position:absolute;
  left:-26px;
  right:-18px;
  bottom:-18px;
  height:30px;
  background:var(--white);
  border-bottom-right-radius:22px;
  z-index:-1;
}

@media(min-width:1001px){
  .header-inner{
    min-height:108px;
    gap:28px;
  }
  .brand-cluster{
    min-width:420px;
  }
  .brand{
    min-width:0;
  }
  .brand img,
  .custom-logo{
    width:210px;
    max-height:90px;
    object-fit:contain;
    object-position:left center;
  }
  .brand-slogan{
    font-size:1.05rem;
    max-width:175px;
  }
  .primary-nav ul{
    gap:24px;
  }
}

@media(min-width:641px) and (max-width:1000px){
  .brand-cluster{
    gap:12px;
    min-width:0;
  }
  .brand img,
  .custom-logo{
    width:175px;
    max-height:78px;
  }
  .brand-slogan{
    font-size:.88rem;
    max-width:145px;
  }
  .brand-cluster::after{
    bottom:-14px;
    height:24px;
  }
}

@media(max-width:640px){
  .brand-cluster{
    gap:8px;
    padding-right:8px;
  }
  .brand img,
  .custom-logo{
    width:145px;
    max-height:66px;
  }
  .brand-slogan{
    display:none;
  }
  .brand-cluster::after{
    display:none;
  }
}

/* v1.4.1 — meer traptreden zichtbaar in hero */
@media(min-width:1201px){
  .hero{
    min-height:820px;
    background-position:center 78%;
  }
}
@media(min-width:1001px) and (max-width:1200px){
  .hero{
    min-height:740px;
    background-position:center 76%;
  }
}
@media(min-width:641px) and (max-width:1000px){
  .hero{
    min-height:650px;
    background-position:58% 72%;
  }
}
@media(max-width:640px){
  .hero{
    background-position:58% 68%;
  }
}

/* v1.5 — terug naar goedgekeurd concept */
@media(min-width:1201px){
  .header-inner{
    min-height:104px;
  }
  .brand-cluster{
    min-width:410px;
    gap:16px;
  }
  .brand img,.custom-logo{
    width:205px;
    max-height:88px;
  }
  .brand-slogan{
    font-size:1rem;
    max-width:175px;
  }
  .primary-nav ul{
    gap:26px;
  }

  .hero{
    min-height:570px;
    display:flex;
    align-items:center;
    background-repeat:no-repeat;
  }
  .hero-inner{
    display:flex;
    align-items:center;
  }
  .hero-copy{
    max-width:560px;
    padding:72px 0 70px;
  }
  .hero h1{
    font-size:clamp(3.4rem,4.5vw,4.85rem);
    max-width:560px;
    line-height:1.03;
    letter-spacing:-.02em;
    margin-bottom:20px;
  }
  .hero p{
    max-width:540px;
    font-size:1.02rem;
  }

  .service-grid article{
    min-height:160px;
    align-items:flex-start;
  }
}

@media(min-width:641px) and (max-width:1200px){
  .hero{
    min-height:600px;
    background-repeat:no-repeat;
  }
  .hero h1{
    max-width:560px;
  }
}

@media(max-width:640px){
  .hero{
    min-height:560px;
    background-size:cover!important;
  }
}

/* v1.6 — beheerbare reviews */
.reviews{background:#f7f2ea}
.reviews-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:30px}
.reviews-heading .lead{max-width:680px;margin-bottom:0}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 10px 30px rgba(24,18,12,.04)}
.review-stars{display:flex;gap:3px;margin-bottom:14px}
.review-stars span{color:#d7cec2;font-size:1.05rem}
.review-stars span.filled{color:var(--gold)}
.review-card blockquote{margin:0 0 20px;font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.55;color:#25211d}
.review-meta{display:grid;gap:2px;padding-top:16px;border-top:1px solid var(--line)}
.review-meta strong{font-size:.98rem}
.review-meta span,.review-meta small{color:var(--muted)}
.reviews-empty{grid-column:1/-1;padding:24px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);background:rgba(255,255,255,.55)}
.reviews-empty p{margin:0}
@media(max-width:1000px){.reviews-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.reviews-grid{grid-template-columns:1fr}.review-card{padding:22px}}

/* v1.6.1 — header onderrand strak en recht; geen witte uitstulping */
.brand-cluster::after{
  display:none !important;
}
.site-header,
.header-inner,
.brand-cluster{
  border-bottom-left-radius:0 !important;
  border-bottom-right-radius:0 !important;
}
.site-header{
  overflow:visible;
}

/* v1.6.2 — wit logo/sloganvlak loopt strak door tot linker schermrand */
.site-header{
  background:#fff;
}
.header-inner{
  position:relative;
}
.brand-cluster{
  position:relative;
  z-index:1;
}
.brand-cluster::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  right:0;
  left:calc((100vw - 100%) / -2);
  background:#fff;
  border-radius:0;
  pointer-events:none;
}
.brand-cluster::after{
  display:none !important;
}


/* v1.6.3 — footer slogan en aanvullende bedrijfsgegevens */
.footer-slogan-handwritten{
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-style:italic;
  font-weight:500;
  color:#8b4d20;
  line-height:1.12;
  letter-spacing:.01em;
  max-width:390px;
}
.footer-business-details{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 20px;
  margin-top:14px;
  font-size:.94rem;
  line-height:1.5;
}
.footer-business-item{
  display:inline-flex;
  align-items:center;
}
.footer-facebook{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:inherit;
  text-decoration:none;
  font-weight:600;
}
.footer-facebook span{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border:1px solid currentColor;
  border-radius:50%;
  font-family:Arial,sans-serif;
  font-style:normal;
  font-weight:700;
}
.footer-facebook:hover,
.footer-facebook:focus-visible{
  text-decoration:underline;
}
@media(max-width:760px){
  .footer-business-details{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }
  .footer-slogan-handwritten{
    max-width:300px;
  }
}


/* v1.6.4 — footer bedrijfsgegevens visueel verfijnd */
.footer-business-details{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 22px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
}
.footer-business-item{
  display:flex;
  align-items:flex-start;
  gap:8px;
  min-width:0;
}
.footer-business-item strong{
  flex:0 0 auto;
  color:#b7792c;
  font-weight:800;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.footer-business-item span{
  color:#e8e0d7;
  overflow-wrap:anywhere;
}
.footer-facebook{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff;
  font-weight:700;
  text-decoration:none;
}
.footer-facebook span{
  border-color:#b7792c;
  color:#b7792c;
}
.footer-facebook:hover,
.footer-facebook:focus-visible{
  color:#d7a15c;
}
.legal{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.10);
}
@media(max-width:1000px){
  .footer-business-details{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px){
  .footer-business-details{
    grid-template-columns:1fr;
    gap:9px;
  }
}


/* v1.6.5 — footer volgens goedgekeurd concept, zonder extra offerteknop */
.site-footer{
  background:#11100e;
  color:#fff;
  padding:30px 0 22px;
}
.footer-card{
  background:#fffaf2;
  color:#17130f;
  border-radius:22px;
  padding:36px 42px;
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:52px;
  align-items:center;
}
.footer-brand img{
  width:265px;
  max-height:250px;
  object-fit:contain;
}
.footer-copy{
  min-width:0;
}
.footer-slogan-handwritten{
  margin:0 0 12px;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-style:normal;
  font-weight:500;
  color:#a86628;
  font-size:clamp(2rem,3vw,3.2rem);
  line-height:1.12;
  letter-spacing:.01em;
  max-width:720px;
}
.footer-copy > p{
  margin:0 0 22px;
  font-size:1.04rem;
  color:#322d28;
}
.footer-contact-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px 0;
  align-items:center;
}
.footer-contact-row a,
.footer-contact-row > span{
  display:inline-flex;
  align-items:center;
  gap:9px;
  text-decoration:none;
  color:#1d1915;
  padding-right:20px;
  margin-right:20px;
  border-right:1px solid rgba(166,102,40,.35);
}
.footer-contact-row > :last-child{
  border-right:0;
  padding-right:0;
  margin-right:0;
}
.footer-contact-icon{
  color:#a86628;
  font-weight:800;
}

.footer-business-bar{
  margin-top:34px;
  padding:28px 0 26px;
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
}
.footer-business-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:0 24px;
  min-width:0;
  border-right:1px solid rgba(255,255,255,.14);
  color:#fff;
  text-decoration:none;
}
.footer-business-item:first-child{
  padding-left:8px;
}
.footer-business-item:last-child{
  border-right:0;
}
.footer-business-item > div{
  display:grid;
  gap:3px;
  min-width:0;
}
.footer-business-item strong{
  color:#b87930;
  font-size:.88rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.footer-business-item span:not(.footer-business-icon){
  color:#f0ebe5;
  overflow-wrap:anywhere;
}
.footer-business-icon{
  flex:0 0 32px;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border:1px solid #b87930;
  border-radius:50%;
  color:#b87930;
  font-weight:800;
  font-family:Arial,sans-serif;
}
.facebook-mark{
  font-size:1.15rem;
}
.footer-facebook:hover strong,
.footer-facebook:focus-visible strong{
  color:#d09a57;
}
.footer-workarea{
  grid-column:1/-1;
  border-right:0;
  padding:20px 8px 0;
  margin-top:20px;
  border-top:1px solid rgba(255,255,255,.08);
}
.legal{
  margin-top:20px;
  padding-top:0;
  border-top:0;
  color:#d7d0c8;
  font-size:.9rem;
}
.legal a{
  color:#d29449;
  text-decoration:none;
}
.legal a:hover,
.legal a:focus-visible{
  text-decoration:underline;
}

@media(max-width:1100px){
  .footer-card{
    grid-template-columns:220px minmax(0,1fr);
    gap:34px;
  }
  .footer-brand img{
    width:210px;
  }
  .footer-business-bar{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px 0;
  }
  .footer-business-item{
    border-right:0;
  }
  .footer-workarea{
    grid-column:1/-1;
  }
}

@media(max-width:700px){
  .footer-card{
    grid-template-columns:1fr;
    gap:24px;
    padding:28px 24px;
  }
  .footer-brand img{
    width:190px;
  }
  .footer-slogan-handwritten{
    font-size:2rem;
  }
  .footer-contact-row{
    display:grid;
    gap:10px;
  }
  .footer-contact-row a,
  .footer-contact-row > span{
    border-right:0;
    padding-right:0;
    margin-right:0;
  }
  .footer-business-bar{
    grid-template-columns:1fr;
    gap:18px;
    padding:24px 0;
  }
  .footer-business-item,
  .footer-business-item:first-child{
    padding:0 4px;
  }
  .footer-workarea{
    margin-top:0;
    padding-top:18px;
  }
}


/* v1.6.6 — gerichte correctie footer bedrijfsbalk */
.footer-business-bar{
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:start;
}
.footer-business-item{
  min-width:0;
  box-sizing:border-box;
}
.footer-business-item > div{
  min-width:0;
  width:100%;
}
.footer-business-item strong,
.footer-business-item span:not(.footer-business-icon){
  display:block;
  max-width:100%;
}
.footer-business-item span:not(.footer-business-icon){
  white-space:normal;
  word-break:normal;
  overflow-wrap:normal;
}
.footer-facebook{
  min-width:0;
}
.footer-facebook > div{
  min-width:0;
  width:auto;
}
.footer-facebook strong{
  white-space:nowrap;
}
.footer-facebook span:not(.footer-business-icon){
  white-space:nowrap;
  overflow:visible;
}
.footer-workarea{
  grid-column:1/-1;
}
@media(max-width:1100px){
  .footer-business-bar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .footer-facebook span:not(.footer-business-icon){
    white-space:normal;
  }
}
@media(max-width:700px){
  .footer-business-bar{
    grid-template-columns:1fr;
  }
}


/* v1.7 — footer volledig opnieuw opgebouwd in één vlak */
.site-footer{
  background:#11100e;
  color:#fff;
  padding:38px 0 24px;
}
.footer-unified{
  background:#fffaf2;
  color:#17130f;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.footer-main{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:48px;
  align-items:center;
  padding:38px 42px 30px;
}
.footer-brand img{
  width:250px;
  max-height:230px;
  object-fit:contain;
}
.footer-copy{
  min-width:0;
}
.footer-slogan-handwritten{
  margin:0 0 10px;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-style:normal;
  font-weight:500;
  color:#a86628;
  font-size:clamp(2rem,3vw,3.15rem);
  line-height:1.1;
  max-width:780px;
}
.footer-copy > p{
  margin:0 0 20px;
  font-size:1.03rem;
  color:#322d28;
}
.footer-contact-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px 0;
  align-items:center;
}
.footer-contact-row a,
.footer-contact-row > span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#1d1915;
  text-decoration:none;
  padding-right:18px;
  margin-right:18px;
  border-right:1px solid rgba(166,102,40,.32);
}
.footer-contact-row > :last-child{
  border-right:0;
  padding-right:0;
  margin-right:0;
}
.footer-contact-icon{
  color:#a86628;
  font-weight:800;
}

.footer-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  border-top:1px solid #eadfce;
  background:#f6efe5;
}
.footer-fact{
  display:grid;
  gap:5px;
  min-width:0;
  padding:20px 24px;
  border-right:1px solid #e4d7c6;
  border-bottom:1px solid #e4d7c6;
  color:#17130f;
  text-decoration:none;
}
.footer-fact:nth-child(3n){
  border-right:0;
}
.footer-fact-label{
  color:#a86628;
  font-weight:800;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.footer-fact-value{
  color:#2b251f;
  line-height:1.4;
  overflow-wrap:anywhere;
}
.footer-facebook:hover .footer-fact-value,
.footer-facebook:focus-visible .footer-fact-value{
  text-decoration:underline;
}

.footer-bottom{
  background:#171512;
  padding:16px 22px;
}
.footer-bottom .legal{
  margin:0;
  padding:0;
  border:0;
  color:#d9d2ca;
  font-size:.9rem;
}
.footer-bottom .legal a{
  color:#d29a4d;
  text-decoration:none;
}
.footer-bottom .legal a:hover,
.footer-bottom .legal a:focus-visible{
  text-decoration:underline;
}

@media(max-width:1000px){
  .footer-main{
    grid-template-columns:220px minmax(0,1fr);
    gap:30px;
    padding:30px;
  }
  .footer-brand img{
    width:205px;
  }
  .footer-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .footer-fact:nth-child(3n){
    border-right:1px solid #e4d7c6;
  }
  .footer-fact:nth-child(2n){
    border-right:0;
  }
}

@media(max-width:700px){
  .footer-main{
    grid-template-columns:1fr;
    gap:22px;
    padding:26px 22px;
  }
  .footer-brand img{
    width:185px;
  }
  .footer-slogan-handwritten{
    font-size:2rem;
  }
  .footer-contact-row{
    display:grid;
    gap:9px;
  }
  .footer-contact-row a,
  .footer-contact-row > span{
    border-right:0;
    padding-right:0;
    margin-right:0;
  }
  .footer-facts{
    grid-template-columns:1fr;
  }
  .footer-fact,
  .footer-fact:nth-child(2n),
  .footer-fact:nth-child(3n){
    border-right:0;
  }
}


/* v1.7.1 — eenvoudiger bedrijfsgegevens zonder extra icoontjes */
.footer-facts{
  grid-template-columns:1.15fr .8fr 1fr 1.3fr 1fr;
}
.footer-fact{
  padding:22px 28px;
}
.footer-fact-label{
  margin-bottom:6px;
  font-size:.85rem;
}
.footer-fact-value{
  font-size:1rem;
}
@media(max-width:1100px){
  .footer-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .footer-facts{
    grid-template-columns:1fr;
  }
}
