@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0e7b7e0b829e3eb9-s.0s6677u7501n5.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/daf789e4474d0d90-s.3w_oc3nqvqm6n.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9e9f04e3c37952ab-s.p.002ht2t_o636a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Anton Fallback;src:local(Arial);ascent-override:129.7%;descent-override:36.29%;line-gap-override:0.0%;size-adjust:90.69%}.anton_8e109420-module__UvatNG__className{font-family:Anton,Anton Fallback;font-style:normal;font-weight:400}.anton_8e109420-module__UvatNG__variable{--font-kop:"Anton", "Anton Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_f2269766-module__tRawia__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_f2269766-module__tRawia__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2f4d136c-module__V7JX6a__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2f4d136c-module__V7JX6a__variable{--font-tekst:"Inter", "Inter Fallback"}
:root{--paper:#e7e7e0;--ink:#15150f;--ink-soft:#55564d;--line:#c7c7bc;--accent-inkt:0%;--breed:1280px;--goot:1.5rem;--schermsprong:1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#17181b;--ink:#edebe4;--ink-soft:#a6a9ae;--line:#333539;--accent-inkt:35%}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-tekst), system-ui, sans-serif;-webkit-font-smoothing:antialiased;margin:0}.hero{min-height:100svh;max-width:var(--breed);padding:5rem var(--goot) 4rem;grid-template-columns:auto minmax(0,480px);place-content:center start;align-items:center;gap:3rem;margin:0 auto;display:grid;position:relative}.hero-verder{color:var(--ink-soft);padding:.75rem;position:absolute;bottom:1.5rem;left:50%;translate:-50%}.hero-verder svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem;display:block}.hero-eyebrow{font-family:var(--font-mono), monospace;letter-spacing:.04em;color:var(--ink-soft);align-items:center;gap:.5rem;margin:0 0 1.75rem;font-size:.8rem;display:flex}.hero-eyebrow:before{content:"";background:var(--ink);border-radius:50%;width:7px;height:7px}.hero-title{font-family:var(--font-kop), sans-serif;text-transform:uppercase;letter-spacing:.005em;max-width:17ch;margin:0 0 1.5rem;font-size:clamp(2.4rem,5.4vw,4.2rem);font-weight:400;line-height:1.02}.hero-sub{color:var(--ink-soft);max-width:46ch;margin:0 0 1.25rem;font-size:1.05rem;line-height:1.6}.modulekaart{color:var(--ink-soft)}.modulekaart svg{width:100%;height:auto;display:block}.hero-portrait{aspect-ratio:1;border:1px dashed var(--line);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}.hero-portrait img{object-fit:cover;width:100%;height:100%}.project{max-width:min(1700px,94vw);min-height:100svh;padding:3.5rem var(--goot);grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:center;gap:4rem;margin:0 auto;display:grid}.project:nth-child(2n){grid-template-columns:auto minmax(0,1fr)}.project:nth-child(2n) .project-visual{order:2}.project:nth-child(2n) .project-text{order:1}.shot{object-fit:contain;filter:drop-shadow(0 12px 14px #00000057);border-radius:6px;width:auto;max-width:100%;height:auto;max-height:78svh;display:block}.shot-placeholder{aspect-ratio:4/3;border:1px dashed var(--line);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;display:flex}.placeholder-dot{background:color-mix(in srgb, var(--ink) var(--accent-inkt), var(--accent));border-radius:50%;width:8px;height:8px}.placeholder-label{font-family:var(--font-mono), monospace;color:var(--ink-soft);font-size:.7rem}.project-naam{font-family:var(--font-kop), sans-serif;text-transform:uppercase;letter-spacing:.005em;align-items:center;gap:.6rem;margin:0 0 .4rem;font-size:1.9rem;font-weight:400;display:flex}.naam-dot{background:var(--dot);border-radius:50%;flex-shrink:0;width:10px;height:10px}.project-rol{color:var(--ink-soft);margin:0 0 .9rem;font-size:.95rem}.project-text{max-width:42ch}.project-omschrijving{white-space:pre-line;margin:0 0 1.1rem;font-size:1rem;line-height:1.55}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem;display:flex}.project-tags span,.loopbaan-skills span{font-family:var(--font-mono), monospace;color:var(--ink-soft);border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));border-radius:3px;padding:.2rem .5rem;font-size:.75rem}.slot{align-content:center;min-height:100svh;display:grid}.slot>*{width:100%}.loopbaan{max-width:var(--breed);padding:4.5rem var(--goot) 1.5rem;margin:0 auto}.loopbaan-kop{font-family:var(--font-kop), sans-serif;text-transform:uppercase;letter-spacing:.005em;margin:0 0 2rem;font-size:1.6rem;font-weight:400}.loopbaan-stap{border-top:1px solid var(--line);grid-template-columns:120px 1fr;gap:2.5rem;padding:1.6rem 0;display:grid}.loopbaan-label{font-family:var(--font-mono), monospace;letter-spacing:.04em;color:var(--ink-soft);margin:0;font-size:.8rem}.loopbaan-tekst{margin:0;font-size:1rem;line-height:1.55}.loopbaan-software{margin-top:1.5rem}.loopbaan-skills{--accent:var(--line);flex-wrap:wrap;gap:.5rem;display:flex}.loopbaan-klanten{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.9rem 1rem;margin:1rem 0 0;display:flex}.klant-logo{height:30px;-webkit-mask:var(--logo) center / contain no-repeat;-webkit-mask:var(--logo) center / contain no-repeat;mask:var(--logo) center / contain no-repeat;background:currentColor;display:block}.klant-logo[data-merk=videoland]{height:21px}.klant-logo[data-merk=netflix],.klant-logo[data-merk=nike],.klant-logo[data-merk=asics],.klant-logo[data-merk=amstel]{height:18px}.klant-logo[data-merk=peugeot]{height:14px}.klant-logo[data-merk=heineken],.klant-logo[data-merk=ikea]{height:26px}.klant-logo[data-merk=bolcom]{height:38px}.klant-naam{font-family:var(--font-kop), sans-serif;text-transform:uppercase;letter-spacing:.01em;font-size:1.2rem;font-weight:400;line-height:1}.klant-naam[data-merk=bavaria]{text-transform:none;letter-spacing:0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:700}.contact{max-width:var(--breed);padding:4rem var(--goot) 1.5rem;margin:0 auto}.contact-line{font-size:1.6rem;font-family:var(--font-kop), sans-serif;text-transform:uppercase;margin:0 0 .8rem}.contact-naam{font-family:var(--font-mono), monospace;color:var(--ink-soft);margin:0 0 .4rem;font-size:.85rem}.contact-links{flex-direction:column;align-items:start;gap:.4rem;display:flex}.contact-links a{font-family:var(--font-mono), monospace;color:var(--ink-soft);font-size:.85rem;text-decoration:none}@keyframes krimpen{to{transform:scale(.88)}}@keyframes opkomen{0%{transform:translateY(12vh)}}@keyframes opkomen-klein{0%{transform:translateY(80px)}}@keyframes vervagen{to{opacity:0;visibility:hidden}}@supports (animation-timeline:scroll()){.hero-verder{animation:linear both vervagen;animation-timeline:scroll(root);animation-range:0 15vh}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.hero{transform-origin:top;animation:linear both krimpen;animation-timeline:view();animation-range:exit}.project{animation:linear both opkomen;animation-timeline:view();animation-range:entry}.loopbaan-stap,.contact{animation:linear both opkomen-klein;animation-timeline:view();animation-range:entry}}}@media (prefers-reduced-motion:reduce){:root{--schermsprong:0}}@media (max-width:1000px){:root{--goot:1.25rem;--schermsprong:0}.hero,.project{min-height:0}.hero{padding:4rem var(--goot) 2.5rem;grid-template-columns:1fr}.hero-verder{display:none}.hero-portrait{order:-1;max-width:220px;margin:0 auto}.project,.project:nth-child(2n){grid-template-columns:1fr;max-width:100%}.project-text{max-width:46ch}.modulekaart{order:-1;max-width:320px;margin:0 auto}.project-visual,.project:nth-child(2n) .project-visual{order:1}.project-text,.project:nth-child(2n) .project-text{order:2}.loopbaan{padding:3.5rem var(--goot) 1rem}.loopbaan-stap{grid-template-columns:1fr;gap:.6rem}}
