.site-header .project-menu-trigger{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:.6rem 0;border:0;border-radius:14px;background:transparent;color:inherit;font:inherit;font-size:15px;line-height:1.5;cursor:pointer;transition:color .24s ease,background .24s ease;pointer-events:auto}.site-header .project-menu-trigger:hover,.site-header .project-menu-trigger[aria-current],.site-header .project-menu-trigger[aria-expanded=true]{background:rgba(184,40,54,.065);color:var(--accent)}.site-header .project-menu-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-quick-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:61;width:min(760px,100%);max-height:calc(100dvh - 128px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));height:0;overflow:hidden;margin:0;padding:0;color:var(--text);background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.8);border-radius:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 18px 50px rgba(37,40,44,.13);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);opacity:1;visibility:hidden;transform:none;pointer-events:none;transition:visibility 0s .28s;scrollbar-width:thin}.project-quick-panel[data-open=true]{visibility:visible;pointer-events:auto;transition-delay:0s}.project-quick-content{padding:26px 28px 18px;max-height:inherit;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.project-quick-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.project-quick-top>p{margin:0;color:var(--muted);font-size:.8125rem;line-height:1.5;letter-spacing:.015em}.project-quick-back{display:none}.project-quick-grid{display:grid;grid-template-columns:1fr 1.1fr .9fr;column-gap:24px;align-items:start}.project-quick-panel .project-quick-group{min-width:0;margin:0;padding:0;scroll-margin:0}.project-quick-panel .project-quick-group h2{margin:0 0 12px;font-size:.8125rem;font-weight:500;letter-spacing:0;line-height:1.5;color:var(--muted)}.project-quick-group ul{list-style:none;margin:0;padding:0}.project-quick-group li{margin:0;padding:0}.project-quick-panel .project-quick-group a{display:flex;align-items:center;min-height:44px;padding:8px 10px;margin-left:-10px;border-radius:11px;font-size:1.0625rem;font-weight:500;line-height:1.35;letter-spacing:-.015em;color:var(--text);text-decoration:none;overflow-wrap:break-word;transition:background .2s ease,color .2s ease}.project-quick-panel .project-quick-group a:focus-visible,.project-quick-panel .project-quick-group a:hover{color:var(--accent);background:rgba(184,40,54,.065);text-decoration:none}.project-quick-panel a:focus-visible,.project-quick-panel button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-quick-footer{margin-top:24px;padding-top:14px;border-top:1px solid rgba(101,112,120,.18)}.project-quick-panel .project-quick-footer a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:rgba(255,255,255,.52);box-shadow:0 3px 12px rgba(37,40,44,.05);color:var(--text);font-size:.9375rem;font-weight:600;line-height:1.4;text-decoration:none;transition:background .2s ease,color .2s ease}.project-quick-panel .project-quick-footer a:hover{color:var(--accent);background:rgba(255,255,255,.86);text-decoration:none}@media(min-width:761px) and (max-width:1366px){.site-header .project-menu-trigger{font-size:1rem;padding-inline:.3rem}}@media(max-width:760px){.site-header .mobile-project-trigger{appearance:none;display:block;width:100%;min-width:0;min-height:52px;margin:0;padding:0;border:0;border-radius:14px;background:transparent;color:var(--text);font:inherit;font-size:1.25rem;line-height:1.35;text-align:left;cursor:pointer}.site-header .mobile-project-trigger .mobile-menu-surface{justify-content:space-between}.site-header .mobile-project-trigger:hover .mobile-menu-surface,.site-header .mobile-project-trigger[aria-expanded=true] .mobile-menu-surface{background:rgba(184,40,54,.065);color:var(--accent)}.site-header .mobile-project-trigger:focus-visible{outline:none}.site-header .mobile-project-trigger:focus-visible .mobile-menu-surface{outline:2px solid var(--accent);outline-offset:1px}.project-quick-panel{top:calc(100% + 12px);width:100%;max-height:calc(100dvh - 110px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:0;border-radius:24px}.project-quick-content{padding:16px 20px 18px}.project-quick-top{margin-bottom:18px;gap:8px}.project-quick-top>p{font-size:.8125rem}.project-quick-back{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;margin:0;padding:8px 12px;border:1px solid rgba(101,112,120,.16);border-radius:999px;background:rgba(255,255,255,.48);color:var(--text);font:inherit;font-size:.8125rem;line-height:1.4;cursor:pointer}.project-quick-grid{grid-template-columns:minmax(0,1fr);row-gap:20px}.project-quick-panel .project-quick-group h2{margin-bottom:6px}.project-quick-panel .project-quick-group a{font-size:1.0625rem;min-height:44px;padding-block:9px}.project-quick-panel .project-quick-group:not(:last-child){padding-bottom:14px;border-bottom:1px solid rgba(101,112,120,.14)}.project-quick-footer{margin-top:20px;padding-top:14px}.project-quick-panel .project-quick-footer a{min-height:48px;font-size:1rem}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.project-quick-panel{background:rgba(255,255,255,.96)}}@media(prefers-reduced-motion:reduce){.project-menu-trigger,.project-quick-panel,.project-quick-panel a{transition:none!important;transform:none!important}}.portfolio-shell header.site-header{z-index:60}.project-quick-curtain{position:fixed;inset:0;z-index:50;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:rgba(245,245,242,.18);backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);opacity:0;visibility:hidden;pointer-events:none;cursor:default;transition:opacity .32s ease,backdrop-filter .32s ease,-webkit-backdrop-filter .32s ease,visibility 0s .32s}.project-quick-curtain[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition-delay:0s}@media(prefers-reduced-motion:reduce){.project-quick-curtain{transition:none!important}}.mobile-glass-menu{display:none}@media(max-width:1023px){:root{--mobile-header-top:calc(12px + env(safe-area-inset-top,0px));--mobile-header-height:56px;--mobile-header-inset:max(14px,env(safe-area-inset-left,0px),env(safe-area-inset-right,0px))}.portfolio-shell header.site-header{top:var(--mobile-header-top);height:var(--mobile-header-height);width:calc(100% - 2 * var(--mobile-header-inset))}.site-header[data-mobile-open=true] .mobile-menu-toggle{opacity:0;visibility:hidden}.site-header .desktop-nav.desktop-nav-pill{display:none!important}.site-header .mobile-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:56px;height:56px;min-height:56px;flex:0 0 56px;margin-left:auto;padding:0;border:1px solid rgba(255,255,255,.86);border-radius:999px;background:var(--nav-surface);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 12px 40px #25282c12;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);pointer-events:auto}.site-header .menu-lines{display:block;width:22px;height:10px}.project-quick-curtain,.site-header .project-quick-panel{display:none!important}.mobile-glass-menu{position:fixed;inset:0;z-index:150;display:block;color:var(--text);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .08s ease .24s,visibility 0s .32s}.mobile-glass-menu[data-open=true]{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}.mobile-glass-shade{position:absolute;inset:0;background:rgba(235,238,237,.2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.mobile-glass-sheet{position:absolute;inset:max(10px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) auto max(10px,env(safe-area-inset-left,0px));max-height:calc(100dvh - max(10px,env(safe-area-inset-top,0px)) - max(10px,env(safe-area-inset-bottom,0px)));display:flex;flex-direction:column;min-height:0;border:1px solid rgba(255,255,255,.88);border-radius:30px;background:rgba(255,255,255,.64);box-shadow:inset 0 1px 0 #ffffff,0 20px 70px rgba(37,40,44,.13);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);overflow:hidden;clip-path:inset(0 0 100% 0 round 30px);transition:clip-path .32s cubic-bezier(.4,0,.6,1)}.mobile-glass-menu[data-open=true] .mobile-glass-sheet{clip-path:inset(0 0 0 0 round 30px)}.mobile-glass-toolbar{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;min-height:60px;padding:6px 78px 6px 18px;border-bottom:1px solid rgba(101,112,120,.12);gap:12px}.mobile-glass-start{display:flex;align-items:center;gap:10px;min-width:0}.mobile-glass-start>span{font-size:16px;font-weight:600;letter-spacing:-.02em}.mobile-glass-icon{appearance:none;display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;padding:12px;border:1px solid rgba(255,255,255,.88);border-radius:50%;background:rgba(255,255,255,.45);box-shadow:0 4px 14px rgba(37,40,44,.045);color:inherit;cursor:pointer}.mobile-glass-close{position:absolute;z-index:2;top:calc(var(--mobile-header-top) + (var(--mobile-header-height) - 56px) / 2);right:var(--mobile-header-inset);width:56px;height:56px;padding:16px;visibility:hidden;pointer-events:none;background:rgba(255,255,255,.58)}.mobile-glass-menu[data-open=true]>.mobile-glass-close{visibility:visible;pointer-events:auto}.mobile-glass-icon svg{display:block;width:24px;height:24px}.mobile-glass-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:26px clamp(22px,5vw,48px) 36px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.mobile-glass-main{display:flex;flex-direction:column;align-items:stretch}.mobile-glass-label{margin:0 0 16px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.1em;line-height:1.5}.mobile-glass-category,.mobile-glass-main>a{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;width:100%;padding:10px 0;margin:0;border:0;border-radius:12px;background:transparent;color:var(--text);font:inherit;font-size:clamp(26px,4vw,34px);font-weight:600;line-height:1.3;letter-spacing:-.035em;text-decoration:none;cursor:pointer;text-align:left}.mobile-glass-category svg{flex:0 0 22px;width:22px;height:22px;color:var(--muted)}.mobile-glass-hint{margin:34px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.mobile-glass-projects section{margin:30px 0 0;padding:0}.mobile-glass-projects section:first-child{margin-top:0}.mobile-glass-projects h2{margin:0 0 9px;color:var(--muted);font-size:13px;font-weight:500;letter-spacing:0;line-height:1.5}.mobile-glass-projects ul{list-style:none;margin:0;padding:0}.mobile-glass-projects li{margin:0;padding:0}.mobile-glass-projects li a{min-height:52px;padding:10px 0;border-radius:10px;color:var(--text);font-size:clamp(21px,3vw,26px);font-weight:550;line-height:1.35;letter-spacing:-.025em;overflow-wrap:break-word}.mobile-glass-all,.mobile-glass-projects li a{display:flex;align-items:center;text-decoration:none}.mobile-glass-all{justify-content:space-between;gap:16px;min-height:54px;padding:12px 18px;border:1px solid rgba(255,255,255,.9);border-radius:18px;background:rgba(255,255,255,.44);box-shadow:0 5px 18px rgba(37,40,44,.045);color:var(--accent);font-size:17px;font-weight:600;line-height:1.4}.mobile-glass-menu :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mobile-glass-menu :is(a,button):hover{color:var(--accent);text-decoration:none}.mobile-glass-main [aria-current]{color:var(--accent)}.mobile-glass-menu[data-motion=false],.mobile-glass-menu[data-motion=false] *{animation:none!important;transition:none!important;transform:none!important}}@media(min-width:761px) and (max-width:1023px){:root{--mobile-header-top:calc(20px + env(safe-area-inset-top,0px));--mobile-header-height:64px;--mobile-header-inset:max(24px,env(safe-area-inset-left,0px),env(safe-area-inset-right,0px))}.mobile-glass-sheet{inset:max(18px,env(safe-area-inset-top,0px)) max(18px,env(safe-area-inset-right,0px)) auto max(18px,env(safe-area-inset-left,0px));max-height:calc(100dvh - max(18px,env(safe-area-inset-top,0px)) - max(18px,env(safe-area-inset-bottom,0px)));border-radius:34px}.mobile-glass-toolbar{padding:10px 86px 10px 30px;min-height:68px}.mobile-glass-scroll{padding-top:34px;padding-inline:48px}.mobile-glass-category,.mobile-glass-main>a{min-height:72px}.mobile-glass-projects{max-width:650px}}@media(prefers-reduced-motion:reduce){.mobile-glass-menu,.mobile-glass-menu *{animation:none!important;transition:none!important}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.mobile-glass-sheet{background:rgba(250,251,250,.98)}}.project-quick-footer,.project-quick-group h2,.project-quick-group li,.project-quick-top{opacity:0;transform:translateY(-4px);transition:opacity .18s ease,transform .18s ease}.project-quick-panel[data-open=true] :is(.project-quick-top,.project-quick-group h2,.project-quick-group li,.project-quick-footer){opacity:1;transform:translateY(0);transition-duration:.32s;transition-delay:calc(80ms + var(--group-delay,0s) + var(--item-delay,0s))}.project-quick-panel[data-open=true] .project-quick-group li{transition-delay:calc(.12s + var(--group-delay,0s) + var(--item-delay,0s))}.project-quick-panel[data-open=true] .project-quick-footer{transition-delay:.22s}.project-quick-panel[data-motion=false],.project-quick-panel[data-motion=false] *{transition:none!important}@media(max-width:1023px){.mobile-glass-menu[data-open=true] .mobile-glass-main>*,.mobile-glass-menu[data-open=true] .mobile-glass-projects :is(h2,li){animation:apple-menu-item-in .32s ease both;animation-delay:calc(80ms + var(--group-delay,0s) + var(--item-delay,0s))}.mobile-glass-main>:nth-child(2),.mobile-glass-projects li:nth-child(2){--item-delay:20ms}.mobile-glass-main>:nth-child(3),.mobile-glass-projects li:nth-child(3){--item-delay:40ms}.mobile-glass-main>:nth-child(4),.mobile-glass-projects li:nth-child(4){--item-delay:60ms}.mobile-glass-main>:nth-child(5),.mobile-glass-projects li:nth-child(5){--item-delay:80ms}.mobile-glass-projects section:nth-child(2){--group-delay:60ms}.mobile-glass-projects section:nth-child(3){--group-delay:120ms}}@keyframes apple-menu-item-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.project-quick-panel *{transition:none!important;transform:none!important}.mobile-glass-menu *{animation:none!important;transform:none!important}}