/* One project at a time keeps the homepage focused on the work. */
.portfolio__heading{margin-bottom:clamp(58px,7vw,110px)}
.projects-carousel__viewport{overflow:hidden;outline-offset:7px;touch-action:pan-y;cursor:grab;transition:height .7s var(--ease)}
.projects-carousel__viewport:active{cursor:grabbing}
.projects-carousel__track{display:flex;align-items:flex-start;transform:translate3d(var(--slide-offset,0%),0,0);transition:transform .85s var(--ease);will-change:transform}
.project-slide{flex:0 0 100%;min-width:0}
.project-slide__image{display:block;width:100%;height:clamp(420px,54vw,690px);overflow:hidden;background:var(--stone)}
.project-slide__image img{width:100%;height:100%;object-fit:cover;user-select:none;transition:transform 1s var(--ease)}
.project-slide__image:hover img{transform:scale(1.025)}
.project-slide__meta{display:flex;justify-content:space-between;align-items:end;gap:25px;padding:25px 0 10px}
.project-slide__category,.project-slide__view{font-size:10px;letter-spacing:.17em;line-height:1.5}
.project-slide__category{color:var(--muted)}
.project-slide__meta h3{font-size:clamp(56px,6.8vw,110px);line-height:.95;margin:14px 0 0;max-width:960px}
.project-slide__meta h3 span{font-family:var(--sans);font-size:.32em;font-style:normal;vertical-align:middle;white-space:nowrap}
.project-slide__view{white-space:nowrap;padding-bottom:7px}
.projects-carousel__footer{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-top:36px;padding-top:22px;border-top:1px solid var(--line)}
.projects-carousel__position{display:flex;align-items:center;gap:11px;font-size:11px;letter-spacing:.12em;white-space:nowrap}
.projects-carousel__slash{color:var(--muted)}
.projects-carousel__meter{display:block;width:clamp(70px,10vw,155px);height:1px;margin-left:18px;background:var(--stone)}
.projects-carousel__meter span{display:block;width:0;height:100%;background:var(--ink);transition:width .7s var(--ease)}
.projects-carousel__hint{font-size:9px;letter-spacing:.2em;color:var(--muted)}
.projects-carousel__controls{display:flex;gap:10px}
.projects-carousel__controls button{display:grid;place-items:center;width:55px;height:55px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-family:var(--sans);font-size:20px;line-height:1;transition:background .3s,color .3s,opacity .3s}
.projects-carousel__controls button:not(:disabled):hover{background:var(--ink);color:var(--bg)}
.projects-carousel__controls button:disabled{opacity:.3;cursor:default}
@media(max-width:800px){
  .project-slide__image{height:clamp(330px,65vw,530px)}
  .project-slide__meta h3{font-size:clamp(48px,9vw,78px)}
  .project-slide__view{display:none}
}
@media(max-width:600px){
  .portfolio__heading{margin-bottom:55px}
  .project-slide__image{height:94vw;max-height:440px}
  .project-slide__meta{padding-top:19px}
  .project-slide__category{font-size:8px}
  .project-slide__meta h3{font-size:clamp(43px,12vw,64px);margin-top:9px}
  .projects-carousel__footer{margin-top:24px;padding-top:19px}
  .projects-carousel__hint{display:none}
  .projects-carousel__controls button{width:46px;height:46px}
}
@media(prefers-reduced-motion:reduce){
  .projects-carousel__viewport,.projects-carousel__track,.projects-carousel__meter span,.project-slide__image img{transition:none}
}
