:root{
    --black:#111111;
    --ink:#3c3c3c;
    --silver:#b0b0b0;
    --offwhite:#f5f3ef;
    --white:#ffffff;
    --line:rgba(60,60,60,0.16);
    --display:'Cormorant Garamond', serif;
    --sans:'Work Sans', sans-serif;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} *{animation:none !important; transition:none !important;} }

  body{margin:0; background:var(--black); color:var(--white); font-family:var(--sans); font-weight:300; line-height:1.6;}
  a{color:inherit;}
  :focus-visible{outline:1px solid var(--white); outline-offset:4px;}
  .wrap{max-width:1280px; margin:0 auto; padding:0 40px;}

  /* ---------- NAV (interne pagina) ---------- */
  .nav{padding:30px 40px;}
  .nav-inner{display:flex; justify-content:space-between; align-items:center; max-width:1280px; margin:0 auto;}
  .nav-logo img{height:86px; width:auto; display:block;}
  .nav-toggle{display:flex; align-items:center; justify-content:center; width:44px; height:44px; background:none; border:1px solid var(--white); border-radius:1px; cursor:pointer; padding:0; transition:opacity .2s ease;}
  .nav-toggle:hover{opacity:0.7;}
  .nav-toggle .bars{position:relative; width:20px; height:13px; display:block;}
  .nav-toggle .bars span{position:absolute; left:0; width:100%; height:1px; background:var(--white); transition:transform .25s ease, opacity .2s ease;}
  .nav-toggle .bars span:nth-child(1){top:0;}
  .nav-toggle .bars span:nth-child(2){top:6px;}
  .nav-toggle .bars span:nth-child(3){top:12px;}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(1){transform:translateY(6px) rotate(45deg);}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(2){opacity:0;}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

  .nav-links{position:fixed; inset:0 0 0 auto; width:320px; max-width:82%; background:var(--black); display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:30px; padding:60px 46px; list-style:none; margin:0; transform:translateX(100%); transition:transform .35s ease; z-index:60;}
  .nav-links.open{transform:translateX(0);}
  .nav-links a{font-size:0.95rem; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; color:var(--white); opacity:0.85; transition:opacity .2s ease;}
  .nav-links a:hover{opacity:1;}
  .nav-links .nav-lang{margin-top:14px; padding-top:14px; border-top:1px solid rgba(255,255,255,0.2);}
  .nav-links .nav-lang a{font-size:0.8rem; opacity:0.6;}
  .nav-links .nav-lang a:hover{opacity:1;}
  .nav-links a.active{opacity:1; border-bottom:1px solid var(--white); padding-bottom:2px;}

  .nav-overlay{position:fixed; inset:0; background:rgba(17,17,17,0.4); opacity:0; visibility:hidden; transition:opacity .3s ease; z-index:55;}
  .nav-overlay.open{opacity:1; visibility:visible;}

  /* ---------- INTERNE PAGINA'S ---------- */
  .page-header{padding-top:56px; padding-bottom:60px; border-bottom:1px solid rgba(255,255,255,0.14);}
  .page-eyebrow{font-size:0.76rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--silver); margin:0 0 18px;}
  .page-header h1{font-family:var(--display); font-style:italic; font-weight:400; font-size:clamp(1.9rem,3.6vw,3.05rem); margin:0; line-height:1.1;}
  .page-intro{font-size:1.05rem; max-width:56ch; margin:26px 0 0; color:var(--ink);}
  .page-content{padding-top:72px; padding-bottom:140px;}
  .page-content h2{font-family:var(--display); font-style:italic; font-weight:400; font-size:1.7rem; margin:0 0 30px;}
  .page-content p{margin:0 0 20px; max-width:64ch;}
  .page-block{margin-bottom:70px; padding-bottom:70px; border-bottom:1px solid rgba(255,255,255,0.14);}
  .page-block:last-child{margin-bottom:0; padding-bottom:0; border-bottom:none;}

/* ---------- RECENT WERK: vierkant grid dat vanzelf meegroeit ---------- */
  .werk-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:6px;}
  .werk-item{position:relative; display:block; overflow:hidden; text-decoration:none; color:inherit;}
  .werk-item.reveal{transition-duration:.6s;}
  .werk-item.reveal:nth-child(3n+2){transition-delay:.08s;}
  .werk-item.reveal:nth-child(3n+3){transition-delay:.16s;}
  .werk-photo{aspect-ratio:1; background:repeating-linear-gradient(160deg,#050505 0 4px,#2b2b2b 4px 9px); filter:grayscale(1); transition:filter .5s ease;}
.werk-item:hover .werk-photo, .werk-item:focus-visible .werk-photo{filter:grayscale(0);}
.werk-photo--identity-pieces{background-image:url('Afbeeldingen/identity-pieces.jpg'); background-size:cover; background-position:center;}
.werk-photo--vlag-iii{background-image:url('Afbeeldingen/vlag-iii.jpg'); background-size:cover; background-position:center;}
.werk-photo--kunstproject-armazoen{background-image:url('Afbeeldingen/kunstproject-armazoen.jpg'); background-size:cover; background-position:center;}
.werk-photo--heinde-en-ver{background-image:url('Afbeeldingen/heinde-en-ver.jpg'); background-size:cover; background-position:center;}
.werk-photo--ode{background-image:url('Afbeeldingen/ode.jpg'); background-size:cover; background-position:center;}
.werk-photo--buurtman-een-residu{background-image:url('Afbeeldingen/buurtman-een-residu.jpg'); background-size:cover; background-position:center;}
.werk-photo--buurtman-duet{background-image:url('Afbeeldingen/buurtman-duet.jpg'); background-size:cover; background-position:center;}
.werk-photo--sleeping-woke-beauty{background-image:url('Afbeeldingen/sleeping-woke-beauty.jpg'); background-size:cover; background-position:center;}
.werk-photo--vlag-ii{background-image:url('Afbeeldingen/vlag-ii.jpg'); background-size:cover; background-position:center;}
.werk-photo--last-man-standing{background-image:url('Afbeeldingen/last-man-standing.jpg'); background-size:cover; background-position:center;}
.werk-photo--dentro{background-image:url('Afbeeldingen/dentro.jpg'); background-size:cover; background-position:center;}
.werk-photo--vlag-i{background-image:url('Afbeeldingen/vlag-i.jpg'); background-size:cover; background-position:center;}
.werk-photo--whetted{background-image:url('Afbeeldingen/whetted.jpg'); background-size:cover; background-position:center;}
.werk-photo--cope{background-image:url('Afbeeldingen/cope.jpg'); background-size:cover; background-position:center;}
.werk-photo--phase{background-image:url('Afbeeldingen/phase.jpg'); background-size:cover; background-position:center;}
.werk-photo--these-remaining-thoughts{background-image:url('Afbeeldingen/these-remaining-thoughts.jpg'); background-size:cover; background-position:center;}
.werk-photo--wedge{background-image:url('Afbeeldingen/wedge.jpg'); background-size:cover; background-position:center;}
.werk-photo--brave{background-image:url('Afbeeldingen/brave.jpg'); background-size:cover; background-position:center;}
.werk-photo--boost{background-image:url('Afbeeldingen/boost.jpg'); background-size:cover; background-position:center;}
.werk-photo--meanwhile-on-the-other-side{background-image:url('Afbeeldingen/meanwhile-on-the-other-side.jpg'); background-size:cover; background-position:center;}
.werk-photo--color{filter:none; background:linear-gradient(135deg, rgba(180,60,40,0.45), rgba(40,70,90,0.4)), repeating-linear-gradient(160deg,#050505 0 4px,#2b2b2b 4px 9px);}
  .werk-photo--video{display:flex; align-items:center; justify-content:center;}
  .werk-play{position:relative; z-index:2; width:48px; height:48px; border-radius:50%; border:1px solid rgba(255,255,255,0.5); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:1rem;}

  .werk-caption{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:20px; text-align:center; background:linear-gradient(180deg, rgba(17,17,17,0.2), rgba(17,17,17,0.55)); opacity:0; transition:opacity .3s ease;}
.werk-item:hover .werk-caption, .werk-item:focus-visible .werk-caption{opacity:1;}
.werk-title{font-family:var(--display); font-style:italic; font-size:1.3rem; color:var(--white); display:block;}

  @media (max-width:900px){.werk-grid{grid-template-columns:repeat(2, 1fr);}}
  @media (max-width:560px){.werk-grid{grid-template-columns:1fr;}}
  @media (max-width:820px){.werk-item .werk-caption{opacity:1;}}

  /* ---------- ARCHIEF: compacte tekstlijst in kolommen ---------- */
  .archief-list{list-style:none; margin:26px 0 0; padding:0; column-count:3; column-gap:40px;}
  .archief-list li{break-inside:avoid; margin-bottom:16px;}
  .archief-list a{text-decoration:none; font-size:0.92rem; color:var(--white); border-bottom:1px solid transparent; padding-bottom:1px; transition:border-color .2s ease;}
  .archief-list a:hover{border-color:var(--white);}

  @media (max-width:820px){.archief-list{column-count:2;}}
  @media (max-width:480px){.archief-list{column-count:1;}}

  footer{background:var(--black); border-top:1px solid rgba(255,255,255,0.14); padding:40px 0;}
  .footer-inner{display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:16px; font-size:0.78rem; letter-spacing:0.03em;}
  footer a{text-decoration:none; border-bottom:1px solid transparent;}
  footer a:hover{border-color:var(--white);}
  .footer-links{display:flex; flex-wrap:wrap; gap:22px;}

  .reveal{opacity:0; transform:translateY(14px); transition:opacity .8s ease, transform .8s ease;}
  .reveal.in{opacity:1; transform:translateY(0);}

@media (max-width:600px){
  .nav-logo{left:20px;}
  .nav-logo img{height:auto; width:46vw; max-width:220px;}
}