nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--hairline);transition:box-shadow var(--t-med) var(--ease)}nav.scrolled{box-shadow:0 2px 20px #0000000d}[data-theme=dark] nav.scrolled{box-shadow:0 2px 20px #0006}.nav-content{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;max-width:1200px;margin:0 auto}.logo-container{display:flex;align-items:center;gap:.6rem;cursor:pointer;animation:logoEntrance .5s var(--ease) both}.logo-container:hover .logo-text{opacity:.75}.logo-container:hover .logo-image{opacity:.6;transform:rotate(-5deg) scale(.95)}.logo-image{width:26px;height:26px;transition:all var(--t-med) var(--ease)}nav.scrolled .logo-image{width:20px;height:20px;opacity:.7}.logo-text{font-family:var(--font-mono);font-weight:500;font-size:1rem;letter-spacing:-.5px;color:var(--text-primary);transition:opacity var(--t-med) var(--ease),font-size var(--t-med) var(--ease)}nav.scrolled .logo-text{font-size:.9rem}.logo-dot{color:var(--blue);animation:dotPulse 3s ease-in-out infinite}@keyframes logoEntrance{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.4}}.nav-right{display:flex;align-items:center;gap:2rem}.nav-links{display:flex;gap:2rem;list-style:none;margin:0}.nav-links a{font-family:var(--font-mono);color:var(--text-secondary);text-decoration:none;font-size:.8rem;font-weight:500;letter-spacing:-.02em;transition:color var(--t-fast) var(--ease);position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}.nav-links a.active:before{content:"▮";position:absolute;left:-.9em;color:var(--blue);animation:blink 1.2s step-end infinite}.link-ext{display:inline-block;margin-left:.15em;color:var(--text-faint);transition:color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.nav-links a:hover .link-ext{color:var(--blue);transform:translate(1px,-1px)}.theme-toggle{background:transparent;border:1px solid var(--hairline);color:var(--text-secondary);width:36px;height:36px;border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.theme-toggle:hover{border-color:var(--text-secondary);color:var(--text-primary)}@media(max-width:768px){.nav-links{gap:1.25rem}}@media(max-width:640px){.nav-content{padding:1rem 1.5rem}.logo-text{display:none}.nav-links{gap:1rem}.nav-links li:nth-child(3),.nav-links li:nth-child(4){display:none}}.status-bar{position:fixed;bottom:0;left:0;right:0;z-index:900;height:40px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:0 1.25rem;background:var(--bar-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--hairline);font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.04em;color:var(--text-faint);animation:statusBarIn var(--t-slow) var(--ease) .5s backwards}@keyframes statusBarIn{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.status-group{display:flex;align-items:center;gap:1rem;min-width:0;white-space:nowrap}.status-time{color:var(--text-secondary);font-variant-numeric:tabular-nums}.status-track{flex:1;justify-content:center;overflow:hidden}.status-eq{display:inline-flex;align-items:flex-end;gap:2px;height:10px;flex-shrink:0}.eq-bar{width:2px;height:100%;background:var(--accent-live);animation:bounce .9s ease-in-out infinite;transform-origin:bottom}.eq-bar:nth-child(2){animation-delay:.25s}.eq-bar:nth-child(3){animation-delay:.5s}.status-track-label{flex-shrink:0;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.status-track-link{color:var(--text-secondary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;transition:color var(--t-fast) var(--ease)}.status-track-link:hover{color:var(--text-primary)}.status-track-time{flex-shrink:0}.status-links{gap:1.25rem}.status-links a{color:var(--text-secondary);text-decoration:none;transition:color var(--t-fast) var(--ease)}.status-links a:hover{color:var(--blue)}@media(max-width:768px){.status-coords,.status-track-time{display:none}.status-group{gap:.6rem}.status-links{gap:.75rem}}footer{border-top:1px solid var(--hairline);padding:2.5rem 0;margin-top:6rem}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.02em;color:var(--text-faint)}.footer-colophon{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.footer-sep{color:var(--hairline)}.footer-top{color:var(--text-secondary);text-decoration:none;transition:color var(--t-fast) var(--ease)}.footer-top:hover{color:var(--text-primary)}@media(max-width:640px){.footer-content{flex-direction:column;text-align:center}}.lightbox-overlay{position:fixed;inset:0;background:#000000f2;z-index:10000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:fadeIn .2s ease-out;cursor:zoom-out}.lightbox-close{position:fixed;top:2rem;right:2rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:48px;height:48px;border-radius:50%;font-size:2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10001}.lightbox-close:hover{background:#fff3;border-color:#fff6;transform:scale(1.1)}.lightbox-content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;animation:zoomIn .3s ease-out;cursor:default}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #00000080}@media(max-width:768px){.lightbox-overlay{padding:1rem}.lightbox-close{top:1rem;right:1rem;width:40px;height:40px;font-size:1.5rem}.lightbox-image{max-height:85vh}}.hero{padding:10rem 0 5rem;min-height:85vh;display:flex;align-items:center;position:relative}.hero:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px;opacity:.03;pointer-events:none;z-index:1}.hero-content{max-width:860px;position:relative;z-index:2}.hero-meta{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin-bottom:2.5rem;animation:fadeInUp var(--t-slow) var(--ease)}.hero-file{color:var(--text-faint)}.hero-status{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-live)}.status-dot{width:6px;height:6px;background:var(--accent-live);border-radius:50%;animation:pulse 2s ease-in-out infinite;box-shadow:0 0 6px var(--accent-live)}.hero h1{font-family:var(--font-mono);font-size:clamp(2.2rem,5.5vw,4.25rem);font-weight:600;line-height:1.15;letter-spacing:-.04em;margin-bottom:2rem;animation:fadeInUp var(--t-slow) var(--ease) .1s backwards}.typed-word{display:inline-block;color:var(--blue);min-width:9ch;text-align:left}.caret{display:inline-block;color:var(--blue);animation:blink 1.1s step-end infinite;margin-left:.05em}.hero p{font-size:1.15rem;color:var(--text-secondary);line-height:1.7;max-width:620px;margin-bottom:3rem;animation:fadeInUp var(--t-slow) var(--ease) .2s backwards}.hero-cta{display:flex;gap:1rem;animation:fadeInUp var(--t-slow) var(--ease) .3s backwards;flex-wrap:wrap}.data-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);margin-bottom:6rem;animation:fadeInUp var(--t-slow) var(--ease) .4s backwards}.datum{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem 2rem 1.5rem 0}.datum+.datum{border-left:1px solid var(--hairline);padding-left:2rem}.datum-value{font-family:var(--font-mono);font-size:1.6rem;font-weight:600;letter-spacing:-.02em;line-height:1;color:var(--text-primary)}.datum-arrow{color:var(--accent-live);font-size:1.1rem}.section{padding:5rem 0}.section-header{margin-bottom:3.5rem}.section-meta{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--hairline);padding-bottom:1rem;margin-bottom:1.25rem}.section-path{font-family:var(--font-mono);font-size:clamp(1.4rem,2.5vw,1.8rem);font-weight:600;letter-spacing:-.03em}.section-count{font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.section-subtitle{font-size:1rem;color:var(--text-secondary);max-width:620px}.work-row{display:grid;grid-template-columns:4rem 1fr 300px;gap:2.5rem;align-items:center;padding:2.25rem 0;border-top:1px solid var(--hairline);cursor:pointer;transition:background-color var(--t-med) var(--ease);position:relative}.work-row:last-child{border-bottom:1px solid var(--hairline)}.work-row:hover,.work-row:focus-visible{background:var(--bg-secondary)}.work-row:focus-visible{outline:1px solid var(--blue);outline-offset:-1px}.work-num{align-self:start;padding-top:.35rem}.work-meta-line{margin-bottom:.6rem}.work-title{font-size:1.6rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.6rem;display:flex;align-items:center;gap:.6rem}.work-arrow{font-family:var(--font-mono);font-size:1.1rem;color:var(--text-faint);opacity:0;transform:translate(-4px,4px);transition:opacity var(--t-med) var(--ease),transform var(--t-med) var(--ease),color var(--t-med) var(--ease)}.work-row:hover .work-arrow,.work-row:focus-visible .work-arrow{opacity:1;transform:translate(0);color:var(--blue)}.work-desc{color:var(--text-secondary);line-height:1.7;max-width:560px;margin-bottom:1rem}.work-tags{font-family:var(--font-mono);font-size:.75rem;color:var(--text-faint);letter-spacing:-.01em}.work-thumb{aspect-ratio:16 / 10;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--radius);background:var(--bg-secondary)}.work-thumb img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(0);opacity:.85;transition:filter var(--t-slow) var(--ease),opacity var(--t-slow) var(--ease),transform var(--t-slow) var(--ease)}.work-row:hover .work-thumb img,.work-row:focus-visible .work-thumb img{filter:saturate(1);opacity:1;transform:scale(1.02)}.concepts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.concept-card{cursor:zoom-in}.concept-image-wrapper{width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--hairline);border-radius:var(--radius);position:relative}.concept-zoom{position:absolute;top:.75rem;right:.75rem;width:28px;height:28px;font-family:var(--font-mono);font-size:1rem;line-height:1;color:var(--white);background:#000000a6;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--t-med) var(--ease)}.concept-card:hover .concept-zoom{opacity:1}.concept-image{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.2);transition:filter var(--t-slow) var(--ease),transform var(--t-slow) var(--ease)}.concept-card:hover .concept-image{filter:saturate(1);transform:scale(1.03)}.concept-title{display:flex;align-items:baseline;gap:.75rem;padding:1rem .25rem;font-size:.9rem;font-weight:500;color:var(--text-secondary)}.concept-num{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;color:var(--text-faint)}.toolkit-list{display:grid;grid-template-columns:repeat(2,1fr);column-gap:4rem}.tool-item{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:2rem 0;border-top:1px solid var(--hairline)}.tool-num{padding-top:.3rem}.tool-body h3{font-size:1.05rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.6rem}.tool-body p{color:var(--text-secondary);font-size:.92rem;line-height:1.7;margin-bottom:.8rem}.tool-tags{font-family:var(--font-mono);font-size:.72rem;color:var(--text-faint);letter-spacing:.02em}@media(max-width:900px){.work-row{grid-template-columns:3rem 1fr;gap:1.5rem}.work-thumb{grid-column:2}.toolkit-list{grid-template-columns:1fr;column-gap:0}}@media(max-width:640px){.hero{padding:8rem 0 4rem;min-height:0}.data-strip{grid-template-columns:1fr}.datum{padding:1.25rem 0}.datum+.datum{border-left:none;border-top:1px solid var(--hairline);padding-left:0}.work-row{grid-template-columns:1fr;gap:1rem}.work-num{padding-top:0}.work-thumb{grid-column:1}.concepts-grid{grid-template-columns:1fr}}.about-hero{padding:10rem 0 4rem}.about-layout{display:grid;grid-template-columns:1fr 400px;gap:4rem;margin-bottom:4rem;align-items:start}.page-path{display:block;margin-bottom:1.5rem}.about-content h1{font-family:var(--font-mono);font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:600;letter-spacing:-.04em;margin-bottom:2rem}.about-intro{font-size:1.4rem!important;line-height:1.7!important;color:var(--text-primary)!important;margin-bottom:3rem!important}.current-chapter{margin:0 0 3.5rem;padding:1.75rem 2rem;background:#00c8530d;border:1px solid rgba(0,200,83,.25);border-radius:var(--radius);position:relative;overflow:hidden}.current-chapter:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#00c853 0%,transparent 70%)}[data-theme=dark] .current-chapter{box-shadow:0 0 40px #00c8530f}.chapter-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:#00c853;margin-bottom:1.25rem}[data-theme=light] .chapter-label{color:#00a847}.chapter-card{display:flex;gap:1.25rem;align-items:flex-start}.chapter-left{flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding-top:.3rem}.chapter-dot{width:12px;height:12px;border-radius:50%;background:#00c853;box-shadow:0 0 0 3px #00c85333;animation:pulse-green 2s ease-in-out infinite;flex-shrink:0}.chapter-connector{width:2px;flex:1;min-height:50px;background:linear-gradient(to bottom,rgba(0,200,83,.35),transparent);margin-top:6px}.chapter-body{flex:1}.chapter-period{font-family:JetBrains Mono,monospace;font-size:.8rem;color:#00c853;display:block;margin-bottom:.5rem}[data-theme=light] .chapter-period{color:#00a847}.chapter-title-row{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.875rem;flex-wrap:wrap}.chapter-role{font-size:1.5rem!important;font-weight:600!important;color:var(--text-primary)!important;margin:0!important;letter-spacing:-.5px}.chapter-company{font-size:1.5rem;font-weight:400;color:#00c853;letter-spacing:-.5px}[data-theme=light] .chapter-company{color:#00a847}.chapter-desc{font-size:1rem!important;line-height:1.7!important;color:var(--text-secondary)!important;margin:0!important}@keyframes pulse-green{0%,to{box-shadow:0 0 0 3px #00c85333}50%{box-shadow:0 0 0 6px #00c85314}}.about-content h2{font-size:2rem;font-weight:600;margin:3rem 0 1.5rem;letter-spacing:-.5px;color:var(--text-primary)}.about-content p{font-size:1.1rem;line-height:1.8;color:var(--text-secondary);margin-bottom:1.5rem}.about-portrait{position:sticky;top:120px}.portrait-wrapper{position:relative;width:100%;aspect-ratio:3/4;border-radius:var(--radius);overflow:hidden;border:1px solid var(--hairline)}.portrait-image{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.3);transition:filter var(--t-slow) var(--ease)}.portrait-wrapper:hover .portrait-image{filter:saturate(1)}.about-content-full{max-width:100%}.about-content-full h2{font-size:2rem;font-weight:600;margin:3rem 0 1.5rem;letter-spacing:-.5px;color:var(--text-primary)}.brands-section{margin:4rem 0;padding:3rem 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.brands-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.brand-item{padding:1.5rem;background:var(--bg-card);border:1px solid var(--hairline);border-radius:var(--radius);text-align:center;font-family:var(--font-mono);font-size:.85rem;font-weight:500;color:var(--text-secondary);transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.brand-item:hover{border-color:var(--text-secondary);color:var(--text-primary)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem}.skill-category h3{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--blue)}.skill-list{list-style:none}.skill-list li{padding:.75rem 0;color:var(--text-secondary);border-bottom:1px solid var(--border-color);transition:all .2s ease}.skill-list li:last-child{border-bottom:none}.skill-list li:hover{color:var(--text-primary);padding-left:.5rem}.cta-section{margin-top:4rem;padding:3rem;background:var(--bg-card);border:1px solid var(--hairline);border-radius:var(--radius);text-align:center}[data-theme=dark] .cta-section{background:var(--bg-secondary)}.cta-section h2{margin-top:0}.cta-section p{max-width:600px;margin:1.5rem auto 2rem;font-size:1.1rem;line-height:1.8;color:var(--text-secondary)}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;font-family:var(--font-mono);padding:.8rem 1.5rem;border-radius:var(--radius);font-size:.85rem;font-weight:500;letter-spacing:-.01em;text-decoration:none;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease);border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.btn-primary:hover{background:var(--blue);border-color:var(--blue);color:var(--white)}.btn-secondary{background:transparent;color:var(--text-primary);border-color:var(--hairline)}.btn-secondary:hover{border-color:var(--text-primary)}@media(max-width:1024px){.about-layout{grid-template-columns:1fr;gap:3rem}.about-portrait{position:relative;top:0;max-width:400px;margin:0 auto}}@media(max-width:768px){.about-content,.about-content-full{padding:0 1rem}.skills-grid{grid-template-columns:1fr}.portrait-wrapper{transform:rotate(-1deg)}}.protected-project{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-primary)}.protected-container{max-width:500px;width:100%}.protected-content{background:var(--bg-card);border:1px solid var(--hairline);border-radius:var(--radius);padding:3rem;text-align:center}.lock-icon{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:1.5rem;animation:fadeInUp .6s var(--ease)}.protected-content h1{font-size:2rem;font-weight:600;margin-bottom:1rem;letter-spacing:-.5px;animation:fadeInUp .6s ease-out .1s backwards}.protected-subtitle{color:var(--text-secondary);margin-bottom:2.5rem;line-height:1.6;animation:fadeInUp .6s ease-out .2s backwards}.password-form{margin-bottom:2rem;animation:fadeInUp .6s ease-out .3s backwards}.password-form.shake{animation:shake .5s ease-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}.input-wrapper{margin-bottom:1.5rem}.password-input{width:100%;padding:1rem 1.5rem;border:1px solid var(--hairline);border-radius:var(--radius);font-size:1rem;font-family:JetBrains Mono,monospace;background:var(--bg-primary);color:var(--text-primary);transition:all .3s ease;text-align:center;letter-spacing:2px}.password-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #0066ff1a}.password-input.error{border-color:#dc3545;animation:shake .5s ease-out}[data-theme=dark] .password-input:focus{box-shadow:0 0 0 3px #06f3}.password-input::placeholder{color:var(--text-secondary);letter-spacing:normal}.error-message{display:block;color:#dc3545;font-size:.85rem;margin-top:.5rem;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.protected-content .btn{display:inline-block;font-family:var(--font-mono);padding:.9rem 2rem;border-radius:var(--radius);font-size:.85rem;font-weight:500;text-decoration:none;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease);border:1px solid transparent;cursor:pointer;width:100%}.protected-content .btn-primary{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);margin-bottom:1rem}.protected-content .btn-primary:hover{background:var(--blue);border-color:var(--blue);color:var(--white)}.protected-content .btn-secondary{background:transparent;color:var(--text-secondary);border-color:var(--hairline)}.protected-content .btn-secondary:hover{border-color:var(--text-primary);color:var(--text-primary)}.back-button{animation:fadeInUp .6s ease-out .4s backwards}@media(max-width:640px){.protected-content{padding:2rem}.lock-icon{font-size:3rem}.protected-content h1{font-size:1.75rem}}.project-hero{padding:10rem 0 4rem;text-align:center}.project-hero h1{font-family:var(--font-mono);font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:600;letter-spacing:-.04em;margin-bottom:1rem}.project-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-top:1rem}.project-meta-bar{display:flex;justify-content:center;gap:3rem;margin-top:3rem;flex-wrap:wrap}.meta-item{display:flex;flex-direction:column;align-items:center}.meta-label{font-family:var(--font-mono);font-size:.7rem;color:var(--text-faint);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.08em}.meta-value{font-family:var(--font-mono);font-weight:600;color:var(--text-primary)}.project-tools{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.tool-badge{padding:.4rem .8rem;background:transparent;color:var(--text-secondary);border:1px solid var(--hairline);border-radius:var(--radius);font-family:var(--font-mono);font-size:.75rem;font-weight:500}.project-section{max-width:900px;margin:4rem auto}.project-section h2{font-size:2.5rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:-.5px}.project-section h3{font-size:1.5rem;font-weight:600;margin:2rem 0 1rem;letter-spacing:-.3px}.project-section h4{font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.project-section p{font-size:1.1rem;line-height:1.8;color:var(--text-secondary);margin-bottom:1.5rem}.highlight-section{background:var(--blue-pale);padding:2.5rem;border-radius:var(--radius);border-left:2px solid var(--blue)}[data-theme=dark] .highlight-section{background:#0066ff1a;border-left-color:var(--blue)}.feature-list{list-style:none;margin:1.5rem 0}.feature-list li{padding:.75rem 0 .75rem 2rem;color:var(--text-secondary);position:relative;border-bottom:1px solid var(--border-color)}.feature-list li:before{content:"→";position:absolute;left:0;color:var(--blue);font-weight:600}.feature-list li:last-child{border-bottom:none}.feature-block{margin:3rem 0;padding:2rem 0;border-top:1px solid var(--border-color)}.feature-block:first-of-type{border-top:none}.project-image{width:100%;border-radius:var(--radius);border:1px solid var(--hairline);margin:1.5rem 0;transition:transform var(--t-med) var(--ease)}.project-image.clickable{cursor:zoom-in}.project-image.clickable:hover{transform:scale(1.02)}.project-image-full{width:100%;border-radius:var(--radius);border:1px solid var(--hairline);margin:2rem 0;transition:transform var(--t-med) var(--ease)}.project-image-full.clickable{cursor:zoom-in}.project-image-full.clickable:hover{transform:scale(1.01)}.project-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.container .project-section:nth-child(4) .feature-block>.project-images>img:nth-child(1),.container .project-section:nth-child(4) .feature-block>.project-images>img:nth-child(3){min-width:300px;width:100%;height:282px;object-fit:cover;object-position:0% 0%}#root>div>div>div:nth-child(4)>div:nth-child(6)>div>img{height:400px}.image-caption{text-align:center;font-size:.9rem;color:var(--text-secondary);margin-top:.75rem;font-style:italic}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin:3rem 0}.kpi-card{background:var(--bg-card);border:1px solid var(--hairline);border-radius:var(--radius);padding:2rem;text-align:center;transition:border-color var(--t-fast) var(--ease)}.kpi-card:hover{border-color:var(--text-secondary)}.kpi-value{font-family:var(--font-mono);font-size:3rem;font-weight:600;letter-spacing:-.03em;color:var(--blue);line-height:1;margin-bottom:.5rem}.kpi-suffix{font-family:var(--font-mono);font-size:.7rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem}.kpi-label{font-size:.95rem;color:var(--text-primary);font-weight:500}.process-list{margin:2rem 0}.process-step{display:flex;gap:2rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.process-step:last-child{border-bottom:none}.step-number{flex-shrink:0;width:3rem;font-family:var(--font-mono);color:var(--text-faint);font-weight:500;font-size:.8rem;letter-spacing:.08em;padding-top:.3rem}.step-content{flex:1}.step-content h4{margin-bottom:.75rem}.step-content p{margin-bottom:0}@media(max-width:768px){.project-meta-bar{gap:2rem}.project-images{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}}:root{--black: #000000;--off-black: #0a0a0a;--dark-gray: #1a1a1a;--mid-gray: #808080;--light-gray: #e5e5e5;--white: #ffffff;--blue: #0066ff;--blue-dark: #0052cc;--green: #00a847;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--font-sans: "Inter", -apple-system, sans-serif;--ease: cubic-bezier(.25, 1, .5, 1);--t-fast: .15s;--t-med: .3s;--t-slow: .6s;--radius: 2px;--bg-primary: var(--white);--bg-secondary: #f7f7f7;--bg-card: var(--white);--text-primary: var(--black);--text-secondary: #6b6b6b;--text-faint: #a3a3a3;--border-color: var(--light-gray);--hairline: rgba(0, 0, 0, .12);--nav-bg: rgba(255, 255, 255, .85);--bar-bg: rgba(255, 255, 255, .9);--accent-live: var(--green);--blue-pale: #e6f0ff}[data-theme=dark]{--bg-primary: var(--off-black);--bg-secondary: #101010;--bg-card: #0e0e0e;--text-primary: #f2f2f2;--text-secondary: #969696;--text-faint: #5c5c5c;--border-color: rgba(255, 255, 255, .1);--hairline: rgba(255, 255, 255, .14);--nav-bg: rgba(10, 10, 10, .85);--bar-bg: rgba(10, 10, 10, .9);--accent-live: #00c853;--blue-pale: rgba(0, 102, 255, .12)}*{margin:0;padding:0;box-sizing:border-box}::selection{background:var(--blue);color:var(--white)}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden;transition:background-color var(--t-med) var(--ease),color var(--t-med) var(--ease);padding-bottom:40px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.mono{font-family:var(--font-mono)}.label{font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--mid-gray)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes bounce{0%,to{height:40%}50%{height:100%}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
