/* ZENSI home portfolio carousel — scoped; other pages and site.css unchanged */
.ze-home .ze-work-carousel .ze-work-head{margin-bottom:clamp(28px,4vw,52px)}
.ze-home .ze-work-carousel .ze-work-slider{width:100%;min-width:0}
.ze-home .ze-work-carousel .ze-work-viewport{width:100%;overflow:hidden;outline-offset:5px;touch-action:pan-y}
.ze-home .ze-work-carousel .ze-work-track{--ze-gap:20px;--ze-columns:4;display:flex!important;grid-template-columns:none!important;gap:var(--ze-gap)!important;align-items:stretch;transform:translate3d(0,0,0);transition:transform .8s cubic-bezier(.22,1,.36,1);will-change:transform}
.ze-home .ze-work-carousel .ze-project{flex:0 0 calc((100% - (var(--ze-columns) - 1) * var(--ze-gap))/var(--ze-columns));min-width:0;display:block;position:relative;transition:opacity .5s ease}
.ze-home .ze-work-carousel .ze-project-visual{width:100%;aspect-ratio:1.35/1!important;max-height:none!important;min-height:0!important;overflow:hidden;position:relative;background:#292724}
.ze-home .ze-work-carousel .ze-project-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .6s ease;filter:saturate(.86)}
.ze-home .ze-work-carousel .ze-project:hover .ze-project-visual img{transform:scale(1.075);filter:saturate(1)}
.ze-home .ze-work-carousel .ze-project-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.25));pointer-events:none}
.ze-home .ze-work-carousel .ze-work-card-index{position:absolute;top:12px;left:13px;z-index:1;color:#fff;font-size:10px;letter-spacing:.16em;text-shadow:0 1px 8px #0008}
.ze-home .ze-work-carousel .ze-project-caption{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:15px 0 10px;min-height:83px}
.ze-home .ze-work-carousel .ze-project-caption span{font-size:10px;letter-spacing:.09em}
.ze-home .ze-work-carousel .ze-project-caption h3{font-size:clamp(15px,1.4vw,19px);line-height:1.45;letter-spacing:-.045em;margin:6px 0 0;overflow-wrap:anywhere;word-break:keep-all}
.ze-home .ze-work-carousel .ze-project-caption b{font-size:18px;font-weight:400;flex:none;transition:transform .35s ease,color .35s ease}
.ze-home .ze-work-carousel .ze-project:hover .ze-project-caption b{transform:translate(3px,-3px);color:#b6a083}
.ze-home .ze-work-carousel .ze-work-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;padding-top:16px;border-top:1px solid rgba(130,125,116,.3)}
.ze-home .ze-work-carousel .ze-work-progress{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.12em;font-variant-numeric:tabular-nums}
.ze-home .ze-work-carousel .ze-work-progress-line{width:clamp(55px,9vw,115px);height:1px;background:rgba(130,125,116,.4)}
.ze-home .ze-work-carousel .ze-work-arrows{display:flex;gap:8px}
.ze-home .ze-work-carousel .ze-work-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(130,125,116,.45);border-radius:50%;background:transparent;color:inherit;font-size:19px;transition:background .3s,color .3s,transform .3s}
.ze-home .ze-work-carousel .ze-work-arrow:hover{background:#b6a083;color:#111;transform:translateY(-2px)}
.ze-home .ze-work-carousel .ze-work-arrow:focus-visible{outline:2px solid #b6a083;outline-offset:3px}
.ze-home .ze-work-carousel .ze-work-arrow:disabled{opacity:.3;cursor:default}
@media(max-width:1050px){.ze-home .ze-work-carousel .ze-work-track{--ze-columns:2;--ze-gap:18px}}
@media(max-width:600px){.ze-home .ze-work-carousel .ze-work-track{--ze-columns:1;--ze-gap:16px}.ze-home .ze-work-carousel .ze-project-visual{aspect-ratio:1.45/1!important}.ze-home .ze-work-carousel .ze-project-caption{min-height:76px}.ze-home .ze-work-carousel .ze-project-caption h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.ze-home .ze-work-carousel .ze-work-track,.ze-home .ze-work-carousel .ze-project-visual img{transition:none!important}}

/* ZENSI EDITORIAL FOUR — intentionally asymmetric, not mismatched sizing */
.ze-home .ze-work-carousel{overflow:hidden}
.ze-home .ze-work-carousel .ze-work-head{margin-bottom:clamp(34px,4.8vw,66px)}
.ze-home .ze-work-carousel .ze-work-track{--ze-gap:clamp(12px,1.6vw,24px);align-items:flex-start!important}
.ze-home .ze-work-carousel .ze-project{transform:translateY(0);transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .5s ease}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+1){padding-top:0}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+2){padding-top:56px}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+3){padding-top:21px}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+4){padding-top:76px}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+1) .ze-project-visual{aspect-ratio:4/5!important}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+2) .ze-project-visual{aspect-ratio:5/4!important}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+3) .ze-project-visual{aspect-ratio:3/4!important}
.ze-home .ze-work-carousel .ze-project:nth-child(4n+4) .ze-project-visual{aspect-ratio:6/5!important}
.ze-home .ze-work-carousel .ze-project-visual{border-radius:2px;isolation:isolate;box-shadow:0 10px 26px rgba(20,17,14,.065)}
.ze-home .ze-work-carousel .ze-project-visual img{transform:scale(1.01);transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .8s ease}
.ze-home .ze-work-carousel .ze-project:hover .ze-project-visual img{transform:scale(1.085)}
.ze-home .ze-work-carousel .ze-project-visual:after{background:linear-gradient(180deg,rgba(0,0,0,.13),transparent 22%,transparent 70%,rgba(0,0,0,.12))}
.ze-home .ze-work-carousel .ze-work-card-index{top:14px;left:15px;font-size:10px}
.ze-home .ze-work-carousel .ze-project-caption{padding-top:17px;min-height:90px;border-top:0}
.ze-home .ze-work-carousel .ze-project-caption span{text-transform:uppercase;font-size:9px;letter-spacing:.12em}
.ze-home .ze-work-carousel .ze-project-caption h3{font-size:clamp(15px,1.4vw,20px);line-height:1.35;margin-top:9px}
.ze-home .ze-work-carousel .ze-work-controls{margin-top:34px}
@media(min-width:1051px){.ze-home .ze-work-carousel .ze-work-viewport{padding-bottom:8px}}
@media(min-width:601px) and (max-width:1050px){
 .ze-home .ze-work-carousel .ze-project:nth-child(4n+1),.ze-home .ze-work-carousel .ze-project:nth-child(4n+3){padding-top:0}
 .ze-home .ze-work-carousel .ze-project:nth-child(4n+2),.ze-home .ze-work-carousel .ze-project:nth-child(4n+4){padding-top:42px}
}
@media(max-width:600px){
 .ze-home .ze-work-carousel .ze-project:nth-child(n){padding-top:0}
 .ze-home .ze-work-carousel .ze-project:nth-child(n) .ze-project-visual{aspect-ratio:5/4!important}
 .ze-home .ze-work-carousel .ze-work-head{margin-bottom:30px}
 .ze-home .ze-work-carousel .ze-work-controls{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.ze-home .ze-work-carousel .ze-project{transition:none!important}}
