#mgit-image-gallery{position:relative;z-index:2;padding:100px 0 80px;overflow:hidden;color:#fff;isolation:isolate;background:radial-gradient(ellipse at 50% 32%,#15425866,transparent 56%),linear-gradient(135deg,#080b18e8,#160b20e8);border-block:1px solid #b6eaff22}
#mgit-image-gallery *{box-sizing:border-box}
#mgit-image-gallery .mig-head{width:min(90%,1500px);margin:auto}
#mgit-image-gallery .mig-head small{color:#77e6ff;letter-spacing:.22em;font:600 11px/1.5 monospace}
#mgit-image-gallery h2{font-size:clamp(34px,4.7vw,76px);line-height:1.08;letter-spacing:-.04em;margin:22px 0 18px;max-width:1000px}
#mgit-image-gallery h2 em{font-family:Georgia,serif;font-weight:400;color:#b8efff;text-shadow:0 0 24px #02b0f155}
#mgit-image-gallery .mig-controls{display:flex;gap:18px;align-items:center;color:#b6c6d8;font:12px/1.5 sans-serif;margin-top:20px}
#mgit-image-gallery .mig-controls button{border:1px solid #bce9ff55;border-radius:40px;padding:10px 20px;color:#eafaff;background:#ffffff0a;cursor:pointer}
#mgit-image-gallery .mig-collage{height:clamp(340px,43vw,650px);position:relative;margin:35px 0 60px;perspective:1300px;overflow:hidden}
#mgit-image-gallery .mig-track{position:absolute;inset:0;width:200%;display:flex;animation:mig-drift 55s linear infinite;will-change:transform}
#mgit-image-gallery .mig-cluster{width:50%;flex:none;position:relative}
#mgit-image-gallery .mig-tile{position:absolute;padding:0;border:1px solid #e7f7ff55;background:#111827;overflow:hidden;border-radius:9px;box-shadow:0 20px 55px #0008;cursor:zoom-in;transition:scale .3s,box-shadow .3s;transform:translateY(-50%);width:var(--w);height:var(--h);top:var(--y);left:var(--x);z-index:1}
#mgit-image-gallery .mig-tile img{width:100%;height:100%;object-fit:cover;display:block}
#mgit-image-gallery .mig-tile:hover,#mgit-image-gallery .mig-tile:focus-visible{z-index:20;scale:1.12;box-shadow:0 25px 70px #000b,0 0 26px #02b0f155;outline:2px solid #92efff}
#mgit-image-gallery:has(.mig-tile:hover) .mig-track,#mgit-image-gallery:has(.mig-tile:focus-visible) .mig-track,#mgit-image-gallery[data-paused=true] .mig-track{animation-play-state:paused}
#mgit-image-gallery .mig-detail{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;width:min(88%,1450px);margin:auto}
#mgit-image-gallery .mig-topics{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
#mgit-image-gallery .mig-topic{font:600 clamp(20px,2.6vw,43px)/1.13 inherit;line-height:1.15;font-size:clamp(20px,2.6vw,43px);font-weight:600;letter-spacing:-.035em;text-align:left;padding:0;background:none;border:0;color:#91a0b375;cursor:pointer;transition:color .2s,translate .2s}
#mgit-image-gallery .mig-topic:hover,#mgit-image-gallery .mig-topic[aria-pressed=true]{color:#e9faff;translate:8px 0;text-shadow:0 0 22px #02b0f14d}
#mgit-image-gallery .mig-preview{margin:0;position:relative;aspect-ratio:1.12;border:1px solid #baeaff44;border-radius:22px;overflow:hidden;background:#0d1523;box-shadow:0 24px 80px #0008}
#mgit-image-gallery .mig-preview img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}
#mgit-image-gallery .mig-preview figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 24px 22px;background:linear-gradient(transparent,#03101ce8);color:#edfbff;font-size:16px;pointer-events:none}
#mgit-image-gallery dialog{width:min(1100px,94vw);max-height:92vh;padding:12px;border:1px solid #a8e7ff66;border-radius:20px;background:#080e1b;color:#fff;box-shadow:0 35px 100px #000b}
#mgit-image-gallery dialog::backdrop{background:#02050de8;backdrop-filter:blur(7px)}
#mgit-image-gallery dialog img{display:block;width:100%;max-height:80vh;object-fit:contain;cursor:zoom-out}
#mgit-image-gallery dialog button{display:block;margin:0 0 10px auto;padding:9px 18px;border:1px solid #fff5;border-radius:30px;background:#fff1;color:white;cursor:pointer}
@keyframes mig-drift{to{transform:translateX(-50%)}}
@media(max-width:700px){#mgit-image-gallery{padding:65px 0}#mgit-image-gallery .mig-detail{grid-template-columns:1fr;gap:35px}#mgit-image-gallery .mig-topics{gap:12px}#mgit-image-gallery .mig-collage{margin-bottom:25px}#mgit-image-gallery .mig-controls{flex-wrap:wrap}#mgit-image-gallery .mig-preview{aspect-ratio:1.2}}
@media(prefers-reduced-motion:reduce){#mgit-image-gallery .mig-track{animation:none}#mgit-image-gallery *{transition:none!important}}

/* Match the approved MARVIX 215 center-expansion stream. */
#mgit-image-gallery .mig-track{width:100%;display:block;animation:none!important;transform:none!important}
#mgit-image-gallery .mig-tile{top:0;left:0;transform:none;border-radius:2px;border:1px solid #e6f5ff33;box-shadow:0 3px 12px #0003;will-change:transform;transition:box-shadow .2s;scale:1!important}
#mgit-image-gallery .mig-collage{height:clamp(450px,48vw,760px);touch-action:pan-y}

/* Cinematic capability typography, matching the page's Syne headings. */
#mgit-image-gallery .mig-detail{width:min(88%,1800px);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:5vw;align-items:start}
#mgit-image-gallery .mig-topics{gap:24px;min-width:0}
#mgit-image-gallery .mig-topic{font-family:var(--font-wide,'Syne',sans-serif);font-size:clamp(40px,5.2vw,86px);font-weight:800;line-height:1.05;letter-spacing:-.045em;max-width:100%;overflow-wrap:normal;color:#8c9bb0;transition:color .25s,text-shadow .25s,translate .25s}
#mgit-image-gallery .mig-topic:hover,#mgit-image-gallery .mig-topic[aria-pressed=true]{color:#f4fcff;text-shadow:0 0 28px #02b0f155,0 2px 2px #0006;translate:5px 0}
#mgit-image-gallery .mig-preview{position:sticky;top:130px;margin-top:10px}
@media(max-width:700px){#mgit-image-gallery .mig-detail{grid-template-columns:1fr}#mgit-image-gallery .mig-topic{font-size:clamp(36px,8vw,56px)}#mgit-image-gallery .mig-preview{position:relative;top:auto}#mgit-image-gallery .mig-topics{gap:20px}}

/* Two stable preview frames; capability colors do not resize on interaction. */
#mgit-image-gallery{overflow:clip}
#mgit-image-gallery .mig-detail{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:4vw}
#mgit-image-gallery .mig-preview-pair{position:sticky;top:95px;display:grid;gap:18px;align-self:start;min-width:0}
#mgit-image-gallery .mig-preview-pair .mig-preview{position:relative;top:auto;margin:0;aspect-ratio:1.65;max-height:37vh;border-radius:18px}
#mgit-image-gallery .mig-preview img{transform:none!important;transition:opacity .25s;object-fit:cover}
#mgit-image-gallery .mig-topic{--a:#c9ff27;--b:#4bdc37;background:linear-gradient(105deg,var(--a),var(--b),var(--a));background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;animation:mig-chroma 5s ease-in-out infinite;text-shadow:none;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--a) 15%,transparent));translate:0!important}
#mgit-image-gallery .mig-topic:nth-child(5n+2){--a:#ff8a16;--b:#ff2a16;animation-delay:-1s}
#mgit-image-gallery .mig-topic:nth-child(5n+3){--a:#ff244c;--b:#b90c32;animation-delay:-2s}
#mgit-image-gallery .mig-topic:nth-child(5n+4){--a:#ffe32a;--b:#ff8d19;animation-delay:-3s}
#mgit-image-gallery .mig-topic:nth-child(5n+5){--a:#02b0f1;--b:#ef4fff;animation-delay:-4s}
#mgit-image-gallery .mig-topic:nth-child(6){--a:#7460ff;--b:#02b0f1}
#mgit-image-gallery .mig-topic:hover,#mgit-image-gallery .mig-topic[aria-pressed=true]{text-shadow:none;filter:drop-shadow(0 0 15px color-mix(in srgb,var(--a) 40%,transparent));}
@keyframes mig-chroma{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(max-width:700px){#mgit-image-gallery .mig-detail{grid-template-columns:1fr}#mgit-image-gallery .mig-preview-pair{position:sticky;top:65px;grid-row:1;grid-template-columns:1fr 1fr;gap:10px;z-index:3;padding:8px;background:#0b1020ed;border-radius:16px}#mgit-image-gallery .mig-preview-pair .mig-preview{aspect-ratio:1;max-height:32vh}#mgit-image-gallery .mig-preview figcaption{font-size:11px;padding:18px 8px 8px}}
@media(prefers-reduced-motion:reduce){#mgit-image-gallery .mig-topic{animation:none}}

/* Fine white illuminated edging, preserving the colored fill. */
#mgit-image-gallery .mig-topic{-webkit-text-stroke:1px rgba(255,255,255,.92);paint-order:stroke fill;filter:drop-shadow(0 0 2px #ffffff66) drop-shadow(0 0 9px #ffffff25)}
#mgit-image-gallery .mig-topic:hover,#mgit-image-gallery .mig-topic[aria-pressed=true]{filter:drop-shadow(0 0 3px #ffffffaa) drop-shadow(0 0 12px #ffffff55)}
