body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.portfolio-page{background-color:var(--background-color);color:var(--text-color);max-width:100%;font-family:Josefin Sans,sans-serif}.portfolio-header{border-bottom:1px solid #e0e0e0;padding:3rem 3rem 1.5rem}.portfolio-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-color);margin:0 0 .5rem;font-size:clamp(2.5rem,7vw,5rem);font-weight:300;line-height:1}.portfolio-subtitle{color:#666;letter-spacing:.02em;margin:0;font-size:.95rem}.portfolio-filter-nav{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;gap:.5rem;padding:0 3rem;display:flex;overflow-x:auto}.filter-tabs{flex-wrap:nowrap;gap:0;display:flex}.filter-tab{letter-spacing:.08em;color:#555;cursor:pointer;white-space:nowrap;text-transform:uppercase;background:0 0;border:none;border-bottom:2px solid #0000;padding:1rem 1.1rem;font-family:Josefin Sans,sans-serif;font-size:.72rem;font-weight:700;transition:color .2s,border-color .2s}.filter-tab:hover{color:var(--text-color)}.filter-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.filter-button{letter-spacing:.1em;color:var(--primary-color);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;align-items:center;gap:.4rem;padding:.5rem .5rem .5rem 1rem;font-family:Josefin Sans,sans-serif;font-size:.72rem;font-weight:700;display:flex}.portfolio-grid{padding:0}.portfolio-row{border-bottom:1px solid #e0e0e0;display:grid}.row-split{grid-template-columns:1fr 1fr}.row-quad{grid-template-columns:repeat(4,1fr)}@media (width<=900px){.row-split{grid-template-columns:1fr}.row-quad{grid-template-columns:repeat(2,1fr)}}@media (width<=550px){.row-quad{grid-template-columns:1fr}.portfolio-filter-nav{padding:0 1rem}.portfolio-header{padding:2rem 1rem 1rem}}.card{color:var(--text-color);background:#fff;border-right:1px solid #e0e0e0;flex-direction:column;text-decoration:none;transition:background .2s;display:flex;overflow:hidden}.card:last-child{border-right:none}.card-body{padding:1.25rem 1.5rem}.card-body-top{padding-bottom:.5rem}.card-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-color);margin:0 0 .4rem;font-size:.8rem;font-weight:700;line-height:1.3}.card-desc{color:#555;margin:0;font-size:.8rem;font-weight:300;line-height:1.5}.card-hero-img-wrap{aspect-ratio:16/7;background:#111;width:100%;overflow:hidden}.card-hero-img-wrap--neuro{aspect-ratio:16/8}.card-hero-img{object-fit:cover;filter:brightness(.95);background:#ccc;width:100%;height:100%;display:block}.card-thumb-strip{background:#e0e0e0;grid-template-columns:repeat(4,1fr);gap:2px;display:grid}.card-thumb{aspect-ratio:1;background:#bbb;overflow:hidden}.card-thumb img{object-fit:cover;width:100%;height:100%;display:block}.card-links{flex-wrap:wrap;gap:.2rem 1rem;padding:.75rem 0 0;display:flex}.card-link{letter-spacing:.07em;text-transform:uppercase;color:#444;align-items:center;gap:.35rem;font-size:.68rem;font-weight:700;text-decoration:none;transition:color .2s;display:flex}.card-link:hover{color:var(--primary-color)}.card-link svg{flex-shrink:0;font-size:.65rem}.card-arrow-btn{color:#555;cursor:pointer;background:#fff9;border:1.5px solid #aaa;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;text-decoration:none;transition:border-color .2s,color .2s,background .2s;display:flex;position:absolute;bottom:10px;right:10px}.card-arrow-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.card-arrow-wrap{justify-content:flex-end;display:flex;position:relative}.card-medium{position:relative}.card-neuro-top{align-items:flex-start;gap:0;display:flex}.card-neuro-text{flex:45%;padding:1.25rem 0 1rem 1.5rem}.card-neuro-hero{aspect-ratio:4/3;flex:0 0 55%;overflow:hidden}.card-neuro-hero img{object-fit:cover;opacity:.8;width:100%;height:100%;display:block;-webkit-mask-image:linear-gradient(90deg,#0000 1%,#000 20%);mask-image:linear-gradient(90deg,#0000 1%,#000 20%)}.card-neuro-docs{grid-template-columns:1fr 1fr;gap:.75rem;padding:.75rem 1.5rem;display:grid}.card-doc{aspect-ratio:4/3;background:#f5f5f5;border:1px solid #ddd;overflow:hidden;box-shadow:0 2px 6px #00000014}.card-doc img{object-fit:cover;width:100%;height:100%;display:block}.card-neuro-footer{grid-template-columns:1fr 1fr auto;align-items:center;gap:.5rem;padding:.5rem 1.5rem 1.25rem;display:grid}.card-neuro-footer .card-link{letter-spacing:.07em;text-transform:uppercase;color:#444;align-items:center;gap:.35rem;font-size:.68rem;font-weight:700;text-decoration:none;transition:color .2s;display:flex}.card-neuro-footer .card-link:hover{color:var(--primary-color)}.card-games-top{align-items:flex-start;display:flex}.card-games-text{flex:50%;padding:1.25rem 0 1rem 1.5rem}.card-games-hero{aspect-ratio:2;flex:0 0 50%;overflow:hidden}.card-games-hero img{object-fit:cover;width:100%;height:100%;display:block;-webkit-mask-image:linear-gradient(90deg,#0000 1%,#000 20%);mask-image:linear-gradient(90deg,#0000 1%,#000 20%)}.card-games-thumbs{background:#e0e0e0;grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.card-game-thumb{aspect-ratio:1;background:#bbb;overflow:hidden}.card-game-thumb img{object-fit:cover;width:100%;height:100%;display:block}.card-games-footer{grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:.25rem;padding:.5rem 1.5rem 1.25rem;display:grid}.card-game-label{letter-spacing:.07em;text-transform:uppercase;color:#444;font-size:.62rem;font-weight:700;line-height:1.3;text-decoration:none;transition:color .2s}.card-game-label:hover{color:var(--primary-color)}.card-body-neuro-footer{justify-content:flex-end;padding-top:.75rem;padding-bottom:.75rem;display:flex}.card-multiple .card-body{flex-direction:column;display:flex}.card-thumb-strip--4{grid-template-columns:repeat(4,1fr)}.card-sublinks{flex-direction:column;gap:.15rem;padding:.5rem 0 0;display:flex}.card-sublink{letter-spacing:.06em;text-transform:uppercase;color:#444;font-size:.7rem;font-weight:700;text-decoration:none;transition:color .2s}.card-sublink:hover{color:var(--primary-color)}.card-small{cursor:pointer;height:260px}.card-small:hover{background:#fafafa}.card-small-img{background:#ccc;border-radius:4px;flex:1;overflow:hidden}.card-small-img img{object-fit:cover;width:100%;height:100%;display:block}.card-placeholder{text-align:center;background:#fafafa;border-right:none;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1.5rem}.placeholder-plus{color:#999;margin-bottom:.25rem;font-size:1.5rem}.card-placeholder .card-title{color:#444}.card-placeholder .card-desc{color:#999}.portfolio-legend{background:#fafafa;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;flex-wrap:wrap;gap:1.5rem 2.5rem;padding:1.5rem 3rem;display:flex}.legend-item{align-items:flex-start;gap:.6rem;display:flex}.legend-icon{color:#888;text-align:center;flex-shrink:0;width:1.2rem;margin-top:.05rem;font-size:1rem}.legend-label{letter-spacing:.07em;text-transform:uppercase;color:#333;font-size:.7rem;font-weight:700}.legend-sub{color:#888;margin-top:.1rem;font-size:.65rem;font-weight:300}.portfolio-examples{padding:2.5rem 3rem}.examples-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--text-color);border-bottom:1px solid #e0e0e0;margin:0 0 1.5rem;padding-bottom:.75rem;font-size:.8rem;font-weight:700}.examples-grid{grid-template-columns:repeat(6,1fr);gap:1rem;display:grid}@media (width<=1100px){.examples-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=650px){.examples-grid{grid-template-columns:repeat(2,1fr)}.portfolio-legend{padding:1.5rem 1rem}.portfolio-examples{padding:2rem 1rem}}.example-card{background:#fff;border:1px solid #e0e0e0;padding:.75rem}.example-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-color);margin-bottom:.2rem;font-size:.65rem;font-weight:700}.example-breadcrumb{color:var(--primary-color);margin-bottom:.6rem;font-size:.6rem;font-weight:300}.example-img{aspect-ratio:4/3;background:#ddd;margin-bottom:.6rem;overflow:hidden}.example-img img{object-fit:cover;width:100%;height:100%;display:block}.example-desc{color:#666;margin:0;font-size:.65rem;font-weight:300;line-height:1.5}img{background-color:#d0d0d0}.portfolio-filter-nav::-webkit-scrollbar{height:3px}.portfolio-filter-nav::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:2px}
