/* More Work / final visual-first archive */
.mw-main{padding:20px 0 86px}
.mw-intro-block{padding:16px 0 30px;border-bottom:1px solid rgba(255,255,255,.08)}
.mw-intro-block h1{margin:7px 0 9px;font-size:clamp(34px,5.7vw,58px);line-height:1;letter-spacing:-.04em}
.mw-intro{max-width:68ch;margin:0;color:#90a3ca;font-size:14px;line-height:1.95}
.mw-projects{display:grid;gap:0;padding-top:34px;direction:inherit}
.mw-project{display:grid;gap:14px;padding-block:28px 0;content-visibility:auto;contain-intrinsic-size:700px;direction:inherit}
.mw-project + .mw-project{margin-top:34px}
.mw-project-head{display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:78ch;text-align:start;direction:inherit}
html[dir="rtl"] .mw-project-head{align-items:flex-start;text-align:right}
html[dir="ltr"] .mw-project-head{text-align:left}
.mw-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:0;font-family:"Space Mono",ui-monospace,monospace;font-size:9px;letter-spacing:.08em;color:#617ba9;text-align:start;text-transform:uppercase;direction:inherit;width:100%}
html[dir="rtl"] .mw-kicker{text-align:right}
html[dir="ltr"] .mw-kicker{text-align:left}
.mw-kicker span{opacity:.45;padding:0 5px}
.mw-project-head h2{margin:0;font-size:clamp(21px,2.65vw,31px);line-height:1.22;letter-spacing:-.02em;text-align:start;width:100%}
.mw-project-head p{margin:0;max-width:68ch;color:#9fb0d1;font-size:13px;line-height:1.9;text-align:start;width:100%}

.mw-hero-card,.mw-swap,.mw-card{position:relative;display:block;width:100%;margin:0;padding:0;border:0;background:#030711;overflow:hidden;color:inherit;cursor:zoom-in}
.mw-hero-card{aspect-ratio:16/9}
.mw-media-shell{position:relative;display:block;width:100%;height:100%;background:linear-gradient(180deg,#09101d,#040812);overflow:hidden}
.mw-media-shell::before{content:"";position:absolute;z-index:5;inset:0;background:linear-gradient(110deg,rgba(255,255,255,0) 24%,rgba(255,255,255,.035) 42%,rgba(255,255,255,0) 60%);transform:translateX(-120%);animation:mwShimmer 2.3s ease-in-out infinite;pointer-events:none;transition:opacity .5s ease}
.mw-media-shell.is-loaded::before{opacity:0;animation:none}
@keyframes mwShimmer{100%{transform:translateX(120%)}}

.mw-card-media,.mw-swap-layer{display:block;width:100%;height:100%}
.mw-card-media img,.mw-swap-layer img,.mw-hero-card img{width:100%;height:100%;object-fit:cover}
.mw-img.fit-logo{object-fit:contain;padding:8.5% 16%}

/* Artwork hover is intentionally restrained. */
.mw-card-media img,.mw-hero-card img{transform:scale(1);transition:filter .8s ease,opacity .8s ease}
.mw-card:hover .mw-card-media img,.mw-hero-card:hover .mw-card-media img{filter:brightness(.985)}

.mw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;direction:inherit;justify-content:start}
.mw-grid.mw-grid-flow-ltr{direction:ltr}
.mw-grid[data-count="1"]{grid-template-columns:minmax(0,calc((100% - 20px)/3));justify-content:start}
html[dir="rtl"] .mw-grid[data-count="1"]{justify-content:start}
.mw-grid.mw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mw-card{min-width:0}
.mw-card-media{aspect-ratio:1/1}
.mw-grid.mw-grid-portrait .mw-card-media{aspect-ratio:18/23}
.mw-grid.mw-grid-story .mw-card-media{aspect-ratio:9/16}

/* Identity / catalogue swap: long, quiet crossfade only. */
.mw-swap{aspect-ratio:16/9}
.mw-swap-stage{position:absolute;inset:0;background:#030711}
.mw-swap-layer{position:absolute;inset:0;z-index:1;transition:opacity 1.8s cubic-bezier(.25,.1,.25,1);will-change:opacity}
.mw-swap-front{opacity:1}
.mw-swap-back{opacity:0}
.mw-swap:hover .mw-swap-front,.mw-swap.touch-revealed .mw-swap-front{opacity:0}
.mw-swap:hover .mw-swap-back,.mw-swap.touch-revealed .mw-swap-back{opacity:1}
.mw-swap.surface-paper,.mw-swap.surface-paper .mw-swap-stage{background:#f2e8d5}
.mw-swap-hint{position:absolute;z-index:3;inset:auto 14px 14px auto;padding:7px 9px;border:1px solid rgba(255,255,255,.14);background:rgba(3,7,17,.48);backdrop-filter:blur(10px);font-family:"Space Mono",ui-monospace,monospace;font-size:8px;letter-spacing:.05em;color:#dce7ff;transition:opacity .8s ease}
html[dir="rtl"] .mw-swap-hint{inset-inline-start:14px;inset-inline-end:auto}
.mw-swap:hover .mw-swap-hint,.mw-swap.touch-revealed .mw-swap-hint{opacity:0}
.touch-hint{display:none}

.mw-section-divider{display:flex;align-items:center;gap:16px;margin:72px 0 0;padding-top:6px;direction:inherit}
.mw-section-label{flex:0 0 auto;font-size:clamp(15px,2vw,20px);font-weight:700;line-height:1.4;color:#d8e4ff;text-align:start}
.mw-section-line{height:1px;flex:1;background:linear-gradient(to var(--mw-line-dir, left),rgba(115,146,202,.35),rgba(115,146,202,.05))}
html[dir="rtl"] .mw-section-divider{--mw-line-dir:left;text-align:right}
html[dir="ltr"] .mw-section-divider{--mw-line-dir:right;text-align:left}
.mw-section-divider:first-child{margin-top:0}

.mw-data-note{font-family:"Space Mono",ui-monospace,monospace;font-size:8px;letter-spacing:.08em;color:#506892;direction:ltr}

/* Full-frame viewer with in-place gallery navigation. */
.mw-viewer{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:18px;background:rgba(1,3,8,.94);backdrop-filter:blur(14px);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}
.mw-viewer.open{opacity:1;pointer-events:auto;visibility:visible}
.mw-viewer-frame{display:grid;place-items:center;width:100%;height:100%;background:transparent;border:0;box-shadow:none;overflow:visible}
.mw-viewer img{display:block;max-width:88vw;max-height:90vh;width:auto;height:auto;object-fit:contain;padding:0;margin:auto;cursor:default;user-select:none;-webkit-user-drag:none}
.mw-viewer-close{position:fixed;z-index:2;top:16px;inset-inline-end:18px;width:40px;height:40px;border:1px solid var(--lineStrong);background:rgba(8,17,35,.82);backdrop-filter:blur(8px);color:#fff;cursor:pointer;font-size:16px;transition:background .35s ease,border-color .35s ease}
.mw-viewer-close:hover{background:#153cda;border-color:#153cda}
.mw-viewer-nav{position:fixed;z-index:3;top:50%;display:grid;place-items:center;width:46px;height:54px;padding:0;border:1px solid var(--lineStrong);background:rgba(8,17,35,.82);backdrop-filter:blur(8px);color:#fff;cursor:pointer;font-family:Arial,sans-serif;font-size:28px;line-height:1;direction:ltr;transform:translateY(-50%);transition:background .25s ease,border-color .25s ease,opacity .25s ease}
.mw-viewer-prev{left:18px}
.mw-viewer-next{right:18px}
.mw-viewer-nav:hover:not(:disabled){background:#153cda;border-color:#153cda}
.mw-viewer-nav:disabled{opacity:.22;cursor:default}
.mw-viewer-nav[hidden],.mw-viewer-counter[hidden]{display:none}
.mw-viewer-counter{position:fixed;z-index:3;bottom:16px;left:50%;min-width:58px;padding:7px 10px;border:1px solid rgba(255,255,255,.12);background:rgba(8,17,35,.76);backdrop-filter:blur(8px);color:#dce7ff;font-family:"Space Mono",ui-monospace,monospace;font-size:10px;line-height:1;text-align:center;direction:ltr;transform:translateX(-50%)}

@media(max-width:980px){
  .mw-projects{padding-top:30px}.mw-project + .mw-project{margin-top:28px}.mw-section-divider{margin-top:58px}
  .mw-grid{gap:8px}.mw-grid.mw-grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mw-grid[data-count="1"]{grid-template-columns:minmax(0,calc((100% - 8px)/2))}
}
@media(max-width:640px){
  .mw-main{padding-top:12px}.mw-intro-block{padding-bottom:24px}.mw-projects{padding-top:26px}.mw-project{padding-top:18px}.mw-project + .mw-project{margin-top:22px}.mw-project-head{gap:4px}.mw-project-head h2{font-size:20px}.mw-project-head p{font-size:12.5px}.mw-section-divider{margin-top:46px;gap:12px}.mw-section-label{font-size:15px}
  .mw-grid,.mw-grid.mw-grid-cols-4,.mw-grid[data-count="1"]{grid-template-columns:1fr}.mw-swap,.mw-hero-card{aspect-ratio:4/3}.mw-img.fit-logo{padding:12% 13%}.desktop-hint{display:none}.touch-hint{display:inline}.mw-viewer{padding:10px}.mw-viewer img{max-width:92vw;max-height:82vh}.mw-viewer-nav{top:auto;bottom:14px;width:42px;height:42px;font-size:23px;transform:none}.mw-viewer-prev{left:12px}.mw-viewer-next{right:12px}.mw-viewer-counter{bottom:18px}
}
@media(hover:none){.desktop-hint{display:none}.touch-hint{display:inline}}
@media(prefers-reduced-motion:reduce){.mw-swap-layer,.mw-media-shell::before{transition:none;animation:none}.mw-card:hover .mw-card-media img,.mw-hero-card:hover .mw-card-media img{filter:none}}


/* v16 polish: logical RTL flow, accessible focus, loader feedback */
.mw-project{scroll-margin-top:92px}
.mw-project-head{padding-inline:1px}
.mw-project-head h2{text-wrap:balance}
.mw-project-head p{text-wrap:pretty}
.mw-card,.mw-hero-card,.mw-swap{outline:1px solid rgba(255,255,255,.045);outline-offset:-1px}
.mw-card:focus-visible,.mw-hero-card:focus-visible,.mw-swap:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.mw-viewer::after{content:"";position:fixed;left:50%;top:50%;width:42px;height:3px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translate(-50%,-50%) scaleX(.25);opacity:0;pointer-events:none}
.mw-viewer.is-loading::after{opacity:.85;animation:viewerLoad 1.15s ease-in-out infinite}
.mw-viewer.is-loading img{opacity:.18}
.mw-viewer img{transition:opacity .28s ease}
@keyframes viewerLoad{50%{transform:translate(-50%,-50%) scaleX(1)}}
@media(prefers-reduced-motion:reduce){.mw-viewer.is-loading::after{animation:none;transform:translate(-50%,-50%) scaleX(1)}}
