@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=IBM+Plex+Mono:wght@400;500;600&family=Inter:wght@400;500;600;700;800&display=swap');
:root{font-family:Inter,Arial,sans-serif;color:#101010;background:#fafaf8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper:#fafaf8;--ink:#101010;--purple:#8c3cff;--line:#d5d5d2;--muted:#555;--mono:'IBM Plex Mono',monospace;--head:'Barlow Condensed','Arial Narrow',Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:#dcbbff;color:#111}.site-header{height:78px;display:flex;align-items:center;padding:0 max(28px,calc((100vw - 1500px)/2));border-bottom:1px solid var(--line);background:rgba(250,250,248,.96);position:sticky;top:0;z-index:10;backdrop-filter:blur(16px)}.brand-link{padding-right:58px;border-right:1px solid var(--line);height:100%;display:flex;align-items:center}.brand{font:800 30px/1 var(--head);letter-spacing:-.045em}.brand-underscore{color:var(--purple)}.nav{display:flex;align-items:center;gap:24px;margin-left:34px;font:600 13px/1 var(--mono);letter-spacing:-.03em}.nav a:hover,.text-link:hover,.footer a:hover{color:var(--purple)}.nav-slash{color:var(--purple)}.status{display:flex;flex-direction:column;justify-content:center;gap:5px;font:500 10px var(--mono);margin-left:auto;border-left:1px solid var(--line);border-right:1px solid var(--line);height:100%;padding:0 30px}.status b{color:var(--purple);font-size:10px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:0 20px;font:700 14px/1 var(--head);letter-spacing:-.02em;text-transform:uppercase;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-black{background:#090909;color:#fff}.button svg,.purple-arrow{color:var(--purple)}.header-cta{margin:0 22px}.menu-toggle{display:none;border:0;background:none;padding:12px;cursor:pointer}.hero{min-height:585px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:76px minmax(0,1fr) minmax(0,1.15fr);max-width:1600px;margin:auto}.hero-rail{border-right:1px solid var(--line);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:75px}.rail-vertical{font:500 11px var(--mono);writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}.rail-years{margin-top:25px}.rail-accent{position:absolute;top:45px;left:50%;height:47px;border-left:2px dotted var(--purple)}.hero-copy{padding:44px 20px 48px clamp(34px,4.7vw,84px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:2}.section-index{font:600 13px var(--mono);letter-spacing:-.04em;color:var(--purple)}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--head);font-weight:800;letter-spacing:-.055em;text-transform:uppercase}h1{font-size:clamp(76px,7.1vw,112px);line-height:.84;margin:28px 0 26px;max-width:630px}h2{font-size:clamp(42px,4.1vw,60px);line-height:.92;margin-top:18px}.period{color:var(--ink)}.hero-copy p{font-size:16px;line-height:1.48;letter-spacing:-.025em;max-width:385px}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:37px}.text-link{display:inline-flex;align-items:center;gap:16px;font:700 17px var(--head);letter-spacing:-.025em}.hero-art{min-width:0;position:relative;overflow:hidden;min-height:585px}.hero-art:before{content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--paper) 0%,transparent 18%,transparent 84%,var(--paper) 100%);z-index:1;pointer-events:none}.hero-art img{position:absolute;width:110%;height:100%;object-fit:cover;object-position:center;filter:grayscale(.15);mix-blend-mode:multiply}.art-label{font:500 10px/1.65 var(--mono);letter-spacing:-.04em;position:absolute;z-index:2}.top-label{right:27px;top:32px}.bottom-label{right:28px;bottom:28px}.art-plus{position:absolute;z-index:2;bottom:88px;left:15%;color:#999}.page-section{max-width:1600px;margin:0 auto;padding:64px clamp(30px,6vw,96px) 72px;border-bottom:1px solid var(--line);position:relative}.page-section:before{content:'+';position:absolute;top:34px;left:22px;font:400 20px var(--mono);color:#aaa}.section-header{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:42px}.section-lead{font-size:16px;line-height:1.5;letter-spacing:-.026em;max-width:490px;margin-bottom:3px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.work-card{border:1px solid var(--line);min-width:0;background:#fbfbf9;transition:border-color .2s,transform .2s}.work-card:hover{border-color:var(--purple);transform:translateY(-3px)}.work-visual{height:225px;position:relative;overflow:hidden;background:#f0f0ed}.work-visual img{width:100%;height:100%;object-fit:cover;filter:grayscale(.2)}.work-number,.work-visual-label{position:absolute;font:500 10px var(--mono);background:#fafaf8dc;padding:5px 7px}.work-number{top:12px;left:12px}.work-visual-label{right:10px;top:12px;text-align:right}.work-card-body{padding:15px 18px 15px}.work-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.work-title-row h3{font:800 clamp(22px,2.05vw,29px)/.97 var(--head);letter-spacing:-.04em}.work-card-body p{font-size:13px;line-height:1.45;letter-spacing:-.02em;max-width:520px;margin-top:10px;min-height:38px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}.tags span{font:500 9px var(--mono);padding:6px 7px;border:1px solid #dfdfdc}.section-footnote{font:400 9px var(--mono);color:#888;letter-spacing:.02em;margin-top:15px}.experience-section{padding-bottom:64px}.logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.logo-cell{height:112px;display:flex;align-items:center;justify-content:center;padding:14px 12px;position:relative;text-align:center}.logo-cell:not(:nth-child(5n)):after{content:'';height:48px;position:absolute;right:0;top:calc(50% - 24px);border-right:1px solid var(--line)}.logo-cell:nth-child(-n+5){border-bottom:1px solid var(--line)}.logo-cell span{font:800 clamp(18px,2.2vw,31px)/1 var(--head);letter-spacing:-.045em;filter:grayscale(1)}.logo-akqa span{font-family:Georgia,serif;font-size:29px;font-weight:400;letter-spacing:-.09em}.logo-avast span,.logo-preqin span,.logo-hellyhansen span{font-family:Inter,Arial,sans-serif;font-size:clamp(14px,1.9vw,23px);font-weight:800}.logo-playstation span,.logo-rollsroyce span{font-size:clamp(15px,1.8vw,24px)}.logo-three span{font-family:Georgia,serif;font-style:italic;font-size:38px}.logo-dhl span{font-style:italic;letter-spacing:-.08em}.cv-band{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:24px clamp(30px,6vw,96px);background:#f3f3f0}.cv-band>div{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.cv-band strong{font:700 19px var(--head)}.cv-band span:not(.section-index){font:400 11px var(--mono);color:#555}.cv-notice{display:flex;align-items:center;gap:8px;white-space:nowrap}.contact-section{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;padding-top:65px;padding-bottom:80px}.contact-section h2{font-size:clamp(42px,4vw,60px)}.contact-action{padding-bottom:3px}.contact-action p{font-size:15px;line-height:1.48;letter-spacing:-.02em;max-width:330px;margin-bottom:24px}.contact-unset{font:500 11px var(--mono);color:#777;border:1px solid var(--line);display:inline-block;padding:12px}.footer{max-width:1600px;margin:auto;min-height:95px;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(30px,6vw,96px);gap:25px}.footer .brand{font-size:23px}.footer>span,.footer a{font:500 10px var(--mono);color:#666}.edge-marker{position:fixed;right:22px;top:110px;height:22px;border-left:2px solid var(--purple);pointer-events:none}.desktop-scroll-hint{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.sr-only:focus{width:auto;height:auto;clip:auto;top:80px;left:20px;z-index:20;background:white;padding:12px}
@media(max-width:1100px){.hero{grid-template-columns:50px 1fr 1fr}.hero-copy{padding-left:35px}h1{font-size:clamp(66px,7vw,90px)}.status{padding:0 15px}.nav{gap:14px;margin-left:18px}.brand-link{padding-right:25px}.work-visual{height:190px}}@media(max-width:760px){.site-header{height:65px;padding:0 20px}.brand-link{padding:0;border:0}.brand{font-size:29px}.nav{display:none;position:absolute;left:0;top:65px;right:0;margin:0;padding:26px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:23px}.nav.is-open{display:flex}.nav-slash{display:none}.nav a{font-size:18px}.status{display:none}.header-cta{margin-left:auto;margin-right:4px;min-height:38px;padding:0 12px;font-size:12px;gap:10px}.menu-toggle{display:block}.hero{grid-template-columns:35px 1fr;min-height:0}.hero-rail{grid-row:1 / span 2;gap:55px}.hero-copy{padding:53px 24px 36px;min-height:0}.hero-copy h1{font-size:clamp(65px,12vw,96px);margin:25px 0 24px}.hero-copy p{font-size:15px;max-width:500px}.hero-art{grid-column:2;min-height:365px}.hero-art img{width:100%;object-fit:cover;object-position:center 40%}.hero-actions{margin-top:28px;gap:24px}.page-section{padding:57px 24px 65px 54px}.page-section:before{left:16px;top:24px}.section-header{grid-template-columns:1fr;gap:22px;margin-bottom:28px}.section-lead{font-size:15px}.work-grid{grid-template-columns:1fr;gap:20px}.work-visual{height:250px}.experience-section{padding-bottom:55px}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-cell{height:85px;border-bottom:1px solid var(--line)}.logo-cell:not(:nth-child(5n)):after{display:none}.logo-cell:nth-child(odd):after{content:'';display:block;height:36px;position:absolute;right:0;top:calc(50% - 18px);border-right:1px solid var(--line)}.logo-cell:nth-last-child(-n+2){border-bottom:0}.logo-cell span{font-size:24px}.cv-band{padding:25px 25px 25px 54px;flex-direction:column;align-items:start;gap:12px}.contact-section{grid-template-columns:1fr;gap:30px}.footer{padding:25px 25px 35px 54px;flex-wrap:wrap;justify-content:initial;gap:18px 26px}.footer .brand{width:100%}.footer>span{font-size:9px}.edge-marker{right:12px}}@media(max-width:430px){.hero-copy h1{font-size:clamp(59px,13vw,74px)}.hero-copy{padding-left:18px;padding-right:15px}.hero-actions{gap:13px}.hero-actions .button{font-size:12px;padding:0 12px;gap:10px;min-height:43px}.text-link{font-size:14px;gap:5px}.hero-art{min-height:295px}.work-visual{height:190px}.page-section{padding-left:45px;padding-right:16px}.work-title-row h3{font-size:23px}.logo-cell span{font-size:20px}.contact-section h2{font-size:42px}.cv-band{padding-left:45px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Recruiter-first hero copy */
.hero-role{font:600 11px/1.45 var(--mono);letter-spacing:-.025em;margin-top:16px;max-width:420px}.hero-role span{color:var(--purple)}.hero-copy .hero-detail{font-size:14px;line-height:1.5;color:#454545;margin-top:11px;max-width:415px}.hero-copy h1{margin-top:17px;margin-bottom:20px}.hero-copy .hero-actions{margin-top:28px}@media(max-width:760px){.hero-role{font-size:10px;margin-top:15px}.hero-copy .hero-detail{font-size:13px}}

/* V3 / Selected work — device photography + native Swiss-brutalist typography */
.work-section{padding-top:88px;padding-bottom:104px}
.work-section .section-header{margin-bottom:48px}
.work-grid{column-gap:28px;row-gap:38px}
.work-card{background:transparent;border:1px solid var(--line);transition:border-color .2s ease,transform .2s ease;overflow:hidden}
.work-visual{height:auto;aspect-ratio:16/10;background:#f5f5f3;overflow:hidden;border-bottom:1px solid var(--line)}
.work-visual img{display:block;width:100%;height:100%;object-fit:cover;filter:none;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.work-card:hover .work-visual img{transform:scale(1.025)}
.work-card-body{padding:22px 24px 23px}
.work-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:21px;font:500 10px/1.2 var(--mono);letter-spacing:-.03em;color:#656565}
.work-meta .card-index{font:600 12px var(--mono);color:var(--purple)}
.work-title-row h3{font:800 clamp(26px,2.5vw,37px)/.96 var(--head);letter-spacing:-.052em;max-width:530px}
.work-title-row{align-items:start;gap:12px}
.work-title-row .purple-arrow{flex:none;margin-top:0}
.work-card-body p{font-size:15px;line-height:1.45;letter-spacing:-.025em;margin-top:12px;min-height:0;max-width:475px}
.work-card-body .tags{margin-top:23px;gap:7px}
.work-card-body .tags span{font:500 9px/1 var(--mono);letter-spacing:-.03em;padding:7px 8px;border-color:#d4d4d1}
.work-section .section-footnote{margin-top:24px}
@media(max-width:1100px){.work-visual{height:auto}}
@media(max-width:760px){.work-section{padding-top:63px;padding-bottom:72px}.work-grid{row-gap:22px}.work-card-body{padding:19px 19px 20px}.work-meta{margin-bottom:17px}.work-title-row h3{font-size:clamp(26px,6vw,36px)}.work-card-body p{font-size:14px}.work-visual{height:auto}}
@media(max-width:430px){.work-card-body{padding:15px 15px 18px}.work-title-row h3{font-size:27px}.work-meta{font-size:9px}.work-card-body .tags span{font-size:8px}}
