/*! tailwindcss v4.1.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial}}}@layer base{*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*{animation-timing-function:step-end!important}}html{scroll-behavior:smooth;height:100%}body{color:var(--text-color,black);min-height:100%;margin:0;font-family:Lato,Arial,sans-serif;line-height:1.5}figure{margin-inline:0}figcaption,blockquote{font-style:italic}p>code{background-color:var(--color-bg-1);padding:2px 6px}address{font-style:normal}img{border:var(--border);border-radius:var(--border-radius);background-color:var(--color-bg-1);text-align:center;align-items:center;width:100%;max-width:100%;display:flex;overflow:hidden}.img-container{border:var(--border);border-radius:var(--border-radius)}h1,h2,h3,h3,h4,h5,h6{text-underline-offset:5px;color:inherit;margin:0;line-height:120%}h2{font-size:2rem}h3{font-size:1.5rem}strong{text-shadow:1px 0}a{color:var(--text-color)}p:first-child{margin-top:0}p:last-child{margin-bottom:0}:root{--color-1:#a6ccf2;--color-2:#ebccad;--color-bg-1:#fff;--color-bg-2:#f2f2f2;--text-color:#1a1a1a;--black:#1a1a1a;--border:solid 1px hsl(0 0 20%);--border-radius:0;--shadow-1:0px 4px 1px hsl(0 0 0/.33)}@keyframes wobble{0%{transform:translateY(calc(var(--wobble-len,2px)*-1))rotate(calc(var(--wobble-deg,1deg)*-1))}to{transform:translateY(var(--wobble-len,2px))rotate(var(--wobble-deg,1deg))}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.main-header{background-color:var(--color-bg-1);border-bottom:var(--border);z-index:10;height:80px;box-shadow:var(--shadow-1);align-items:center;padding:8px 0;display:flex;position:fixed;top:0;left:0;right:0}.main-header__wrapper{align-items:center;gap:8px;width:100%;max-width:800px;margin:0 auto;padding-inline:16px;display:flex}.site-logo,.site-logo a{color:var(--text-color);text-shadow:1px 0;letter-spacing:1px;font-variant:small-caps;font-size:24px;font-style:italic;font-weight:900;line-height:100%;text-decoration:none}.site-logo img{border:none;max-height:40px}.site-nav{align-items:center;display:flex}.site-nav a{text-underline-offset:3px;font-weight:700;text-decoration:none}.site-nav a:hover{text-decoration:underline}.site-nav a.active{text-decoration:underline;text-decoration-thickness:3px}.site-nav__list{text-align:center;grid-template-columns:repeat(3,1fr);place-content:center;gap:1.33em;margin:0;padding:0;font-size:18px;list-style-type:none;display:grid}:target:before{content:"";height:100px;margin-top:-100px;display:block}body{background-color:var(--color-bg-2)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.loader{border:solid 2px var(--text-color);border-right-color:#0000;border-radius:999px;width:1em;height:1em;animation:.5s linear infinite spin}.skip-link{background-color:var(--color-bg-1);border:var(--border);z-index:100;padding:4px;position:fixed;top:0;left:0;scale:0}.skip-link:focus-visible{scale:1}.main-content{width:100%;min-height:calc(100vh - 80px);margin:80px auto 0;font-size:1.125rem;display:block}.container{max-width:800px;margin:0 auto;padding-inline:16px}.text-content{max-width:50rem}.text-content p{margin-block:2em}.text-content figcaption p{margin:0}*+h2,*+h3{margin-top:2em}.section+.section{border-top:var(--border)}.page-hero{border-bottom:var(--border);padding:3em 16px;font-size:2rem;display:block}.page-hero,.bg-neutral{background:hsl(0 0 80%)}.page-title{font-size:3rem}.profile-section{border-bottom:var(--border);justify-content:center;align-items:center;gap:32px;min-height:calc(100vh - 80px);padding:4rem 1rem;display:flex}.profile-section p{margin:.5em 0}.profile-picture{border-radius:var(--border-radius);border:var(--border);box-shadow:var(--shadow-1);background-color:var(--color-bg-1);flex-shrink:0;width:175px;padding:3px;display:block;overflow:hidden}.profile-title{font-size:3rem;font-weight:700}.profile-title,.profile-title *{line-height:100%}.card{border:var(--border);box-shadow:var(--shadow-1);background-color:var(--color-bg-1);border-radius:var(--border-radius);transition:transform .1s}.skills-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin:1rem 0;padding:0;list-style-type:none;display:flex}.skills-list>*,.skill{border:var(--border);background-color:var(--color-bg-1);border-radius:999px;align-items:center;gap:.5em;padding:.5em 1em;line-height:100%;display:flex}.skills-list img,.skill img{background:0 0;border:none;border-radius:0;width:1em}.cards-container{grid-template-columns:repeat(1,1fr);gap:24px;margin-block:4rem;padding:0;list-style-type:none;display:grid}.project-content li{margin-bottom:.5em}.project-content ul{padding-left:1em}.btn{border:var(--border);border-radius:var(--border-radius);box-shadow:2px 2px 0 var(--black);background-color:hsl(0 0 80%);color:var(--text-color);font-family:inherit;font-size:1em;font-weight:700;line-height:inherit;justify-content:center;align-items:center;margin:0;padding:.25em 1em;text-decoration:none;transition:box-shadow .1s linear,translate .1s linear;display:inline-flex}.btn:hover:not(:disabled){box-shadow:0px 0px 0 var(--black);translate:2px 2px}.btn--primary{background-color:var(--color-1);border-color:#19334d;box-shadow:2px 2px #19334d}.btn--secondary{background-color:var(--color-2);border-color:#4d3319;box-shadow:2px 2px #4d3319}.btn[aria-busy=true]:after{content:"";border:4px solid gray;border-right-color:#fff;border-radius:1em;width:1em;height:1em;margin-left:1em;animation:.5s linear infinite rotate;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale();box-shadow:none;translate:0}.btn:focus-visible{outline:solid 2px var(--text-color);outline-offset:4px}.site-footer{border-top:var(--border);background-color:var(--color-1);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.5rem 1rem;display:flex}.site-footer a{color:inherit}.highlight>pre,.highlight>div{padding:.5em;font-size:1rem;overflow:auto}@media screen and (max-width:767px){.main-header__wrapper{flex-direction:column;align-items:normal;gap:6px}.site-logo img{height:30px}.site-logo,.site-logo a{font-size:1.5rem}.site-nav__list{width:100%;font-size:1rem}.profile-title{text-align:center;font-size:2.25rem}.page-title{font-size:2.25rem}h2{font-size:1.75rem}}.bg-primary{background-color:var(--color-1)}.bg-secondary{background-color:var(--color-2)}.text-primary{color:#2966a3}.text-secondary{color:#8f5924}@media screen and (prefers-color-scheme:dark){:root{--color-1:#14528f;--color-2:#502e0b;--color-bg-1:#25292d;--color-bg-2:#171a1c;--text-color:hsl(0 0 95%);--border:solid 1px #5c6670;--shadow-1:none}.page-hero,.bg-neutral{background:linear-gradient(180deg,hsl(0 0 0)30%,hsl(0 0 15%))}.btn{background-color:var(--color-bg-2);box-shadow:2px 2px #5c6670}.btn.btn:hover{box-shadow:0 0 #5c6670}.btn--primary{background:0 0;background-color:var(--color-1);border-color:#5299e0;box-shadow:2px 2px #5299e0}.btn--secondary{background:0 0;background-color:var(--color-2);border-color:#b48c64;box-shadow:2px 2px #b48c64}.site-footer{background:#0a2643}.bg-primary{background:linear-gradient(180deg,var(--color-bg-2)30%,#0a2643)}.bg-secondary{background:linear-gradient(180deg,var(--color-bg-2)30%,#2d1a06)}.text-primary{color:#5299e0}.text-secondary{color:#c96}}}@layer theme{:root,:host{--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-bold:700}}@layer utilities{.invisible{visibility:hidden}.static{position:static}.m-0{margin:calc(var(--spacing)*0)}.m-auto{margin:auto}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.my-4{margin-block:calc(var(--spacing)*4)}.my-5{margin-block:calc(var(--spacing)*5)}.my-8{margin-block:calc(var(--spacing)*8)}.mt-4{margin-top:calc(var(--spacing)*4)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-flex{display:inline-flex}.aspect-3\/2{aspect-ratio:3/2}.h-60{height:calc(var(--spacing)*60)}.h-full{height:100%}.w-auto{width:auto}.w-full{width:100%}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-evenly{justify-content:space-evenly}.gap-1{gap:calc(var(--spacing)*1)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-8{gap:calc(var(--spacing)*8)}.border-none{--tw-border-style:none;border-style:none}.bg-transparent{background-color:#0000}.object-cover{object-fit:cover}.object-top{object-position:top}.p-0{padding:calc(var(--spacing)*0)}.p-5{padding:calc(var(--spacing)*5)}.p-8{padding:calc(var(--spacing)*8)}.py-16{padding-block:calc(var(--spacing)*16)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.italic{font-style:italic}@media (min-width:48rem){.md\:me-auto{margin-inline-end:auto}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Lato/Lato-Regular.ttf)}@font-face{font-family:Lato;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/Lato/Lato-Italic.ttf)}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Lato/Lato-Bold.ttf)}@font-face{font-family:Lato;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/Lato/Lato-BoldItalic.ttf)}.btn--disabled{filter:grayscale();opacity:.5;cursor:not-allowed;box-shadow:none;background:0 0;translate:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
