main{padding-top:1.5rem;padding-bottom:4rem}section{margin-bottom:4rem}section:last-child{margin-bottom:0}h2{font-family:var(--font-sans);font-size:.75rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:1.5rem}.profile-hero{display:flex;flex-direction:column;gap:.75rem}.profile-name{font-family:var(--font-serif);font-size:2.25rem;font-weight:400;color:var(--color-text);margin:0;line-height:1.1;letter-spacing:-.03em}.profile-bio{font-size:1rem;color:var(--color-text-soft);margin:0;line-height:1.6}.profile-meta{display:flex;flex-wrap:wrap;gap:1.25rem}.meta-item{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-sans);font-size:.75rem;color:var(--color-text-muted)}.meta-item i{font-size:.875rem}.meta-item.status{color:var(--color-text-soft)}.status-indicator{width:6px;height:6px;background:#22c55e;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.intro-text p{font-size:1rem;color:var(--color-text-soft);margin-bottom:1rem;line-height:var(--line-height)}.intro-text p:last-child{margin-bottom:0}.intro-image{display:flex;flex-direction:column}.intro-image .quote-image{margin-bottom:1.5rem}.intro-image .quote-image img{width:100%;height:auto;object-fit:cover;border-radius:8px}.intro-image blockquote{font-family:var(--font-serif)}.intro-image blockquote p{font-size:1.125rem;line-height:1.7;color:var(--color-text);margin-bottom:.5rem}.intro-image blockquote p:last-of-type{margin-bottom:.75rem}.intro-image blockquote cite{font-family:var(--font-sans);font-size:.8125rem;font-style:normal;color:var(--color-text-muted)}.contact ul{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.contact li{display:inline-flex}.contact a,.contact .contact-popup-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-serif);font-size:.9375rem;color:var(--color-text-soft);text-decoration:none;border:none;background:none;cursor:pointer;border-bottom:1px solid var(--color-line);transition:all .2s ease;padding-bottom:2px}.contact a:hover,.contact .contact-popup-btn:hover{color:var(--color-text);border-color:var(--color-text)}.contact a i,.contact .contact-popup-btn i{font-size:1rem;color:var(--color-text-muted);transition:color .2s ease}.contact a:hover i,.contact .contact-popup-btn:hover i{color:var(--color-text)}.popup-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.popup-overlay.active{opacity:1;visibility:visible}.popup-content{position:relative;background-color:var(--color-bg);padding:2rem;max-width:320px;width:90%;text-align:center;transform:scale(.9);transition:transform .25s ease}.popup-overlay.active .popup-content{transform:scale(1)}.popup-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:1.25rem;padding:.25rem;transition:color .2s ease}.popup-close:hover{color:var(--color-text)}.popup-title{font-family:var(--font-sans);font-size:.875rem;font-weight:400;color:var(--color-text);margin-bottom:1.25rem;letter-spacing:.05em}.popup-qrcode{margin-bottom:1rem}.popup-qrcode img{width:180px;height:180px;object-fit:contain}.popup-text{font-family:var(--font-serif);font-size:.875rem;color:var(--color-text-soft);margin:0}.projects ul{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.projects li{border-bottom:none;padding:0}.projects a{display:block;text-decoration:none;border-bottom:none}.projects .project-image{width:100%;aspect-ratio:16 / 10;overflow:hidden;margin-bottom:.875rem}.projects .project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.projects a:hover .project-image img{transform:scale(1.03)}.projects .project-info{padding:0 .125rem}.projects .project-name{display:block;font-family:var(--font-serif);font-size:1.0625rem;color:var(--color-text);margin-bottom:.25rem}.projects .project-desc{display:block;font-size:.8125rem;color:var(--color-text-soft);margin-bottom:.625rem;line-height:1.5}.projects .project-tags{display:flex;flex-wrap:wrap;gap:.375rem}.projects .tag{font-family:var(--font-sans);font-size:.625rem;color:var(--color-text-muted);background:var(--color-bg-soft);padding:.125rem .375rem}.recent-posts ul{list-style:none}.recent-posts li{padding:.75rem 0;border-bottom:1px solid var(--color-line-light)}.recent-posts li:first-child{padding-top:0}.recent-posts li:last-child{border-bottom:none}.recent-posts a{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;text-decoration:none;border-bottom:none}.recent-posts .post-title{font-family:var(--font-serif);font-size:1rem;color:var(--color-text)}.recent-posts .post-date{font-family:var(--font-sans);font-size:.75rem;color:var(--color-text-muted);white-space:nowrap}.recent-posts a:hover .post-title{color:var(--color-text-soft)}@media(max-width:768px){.profile-main{flex-direction:column;align-items:flex-start;gap:1rem}.profile-avatar img{width:64px;height:64px}.profile-name{font-size:1.75rem}.profile-meta{padding-left:0}.projects ul{grid-template-columns:1fr;gap:2rem}.projects .project-image{aspect-ratio:16 / 9}.recent-posts a{flex-direction:column;gap:.25rem}}
