@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#111;--paper:#f4f4f1;--line:#c9c9c4;--muted:#787874}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.45 Manrope,Arial,sans-serif;cursor:none}.noise{position:fixed;inset:0;pointer-events:none;opacity:.04;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}#particles{position:fixed;inset:0;z-index:30;pointer-events:none;mix-blend-mode:multiply}#cursor{position:fixed;width:12px;height:12px;border-radius:50%;background:#111;z-index:40;pointer-events:none;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s;mix-blend-mode:difference}a{color:inherit;text-decoration:none}.page-section{min-height:100vh;padding:8vw}.kicker,.number,.meta{font:11px/1.2 'DM Mono',monospace;letter-spacing:.03em;text-transform:uppercase}.kicker{color:var(--muted);margin:0 0 16px}h2{font:500 clamp(3rem,8.3vw,9rem)/.89 'Playfair Display',serif;letter-spacing:-.065em;margin:0}#entry{position:fixed;inset:0;background:var(--paper);z-index:50;display:grid;place-items:center;align-content:center;cursor:none;transition:opacity .8s ease,visibility .8s}.entered #entry{opacity:0;visibility:hidden}.entry-label{position:absolute;top:30px;left:32px;font:11px 'DM Mono',monospace;text-transform:uppercase}.entry-label:before{content:'';display:inline-block;width:8px;height:8px;background:#111;border-radius:50%;margin-right:9px}.enter{position:absolute;bottom:30px;font:11px 'DM Mono',monospace;text-transform:uppercase}.enter span{margin-left:6px;font-size:16px}.entry-label,.enter{margin:0}#entry h1{font:600 clamp(4.8rem,15vw,15rem)/.8 Manrope,sans-serif;letter-spacing:-.12em;margin:0;transform:translateX(-.06em)}#nav{position:fixed;top:0;left:0;width:100%;padding:28px 32px;display:flex;justify-content:space-between;z-index:20;mix-blend-mode:multiply}.home-dot{width:20px;height:20px;background:#111;border-radius:50%;display:block}nav{display:flex;gap:28px;font:11px 'DM Mono',monospace;text-transform:uppercase}nav a{padding:3px 0;border-bottom:1px solid transparent}nav a:hover{border-color:#111}.hero{display:flex;flex-direction:column;justify-content:space-between;padding-top:20vh}.hero h2{font:600 clamp(5rem,17vw,17rem)/.75 Manrope,sans-serif;letter-spacing:-.13em;transform:translateX(-.07em)}.intro{font-size:clamp(18px,2vw,25px);max-width:600px;line-height:1.25;margin:45px 0 0}.scroll-note{font:11px 'DM Mono',monospace;text-transform:uppercase}.scroll-note span{font-size:20px;margin-left:8px}.projects{border-top:1px solid var(--line);min-height:auto;padding-top:10vw;padding-bottom:12vw}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;gap:25px;align-items:baseline;margin-bottom:10vw}.section-head p:last-child{margin:0;color:var(--muted);max-width:230px}.project-list{display:grid;gap:12px}.project-card{position:relative;display:grid;grid-template-columns:1fr 4fr 1.7fr auto;align-items:center;min-height:190px;padding:30px;background:#ddd center/cover;overflow:hidden;color:#fff;isolation:isolate}.project-card:before{content:'';position:absolute;inset:0;background:rgba(10,10,10,.53);z-index:-1;transition:background .4s}.project-card:hover:before{background:rgba(10,10,10,.14)}.project-card:hover .project-name{transform:translateX(12px)}.bridge{background-image:url('assets/media-047.jpg')}.level{background-image:url('assets/media-077.jpg')}.future{background:#1b1b1a}.project-name{font:500 clamp(2.2rem,5.4vw,6.2rem)/.9 'Playfair Display',serif;letter-spacing:-.07em;transition:transform .4s}.meta{line-height:1.55}.arrow{font-size:34px}.blink{animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.about-teaser{min-height:70vh;padding:0;background:#1b1b1a;color:var(--paper)}.about-teaser a{position:relative;display:block;height:100%;min-height:70vh;padding:8vw}.about-teaser h2{max-width:900px}.about-teaser p:not(.kicker){font-size:18px;margin:35px 0}.big-arrow{position:absolute;right:8vw;bottom:6vw;font-size:clamp(4rem,12vw,12rem);line-height:1}.contact{background:#dcdcd8;display:flex;flex-direction:column;justify-content:space-between}.contact h2{font-size:clamp(3.4rem,8vw,8.5rem)}.contact-links{display:grid;gap:9px;margin-top:8vw;max-width:620px}.contact-links a{font-size:clamp(18px,2vw,26px);border-bottom:1px solid #111;padding:10px 0;display:flex;justify-content:space-between}.copyright{font:11px 'DM Mono',monospace;text-transform:uppercase;margin:8vw 0 0}.detail,.resume{display:none;padding-top:130px}.detail:target,.resume:target{display:block}.detail:target~.resume,.resume:target~.detail{display:none}.back{font:11px 'DM Mono',monospace;text-transform:uppercase;display:inline-block;margin-bottom:12vw}.project-title{display:grid;grid-template-columns:1fr 2fr 1fr;gap:25px;margin-bottom:10vw}.project-title>p:last-child{margin:0;font-size:17px;line-height:1.35}.image-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.image-grid img{width:100%;min-height:300px;max-height:70vh;object-fit:cover;background:#ddd}.image-grid .wide{grid-column:span 2;max-height:none}.resume h2{margin-bottom:6vw}.cv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;max-width:1000px;border-top:1px solid #111;padding-top:20px}.cv-grid h3{font:500 13px 'DM Mono',monospace;text-transform:uppercase}.cv-grid p{font-size:18px;line-height:1.4;max-width:370px}.muted,.sub{color:var(--muted);font-size:13px!important}.skills{margin-top:13vw;border-top:1px solid #111;padding-top:20px}.skills p{font:clamp(21px,3vw,42px)/1.22 'Playfair Display',serif;max-width:1000px}.hobbies{margin-top:13vw}.hobby-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hobby-grid div{aspect-ratio:3/4;background:#171717;color:#f4f4f1;display:flex;flex-direction:column;justify-content:space-between;padding:18px;transition:background .3s}.hobby-grid div:hover{background:#555}.hobby-grid span,.hobby-grid em{font:11px 'DM Mono',monospace;font-style:normal;text-transform:uppercase}.hobby-grid strong{font:500 30px/.95 'Playfair Display',serif;letter-spacing:-.04em}
@media(max-width:700px){body{cursor:auto}#cursor,#particles{display:none}#nav{padding:20px}.home-dot{width:16px;height:16px}nav{gap:13px;font-size:9px}.page-section{padding:100px 20px 55px}.entry-label{left:20px;top:20px}.enter{bottom:20px}.section-head,.project-title{display:block}.section-head h2{margin:20px 0}.section-head p:last-child{margin-top:20px}.project-card{grid-template-columns:45px 1fr auto;min-height:140px;padding:22px}.project-card .meta{display:none}.project-name{font-size:clamp(2.5rem,12vw,4rem)}.about-teaser a{padding:55px 20px}.image-grid{grid-template-columns:1fr}.image-grid .wide{grid-column:auto}.image-grid img{min-height:220px}.cv-grid,.hobby-grid{grid-template-columns:1fr;gap:35px}.hobby-grid div{aspect-ratio:16/10}.detail,.resume{padding-top:100px}.project-title h2{margin:20px 0}.project-title>p:last-child{margin-top:25px}.hero{padding-top:30vh}.intro{margin-top:35px}.contact-links{margin-top:60px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
 .detail:target,.resume:target{position:relative;background:var(--paper);z-index:2}
