.igx { position:relative; display:grid; grid-template-columns:1fr auto; gap:clamp(26px,4vw,64px); align-items:center; padding:clamp(26px,3.4vw,44px); background:var(--panel); box-shadow:inset 0 0 0 1px var(--line-2); }
.igx::before { content:""; position:absolute; left:0; top:0; height:2px; width:0; background:var(--ink); transition:width 1s cubic-bezier(.22,1,.36,1); }
.igx:hover::before { width:100%; }
.igx-h { font-size:calc(clamp(23px,3.1vw,38px) * var(--ds)); margin:0 0 14px; }
.igx-l { color:var(--dim); max-width:46ch; font-size:15px; margin:0; }
.igx-go { display:flex; align-items:center; gap:clamp(16px,2.4vw,30px); flex-wrap:wrap; margin-top:clamp(20px,2.6vw,30px); }
.igx-n { font-family:var(--f-sous); font-size:10.5px; letter-spacing:2.2px; text-transform:uppercase; color:var(--dim); }
.igx-pl { position:relative; display:flex; gap:12px; }
.igx-pl .cm,
.igx-pl .cm2 { position:absolute; inset:-11px; pointer-events:none; transition:inset .7s cubic-bezier(.22,1,.36,1); }
.igx-pl .cm::before,
.igx-pl .cm::after,
.igx-pl .cm2::before,
.igx-pl .cm2::after { content:""; position:absolute; width:13px; height:13px; transition:border-color .4s var(--ease); }
.igx-pl .cm::before { top:0; left:0;  border-top:1px solid var(--line-2); border-left:1px solid var(--line-2); }
.igx-pl .cm::after { bottom:0; right:0; border-bottom:1px solid var(--line-2); border-right:1px solid var(--line-2); }
.igx-pl .cm2::before { top:0; right:0; border-top:1px solid var(--line-2); border-right:1px solid var(--line-2); }
.igx-pl .cm2::after { bottom:0; left:0; border-bottom:1px solid var(--line-2); border-left:1px solid var(--line-2); }
.igx:hover .cm,
.igx:hover .cm2 { inset:-5px; }
.igx:hover .cm::before,
.igx:hover .cm::after,
.igx:hover .cm2::before,
.igx:hover .cm2::after { border-color:var(--ink); }
.igx-pl figure { margin:0; width:clamp(74px,7.6vw,104px); height:clamp(110px,11.4vw,156px); overflow:hidden; background:var(--bg-2); box-shadow:inset 0 0 0 1px var(--line-2); }
.igx-pl img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 0; filter:grayscale(1) contrast(.94); opacity:.86; transition:filter .7s var(--ease), opacity .7s var(--ease), transform 1.1s cubic-bezier(.22,1,.36,1); pointer-events:none; -webkit-user-drag:none; user-select:none; }
.igx:hover img { filter:none; opacity:1; transform:scale(1.05); }
.igx-pl figure:nth-child(3) { margin-top:18px; }
@media (max-width:820px) {
  .igx { grid-template-columns:1fr; }
  .igx-pl { order:-1; }
  .igx-pl figure:nth-child(3) { margin-top:0; }
}
@media (hover:none) {
  .igx img { filter:none; opacity:1; }
}
@media (prefers-reduced-motion:reduce) {
  .igx::before,
  .igx-pl .cm,
  .igx-pl .cm2,
  .igx img { transition:none; }
  .igx:hover img { transform:none; }
}
.mp { background:var(--bg); color:var(--ink); --bg:#0a0a0a; --bg-2:#0f0f0f; --panel:#141414; --panel-2:#1c1c1c; --line:#2b2b2b; --line-2:#3a3a3a; --ink:#f4f4f4; --dim:#9c9c9c; --dim-2:#c4c4c4; --pure:#ffffff; --anti:#0a0a0a; }
.mp::after { content:""; position:absolute; inset:0; opacity:.4; pointer-events:none; background:repeating-linear-gradient(to bottom, rgba(255,255,255,.035) 0 1px, transparent 1px 4px); }
.mp > .wrap { position:relative; z-index:1; }
.mp + .sec--tight { padding-top:clamp(70px,11vh,130px); }
.mp-head { display:grid; grid-template-columns:1fr auto; align-items:end; column-gap:24px; padding-bottom:clamp(22px,3vw,34px); border-bottom:1px solid var(--line); margin-bottom:clamp(64px,9vw,130px); }
.mp-head .eyebrow { grid-column:1 / -1; }
.mp-h { margin:0; }
.mp-count { font-family:var(--f-sous); font-size:11px; letter-spacing:2.5px; text-transform:uppercase; color:var(--dim); padding-bottom:.6em; }
.mp-list { list-style:none; margin:0; padding:0; display:grid; gap:clamp(90px,13vw,180px); }
.mp-in { display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:clamp(14px,2vw,26px); align-items:center; color:inherit; }
.mp-vis,
.mp-txt { grid-row:1; }
.mp-it--portrait  .mp-vis { grid-column:1 / 6; }
.mp-it--portrait  .mp-txt { grid-column:7 / 13; }
.mp-it--square    .mp-vis { grid-column:1 / 7; }
.mp-it--square    .mp-txt { grid-column:8 / 13; }
.mp-it--landscape .mp-vis { grid-column:1 / 8; }
.mp-it--landscape .mp-txt { grid-column:9 / 13; }
.mp-it--portrait:nth-child(even)  .mp-vis { grid-column:8 / 13; }
.mp-it--portrait:nth-child(even)  .mp-txt { grid-column:1 / 7; }
.mp-it--square:nth-child(even)    .mp-vis { grid-column:7 / 13; }
.mp-it--square:nth-child(even)    .mp-txt { grid-column:1 / 6; }
.mp-it--landscape:nth-child(even) .mp-vis { grid-column:6 / 13; }
.mp-it--landscape:nth-child(even) .mp-txt { grid-column:1 / 5; }
.mp-vis { position:relative; margin:0; }
.mp-frame { overflow:hidden; background:var(--panel); box-shadow:inset 0 0 0 1px var(--line); display:grid; place-items:center; }
.mp-frame img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.06); transition:transform 1.6s var(--ease), filter .8s var(--ease); }
a.mp-in:hover .mp-frame img { transform:scale(1.04); }
@media (hover:hover) {
  .mp-in:hover .mp-frame img { filter:grayscale(0) contrast(1); }
}
.mp-vis .cm,
.mp-vis .cm2 { position:absolute; inset:-14px; pointer-events:none; transition:inset .8s var(--ease); }
.mp-vis .cm::before,
.mp-vis .cm::after,
.mp-vis .cm2::before,
.mp-vis .cm2::after { content:""; position:absolute; width:15px; height:15px; transition:border-color .5s var(--ease); }
.mp-vis .cm::before { top:0; left:0; border-top:1px solid var(--line-2); border-left:1px solid var(--line-2); }
.mp-vis .cm::after { bottom:0; right:0; border-bottom:1px solid var(--line-2); border-right:1px solid var(--line-2); }
.mp-vis .cm2::before { top:0; right:0; border-top:1px solid var(--line-2); border-right:1px solid var(--line-2); }
.mp-vis .cm2::after { bottom:0; left:0; border-bottom:1px solid var(--line-2); border-left:1px solid var(--line-2); }
.mp-in:hover .cm,
.mp-in:hover .cm2 { inset:-7px; }
.mp-in:hover .cm::before,
.mp-in:hover .cm::after,
.mp-in:hover .cm2::before,
.mp-in:hover .cm2::after { border-color:var(--pure); }
.mp-edge { position:absolute; left:0; top:calc(100% + 18px); font-family:var(--f-sous); font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--dim); }
.mp-no { display:block; font-family:var(--f-titre); font-weight:700; font-size:clamp(64px,9vw,148px); letter-spacing:-.05em; line-height:.8; margin-bottom:clamp(20px,2.6vw,34px); color:transparent; -webkit-text-stroke:1px var(--line-2); transition:color .8s var(--ease), -webkit-text-stroke-color .8s var(--ease); }
.mp-in:hover .mp-no { color:var(--ink); -webkit-text-stroke-color:transparent; }
.mp-fmt { display:flex; align-items:center; gap:9px; flex-wrap:wrap; font-family:var(--f-sous); font-size:10.5px; letter-spacing:3px; text-transform:uppercase; color:var(--dim); }
.mp-fmt .sep { font-style:normal; color:var(--line-2); }
.mp-t { font-family:var(--f-titre); font-weight:700; letter-spacing:-.035em; font-size:clamp(30px,4.2vw,62px); line-height:.98; margin:16px 0 0; text-wrap:balance; }
.mp-t::after { content:""; display:block; width:56px; height:1px; background:var(--pure); margin-top:clamp(20px,2.4vw,28px); transform-origin:left; transition:transform .7s var(--ease); }
a.mp-in:hover .mp-t::after { transform:scaleX(3); }
.mp-cr { margin:clamp(22px,2.8vw,34px) 0 0; border-top:1px solid var(--line); }
.mp-cr div { display:grid; grid-template-columns:minmax(0,9.5em) 1fr; gap:16px; padding:13px 0; border-bottom:1px solid var(--line); }
.mp-cr dt { font-family:var(--f-sous); font-size:10.5px; letter-spacing:2.5px; text-transform:uppercase; color:var(--dim); padding-top:.35em; }
.mp-cr dd { margin:0; font-size:15px; }
.mp-go { display:inline-flex; align-items:center; gap:10px; margin-top:28px; font-family:var(--f-sous); font-size:11.5px; letter-spacing:2.5px; text-transform:uppercase; color:var(--dim); transition:gap .4s var(--ease), color .4s; }
.mp-go::after { content:"→"; }
a.mp-in:hover .mp-go { gap:18px; color:var(--ink); }
@media (max-width:820px) {
  .mp-head { grid-template-columns:1fr; }
  .mp-count { padding:10px 0 0; }
  .mp-in { grid-template-columns:1fr; row-gap:46px; }
  .mp-list .mp-it:nth-child(n) .mp-vis,
  .mp-list .mp-it:nth-child(n) .mp-txt { grid-column:1; grid-row:auto; }
  .mp-it--portrait .mp-vis { width:min(100%, 380px); }
  .mp-no { font-size:clamp(56px,18vw,86px); }
}
@media (prefers-reduced-motion:reduce) {
  .mp-frame img,
  .mp-vis .cm,
  .mp-vis .cm2,
  .mp-no,
  .mp-t::after,
  .mp-go { transition:none; }
  a.mp-in:hover .mp-frame img { transform:none; }
}
