:root{--ink:#070707;--panel:#11110f;--paper:#f4f3ee;--muted:#9b9b96;--line:#292927;--accent:#ff6b4a}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:var(--ink);color:var(--paper);font-family:var(--font-geist-sans,Arial), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}body:before{z-index:-1;content:"";pointer-events:none;background-image:radial-gradient(#ffffff08 .6px,#0000 .7px);background-size:5px 5px;position:fixed;inset:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:2px solid var(--paper);outline-offset:4px}.skip-link{z-index:100;background:var(--paper);color:var(--ink);font-family:var(--font-geist-mono,monospace), monospace;text-transform:uppercase;padding:10px 14px;font-size:.75rem;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-shell{width:min(100% - 64px,1360px);margin-inline:auto}.site-header{z-index:20;border-bottom:1px solid var(--line);background:#070707eb;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:72px;display:flex}.brand{align-items:center;gap:12px;display:inline-flex}.brand-mark{border:1px solid var(--paper);width:34px;height:34px;font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:-.04em;border-radius:50%;place-items:center;font-size:.7rem;display:grid}.brand-name,.header-return{font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.09em;text-transform:uppercase;font-size:.7rem}.header-return{color:var(--paper);align-items:center;gap:12px;transition:color .16s;display:inline-flex}.header-return:hover,.header-return span{color:var(--accent)}.eyebrow,.section-number,.project-meta,.tag-list,.experience-period,.footer-label,.contact-label,.place-index,.project-art-index,.placeholder-note{font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}.eyebrow{color:var(--muted);margin:0}.hero{border-right:1px solid var(--line);border-left:1px solid var(--line);background:var(--ink);grid-template-columns:minmax(0,56fr) minmax(320px,44fr);min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-copy{z-index:2;flex-direction:column;justify-content:center;padding:clamp(80px,12vh,140px) clamp(32px,4.5vw,72px) clamp(70px,9vh,110px) 48px;display:flex;position:relative}.hero-rule{background:var(--accent);width:min(72%,460px);height:2px;margin-top:clamp(42px,7vh,76px)}.hero h1{letter-spacing:-.075em;text-transform:uppercase;white-space:nowrap;margin:30px 0 0;font-size:clamp(4.8rem,7.2vw,8rem);font-weight:560;line-height:.86}.hero h1 span{display:inline}.page-intro h1,.contact-hero h1{letter-spacing:-.085em;text-transform:uppercase;margin:34px 0 0;font-size:clamp(4rem,9.2vw,9rem);font-weight:560;line-height:.82}.hero-tagline{width:min(100%,24ch);color:var(--paper);letter-spacing:-.025em;text-wrap:balance;margin:22px 0 0;font-size:clamp(1.3rem,2.1vw,2rem);font-weight:440;line-height:1.2}.hero-intro{color:#c8c7c1;width:min(100%,620px);margin:32px 0 0;font-size:clamp(1rem,1.45vw,1.27rem);line-height:1.55}.button-row{align-items:center;gap:30px;margin-top:44px;display:flex}.button{border:1px solid var(--paper);cursor:pointer;min-height:52px;font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;gap:18px;padding:0 22px;font-size:.68rem;transition:background .16s,color .16s;display:inline-flex}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--accent);border-color:var(--accent)}.button-outline{color:var(--paper);background:0 0}.button-outline:hover{border-color:var(--accent);background:var(--accent);color:var(--ink)}.text-link{border-bottom:1px solid var(--muted);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:13px;padding:8px 0;font-size:.68rem;transition:border-color .16s,color .16s;display:inline-flex}.text-link:hover{border-color:var(--accent);color:var(--accent)}.portrait{isolation:isolate;background:var(--ink);min-height:650px;margin:0;position:relative;overflow:hidden}.portrait:before{z-index:1;background:linear-gradient(90deg, var(--ink) 0%, #07070766 9%, transparent 24%);content:"";pointer-events:none;position:absolute;inset:0}.portrait img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute;inset:0}.status-strip{border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);min-height:64px;color:var(--muted);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.09em;text-transform:uppercase;grid-template-columns:auto auto 1fr auto;align-items:center;gap:14px;padding:0 24px;font-size:.68rem;display:grid}.status-strip strong{color:var(--paper);font-weight:450}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #ff6b4a1f}.section-space{padding-top:clamp(100px,13vw,180px)}.section-heading{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr auto;align-items:end;padding-bottom:24px;display:grid}.section-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(1.8rem,3vw,3.2rem);font-weight:500}.section-number{color:var(--accent);margin:0 0 8px}.section-link{margin-bottom:1px}.about-grid{grid-template-columns:1fr 1fr;gap:8vw;padding:68px 0 0 90px;display:grid}.display-copy{letter-spacing:-.065em;margin:0;font-size:clamp(2.4rem,5vw,5.7rem);font-weight:460;line-height:.98}.body-copy{color:#c5c4be;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.7}.body-copy>p{margin:0}.micro-facts{margin:58px 0 0}.micro-facts div{border-top:1px solid var(--line);grid-template-columns:88px 1fr;padding:13px 0;display:grid}.micro-facts dt,.micro-facts dd{font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.65rem}.micro-facts dt{color:var(--muted)}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:72px 24px;padding-top:48px;display:grid}.projects-grid-featured{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{min-width:0}.project-card-link{height:100%;display:block}.project-image{background:#111}.project-image>img{object-fit:cover;filter:saturate(.72)contrast(1.04)brightness(.84);width:100%;height:100%;transition:transform .42s,filter .42s;display:block}.project-card:hover .project-image>img{filter:saturate(.94)contrast(1.02)brightness(.92);transform:scale(1.025)}.project-image-brand>img,.project-card:hover .project-image-brand>img{filter:none}.project-image:after{z-index:2;content:"";pointer-events:none;background:linear-gradient(#07070757,#0000 45%,#0707076b);position:absolute;inset:0}.project-art{aspect-ratio:4/3;background:var(--panel);place-items:center;display:grid;position:relative;overflow:hidden}.project-art:before{content:"";background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px);background-size:12.5% 16.666%;position:absolute;inset:0}.project-art-index{z-index:3;color:var(--paper);position:absolute;top:20px;left:20px}.project-logo-row{z-index:3;justify-content:flex-end;align-items:center;gap:10px;max-width:calc(100% - 36px);display:flex;position:absolute;bottom:18px;right:18px}.project-logo{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070707d6;border:1px solid #ffffff2e;place-items:center;min-width:0;min-height:38px;padding:9px 11px;display:grid}.project-logo img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:30px;display:block}.project-logo-icebridge{background:#f5f4eef0;width:56px;height:56px;padding:4px}.project-logo-icebridge img{max-height:48px}.project-logo-insomniac{width:min(150px,45vw)}.project-logo-club-space{width:min(104px,30vw)}.project-meta{color:var(--muted);justify-content:space-between;gap:14px;margin-top:14px;display:flex}.project-heading-group{margin-top:24px}.project-card h3{border-top:1px solid var(--line);color:#d3d2cd;letter-spacing:-.045em;max-width:22ch;margin:22px 0 0;padding-top:22px;font-size:clamp(1.3rem,1.8vw,2rem);font-weight:560;line-height:1.08;position:relative}.project-card h3:before{background:var(--accent);content:"";width:52px;height:1px;position:absolute;top:-1px;left:0}.project-card-link:hover h3{color:var(--accent)}.project-organisation{color:var(--paper);letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(1.7rem,2.9vw,3.15rem);font-weight:680;line-height:.96}.project-organisation-detail{color:var(--accent);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.07em;text-transform:uppercase;margin:10px 0 0;font-size:.62rem}.project-description{max-width:560px;color:var(--muted);margin:12px 0 0}.tag-list{flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);color:#b6b5af;padding:7px 10px}.project-read-link{margin-top:18px}.experience-list{padding-top:12px}.experience-row{border-bottom:1px solid var(--line);grid-template-columns:170px minmax(160px,1fr) minmax(180px,1fr) minmax(240px,1.5fr);align-items:start;gap:24px;padding:32px 0;display:grid}.experience-highlights{flex-wrap:wrap;grid-column:2/-1;gap:8px;margin:0;padding:0;list-style:none;display:flex}.experience-responsibilities{color:#c5c4be;grid-column:2/-1;gap:10px;margin:4px 0 0;padding:0;list-style:none;display:grid}.experience-responsibilities li{padding-left:18px;line-height:1.55;position:relative}.experience-responsibilities li:before{color:var(--accent);content:"—";position:absolute;top:0;left:0}.experience-highlights li{border:1px solid var(--line);color:var(--muted);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.07em;text-transform:uppercase;padding:6px 9px;font-size:.62rem}.experience-row h3,.experience-row p{margin:0}.experience-row h3{font-size:1rem;font-weight:510}.experience-row>p:not(.experience-period){color:var(--muted)}.experience-summary{line-height:1.55}.map-wrap{width:100%;position:relative}.home-map-section{border-top:1px solid var(--line)}.home-cv-tail{padding-bottom:140px}.home-cv-tail .cv-section:last-child{padding-bottom:0}#profile,#projects,#map,#cv{scroll-margin-top:24px}.world-map{aspect-ratio:2;background:#111;position:relative;overflow:hidden}.world-map:before{z-index:2;content:"";pointer-events:none;background:linear-gradient(#05050514,#0505054d);position:absolute;inset:0}.world-map img{object-fit:cover;filter:saturate(.7)brightness(.68)contrast(1.08);width:100%;height:100%;display:block}.map-marker{z-index:3;border:2px solid var(--paper);background:var(--accent);border-radius:50%;width:clamp(7px,.75vw,12px);height:clamp(7px,.75vw,12px);position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #ff6b4a33}.contact-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:clamp(110px,14vw,200px)}.contact-band-inner{padding-top:clamp(90px,11vw,150px);padding-bottom:clamp(90px,11vw,150px);position:relative}.contact-band h2{letter-spacing:-.075em;max-width:1000px;margin:24px 0 0;font-size:clamp(3.2rem,8.7vw,8.5rem);font-weight:520;line-height:.9}.circle-link{aspect-ratio:1;border:1px solid var(--paper);border-radius:50%;place-items:center;width:clamp(92px,11vw,150px);font-size:clamp(2rem,4vw,4rem);transition:border-color .16s,background .16s,color .16s;display:grid}.contact-band .circle-link{position:absolute;bottom:clamp(90px,11vw,150px);right:0}.circle-link:hover{border-color:var(--accent);background:var(--accent);color:var(--ink)}.site-footer{padding:58px 0 46px}.footer-grid{color:var(--muted);grid-template-columns:1fr 1fr auto;gap:32px;font-size:.82rem;display:grid}.footer-grid p{margin:0}.footer-name,.footer-grid a{color:var(--paper)}.footer-label{margin-bottom:5px!important}.footer-links{font-size:.72rem;margin-top:8px!important}.footer-meta{text-align:right}.page-intro{border-right:1px solid var(--line);border-left:1px solid var(--line);padding-top:clamp(100px,13vw,180px);padding-bottom:clamp(90px,12vw,160px);position:relative}.page-intro>:not(.page-intro-number){margin-left:clamp(24px,8vw,120px);margin-right:clamp(24px,8vw,120px)}.page-intro h1{max-width:1100px}.page-intro-copy{max-width:680px;color:var(--muted);margin-top:44px;font-size:clamp(1rem,1.4vw,1.2rem)}.page-intro-number{color:var(--muted);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.1em;font-size:.68rem;position:absolute;top:20px;right:20px}.projects-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:110px 24px;padding-top:110px;display:grid}.projects-page-grid .project-card:nth-child(2n){margin-top:110px}.case-study-hero{border-right:1px solid var(--line);border-left:1px solid var(--line);padding-top:clamp(80px,11vw,150px);padding-bottom:clamp(70px,9vw,120px)}.case-study-kicker{justify-content:space-between;align-items:center;display:flex}.case-study-hero h1{letter-spacing:-.075em;text-transform:uppercase;max-width:1180px;margin:56px 0 0;font-size:clamp(3.4rem,8vw,8.4rem);font-weight:540;line-height:.88}.case-study-meta{border-top:1px solid var(--line);grid-template-columns:1.2fr 1fr .55fr;gap:24px;margin-top:70px;padding-top:24px;display:grid}.case-study-meta div{gap:8px;display:grid}.case-study-meta span,.case-study-meta strong{font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-weight:400}.case-study-meta span{color:var(--muted)}.case-study-image{margin-top:42px}.case-study-image img{object-fit:cover;filter:saturate(.78)contrast(1.03);width:100%;max-height:760px;display:block}.case-study-image-brand img{filter:none}.case-study-intro{grid-template-columns:minmax(120px,.35fr) 1fr;gap:7vw;padding-top:clamp(100px,13vw,170px);display:grid}.case-study-intro h2,.case-study-columns h2,.case-study-evidence h2{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,4vw,4.6rem);font-weight:500;line-height:1}.case-study-intro div>p{color:#c5c4be;max-width:820px;margin:38px 0 0;font-size:clamp(1.05rem,1.7vw,1.4rem);line-height:1.7}.case-study-columns{grid-template-columns:1fr 1fr;gap:24px;padding-top:clamp(90px,11vw,150px);display:grid}.case-study-columns article{border:1px solid var(--line);padding:36px}.case-study-columns h2{margin-top:34px;font-size:clamp(2rem,3.2vw,3.8rem)}.case-study-columns ul,.case-study-tools{margin:50px 0 0;padding:0;list-style:none}.case-study-columns li{border-top:1px solid var(--line);color:#c5c4be;padding:18px 0;line-height:1.6}.case-study-evidence{grid-template-columns:1fr 1fr;gap:7vw;padding-top:clamp(100px,13vw,170px);display:grid}.case-study-evidence h2{margin-top:34px}.case-study-tools{margin-top:0}.case-study-tools li{border-bottom:1px solid var(--line);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.07em;text-transform:uppercase;padding:16px 0;font-size:.72rem}.case-study-value{padding-top:clamp(110px,14vw,190px);padding-bottom:40px}.case-study-value h2{letter-spacing:-.07em;max-width:1120px;margin:28px 0 0;font-size:clamp(2.8rem,6vw,7rem);font-weight:480;line-height:.98}.next-project{margin-top:100px}.next-project h2{max-width:1000px;padding-right:180px;font-size:clamp(2.8rem,6vw,7rem)}.cv-intro-grid{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:end;gap:clamp(48px,8vw,120px);padding-bottom:64px;display:grid}.cv-intro-grid h2{letter-spacing:-.075em;max-width:820px;margin:24px 0 0;font-size:clamp(3.2rem,7.5vw,8rem);font-weight:520;line-height:.9}.cv-intro-copy>p{color:#c5c4be;margin:0;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.7}.cv-downloads{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.cv-section{padding-top:clamp(100px,12vw,160px)}.cv-section:last-of-type{padding-bottom:140px}.cv-experience-list .experience-row{grid-template-columns:180px minmax(180px,.8fr) minmax(180px,.9fr) minmax(280px,1.4fr);padding:48px 0}.education-list{grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-top:48px;display:grid}.education-card{border:1px solid var(--line);background:linear-gradient(145deg,#ffffff06,#0000 58%);grid-column:span 6;grid-template-rows:auto 1fr;min-height:390px;padding:32px;display:grid;position:relative;overflow:hidden}.education-card:before{background:var(--accent);content:"";width:74px;height:2px;position:absolute;top:-1px;left:-1px}.education-card-program{grid-column:span 7}.education-card-diploma{grid-column:span 5}.education-card-study{grid-column:1/-1;grid-template-rows:1fr;grid-template-columns:minmax(150px,.34fr) minmax(0,1fr);min-height:0;padding-block:26px}.education-card-head{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.education-logo{justify-content:flex-start;align-items:center;width:200px;height:62px;display:flex}.education-logo img{object-fit:contain;object-position:left center;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.education-logo-fiu{width:220px}.education-logo-miami-ad-school{width:120px}.education-logo-pace{width:178px}.education-logo-beau-soleil{width:94px;height:72px}.education-logo-nyu{width:62px;height:62px}.education-card .experience-period{text-align:right;flex:none}.education-card h3{max-width:18ch;color:var(--paper);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(1.75rem,2.35vw,2.65rem);font-weight:620;line-height:1.02}.education-qualification{max-width:35ch;color:var(--accent);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.08em;text-transform:uppercase;margin:18px 0 0;font-size:.76rem;font-weight:600;line-height:1.5}.education-institution{color:var(--paper);letter-spacing:.04em;text-transform:uppercase;margin:20px 0 0;font-size:.86rem;font-weight:600}.education-institution span{color:var(--muted);margin:0}.education-note{color:#aaa9a3;max-width:58ch;margin:22px 0 0;line-height:1.6}.education-relationship{border-top:1px solid var(--line);color:#d5d3ca;max-width:58ch;margin:18px 0 0;padding-top:16px;font-size:.85rem;line-height:1.55}.education-card-study .education-card-head{place-content:space-between start;display:grid}.education-card-study .experience-period{text-align:left}.education-card-study .education-card-copy{border-left:1px solid var(--line);align-self:center;margin-top:0;padding-left:34px}.education-card-study h3{font-size:clamp(1.35rem,1.85vw,1.9rem)}.education-card-study .education-note{margin-top:14px}.skills-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-top:48px;display:grid}.cv-facts{padding-bottom:140px}.cv-micro-facts{max-width:900px;margin-left:90px}.credits-list{padding-top:90px}.credits-list article{border-top:1px solid var(--line);grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:24px;padding:30px 0;display:grid}.credits-list article:last-child{border-bottom:1px solid var(--line)}.credits-list h2,.credits-list p{margin:0}.credits-list h2{font-size:clamp(1.1rem,2vw,1.8rem);font-weight:500}.credits-list div p{color:var(--muted);margin-top:6px;font-size:.8rem}.credit-links{justify-content:flex-end;align-items:center;gap:10px 18px;display:flex}.credits-actions{justify-content:flex-end;padding-top:60px;padding-bottom:120px;display:flex}.skills-grid article{border-top:1px solid var(--line);padding:28px 0}.skills-grid h3{color:var(--muted);font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 42px;font-size:.68rem;font-weight:400}.skills-grid ul{margin:0;padding:0;list-style:none}.skills-grid li{border-bottom:1px solid var(--line);padding:9px 0}.place-index{color:var(--accent);margin:4px 0 0}.contact-page{min-height:80vh}.contact-hero{padding-top:clamp(90px,12vw,170px);padding-bottom:clamp(90px,11vw,150px)}.contact-hero h1{max-width:1200px}.contact-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1.6fr;gap:8vw;margin-top:100px;padding-top:28px;display:grid}.contact-grid>p{max-width:400px;color:var(--muted);margin:0;font-size:1.1rem}.contact-label{color:var(--muted);margin:0 0 16px}.email-link{border-bottom:1px solid var(--paper);letter-spacing:-.05em;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;font-size:clamp(1.5rem,3vw,3.4rem);font-weight:480;display:flex}.email-link:hover{border-color:var(--accent);color:var(--accent)}.placeholder-note{color:var(--muted);letter-spacing:.06em;text-transform:none;margin:15px 0 0}.placeholder-note span{color:var(--accent);text-transform:uppercase}.contact-details{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:24px;padding-top:44px;padding-bottom:70px;display:grid}.contact-details p{margin:0}.contact-details>div>p:last-child{font-family:var(--font-geist-mono,monospace), monospace;letter-spacing:.06em;font-size:.72rem}.small-circle{width:80px;font-size:1.8rem}@media (max-width:1000px){.page-shell{width:min(100% - 40px,1360px)}.hero{grid-template-columns:minmax(0,54fr) minmax(300px,46fr)}.hero-copy{padding-left:30px;padding-right:38px}.hero h1{font-size:clamp(4rem,8.5vw,6.4rem)}.portrait{min-height:580px}.about-grid{padding-left:0}.experience-row,.cv-experience-list .experience-row{grid-template-columns:130px 1fr 1fr}.experience-summary,.experience-responsibilities{grid-column:2/-1}.contact-details{grid-template-columns:repeat(3,1fr)}.projects-grid-featured,.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-intro-grid{grid-template-columns:1fr}.education-card-program,.education-card-diploma{grid-column:span 6}.case-study-meta{grid-template-columns:1fr 1fr}.case-study-meta div:last-child{grid-column:1/-1}.contact-details .circle-link{display:none}}@media (max-width:720px){.page-shell{width:min(100% - 32px,1360px)}.site-header{overflow:hidden}.header-inner{min-height:64px;display:flex}.brand-name{display:none}.hero{flex-direction:column;min-height:auto;display:flex}.hero-copy{padding:70px 20px 54px}.hero-rule{width:70%;margin-top:42px}.hero h1{white-space:normal;margin-top:28px;font-size:clamp(4.8rem,22vw,8.2rem)}.hero h1 span{display:block}.hero-tagline{margin-top:18px;font-size:clamp(1.25rem,6vw,1.65rem)}.hero-intro{margin-top:25px}.button-row{flex-direction:column;align-items:flex-start;gap:18px;margin-top:36px}.portrait{min-height:min(118vw,650px)}.portrait:before{background:linear-gradient(180deg, var(--ink) 0%, transparent 18%)}.portrait img{object-fit:contain;object-position:center bottom}.status-strip{grid-template-columns:auto 1fr;padding:18px}.status-strip strong,.status-location{grid-column:2}.section-space{padding-top:100px}.section-heading{grid-template-columns:48px 1fr;gap:8px}.section-heading h2{font-size:2rem}.section-link{grid-column:2;justify-self:start;margin-top:18px}.about-grid{grid-template-columns:1fr;gap:42px;padding-top:44px}.display-copy{font-size:clamp(2.7rem,14vw,4.8rem)}.micro-facts{margin-top:40px}.projects-grid,.projects-page-grid{grid-template-columns:1fr;gap:70px}.projects-grid-featured{grid-template-columns:1fr}.projects-page-grid{padding-top:70px}.projects-page-grid .project-card:nth-child(2n){margin-top:0}.project-art{aspect-ratio:1.08}.project-logo-row{justify-content:flex-start;max-width:none;bottom:14px;left:14px;right:14px}.project-logo-insomniac{width:132px}.project-logo-club-space{width:92px}.project-organisation{font-size:clamp(1.85rem,9vw,3.25rem)}.project-card h3{margin-top:20px;padding-top:20px;font-size:clamp(1.35rem,6.2vw,1.8rem)}.project-meta{flex-direction:column;align-items:flex-start}.experience-row,.cv-experience-list .experience-row{grid-template-columns:1fr;gap:9px;padding:26px 0}.experience-period,.experience-summary,.experience-responsibilities,.experience-highlights{grid-column:auto}.experience-row h3{margin-top:12px}.contact-band h2{max-width:85%}.contact-band .circle-link{width:76px;font-size:2rem;bottom:50px;right:0}.footer-grid{grid-template-columns:1fr}.footer-meta{text-align:left}.page-intro{border-left:0;border-right:0;padding:90px 0 80px}.page-intro>:not(.page-intro-number){margin-left:0;margin-right:0}.page-intro h1{font-size:clamp(3.6rem,20vw,6rem)}.page-intro-number{right:0}.cv-intro-grid{gap:36px;padding-bottom:48px}.cv-intro-grid h2{font-size:clamp(3rem,18vw,5.4rem)}.cv-downloads{display:grid}.cv-downloads .button{width:100%}.education-list,.skills-grid{grid-template-columns:1fr}.education-card,.education-card-program,.education-card-diploma,.education-card-study{grid-column:1}.education-card-study{grid-template-columns:1fr;min-height:330px;padding:32px;display:grid}.education-card-study .education-card-head{justify-content:space-between;display:flex}.education-card-study .experience-period{text-align:right}.education-card-study .education-card-copy{border-left:0;align-self:end;margin-top:48px;padding-left:0}.education-card h3,.education-card-study h3{font-size:clamp(1.7rem,9vw,2.5rem)}.case-study-kicker{flex-direction:column;align-items:flex-start}.case-study-hero{border-left:0;border-right:0;padding-left:0;padding-right:0}.case-study-hero h1{margin-top:48px;font-size:clamp(3.2rem,17vw,5.8rem)}.case-study-meta,.case-study-intro,.case-study-columns,.case-study-evidence{grid-template-columns:1fr}.case-study-meta div:last-child{grid-column:auto}.case-study-image{width:100%}.case-study-image img{min-height:440px}.case-study-columns article{padding:24px}.next-project h2{max-width:80%;padding-right:0}.cv-micro-facts{margin-left:0}.credits-list article{grid-template-columns:44px 1fr}.credits-list .credit-links{grid-column:2;justify-content:flex-start;justify-self:start}.home-map-section{padding-top:72px}.contact-hero{padding-top:90px}.contact-hero h1{overflow-wrap:anywhere;font-size:clamp(2rem,10.5vw,4rem)}.contact-grid{grid-template-columns:1fr;gap:46px;margin-top:70px}.email-link{overflow-wrap:anywhere}.contact-details{grid-template-columns:1fr;gap:34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.portfolio-home-entry>a{color:var(--paper);background:#10100f;border:1px solid #454540;justify-content:space-between;align-items:center;gap:30px;padding:40px 42px;transition:background .2s,border-color .2s;display:flex;position:relative}.portfolio-home-entry>a:before{content:"";background:var(--accent);width:3px;position:absolute;top:0;bottom:0;left:0}.portfolio-home-entry strong{letter-spacing:-.055em;font-size:clamp(2rem,4.5vw,4rem);font-weight:650;line-height:1.05;display:block}.portfolio-home-entry p{color:#b8b8b1;margin:14px 0 0;font-size:1rem}.portfolio-home-entry>a>span{width:78px;height:78px;color:var(--accent);background:0 0;border:1px solid #655049;border-radius:50%;flex:none;place-items:center;font-size:3rem;transition:transform .2s;display:grid}.portfolio-home-entry>a:hover{border-color:var(--accent);background:#171715}.portfolio-home-entry>a:hover>span{transform:rotate(45deg)}.portfolio-home-entry>a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}@media (max-width:620px){.portfolio-home-entry>a{gap:20px;padding:28px 22px}.portfolio-home-entry>a>span{width:52px;height:52px;font-size:2rem}.portfolio-home-entry p{max-width:25ch;font-size:.9rem}}.screen-reader-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-intro-number{display:none}.hero{border:0}.status-strip{border-bottom:0;border-left:0;border-right:0}@media (max-width:760px){.hero .portrait:before{background:linear-gradient(90deg,var(--ink) 0%,transparent 18%,transparent 82%,var(--ink) 100%),linear-gradient(180deg,var(--ink) 0%,transparent 20%,transparent 78%,var(--ink) 100%)}}.language-bar{background:var(--ink);justify-content:space-between;align-items:center;gap:20px;max-width:1440px;margin:auto;padding:15px 40px;display:flex}.language-bar nav{gap:5px;display:flex}.language-bar nav a{color:#999;letter-spacing:.08em;place-items:center;min-width:42px;min-height:44px;font-size:12px;display:grid}.language-bar nav a[aria-current]{color:#fff;border-bottom:1px solid #fff}.resume-top-link{color:#eee;border:1px solid #6d6d68;justify-content:space-between;align-items:center;gap:20px;width:150px;min-height:44px;padding:10px 16px;font-size:12px;display:flex}.resume-top-link:hover{color:#111;background:#eee}.language-bar a:focus-visible{outline-offset:4px;outline:2px solid #fff}.hero{min-height:calc(100svh - 74px)}@media (max-width:760px){.language-bar{padding:10px 20px}.resume-top-link{width:130px;font-size:11px}.language-bar nav a{min-width:36px}.hero{min-height:auto}.hero-copy{padding-top:45px}}.education-card{grid-template-rows:auto auto;align-content:start;gap:28px;min-height:0}.education-card-program,.education-card-diploma{grid-column:span 6}.education-card-copy{align-self:start;margin-top:0}.education-card-study{grid-template-rows:auto;gap:32px}.education-card-study .education-card-copy{align-self:start;margin-top:0}@media (max-width:760px){.education-card-program,.education-card-diploma{grid-column:1}.education-card,.education-card-study{gap:25px;min-height:0}.education-card-study .education-card-copy{align-self:start;margin-top:0}}.resume-top-link{white-space:nowrap}#work-title{scroll-margin-top:28px}#projects>.section-heading>.section-link{border:1px solid var(--accent);min-height:44px;padding:12px 16px}@media (max-width:760px){#work-title{scroll-margin-top:18px}#projects>.section-heading>.section-link{grid-column:2;justify-self:start;margin-top:8px}}.selected-work-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;display:flex}.selected-portfolio-link{border:1px solid var(--accent);min-height:44px;padding:12px 16px}.selected-work-links .text-link{margin:0}@media (max-width:900px){.selected-work-links{grid-column:2;justify-content:flex-start;gap:16px}}.project-image-preserve-logo>img{object-position:left center;transform-origin:0}.project-organisation-detail{color:var(--muted);min-height:1.5em;line-height:1.5}@media (min-width:761px){.projects-grid{row-gap:0}.projects-grid>.project-card{grid-template-rows:subgrid;grid-row:span 8;padding-bottom:64px;display:grid}.projects-grid .project-card-link{grid-template-rows:subgrid;grid-row:span 8;display:grid}.projects-grid .project-heading-group{display:contents}.projects-grid .project-organisation{align-self:start;margin-top:24px}.projects-grid .project-card h3,.projects-grid .project-meta,.projects-grid .project-description,.projects-grid .project-card .tag-list,.projects-grid .project-read-link{align-self:start}.projects-page-grid .project-card:nth-child(2n){margin-top:0}}@media (max-width:760px){.project-organisation-detail:empty{display:none}}.home-cv,.home-cv>.cv-section:last-of-type{padding-bottom:0}.home-cv+.contact-band{margin-top:clamp(48px,6vw,80px)}.home-cv+.contact-band .contact-band-inner{padding-top:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px)}.home-cv+.contact-band .circle-link{bottom:clamp(56px,6vw,88px)}@media (min-width:761px){.education-card-study{grid-column:span 6;grid-template-rows:auto auto;grid-template-columns:1fr;gap:28px;padding:32px}.education-card-study .education-card-head{place-content:start space-between;display:flex}.education-card-study .experience-period{text-align:right}.education-card-study .education-card-copy{border-left:0;padding-left:0}.education-card-study h3{font-size:clamp(1.75rem,2.35vw,2.65rem)}}.profile-statement{--statement-size:clamp(2rem,3.4vw,3.7rem)}.profile-statement .display-copy,.profile-statement .profile-motto{font-size:var(--statement-size);letter-spacing:-.035em;overflow-wrap:break-word}.profile-statement .display-copy{margin-top:0;font-weight:750;line-height:1.12}.profile-statement .profile-motto{color:#c4c3bd;max-width:30ch;margin:28px 0 0;font-style:italic;font-weight:400;line-height:1.2}.resume-top-link{border-color:var(--accent);color:var(--accent);background:0 0}.resume-top-link:hover{color:#ff927a;background:#201510;border-color:#ff927a}.home-cv .cv-section:has(+.capabilities-section){padding-bottom:55px}.capabilities-section{padding-top:0;padding-bottom:0!important}.capabilities-disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.capabilities-disclosure>summary{cursor:pointer;grid-template-columns:65px 1fr auto;align-items:center;gap:25px;min-height:86px;padding:26px 0;list-style:none;display:grid}.capabilities-disclosure>summary::-webkit-details-marker{display:none}.capabilities-disclosure>summary h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.6rem,3vw,2.5rem);font-weight:500;line-height:1.15}.capabilities-disclosure>summary .section-number{margin:0}.capabilities-action{color:var(--muted);text-align:right;align-items:center;gap:24px;font-size:.8rem;display:flex}.capabilities-action>span{color:var(--accent);font-size:28px;line-height:1}.capabilities-disclosure[open]>.skills-grid{padding:20px 0 35px}.capabilities-disclosure>summary:hover .capabilities-action{color:var(--paper)}.capabilities-disclosure>summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}@media (max-width:760px){.profile-motto{max-width:26ch;font-size:1.35rem}.home-cv .cv-section:has(+.capabilities-section){padding-bottom:35px}.capabilities-disclosure>summary{grid-template-columns:30px 1fr;gap:15px;padding:22px 0}.capabilities-action{text-align:left;grid-column:2;justify-content:space-between}.capabilities-disclosure[open]>.skills-grid{padding-top:10px}}.capabilities-action>span{align-items:center;gap:20px;display:flex}.capabilities-action .capabilities-collapse,.capabilities-disclosure[open] .capabilities-expand{display:none}.capabilities-disclosure[open] .capabilities-collapse{display:flex}:root{--page-gutter:max(16px,calc((100vw - 1360px)/4))}.page-shell{width:calc(100% - 2 * var(--page-gutter));max-width:none}.language-bar{max-width:none;padding-inline:var(--page-gutter)}html:has(#page-top:target){scroll-behavior:auto}.section-heading{grid-template-columns:minmax(0,1fr) auto;gap:20px}.about-grid{padding-left:0}.micro-facts{margin-top:36px}.micro-facts>div{grid-template-columns:minmax(120px,.32fr) minmax(0,1fr);align-items:baseline;gap:22px;padding:19px 0}.micro-facts dt{letter-spacing:.05em;font-size:clamp(.8rem,1vw,.95rem);line-height:1.55}.micro-facts dd{letter-spacing:.025em;overflow-wrap:break-word;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.55}#projects .project-card{padding-bottom:24px}.portfolio-home-entry{padding-top:24px}#cv.home-cv{padding-top:clamp(48px,4vw,64px)}.capabilities-disclosure>summary,.credits-list>article{grid-template-columns:minmax(0,1fr) auto}.page-intro{padding-left:clamp(12px,4vw,60px);padding-right:clamp(12px,4vw,60px)}.hero.page-shell{grid-template-columns:minmax(0,55fr) minmax(0,45fr);width:100%;max-width:none}.hero-copy{padding-left:calc(var(--page-gutter) + 24px);padding-right:24px}.hero-copy>*{max-width:660px}.hero .portrait{z-index:1;width:auto;height:auto;min-height:0;position:absolute;inset:0 0 0 42%}.hero .portrait img{object-fit:contain;object-position:right center}.hero .portrait:before{background:linear-gradient(90deg,var(--ink) 0%,#07070759 14%,transparent 26%,transparent 82%,var(--ink) 100%),linear-gradient(0deg,var(--ink) 0%,transparent 14%,transparent 96%,var(--ink) 100%)}@media (max-width:1000px){.hero-copy{padding-left:calc(var(--page-gutter) + 15px)}.micro-facts>div{grid-template-columns:115px minmax(0,1fr);gap:16px}}@media (max-width:900px){.section-heading{grid-template-columns:1fr}.section-link,.selected-work-links,#projects>.section-heading>.section-link{grid-column:1;justify-self:start}.selected-work-links{justify-content:flex-start}}@media (max-width:760px){:root{--page-gutter:12px}.hero.page-shell{flex-direction:column;min-height:0;display:flex}.hero-copy{padding:45px 24px 40px}.hero-copy>*{max-width:100%}.hero h1{white-space:normal;font-size:clamp(4.8rem,22vw,8.2rem)}.hero h1 span{display:block}.hero .portrait{aspect-ratio:800/909;width:100%;height:auto;min-height:0;margin:0;position:relative;inset:auto}.hero .portrait img{object-fit:contain;object-position:center}.hero .portrait:before{background:linear-gradient(90deg,var(--ink) 0%,transparent 10%,transparent 86%,var(--ink) 100%),linear-gradient(180deg,var(--ink) 0%,transparent 16%,transparent 85%,var(--ink) 100%)}.micro-facts>div{grid-template-columns:110px minmax(0,1fr);gap:16px;padding:17px 0}.micro-facts dt{font-size:.8rem}.micro-facts dd{font-size:1rem}.capabilities-disclosure>summary{grid-template-columns:1fr}.capabilities-action{grid-column:1}.credits-list>article{grid-template-columns:1fr}.credits-list .credit-links{grid-column:1}}.hero .portrait:before{display:none}.hero .portrait img{object-fit:contain;width:auto;max-width:100%;height:100%;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 16% 78%,#0000 100%),linear-gradient(#0000 0%,#000 3% 86%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 16% 78%,#0000 100%),linear-gradient(#0000 0%,#000 3% 86%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}@media (max-width:760px){.hero .portrait img{width:100%;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 10% 84%,#0000 100%),linear-gradient(#0000 0%,#000 16% 85%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 10% 84%,#0000 100%),linear-gradient(#0000 0%,#000 16% 85%,#0000 100%)}}#cv.home-cv>.cv-section:first-child{padding-top:0}.page-intro h1{overflow-wrap:anywhere}@media (max-width:760px){.page-intro h1{letter-spacing:-.06em;font-size:clamp(2.65rem,11.5vw,4.5rem);line-height:.97}}:root{--portfolio-cta-label-size:clamp(2rem,4.5vw,4rem);--profile-section-size:calc(var(--portfolio-cta-label-size) + 7pt)}.portfolio-home-entry strong{font-size:var(--portfolio-cta-label-size)}.profile-home .section-heading h2,.profile-home .capabilities-disclosure>summary h2{font-size:var(--profile-section-size);text-wrap:balance;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0;line-height:1.08}.capabilities-action,.capabilities-action>span{color:var(--paper)}.hero-tagline-en{text-wrap:wrap;width:100%}.hero-tagline-en>span{display:block}.profile-home .contact-band h2{letter-spacing:-.055em;max-width:none;font-size:clamp(2rem,5vw,5.5rem);line-height:1.12}.contact-call{width:fit-content;max-width:100%;color:var(--paper);align-items:center;gap:clamp(16px,2.5vw,40px);text-decoration:none;display:flex}.contact-call>span:first-child{text-wrap:balance;overflow-wrap:break-word;min-width:0}.contact-call-arrow{aspect-ratio:1;letter-spacing:0;border:1px solid;border-radius:50%;flex:none;place-items:center;width:clamp(56px,6vw,96px);font-size:clamp(1.8rem,3vw,3rem);line-height:1;transition:background .16s,color .16s,border-color .16s;display:grid}.contact-call:hover .contact-call-arrow{background:var(--accent);border-color:var(--accent);color:var(--ink)}.contact-call:focus-visible{outline:2px solid var(--accent);outline-offset:10px;border-radius:3px}@media (prefers-reduced-motion:reduce){.contact-call-arrow{transition:none}}
