:root{--paper:#f6f6f0;--ink:#20211e;--blue:#2447ff;--muted:#6e706a;--line:#d9dbd2;--display:"Manrope",Arial,sans-serif;--body:"DM Sans",Arial,sans-serif;--serif:"Playfair Display",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:var(--blue);color:#fff}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--display)}img{max-width:100%;display:block}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:12px 20px;position:fixed;top:-70px;left:20px}.skip-link:focus{top:10px}.serif{font-family:var(--serif);letter-spacing:-.055em;font-style:italic;font-weight:500}.eyebrow{letter-spacing:.09em;font-size:12px;font-weight:600;line-height:1.5}.section-pad{padding:110px 5.1vw;scroll-margin-top:20px}.header{background:var(--paper);border-bottom:1px solid var(--line);align-items:center;gap:48px;height:100px;padding:0 5.1vw;display:flex}.wordmark{font-family:var(--display);letter-spacing:-.085em;font-size:45px;font-weight:800;line-height:1}.wordmark-dot{color:var(--blue)}.header-note{letter-spacing:.045em;font-size:10px;font-weight:600;line-height:1.35}.navigation{align-items:center;gap:35px;margin-left:auto;font-size:14px;display:flex}.navigation>a{position:relative}.navigation>a:not(.nav-contact):after{content:"";background:var(--blue);transform-origin:0;height:1px;transition:transform .2s;position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.navigation>a:hover:after{transform:scaleX(1)}.nav-contact{border:1px solid var(--ink);border-radius:28px;align-items:center;gap:25px;padding:12px 20px;transition:background .2s,color .2s;display:flex}.nav-contact:hover{background:var(--blue);border-color:var(--blue);color:#fff}.nav-contact span{color:var(--blue);font-size:24px;line-height:1}.nav-contact:hover span{color:#fff}.menu-button{background:0 0;display:none}.hero{padding:32px 5.1vw 0;position:relative;overflow:hidden}.hero-top{justify-content:space-between;align-items:center;display:flex}.location{letter-spacing:.07em;font-size:12px;font-weight:600}.time{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:20px}.hero-name{margin-top:54px;position:relative}.hero-name h1{font-family:var(--display);letter-spacing:-.072em;font-size:clamp(90px,14.7vw,250px);font-weight:800;line-height:.95;position:relative}.hero-name h1>span{display:block}.hero-name .surname{color:var(--blue);align-items:center;gap:3.9vw;margin-top:12px;display:flex}.hero-asterisk{letter-spacing:0;font-size:.86em;font-weight:400;line-height:1;animation:45s linear infinite turn;display:inline-block}.hero-sticker{letter-spacing:.07em;background:#ddf166;flex-direction:column;justify-content:center;width:171px;height:141px;padding:21px;font-size:13px;font-weight:650;line-height:1.65;display:flex;position:absolute;bottom:3.5%;right:1%;transform:rotate(-9deg);box-shadow:4px 5px #20211e26}.sticker-plus{font-size:35px;line-height:1;position:absolute;bottom:7px;right:16px}.hero-bottom{grid-template-columns:1fr 1.35fr 1fr;align-items:end;gap:35px;margin:58px 0 54px;display:grid}.intro-label{letter-spacing:.025em;align-items:center;gap:22px;font-size:12px;font-weight:600;display:flex}.intro-label a{text-underline-offset:3px;text-decoration:underline}.tiny-cross{font-size:38px;font-weight:400;line-height:1}.hero-bottom p{letter-spacing:-.025em;font-size:20px;line-height:1.4}.hero-bottom p>span{color:var(--muted)}.explore{letter-spacing:.05em;justify-self:end;align-items:center;gap:25px;font-size:11px;font-weight:600;display:flex}.explore-circle{border:1px solid var(--line);border-radius:50%;place-items:center;width:45px;height:45px;transition:background .2s,color .2s;display:grid}.explore:hover .explore-circle{background:var(--blue);color:#fff;border-color:var(--blue)}.hero-rule{border-top:1px solid var(--line);letter-spacing:.09em;color:var(--muted);justify-content:space-between;padding:18px 0;font-size:10px;display:flex}.marquee{background:var(--blue);color:#fff;padding:20px 0;overflow:hidden}.marquee>div{width:max-content;animation:40s linear infinite marquee;display:flex}.marquee span{letter-spacing:.05em;white-space:nowrap;font-size:17px;font-weight:500}.marquee b{margin:0 40px;font-size:23px;font-weight:400}.section-heading{grid-template-columns:1fr 1.35fr 1fr;align-items:end;gap:35px;margin-bottom:56px;display:grid}.section-heading>.eyebrow{align-self:start;padding-top:10px}.section-heading h2,.about h2{letter-spacing:-.06em;font-size:clamp(50px,5.8vw,90px);font-weight:650;line-height:1}.section-heading h2 .serif{color:var(--blue)}.section-heading>p{color:var(--muted);justify-self:end;padding-bottom:5px;font-size:15px;line-height:1.6}.project-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.project-card{text-align:left;border:1px solid var(--line);background:0 0;flex-direction:column;min-width:0;padding:28px;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.project-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #20211e1a}.project-card.joyne{background:var(--blue);color:#fff;border-color:var(--blue)}.project-top{letter-spacing:.07em;justify-content:space-between;gap:14px;font-size:10px;display:flex}.project-art{flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:235px;padding:30px 0;display:flex}.project-logotype{font-family:var(--display);letter-spacing:-.09em;font-size:104px;font-weight:750;line-height:1.1;position:relative}.project-logotype>span{letter-spacing:0;font-size:17px;position:absolute;top:20px;right:-17px}.joyne-path{letter-spacing:.03em;color:#e4e8ff;gap:22px;font-size:12px;display:flex}.joyne-path span+span:before{content:"·";margin-right:22px}.project-bottom{border-top:1px solid #ffffff42;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;display:flex}.project-bottom h3{letter-spacing:-.04em;font-size:21px;font-weight:650}.project-bottom p{opacity:.8;max-width:310px;margin-top:6px;font-size:14px;line-height:1.5}.project-open{border:1px solid;border-radius:50%;flex-shrink:0;place-items:center;width:43px;height:43px;transition:transform .3s;display:grid}.project-card:hover .project-open{transform:rotate(90deg)}.project-stack{flex-wrap:wrap;gap:6px;margin-top:22px;font-size:10px;display:flex}.project-stack span{border:1px solid #ffffff45;border-radius:20px;padding:4px 11px}.stockflow{color:#f0f5ec;background:#202b26;border-color:#202b26}.stockflow-logotype{font-size:52px;font-family:var(--display);letter-spacing:-.065em;align-items:center;gap:18px;font-weight:650;display:flex}.stock-bars{align-items:flex-end;gap:5px;height:47px;display:flex}.stock-bars i{background:#d5ed9a;width:10px;height:20px}.stock-bars i:nth-child(2){height:35px}.stock-bars i:nth-child(3){height:27px}.stock-bars i:nth-child(4){height:47px}.code-line{color:#afc3b6;font-family:monospace;font-size:12px}.project-card.goaudit{color:var(--ink);background:#e8e9e0;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:0 42px;display:grid}.goaudit .project-top{grid-column:1/-1}.goaudit .project-art{grid-row:2/4;align-items:flex-start;min-height:190px;padding:44px 10px}.goaudit .project-bottom{border-top:0}.goaudit .project-stack{align-self:start;margin-top:10px}.goaudit .project-stack span{border-color:#c3c6b8}.goaudit-logotype{font-family:var(--display);letter-spacing:-.075em;gap:23px;font-size:66px;font-weight:700;display:flex}.goaudit-logotype>span{color:var(--blue);font-size:74px;font-weight:400;line-height:1.4}.audit-line{letter-spacing:.07em;font-size:10px}.archive{margin-top:85px}.archive-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.archive-heading h3{letter-spacing:-.04em;margin-top:10px;font-size:32px;font-weight:600}.archive-heading h3>span{font-family:var(--serif);color:var(--muted);font-size:27px;font-style:italic}.text-link{border-bottom:1px solid var(--ink);white-space:nowrap;align-items:center;gap:10px;padding-bottom:5px;font-size:14px;display:flex}.archive-toolbar{justify-content:space-between;align-items:center;gap:20px;margin:30px 0 14px;display:flex}.filters{flex-wrap:wrap;gap:7px;display:flex}.filters button{border:1px solid var(--line);background:0 0;border-radius:25px;padding:6px 16px;font-size:13px;transition:background .2s}.filters button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.filters button:hover:not(.active){background:#e3e5dc}.archive-status{color:var(--muted);white-space:nowrap;font-size:11px}.repository{border-top:1px solid var(--line);grid-template-columns:45px 1fr 105px 130px;align-items:center;gap:22px;padding:24px 0;transition:background .2s;display:grid}.repository:last-child{border-bottom:1px solid var(--line)}.repository:hover{background:#eeefe8}.repo-number{color:var(--muted);font-family:monospace;font-size:12px}.repo-copy h4{letter-spacing:-.02em;font-size:20px;font-weight:550}.repo-copy h4 a:hover{color:var(--blue)}.repo-copy p{color:var(--muted);margin-top:6px;font-size:13px}.repo-language{color:var(--muted);font-size:12px}.repo-links{justify-content:flex-end;align-items:center;gap:22px;font-size:12px;display:flex}.repo-links a:hover{color:var(--blue)}.about{background:var(--ink);color:var(--paper);grid-template-columns:1fr 1.5fr;gap:9vw;display:grid}.about-left h2{margin-top:30px}.about-left .serif{color:#d8ed87}.about-monogram{font-family:var(--display);letter-spacing:-.1em;color:#d8ed87;width:max-content;margin-top:80px;font-size:220px;font-weight:800;line-height:1.05;position:relative}.about-monogram span{color:var(--paper);letter-spacing:0;font-size:80px;position:absolute;bottom:14px;right:-90px}.monogram-caption{color:#a6a89d;letter-spacing:.08em;margin-top:15px;font-size:10px;display:block}.about-lead{letter-spacing:-.04em;margin-bottom:25px;font-size:29px;line-height:1.35}.about-right>p:not(.about-lead){color:#b8bab0;margin:18px 0;font-size:16px;line-height:1.8}.experience-row{border-top:1px solid #4a4c43;border-bottom:1px solid #4a4c43;grid-template-columns:120px 1fr;gap:15px;margin:36px 0;padding:25px 0;display:grid}.experience-row h3{letter-spacing:-.035em;margin-bottom:5px;font-size:20px;font-weight:500}.experience-row a{color:#b8bab0;font-size:14px}.experience-row a:hover{color:#d8ed87}.skill-list>div{grid-template-columns:120px 1fr;gap:15px;margin:16px 0;display:grid}.skill-list>div>span{color:#b8bab0;font-size:13px}.skill-list p{font-size:13px;line-height:1.7}.education{border-top:1px solid #4a4c43;margin-top:35px;padding-top:24px}.education>p{margin-top:17px;font-size:13px;line-height:1.65}.education>p>span{color:#9fa297;font-size:12px}.resume-link{border-bottom:1px solid;align-items:center;gap:30px;margin-top:30px;padding-bottom:6px;font-size:14px;display:inline-flex}.resume-link:hover{color:var(--blue)}.about .resume-link:hover{color:#d8ed87}.personal-tabs{border-bottom:1px solid var(--line);margin:25px 0 0;display:flex}.personal-tabs button{background:0 0;border-bottom:3px solid #0000;flex:1;align-items:center;gap:12px;margin-bottom:-1px;padding:20px 22px;font-size:16px;transition:background .2s;display:flex}.personal-tabs button>span{color:var(--muted);margin-left:auto;font-family:monospace;font-size:11px}.personal-tabs button.selected{border-color:var(--blue);color:var(--blue);background:#ebedff}.personal-tabs button:hover{background:#ebedff}.personal-panel{padding-top:48px}.collection-intro{justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px;display:flex}.collection-intro h3{letter-spacing:-.05em;margin-top:14px;font-size:50px;font-weight:600;line-height:1.08}.collection-intro p{color:var(--muted);padding-bottom:5px;font-size:15px;line-height:1.7}.collection-empty{text-align:center;background:#e8eae3;flex-direction:column;justify-content:center;align-items:center;min-height:295px;padding:42px 25px;display:flex;position:relative}.collection-empty>svg{color:var(--blue);margin-bottom:15px}.empty-title{font-family:var(--display);letter-spacing:-.03em;font-size:22px;font-weight:500}.collection-empty p{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.7}.empty-index{letter-spacing:.08em;color:var(--muted);margin-top:30px;font-size:10px}.photo-empty{background:0 0;border:1px solid #d4d7cb}.cinema-empty{color:var(--paper);background:#20211e}.cinema-empty>svg{color:#d8ed87}.cinema-empty p,.cinema-empty .empty-index{color:#b1b3a9}.music-empty{background:#e9edff}.photo-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.photograph{text-align:left;background:0 0;padding:0}.photograph img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .3s}.photograph:hover img{transform:translateY(-5px)}.photograph>span{justify-content:space-between;align-items:center;gap:15px;margin-top:14px;font-size:16px;display:flex}.photograph small{color:var(--muted);font-size:12px}.movie-list>article,.song-list>article{border-top:1px solid var(--line);align-items:center;gap:24px;padding:27px 0;display:flex}.movie-list>article:last-child,.song-list>article:last-child{border-bottom:1px solid var(--line)}.movie-list h4,.song-list h4{letter-spacing:-.03em;font-size:23px;font-weight:600}.movie-list p,.song-list p{color:var(--muted);margin-top:5px;font-size:14px}.film-index{font-family:var(--serif);color:var(--blue);min-width:45px;font-size:32px}.movie-list a,.song-list a{text-underline-offset:5px;margin-left:auto;font-size:13px;text-decoration:underline}.song-list>article>svg{color:var(--blue)}.track-number{color:var(--muted);font-size:12px}.contact{background:var(--blue);color:#fff;padding-top:52px;padding-bottom:52px}.contact-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.contact-top>span:last-child{letter-spacing:.05em;font-size:11px}.contact h2{letter-spacing:-.065em;margin:70px 0 60px;font-size:clamp(50px,7.5vw,125px);font-weight:600;line-height:1.04;position:relative}.contact h2 a{text-underline-offset:10px;text-decoration:underline;text-decoration-thickness:2px}.contact h2 a:hover{color:#d8ed87}.contact h2>span{letter-spacing:0;font-size:135px;font-weight:400;position:absolute;top:6%;right:3%}.contact-bottom{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.contact-bottom>p{color:#d9dfff;font-size:14px;line-height:1.75}.email-line{align-items:center;gap:22px;display:flex;position:relative}.email-line>a{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:19px}.email-line>button{background:0 0;border:1px solid #b1beff;border-radius:50%;flex-shrink:0;place-items:center;width:35px;height:35px;display:grid}.email-line>button:hover{color:var(--blue);background:#fff}.copy-feedback{font-size:11px;position:absolute;bottom:-24px;right:0}.social-links{gap:35px;margin-top:40px;display:flex}.social-links a{align-items:center;gap:9px;font-size:13px;display:flex}.social-links a:hover{text-underline-offset:4px;text-decoration:underline}.contact a:focus-visible,.contact button:focus-visible{outline-color:#fff}footer{letter-spacing:.055em;justify-content:space-between;align-items:center;gap:30px;padding:35px 5.1vw;font-size:10px;display:flex}footer .wordmark{font-size:35px}footer .wordmark>span{color:var(--blue)}footer>a:last-child{letter-spacing:0;text-underline-offset:5px;font-size:12px;text-decoration:underline}.project-dialog,.photo-dialog{background:var(--paper);color:var(--ink);border:0;width:720px;max-width:min(720px,90vw);max-height:85dvh;padding:0;overflow:auto}.project-dialog::backdrop,.photo-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#11130dcc}.dialog-content{padding:50px;position:relative}.dialog-close{border:1px solid var(--line);z-index:1;background:0 0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:20px;right:20px}.dialog-content h2{letter-spacing:-.06em;margin-top:22px;font-size:58px;font-weight:650;line-height:1.1}.dialog-intro{color:var(--muted);margin-top:17px;font-size:19px;line-height:1.5}.dialog-stack{flex-wrap:wrap;gap:7px;margin:24px 0 30px;display:flex}.dialog-stack span{border:1px solid var(--line);border-radius:25px;padding:5px 12px;font-size:12px}.dialog-content h3{font-size:19px;font-weight:600}.dialog-content ul{padding-left:20px}.dialog-content li{margin-top:13px;font-size:15px;line-height:1.8}.dialog-note{color:var(--muted);margin-top:30px;font-size:12px}.photo-dialog{background:var(--ink);color:#fff;width:auto;max-width:90vw;position:relative}.photo-dialog img{object-fit:contain;max-height:70dvh;margin:15px auto}.photo-dialog p{text-align:center;margin-top:16px;font-size:14px}.photo-dialog .dialog-close{background:var(--ink);color:#fff}.menu-button:focus-visible{outline-offset:0}body:has(dialog[open]){overflow:hidden}.cinema-favourites{grid-template-columns:1fr 1fr;gap:22px;margin-bottom:35px;display:grid}.cinema-favourites>article{background:var(--ink);color:#fff;align-items:start;gap:23px;min-height:200px;padding:35px 30px;display:flex}.cinema-favourites .film-index{color:#d8ed87}.cinema-favourites .eyebrow{color:#b9bcac;font-size:12px}.cinema-favourites h4{letter-spacing:-.04em;margin:22px 0 10px;font-size:33px;font-weight:500}.cinema-favourites p{color:#b9bcac;font-size:13px;line-height:1.7}.director-collection{border-top:1px solid var(--line)}.director-collection:last-child{border-bottom:1px solid var(--line)}.director-collection summary{cursor:pointer;align-items:center;gap:24px;padding:30px 0;list-style:none;display:flex}.director-collection summary::-webkit-details-marker{display:none}.director-collection summary>.eyebrow{width:210px;color:var(--muted)}.director-name{font-family:var(--display);letter-spacing:-.04em;font-size:29px}.director-count{white-space:nowrap;color:var(--muted);margin-left:auto;font-size:13px}.director-collection[open] summary>svg{transform:rotate(45deg)}.director-films{grid-template-columns:repeat(3,1fr);gap:28px;padding:10px 0 40px;display:grid}.director-films article{border-left:2px solid var(--blue);padding-left:18px}.director-films article>span{color:var(--muted);font-family:monospace;font-size:12px}.director-films h4{letter-spacing:-.02em;margin-top:5px;font-size:18px;font-weight:550}.director-films p{color:var(--muted);margin-top:6px;font-size:12px}.music-collection{grid-template-columns:1.65fr 1fr;gap:45px;display:grid}.music-section-label{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.song-list>article{gap:15px}.song-list h4{font-size:21px}.song-list p{font-size:13px}.song-list a{margin-left:auto;font-size:12px}.artist-card{background:var(--blue);color:#fff;align-self:start;padding:30px}.artist-card>ol{font-family:var(--display);letter-spacing:-.02em;margin:25px 0 30px;padding-left:30px;font-size:19px;list-style-type:decimal-leading-zero}.artist-card li{margin:15px 0;padding-left:15px}.artist-card li::marker{color:#c2ccff;font-family:monospace;font-size:12px}.listening-stats{border-top:1px solid #ffffff50;gap:25px;padding-top:22px;display:flex}.listening-stats>div{flex-direction:column;display:flex}.listening-stats strong{font-family:var(--display);letter-spacing:-.05em;font-size:35px;font-weight:500}.listening-stats span{color:#cbd4ff;font-size:12px}.recap-caption{letter-spacing:.065em;color:#cbd4ff;margin:20px 0 25px;font-size:10px;display:block}.artist-card .text-link{border-color:#fff8;font-size:13px;display:inline-flex}.recap-image-link{color:#cbd4ff;text-underline-offset:4px;margin-top:20px;font-size:12px;text-decoration:underline;display:block}.artist-card a:focus-visible{outline-color:#fff}.photo-grid{columns:3;column-gap:25px;display:block}.photograph{break-inside:avoid;vertical-align:top;width:100%;margin-bottom:32px;display:inline-block}.photograph img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto}.photograph>span{letter-spacing:-.015em;font-size:14px}.photograph>span:after{content:"+";color:var(--blue);margin-left:auto;font-size:20px}.photograph:focus-visible{outline-offset:7px}.photo-dialog>div{padding:32px 24px 20px}.photo-dialog img{width:auto;max-width:82vw;height:auto;max-height:72dvh;margin:10px auto}.photo-dialog p{margin:14px 0 4px}.notes-section{color:#f4f6ed;background:#121814 radial-gradient(#8fa78118 1px,#0000 1px) 0 0/22px 22px}.notes-command{letter-spacing:.02em;color:#a7c093;border-bottom:1px solid #374537;justify-content:space-between;gap:20px;margin-bottom:45px;padding-bottom:20px;font-family:monospace;font-size:12px;display:flex}.notes-command>span:last-child{color:#8d9b88}.notes-heading{justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px;display:flex}.notes-heading .eyebrow{color:#a3b09b}.notes-heading h2{letter-spacing:-.06em;margin-top:25px;font-size:clamp(45px,5.5vw,78px);font-weight:600;line-height:1.1}.notes-heading h2 .serif{color:#d8ed87}.notes-heading>p{color:#a9b5a2;margin-bottom:10px;font-size:15px;line-height:1.8}.notes-search{background:#19201b;border:1px solid #374537;align-items:center;gap:18px;margin-bottom:30px;padding:13px 19px;font-family:monospace;display:flex}.notes-search>span:first-child{color:#d8ed87;font-size:18px}.notes-search>input{color:#fff;background:0 0;border:0;outline:0;width:100%;padding:3px 0;font-family:monospace;font-size:14px}.notes-search:focus-within{outline-offset:2px;outline:2px solid #d8ed87}.notes-search input::placeholder{color:#81917c}.notes-result{white-space:nowrap;color:#8d9b88;font-size:12px}.note-entry{border-top:1px solid #374537}.note-entry:last-child{border-bottom:1px solid #374537}.note-entry summary{cursor:pointer;grid-template-columns:240px 1fr 120px;align-items:center;gap:28px;padding:30px 0;list-style:none;display:grid}.note-entry summary::-webkit-details-marker{display:none}.note-file{color:#83967a;overflow-wrap:anywhere;font-family:monospace;font-size:12px}.note-topic{color:#d8ed87;font-family:monospace;font-size:12px}.note-entry h3{font-family:var(--display);letter-spacing:-.035em;margin:9px 0;font-size:25px;font-weight:500;line-height:1.3}.note-entry summary p{color:#a9b5a2;font-size:14px;line-height:1.7}.read-note{color:#d8ed87;white-space:nowrap;justify-content:end;align-items:center;gap:14px;font-size:12px;display:flex}.note-entry[open] .read-note svg{transform:rotate(45deg)}.note-body{background:#19221b;border-left:1px solid #748952;max-width:740px;margin:0 auto 35px;padding:25px 30px}.note-body p{color:#ced7c8;font-size:16px;line-height:1.85}.note-body p+p{margin-top:20px}.notes-empty{color:#a9b5a2;padding:15px 0;font-size:14px}.notes-section summary:focus-visible,.notes-section a:focus-visible{outline-color:#d8ed87}.ride-intro{background:var(--blue);color:#fff;z-index:200;pointer-events:none;animation:3s forwards ride-reveal;position:fixed;inset:0;overflow:hidden}.ride-intro button{pointer-events:auto}.ride-intro-top,.ride-intro-bottom{letter-spacing:.07em;justify-content:space-between;align-items:center;gap:20px;font-size:12px;display:flex;position:absolute;left:5.1vw;right:5.1vw}.ride-intro-top{top:35px}.ride-intro-top button{color:#fff;letter-spacing:0;background:0 0;border:1px solid #ffffff70;border-radius:25px;padding:10px 18px;font-size:13px}.ride-intro-top button:focus-visible{outline-color:#fff}.ride-intro-title{font-family:var(--display);letter-spacing:-.07em;color:#ffffff26;font-size:clamp(95px,16vw,240px);font-weight:800;line-height:.9;animation:2.7s both ride-title;position:absolute;top:18%;left:12%}.ride-intro-title i{font-family:var(--serif);color:#ffffff50;font-weight:500}.ride-intro-bottom{color:#e0e5ff;font-size:10px;bottom:35px}.ride-track{background:#ffffff45;height:1px;position:absolute;top:73%;left:0;right:0}.ride-track:after{content:"";background:repeating-linear-gradient(90deg,#ffffff32 0 60px,#0000 60px 100px);height:2px;animation:.3s linear infinite road-roll;position:absolute;top:15px;left:0;right:0}.ride-bike{filter:drop-shadow(0 15px 7px #0003);width:clamp(280px,36vw,560px);height:auto;animation:2.2s cubic-bezier(.2,.4,.85,.55) .15s both bike-cruise;position:absolute;top:73%;left:0;transform:translate(-150%,-85%)}.ride-bike img{width:100%;height:auto}.ride-streaks{flex-direction:column;gap:13px;width:180px;height:100px;display:flex;position:absolute;top:38%;right:90%;transform:skewY(-4deg)}.ride-streaks>i{background:linear-gradient(90deg,#0000,#fff9);width:100%;height:2px;display:block}.ride-streaks>i:nth-child(2){width:75%;margin-left:25%}.ride-streaks>i:nth-child(3){width:55%;margin-left:45%}@keyframes bike-cruise{0%{opacity:0;transform:translate(-150%,-85%)rotate(-3deg)}10%{opacity:1}45%{transform:translate(80vw,-85%)rotate(-1deg)}to{opacity:1;transform:translate(140vw,-85%)rotate(1deg)}}@keyframes road-roll{to{transform:translate(-100px)}}@keyframes ride-reveal{0%,75%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes ride-title{0%{opacity:0;transform:translateY(20px)}25%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translate(-50%)}}@media (min-width:1700px){.hero,.header,.section-pad,footer{padding-left:max(5.1vw,50vw - 775px);padding-right:max(5.1vw,50vw - 775px)}.hero-name h1{font-size:250px}}@media (max-width:1050px){.header{gap:28px;height:85px}.navigation{gap:25px}.hero-name{margin-top:48px}.hero-sticker{width:143px;height:120px;padding:17px;font-size:11px;bottom:1%;right:0}.hero-bottom{grid-template-columns:1fr 1.4fr;gap:20px;margin-top:45px}.explore{display:none}.hero-bottom p{justify-self:end;font-size:18px}.section-pad{padding-top:80px;padding-bottom:80px}.section-heading{grid-template-columns:1fr 1.8fr;gap:24px}.section-heading>p{grid-column:2;justify-self:start;margin-top:-5px}.project-art{min-height:215px}.project-card{padding:22px}.stockflow-logotype{font-size:40px}.stock-bars{transform-origin:100%;transform:scale(.85)}.project-logotype{font-size:92px}.about{grid-template-columns:1fr 1.6fr;gap:50px}.about-monogram{font-size:170px}.about-monogram>span{font-size:58px;right:-65px}.about-lead{font-size:25px}.contact h2>span{font-size:100px;right:0}.contact-bottom{flex-direction:column;align-items:start;gap:25px}.repo-copy p{max-width:440px}.repository{grid-template-columns:35px 1fr 85px 95px;gap:15px}.repo-links{gap:15px}}@media (max-width:700px){html{scroll-padding-top:25px}.header{gap:24px;height:78px;padding:0 6vw;position:relative}.wordmark{font-size:39px}.header-note{font-size:9px}.menu-button{place-items:center;width:40px;height:40px;margin-left:auto;display:grid}.navigation{background:var(--paper);z-index:20;border-bottom:1px solid var(--line);padding:25px 6vw 30px;display:none;position:absolute;top:78px;left:0;right:0;box-shadow:0 10px 20px #20211e10}.navigation.open{flex-direction:column;align-items:stretch;gap:0;display:flex}.navigation>a{padding:14px 0;font-size:18px}.navigation .nav-contact{justify-content:space-between;margin-top:15px;padding:12px 20px}.hero{padding:25px 6vw 0}.hero-top{align-items:start;gap:15px}.hero-top>.eyebrow{max-width:160px;font-size:9px}.location{white-space:nowrap;font-size:9px}.time{text-align:right;margin-top:4px;margin-left:0;display:block}.hero-name{margin-top:48px}.hero-name h1{letter-spacing:-.065em;font-size:14.1vw;line-height:1}.hero-name .surname{gap:7vw;margin-top:7px}.hero-asterisk{font-size:.82em}.hero-sticker{width:120px;height:97px;margin-top:30px;margin-left:auto;padding:13px;font-size:9px;line-height:1.55;position:relative;bottom:auto;right:auto;transform:rotate(7deg)}.sticker-plus{font-size:28px;bottom:8px;right:9px}.hero-bottom{grid-template-columns:1fr;gap:22px;margin:24px 0 35px;position:relative}.intro-label{gap:12px;max-width:190px;margin-top:-115px;padding-bottom:70px;font-size:10px}.tiny-cross{font-size:29px}.hero-bottom p{justify-self:start;max-width:340px;font-size:19px;line-height:1.5}.desktop-break{display:none}.hero-rule{gap:18px;padding:14px 0;font-size:8px}.hero-rule>span:last-child{text-align:right}.marquee{padding:14px 0}.marquee span{font-size:13px}.marquee b{margin:0 20px;font-size:18px}.section-pad{padding:65px 6vw}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:32px}.section-heading>.eyebrow{padding:0;font-size:10px}.section-heading h2,.about h2{font-size:58px}.section-heading>p{grid-column:auto;margin-top:0;font-size:14px}.project-grid{grid-template-columns:1fr;gap:20px}.project-card{padding:22px}.project-top{font-size:9px}.project-art{min-height:215px}.project-card.goaudit{grid-column:auto;gap:0;display:flex}.goaudit .project-art{align-items:center;min-height:200px;padding:20px 0}.goaudit .project-bottom{border-top:1px solid #c8caba}.goaudit .project-stack{margin-top:20px}.goaudit-logotype{gap:18px;font-size:63px}.goaudit-logotype>span{font-size:67px}.archive{margin-top:60px}.archive-heading{flex-direction:column;align-items:start;gap:15px}.archive-heading .eyebrow{font-size:10px}.archive-heading h3{font-size:29px}.archive-heading h3>span{font-size:25px}.text-link{font-size:13px}.archive-toolbar{flex-direction:column;align-items:start;gap:12px;margin-top:25px}.filters button{padding:5px 13px;font-size:12px}.archive-status{font-size:10px}.repository{grid-template-columns:23px 1fr 58px;gap:10px;padding:20px 0}.repo-number{align-self:start;margin-top:5px;font-size:10px}.repo-copy h4{font-size:18px}.repo-copy p{font-size:12px;line-height:1.6}.repo-language{grid-area:auto/2;font-size:10px}.repo-links{flex-direction:column;grid-area:1/3/3;align-items:end;gap:14px;font-size:10px}.about{grid-template-columns:1fr;gap:35px}.about-left{position:relative}.about-left>.eyebrow{font-size:10px}.about-left h2{margin-top:23px}.about-monogram,.monogram-caption{display:none}.about-lead{font-size:25px}.about-right>p:not(.about-lead){font-size:15px}.experience-row{grid-template-columns:90px 1fr;margin:28px 0}.experience-row>.eyebrow{font-size:10px}.experience-row h3{font-size:18px}.skill-list>div{grid-template-columns:90px 1fr;gap:15px}.skill-list p,.skill-list>div>span,.education>p{font-size:12px}.personal-tabs button{gap:7px;padding:16px 7px;font-size:13px}.personal-tabs button svg{width:17px}.personal-tabs button>span{display:none}.personal-panel{padding-top:30px}.collection-intro{flex-direction:column;align-items:start;gap:20px}.collection-intro .eyebrow{font-size:10px}.collection-intro h3{font-size:44px}.collection-intro p{font-size:14px}.collection-empty{min-height:290px;padding:35px 18px}.empty-title{font-size:20px}.collection-empty p{font-size:13px}.empty-index{font-size:9px}.photo-grid{grid-template-columns:1fr;gap:30px}.photograph img{aspect-ratio:4/5}.movie-list>article,.song-list>article{flex-wrap:wrap;gap:13px;padding:20px 0}.film-index{min-width:33px;font-size:27px}.movie-list h4,.song-list h4{font-size:20px}.movie-list p,.song-list p,.movie-list a,.song-list a{font-size:12px}.contact{padding-top:35px;padding-bottom:40px}.contact-top .eyebrow{font-size:10px}.contact-top>span:last-child{text-align:right;font-size:9px}.contact h2{margin:45px 0 32px;font-size:12vw;line-height:1.1}.contact h2>span{font-size:14vw;top:auto;bottom:-4px;right:0}.contact h2 a{text-underline-offset:6px;text-decoration-thickness:1px}.contact-bottom>p{font-size:13px}.email-line{gap:12px;width:100%}.email-line>a{font-size:16px}.email-line>button{width:32px;height:32px;margin-left:auto}.social-links{gap:25px;margin-top:32px}.social-links a{font-size:12px}footer{grid-template-columns:auto 1fr;gap:18px;padding:30px 6vw;font-size:8px;display:grid}footer>span:nth-child(2){justify-self:end}footer>a:last-child{justify-self:end;font-size:11px}.dialog-content{padding:45px 25px 30px}.dialog-content>.eyebrow{max-width:80%;font-size:10px;display:block}.dialog-content h2{font-size:45px}.dialog-intro{font-size:17px}.dialog-content li{font-size:14px}.photo-dialog>div{padding:20px}.photo-dialog p{font-size:12px}}@media (max-width:1050px){.music-collection{grid-template-columns:1.4fr 1fr;gap:25px}.artist-card{padding:24px}.song-list>article>svg{display:none}.song-list h4{font-size:19px}.director-collection summary>.eyebrow{width:170px;font-size:10px}.director-name{font-size:25px}.cinema-favourites h4{font-size:28px}}@media (max-width:700px){.cinema-favourites{grid-template-columns:1fr;gap:17px}.cinema-favourites>article{gap:17px;min-height:175px;padding:28px 23px}.cinema-favourites h4{margin-top:18px;font-size:30px}.director-collection summary{flex-wrap:wrap;gap:12px;padding:24px 0}.director-collection summary>.eyebrow{width:100%;font-size:10px}.director-name{font-size:23px}.director-count{font-size:12px}.director-films{grid-template-columns:1fr 1fr;gap:25px 18px}.director-films h4{font-size:16px}.director-films article{padding-left:12px}.director-films p{font-size:11px}.music-collection{grid-template-columns:1fr;gap:30px}.song-list h4{font-size:18px}.song-list>article{flex-wrap:nowrap;gap:12px}.song-list a{font-size:11px}.song-list p{font-size:12px}.track-number{font-size:10px}.artist-card{padding:30px}.artist-card>ol{font-size:21px}}@media (max-width:1050px){.photo-grid{columns:2}}@media (max-width:700px){.photo-grid{columns:1}.photograph img{aspect-ratio:auto}.photo-dialog>div{padding:42px 12px 16px}.photo-dialog img{max-width:82vw}.photograph>span{font-size:15px}}@media (max-width:1050px){.note-entry summary{grid-template-columns:170px 1fr 100px;gap:20px}.notes-heading>p{max-width:260px;font-size:14px}.note-entry h3{font-size:22px}.note-file{font-size:11px}}@media (max-width:700px){.notes-command{margin-bottom:30px;font-size:10px}.notes-heading{flex-direction:column;align-items:start;gap:25px}.notes-heading h2{font-size:52px}.notes-heading .eyebrow{font-size:10px}.notes-heading>p{max-width:none;font-size:14px}.note-entry summary{grid-template-columns:1fr;gap:15px;padding:25px 0}.note-file{font-size:11px}.note-entry h3{font-size:23px}.note-entry summary p{font-size:14px}.read-note{justify-content:start}.note-body{margin-bottom:25px;padding:20px 17px}.note-body p{font-size:15px}.ride-intro-title{font-size:28vw;top:25%;left:7%}.ride-intro-top,.ride-intro-bottom{font-size:9px;left:6vw;right:6vw}.ride-intro-top button{padding:8px 13px;font-size:11px}.ride-intro-bottom>span:last-child{display:none}.ride-bike{width:270px}.ride-streaks{width:100px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.ride-intro{display:none!important}}.theme-button{border:1px solid var(--line);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.theme-button:hover{color:var(--blue);border-color:var(--blue)}.note-body p{font-family:Georgia,serif;font-size:18px;line-height:1.85}.hero-sticker{color:#20211e}:root[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#171b19;--ink:#eef1e8;--blue:#8fa2ff;--muted:#b1b9ad;--line:#3b443d}[data-theme=night] .about{color:#eef1e8;background:#202723}[data-theme=night] .about-monogram span{color:#eef1e8}[data-theme=night] .marquee,[data-theme=night] .contact,[data-theme=night] .artist-card,[data-theme=night] .project-card.joyne,[data-theme=night] .ride-intro{background:#2447ff}[data-theme=night] .joyne{border-color:#2447ff}[data-theme=night] .goaudit{background:#2b342d}[data-theme=night] .goaudit .project-stack span{border-color:#667361}[data-theme=night] .repository:hover,[data-theme=night] .filters button:hover:not(.active){background:#263029}[data-theme=night] .filters button.active{color:#171b19;background:#eef1e8}[data-theme=night] .personal-tabs button.selected,[data-theme=night] .personal-tabs button:hover{background:#283349}[data-theme=night] .cinema-favourites>article{background:#273027}[data-theme=night] .photo-dialog,[data-theme=night] .photo-dialog .dialog-close{background:#171b19}@media (max-width:1050px){.header,.navigation{gap:20px}}@media (max-width:700px){.header{gap:17px}.theme-button{width:34px;height:34px;margin-left:auto}.menu-button{margin-left:0}.note-body p{font-size:17px}}
