*,*:before,*:after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,ul[class],ol[class],li,figure,figcaption,blockquote,dl,dd{margin:0}body{min-height:100vh;scroll-behavior:smooth;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block}article>*+*{margin-top:1em}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--color-light: #f2f2f2;--color-pale-light: #a64d79;--color-pale-light-25: #a64d7940;--color-pale: #6a1e55;--color-pale-dark: #3b1c32;--color-dark: #1a1a1d;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--color-light);background-color:var(--color-dark);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn{min-width:120px;display:inline-flex;align-items:center;justify-content:center;padding:.3rem 1rem;background-color:transparent;color:var(--color-light);border:3px solid var(--color-pale-dark);border-radius:.5rem;text-decoration:none;transition:all .3s ease;cursor:pointer;position:relative;gap:.5rem;font-size:small}.btn:hover{background-color:var(--color-pale-light)}.btn.primary{background-color:var(--color-pale-dark)}.btn.primary:hover{background-color:var(--color-pale-light)}div.svelte-nngyn9{display:flex;flex-direction:column;gap:1rem}img.svelte-nngyn9{width:100%;height:auto;object-fit:cover;aspect-ratio:16/9;border-radius:.5rem}.featured-image.svelte-nngyn9{max-width:400px}.gallery.svelte-nngyn9{display:flex;flex-direction:row;gap:1rem}.gallery.svelte-nngyn9>button:where(.svelte-nngyn9){max-width:120px;transition:all .3s ease;border-radius:.5rem;border:none;cursor:pointer}.gallery.svelte-nngyn9>button:where(.svelte-nngyn9):hover{transform:scale(1.1)}.gallery.svelte-nngyn9>button.active:where(.svelte-nngyn9){outline:3px dashed var(--color-pale-light)}.container.svelte-1minoe0{display:flex;flex-direction:row;gap:1rem}.info-container.svelte-1minoe0{display:flex;flex-direction:column;flex:2;gap:1rem}.info-container.svelte-1minoe0>h2:where(.svelte-1minoe0){text-transform:uppercase;letter-spacing:.15em;font-size:large;font-weight:700}.info-container.svelte-1minoe0 .subtitle:where(.svelte-1minoe0){font-weight:500;font-size:medium}.info-container.svelte-1minoe0 .date:where(.svelte-1minoe0){font-size:small;font-style:italic}.links.svelte-1minoe0{display:flex;gap:1rem}.tags.svelte-1minoe0{margin:1rem 0;display:flex;flex-wrap:wrap;gap:.3rem}.tags.svelte-1minoe0>span:where(.svelte-1minoe0){padding:.3rem 2rem;background-color:var(--color-pale-light-25);color:var(--color-light);border-radius:.5rem;transition:all .3s ease;font-size:small}@media only screen and (max-width: 1200px){.container.svelte-1minoe0{flex-direction:column-reverse}}:root{--line-width: 1px;--line-overlap: 3rem}.container.svelte-crdo4m{background-color:var(--color-dark);padding:calc(var(--line-overlap) + 1rem);border-radius:1rem;position:relative}.content.svelte-crdo4m{position:relative;overflow:hidden}.content.svelte-crdo4m>.year:where(.svelte-crdo4m){position:absolute;top:0;right:0;color:var(--color-pale-light-25);font-size:50px;font-weight:700;writing-mode:sideways-rl}a[href^="mailto:"].svelte-crdo4m{color:var(--color-light);font-weight:700;text-decoration-line:underline;text-decoration-color:var(--color-pale-light);transition:all .3s ease}a[href^="mailto:"].svelte-crdo4m:hover{color:var(--color-pale-light)}.socials.svelte-crdo4m{display:flex;gap:1rem;margin:1rem 0}.socials.svelte-crdo4m>a:where(.svelte-crdo4m){color:var(--color-light)}.line.svelte-crdo4m{position:absolute;width:100%;height:var(--line-width);background-color:var(--color-pale-light-25)}.top.svelte-crdo4m{top:0}.bottom.svelte-crdo4m{bottom:0}.left.svelte-crdo4m{left:0}.right.svelte-crdo4m{right:0}.top.right.svelte-crdo4m,.bottom.left.svelte-crdo4m{width:var(--line-width);height:100%}.top.left.svelte-crdo4m{top:var(--line-overlap)}.bottom.right.svelte-crdo4m{bottom:var(--line-overlap)}.top.right.svelte-crdo4m{right:var(--line-overlap)}.bottom.left.svelte-crdo4m{left:var(--line-overlap)}main.svelte-8hpoa2{display:flex;flex-direction:column;gap:1rem;padding:1rem;width:100%;max-width:1270px;margin:0 auto}section.svelte-8hpoa2{display:flex;flex-direction:column;gap:.5rem;background-image:radial-gradient(circle 2px at 10px 10px,var(--color-pale-light) 20%,transparent 40%);background-size:20px 20px;padding:2rem}section.svelte-8hpoa2>h2:where(.svelte-8hpoa2){text-transform:uppercase;letter-spacing:.1em;font-size:large;margin-bottom:1rem;background-image:linear-gradient(135deg,var(--color-pale-light-25) 12.5%,transparent 0,transparent 50%,var(--color-pale-light-25) 0,var(--color-pale-light-25) 62.5%,transparent 0,transparent);background-size:5px 5px}h1.svelte-8hpoa2,h2.svelte-8hpoa2{border-top:1px solid var(--color-pale-light-25);border-bottom:1px solid var(--color-pale-light-25)}.hero.svelte-8hpoa2>h1:where(.svelte-8hpoa2){font-size:2.5rem;font-weight:600;color:var(--color-light)}.hero.svelte-8hpoa2>span:where(.svelte-8hpoa2){font-weight:500;font-size:1.2rem;color:var(--color-light)}.hero.svelte-8hpoa2>p:where(.svelte-8hpoa2){max-width:800px;margin:.7rem 0}.cta.svelte-8hpoa2{display:flex;gap:1rem;margin-top:.5rem}.tech-stack.svelte-8hpoa2{display:flex;flex-wrap:wrap;gap:1rem;padding:0 1rem}.tech-stack.svelte-8hpoa2>div:where(.svelte-8hpoa2){display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background-color:var(--color-pale-light-25);color:var(--color-light);border-radius:.5rem;transition:all .3s ease;border:1px solid var(--color-light);font-size:medium}.projects.svelte-8hpoa2{display:flex;flex-direction:column;padding:0 1rem;gap:5rem}@media only screen and (max-width: 640px){main.svelte-8hpoa2{padding:1rem 0}section.svelte-8hpoa2{padding:1rem}.hero.svelte-8hpoa2>h1:where(.svelte-8hpoa2){font-size:xx-large}.tech-stack.svelte-8hpoa2{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.tech-stack.svelte-8hpoa2>div:where(.svelte-8hpoa2){font-size:small}}
