html{scroll-behavior:smooth}#root{width:var(--main-width);margin-right:auto;margin-left:auto}main{margin-top:var(--space-3xl)}.text-container{height:auto;overflow:hidden;padding-top:.493em}.dot{color:#00f}.email{padding-top:.493em}.navigation{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-s) 0;width:var(--main-width);font-size:var(--step--2);position:fixed;top:0;background-color:var(--background-colour);z-index:10}.navigation a:hover{scale:1.04}.logo.active{color:#00f;cursor:default}.sub{width:10rm}.sub a{margin-left:var(--space-m)}.sub>span.active{color:#00f;cursor:default;margin-left:var(--space-m)}.footer{border-top:solid 1px rgba(0,0,0,1);margin:var(--space-3xl) 0 var(--space-3xl);padding-top:var(--space-s);font-size:var(--step--2)}.footer>h3,.footer>p{font-size:var(--step--2)}.footer>p:last-child{padding-bottom:4.11rem}.home-page{padding-bottom:var(--main-padd-bottom);p {margin-bottom: 0;}}.home-page .intro{padding-bottom:.493em}.home-page .skills p{color:#00f;margin:0 0 var(--space-xs)}.home-page .skills p:last-child{margin:0}.about-page{padding-bottom:var(--main-padd-bottom);h1 {margin-bottom: var(--space-2xl);}}.work-page{padding-bottom:var(--main-padd-bottom)}.work-page .footer{p {margin: 0;}}.skills p a{border-bottom:none;color:inherit;transition:none}.skills p a:hover{scale:none;color:inherit}.work-page p a{border-bottom:solid 1px rgba(0,0,255,1);transition:.2s all ease}.work-page p a:hover{scale:1.003;color:#00f}.work-page{h1 {margin-bottom: var(--space-xl);} h3 {font-size: var(--step--2); padding: var(--space-s) 0 .3em; border-bottom: solid 1px rgba(0,0,0,1); margin-bottom: var(--space-l); position: sticky; top: 0; z-index: 10; background-color: white;} .years {font-style: normal; font-size: var(--step-1); margin-right: var(--space-s-m); color: initial;} p {margin: var(--space-s-m) 0;} ul {display: flex; flex-wrap: wrap; gap: var(--space-s); list-style: none; margin-left: 0; font-size: var(--step--1); line-height: 1.2; padding-bottom: var(--space-l);} @media screen and (max-width: 640px) {ul {font-size: var(--step--5);}} li {padding: var(--space-xs); border-radius: 5em; display: inline-block; border: solid 1px rgba(0,0,255,1); text-align: center;} .projectB {color: rgba(0,0,0,1);} .caption {margin-left: var(--space-s-m); text-transform: uppercase; font-size: var(--step--5) !important;} @media screen and (max-width: 640px) {.caption {margin-left: 0;}} .title-links {font-size: var(--step-0); color: inherit; margin-top: var(--space-2xs);} .title-links a {border-bottom: solid 1px rgba(0,0,255,1);} .project-meta {display: flex; align-items: baseline; gap: var(--space-s-m); margin-top: var(--space-2xs);} @media screen and (max-width: 640px) {.project-meta {flex-direction: column; align-items: flex-start;}} .project-meta .years {font-style: normal; font-size: var(--step--1);} .project-meta .caption {text-transform: uppercase;} .project-meta .title-links-inline a {border-bottom: solid 1px rgba(0,0,255,1); font-size: var(--step--3);} .project h2 {position: relative; font-size: var(--step-2);} .project h2::before {content: "→"; position: absolute; left: -2.532rem; top: -.2rem; color: black; opacity: 0; transition: opacity .2s cubic-bezier(.25,.46,.45,.94);} .project h2:hover {color: rgba(0,0,255,1);} .project h2:hover::before {opacity: 1;} .project h2.open {color: rgba(0,0,255,1);}}.work-page .project{margin-bottom:var(--space-s)}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--step--5: clamp(.7457rem, .8946rem + -.1599vw, .8586rem);--step--4: clamp(.8389rem, .9408rem + -.1094vw, .9162rem);--step--3: clamp(.9438rem, .9883rem + -.0479vw, .9776rem);--step--2: clamp(1.043rem, 1.0371rem + .0264vw, 1.0617rem);--step--1: clamp(1.1129rem, 1.087rem + .1154vw, 1.1944rem);--step-0: clamp(1.1875rem, 1.1377rem + .2212vw, 1.3438rem);--step-1: clamp(1.2671rem, 1.1891rem + .3464vw, 1.5117rem);--step-2: clamp(1.352rem, 1.2409rem + .4938vw, 1.7007rem);--step-3: clamp(1.4425rem, 1.2926rem + .6665vw, 1.9133rem);--step-4: clamp(1.5392rem, 1.3438rem + .8683vw, 2.1524rem);--step-5: clamp(1.6423rem, 1.3941rem + 1.1032vw, 2.4215rem);--step-6: clamp(1.7523rem, 1.4427rem + 1.376vw, 2.7242rem);--step-7: clamp(1.8698rem, 1.4891rem + 1.6919vw, 3.0647rem);--step-8: clamp(1.995rem, 1.5322rem + 2.057vw, 3.4478rem);--step-9: clamp(2.1287rem, 1.5712rem + 2.4779vw, 3.8787rem);--space-3xs: clamp(.3125rem, .3125rem + 0vw, .3125rem);--space-2xs: clamp(.625rem, .6051rem + .0885vw, .6875rem);--space-xs: clamp(.875rem, .8352rem + .177vw, 1rem);--space-s: clamp(1.1875rem, 1.1278rem + .2655vw, 1.375rem);--space-m: clamp(1.8125rem, 1.7528rem + .2655vw, 2rem);--space-l: clamp(2.375rem, 2.2754rem + .4425vw, 2.6875rem);--space-xl: clamp(3.5625rem, 3.4032rem + .708vw, 4.0625rem);--space-2xl: clamp(4.75rem, 4.5509rem + .885vw, 5.375rem);--space-3xl: clamp(7.125rem, 6.8263rem + 1.3274vw, 8.0625rem);--space-3xs-2xs: clamp(.3125rem, .193rem + .531vw, .6875rem);--space-2xs-xs: clamp(.625rem, .5055rem + .531vw, 1rem);--space-xs-s: clamp(.875rem, .7157rem + .708vw, 1.375rem);--space-s-m: clamp(1.1875rem, .9287rem + 1.1504vw, 2rem);--space-m-l: clamp(1.8125rem, 1.5337rem + 1.2389vw, 2.6875rem);--space-l-xl: clamp(2.375rem, 1.8374rem + 2.3894vw, 4.0625rem);--space-xl-2xl: clamp(3.5625rem, 2.9851rem + 2.5664vw, 5.375rem);--space-2xl-3xl: clamp(4.75rem, 3.6947rem + 4.6903vw, 8.0625rem);--space-s-l: clamp(1.1875rem, .7096rem + 2.1239vw, 2.6875rem);--main-width: clamp(300px, 80vw, 1000px);--main-padd-bottom: calc(var(--space-3xl) * 2);--background-colour: #ffffff;font-family:georgiapro,sans-serif;line-height:1.3;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;font-feature-settings:"onum" 1,"pnum" 1;font-variant-numeric:oldstyle-nums proportional-nums}a{font-weight:inherit;color:inherit;text-decoration:inherit;transition:.3s all ease;display:inline-block}a:hover{color:#00f}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:var(--step-2);line-height:1.4}h2{font-style:italic;font-size:var(--step-0);line-height:1.3}h3{font-size:var(--step-2);line-height:1.3;margin-bottom:var(--step-2)}p{font-size:var(--step-0);line-height:1.4;margin-bottom:var(--space-xs)}
