.glass-tile.svelte-20rrqb{background:#ffffff0d;width:calc(100% - 5rem);border-radius:1rem;box-shadow:0 8px 32px #1f26872e,0 20px 60px -40px var(--tile-color, rgba(255, 255, 255, .2));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);padding:2rem 2.5rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;text-decoration:none;color:#dbdbdb;transition:box-shadow .3s ease,border-color .3s ease,background .3s ease;cursor:default}a.glass-tile.svelte-20rrqb{cursor:pointer}@supports (color: hsl(from white h s l / 1)){a.glass-tile.svelte-20rrqb:hover,a.glass-tile.svelte-20rrqb:focus{background:#ffffff17;box-shadow:0 10px 40px #1f268740,0 0 60px 10px hsl(from var(--tile-color) h s 60% / .45),0 0 0 2px #fff3,0 0 100px 20px hsl(from var(--tile-color) h s 70% / .25),calc(cos(var(--shimmer-angle, 0deg))*30px) calc(sin(var(--shimmer-angle, 0deg))*30px) 60px 10px hsl(from var(--tile-color) h s 75% / .35)}}.glass-tile.svelte-20rrqb:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .3s ease}a.glass-tile.svelte-20rrqb:hover:before{opacity:1;background:radial-gradient(circle 900px at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.15) 0%,rgba(255,255,255,.05) 40%,transparent 80%)}.glass-tile.svelte-20rrqb>:where(.svelte-20rrqb){position:relative;z-index:2}.tile-icon.svelte-20rrqb{position:absolute;bottom:0;right:0;max-height:50%;opacity:.07;pointer-events:none;z-index:0;filter:brightness(0) invert(1);transform:translate(5%,10%)}.glass-tile.svelte-20rrqb h2:where(.svelte-20rrqb){margin:0 0 .5rem;font-size:1.7rem;line-height:1.3}.title-marquee.svelte-20rrqb{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;container-type:inline-size}.title-marquee.svelte-20rrqb span:where(.svelte-20rrqb){display:inline-block}.glass-tile.svelte-20rrqb:hover .title-marquee.title-overflows:where(.svelte-20rrqb) span:where(.svelte-20rrqb){animation:svelte-20rrqb-marquee 4s linear infinite}@keyframes svelte-20rrqb-marquee{0%{transform:translate(0)}10%{transform:translate(0)}45%{transform:translate(calc(-100% + 100cqw))}55%{transform:translate(calc(-100% + 100cqw))}90%{transform:translate(0)}to{transform:translate(0)}}.glass-tile.svelte-20rrqb p:where(.svelte-20rrqb){margin:0;font-size:var(--p-size);line-height:2;flex-grow:1}.tech-footer.svelte-20rrqb{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:space-between;gap:1rem}.tech-icons.svelte-20rrqb{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.tech-icon-container.svelte-20rrqb{position:relative;display:inline-block}.tech-icon-container.svelte-20rrqb i:where(.svelte-20rrqb){font-size:1.5rem;color:#fffc;transition:color .2s ease;line-height:1}.tech-icon-container.svelte-20rrqb:hover i:where(.svelte-20rrqb){color:#fff}.tech-tooltip.svelte-20rrqb{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 10px;border-radius:6px;font-size:.8rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s,transform .3s;pointer-events:none;z-index:1000;margin-bottom:8px;transform:translate(-50%) translateY(-5px);font-family:Mozilla Headline}.tech-tooltip.svelte-20rrqb:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6}.tech-icon-container.svelte-20rrqb:hover .tech-tooltip:where(.svelte-20rrqb){opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}@media (max-width: 768px){.glass-tile.svelte-20rrqb{width:85%;max-width:280px;padding:1.25rem;margin:0 auto}.glass-tile.svelte-20rrqb h2:where(.svelte-20rrqb){font-size:1.2rem;margin-bottom:.4rem}.glass-tile.svelte-20rrqb p:where(.svelte-20rrqb){font-size:.9rem;line-height:1.5}.tech-icons.svelte-20rrqb{gap:.5rem}.tech-icon-container.svelte-20rrqb i:where(.svelte-20rrqb){font-size:1.1rem}.tech-footer.svelte-20rrqb{margin-top:1rem;padding-top:.75rem}}html:has(.simple-page){scroll-behavior:auto;background:#f5f3ed}body:has(.simple-page){background:#f5f3ed;color:#171511}.simple-page,.simple-page *{animation:none!important;transition:none!important}.simple-page.svelte-1d9e17k{--border: #cbc8be;--muted: #626158;min-height:100vh;background:#f5f3ed;color:#171511;font-family:Mozilla Text,sans-serif;font-size:1rem;line-height:1.65}.skip-link.svelte-1d9e17k{position:absolute;top:.5rem;left:.5rem;padding:.45rem .7rem;background:#181816;color:#fff;transform:translateY(-200%);z-index:2}.skip-link.svelte-1d9e17k:focus{transform:none}.site-header.svelte-1d9e17k{width:min(70rem,calc(100% - 3rem));margin:0 auto;padding:1.2rem 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2rem}.wordmark.svelte-1d9e17k{color:inherit;font-weight:700;text-decoration:none}nav.svelte-1d9e17k{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}nav.svelte-1d9e17k a:where(.svelte-1d9e17k){color:var(--muted)}main.svelte-1d9e17k,footer.svelte-1d9e17k{width:min(52rem,calc(100% - 3rem));margin:0 auto}section.svelte-1d9e17k{padding:3.5rem 0;border-bottom:1px solid var(--border);scroll-margin-top:1rem}.intro.svelte-1d9e17k{padding-top:5.5rem}h1.svelte-1d9e17k,h2.svelte-1d9e17k,h3.svelte-1d9e17k{font-family:Mozilla Headline,serif}p.svelte-1d9e17k{font-family:Mozilla Text,sans-serif}h1.svelte-1d9e17k{margin:0;font-size:clamp(2.8rem,9vw,5.5rem);line-height:1;letter-spacing:.025em}h2.svelte-1d9e17k{margin:0 0 1.5rem;font-size:1.65rem;line-height:1.2}h3.svelte-1d9e17k{margin:0;font-size:1.08rem;line-height:1.4}p.svelte-1d9e17k{font-size:inherit;font-weight:400}a.svelte-1d9e17k{color:#171511;text-underline-offset:.18em}a.svelte-1d9e17k:focus-visible{outline:2px solid #171511;outline-offset:3px}.summary.svelte-1d9e17k{max-width:46rem;margin:1.75rem 0;font-size:clamp(1.15rem,2.4vw,1.45rem);line-height:1.55}.contact-row.svelte-1d9e17k{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;align-items:center}.email-link.svelte-1d9e17k{display:inline-flex;align-items:center;gap:.45rem}.email-link.svelte-1d9e17k button:where(.svelte-1d9e17k){width:2.5rem;height:2.5rem;display:inline-grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:4px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:.9rem}.email-link.svelte-1d9e17k button:where(.svelte-1d9e17k):focus-visible{outline:2px solid #171511;outline-offset:3px}.skills-list.svelte-1d9e17k{margin:2rem 0 0}.skills-list.svelte-1d9e17k div:where(.svelte-1d9e17k){display:grid;grid-template-columns:minmax(9rem,.35fr) 1fr;gap:1rem;padding:.85rem 0;border-top:1px solid var(--border)}dt.svelte-1d9e17k,.tools.svelte-1d9e17k span:where(.svelte-1d9e17k){font-weight:700}dd.svelte-1d9e17k{margin:0}.entry-list.svelte-1d9e17k article:where(.svelte-1d9e17k){padding:1.75rem 0;border-top:1px solid var(--border)}.entry-list.svelte-1d9e17k article:where(.svelte-1d9e17k)>p:where(.svelte-1d9e17k){margin:.65rem 0 0}.tools.svelte-1d9e17k{color:var(--muted);font-size:.88rem}footer.svelte-1d9e17k{padding:2rem 0 3rem;display:flex;justify-content:space-between;color:var(--muted)}footer.svelte-1d9e17k p:where(.svelte-1d9e17k){margin:0}@media (max-width: 700px){.site-header.svelte-1d9e17k{width:min(100% - 2rem,52rem);grid-template-columns:1fr auto;gap:.75rem 1rem}nav.svelte-1d9e17k{grid-column:1 / -1;grid-row:2}main.svelte-1d9e17k,footer.svelte-1d9e17k{width:min(100% - 2rem,52rem)}section.svelte-1d9e17k{padding:2.75rem 0}.intro.svelte-1d9e17k{padding-top:4rem}.skills-list.svelte-1d9e17k div:where(.svelte-1d9e17k){grid-template-columns:1fr;gap:.2rem}}@media print{.site-header.svelte-1d9e17k,.skip-link.svelte-1d9e17k,footer.svelte-1d9e17k{display:none}.simple-page.svelte-1d9e17k{background:#fff;color:#000;font-size:10pt}main.svelte-1d9e17k{width:100%}section.svelte-1d9e17k,.intro.svelte-1d9e17k{padding:1.5rem 0}a.svelte-1d9e17k{color:inherit;text-decoration:none}article.svelte-1d9e17k{break-inside:avoid}}.hero.svelte-10opweb{background:url(../../../images/bkg.png);background-image:image-set(url(../../../images/bkg.webp) type("image/webp"),url(../../../images/bkg.png) type("image/png"));background-size:cover;height:100vh;display:flex;flex-direction:column;padding-bottom:0;justify-content:center;align-items:center;animation:svelte-10opweb-hue-backdrop 5s linear infinite}@keyframes svelte-10opweb-hue-backdrop{0%{filter:hue-rotate(0deg)}50%{filter:hue-rotate(40deg)}to{filter:hue-rotate(0deg)}}.hero.svelte-10opweb>h1:where(.svelte-10opweb){margin-bottom:0vh;padding-bottom:0vh}.hero.svelte-10opweb>p:where(.svelte-10opweb){line-height:1.5;font-family:Mozilla Text;font-weight:300;font-size:var(--p-size)}.read-more.svelte-10opweb{text-decoration:none;color:#fff;position:absolute;bottom:2rem;display:flex;flex-direction:column;align-items:center;gap:.2rem;opacity:.6;animation:svelte-10opweb-bounce 2s ease-in-out infinite;cursor:pointer;-webkit-user-select:none;user-select:none}.read-more.svelte-10opweb span:where(.svelte-10opweb){font-family:Mozilla Text;font-size:.75rem;font-weight:300;letter-spacing:.08em;text-transform:lowercase}@keyframes svelte-10opweb-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.sect.svelte-10opweb{display:flex;flex-direction:column;width:90vw;padding-left:5vw;padding-right:5vw;min-height:70vh}.sect.svelte-10opweb>h1:where(.svelte-10opweb){font-size:8vw;margin-bottom:.5em;padding-bottom:0}.sect.svelte-10opweb>p:where(.svelte-10opweb){font-size:var(--p-size);line-height:1.5;padding-top:0;margin-top:0;text-align:left}.experience.svelte-10opweb{background:linear-gradient(180deg,rgb(11,11,26) 0%,var(--gradient-to) 100%)}.proj.svelte-10opweb{background:linear-gradient(180deg,var(--gradient-to) 0%,rgb(20,0,100) 100%);min-height:100vh;padding-bottom:15vh}.svg_lgo.svelte-10opweb{height:6vh;width:5vw}.tooltip.svelte-10opweb{font-family:Mozilla Text;position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:6px 10px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;pointer-events:none;z-index:1000;margin-bottom:5px}.tooltip.svelte-10opweb:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#333}.icon-wrap.svelte-10opweb{position:relative;display:inline-flex}.icon-wrap.svelte-10opweb:hover .tooltip:where(.svelte-10opweb){opacity:1;visibility:visible}.lb.svelte-10opweb{display:flex;flex-direction:column;width:80vw}.lb.svelte-10opweb>.svgs:where(.svelte-10opweb){display:flex;flex-direction:row;flex-wrap:wrap}.experience-list.svelte-10opweb,.projects-list.svelte-10opweb{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(500px,100%),1fr));gap:20px;justify-content:space-around;margin:0}@media (max-width: 768px){.hero.svelte-10opweb h1:where(.svelte-10opweb){font-size:2.5rem;text-align:center}.hero.svelte-10opweb p:where(.svelte-10opweb){width:90%!important;text-align:center}.sect.svelte-10opweb{width:95vw;padding-left:2.5vw;padding-right:2.5vw}.sect.svelte-10opweb>h1:where(.svelte-10opweb){font-size:2.5rem}.experience-list.svelte-10opweb,.projects-list.svelte-10opweb{grid-template-columns:1fr;justify-items:center}}@media (max-width: 480px){.hero.svelte-10opweb h1:where(.svelte-10opweb){font-size:2rem}.hero.svelte-10opweb p:where(.svelte-10opweb){font-size:var(--p-size)}.sect.svelte-10opweb>h1:where(.svelte-10opweb){font-size:2rem}}@media (min-width: 769px) and (max-width: 1024px){.hero.svelte-10opweb h1:where(.svelte-10opweb){font-size:3rem}.hero.svelte-10opweb p:where(.svelte-10opweb){width:60%!important}.sect.svelte-10opweb{width:85vw;padding-left:7.5vw;padding-right:7.5vw}.sect.svelte-10opweb>h1:where(.svelte-10opweb){font-size:3rem}}@media (min-width: 1025px){.hero.svelte-10opweb h1:where(.svelte-10opweb){font-size:3.5rem}.hero.svelte-10opweb p:where(.svelte-10opweb){width:40%!important}.sect.svelte-10opweb{width:80vw;padding-left:10vw;padding-right:10vw}.sect.svelte-10opweb>h1:where(.svelte-10opweb){font-size:3.5rem}}@media (max-aspect-ratio: 1){.hero.svelte-10opweb h1:where(.svelte-10opweb){font-size:9vw}p.svelte-10opweb{font-size:clamp(1em,4vw,4vw)}.sect.svelte-10opweb{height:auto!important;padding-right:5px}.lb.svelte-10opweb>.svgs:where(.svelte-10opweb){width:70vw!important;margin-left:5vw!important}}@media (min-aspect-ratio: 1){.hero.svelte-10opweb>p:where(.svelte-10opweb){text-align:center;width:20vw}.hero.svelte-10opweb>h1:where(.svelte-10opweb){font-size:3vw;text-align:center}.sect.svelte-10opweb>p:where(.svelte-10opweb){width:50vw}}
