:root{color:#f8fafc;background:#101314;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 8% 8%,rgba(45,212,191,.16),transparent 24rem),radial-gradient(circle at 84% 18%,rgba(249,115,22,.12),transparent 24rem),linear-gradient(135deg,#101314,#17201e 42%,#1e2522)}button,a{font:inherit}.page-shell{width:min(1440px,calc(100% - 48px));margin:0 auto;padding:32px 0}.glass-panel{border:1px solid rgba(255,255,255,.16);background:#141a19ad;box-shadow:0 24px 80px #00000059;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.hero-panel{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:32px;align-items:center;min-height:340px;padding:28px;border-radius:24px}.portrait-card{position:relative;display:grid;place-items:center;min-height:280px;overflow:hidden;border-radius:18px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(145deg,#155e7575,#14532d57)}.portrait-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 80%);mask-image:linear-gradient(to bottom,black,transparent 80%)}.portrait-initials{display:grid;place-items:center;width:132px;height:132px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#ecfeff;font-size:46px;font-weight:800}.portrait-card span{position:absolute;bottom:18px;color:#ffffffc2;font-size:14px}.intro-copy{max-width:760px}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;color:#99f6e4;font-size:13px;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:16px;font-size:clamp(42px,6vw,92px);line-height:.95;letter-spacing:0}.intro-copy p:last-child,.detail-header p{margin-bottom:0;color:#ffffffc7;font-size:20px;line-height:1.55}.work-panel{margin-top:22px;padding:20px;border-radius:24px}.tabs{display:flex;gap:10px;overflow-x:auto;padding:4px 4px 16px}.project-tab{flex:0 0 auto;min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#ffffffc7;background:#ffffff14;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.project-tab:hover,.project-tab.active{border-color:var(--accent);color:#fff;background:color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.08));transform:translateY(-1px)}.carousel-grid{display:grid;grid-template-columns:54px 1fr 54px;gap:14px;align-items:center}.arrow-button{display:grid;place-items:center;width:54px;aspect-ratio:1;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#fff;background:#ffffff14;cursor:pointer}.showcase-frame{position:relative;width:100%;aspect-ratio:21 / 9;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 42%,rgba(255,255,255,.2));border-radius:22px;padding:0;color:#fff;background:#050807;cursor:pointer}.showcase-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.04);transition:transform .26s ease}.showcase-frame:hover img{transform:scale(1.018)}.showcase-overlay{position:absolute;inset:auto 0 0;padding:28px;text-align:left;background:linear-gradient(to top,rgba(0,0,0,.9),rgba(0,0,0,.1),transparent)}.showcase-overlay span{color:var(--accent);font-weight:800}.showcase-overlay h2{margin:6px 0 8px;font-size:clamp(30px,4vw,56px);line-height:1}.showcase-overlay p{max-width:820px;margin-bottom:16px;color:#ffffffd1;line-height:1.45}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag-row span{padding:6px 10px;border-radius:999px;color:#fff;background:#ffffff1f;font-size:13px}.detail-shell{padding-top:18px}.top-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;border-radius:18px}.nav-brand,.nav-links a,.open-link{color:#fff;text-decoration:none}.nav-brand,.open-link{display:inline-flex;align-items:center;gap:8px;font-weight:800}.nav-links{display:flex;gap:8px;overflow-x:auto}.nav-links a{padding:8px 10px;border-radius:999px;color:#ffffffb3;white-space:nowrap}.nav-links a.current{color:#fff;background:#ffffff1f}.detail-panel{margin-top:18px;padding:20px;border-radius:24px}.detail-header{display:flex;justify-content:space-between;gap:24px;margin-bottom:18px}.detail-header h1{margin-bottom:10px;font-size:clamp(36px,5vw,72px)}.open-link{align-self:flex-start;min-height:42px;padding:0 14px;border:1px solid var(--accent);border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.08))}.browser-frame{overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 35%,rgba(255,255,255,.16));border-radius:20px;background:#070807}.browser-toolbar{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff0f}.browser-toolbar span{width:10px;height:10px;border-radius:50%;background:var(--accent)}.browser-toolbar code{margin-left:8px;color:#ffffffb8}iframe,.fallback-frame{display:block;width:100%;height:min(74vh,820px);border:0}.fallback-frame{position:relative}.fallback-frame img{width:100%;height:100%;object-fit:cover;opacity:.5}.fallback-frame div{position:absolute;inset:auto 24px 24px;padding:18px;border-radius:16px;background:#000000b8}.detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.detail-meta div{padding:16px;border-radius:16px;background:#ffffff12}.detail-meta strong,.detail-meta span{display:block}.detail-meta strong{margin-bottom:6px;color:var(--accent)}.detail-meta span{color:#ffffffc7;word-break:break-word}@media(max-width:900px){.page-shell{width:min(100% - 28px,1440px)}.hero-panel,.detail-header,.detail-meta{grid-template-columns:1fr}.hero-panel,.detail-header{display:grid}.carousel-grid{grid-template-columns:1fr}.arrow-button{display:none}.showcase-frame{aspect-ratio:4 / 3}.top-nav{align-items:flex-start;flex-direction:column}}
