﻿
:root{
  --ocher:#E0A100;
  --ocher-warm:#F2B705;
  --petrol:#0E5C63;
  --petrol-deep:#093E43;
  --cream:#FAF6EE;
  --cream-2:#F1E8D6;
  --ink:#211E1A;
  --paper:#FFFDF8;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Roboto',sans-serif;font-weight:300;
  background:var(--cream);color:var(--ink);line-height:1.7;overflow-x:hidden;
}
/* papierkorrel + lichte vlekken */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
h1,h2,h3,h4,.hand{font-family:'Caveat',cursive;font-weight:700;line-height:.98;letter-spacing:.005em}
.scrawl{font-family:'Gloria Hallelujah',cursive}
a{color:inherit;text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 30px}
section{position:relative;z-index:2}
strong{font-weight:400}

/* ---- NAV ---- */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;padding:13px 30px;
  background:var(--cream);
}
/* handgetekende lijn onder de nav i.p.v. strakke border */
nav::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:17px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='8'%3E%3Cpath d='M0 4 Q60 1 120 4 T240 4 T360 5 T480 3 T600 4 T720 5 T840 3 T960 4 T1080 5 T1200 4' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='8'%3E%3Cpath d='M0 4 Q60 7 120 4 T240 4 T360 3 T480 5 T600 4 T720 3 T840 5 T960 4 T1080 3 T1200 4' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;
  background-size:1200px 8px,1200px 8px}
.brand{display:flex;align-items:center;gap:10px;font-family:'Caveat';font-weight:700;font-size:1.7rem}
.brand img{width:42px;height:42px;transform:rotate(-8deg)}
.brand b{color:var(--petrol)}
.navlinks{display:flex;gap:16px;align-items:center}
.navlinks a{
  font-family:'Caveat';font-weight:700;font-size:1.35rem;padding:2px 7px;transition:.18s;
  background-image:linear-gradient(var(--ocher),var(--ocher));background-repeat:no-repeat;
  background-position:0 82%;background-size:100% 38%;transform:rotate(-1.5deg);
}
.navlinks a:nth-child(even){transform:rotate(1.5deg)}
.navlinks a:hover{background-image:linear-gradient(var(--petrol),var(--petrol));color:var(--cream);background-size:100% 105%;transform:rotate(0)}
.navlinks a.cta{background-size:100% 105%;color:var(--ink)}
.navlinks a.cta:hover{background-image:linear-gradient(var(--petrol),var(--petrol));color:var(--cream)}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:8px}
.burger span{width:27px;height:3px;background:var(--ink);border-radius:3px}

/* ---- HERO ---- */
.hero{padding:150px 0 80px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}
.hero-doodle-label{font-family:'Gloria Hallelujah';font-size:.8rem;color:var(--petrol);transform:rotate(-2deg);display:inline-block;margin-bottom:10px}
.hero--petrol{background:var(--petrol);padding:110px 0 60px}
.hero--petrol .hero-doodle-label{color:#fff;margin-top:10px;margin-bottom:0}
.hero--petrol h1{color:var(--ocher-warm)}
.hero--petrol .lead{color:#fff}
.hero h1{font-size:clamp(3.4rem,8vw,6.6rem);font-weight:700}
.hero h1 .pop{color:var(--ocher);display:inline-block;transform:rotate(-2deg)}
.hero--petrol h1 .pop{color:var(--ocher-warm)}
.lead{font-size:1.25rem;margin:22px 0 6px;max-width:30ch;color:#403b32;line-height:1.6}
.lead-answer{margin-top:20px;margin-left:auto;text-align:right;max-width:38ch;color:var(--petrol);font-weight:400;text-wrap:balance}
.hero-art{position:relative;display:grid;place-items:center}
/* schetsmatige polaroid */
.polaroid{position:relative;width:min(310px,76vw);background:var(--paper);padding:14px 14px 0;
  transform:rotate(-3deg);box-shadow:7px 9px 18px rgba(33,30,26,.18);z-index:2;
  transition:transform .25s ease,box-shadow .25s ease}
.polaroid:has(.photo-link:hover){transform:rotate(-2deg) translateY(-4px) scale(1.01);
  box-shadow:10px 15px 28px rgba(33,30,26,.26)}
/* dubbele wiebelrand om de polaroid (zelfde taal als de doodle-boxen) */
.polaroid::before{content:"";position:absolute;inset:-3px;z-index:0;background-size:100% 100%;background-repeat:no-repeat}
.polaroid .photo-link{display:block;cursor:pointer}
.polaroid .photo{width:100%;aspect-ratio:1;object-fit:cover;display:block;filter:saturate(1.02) contrast(1.02);border:1.5px solid var(--ink);transition:filter .2s ease}
.polaroid .photo-link:hover .photo{filter:saturate(1.08) contrast(1.05) brightness(1.04)}
.polaroid .cap{font-family:'Caveat';font-weight:700;font-size:1.7rem;color:var(--ink);text-align:center;
  padding:12px 4px 12px;line-height:1}
/* okergele plakband bovenaan */
.polaroid::after{content:"";position:absolute;top:-13px;left:50%;width:104px;height:28px;
  transform:translateX(-50%) rotate(-4deg);background:rgba(224,161,0,.5);box-shadow:0 1px 3px rgba(0,0,0,.12);z-index:6}
.spark{position:absolute;font-family:'Gloria Hallelujah';color:var(--petrol);font-size:1rem;z-index:7}
.spark.s2{bottom:-42px;left:50%;transform:translateX(-50%) rotate(-3deg);color:var(--petrol);font-size:1.05rem;white-space:nowrap}
.spark.s2 .curl-arrow{height:64px;width:auto;display:inline-block;vertical-align:bottom;margin-right:6px;transform:translateY(-2px) rotate(-8deg)}

/* ---- algemene "doodle box": SVG wiebelrand i.p.v. border-radius ---- */
.doodle{position:relative;padding:32px 30px}
.doodle>*,.card>*,.contact-box>*,.polaroid>*{position:relative;z-index:2}
.polaroid>.spark{position:absolute;z-index:7}
.doodle::before,.card::before,.contact-box::before{content:"";position:absolute;inset:0;z-index:0;
  background-size:100% 100%;background-repeat:no-repeat}

/* ---- SECTIES ---- */
.block{padding:80px 0}
.block h2{font-size:clamp(2.6rem,6vw,4.2rem);margin-bottom:8px}
.block .sub{color:#4a463d;max-width:46ch;font-size:1.08rem;margin-bottom:46px}

/* OVER */
#over{background:var(--cream-2);position:relative;padding-top:52px}
#over h2{margin-bottom:44px}
#over::before,#over::after{content:"";position:absolute;left:0;right:0;height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 1 140 5 T280 5 T420 4 T560 6 T700 4 T840 6 T980 4 T1120 6 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 9 140 5 T280 5 T420 6 T560 4 T700 6 T840 4 T980 6 T1120 4 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;background-size:1200px 9px,1200px 9px}
#over::before{top:-8px}#over::after{bottom:-9px}
#presentatieplaten{background:var(--cream-2);position:relative;padding-top:52px}
#presentatieplaten::before,#presentatieplaten::after{content:"";position:absolute;left:0;right:0;height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 1 140 5 T280 5 T420 4 T560 6 T700 4 T840 6 T980 4 T1120 6 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 9 140 5 T280 5 T420 6 T560 4 T700 6 T840 4 T980 6 T1120 4 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;background-size:1200px 9px,1200px 9px}
#presentatieplaten::before{top:-8px}#presentatieplaten::after{bottom:-9px}
.over-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:flex-start}
.over-text p{margin-bottom:16px;font-size:1.1rem;max-width:475px}
.over-text--center{max-width:475px;margin-inline:auto}
.pull{font-family:'Caveat';font-weight:700;font-size:2rem;color:var(--petrol);line-height:1.05;
  transform:rotate(-1deg);margin:26px 0;padding-left:4px}
.pull::before{content:"\201C"}.pull::after{content:"\201D"}
.beliefs{transform:rotate(1.5deg)}
.beliefs h3{font-family:'Caveat';color:var(--ocher);font-size:2rem;margin-bottom:8px;transform:rotate(-2deg)}
.beliefs ul{list-style:none}
.beliefs li{padding:5px 0 5px 30px;position:relative;font-size:1.05rem}
.beliefs li::before{content:"✔";font-family:'Gloria Hallelujah';position:absolute;left:0;top:8px;color:var(--petrol);font-size:.95rem}
/* tape op de beliefs-doos */
.beliefs::after{content:"";position:absolute;top:-9px;left:50%;width:120px;height:28px;transform:translateX(-50%) rotate(-3deg);
  background:rgba(224,161,0,.5);box-shadow:0 1px 3px rgba(0,0,0,.12);z-index:5}

/* DIENSTEN — handgetekende kaarten, scheef, overlappend */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;padding-top:10px}
.card{position:relative;padding:34px 28px 30px}
.card:nth-child(1){transform:rotate(-2deg)}
.card:nth-child(2){transform:rotate(1.4deg) translateY(20px)}
.card:nth-child(3){transform:rotate(-1deg)}
.card:hover{transform:rotate(0) translateY(-6px);transition:.2s}
.card h3{font-size:2.1rem;margin-bottom:10px;color:var(--ink)}
.card-title{display:inline-block;padding:2px 10px;transition:.18s;
  background-image:linear-gradient(var(--ocher),var(--ocher));background-repeat:no-repeat;
  background-position:0 84%;background-size:100% 34%}
.card-title:hover{background-size:100% 108%}
.card p{color:#4a463d;font-size:1.02rem;margin-bottom:16px}
.tag{font-family:'Caveat';font-weight:600;font-size:1.15rem;color:var(--petrol);margin-right:14px;white-space:nowrap}

/* AANPAK — losse handgeschreven flow, geen nummering */
#proces{background:var(--petrol);color:var(--cream);position:relative;padding-top:52px}
#proces h2{margin-bottom:48px}
#proces::before,#proces::after{content:"";position:absolute;left:0;right:0;height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 1 140 5 T280 5 T420 4 T560 6 T700 4 T840 6 T980 4 T1120 6 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 9 140 5 T280 5 T420 6 T560 4 T700 6 T840 4 T980 6 T1120 4 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;background-size:1200px 9px,1200px 9px}
#proces::before{top:-8px}#proces::after{bottom:-8px}
.flow{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 0;justify-content:space-between}
.node{flex:1;min-width:170px;position:relative;padding:6px 14px}
.node h4{font-family:'Caveat';color:var(--ocher-warm);font-size:2.6rem;margin-bottom:2px}
.node:nth-child(1){transform:rotate(-1.5deg)}
.node:nth-child(3){transform:rotate(1.5deg)}
.node p{color:#fff;font-size:1rem}
/* CONTACT */
#contact{padding:90px 0 80px}
.contact-box{position:relative;padding:62px 40px;text-align:center}
.contact-box h2{font-size:clamp(3rem,7vw,5rem);margin-bottom:8px}
.contact-box .sub{font-size:1.15rem;max-width:42ch;margin:0 auto 28px;color:#403b32}
.mailbtn{font-family:'Caveat';font-weight:700;font-size:2rem;color:var(--ink);display:inline-block;padding:4px 14px;
  background-image:linear-gradient(var(--ocher),var(--ocher));background-repeat:no-repeat;background-position:0 80%;
  background-size:100% 42%;transition:.18s;transform:rotate(-1.5deg)}
.mailbtn:hover{background-size:100% 108%;transform:rotate(0)}
.contact-doodle{font-family:'Gloria Hallelujah';font-size:.85rem;color:var(--petrol);display:block;margin:18px 0 16px;transform:rotate(-1deg)}
.contact-text{margin:30px auto 0!important;max-width:none}

/* FOOTER */
footer{background:var(--petrol);color:var(--cream);padding:18px 0 14px;position:relative}
footer::before{content:"";position:absolute;top:-9px;left:0;right:0;height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 1 140 5 T280 5 T420 4 T560 6 T700 4 T840 6 T980 4 T1120 6 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='9'%3E%3Cpath d='M0 5 Q70 9 140 5 T280 5 T420 6 T560 4 T700 6 T840 4 T980 6 T1120 4 T1200 5' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;background-size:1200px 9px,1200px 9px}
.foot-grid{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
footer .wrap{max-width:none;margin:0;padding:0 30px}
.foot-brand{display:flex;align-items:center;gap:11px;font-family:'Caveat';font-weight:700;font-size:1.7rem}
.foot-brand img{width:44px;transform:rotate(-8deg)}
.foot-links{display:flex;gap:20px;flex-wrap:wrap;font-family:'Caveat';font-weight:600;font-size:1.3rem}
.foot-links a{opacity:.85;transition:.15s}.foot-links a:hover{opacity:1;color:var(--ocher-warm)}
.foot-links a.foot-top{opacity:1}
.foot-top{font-family:'Caveat';font-weight:700;font-size:1.5rem;color:#fff;opacity:1;display:inline-block;padding:4px 14px;
  background-image:linear-gradient(var(--ocher),var(--ocher));background-repeat:no-repeat;background-position:0 80%;
  background-size:100% 0;transition:.18s;transform:rotate(-1.5deg)}
.foot-links a.foot-top:hover{background-size:100% 108%;color:var(--ink);opacity:1;transform:rotate(0)}
.foot-bottom{margin-top:-6px;color:#fff;padding-left:55px;
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.85rem}

.reveal{opacity:0;transform:translateY(24px);transition:.7s cubic-bezier(.2,.7,.3,1)}
.reveal.in{opacity:1;transform:none}

@media(max-width:880px){
  .hero-grid,.over-grid{grid-template-columns:1fr}
  .hero-art{order:-1;margin-bottom:20px}
  .cards{grid-template-columns:1fr;gap:46px}
  .card:nth-child(2){transform:rotate(1deg) translateY(0)}
  .flow{flex-direction:column;gap:6px}
  .arrow{transform:rotate(92deg);padding:6px 0}
  .node{transform:none!important}
  .navlinks{position:fixed;top:64px;right:0;left:0;background:var(--cream);flex-direction:column;
    padding:20px 30px;transform:translateY(-160%);transition:.3s;align-items:flex-start;gap:16px}
  .navlinks::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:17px;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='8'%3E%3Cpath d='M0 4 Q60 1 120 4 T240 4 T360 5 T480 3 T600 4 T720 5 T840 3 T960 4 T1080 5 T1200 4' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 0 0,
              url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='8'%3E%3Cpath d='M0 4 Q60 7 120 4 T240 4 T360 3 T480 5 T600 4 T720 3 T840 5 T960 4 T1080 3 T1200 4' fill='none' stroke='%23211E1A' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x 60px 3px;background-size:1200px 8px,1200px 8px}
  .navlinks.open{transform:none}
  .navlinks a,.navlinks a:nth-child(even){transform:rotate(0)}
}
@media(max-width:560px){.contact-box{padding:46px 22px}}
