/* Original website theme; standalone portfolio geometry and business-card popup only. */
.portfolio-page-main{padding:48px 0 64px;min-height:65vh}.portfolio-page-head{max-width:820px;margin-bottom:24px}.portfolio-page-head h1{font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.05;margin:12px 0 18px}.portfolio-page-head p{color:var(--ww-muted)}
.portfolio-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:24px 0}.portfolio-toolbar input,.portfolio-category-select{background:#fff;color:var(--ww-ink);border:1px solid var(--ww-line);border-radius:12px;padding:12px 15px;font:inherit;font-size:16px;min-height:46px}.portfolio-toolbar input{flex:1;min-width:180px}.portfolio-count{color:var(--ww-muted);font-size:.85rem}.portfolio-category-select{display:none;width:100%}
.public-site #portfolioPageGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:max-content;align-items:start;align-content:start;gap:22px;margin-top:24px}
#portfolioPageGrid .recent-project-card{min-width:0;align-self:start}#portfolioPageGrid .recent-project-image{aspect-ratio:1;min-height:200px;flex:none;width:100%}#portfolioPageGrid .recent-project-copy{position:static;background:#fff;color:var(--ww-ink)}#portfolioPageGrid .recent-project-copy p{display:none}#portfolioPageGrid .recent-project-copy h3{font-size:1.1rem;overflow-wrap:anywhere}
.portfolio-load-more{display:flex;justify-content:center;margin-top:30px}.portfolio-empty{grid-column:1/-1;color:var(--ww-muted)}
/* Fade each thumbnail's actual image bounds into its white surround. */
#portfolioPageGrid .recent-project-image{background:#fff!important}
#portfolioPageGrid .project-image-button img{width:auto!important;height:auto!important;max-width:100%;max-height:100%;border-radius:10px;mask-image:linear-gradient(to right,transparent,#000 1.5%,#000 98.5%,transparent),linear-gradient(to bottom,transparent,#000 1.5%,#000 98.5%,transparent);mask-composite:intersect;transition:transform .2s ease}
@media(hover:hover){#portfolioPageGrid .project-image-button:hover img{transform:scale(1.035)}}
#portfolioLightbox figure>img{width:auto;height:auto;max-width:100%;max-height:100%;justify-self:center;align-self:center;border-radius:16px;mask-image:none}
@media(prefers-reduced-motion:reduce){#portfolioPageGrid .project-image-button img{transition:none}}
.business-card-dialog{width:min(470px,calc(100vw - 24px));padding:38px 28px 25px;border:1px solid var(--ww-line);border-radius:24px;background:var(--ww-paper);color:var(--ww-ink);text-align:center}.business-card-dialog::backdrop{background:#141018b8}.business-card-dialog img{width:100px;height:100px;object-fit:contain;margin:0 auto 16px}.business-card-dialog h2{font-size:2rem}.business-card-dialog p{color:var(--ww-muted)}.business-card-dialog .modal-close{position:absolute;right:12px;top:12px;width:38px;height:38px}.business-card-dialog .btn{width:100%}
@media(max-width:760px){.portfolio-page-main{padding:28px 0 40px}.portfolio-page-head h1{font-size:2.4rem}.portfolio-page-head p{font-size:.9rem}.portfolio-page-main .portfolio-filter-row{display:none}.portfolio-category-select{display:block}.portfolio-toolbar{margin:18px 0 12px}.portfolio-count{width:100%;font-size:.8rem}.public-site #portfolioPageGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#portfolioPageGrid .recent-project-image{min-height:145px}#portfolioPageGrid .recent-project-copy{padding:12px}#portfolioPageGrid .recent-project-copy h3{font-size:.9rem}#portfolioPageGrid .recent-project-copy .tag{font-size:.55rem}}
