/* Approved image-first case cards. Scoped to work; hero and CMS remain untouched. */
#work[data-project-gallery] .project-list{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:36%;grid-template-columns:none;gap:24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain;padding:0 0 8px;margin:0;align-items:start}
#work[data-project-gallery] .project-list.is-ready{scrollbar-width:none}
#work[data-project-gallery] .project-list.is-ready::-webkit-scrollbar{display:none}
#work[data-project-gallery] .project-card{display:block;min-width:0;margin:0;padding:0;scroll-snap-align:start;background:transparent}
#work[data-project-gallery] .case-link{position:relative;display:block;height:550px;overflow:hidden;border-radius:20px;text-decoration:none;background:#dce7ed;isolation:isolate}
#work[data-project-gallery] .case-link:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#101b24e6 0,#101b24ad 15%,#101b2400 39%);pointer-events:none;z-index:1}
#work[data-project-gallery] .case-image{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transition:transform .65s cubic-bezier(.19,1,.22,1)}
#work[data-project-gallery] .is-screen-cover .case-image{object-fit:contain}
#work[data-project-gallery] .case-caption{position:absolute;left:26px;right:24px;top:26px;color:#fff;z-index:2}
#work[data-project-gallery] .case-caption :is(h2,h3){font-family:Sora,Inter,sans-serif;font-weight:500;font-size:clamp(22px,2.2vw,29px);line-height:1.17;letter-spacing:-.045em;margin:0 0 16px;max-width:12em;overflow-wrap:break-word}
#work[data-project-gallery] .case-action{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.4}
#work[data-project-gallery] .case-action svg{width:24px;height:24px;border:1px solid #ffffff80;border-radius:50%;padding:4px;flex:none}
#work[data-project-gallery] .case-kind{position:absolute;z-index:3;bottom:0;right:0;min-width:122px;padding:23px 24px 8px 26px;background:#f7fafb;border-radius:24px 0 0 0;font-size:14px;line-height:1.5;color:#17262d}
#work[data-project-gallery] .case-kind:after{content:'';position:absolute;width:20px;height:20px;right:0;top:-20px;border-radius:0 0 20px 0;box-shadow:5px 5px 0 5px #f7fafb}
#work[data-project-gallery] .case-kind:before{content:'';position:absolute;width:20px;height:20px;left:-20px;bottom:0;border-radius:0 0 20px 0;box-shadow:5px 5px 0 5px #f7fafb}
#work[data-project-gallery] .project-rail-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:28px}
#work[data-project-gallery] .project-rail-controls{display:flex;align-items:center;gap:8px}
#work[data-project-gallery] .project-rail-controls[hidden]{display:none!important}
#work[data-project-gallery] .project-rail-controls button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #b7c7cf;border-radius:50%;color:#17262d;background:transparent;cursor:pointer;transition:background-color .2s}
#work[data-project-gallery] .project-rail-controls button:disabled{opacity:.35;cursor:default}
#work[data-project-gallery] .project-rail-controls svg{width:20px;height:20px}
#work[data-project-gallery] .project-rail-progress{display:block;width:104px;height:3px;border-radius:3px;overflow:hidden;background:#d3dfe5;margin-right:16px}
#work[data-project-gallery] .project-rail-progress>span{display:block;width:100%;height:100%;background:#6b818e;transform:scaleX(0);transform-origin:left center;transition:transform .3s}
#work[data-project-gallery] .project-list:focus-visible,#work[data-project-gallery] .case-link:focus-visible,#work[data-project-gallery] button:focus-visible{outline:2px solid #7a0e1a;outline-offset:4px}
#work[data-project-gallery] .project-list.is-dragging{scroll-snap-type:none;user-select:none;cursor:grabbing}
#work[data-project-gallery] .project-list.project-grid{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-columns:auto;overflow:visible;padding:0;scroll-snap-type:none}
@media(hover:hover) and (pointer:fine){#work[data-project-gallery] .project-list.is-ready{cursor:grab}#work[data-project-gallery] .case-link:hover .case-image{transform:scale(1.025)}#work[data-project-gallery] .project-list.is-dragging .case-link{cursor:grabbing}#work[data-project-gallery] .project-rail-controls button:hover:not(:disabled){background:#dce7ed}}
@media(max-width:820px){#work[data-project-gallery] .project-list{grid-auto-columns:62%;gap:20px}#work[data-project-gallery] .case-link{height:530px}#work[data-project-gallery] .case-caption{left:22px;right:22px;top:22px}#work[data-project-gallery] .project-list.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){#work[data-project-gallery] .project-list{grid-auto-columns:86%;gap:16px}#work[data-project-gallery] .case-link{height:460px;border-radius:18px}#work[data-project-gallery] .case-caption :is(h2,h3){font-size:25px}#work[data-project-gallery] .case-kind{font-size:13px;min-width:108px;padding:21px 18px 8px 22px}#work[data-project-gallery] .project-rail-footer{gap:12px;margin-top:20px}#work[data-project-gallery] .project-rail-progress{width:48px;margin-right:6px}#work[data-project-gallery] .project-rail-controls{gap:5px}#work[data-project-gallery] .project-list.project-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#work[data-project-gallery] *,#work[data-project-gallery] *:before,#work[data-project-gallery] *:after{transition:none!important;scroll-behavior:auto!important}}
