/* HAMMER — "Past Works" Instagram slider (v1.2, 2026-10). Additive; uses the site's tokens. */
.igs{background:var(--bg-ink,#141618);color:#fff;padding-block:clamp(72px,9vw,128px);overflow:hidden}
.igs .igs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-bottom:clamp(32px,4vw,52px)}
.igs .section-head{margin-bottom:0}
.igs .section-head h2{color:#fff}
.igs .eyebrow{color:#E7B9C1}
.igs .lede{color:rgba(255,255,255,.72)}
.igs-ctrl{display:flex;align-items:center;gap:10px}
.igs-btn{width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;
  display:inline-grid;place-items:center;cursor:pointer;transition:background .35s var(--ease,ease),border-color .35s,transform .35s}
.igs-btn:hover{background:var(--red,#8E1B2E);border-color:var(--red,#8E1B2E)}
.igs-btn:active{transform:scale(.94)}
.igs-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
[dir="rtl"] .igs-btn svg{transform:scaleX(-1)}
.igs-follow{display:inline-flex;align-items:center;gap:10px;margin-inline-start:8px;padding:14px 20px;border-radius:999px;
  border:1px solid rgba(255,255,255,.28);color:#fff;font-size:13px;font-weight:600;letter-spacing:.04em;transition:.35s}
.igs-follow:hover{background:#fff;color:var(--ink,#16181A)}
.igs-follow svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}
.igs-follow svg .dot{fill:currentColor;stroke:none}

.igs-track{list-style:none;margin:0;display:flex;gap:clamp(14px,1.6vw,22px);overflow-x:auto;overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter,24px);padding:0 var(--gutter,24px) 6px;
  scrollbar-width:none;-ms-overflow-style:none;cursor:grab;outline:none}
.igs-track::-webkit-scrollbar{display:none}
.igs-track.dragging{cursor:grabbing;scroll-snap-type:none}
.igs-track.dragging .igs-card{pointer-events:none}
.igs-track:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:6px}
@media (min-width:1440px){.igs-track{padding-inline:calc((100vw - var(--maxw,1280px))/2 + var(--gutter,24px))}}

.igs-slide{flex:0 0 clamp(250px,26vw,360px);scroll-snap-align:start}
.igs-card{position:relative;display:block;aspect-ratio:4/5;border-radius:3px;overflow:hidden;background:#222;color:#fff;
  isolation:isolate;transform:translateZ(0)}
.igs-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out,ease),filter .6s;user-select:none;-webkit-user-drag:none}
.igs-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.78));z-index:1;transition:opacity .5s}
.igs-card:hover img,.igs-card:focus-visible img{transform:scale(1.06)}
.igs-card:focus-visible{outline:2px solid #fff;outline-offset:3px}
.igs-meta{position:absolute;inset:auto 0 0 0;z-index:2;padding:20px 20px 22px;display:flex;flex-direction:column;gap:8px}
.igs-date{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.igs-date svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.igs-date svg .dot{fill:currentColor;stroke:none}
.igs-title{font-family:var(--serif,Georgia,serif);font-size:clamp(18px,1.6vw,22px);font-weight:360;line-height:1.2;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.igs-badge{position:absolute;top:14px;inset-inline-end:14px;z-index:2;width:34px;height:34px;border-radius:50%;
  background:rgba(0,0,0,.45);backdrop-filter:blur(6px);display:grid;place-items:center}
.igs-badge svg{width:16px;height:16px;fill:#fff;stroke:#fff;stroke-width:1.2}
.igs-badge svg rect,.igs-badge svg path[d^="M3"]{fill:none}

.igs-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:clamp(26px,3vw,40px)}
.igs-bar{flex:1;height:2px;background:rgba(255,255,255,.14);position:relative;overflow:hidden;direction:ltr}
.igs-bar i{position:absolute;left:0;top:0;bottom:0;width:20%;background:var(--red,#8E1B2E);transition:transform .25s linear}
.igs-note{font-size:12px;letter-spacing:.06em;color:rgba(255,255,255,.55);white-space:nowrap}
.igs-note a{color:#fff;border-bottom:1px solid rgba(255,255,255,.35)}
.igs[data-source="instagram"] .igs-note .curated{display:none}
.igs:not([data-source="instagram"]) .igs-note .live{display:none}

/* Light variant (used on /projects/ where the section sits on paper) */
.igs.light{background:var(--bg,#F6F4EF);color:var(--ink,#16181A)}
.igs.light .section-head h2{color:var(--ink,#16181A)}
.igs.light .eyebrow{color:var(--red,#8E1B2E)}
.igs.light .lede{color:var(--ink-soft,#5C5E60)}
.igs.light .igs-btn,.igs.light .igs-follow{border-color:var(--line-strong,#CFC9BC);color:var(--ink,#16181A)}
.igs.light .igs-btn:hover{color:#fff}
.igs.light .igs-follow:hover{background:var(--ink,#16181A);color:#fff}
.igs.light .igs-bar{background:var(--line,#E4E0D7)}
.igs.light .igs-note{color:var(--ink-faint,#8B8D8F)}
.igs.light .igs-note a{color:var(--ink,#16181A);border-color:var(--line-strong,#CFC9BC)}

@media (max-width:760px){
  .igs-ctrl .igs-btn{display:none}
  .igs-follow{margin-inline-start:0}
  .igs-slide{flex-basis:76vw}
  .igs-note{white-space:normal}
}
@media (prefers-reduced-motion:reduce){.igs-card img{transition:none}}
.igs[hidden]{display:none}
.igs{scroll-margin-top:60px}
