@font-face{font-family:EntranceGlyphius;src:url('/fonts/glyphius-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:GalleryGrotesk;src:url('/fonts/grotesk-regular.woff2') format('woff2');font-weight:400;font-display:swap}
html.portfolio-intro-locked,html.portfolio-intro-locked body{overflow:hidden!important}
#portfolio-entrance-cover{position:fixed;inset:0;background:#f3f3ec;z-index:2147483644;display:flex;align-items:center;justify-content:center;color:#2c3f65;font:400 clamp(90px,16vw,280px)/.86 EraScript,cursive;text-align:center;letter-spacing:0;pointer-events:auto}
#portfolio-entrance-cover>span{opacity:1;padding:.2em .62em .2em .22em;transform:rotate(-8deg);font-synthesis:none}
#portfolio-entrance-root{position:fixed;inset:0;z-index:2147483645;pointer-events:none}
#portfolio-entrance-skip{position:fixed;right:24px;bottom:24px;z-index:2147483646;color:#2c3f65;font:9px/1.2 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;border:0;border-bottom:1px solid #2c3f6566;background:none;padding:6px 0;cursor:pointer}
#portfolio-entrance-skip:hover{color:#17233b;border-color:#17233b}
#portfolio-entrance-skip:focus-visible{outline:2px solid #2c3f65;outline-offset:6px}
.huy-project-showcase{position:relative;height:clamp(650px,82vh,920px);width:100%;overflow:visible;text-align:left;color:#f0f0ec;font-family:GalleryGrotesk,Inter,sans-serif;isolation:isolate;outline:none;border:0}
.huy-project-showcase:focus-visible{outline:1px solid #d4af37;outline-offset:4px}
#huy-project-gallery{position:absolute;inset:-70px 0;z-index:1;touch-action:pan-y;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.12) 6%,#000 24%,#000 76%,rgba(0,0,0,.12) 94%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.12) 6%,#000 24%,#000 76%,rgba(0,0,0,.12) 94%,transparent 100%)}
.huy-project-meta{position:absolute;left:2%;top:39%;max-width:23%;font-size:11px;line-height:1.3;z-index:3;pointer-events:none}
.huy-project-meta dl{margin:0}.huy-project-meta dt{font-size:10px;color:#8b8b84;margin-bottom:7px}.huy-project-meta dd{margin:0 0 24px}
.huy-project-information{position:absolute;right:2%;top:19%;width:27%;height:58%;z-index:4;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;text-align:center}
.huy-project-ghost{opacity:.18;color:#bdbbb1;font-family:EntranceGlyphius,serif;text-transform:uppercase;font-size:22px;line-height:1.1;letter-spacing:-.03em}
.huy-project-active{pointer-events:auto;padding:20px 0}.huy-project-active .huy-category{font-size:10px;color:#99978e;line-height:1.2;margin:0 0 10px}
.huy-project-active h3{font:400 clamp(21px,2.4vw,32px)/.97 EntranceGlyphius,serif;text-transform:uppercase;letter-spacing:-.035em;margin:0;color:#f0f0ec}
.huy-project-active .huy-dash{color:#d4af37;display:block;padding:8px 0}
.huy-project-active .huy-summary{font-size:11px;line-height:1.3;color:#bab8af;margin:0 auto;max-width:260px}
.huy-project-open{font-family:GalleryGrotesk,Inter,sans-serif;font-size:11px;display:inline-flex;align-items:center;gap:22px;border:0;border-bottom:1px solid #77705b;border-radius:0;background:none;color:#f1f1ec;margin-top:16px;padding:0 0 5px;cursor:pointer}
.huy-project-open span{color:#d4af37}.huy-project-open:hover{color:#edd575}
.huy-project-count{position:absolute;left:12%;bottom:48px;z-index:3;pointer-events:none}.huy-project-count>span{display:block;font-size:10px;line-height:1.2;color:#8b8b84;margin-bottom:10px}
.huy-project-count>div{display:flex;gap:18px;align-items:flex-start}.huy-project-count b{font:400 clamp(100px,10vw,145px)/.74 EntranceGlyphius,serif;letter-spacing:-.08em;color:#f0f0ec}.huy-project-count small{font-size:10px;padding-top:3px;color:#bab8af}
.huy-gallery-bottom{position:absolute;left:2%;right:2%;bottom:18px;display:flex;align-items:center;justify-content:space-between;z-index:5;font-size:10px;color:#95938a;pointer-events:none}.huy-gallery-bottom>*{pointer-events:auto}
.huy-gallery-controls{display:flex;gap:7px;align-items:center}.huy-gallery-controls button{font:400 15px/1 GalleryGrotesk,Inter,sans-serif;border:1px solid #55503f;background:none;color:#f1f1ec;border-radius:50%;width:28px;height:28px;cursor:pointer}.huy-gallery-controls button:hover{color:#edd575;border-color:#d4af37}
.huy-gallery-controls .huy-gallery-continue{width:auto;border:0;border-radius:0;font-size:10px;margin-left:15px;color:#aaa69a}
.huy-project-showcase button:focus-visible{outline:1px solid #d4af37;outline-offset:5px}
#huy-gallery-records{display:none!important}.huy-gallery-fallback{position:absolute;inset:20% 32% 18%;z-index:3;display:grid;gap:15px;align-content:center}.huy-gallery-fallback button{padding:0;border:0;background:none;color:#fff;text-align:left;font:12px/1.2 Inter,sans-serif;cursor:pointer}.huy-gallery-fallback img{width:100%;height:130px;object-fit:cover;margin-bottom:10px}
#portfolio-entrance-cover[hidden],#portfolio-entrance-root[hidden],#portfolio-entrance-skip[hidden],.huy-gallery-fallback[hidden]{display:none!important}
@media(max-width:767px){.huy-project-showcase{height:740px}#huy-project-gallery{inset:-45px 0;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 22%,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 22%,#000 70%,transparent 100%)}.huy-project-meta{display:none}.huy-project-information{top:auto;bottom:85px;right:5%;width:51%;height:auto;text-align:right}.huy-project-ghost{display:none}.huy-project-active{padding:0}.huy-project-active h3{font-size:23px}.huy-project-active .huy-category{font-size:9px;margin-bottom:6px}.huy-project-active .huy-summary{font-size:10px;max-width:205px;margin-right:0}.huy-project-active .huy-dash{padding:5px 0}.huy-project-open{font-size:10px;margin-top:13px}.huy-project-count{left:5%;bottom:90px}.huy-project-count>span{font-size:9px;max-width:80px}.huy-project-count b{font-size:95px}.huy-project-count>div{gap:12px}.huy-gallery-bottom{left:5%;right:5%;bottom:20px;font-size:9px;align-items:flex-end}.huy-gallery-bottom>span{max-width:100px}.huy-gallery-controls button{width:30px;height:30px}.huy-gallery-controls .huy-gallery-continue{font-size:9px;margin-left:8px}.huy-gallery-fallback{inset:12% 13% 36%}.huy-gallery-fallback img{height:110px}#portfolio-entrance-skip{right:20px;bottom:20px;font-size:11px}}
@media(prefers-reduced-motion:reduce){#portfolio-entrance-cover,#portfolio-entrance-root,#portfolio-entrance-skip{display:none!important}}

#huy-image-position{display:block;margin-top:5px;font-size:9px;letter-spacing:.05em;color:#77756c}

/* Feathered glass at the two section joins; no solid divider or color band. */
#main-portfolio #about,#main-portfolio #education,#main-portfolio #skills{position:relative;isolation:isolate;background:transparent;border-block:0}
#main-portfolio #education::before,#main-portfolio #education::after{content:"";position:absolute;left:0;right:0;height:clamp(160px,18vw,240px);pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 48% 50%,rgba(221,227,235,.04),rgba(221,227,235,.012) 37%,transparent 74%);-webkit-backdrop-filter:blur(24px) saturate(108%);backdrop-filter:blur(24px) saturate(108%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 45%,#000 55%,transparent);mask-image:linear-gradient(180deg,transparent,#000 45%,#000 55%,transparent)}
#main-portfolio #education::before{top:clamp(-120px,-9vw,-80px)}
#main-portfolio #education::after{bottom:clamp(-120px,-9vw,-80px)}
@media(prefers-reduced-transparency:reduce){#main-portfolio #education::before,#main-portfolio #education::after{-webkit-backdrop-filter:none;backdrop-filter:none;background:none}}

@media(max-width:767px){#portfolio-entrance-cover{font-size:25.5vw}}
