/* SUBWAY auf Instagram · sechs Studien für die Startseite (Stefan 13.10.2026) – nur Labor (?ig=01…06), Live erst nach Freigabe.
   Präfix .igf (Bereich) · .igf--01…06 (Studien) · .igf-lab (Lab-Leiste) · .igv (Vergleichsansicht).
   Keine Animationen; Zustände nur über Farbe/Kontur. Bilder mit festen Maßen (keine Layoutverschiebung). */

/* ---------- gemeinsam ---------- */
.igf { position: relative; }
.igf a:not(.sw-btn) { color: inherit; text-decoration: none; }
.igf .sw-btn { text-decoration: none; }
.igf .igf-k { display: block; position: relative; }
.igf .igf-bild { position: relative; display: block; overflow: hidden; background: var(--sw-ink-2); aspect-ratio: 4 / 5; }
.igf .igf-bild img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.igf .igf-typ { position: absolute; top: 8px; right: 8px; display: grid; place-items: center; color: #FFF; filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .6)); pointer-events: none; }
.igf .igf-typ:empty { display: none; }
.igf .igf-i { width: 22px; height: 22px; }
.igf .igf-k:focus-visible { outline: 3px solid var(--sw-focus, var(--sw-signal)); outline-offset: 3px; }
.igf .igf-k:hover .igf-bild::after, .igf .igf-k:focus-visible .igf-bild::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 0 4px var(--sw-accent); pointer-events: none; }
[data-theme="papier"] .igf .igf-k:hover .igf-bild::after, [data-theme="papier"] .igf .igf-k:focus-visible .igf-bild::after { box-shadow: inset 0 0 0 4px var(--sw-ink); }
.igf .igf-folgen { display: inline-flex; align-items: center; gap: 10px; }
.igf .igf-folgen .igf-i { width: 20px; height: 20px; }
.igf .igf-handle { border-bottom: 3px solid transparent; }
.igf .igf-handle:hover, .igf .igf-handle:focus-visible { border-bottom-color: var(--sw-accent); }
.igf .igf-vorschau { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: var(--sw-s-m) 0 0; font-size: var(--sw-fs-meta); line-height: 1.4; color: var(--sw-text-2); }
.igf ol { list-style: none; margin: 0; padding: 0; }
.sw-btn--tinte { background: var(--sw-ink); color: var(--sw-paper); }

/* ---------- 01 · Social Strip ---------- */
.igf--01 .igf-kopf { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "h b" "u b"; column-gap: var(--sw-gap); align-items: end; margin-bottom: var(--sw-s-l); }
.igf--01 h2 { grid-area: h; font-size: min(var(--sw-fs-d-m), calc((100vw - 2 * var(--sw-pad)) / 7.4)); } /* „@SUBWAY_MAGAZIN“ passt immer in eine Zeile */
.igf--01 .igf-unter { grid-area: u; margin: var(--sw-s-s) 0 0; color: var(--sw-text-2); }
.igf--01 .igf-folgen { grid-area: b; }
.igf--01 .igf-vorschau { margin: 0 0 var(--sw-s-m); }
.igf--01 .igf-reihe { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; margin: 0 calc(-1 * var(--sw-pad)); }
.igf--01 .igf-datum { position: absolute; left: 0; bottom: 0; padding: 6px 8px 5px; background: var(--sw-ink); color: var(--sw-paper); }
@media (max-width: 1199px) {
	.igf--01 .igf-reihe { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 30%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.igf--01 .igf-reihe::-webkit-scrollbar { display: none; }
	.igf--01 .igf-reihe li { scroll-snap-align: start; }
}
@media (max-width: 767px) {
	.igf--01 .igf-kopf { grid-template-columns: 1fr; grid-template-areas: "h" "u" "b"; }
	.igf--01 .igf-folgen { margin-top: var(--sw-s-m); justify-content: center; }
	.igf--01 .igf-reihe { grid-auto-columns: 44%; }
}

/* ---------- 02 · City Wall ---------- */
.igf--02 { overflow: hidden; background: var(--sw-wand-grund); color: var(--sw-paper); padding-block: var(--sw-s-3xl); }
.igf--02 .igf-wand { position: absolute; inset: 0; background: url(wand.webp) center / auto 100% repeat-x; opacity: .9; }
.igf--02 .igf-wand::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(16, 10, 12, .55), rgba(16, 10, 12, .25) 40%, rgba(16, 10, 12, .6)); }
.igf--02 .igf-flaeche { position: relative; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: auto; column-gap: var(--sw-gap); row-gap: var(--sw-s-xl); align-items: start; }
.igf--02 .igf-streifen { grid-column: 5 / 9; grid-row: 1; align-self: center; padding: var(--sw-s-l) var(--sw-s-l) var(--sw-s-m); background: var(--sw-logo); color: var(--sw-ink); transform: rotate(-1.5deg); box-shadow: 0 18px 30px rgba(0, 0, 0, .45); }
[data-theme="papier"] .igf--02 .igf-streifen, [data-theme="pink"] .igf--02 .igf-streifen, [data-theme="rot"] .igf--02 .igf-streifen { background: #F5C83C; }
.igf--02 .igf-streifen p { margin: 0 0 var(--sw-s-s); }
.igf--02 .igf-streifen h2 { font-size: var(--sw-fs-d-s); }
.igf--02 .igf-streifen .igf-handle { display: inline-block; margin: var(--sw-s-s) 0 var(--sw-s-m); font-weight: 700; }
.igf--02 .igf-streifen .igf-handle:hover, .igf--02 .igf-streifen .igf-handle:focus-visible { border-bottom-color: var(--sw-ink); }
.igf--02 .igf-streifen .sw-btn { display: flex; justify-content: center; }
.igf--02 .igf-plakat .igf-k { padding: 10px 10px 34px; background: #F7F3EC; color: var(--sw-ink); box-shadow: 0 16px 26px rgba(0, 0, 0, .5), 0 3px 5px rgba(0, 0, 0, .35); }
.igf--02 .igf-plakat .igf-datum { position: absolute; left: 12px; bottom: 10px; }
.igf--02 .igf-plakat--1 { grid-column: 1 / 5; grid-row: 1 / 3; transform: rotate(-1deg); }
.igf--02 .igf-plakat--2 { grid-column: 9 / 11; grid-row: 1; transform: rotate(1.2deg); margin-top: var(--sw-s-l); }
.igf--02 .igf-plakat--3 { grid-column: 11 / 13; grid-row: 1; transform: rotate(-.8deg); }
.igf--02 .igf-plakat--4 { grid-column: 5 / 7; grid-row: 2; transform: rotate(.9deg); }
.igf--02 .igf-plakat--5 { grid-column: 7 / 10; grid-row: 2; transform: rotate(-1.3deg); margin-top: calc(-1 * var(--sw-s-l)); }
.igf--02 .igf-plakat--6 { grid-column: 10 / 13; grid-row: 2; transform: rotate(.6deg); margin-top: var(--sw-s-m); }
.igf--02 .igf-vorschau { position: relative; color: var(--sw-text-inv-2); }
@media (max-width: 1199px) {
	.igf--02 .igf-flaeche { grid-template-columns: repeat(6, minmax(0, 1fr)); row-gap: var(--sw-s-l); }
	.igf--02 .igf-streifen { grid-column: 1 / -1; grid-row: auto; }
	.igf--02 .igf-plakat--1 { grid-column: 1 / 4; grid-row: auto; }
	.igf--02 .igf-plakat--2 { grid-column: 4 / 7; grid-row: auto; }
	.igf--02 .igf-plakat--3, .igf--02 .igf-plakat--4, .igf--02 .igf-plakat--5, .igf--02 .igf-plakat--6 { grid-column: span 3; grid-row: auto; margin-top: 0; }
	.igf--02 .igf-plakat--3, .igf--02 .igf-plakat--5 { margin-top: var(--sw-s-m); }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.igf--02 .igf-flaeche { grid-template-columns: repeat(12, minmax(0, 1fr)); }
	.igf--02 .igf-streifen { grid-column: 1 / 7; }
	.igf--02 .igf-plakat--1 { grid-column: 7 / 13; grid-row: 1 / 3; }
	.igf--02 .igf-plakat--2 { grid-column: 1 / 4; } .igf--02 .igf-plakat--3 { grid-column: 4 / 7; }
	.igf--02 .igf-plakat--4 { grid-column: 1 / 5; } .igf--02 .igf-plakat--5 { grid-column: 5 / 9; } .igf--02 .igf-plakat--6 { grid-column: 9 / 13; }
}
@media (max-width: 767px) {
	.igf--02 { padding-block: var(--sw-s-2xl); }
	.igf--02 .igf-plakat--1 { grid-column: 1 / -1; }
	.igf--02 .igf-plakat--2 { grid-column: span 3; }
	.igf--02 .igf-plakat--6 { grid-column: 2 / 6; }
	.igf--02 .igf-plakat .igf-k { padding: 7px 7px 28px; }
	.igf--02 .igf-plakat .igf-datum { left: 8px; bottom: 7px; }
}

/* ---------- 03 · Editorial Grid ---------- */
.igf--03 { row-gap: var(--sw-s-xl); }
.igf--03 .igf-kopf { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--sw-gap); align-items: end; padding-bottom: var(--sw-s-m); border-bottom: var(--sw-line-content); }
.igf--03 .igf-dach { grid-column: 1 / -1; margin: 0 0 var(--sw-s-s); color: var(--sw-text-2); }
.igf--03 h2 { grid-column: 1 / 7; font-size: var(--sw-fs-d-l); color: var(--sw-word); }
.igf--03 .igf-lead { grid-column: 7 / 11; margin: 0; font-family: var(--sw-font-accent); font-style: italic; font-size: var(--sw-fs-intro); line-height: 1.35; }
.igf--03 .igf-kopf__links { grid-column: 11 / -1; display: grid; justify-items: end; gap: var(--sw-s-s); }
.igf--03 .igf-kopf__links .igf-handle { font-weight: 700; }
.igf--03 > .igf-vorschau { grid-column: 1 / -1; margin: 0; }
.igf--03 .igf-auf { grid-column: 1 / 5; }
.igf--03 .igf-auf .igf-meta { display: block; margin: var(--sw-s-s) 0 var(--sw-s-xs); color: var(--sw-text-2); }
.igf--03 .igf-auf__t { display: block; font-family: var(--sw-font-display); font-size: var(--sw-fs-c-xl); line-height: 1.02; text-transform: uppercase; }
.igf--03 .igf-auf__x { display: block; margin-top: var(--sw-s-s); max-width: 52ch; font-family: var(--sw-font-accent); font-size: var(--sw-fs-intro); line-height: 1.4; color: var(--sw-text-2); }
.igf--03 .igf-auf__mehr { display: inline-block; margin-top: var(--sw-s-m); }
.igf--03 .igf-auf .igf-k:hover .igf-auf__mehr { border-bottom-color: var(--sw-accent); }
.igf--03 .igf-liste { grid-column: 6 / -1; align-self: start; border-top: var(--sw-line-content); }
.igf--03 .igf-liste li { border-bottom: var(--sw-line-micro); }
.igf--03 .igf-liste .igf-k { display: grid; grid-template-columns: 56px 112px minmax(0, 1fr); gap: var(--sw-s-m); align-items: center; padding: var(--sw-s-s) 0; }
.igf--03 .igf-nr { font-family: var(--sw-font-display); font-size: 48px; line-height: .8; color: transparent; -webkit-text-stroke: 1.5px var(--sw-ink); }
.igf--03 .igf-liste .igf-meta { display: block; margin-bottom: var(--sw-s-xs); color: var(--sw-text-2); }
.igf--03 .igf-z__t { font-family: var(--sw-font-ui); font-weight: 600; font-size: var(--sw-fs-c-m); line-height: 1.25; }
.igf--03 .igf-liste .igf-k:hover .igf-z__t, .igf--03 .igf-liste .igf-k:focus-visible .igf-z__t { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; text-decoration-color: var(--sw-accent); }
.igf--03 .igf-liste .igf-k:hover .igf-bild::after, .igf--03 .igf-liste .igf-k:focus-visible .igf-bild::after { box-shadow: inset 0 0 0 3px var(--sw-accent); }
@media (max-width: 1199px) {
	.igf--03 .igf-kopf { grid-template-columns: repeat(8, minmax(0, 1fr)); }
	.igf--03 h2 { grid-column: 1 / -1; }
	.igf--03 .igf-lead { grid-column: 1 / 6; margin-top: var(--sw-s-m); }
	.igf--03 .igf-kopf__links { grid-column: 6 / -1; }
	.igf--03 .igf-auf { grid-column: 1 / 5; }
	.igf--03 .igf-liste { grid-column: 5 / -1; }
	.igf--03 .igf-liste .igf-k { grid-template-columns: 72px minmax(0, 1fr); }
	.igf--03 .igf-liste .igf-nr { display: none; }
}
@media (max-width: 767px) {
	.igf--03 .igf-kopf { grid-template-columns: 1fr; }
	.igf--03 .igf-lead, .igf--03 .igf-kopf__links { grid-column: 1 / -1; }
	.igf--03 .igf-kopf__links { justify-items: start; margin-top: var(--sw-s-m); }
	.igf--03 .igf-auf, .igf--03 .igf-liste { grid-column: 1 / -1; }
	.igf--03 .igf-liste .igf-k { grid-template-columns: 30px 72px minmax(0, 1fr); gap: var(--sw-s-s); }
	.igf--03 .igf-liste .igf-nr { display: block; font-size: 30px; }
	.igf--03 .igf-z__t { font-size: var(--sw-fs-c-s); }
}

/* ---------- 04 · Filmstrip ---------- */
.igf--04 .igf-kopf { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "h b" "u b"; column-gap: var(--sw-gap); align-items: end; margin-bottom: var(--sw-s-l); }
.igf--04 h2 { grid-area: h; font-size: var(--sw-fs-d-s); }
.igf--04 .igf-unter { grid-area: u; margin: var(--sw-s-xs) 0 0; font-family: var(--sw-font-accent); font-style: italic; font-size: var(--sw-fs-intro); }
.igf--04 .igf-unter .igf-handle { font-family: var(--sw-font-ui); font-style: normal; font-weight: 700; font-size: .85em; }
.igf--04 .igf-folgen { grid-area: b; }
.igf--04 .igf-vorschau { margin: 0 0 var(--sw-s-m); }
.igf--04 .igf-film { --loch: 14px; position: relative; margin: 0 calc(-1 * var(--sw-pad)); padding: calc(var(--loch) * 2.4) var(--sw-pad); background: var(--sw-film); color: #E2733A; }
.igf--04 .igf-film::before, .igf--04 .igf-film::after { content: ""; position: absolute; left: 0; right: 0; height: var(--loch); background: repeating-linear-gradient(90deg, transparent 0 10px, #E9E3D8 10px 24px, transparent 24px 34px); -webkit-mask: linear-gradient(#000 0 0); border-radius: 0; opacity: .92; }
.igf--04 .igf-film::before { top: calc(var(--loch) * .7); }
.igf--04 .igf-film::after { bottom: calc(var(--loch) * .7); }
.igf--04 .igf-band { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--sw-s-s); }
.igf--04 .igf-bild { border-radius: 3px; }
.igf--04 .igf-rand { display: flex; flex-direction: column; gap: 3px; margin-top: 10px; font-family: var(--sw-font-ui); font-stretch: 75%; font-weight: 800; font-size: var(--sw-fs-meta); letter-spacing: .14em; line-height: 1.2; white-space: nowrap; }
.igf--04 .igf-k:hover .igf-rand, .igf--04 .igf-k:focus-visible .igf-rand { color: #F5C83C; }
@media (max-width: 1199px) {
	.igf--04 .igf-band { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 36%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; scroll-padding-inline: var(--sw-pad); }
	.igf--04 .igf-band::-webkit-scrollbar { display: none; }
	.igf--04 .igf-band li { scroll-snap-align: start; }
	.igf--04 .igf-film { padding-inline: 0; }
	.igf--04 .igf-band { padding-inline: var(--sw-pad); }
}
@media (max-width: 767px) {
	.igf--04 .igf-kopf { grid-template-columns: 1fr; grid-template-areas: "h" "u" "b"; }
	.igf--04 .igf-folgen { margin-top: var(--sw-s-m); justify-content: center; }
	.igf--04 .igf-band { grid-auto-columns: 58%; }
}

/* ---------- 05 · Social Pulse ---------- */
.igf--05 .igf-puls { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto; column-gap: var(--sw-gap); row-gap: var(--sw-gap); align-items: start; }
.igf--05 .igf-info { grid-column: 1 / 4; grid-row: 1; }
.igf--05 .igf-dach { display: flex; align-items: center; gap: 10px; margin: 0 0 var(--sw-s-s); }
.igf--05 .igf-punkt { width: 12px; height: 12px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 22%, transparent); }
.igf--05 h2 { font-size: var(--sw-fs-d-s); }
.igf--05 .igf-lead { margin: var(--sw-s-s) 0 var(--sw-s-s); max-width: 30ch; }
.igf--05 .igf-handle { display: inline-block; margin-bottom: var(--sw-s-m); font-weight: 700; }
.igf--05 .igf-handle:hover, .igf--05 .igf-handle:focus-visible { border-bottom-color: currentColor; }
.igf--05 .igf-info .sw-btn { display: flex; justify-content: center; }
.igf--05 .igf-datum { display: block; margin-top: var(--sw-s-xs); }
.igf--05 .igf-info { grid-row: 1 / 3; align-self: stretch; display: flex; flex-direction: column; }
.igf--05 .igf-info .sw-btn { margin-top: auto; }
.igf--05 .igf-p--1 { grid-column: 4 / 7; grid-row: 1 / 3; }
.igf--05 .igf-p--2 { grid-column: 7 / 9; grid-row: 1 / 3; }
.igf--05 .igf-p--2 .igf-bild { aspect-ratio: 9 / 16; }
.igf--05 .igf-p--3 { grid-column: 9 / 11; grid-row: 1; }
.igf--05 .igf-p--3 .igf-bild { aspect-ratio: 1; }
.igf--05 .igf-p--4 { grid-column: 11 / 13; grid-row: 1; }
.igf--05 .igf-p--4 .igf-bild, .igf--05 .igf-p--5 .igf-bild { aspect-ratio: 1; }
.igf--05 .igf-p--5 { grid-column: 9 / 11; grid-row: 2; }
.igf--05 .igf-p--6 { grid-column: 11 / 13; grid-row: 2; }
.igf--05 .igf-p--6 .igf-bild { aspect-ratio: 1; }
.igf--05 .igf-k:hover .igf-bild::after, .igf--05 .igf-k:focus-visible .igf-bild::after { box-shadow: inset 0 0 0 4px var(--igf-rahmen, #B70074); }
.igf--05 .igf-vorschau { color: inherit; }
@media (max-width: 1199px) {
	.igf--05 .igf-puls { grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: none; }
	.igf--05 .igf-info { grid-column: 1 / -1; grid-row: auto; display: block; }
	.igf--05 .igf-info .sw-btn { display: inline-flex; margin-top: 0; }
	.igf--05 .igf-p--1 { grid-column: 1 / 4; grid-row: auto; }
	.igf--05 .igf-p--2 { grid-column: 4 / 7; grid-row: auto; }
	.igf--05 .igf-p--2 .igf-bild { aspect-ratio: 4 / 5; }
	.igf--05 .igf-p--3, .igf--05 .igf-p--4, .igf--05 .igf-p--5, .igf--05 .igf-p--6 { grid-column: span 3; grid-row: auto; }
}
@media (max-width: 767px) {
	.igf--05 .igf-puls { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--sw-s-m); column-gap: var(--sw-s-s); }
	.igf--05 .igf-info .sw-btn { display: flex; }
	.igf--05 .igf-p--1 { grid-column: 1 / -1; grid-row: auto; }
	.igf--05 .igf-p--2 { grid-column: 1; grid-row: span 2; }
	.igf--05 .igf-p--3, .igf--05 .igf-p--4 { grid-column: 2; }
	.igf--05 .igf-p--4 .igf-bild { aspect-ratio: 1; }
	.igf--05 .igf-p--5, .igf--05 .igf-p--6 { grid-column: span 1; }
	.igf--05 .igf-lead { max-width: none; }
}

/* ---------- 06 · SUBWAY Contact Sheet ---------- */
.igf--06 { align-items: start; }
.igf--06 .igf-kopf { grid-column: 1 / 5; position: sticky; top: calc(var(--sw-sticky) + var(--sw-s-l)); }
.igf--06 .igf-dach { margin: 0 0 var(--sw-s-s); color: var(--sw-text-2); }
.igf--06 h2 { font-size: var(--sw-fs-d-m); hyphens: manual; }
.igf--06 .igf-lead { margin: var(--sw-s-m) 0 var(--sw-s-l); max-width: 34ch; font-family: var(--sw-font-accent); font-style: italic; font-size: var(--sw-fs-intro); line-height: 1.35; }
.igf--06 .igf-lead .igf-handle { font-family: var(--sw-font-ui); font-style: normal; font-weight: 700; font-size: .85em; }
.igf--06 .igf-bogen { grid-column: 5 / -1; padding: var(--sw-s-m) var(--sw-s-l) var(--sw-s-l); background: var(--sw-surface); box-shadow: 0 1px 0 var(--sw-line-color), 0 18px 34px rgba(20, 17, 15, .12); }
.igf--06 .igf-bogen__kopf { display: flex; justify-content: space-between; gap: var(--sw-s-s); margin: 0 0 var(--sw-s-m); padding-bottom: var(--sw-s-s); border-bottom: var(--sw-line-content); }
.igf--06 .igf-raster { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sw-s-xl) var(--sw-s-l); }
.igf--06 .igf-raster li { position: relative; }
/* Schnittmarken an den vier Bildecken */
.igf--06 .igf-bild { overflow: visible; }
.igf--06 .igf-bild::before { content: ""; position: absolute; inset: -9px; z-index: 1; pointer-events: none; background:
	linear-gradient(var(--sw-ink), var(--sw-ink)) 0 0 / 1px 7px no-repeat, linear-gradient(var(--sw-ink), var(--sw-ink)) 0 0 / 7px 1px no-repeat,
	linear-gradient(var(--sw-ink), var(--sw-ink)) 100% 0 / 1px 7px no-repeat, linear-gradient(var(--sw-ink), var(--sw-ink)) 100% 0 / 7px 1px no-repeat,
	linear-gradient(var(--sw-ink), var(--sw-ink)) 0 100% / 1px 7px no-repeat, linear-gradient(var(--sw-ink), var(--sw-ink)) 0 100% / 7px 1px no-repeat,
	linear-gradient(var(--sw-ink), var(--sw-ink)) 100% 100% / 1px 7px no-repeat, linear-gradient(var(--sw-ink), var(--sw-ink)) 100% 100% / 7px 1px no-repeat; }
.igf--06 .igf-bild img { position: absolute; }
.igf--06 .igf-fuss { display: flex; align-items: baseline; gap: var(--sw-s-s); margin-top: var(--sw-s-s); }
.igf--06 .igf-nr { font-family: var(--sw-font-display); font-size: 40px; line-height: .8; color: transparent; -webkit-text-stroke: 1.5px var(--sw-ink); }
.igf--06 .igf-fuss .sw-t-meta { color: var(--sw-text-2); }
.igf--06 .igf-marker { position: absolute; z-index: 2; left: -7%; top: -5%; width: 114%; height: 92%; overflow: visible; pointer-events: none; transform: rotate(-3deg); }
.igf--06 .igf-marker path { fill: none; stroke: var(--sw-signal); stroke-width: 6px; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.igf--06 .igf-notiz { position: absolute; z-index: 3; right: -4%; top: -6%; padding: 4px 8px 3px; background: var(--sw-signal); color: var(--sw-ink); font-family: var(--sw-font-display); font-size: 18px; line-height: 1; text-transform: uppercase; transform: rotate(4deg); }
.igf--06 .igf-k:hover .igf-nr, .igf--06 .igf-k:focus-visible .igf-nr { color: var(--sw-ink); }
.igf--06 > .igf-vorschau { grid-column: 5 / -1; }
@media (max-width: 1199px) {
	.igf--06 .igf-kopf { grid-column: 1 / -1; position: static; margin-bottom: var(--sw-s-l); }
	.igf--06 .igf-bogen, .igf--06 > .igf-vorschau { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
	.igf--06 .igf-bogen { margin-inline: calc(-1 * var(--sw-s-xs)); padding: var(--sw-s-s); }
	.igf--06 .igf-bogen__kopf { flex-direction: column; gap: 2px; }
	.igf--06 .igf-raster { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sw-s-l) var(--sw-s-m); }
	.igf--06 .igf-nr { font-size: 30px; }
	.igf--06 .igf-fuss { gap: var(--sw-s-xs); }
	.igf--06 .igf-fuss .sw-t-meta { font-size: 11px; letter-spacing: .08em; }
}

/* ---------- Lab-Leiste (nur Labor) ---------- */
.igf-lab { position: fixed; z-index: 9990; left: 50%; bottom: 14px; transform: translateX(-50%); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2px; max-width: calc(100vw - 24px); padding: 6px; background: var(--sw-ink); color: var(--sw-paper); font-family: var(--sw-font-ui); font-size: 13px; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); }
.igf-lab__t { padding: 0 10px; font-weight: 800; font-stretch: 75%; letter-spacing: .12em; text-transform: uppercase; font-size: 11px; }
.igf-lab a { padding: 7px 10px; color: var(--sw-paper); text-decoration: none; font-weight: 700; }
.igf-lab a:hover, .igf-lab a:focus-visible { background: var(--sw-ink-3); }
.igf-lab a[aria-current="true"] { background: #F5C83C; color: var(--sw-ink); }
.igf-lab__sep { width: 1px; height: 22px; margin: 0 6px; background: var(--sw-line-color-dark); }
@media (max-width: 767px) { .igf-lab { bottom: 8px; font-size: 12px; } .igf-lab__t { display: none; } .igf-lab a { padding: 6px 7px; } }

/* ---------- Vergleichsansicht ---------- */
.igv .suv-tabs button em { margin-left: 6px; padding: 2px 6px; background: #F5C83C; color: var(--sw-ink); font-style: normal; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.igv .igv-merk { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.igv .igv-zust { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.igv .igv-zu { padding: 8px 12px; border: 1.5px solid var(--sw-ink); background: none; color: var(--sw-ink); font: 700 13px/1 var(--sw-font-ui); cursor: pointer; }
.igv .igv-zu[aria-pressed="true"] { background: var(--sw-ink); color: var(--sw-paper); }
.igv .igv-zu:focus-visible { outline: 3px solid #F5C83C; outline-offset: 2px; }
.igv .igv-rahmen { grid-template-columns: minmax(0, 1fr) 320px; }
.igv .suv-f--d .suv-f__vp { aspect-ratio: 1440 / 1500; }
.igv .suv-f--m .suv-f__vp { aspect-ratio: 390 / 1500; }
.igv .igv-pos { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 20px 0 0; font-size: 14px; }
.igv .igv-pos a { padding: 6px 10px; border: 1.5px solid var(--sw-ink); text-decoration: none; font-weight: 700; }
.igv .igv-pos a[aria-current="true"] { background: var(--sw-ink); color: var(--sw-paper); }
@media (max-width: 1023px) { .igv .igv-merk { grid-template-columns: 1fr 1fr; } .igv .igv-rahmen { grid-template-columns: 1fr; } .igv .suv-f--m { max-width: 390px; } }

/* ---------- 07 · Auswahl Stefan (13.10.2026): 05 mit Titel „SUBWAY auf Instagram“, Bilder im Originalformat ---------- */
.igf--07 .igf-puls { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--sw-gap); align-items: start; }
.igf--07 .igf-info { grid-column: 1 / 4; }
.igf--07 .igf-dach { margin: 0 0 var(--sw-s-s); }
.igf--07 h2 { font-size: var(--sw-fs-d-m); line-height: .84; }
/* „INSTAGRAM“ füllt die Absenderspalte (3 von 12 Spalten), bricht nie um */
@media (min-width: 1200px) { .igf--07 h2 { font-size: calc((3 * (min(100vw, var(--sw-max)) - 2 * var(--sw-m) - 11 * var(--sw-gap)) / 12 + 2 * var(--sw-gap)) / 4.2); } }
.igf--07 .igf-lead { margin: var(--sw-s-m) 0 var(--sw-s-s); max-width: 30ch; font-family: var(--sw-font-accent); font-style: italic; font-size: var(--sw-fs-intro); line-height: 1.35; } /* Schrift wie Vorspann in 03 (Stefan 13.10.2026) */
.igf--07 .igf-handle { display: block; width: max-content; margin-bottom: var(--sw-s-m); font-weight: 700; font-size: var(--sw-fs-c-s); } /* eigene Zeile – stößt nie an den Button (Tablet, 13.10.2026) */ /* Handle + Button wie Absender-Streifen der City Wall (Stefan 13.10.2026) */
.igf--07 .igf-handle:hover, .igf--07 .igf-handle:focus-visible { border-bottom-color: currentColor; }
.igf--07 .igf-info .sw-btn { display: flex; justify-content: center; }
.igf--07 .sw-btn--tinte:hover, .igf--07 .sw-btn--tinte:focus-visible { background: var(--igf-rahmen); color: #FFF; }
[data-theme="pink"] .igf--07 .sw-btn--tinte:hover, [data-theme="pink"] .igf--07 .sw-btn--tinte:focus-visible { background: var(--sw-paper); color: var(--sw-ink); }
.igf--07 { container-type: inline-size; }
.igf--07 .igf-sechs { grid-column: 4 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) repeat(2, minmax(0, .5fr)); column-gap: 24px; row-gap: 16px; align-items: start; }
.igf--07 .igf-datum { height: 16px; line-height: 16px; }
/* Weiße Bildrahmen + Schatten wie 02 City Wall (Stefan 13.10.2026): 10 px Rand, unten 34 px mit Datum */
.igf--07 .igf-k { padding: 10px 10px 34px; background: #F7F3EC; color: var(--sw-ink); box-shadow: 0 16px 26px rgba(0, 0, 0, .28), 0 3px 5px rgba(0, 0, 0, .18); }
.igf--07 .igf-k .igf-datum { position: absolute; left: 12px; bottom: 9px; }
/* Die zwei großen Bilder (Desktop): 84 % und zufällig geneigt (Winkel aus inc/instagram-feed.php, ±1,2° bis ±4°), Stefan 13.10.2026 */
.igf--07 .igf-k { transform: rotate(var(--igf-dreh, 0deg)) scale(var(--igf-s, 1)); transform-origin: 50% 50%; }
.igf--07 .igf-p--1 .igf-k, .igf--07 .igf-p--2 .igf-k { --igf-s: .84; }
/* Desktop mit Maus: Bild kommt beim Überfahren leicht nach vorn (Stefan 13.10.2026) */
@media (min-width: 1200px) and (hover: hover) and (pointer: fine) {
	.igf--07 .igf-k { transition: transform .25s var(--sw-ease), box-shadow .25s var(--sw-ease); }
	.igf--07 .igf-p:hover, .igf--07 .igf-p:focus-within { z-index: 2; }
	.igf--07 .igf-k:hover, .igf--07 .igf-k:focus-visible { --igf-s: 1.05; box-shadow: 0 24px 38px rgba(0, 0, 0, .34), 0 6px 10px rgba(0, 0, 0, .2); }
	.igf--07 .igf-p--1 .igf-k:hover, .igf--07 .igf-p--1 .igf-k:focus-visible, .igf--07 .igf-p--2 .igf-k:hover, .igf--07 .igf-p--2 .igf-k:focus-visible { --igf-s: .88; }
}
@media (prefers-reduced-motion: reduce) { .igf--07 .igf-k { transition: none; } }
/* Bündig (Stefan 13.10.2026 „ausrichten“): Rahmenunterkante groß = Rahmenunterkante der unteren kleinen Reihe.
   Kachelhöhe bei 4:5 = 1,25·(Breite − 20) + 44. Groß = 2 × klein + 16 (Zeilenabstand) ⇒ K = B/2 − 14;
   2B + 2K + 3·24 = Kachelfläche (9 von 12 Spalten) ⇒ B = ¼·(Inhaltsbreite − 11·Gutter) + 70,67 px (Inhaltsbreite = 100cqw). */
@media (min-width: 1200px) {
	.igf--07 .igf-sechs { grid-template-columns: repeat(2, calc(.25 * (100cqw - 11 * var(--sw-gap)) + 70.6667px)) repeat(2, minmax(0, 1fr)); }
}
.igf--07 .igf-bild img { object-fit: contain; } /* Kachel = Originalformat; contain nur als Absicherung, falls Maße fehlen */
.igf--07 .igf-p--1 { grid-column: 1; grid-row: 1 / 3; }
.igf--07 .igf-p--2 { grid-column: 2; grid-row: 1 / 3; }
.igf--07 .igf-p--3 { grid-column: 3; grid-row: 1; } .igf--07 .igf-p--4 { grid-column: 4; grid-row: 1; }
.igf--07 .igf-p--5 { grid-column: 3; grid-row: 2; } .igf--07 .igf-p--6 { grid-column: 4; grid-row: 2; }
.igf--07 .igf-datum { display: block; }
.igf--05, .igf--07 { --igf-rahmen: #B70074; } /* Hover-Rahmen SUBWAY-Pink (Logo), Stefan 13.10.2026 */
[data-theme="pink"] .igf--05, [data-theme="pink"] .igf--07 { --igf-rahmen: var(--sw-ink); } /* auf pinker Fläche sonst unsichtbar */
.igf--07 .igf-k:hover .igf-bild::after, .igf--07 .igf-k:focus-visible .igf-bild::after { box-shadow: inset 0 0 0 4px var(--igf-rahmen); }
.igf--07 .igf-vorschau { color: inherit; }
@media (max-width: 1199px) {
	.igf--07 .igf-puls { grid-template-columns: 1fr; row-gap: var(--sw-s-l); }
	.igf--07 .igf-info, .igf--07 .igf-sechs { grid-column: 1 / -1; }
	.igf--07 .igf-info .sw-btn { display: inline-flex; }
	/* Tablet wie mobil: alle sechs gerade und gleich groß, drei Spalten (Stefan 13.10.2026) */
	.igf--07 .igf-sechs { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--sw-s-l); row-gap: var(--sw-s-l); }
	.igf--07 .igf-p--1, .igf--07 .igf-p--2, .igf--07 .igf-p--3, .igf--07 .igf-p--4, .igf--07 .igf-p--5, .igf--07 .igf-p--6 { grid-column: auto; grid-row: auto; }
	.igf--07 .igf-p--1 .igf-k, .igf--07 .igf-p--2 .igf-k { transform: none; }
}
@media (max-width: 767px) {
	.igf--07 .igf-sechs { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--sw-s-s); row-gap: var(--sw-s-m); }
	.igf--07 .igf-p--1, .igf--07 .igf-p--2, .igf--07 .igf-p--3, .igf--07 .igf-p--4, .igf--07 .igf-p--5, .igf--07 .igf-p--6 { grid-column: auto; grid-row: auto; }
	.igf--07 .igf-info .sw-btn { display: flex; }
	.igf--07 h2 { font-size: var(--sw-fs-d-l); }
}

/* 07: oben und unten etwas mehr Luft (Stefan 13.10.2026) */
.igf--07.sw-sec{padding-top:calc(var(--sw-sec-c) + var(--sw-s-l));padding-bottom:calc(var(--sw-sec-c) + var(--sw-s-l))}
