/* Shared portfolio art direction: neutral stage, complete artwork, consistent scale. */
.portfolio-stage{aspect-ratio:1;background:#eeeef0;border-radius:8px;display:grid;place-items:center;padding:10%;overflow:hidden;isolation:isolate}
.work-card .project-caption{display:grid;grid-template-columns:1fr;gap:12px}
.work-card .project-caption>span:last-child{font-size:15px}
.portfolio-stage .portfolio-art-surface{width:100%;height:100%;display:grid;place-items:center;min-width:0;min-height:0}
.portfolio-stage .portfolio-art-surface img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 10px rgb(0 0 0 / .10));border-radius:0;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.placeholder-project:hover .portfolio-stage img{transform:translateY(-5px)}
.portfolio-stage-website .portfolio-art-surface{height:74%;background:#fff;border:5px solid #262628;border-top-width:15px;border-radius:5px;overflow:hidden;display:block;box-shadow:0 16px 18px rgb(0 0 0 / .13)}
.portfolio-stage-website .portfolio-art-surface img{display:block;width:100%;max-height:none;height:auto;filter:none;object-fit:initial;transform:none}
/* Match every portfolio thumbnail to the digital artwork's square footprint. */
.main-portfolio .portfolio-art-surface{aspect-ratio:1;background:#fff;overflow:hidden;filter:drop-shadow(0 12px 10px rgb(0 0 0 / .10))}
.main-portfolio .portfolio-art-surface img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:center;filter:none}
/* The tile lifts as one piece; moving its image exposes the white surface below. */
.main-portfolio .placeholder-project:hover .portfolio-stage img{transform:none}
.main-portfolio img[src$="misoma-logo.png"]{object-fit:contain;padding:8%;box-sizing:border-box}
.main-portfolio .portfolio-stage-website .portfolio-art-surface{height:100%;border:0;border-radius:0;box-shadow:none}
.main-portfolio .portfolio-stage-website img{height:100%;max-height:100%;object-fit:cover;object-position:top}
.main-site .curated-gallery{background:#f5f5f7;padding-top:48px;padding-bottom:64px}
.portfolio-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px;max-width:1280px;margin:auto}
.main-site .curated-gallery .portfolio-gallery-item{width:100%;max-width:none;margin:0;min-width:0}
.portfolio-gallery-lead{grid-column:1/-1}
.portfolio-gallery-stage{aspect-ratio:1;display:grid;place-items:center;padding:10%;background:#eeeef0;border-radius:8px;overflow:hidden}
.portfolio-gallery-lead .portfolio-gallery-stage{aspect-ratio:16/10;padding:6%}
.portfolio-full-image{display:grid!important;place-items:center;width:100%;height:100%;min-height:0;min-width:0;cursor:zoom-in}
.main-site .curated-gallery .portfolio-gallery-stage img{width:auto;height:auto;max-width:100%;max-height:100%;border-radius:0;object-fit:contain;filter:drop-shadow(0 14px 12px rgb(0 0 0 / .1))}
.main-site .curated-gallery figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:20px;line-height:1.5;padding-top:16px;color:#515157;font-size:15px}
.curated-gallery figcaption a{color:#1d1d1f;white-space:nowrap;border-bottom:1px solid #bdbdc2;padding-bottom:3px}
.portfolio-gallery-lead .portfolio-website-scroll{display:block;aspect-ratio:auto;height:clamp(350px,55vw,760px);padding:0;overflow-y:auto;overscroll-behavior:contain;background:#fff;scrollbar-color:#909095 #e8e8eb}
.portfolio-website-scroll .portfolio-full-image{height:auto;display:block!important}
.main-site .curated-gallery .portfolio-website-scroll img{width:100%;max-width:100%;max-height:none;display:block;filter:none}
.portfolio-viewer{border:0;padding:24px;background:#f5f5f7;color:#1d1d1f;width:min(1400px,96vw);max-width:96vw;height:92dvh;max-height:92dvh;border-radius:12px}
.portfolio-viewer::backdrop{background:rgb(0 0 0 / .75);backdrop-filter:blur(8px)}
.portfolio-viewer[open]{display:flex;flex-direction:column;gap:20px}
.portfolio-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}
.portfolio-viewer-header p{margin:0;font-size:16px}
.portfolio-viewer-close{border:1px solid #bdbdc2;border-radius:24px;background:#fff;color:#1d1d1f;padding:10px 18px;cursor:pointer;font:inherit}
.portfolio-viewer-body{min-height:0;overflow:auto;display:grid;justify-items:center;align-items:start;flex:1;background:#eeeef0;border-radius:6px}
.portfolio-viewer-body img{display:block;width:auto;max-width:100%;height:auto;margin:auto}
.portfolio-viewer :focus-visible,.portfolio-stage:focus-visible{outline:3px solid #555;outline-offset:5px}
@media(max-width:760px){.portfolio-gallery-grid{grid-template-columns:1fr;gap:32px}.portfolio-gallery-lead{grid-column:auto}.portfolio-gallery-lead .portfolio-gallery-stage{aspect-ratio:1;padding:8%}.curated-gallery figcaption{flex-wrap:wrap;gap:8px!important}.portfolio-viewer{padding:16px}.portfolio-viewer-header p{font-size:14px}.portfolio-gallery-lead .portfolio-website-scroll{aspect-ratio:auto;height:460px;padding:0}.portfolio-stage{padding:9%}}
@media(prefers-reduced-motion:reduce){.portfolio-stage img{transition:none!important}.placeholder-project:hover .portfolio-stage img{transform:none}}
/* Footer links and project pagination are never mobile header overlays. */
.main-site .site-footer nav,.main-site .project-pagination{position:static;top:auto;left:auto;width:auto;z-index:auto;background:transparent}
.main-site .site-footer .footer-policy-links{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:24px;padding:0;border:0}
.main-portfolio img[data-original-src$="misoma-logo.png"]{object-fit:contain;padding:8%;box-sizing:border-box}
