.grid-bg[data-astro-cid-ld34vbag]{pointer-events:none;z-index:0;background:radial-gradient(90% 55% at 50% 0,#ec48990f,#0000 70%);position:fixed;inset:0}.grid-bg[data-astro-cid-ld34vbag]:before{content:"";opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}.toggle[data-astro-cid-lvnbcmra]{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:9999px;transition:border-color .3s}.toggle[data-astro-cid-lvnbcmra]:hover{border-color:var(--primary-line)}.toggle-track[data-astro-cid-lvnbcmra]{align-items:center;gap:0;width:140px;height:32px;padding:.25rem;display:flex;position:relative}.toggle-label[data-astro-cid-lvnbcmra]{text-align:center;font-family:var(--font-mono);letter-spacing:.02em;color:var(--faint);z-index:2;-webkit-user-select:none;user-select:none;flex:1;font-size:.6875rem;text-decoration:none;transition:color .3s;position:relative}.toggle-label--pro[data-astro-cid-lvnbcmra]{color:var(--foreground)}.toggle-thumb[data-astro-cid-lvnbcmra]{background:var(--accent);z-index:1;border-radius:9999px;width:calc(50% - 3px);height:calc(100% - 6px);transition:transform .35s cubic-bezier(.16,1,.3,1);position:absolute;top:3px;left:3px}.toggle[data-astro-cid-lvnbcmra].is-personal .toggle-thumb[data-astro-cid-lvnbcmra]{transform:translate(100%)}.toggle[data-astro-cid-lvnbcmra].is-personal .toggle-label--pro[data-astro-cid-lvnbcmra]{color:var(--faint)}.toggle[data-astro-cid-lvnbcmra].is-personal .toggle-label--personal[data-astro-cid-lvnbcmra]{color:var(--foreground)}.hero[data-astro-cid-ge2uvauf]{margin-bottom:4rem}.hero-frame[data-astro-cid-ge2uvauf]{border:2px solid var(--primary);box-shadow:var(--glow);border-radius:2px;position:relative;overflow:hidden}.hero-bg[data-astro-cid-ge2uvauf]{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-inner[data-astro-cid-ge2uvauf]{flex-direction:column;justify-content:flex-end;gap:.875rem;min-height:clamp(230px,40vw,390px);padding:clamp(1.75rem,5vw,3.25rem) clamp(1.25rem,4vw,3rem);display:flex;position:relative}.has-image[data-astro-cid-ge2uvauf] .hero-inner[data-astro-cid-ge2uvauf]{background:linear-gradient(#140a0f33 0%,#140a0f9e 100%)}.hero-name[data-astro-cid-ge2uvauf]{letter-spacing:-.01em;color:var(--foreground);font-size:clamp(2.25rem,7vw,3.5rem);font-weight:400;line-height:1.1}.hero-tagline[data-astro-cid-ge2uvauf]{color:var(--muted-foreground);max-width:44ch;font-size:clamp(1rem,2.5vw,1.1875rem);font-style:italic;font-weight:400;line-height:1.6}.has-image[data-astro-cid-ge2uvauf] .hero-name[data-astro-cid-ge2uvauf]{color:#fff8f4;text-shadow:0 1px 14px #140a0f80}.has-image[data-astro-cid-ge2uvauf] .hero-tagline[data-astro-cid-ge2uvauf]{color:#fff0f6e0;text-shadow:0 1px 10px #140a0f80}@media (width<=480px){.hero[data-astro-cid-ge2uvauf]{margin-bottom:3rem}.hero-inner[data-astro-cid-ge2uvauf]{min-height:210px}}.content-area{flex:1}.section-block{margin-bottom:3rem}.section-label{font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.08em;color:var(--primary);margin-bottom:1rem;font-size:.6875rem;font-weight:500}.section-text{color:var(--muted-foreground);max-width:640px;font-size:1.0625rem;line-height:1.7}.section-text+.section-text{margin-top:1rem}.section-text--empty{color:var(--faint);font-style:italic}.work-list{list-style:none}.work-item{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.75rem 0;font-size:.9375rem;display:flex}.work-role{color:var(--foreground);font-size:1rem;font-weight:500}.work-divider{background:var(--border);flex:1;height:1px}.work-place{color:var(--faint);font-family:var(--font-mono);font-size:.8125rem}.work-date{color:var(--faint);font-family:var(--font-mono);margin-left:.5rem;font-size:.75rem}.project-grid{gap:.75rem;display:grid}.project-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:3px;flex-direction:column;gap:.375rem;padding:1.125rem 1.25rem;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.project-card:hover{border-color:var(--primary-line);box-shadow:var(--shadow-card-hover)}.project-name{color:var(--foreground);font-size:1.0625rem;font-weight:500}.project-desc{color:var(--muted-foreground);font-size:.9375rem;line-height:1.5}.links{gap:1.5rem;display:flex}.link{font-family:var(--font-mono);color:var(--muted-foreground);font-size:.8125rem;text-decoration:none;transition:color .2s;position:relative}.link:after{content:"";background:var(--primary);width:0;height:1px;transition:width .2s;position:absolute;bottom:-2px;left:0}.link:hover{color:var(--foreground)}.link:hover:after{width:100%}.tags [data-slot=badge]{font-family:var(--font-mono)}.tags{flex-wrap:wrap;gap:.5rem;display:flex}.writing-list{flex-direction:column;display:flex}.writing-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.875rem 0;text-decoration:none;transition:padding-left .2s;display:flex}.writing-item:hover{padding-left:.5rem}.writing-title{color:var(--foreground);font-size:1.0625rem;font-weight:400}.writing-item:hover .writing-title{color:var(--primary)}.writing-date{color:var(--faint);font-family:var(--font-mono);font-size:.75rem}.footer{border-top:1px solid var(--border);margin-top:5rem;padding-top:2rem}.footer-text{font-family:var(--font-mono);color:var(--faint);font-size:.75rem}@media (width<=480px){.work-item{flex-wrap:wrap;gap:.25rem .75rem}.work-divider{display:none}.work-role{width:100%}.links{flex-wrap:wrap;gap:1rem}}
