/* The moving gallery is scoped to portfolio pages; originals stay crawlable. */
.site-body .moving-portfolio { padding-top:32px; padding-bottom:64px; }
.moving-portfolio .work-heading { align-items:center; margin-bottom:22px; }
.moving-portfolio .work-heading h1 { font-size:48px; margin-top:4px; }
.moving-portfolio .work-categories { border:0; padding:0; margin-bottom:22px; gap:8px; }
.moving-portfolio .work-categories a { border:1px solid #e1e9f0; border-radius:30px; font-size:12px; padding:9px 16px; background:#f7fafc; }
.moving-portfolio .work-categories a[aria-current] { color:#fff; background:#123f66; border-color:#123f66; }
.moving-portfolio .work-category-title { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.gallery-motion-bar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:12px; color:#6a7e8e; font-size:12px; }
.gallery-motion-toggle { display:grid; place-items:center; width:38px; height:38px; padding:0; border:1px solid #dae5ee; border-radius:50%; color:#123f66; background:#fff; cursor:pointer; }
.gallery-motion-toggle[hidden],.gallery-motion-toggle span[hidden] { display:none; }
.gallery-motion-toggle span { display:grid; place-items:center; }
.site-body .work-grid.moving-gallery { display:flex; flex-direction:column; gap:18px; margin-inline:calc((min(1280px, 100vw - 96px) - 100vw) / 2); padding-block:4px 12px; }
.work-lane { --lane-height:225px; display:flex; direction:ltr; gap:16px; overflow-x:auto; overflow-y:hidden; padding-block:8px; scrollbar-width:none; overscroll-behavior-x:contain; touch-action:pan-x pan-y; }
.work-lane::-webkit-scrollbar { display:none; }
.work-lane:nth-child(2) { --lane-height:200px; }
.work-lane-track { display:flex; flex:0 0 auto; gap:16px; padding-inline:8px; }
.work-lane.is-dragging { cursor:grabbing; user-select:none; }
.site-body .work-lane .work-tile,.site-body .work-lane .work-copy { display:block; position:relative; isolation:isolate; flex:0 0 auto; width:auto; height:var(--lane-height); border-radius:14px; overflow:hidden; background:#f0f5f8; box-shadow:0 4px 18px #123f660c; transform:none; opacity:1; }
.work-copy img { display:block; width:100%; height:100%; object-fit:contain; border-radius:inherit; }
.work-lane .work-tile img,.work-lane .work-copy img { pointer-events:none; user-select:none; }
.site-body .work-lane .work-tile:hover,.site-body .work-lane .work-copy:hover { transform:none; box-shadow:0 6px 22px #123f661c; }
.work-lane .work-tile:hover img,.work-lane .work-copy:hover img { transform:none; }
.work-lane .work-tile-open { width:30px; height:30px; inset:auto 9px 9px auto; color:#123f66; }
.work-lane .work-tile-open svg { width:15px; height:15px; }
.work-copy:hover .work-tile-open { opacity:1; transform:none; }
.work-lane:focus-visible { outline:2px solid #ed881e; outline-offset:2px; }
@media(max-width:920px) {
  .site-body .work-grid.moving-gallery { margin-inline:-24px; }
  .work-lane { --lane-height:200px; }
  .work-lane:nth-child(2) { --lane-height:180px; }
}
@media(max-width:640px) {
  .site-body .moving-portfolio { padding-top:22px; }
  .moving-portfolio .work-heading { align-items:center; gap:12px; }
  .moving-portfolio .work-heading h1 { font-size:36px; }
  .moving-portfolio .work-heading .section-label { font-size:10px; }
  .moving-portfolio .profile-download { padding:10px 12px; gap:8px; font-size:11px; }
  .moving-portfolio .profile-download small { display:none; }
  .moving-portfolio .work-categories { flex-wrap:wrap; overflow:visible; margin-inline:0; padding:0; }
  .moving-portfolio .work-categories a { flex:0 0 auto; padding:8px 13px; font-size:11px; }
  .site-body .work-grid.moving-gallery { margin-inline:-18px; gap:10px; }
  .work-lane { --lane-height:180px; gap:12px; }
  .work-lane:nth-child(2) { --lane-height:160px; }
  .work-lane-track { gap:12px; }
  .site-body .work-lane .work-tile,.site-body .work-lane .work-copy { border-radius:12px; }
  .work-entry-actions { gap:20px; }
}
