.portfolio-module__XbO6Ca__page{--ink:#e2e8f0;--muted:#94a3b8;--accent:#93c5fd;color:var(--muted);min-height:100vh;font-family:var(--font-inter), ui-sans-serif, system-ui, sans-serif;isolation:isolate;background:#0f172a;font-size:16px;line-height:1.625;position:relative}.portfolio-module__XbO6Ca__page h1,.portfolio-module__XbO6Ca__page h2,.portfolio-module__XbO6Ca__page h3,.portfolio-module__XbO6Ca__page h4{font-family:inherit}.portfolio-module__XbO6Ca__page a{text-decoration:none}.portfolio-module__XbO6Ca__page a:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}.portfolio-module__XbO6Ca__page ::selection{color:#0f172a;background:#93c5fd}.portfolio-module__XbO6Ca__page section,.portfolio-module__XbO6Ca__page article[id]{scroll-margin-top:96px}.portfolio-module__XbO6Ca__skip{background:var(--accent);color:#0f172a;z-index:10;padding:12px 20px;font-weight:600;position:fixed;top:-80px;left:24px}.portfolio-module__XbO6Ca__skip:focus{top:20px}.portfolio-module__XbO6Ca__spotlight{pointer-events:none;z-index:-1;background:radial-gradient(600px circle at var(--spot-x,15%) var(--spot-y,15%), #1d4ed821, transparent 80%);position:fixed;inset:0}.portfolio-module__XbO6Ca__layout{grid-template-columns:48fr 52fr;gap:16px;max-width:1280px;margin:0 auto;padding:0 48px;display:grid}.portfolio-module__XbO6Ca__header{flex-direction:column;justify-content:space-between;height:100vh;min-height:650px;max-height:100vh;padding:96px 0;display:flex;position:sticky;top:0}.portfolio-module__XbO6Ca__avatar{object-fit:cover;border:2px solid #334155;border-radius:50%;width:64px;height:64px;display:block;position:absolute;top:96px;right:48px}.portfolio-module__XbO6Ca__header h1{color:var(--ink);letter-spacing:-.025em;padding-right:96px;font-size:48px;font-weight:700;line-height:1}.portfolio-module__XbO6Ca__header h2{color:var(--ink);letter-spacing:-.025em;margin-top:12px;font-size:20px;font-weight:500;line-height:28px}.portfolio-module__XbO6Ca__intro{max-width:320px;margin-top:16px;line-height:24px}.portfolio-module__XbO6Ca__location{color:#94a3b8;margin-top:10px;font-size:13px}.portfolio-module__XbO6Ca__nav{flex-direction:column;width:fit-content;margin-top:56px;display:flex}.portfolio-module__XbO6Ca__nav a{color:#64748b;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:16px;padding:12px 0;font-size:12px;font-weight:700;line-height:16px;display:flex}.portfolio-module__XbO6Ca__navLine{background:#475569;width:32px;height:1px;transition:width .2s,background .2s}.portfolio-module__XbO6Ca__nav a:hover,.portfolio-module__XbO6Ca__nav a:focus-visible,.portfolio-module__XbO6Ca__nav a[aria-current=location]{color:var(--ink)}.portfolio-module__XbO6Ca__nav a:hover .portfolio-module__XbO6Ca__navLine,.portfolio-module__XbO6Ca__nav a:focus-visible .portfolio-module__XbO6Ca__navLine,.portfolio-module__XbO6Ca__nav a[aria-current=location] .portfolio-module__XbO6Ca__navLine{background:var(--ink);width:64px}.portfolio-module__XbO6Ca__socials{align-items:center;gap:24px;margin:32px 0 0;padding:0;list-style:none;display:flex}.portfolio-module__XbO6Ca__socials a{color:#94a3b8;display:inline-flex}.portfolio-module__XbO6Ca__socials a:hover{color:var(--ink)}.portfolio-module__XbO6Ca__socials svg{width:24px;height:24px}.portfolio-module__XbO6Ca__main{min-width:0;padding:96px 0}.portfolio-module__XbO6Ca__section{margin-bottom:96px}.portfolio-module__XbO6Ca__sectionHeading{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portfolio-module__XbO6Ca__about p{margin-bottom:16px}.portfolio-module__XbO6Ca__about p:last-child{margin-bottom:0}.portfolio-module__XbO6Ca__about strong,.portfolio-module__XbO6Ca__about a{color:var(--ink);font-weight:500}.portfolio-module__XbO6Ca__about a:hover{color:var(--accent)}.portfolio-module__XbO6Ca__projectList{flex-direction:column;margin:-24px;display:flex}.portfolio-module__XbO6Ca__project{border:1px solid #0000;border-radius:6px;grid-template-columns:128px minmax(0,1fr);gap:24px;padding:24px;transition:background .2s,opacity .2s,box-shadow .2s;display:grid;position:relative}.portfolio-module__XbO6Ca__project:hover,.portfolio-module__XbO6Ca__project:focus-within{background:#1e293b8c;box-shadow:inset 0 1px #94a3b814}.portfolio-module__XbO6Ca__project h3{color:var(--ink);font-size:16px;font-weight:500;line-height:24px}.portfolio-module__XbO6Ca__project h3 a{display:inline}.portfolio-module__XbO6Ca__project h3 a:after{content:"";border-radius:6px;position:absolute;inset:0}.portfolio-module__XbO6Ca__project h3 svg{vertical-align:-3px;width:17px;height:17px;margin-left:4px;transition:transform .2s;display:inline-block}.portfolio-module__XbO6Ca__project:hover h3 a,.portfolio-module__XbO6Ca__project:focus-within h3 a{color:var(--accent)}.portfolio-module__XbO6Ca__project:hover h3 svg{transform:translate(2px,-2px)}.portfolio-module__XbO6Ca__projectBody>p{margin-top:8px;font-size:14px;line-height:21px}.portfolio-module__XbO6Ca__thumbnail{margin:0;padding-top:4px}.portfolio-module__XbO6Ca__thumbnail img{object-fit:cover;object-position:top;border:2px solid #94a3b833;border-radius:4px;width:128px;height:74px;transition:border-color .2s;display:block}.portfolio-module__XbO6Ca__project:hover .portfolio-module__XbO6Ca__thumbnail img{border-color:#94a3b873}.portfolio-module__XbO6Ca__thumbnail figcaption{color:#94a3b8;margin-top:5px;font-size:9px;line-height:14px}.portfolio-module__XbO6Ca__projectBody>.portfolio-module__XbO6Ca__prototypeStatus{color:#94a3b8;font-size:11px;line-height:17px}.portfolio-module__XbO6Ca__tags{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.portfolio-module__XbO6Ca__tags li{color:var(--accent);background:#3b82f621;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:500;line-height:20px}.portfolio-module__XbO6Ca__moreLink,.portfolio-module__XbO6Ca__resumeLink{color:var(--ink);align-items:center;gap:6px;margin-top:40px;font-size:16px;font-weight:500;line-height:24px;display:inline-flex}.portfolio-module__XbO6Ca__resumeLink{margin-top:16px;font-size:14px}.portfolio-module__XbO6Ca__moreLink svg,.portfolio-module__XbO6Ca__resumeLink svg,.portfolio-module__XbO6Ca__emailLink svg{width:18px;height:18px;transition:transform .2s}.portfolio-module__XbO6Ca__moreLink:hover,.portfolio-module__XbO6Ca__resumeLink:hover,.portfolio-module__XbO6Ca__emailLink:hover{color:var(--accent)}.portfolio-module__XbO6Ca__moreLink:hover svg,.portfolio-module__XbO6Ca__resumeLink:hover svg,.portfolio-module__XbO6Ca__emailLink:hover svg{transform:translate(2px,-2px)}.portfolio-module__XbO6Ca__row{grid-template-columns:128px minmax(0,1fr);gap:24px;padding:20px 0;display:grid}.portfolio-module__XbO6Ca__rowLabel{text-transform:uppercase;letter-spacing:.025em;color:#94a3b8;padding-top:4px;font-size:12px;font-weight:600;line-height:20px}.portfolio-module__XbO6Ca__row .portfolio-module__XbO6Ca__tags{margin:0}.portfolio-module__XbO6Ca__row h3{color:var(--ink);font-size:16px;font-weight:500;line-height:24px}.portfolio-module__XbO6Ca__educationProgram{color:#cbd5e1;margin-top:3px;font-size:14px;line-height:21px}.portfolio-module__XbO6Ca__credential{margin-top:8px;font-size:14px;line-height:21px}.portfolio-module__XbO6Ca__contactIntro{margin-bottom:20px}.portfolio-module__XbO6Ca__emailLink{color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:6px;font-weight:500;display:inline-flex}.portfolio-module__XbO6Ca__page section:last-of-type .portfolio-module__XbO6Ca__moreLink{width:fit-content;margin-top:16px;display:flex}.portfolio-module__XbO6Ca__footer{color:#64748b;max-width:400px;font-size:14px;line-height:20px}.portfolio-module__XbO6Ca__footer a{color:#94a3b8}.portfolio-module__XbO6Ca__footer a:hover{color:var(--accent)}@media (hover:hover){.portfolio-module__XbO6Ca__projectList:hover .portfolio-module__XbO6Ca__project:not(:hover):not(:focus-within){opacity:.55}}@media (max-width:1199px) and (min-width:1024px){.portfolio-module__XbO6Ca__avatar{width:56px;height:56px;right:24px}.portfolio-module__XbO6Ca__project,.portfolio-module__XbO6Ca__row{grid-template-columns:110px minmax(0,1fr);gap:20px}.portfolio-module__XbO6Ca__thumbnail img{width:110px;height:65px}}@media (max-width:1023px){.portfolio-module__XbO6Ca__layout{max-width:864px;padding:48px;display:block}.portfolio-module__XbO6Ca__header{width:100%;height:auto;min-height:0;max-height:none;padding:0;position:relative}.portfolio-module__XbO6Ca__avatar{width:56px;height:56px;top:0;right:0}.portfolio-module__XbO6Ca__header h1{font-size:48px;line-height:48px}.portfolio-module__XbO6Ca__nav{display:none}.portfolio-module__XbO6Ca__socials{margin-top:32px}.portfolio-module__XbO6Ca__main{width:100%;padding:96px 0 0}.portfolio-module__XbO6Ca__section{margin-bottom:64px;scroll-margin-top:24px}.portfolio-module__XbO6Ca__sectionHeading{z-index:2;clip:auto;white-space:normal;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:auto;height:auto;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;background:#0f172aed;margin:0 -48px 32px;padding:16px 48px;font-size:14px;font-weight:700;line-height:20px;position:sticky;top:0;overflow:visible}.portfolio-module__XbO6Ca__projectList{margin-top:-24px}.portfolio-module__XbO6Ca__footer{margin-bottom:24px}}@media (max-width:767px){.portfolio-module__XbO6Ca__layout{padding:48px 24px}.portfolio-module__XbO6Ca__header h1{font-size:36px;line-height:40px}.portfolio-module__XbO6Ca__header h2{font-size:18px;line-height:28px}.portfolio-module__XbO6Ca__sectionHeading{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.portfolio-module__XbO6Ca__projectList{margin:0}.portfolio-module__XbO6Ca__project{border-radius:0;padding:0 0 32px}.portfolio-module__XbO6Ca__project:hover,.portfolio-module__XbO6Ca__project:focus-within{box-shadow:none;background:0 0}}@media (max-width:639px){.portfolio-module__XbO6Ca__project{flex-direction:column-reverse;gap:16px;padding-bottom:48px;display:flex}.portfolio-module__XbO6Ca__thumbnail img{width:200px;height:115px}.portfolio-module__XbO6Ca__thumbnail figcaption{font-size:10px}.portfolio-module__XbO6Ca__row{grid-template-columns:1fr;gap:8px;padding:16px 0}.portfolio-module__XbO6Ca__rowLabel{padding:0}.portfolio-module__XbO6Ca__spotlight{background:radial-gradient(600px at 15% 5%,#1d4ed81a,#0000 80%)}}@media (prefers-reduced-motion:reduce){.portfolio-module__XbO6Ca__page *,.portfolio-module__XbO6Ca__page :before{scroll-behavior:auto;transition:none}}
