.portfolio main.site{max-width:1080px}.portfolio .topbar{padding-inline:max(24px,calc((100vw - 1032px)/2))}.portfolio-nav{display:flex;gap:24px;font-size:13px;color:var(--text-secondary)}.portfolio-nav a:hover{color:var(--text-primary)}.portfolio .s-hero{grid-template-columns:minmax(0,1fr) 260px;padding:64px 0 40px;gap:36px}.hero-copy{display:flex;flex-direction:column;gap:24px}.hero-copy h1{max-width:15ch}.eyebrow{font:11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.hero-lede{font-size:17px;line-height:1.65;max-width:49ch;color:var(--text-secondary)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-caption{color:var(--text-tertiary);font:10px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;text-align:center;margin-top:12px}.portfolio .s-hero-art{display:block;text-align:center}.portfolio-section{padding:48px 0;scroll-margin-top:80px;border-top:1px solid var(--border)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-head p{color:var(--text-secondary);font-size:14px;max-width:35ch}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-card{display:flex;flex-direction:column;gap:16px;background:var(--surface-1);border:1px solid var(--border);padding:28px;transition:background .18s,border-color .18s}.project-card:hover{background:var(--surface-2);border-color:var(--border-strong)}.project-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.project-card h3{font-size:28px;line-height:1.15;font-family:var(--font-pixel)}.project-card p{color:var(--text-secondary);font-size:14px;line-height:1.65;max-width:52ch}.project-kind{font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.project-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:auto;padding-top:12px;font-size:13px;font-weight:600}.project-links a{color:var(--mentor)}.project-links a:hover{text-decoration:underline}.project-feature{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;padding:0;gap:0}.feature-copy{padding:30px;display:flex;flex-direction:column;gap:16px}.feature-visual{display:block;min-height:250px;border-left:1px solid var(--border);background:var(--surface-2);overflow:hidden}.feature-visual img{width:100%;height:100%;object-fit:cover;object-position:left top;image-rendering:auto;display:block}.feature-caption{font:11px var(--font-mono);color:var(--text-tertiary)}.oss-list{border-top:1px solid var(--border)}.oss-row{display:grid;grid-template-columns:38px 170px 1fr 90px;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--border);transition:background .18s}.oss-row:hover{background:var(--surface-1)}.oss-n{font:11px var(--font-mono);color:var(--text-tertiary)}.oss-row h3{font-size:16px}.oss-row p{font-size:13px;color:var(--text-secondary);line-height:1.6}.oss-go{font:12px var(--font-mono);color:var(--mentor);text-align:right}.history-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 32px;margin-top:24px}.history-item h3{font-size:15px;margin-bottom:6px}.history-item p{font-size:13px;color:var(--text-secondary);line-height:1.6}.history-item a{color:var(--mentor)}.guide-group{padding:20px;border:1px solid var(--border);background:var(--surface-1);display:flex;flex-direction:column;gap:10px}.guide-group h3{font-size:15px}.guide-group p{color:var(--text-secondary);font-size:13px}.guide-group a{font-size:13px;color:var(--mentor);margin-top:auto}.guide-group a:hover{text-decoration:underline}.nekurs-block{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:var(--surface-1);border:1px solid var(--border);padding:32px}.nekurs-block h2{font:40px var(--font-pixel);margin-bottom:10px}.nekurs-block p{max-width:54ch;color:var(--text-secondary);font-size:15px;line-height:1.6}.contact-block{display:flex;align-items:center;justify-content:space-between;gap:24px}.contact-block p{color:var(--text-secondary);margin-top:14px;max-width:48ch;font-size:15px}.contact-links{display:flex;flex-direction:column;gap:12px;min-width:180px}.contact-links a{color:var(--mentor);font-size:14px}.portfolio .site-footer{align-items:start;border-top:1px solid var(--border)}.portfolio .footer-socials{justify-content:start}.portfolio .footer-nav{justify-content:start}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;padding:12px;background:var(--accent);color:var(--bg)}.skip-link:focus{top:10px}.portfolio .seclabel-dot{background:var(--border-strong)}
@media(max-width:819px){.portfolio .s-hero{grid-template-columns:minmax(0,1fr) 180px;gap:20px;padding-top:40px}.portfolio .s-hero-art{order:0}.portfolio-nav{gap:14px}.portfolio .s-hero-art [data-cheldo]{height:240px!important}.section-head{align-items:start;flex-direction:column;gap:14px}.oss-row{grid-template-columns:25px 140px 1fr}.oss-go{grid-column:3;text-align:left}.project-feature{grid-template-columns:1fr}.feature-visual{border-left:0;border-top:1px solid var(--border);height:290px}.project-card{padding:22px}.project-feature{padding:0}}
@media(max-width:560px){.portfolio main.site{padding-inline:20px}.portfolio .topbar{height:auto;min-height:64px;padding:12px 20px;flex-wrap:wrap}.portfolio-nav{gap:18px;order:2;width:100%;font-size:12px}.portfolio .s-hero{grid-template-columns:1fr;padding-top:32px;gap:8px}.hero-copy{gap:20px}.hero-copy h1{font-size:34px}.hero-lede{font-size:15px}.portfolio .s-hero-art{display:none}.portfolio .brand-head{width:34px;height:34px}.portfolio-section{padding:32px 0;scroll-margin-top:112px}.project-grid,.history-grid{grid-template-columns:1fr}.project-feature{grid-column:auto}.feature-copy{padding:22px}.feature-visual{height:220px;min-height:0}.oss-row{grid-template-columns:24px 1fr auto;gap:10px}.oss-row p{grid-column:2/-1}.oss-go{grid-row:1;grid-column:3}.nekurs-block{grid-template-columns:1fr;padding:24px}.contact-block{align-items:start;flex-direction:column}.portfolio .footer-socials{gap:16px}.portfolio .hero-actions .btn{min-height:44px}.hero-caption{display:none}}
@media(max-width:560px){.portfolio .s-hero-art{display:block;justify-self:center}.portfolio .s-hero-art [data-cheldo]{height:170px!important}.portfolio .s-hero{gap:20px}}
.feature-copy h3{font-family:var(--font-display);font-size:24px}.portfolio-nav a{white-space:nowrap}@media(max-width:360px){.portfolio-nav{font-size:11px;gap:14px}}
/* Consistent project previews: copy left, real interface right. */
#projects .project-grid{grid-template-columns:1fr;gap:20px}
.project-feature,.nekurs-block.project-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:0;gap:0;align-items:stretch}
.project-feature .project-top{flex-direction:column;gap:12px}
.project-feature .feature-copy{justify-content:center;min-width:0}
.project-feature .feature-visual{align-self:stretch;min-height:300px;display:flex;align-items:center;background:#151513}
.project-feature .feature-visual img{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;object-position:center top;transition:filter .2s}
.project-feature .feature-visual:hover img{filter:brightness(1.08)}
.nekurs-block .btn{align-self:flex-start;margin-top:8px}
.nekurs-block .feature-copy{gap:16px}
.nekurs-block h2{margin:0}
@media(max-width:819px){.project-feature,.nekurs-block.project-feature{grid-template-columns:1fr}.project-feature .feature-visual{height:auto;min-height:0;border-left:0;border-top:1px solid var(--border)}.project-feature .feature-visual img{aspect-ratio:8/5}.project-feature .feature-copy{padding:24px}}
