.scroll-progress{position:fixed;top:0;left:0;width:0;height:2px;background:var(--fg);z-index:1000;pointer-events:none;animation:scroll-progress-grow linear;animation-timeline:scroll(root)}@keyframes scroll-progress-grow{0%{width:0%}to{width:100%}}:root{--bg: #f7f7f7;--fg: #111111;--fg-muted: #5c5c5c;--fg-faint: #aaaaaa;--border: #e2e2e2;--accent: #2BE0F7;--surface: #efefef;--surface-hover: #e8e8e8;--font-sans: "DM Sans", ui-sans-serif, system-ui, sans-serif;--font-serif: "Crimson Pro", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--sp-32: 128px;--max-content: 760px;--max-page: 1440px;view-transition-name:none}[data-theme=dark]{--bg: #0a0a0a;--fg: #ebebeb;--fg-muted: #888888;--fg-faint: #555555;--border: #1e1e1e;--accent: #2BE0F7;--surface: #161616;--surface-hover: #1c1c1c}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:clip;background-color:var(--bg);color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease}a{text-decoration:none;color:inherit}.mt-8{margin-top:var(--sp-8)}.mt-12{margin-top:var(--sp-12)}.container{padding-inline:var(--sp-6)}.container--content{max-width:var(--max-content);margin-inline:auto}.page-shell{min-height:100vh;position:relative;background:var(--bg);color:var(--fg);view-transition-name:none}.page-main{max-width:var(--max-page);margin:0 auto;padding:4rem clamp(1.5rem,6vw,6rem) 8rem;overflow:clip;animation:page-in .7s cubic-bezier(.2,.8,.2,1) both;view-transition-name:main}.theme-toggle{width:32px;height:32px;border:0;border-radius:0;background:transparent;color:var(--fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s ease;transform:translateZ(0);backface-visibility:hidden}.theme-toggle:hover{opacity:.5}.nav-shell{position:fixed;top:0;left:0;right:0;z-index:50;background:transparent}.nav-shell:before{content:"";position:absolute;inset:0;z-index:-1;background:color-mix(in oklch,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 100%);mask-image:linear-gradient(to bottom,black 0%,transparent 100%);pointer-events:none;opacity:0;transition:opacity .2s ease}.nav-shell.scrolled:before{opacity:1}.nav-inner{height:52px;max-width:var(--max-page);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.5rem,6vw,6rem)}.nav-brand{display:inline-flex;align-items:center;gap:.6rem}.nav-mark{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#fff;padding:.3rem;transition:opacity .2s ease;text-decoration:none}.nav-mark:hover{opacity:.7}.nav-links{display:flex;align-items:center;gap:var(--sp-6);font-size:.8rem;letter-spacing:.03em}.nav-link{position:relative;color:var(--fg-muted);text-decoration:none;transition:color .2s ease}.nav-link:hover,.nav-link[aria-current=page]{color:var(--fg)}.nav-actions,.nav-desktop-actions{display:flex;align-items:center;gap:.75rem}.nav-switch{font-size:.8rem;letter-spacing:.03em;color:var(--fg-muted);text-decoration:none;transition:color .2s ease}.nav-switch:hover{color:var(--fg)}.nav-menu-toggle{display:none;background:transparent;border:none;padding:0;cursor:pointer;width:32px;height:32px;color:var(--fg)}.nav-mobile-menu{position:fixed;inset:52px 0 0;overflow-y:auto;background:var(--bg);z-index:49;display:flex;flex-direction:column}.nav-mobile-links{flex:1;display:flex;flex-direction:column}.nav-mobile-link{flex:1;display:flex;align-items:center;padding:var(--sp-5) clamp(1.5rem,6vw,6rem);font-size:2rem;font-family:var(--font-serif);letter-spacing:.01em;color:var(--fg-muted);text-decoration:none;transition:color .2s ease,background .2s ease}.nav-mobile-link:focus{outline:none}.nav-mobile-link:hover{color:var(--fg);background:var(--surface)}.nav-mobile-link[aria-current=page]{color:var(--fg)}.nav-mobile-actions{display:flex;border-top:1px solid var(--border)}.nav-mobile-action-btn{flex:1;display:flex;align-items:center;justify-content:center;font-size:.8rem;letter-spacing:.03em;color:var(--fg-muted);text-decoration:none;background:transparent;border:none;border-radius:0;cursor:pointer;transition:color .2s ease,background .2s ease;font-family:inherit;line-height:1;padding:var(--sp-6) 0}.nav-mobile-action-btn:hover{color:var(--fg);background:var(--surface)}.nav-mobile-actions-sep{width:1px;background:var(--border);align-self:center;height:1.2rem}.hero{min-height:100svh;display:flex;align-items:stretch;padding-top:var(--sp-32);padding-bottom:var(--sp-24)}.hero__location{margin:0 0 var(--sp-6);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-faint)}.hero__name{margin:0 0 var(--sp-5);font-family:var(--font-serif);font-weight:400;letter-spacing:-.01em;line-height:1;font-size:clamp(2.5rem,6vw,4.5rem);font-optical-sizing:auto}.hero__headline,.hero__body{max-width:460px;color:var(--fg-muted);font-size:.875rem;line-height:1.7}.hero__cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 var(--sp-5);border:1px solid var(--fg);background:var(--fg);color:var(--bg)!important;font-family:var(--font-serif);font-size:1.15rem;font-weight:400;line-height:1;letter-spacing:0;text-decoration:none;transition:opacity .15s ease}.hero__cta:hover{opacity:.82}.hero__cta-label{color:currentColor;line-height:1}.hero__cta-label--mobile{display:none}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.hero__cta--ai{background:transparent;color:var(--fg)!important;font-family:var(--font-sans);font-size:.9rem;letter-spacing:.02em}.footer-shell{padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,6vw,6rem);background:var(--bg);view-transition-name:none}.footer-grid{max-width:var(--max-page);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:clamp(4rem,10vw,8rem)}.footer-logo-section{flex:0 0 auto}.logo-container{position:relative;width:clamp(170px,20vw,228px);height:clamp(170px,20vw,228px)}.footer-logo{position:absolute;top:50%;left:50%;width:clamp(68px,7.5vw,90px);height:clamp(68px,7.5vw,90px);transform:translate(-50%,-50%);border-radius:50%;background:#fff;display:grid;place-items:center;padding:.9rem;text-decoration:none;transition:opacity .2s ease}.footer-logo:hover{opacity:.8}.footer-logo img,.logo-image{width:100%;height:100%;object-fit:contain}.footer-meta{display:flex;gap:clamp(2rem,5vw,3.5rem);flex-wrap:wrap;justify-content:flex-end}.footer-line{display:grid;gap:.3rem}.footer-line .label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--fg-faint)}.footer-line a{color:var(--fg);text-decoration:none;font-size:.85rem;transition:color .2s ease}.footer-line span{color:var(--fg);font-size:.85rem}.empty-state{font-size:.875rem;color:var(--fg-muted);padding:var(--sp-16) 0}.entry-label{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fg-faint);font-family:var(--font-mono)}.action-link{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;font-size:.8rem;white-space:nowrap;color:var(--fg);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;transition:opacity .15s ease}.action-link:hover{opacity:.5}.mono-label{font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--fg-faint);font-family:var(--font-mono);margin-bottom:1.5rem}.prose{font-size:1.05rem;line-height:1.7;color:var(--fg-muted)}.prose h2{font-size:clamp(1.5rem,1.1rem + .8vw,2.2rem);margin-top:2rem;margin-bottom:.6rem;color:var(--fg)}.prose p+p{margin-top:1rem}.prose ul{margin-top:1rem;padding-left:1.2rem}.footer-spin-text{width:100%;height:100%;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fg)}.spin-letter{position:absolute;top:50%;left:50%;display:inline-block}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-animate{white-space:pre-wrap}button{cursor:pointer}input,textarea{border-radius:0}::view-transition-old(main),::view-transition-new(main){animation:none;mix-blend-mode:normal}::view-transition-old(main){animation:fade-out .18s ease both}::view-transition-new(main){animation:fade-in .18s ease both}@supports (view-transition-name: page){.page-main{animation:none}}@media(prefers-reduced-motion:reduce){::view-transition-old(main),::view-transition-new(main){animation:none}}@keyframes page-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.page-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:400;line-height:1;letter-spacing:-.02em;color:var(--fg);max-width:20ch}.page-title-serif{font-family:var(--font-serif);font-weight:400;letter-spacing:-.01em;font-optical-sizing:auto}.illustration{display:block;width:100%;height:auto;margin-bottom:var(--sp-12)}.blog-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-6);margin-bottom:var(--sp-2)}.blog-list{margin-top:var(--sp-16)}.blog-entry{display:grid;grid-template-columns:30rem 1fr;gap:var(--sp-6);align-items:start;padding:var(--sp-6) 0;text-decoration:none;color:inherit;transition:opacity .2s ease}.blog-entry:hover{opacity:.6}.blog-entry__image{display:block;aspect-ratio:16 / 9;overflow:hidden;border-radius:0}.blog-entry__img{width:100%;height:100%;object-fit:cover;display:block}.blog-entry__body{display:flex;flex-direction:column;gap:.3rem;min-width:0}.blog-entry__title{font-family:var(--font-serif);font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:400;line-height:1.2;letter-spacing:-.01em;color:var(--fg);font-optical-sizing:auto}.blog-entry__description{font-size:.8rem;color:var(--fg-muted);line-height:1.6}.blog-entry__tags{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:.2rem}.blog-entry__tag{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-mono);color:var(--fg-faint)}.blog-entry__date{font-family:var(--font-mono);font-size:.65rem;color:var(--fg-faint);letter-spacing:.08em}@media(max-width:640px){.blog-entry{grid-template-columns:1fr;gap:var(--sp-4)}.blog-entry__image{aspect-ratio:16 / 9;max-width:100%}}.post-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1;letter-spacing:-.02em;font-optical-sizing:auto;color:var(--fg);max-width:20ch;margin:var(--sp-5) 0 var(--sp-8)}.post-header{margin-bottom:clamp(4rem,8vw,6rem)}.post-meta-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-5)}.post-date{margin-bottom:0}.post-description{font-size:1.2rem;line-height:1.6;color:var(--fg-muted);margin:0 0 var(--sp-6);max-width:52ch}.post-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.post-tag{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-mono);color:var(--fg-faint)}.portable-hr{display:block;height:clamp(2rem,4vw,3rem)}.portable-table-wrap{overflow-x:auto;margin:2rem 0}.portable-table{width:100%;border-collapse:collapse;font-size:.875rem;font-family:var(--font-mono);line-height:1.5}.portable-table th,.portable-table td{padding:.5rem 1rem .5rem 0;text-align:left;vertical-align:top}.portable-table th{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--fg-faint);padding-bottom:.75rem}.portable-table td{color:var(--fg-muted)}.portable-table tbody tr:first-child td{padding-top:.75rem}.post-tldr{margin-bottom:clamp(3rem,6vw,5rem)}.tldr-label{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-family:var(--font-mono);color:var(--fg);margin:0 0 .5rem}.tldr-text{font-size:1rem;line-height:1.7;color:var(--fg-muted);margin:0}.post-content{font-size:1.05rem;line-height:1.8}.post-content p{margin:2rem 0;color:var(--fg)}.post-content h2{font-family:var(--font-serif);font-size:1.8rem;font-weight:400;margin:3rem 0 1.5rem;color:var(--fg);letter-spacing:-.01em}.post-content h3{font-size:1.25rem;font-weight:600;margin:2.5rem 0 1rem;color:var(--fg)}.post-content ul,.post-content ol{margin:2rem 0;padding-left:2rem}.post-content li{margin:.8rem 0}.post-content code{font-family:var(--font-mono);font-size:.9em;background:var(--surface);padding:.2em .4em;color:var(--fg)}.post-content pre{background:var(--surface)!important;padding:1.5rem;overflow-x:auto;margin:2rem 0}.post-content pre code{background:none;padding:0;color:inherit;font-size:.9rem}.post-content blockquote{padding-left:1.5rem;margin:2rem 0;color:var(--fg-muted);font-style:italic}.post-content a{color:var(--fg);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;transition:opacity .15s ease}.post-content a:hover{opacity:.5}.post-footer{margin-top:clamp(4rem,8vw,6rem)}.work-detail-links{margin-top:3rem;display:flex;gap:1rem;flex-wrap:wrap}.related-posts{margin-top:clamp(4rem,8vw,6rem)}.ai-dropdown{position:relative}.ai-dropdown__trigger{list-style:none;cursor:pointer;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-mono);color:var(--fg-muted);transition:opacity .15s ease;user-select:none}.ai-dropdown__trigger::-webkit-details-marker{display:none}.ai-dropdown__trigger::marker{display:none}.ai-dropdown__trigger:hover{opacity:.5}.ai-dropdown__menu{position:absolute;right:0;bottom:calc(100% + .5rem);background:var(--bg);border:1px solid var(--border);min-width:130px;display:flex;flex-direction:column;z-index:10}.ai-dropdown__item{font-size:.7rem;letter-spacing:.06em;font-family:var(--font-mono);color:var(--fg-muted);text-decoration:none;padding:.55rem .85rem;transition:background .12s ease,color .12s ease;white-space:nowrap}.ai-dropdown__item:hover{background:var(--surface);color:var(--fg)}@media(max-width:859px){.post-title{font-size:clamp(2rem,8vw,3rem)}.post-header{margin-bottom:clamp(2rem,8vw,4rem)}.post-date{font-size:.75rem;margin-bottom:var(--sp-4)}.post-description{font-size:.95rem}.post-content{font-size:1rem}.post-content p{margin:1.5rem 0}.post-content h2{font-size:1.5rem;margin:2.5rem 0 1rem}.post-content h3{font-size:1.15rem;margin:2rem 0 .8rem}.post-content pre{padding:1rem;font-size:.85rem}}@media(max-width:640px){.post-content pre{font-size:.8rem}}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:var(--sp-16);padding-top:0}.pagination__info{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;color:var(--fg-faint)}.pagination__btn{font-size:.8rem;color:var(--fg-muted);text-decoration:none;transition:color .2s ease}.pagination__btn:hover{color:var(--fg)}.hero__left{flex:0 0 55%;display:flex;flex-direction:column;justify-content:center}.hero__right{flex:1;display:flex;align-items:center;justify-content:flex-end;overflow:hidden}.hero__illustration{display:block;width:auto;height:100%;max-width:100%;max-height:80vh;margin-bottom:0;object-fit:contain;object-position:right center;pointer-events:none;user-select:none}@media(max-width:640px){.hero{flex-direction:column;justify-content:stretch;min-height:calc(100svh - 3rem);gap:var(--sp-10);padding-top:var(--sp-20);padding-bottom:var(--sp-16)}.hero__left{flex:1;display:grid;grid-template-rows:1fr auto 1fr auto;max-width:32rem;min-height:calc(100svh - 3rem - var(--sp-20) - var(--sp-16));justify-content:stretch}.hero__copy{grid-row:2}.hero__location{margin-bottom:var(--sp-6);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em}.hero__name{max-width:7ch;margin-bottom:var(--sp-6);font-size:3.85rem;line-height:.92;letter-spacing:0}.hero__headline{max-width:18rem;color:var(--fg);font-size:1.15rem;line-height:1.3}.hero__body{max-width:29ch;margin-top:var(--sp-5);font-size:.95rem;line-height:1.65}.hero__right{display:none}.hero__cta-wrap{grid-row:4;align-self:end;margin-top:0;padding-top:var(--sp-12)}.hero__cta-wrap .mt-8{margin-top:0}.hero__cta{width:100%}.hero__actions{flex-direction:column}.hero__cta-label--desktop{display:none}.hero__cta-label--mobile{display:inline}}.prose-image{margin-block:var(--sp-12)}.prose-image img{display:block;width:100%;height:auto}.prose-image__caption{margin-top:var(--sp-4);font-size:.75rem;color:var(--fg-faint);text-align:center}.prose-code{margin-block:var(--sp-8)}.prose-code__filename{padding:.25rem .75rem;font-size:.75rem;font-family:var(--font-mono);background:var(--surface);border-bottom:1px solid var(--border);border-radius:0}.prose-code pre{margin:0}.page-section{padding-block:var(--sp-24)}.resume-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--sp-6);margin-bottom:var(--sp-16)}.resume-timeline{display:grid}.resume-entry{padding:var(--sp-8) 0}.entry-header{margin-bottom:var(--sp-4)}.entry-dates{margin-bottom:var(--sp-3)}.entry-title{font-family:var(--font-serif);font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:var(--fg);font-optical-sizing:auto;margin:0 0 var(--sp-1)}.entry-company{font-size:.8rem;color:var(--fg-muted);margin:0}.entry-summary{font-size:.9rem;line-height:1.65;color:var(--fg-muted);margin:var(--sp-4) 0;max-width:60ch}.entry-highlights{margin-top:var(--sp-4);display:grid;gap:var(--sp-2)}.entry-highlight{font-size:.85rem;line-height:1.6;color:var(--fg-muted);margin:0}.meta-block{display:grid;gap:var(--sp-8)}.resume-meta{margin-top:clamp(4rem,10vw,8rem);display:grid;gap:var(--sp-8)}.meta-list{list-style:none;padding:0;margin:var(--sp-3) 0 0;display:grid;gap:var(--sp-2)}.meta-list li{font-size:.85rem;line-height:1.6;color:var(--fg-muted)}@media(min-width:860px){.resume-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}.now-header{margin-bottom:var(--sp-16)}.update-date{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;color:var(--fg-faint);margin:var(--sp-4) 0 0}.now-list{display:grid;gap:var(--sp-8)}.now-item{padding:var(--sp-8) 0}.now-item-title{font-family:var(--font-serif);font-size:clamp(1.4rem,3vw,2rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:var(--fg);font-optical-sizing:auto;margin:0 0 var(--sp-4)}.now-item-summary{font-size:.9rem;line-height:1.65;color:var(--fg-muted);margin:0;max-width:60ch}.work-empty{font-size:.875rem;color:var(--fg-muted)}.work-list{margin-top:var(--sp-16)}.work-entry{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:0 var(--sp-6);align-items:center;padding:var(--sp-6) 0;color:inherit;transition:opacity .2s ease}.work-entry:hover{opacity:.6}.work-entry__link{position:absolute;inset:0;z-index:0}.work-entry__thumb{width:60px;height:60px;flex-shrink:0;overflow:hidden;position:relative;z-index:1}.work-entry__thumb-img{display:block;width:100%;height:100%;object-fit:cover}.work-entry__body{display:flex;flex-direction:column;gap:.3rem}.work-entry__title{font-family:var(--font-serif);font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:var(--fg);font-optical-sizing:auto}.work-entry__meta{font-size:.8rem;color:var(--fg-muted)}.work-entry__summary{font-size:.8rem;color:var(--fg-muted);line-height:1.6;margin-top:.35rem}.work-entry__right{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;text-align:right}.work-entry__year{font-family:var(--font-mono);font-size:.65rem;color:var(--fg-faint);letter-spacing:.08em}.work-entry__links{display:flex;flex-direction:column;gap:var(--sp-2);align-items:flex-end;position:relative;z-index:1}@media(max-width:640px){.work-entry:has(.work-entry__thumb){grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:var(--sp-3) var(--sp-4)}.work-entry__thumb{grid-row:1 / 3}.work-entry:has(.work-entry__thumb) .work-entry__right{grid-column:1 / -1;align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;gap:var(--sp-4);margin-top:var(--sp-2)}}.work-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--sp-8);margin-top:var(--sp-16)}.work-card{position:relative;display:flex;flex-direction:column;color:inherit;transition:opacity .2s ease}.work-card:hover{opacity:.6}.work-card__link{position:absolute;inset:0;z-index:1}.work-card__image{aspect-ratio:1;overflow:hidden}.work-card__image-img{display:block;width:100%;height:100%;object-fit:cover}.work-card__info{padding-top:var(--sp-4);display:flex;flex:1;flex-direction:column;gap:.2rem}.work-card__title{font-family:var(--font-serif);font-size:clamp(1rem,2.5vw,1.2rem);font-weight:400;line-height:1.2;letter-spacing:-.01em;color:var(--fg)}.work-card__meta{font-size:.8rem;color:var(--fg-muted)}.work-card__year{font-family:var(--font-mono);font-size:.65rem;color:var(--fg-faint);letter-spacing:.08em}.work-card__summary{font-size:.8rem;color:var(--fg-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-card__links{display:flex;gap:var(--sp-4);position:relative;z-index:1;margin-top:auto}@media(max-width:859px){.page-title{font-size:clamp(2rem,10vw,3.5rem)}.nav-inner{padding:0 clamp(1.5rem,6vw,2rem)}.nav-links{display:none}.nav-menu-toggle{display:block}.nav-desktop-actions{display:none}.nav-mobile-link{padding:1.25rem clamp(1.5rem,6vw,2rem);font-size:1.75rem}.nav-mark{width:2.2rem;height:2.2rem}.footer-grid{flex-direction:column;align-items:stretch;gap:0}.footer-meta{padding:clamp(2rem,8vw,3rem) clamp(1.5rem,6vw,2rem);justify-content:space-between;gap:clamp(1rem,4vw,1.5rem);border:none}.footer-logo-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(3rem,10vw,6rem) clamp(1.5rem,6vw,2rem)}.logo-container{width:clamp(240px,60vw,320px);height:clamp(240px,60vw,320px)}.footer-logo{width:clamp(96px,24vw,128px);height:clamp(96px,24vw,128px)}.footer-spin-text{font-size:.65rem;--spin-radius: 16 !important}.page-main{padding:3rem clamp(1.5rem,6vw,2rem) 6rem}.mono-label{font-size:.55rem;margin-bottom:1rem}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
