:root {
  --paper: #f0f0ee;
  --white: #fff;
  --ink: #111;
  --muted: #4f4f4d;
  --line: rgba(17, 17, 17, .28);
  --sans: "Inter Tight", "General Sans", Arial, sans-serif;
  --mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--sans);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

/* FINAL CLEAN GRID — project-specific fields based on source-document ratios. */
.editorial-project.project-view--ir-regular,
.editorial-project.project-view--modul,
.editorial-project.project-view--the-walls {
  --story-bg: #fff;
  --story-ink: #0a0a0a;
  --story-accent: #0a0a0a;
  --stage: #fff;
}

body:has(.project-view--ir-regular) .detail-head,
body:has(.project-view--modul) .detail-head,
body:has(.project-view--the-walls) .detail-head,
.project-view--ir-regular + .language-control,
.project-view--modul + .language-control,
.project-view--the-walls + .language-control,
.project-view--ir-regular .editorial-hero__section,
.project-view--modul .editorial-hero__section,
.project-view--the-walls .editorial-hero__section {
  color: #0a0a0a !important;
}

.project-view--ir-regular .story-board,
.project-view--modul .story-board,
.project-view--the-walls .story-board {
  width: 100% !important;
  margin-inline: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 0 !important;
}

.project-view--ghostland .story-board__media,
.project-view--ir-regular .story-board__media,
.project-view--modul .story-board__media,
.project-view--the-walls .story-board__media {
  gap: clamp(.35rem, .65vw, .7rem) !important;
  padding: 0 !important;
  background: transparent !important;
}

.project-view--ghostland .story-board__cell,
.project-view--ir-regular .story-board__cell,
.project-view--modul .story-board__cell,
.project-view--the-walls .story-board__cell {
  min-width: 0;
  overflow: hidden;
  background: #fff !important;
  align-self: stretch;
}

.project-view--ghostland .story-frame__asset,
.project-view--ir-regular .story-frame__asset,
.project-view--modul .story-frame__asset,
.project-view--the-walls .story-frame__asset {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
}

@media (min-width: 761px) {
  /* Three documents form one uninterrupted row; four form a balanced 2×2 field. */
  .project-view--ghostland .story-board--3 .story-board__media,
  .project-view--ir-regular .story-board--3 .story-board__media,
  .project-view--modul .story-board--3 .story-board__media {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
  }
  .project-view--ghostland .story-board--3 .story-board__cell,
  .project-view--ir-regular .story-board--3 .story-board__cell,
  .project-view--modul .story-board--3 .story-board__cell {
    grid-row: 1 !important;
    aspect-ratio: 4 / 3;
  }
  .project-view--ghostland .story-board--3 .story-board__cell--1,
  .project-view--ir-regular .story-board--3 .story-board__cell--1,
  .project-view--modul .story-board--3 .story-board__cell--1 { grid-column: 1 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--2,
  .project-view--ir-regular .story-board--3 .story-board__cell--2,
  .project-view--modul .story-board--3 .story-board__cell--2 { grid-column: 2 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--3,
  .project-view--ir-regular .story-board--3 .story-board__cell--3,
  .project-view--modul .story-board--3 .story-board__cell--3 { grid-column: 3 !important; }

  .project-view--ir-regular .story-board--4 .story-board__cell,
  .project-view--modul .story-board--4 .story-board__cell,
  .project-view--the-walls .story-board--4 .story-board__cell {
    aspect-ratio: 4 / 3;
  }
  .project-view--ir-regular .story-board:first-child .story-board__cell,
  .project-view--the-walls .story-board:first-child .story-board__cell {
    aspect-ratio: 3 / 4;
  }
  .project-view--modul .story-board:nth-child(2) .story-board__cell {
    aspect-ratio: 1 / 1;
  }
  .project-view--modul .story-board--2 .story-board__cell {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 760px) {
  .project-view--ghostland .story-board__cell,
  .project-view--ir-regular .story-board__cell,
  .project-view--modul .story-board__cell,
  .project-view--the-walls .story-board__cell {
    aspect-ratio: auto !important;
  }
  .project-view--ghostland .story-frame__asset,
  .project-view--ir-regular .story-frame__asset,
  .project-view--modul .story-frame__asset,
  .project-view--the-walls .story-frame__asset {
    height: auto !important;
  }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-width: 320px; margin: 0; overflow-x: hidden; background: var(--paper); }
button, a { font: inherit; }
button { border: 0; cursor: pointer; }
a { color: inherit; text-decoration: none; }
img, video, object { display: block; max-width: 100%; }

.skip-link {
  position: fixed; top: -6rem; left: 1rem; z-index: 100;
  padding: .65rem .8rem; color: #fff; background: #000; font: .75rem var(--mono);
}
.skip-link:focus { top: 1rem; }
.view { min-height: 100svh; }

.language-control {
  position: fixed; bottom: 1.1rem; left: 1.15rem; z-index: 30;
  padding: .18rem 0; color: var(--ink); background: transparent;
  font: .75rem/1 var(--mono); letter-spacing: .02em;
}
.language-control:hover, .language-control:focus-visible { text-decoration: underline; text-underline-offset: .28rem; }

.detail-head {
  position: fixed; inset: 0 0 auto; z-index: 20;
  display: flex; align-items: flex-start; justify-content: space-between; gap: 2rem;
  padding: 1.1rem 1.25rem; color: var(--ink);
  transition: opacity .35s ease, color .25s ease;
  pointer-events: none;
}
.detail-head > * { pointer-events: auto; }
.detail-head--archive { z-index: 60; color: #fff; mix-blend-mode: normal; text-shadow: 0 1px 3px rgba(0,0,0,.9); }
.detail-head--about { color: #fff; }
.detail-name { font: 600 .85rem/1 var(--sans); letter-spacing: -.015em; }
.detail-head nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .35rem 1rem; max-width: min(61vw, 46rem); }
.detail-head nav a { font: .69rem/1.1 var(--mono); }
.detail-head nav a:hover, .detail-head nav a:focus-visible, .detail-head nav .is-current { text-decoration: underline; text-underline-offset: .28rem; }

/* Home and layer menu */
.home-view {
  position: relative; display: grid; place-items: center; min-height: 100svh;
  overflow: hidden; background: #ebebea;
}
.home-copy { position: relative; z-index: 2; padding: 2rem 1.25rem; text-align: center; pointer-events: none; }
.home-name {
  margin: 0; color: #000; font: 600 clamp(4rem, 15vw, 13.2rem)/.86 var(--sans);
  letter-spacing: -.02em; white-space: nowrap;
}
.home-name::after {
  display: inline-block; width: .045em; height: .74em; margin: 0 0 -.06em .09em;
  background: currentColor; content: ""; animation: caret .85s step-end infinite;
}
.home-practice { margin: 1.2rem 0 0; color: #424240; font: .75rem/1.55 var(--mono); letter-spacing: -.025em; }
.layer-field { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.layer-chip {
  position: absolute; display: block; padding: .62rem .72rem .57rem; color: #fff; background: #000;
  font: .91rem/1 var(--mono); letter-spacing: -.04em; opacity: 0;
  transform: translateY(.6rem) scale(.98); transition: opacity .24s ease, transform .24s ease, background .18s ease;
  pointer-events: none;
}
.layer-field.is-visible .layer-chip { opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; }
.layer-chip:hover, .layer-chip:focus-visible { color: #000; background: #fff; outline: 1px solid #000; }
.layer-chip--1 { top: clamp(5rem, 18vh, 11rem); left: clamp(1rem, 12vw, 13rem); }
.layer-chip--2 { top: clamp(7rem, 28vh, 16rem); right: clamp(1rem, 11vw, 12rem); }
.layer-chip--3 { bottom: clamp(6rem, 17vh, 12rem); left: clamp(1rem, 22vw, 23rem); }
.layer-chip--4 { right: clamp(1rem, 20vw, 21rem); bottom: clamp(4.5rem, 10vh, 7rem); }

/* Keep header links and language controls comfortably tappable on touch devices. */
@media (max-width: 960px), (hover: none) {
  .detail-head { gap: .55rem; padding: .72rem clamp(.85rem, 3vw, 1.25rem); }
  .detail-name { display: inline-flex; min-height: 2.75rem; align-items: center; }
  .detail-head nav { gap: .1rem .32rem; }
  .detail-head nav a {
    display: inline-flex; min-height: 2.75rem; align-items: center; padding: .42rem .24rem;
    font-size: .72rem;
  }
  .language-control { min-width: 2.75rem; min-height: 2.75rem; padding: .9rem .5rem; }
}

/* Selection */
.collection-view { padding: 5.25rem 0 2rem; background: var(--paper); }
.collection-title { margin: 0 1.25rem clamp(1.5rem, 2.7vw, 2.7rem); font: 600 clamp(3.5rem, 8vw, 8rem)/.82 var(--sans); letter-spacing: -.02em; }
.selection-carousel { position: relative; }
.work-timeline {
  display: flex; align-items: flex-start; gap: clamp(1rem, 2.1vw, 2.35rem); min-height: 0;
  padding: 0 1.25rem 2.8rem; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin;
  scroll-behavior: smooth; scroll-snap-type: x proximity; cursor: grab;
}
.work-timeline:active { cursor: grabbing; }
.work-timeline, .lab-timeline, .aralarda-timeline { scrollbar-width: none; }
.work-timeline::-webkit-scrollbar, .lab-timeline::-webkit-scrollbar, .aralarda-timeline::-webkit-scrollbar { display: none; }
.work-tile { flex: 0 0 auto; scroll-snap-align: start; max-width: min(52vw, 30rem); }
.work-tile__media { display: flex; align-items: flex-end; height: min(32svh, 23rem); min-height: 0; }
.work-tile__image { display: block; width: auto; max-width: min(48vw, 28rem); height: min(29svh, 21rem); max-height: 29svh; object-fit: contain; object-position: left bottom; transition: opacity .2s ease; }
.work-tile:hover .work-tile__image, .work-tile:focus-visible .work-tile__image { opacity: .78; }
.work-tile__caption { max-width: min(34rem, 76vw); min-height: 3.9rem; padding-top: .65rem; opacity: 1; transform: none; }
.work-tile__caption h2 { max-width: 18ch; margin: 0; font: 500 clamp(1.05rem, 1.7vw, 1.7rem)/.98 var(--sans); letter-spacing: -.01em; }
.work-tile__caption p { margin: .35rem 0 0; color: var(--muted); font: .65rem/1.45 var(--mono); }
.work-tile--balikesir .work-tile__media { height: min(36svh, 25rem); }
.work-tile--play-in .work-tile__media { height: min(27svh, 19rem); }
.work-tile--aralarda .work-tile__media { height: min(31svh, 22rem); }
.work-tile--ghostland .work-tile__media { height: min(34svh, 24rem); }
.work-tile--kok .work-tile__media { height: min(29svh, 21rem); }
.work-tile--lal .work-tile__media { height: min(34svh, 24rem); }
.work-tile--tlaloc .work-tile__media { height: min(35svh, 25rem); }
.work-tile--balikesir .work-tile__image { height: min(33svh, 23rem); max-height: 33svh; }
.work-tile--play-in .work-tile__image { height: min(25svh, 17.5rem); max-height: 25svh; }
.work-tile--aralarda .work-tile__image { height: min(29svh, 20.5rem); max-height: 29svh; }
.work-tile--ghostland .work-tile__image { height: min(31svh, 22rem); max-height: 31svh; }
.work-tile--kok .work-tile__image { height: min(27svh, 19.5rem); max-height: 27svh; }
.work-tile--lal .work-tile__image { height: min(31svh, 22rem); max-height: 31svh; }
.work-tile--tlaloc .work-tile__image { height: min(32svh, 23rem); max-height: 32svh; }
.work-tile--aralarda .work-tile__media, .work-tile--ghostland .work-tile__media, .work-tile--lal .work-tile__media { overflow: hidden; background: #fff; }
.work-tile--aralarda .work-tile__image { transform: scale(1.42); transform-origin: center; }
.work-tile--ghostland .work-tile__image { transform: scale(1.18); transform-origin: center; }
.work-tile--lal .work-tile__image { transform: none; }
.selection-view .work-timeline { padding-top: clamp(7rem, 14svh, 11rem); }
.selection-view .selection-carousel__control { top: clamp(17rem, 32svh, 24rem); }
.selection-carousel__control {
  position: absolute; top: min(20svh, 13rem); z-index: 4; display: grid; width: 2.7rem; height: 2.7rem;
  place-items: center; padding: 0; color: #111; border: 1px solid rgba(17,17,17,.38); border-radius: 50%;
  background: rgba(255,255,255,.12); backdrop-filter: blur(3px); font: 1.15rem/1 var(--sans); transition: background .18s ease, transform .18s ease;
}
.selection-carousel__control:hover, .selection-carousel__control:focus-visible { background: rgba(255,255,255,.8); transform: scale(1.06); }
.selection-carousel__control--previous { left: .7rem; }
.selection-carousel__control--next { right: .7rem; }

/* Lab */
.lab-view { min-height: 100svh; overflow: hidden; }
.lab-view .collection-title { position: relative; z-index: 3; }
.lab-timeline {
  position: relative; display: flex; align-items: flex-end; gap: clamp(1rem, 2.2vw, 2.6rem); min-height: 61svh;
  margin-top: -1rem; padding: 0 5vw 2.5rem; overflow-x: auto; scrollbar-width: none; cursor: grab; touch-action: pan-x;
}
.lab-timeline:active { cursor: grabbing; }
.lab-card {
  position: relative; display: block; flex: 0 0 auto; width: fit-content; max-width: min(29vw, 28rem);
  overflow: visible; background: transparent; box-shadow: none; transition: opacity .16s ease;
}
.lab-card:hover, .lab-card:focus-visible { opacity: 1; }
.lab-card__media { position: relative; display: grid; width: fit-content; max-width: min(29vw, 28rem); }
.lab-card__image { display: block; width: auto; max-width: min(29vw, 28rem); height: auto; max-height: 42svh; object-fit: contain; }
.lab-card__caption {
  position: absolute; inset: 0; z-index: 1; display: grid; place-content: center; gap: .25rem; padding: .9rem;
  color: #000; background: rgba(255,255,255,.58); text-align: center; opacity: 0;
  transition: opacity .18s ease;
}
.lab-card:hover .lab-card__caption, .lab-card:focus-visible .lab-card__caption { opacity: 1; }
.lab-card__caption strong { font: 500 clamp(1.35rem, 2.6vw, 2.8rem)/.9 var(--sans); letter-spacing: -.01em; }
.lab-card__caption small { color: var(--muted); font: .65rem/1.4 var(--mono); }
.lab-card--modul { width: min(29vw, 28rem); }
.lab-card--modul .lab-card__media { width: 100%; }
.lab-card--modul .lab-card__image { width: 100%; height: min(32svh, 15rem); object-fit: cover; object-position: center top; }
.lab-card--ir-regular { width: min(29vw, 28rem); overflow: hidden; }
.lab-card--ir-regular .lab-card__image { width: 100%; height: min(39svh, 22rem); object-fit: cover; object-position: 62% 76%; transform: scale(1.2); }

/* Lab project details: the cover and its künye stay as a fixed left-hand
   reference. Numbered source files form the horizontal lower timeline. */
.lab-project-view { position: relative; min-height: 100svh; padding: 5.25rem 1.25rem 1.25rem; overflow: hidden; background: var(--paper); }
.lab-project__layer-title { height: clamp(8.5rem, 25svh, 17rem); margin: 0; color: #000; font: 600 clamp(4.25rem, 12vw, 12rem)/.78 var(--sans); letter-spacing: -.035em; transition: opacity .22s ease, transform .22s ease; }
.lab-project__layer-title.is-hidden { opacity: 0; transform: translateY(-.7rem); }
.lab-project__stage { display: grid; grid-template-columns: clamp(10.5rem, 18vw, 17rem) minmax(0, 1fr); gap: clamp(1rem, 3vw, 3.4rem); align-items: end; min-height: min(55svh, 35rem); }
.lab-project__cover { align-self: end; min-width: 0; padding-bottom: .4rem; }
.lab-project__cover-media { width: 100%; height: min(26svh, 16rem); overflow: hidden; background: #fff; }
.lab-project__cover-asset { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.lab-project-view--ir-regular .lab-project__cover-asset { object-fit: cover; object-position: 62% 76%; transform: scale(1.2); }
.lab-project__cover--modul .lab-project__cover-media { height: min(22svh, 13rem); }
.lab-project__cover--modul .lab-project__cover-asset { object-fit: cover; object-position: center top; }
.lab-project__information { display: grid; gap: .38rem; padding-top: .65rem; color: var(--muted); font: .61rem/1.45 var(--mono); white-space: pre-line; }
.lab-project__information h2 { margin: 0 0 .05rem; color: #000; font: 500 clamp(1.25rem, 2.25vw, 2.45rem)/.9 var(--sans); letter-spacing: -.02em; }
.lab-project__information p { margin: 0; }
.lab-project__information a { width: fit-content; color: #000; text-decoration: underline; text-underline-offset: .22rem; }
.lab-project__timeline { display: flex; align-items: flex-end; gap: clamp(.9rem, 2.2vw, 2.6rem); min-width: 0; min-height: min(52svh, 33rem); padding: 0 .3rem .4rem 0; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; cursor: grab; scroll-behavior: smooth; touch-action: pan-x; }
.lab-project__timeline::-webkit-scrollbar { display: none; }
.lab-project__timeline:active { cursor: grabbing; }
.lab-project__media { display: flex; flex: 0 0 auto; align-items: flex-end; justify-content: center; width: fit-content; height: clamp(13rem, 41svh, 28rem); max-width: min(40vw, 35rem); margin: 0; overflow: hidden; background: transparent; }
.lab-project__asset { display: block; width: auto; height: 100%; max-width: min(40vw, 35rem); object-fit: contain; object-position: center bottom; }
.lab-project__media video.lab-project__asset { width: auto; }

/* Archive */
.archive-view { position: relative; overflow: hidden; padding: 7rem 1.25rem 4rem; color: #fff; background: #000; }
.archive-title { position: relative; z-index: 2; margin: 0; font: 500 clamp(3.5rem, 10vw, 10rem)/.82 var(--sans); letter-spacing: -.02em; }
.archive-flow {
  display: flex; flex-direction: column; align-items: flex-end; gap: .18rem;
  min-height: 70svh; margin: 2rem -1.25rem -1rem 0; padding-top: 8rem;
  transform: rotate(-13deg); transform-origin: 100% 50%;
}
.archive-line { display: flex; align-items: baseline; justify-content: flex-end; gap: .75rem; width: min(90vw, 80rem); padding: .05rem 0; text-align: right; transition: color .2s ease, transform .2s ease; }
.archive-line:hover, .archive-line:focus-visible { color: #b8b8b8; transform: translateX(-1rem); }
.archive-line span { color: #aaa; font: .6rem var(--mono); }
.archive-line strong { font: 500 clamp(1.25rem, 3.25vw, 4.3rem)/.88 var(--sans); letter-spacing: -.01em; }
.archive-modal { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 2rem; }
.archive-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.84); }
.archive-modal__content { position: relative; z-index: 1; display: inline-block; width: auto; max-width: 88vw; max-height: 88svh; overflow: visible; padding: 0; color: #111; background: transparent; }
.archive-modal__media { display: block; width: auto; max-width: 88vw; height: auto; max-height: 76svh; background: transparent; object-fit: contain; }
.archive-modal__content > div { padding: .85rem 1rem 1rem; background: #fff; }
.archive-modal__content h2 { margin: 0; font: 500 clamp(1.35rem, 2.7vw, 2.85rem)/.92 var(--sans); letter-spacing: -.01em; }
.archive-modal__content p { margin: .42rem 0 0; color: var(--muted); font: .58rem/1.5 var(--mono); }

/* About */
.about-view { position: relative; display: grid; grid-template-columns: minmax(20rem, 25vw) minmax(0, 1fr); min-height: 100svh; color: #fff; background: #000; }
.about-photo { position: relative; min-height: 100svh; margin: 0; padding-top: clamp(5rem, 12vh, 8.5rem); overflow: hidden; }
.about-photo__asset { position: relative; z-index: 1; display: block; width: min(24vw, 22rem); height: auto; max-height: min(66svh, 44rem); object-fit: contain; object-position: left top; }
.about-text { display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-rows: min-content; align-content: start; gap: clamp(1rem, 2.7vh, 2.5rem); padding: clamp(10.2rem, 16vh, 11rem) clamp(4rem, 8.5vw, 11rem) 4rem clamp(1.5rem, 1.6vw, 2.25rem); color: #fff; }
.about-text > p { max-width: 78ch; margin: 0; font: 400 clamp(.93rem, 1.35vw, 1.35rem)/1.33 var(--sans); letter-spacing: -.025em; }
.about-text__secondary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 3.5rem); max-width: none; color: #d4d4d4; font: clamp(.64rem, .76vw, .76rem)/1.65 var(--mono); }
.about-text__secondary p { margin: 0; }
.about-view + .language-control { color: #fff; }
.mail-rail, .behance-rail { position: fixed; right: 1.15rem; z-index: 25; color: #fff; font: 1.45rem/1 var(--mono); transition: opacity .2s ease, transform .2s ease; }
.mail-rail { top: 50%; transform: translateY(-50%); }
.behance-rail { top: calc(50% + 4.25rem); }
.mail-rail::after, .behance-rail::after { display: block; margin-top: .52rem; font-size: .68rem; writing-mode: vertical-rl; letter-spacing: .08em; }
.mail-rail::after { content: "mail"; }
.behance-rail::after { content: "behance"; }
.mail-rail:hover, .mail-rail:focus-visible { opacity: .72; transform: translateY(-50%) translateX(-.16rem); }
.behance-rail:hover, .behance-rail:focus-visible { opacity: .72; transform: translateX(-.16rem); }

/* Project details */
.project-view { padding: 8.1rem 1.25rem 4rem; background: #fff; }
.project-intro { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(15rem, .75fr); gap: 2.5rem; min-height: 27svh; padding-bottom: 2.5rem; }
.project-intro h1 { max-width: 10ch; margin: 0; font: 600 clamp(3.8rem, 10.2vw, 11.5rem)/.78 var(--sans); letter-spacing: -.02em; }
.project-information { align-self: end; color: var(--muted); font: .7rem/1.55 var(--mono); white-space: pre-line; }
.project-information p { margin: 0 0 .75rem; }
.project-information a { display: inline; color: var(--ink); border-bottom: 1px solid currentColor; }
.project-flow { display: grid; grid-auto-flow: dense; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: start; gap: clamp(.2rem, .45vw, .55rem); }
.project-media { min-width: 0; margin: 0; overflow: hidden; background: #ececea; }
.project-media[data-lightbox] { cursor: zoom-in; }
.project-media:focus-visible { outline: 2px solid #000; outline-offset: 3px; }
.project-media__asset { width: 100%; height: auto; min-height: 10rem; background: #ececea; object-fit: cover; }
.project-flow:not(.project-flow--aralarda) .project-media__asset { height: 100%; }
.project-media img.project-media__asset { transition: transform .3s ease; }
.project-media:hover img.project-media__asset { transform: scale(1.008); }
.project-media .pdf-media { height: max(38vw, 32rem); }
.file-media { display: grid; min-height: 12rem; place-items: center; padding: 1rem; color: #fff; background: #111; font: .7rem var(--mono); }
.project-copy { position: sticky; top: 5.2rem; z-index: 3; grid-column: 8 / span 5; align-self: start; margin: 0 0 clamp(-3.5rem, -5vw, -1.5rem); padding: 1rem; color: #3f3f3e; background: rgba(255,255,255,.7); backdrop-filter: blur(4px); font: .72rem/1.62 var(--mono); opacity: .12; transform: translateY(.9rem); transition: opacity .24s ease, transform .24s ease; }
.project-copy.is-visible { opacity: 1; transform: translateY(0); }
.project-copy--2 { grid-column: 2 / span 5; }
.project-copy--3 { grid-column: 7 / span 5; }
.project-copy p { margin: 0; }
.project-flow--flow .project-media { grid-column: span 6; aspect-ratio: 1.08; }
.project-flow--flow .project-media--1, .project-flow--flow .project-media--4 { grid-column: span 12; aspect-ratio: 1.72; }
.project-flow--flow .project-media--3n { grid-column: span 7; }
.project-flow--flow .project-media--5n { grid-column: span 5; }
.project-flow--overlay .project-media { grid-column: span 6; aspect-ratio: 1.08; }
.project-flow--overlay .project-media--1, .project-flow--overlay .project-media--4n { grid-column: span 12; aspect-ratio: 1.72; }
.project-flow--overlay .project-media--3n { grid-column: span 5; }
.project-flow--play-in .project-media { grid-column: span 6; aspect-ratio: 1.08; }
.project-flow--play-in .project-media--1, .project-flow--play-in .project-media--12 { grid-column: span 12; aspect-ratio: 1.72; }
.project-flow--play-in .project-media--2, .project-flow--play-in .project-media--3, .project-flow--play-in .project-media--4 { grid-column: span 4; }
.project-flow--play-in .project-media--5, .project-flow--play-in .project-media--6, .project-flow--play-in .project-media--7 { grid-column: span 8; }
.project-flow--play-in .project-media--8, .project-flow--play-in .project-media--9, .project-flow--play-in .project-media--10, .project-flow--play-in .project-media--11 { grid-column: 9 / span 4; }
.project-flow--ghostland .project-media { grid-column: span 6; aspect-ratio: 1.08; }
.project-flow--ghostland .project-media--1, .project-flow--ghostland .project-media--2 { grid-column: span 6; aspect-ratio: .82; }
.project-flow--ghostland .project-media--8, .project-flow--ghostland .project-media--9, .project-flow--ghostland .project-media--10, .project-flow--ghostland .project-media--11, .project-flow--ghostland .project-media--12, .project-flow--ghostland .project-media--13 { grid-column: span 6; }
.project-flow--ghostland .project-media--26 { grid-column: span 12; }

/* Selection project pages use the folder references: a continuous grid with
   consistent cells, source-quality media and text that rests on the image. */
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media { position: relative; align-self: start; overflow: hidden; background: #efefed; aspect-ratio: 4 / 3; }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media__asset { display: block; width: 100%; height: 100%; min-height: 0; background: transparent; object-fit: cover; }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media:hover img.project-media__asset { transform: none; }
.project-view--selection { padding-top: 5.8rem; }
.project-view--selection .project-intro { grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: end; gap: clamp(.8rem, 1.5vw, 1.6rem); min-height: 0; padding-bottom: clamp(1.2rem, 2.6vw, 2.6rem); }
.project-view--selection .project-intro h1 { grid-column: span 8; max-width: 13ch; font: 500 clamp(2.8rem, 6.3vw, 7rem)/.86 var(--sans); letter-spacing: -.025em; }
.project-view--selection .project-information { grid-column: 9 / span 4; max-width: 32rem; }
.project-view--selection .project-flow { gap: clamp(.45rem, .85vw, .85rem); }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy { position: absolute; right: .85rem; bottom: .85rem; left: auto; z-index: 2; width: min(31rem, calc(100% - 1.7rem)); margin: 0; padding: clamp(.65rem, 1.15vw, 1rem); color: #3f3f3e; background: rgba(255,255,255,.42); backdrop-filter: blur(5px); font: .7rem/1.58 var(--mono); opacity: .08; transform: translateY(.8rem); transition: opacity .28s ease, transform .28s ease; }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-copy.is-visible { opacity: 1; transform: translateY(0); }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--2 { right: auto; left: .85rem; }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--3 { right: 50%; transform: translate(50%, .8rem); }
.project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--3.is-visible { transform: translate(50%, 0); }
.project-view--selection .project-flow--flow > .project-media, .project-view--selection .project-flow--overlay > .project-media, .project-view--selection .project-flow--ghostland > .project-media { grid-column: span 4; }
.project-view--selection .project-flow--flow > .project-media--1, .project-view--selection .project-flow--overlay > .project-media--1 { grid-column: span 12; aspect-ratio: 16 / 9; }
.project-view--selection .project-flow--play-in > .project-media--1 { grid-column: span 12; aspect-ratio: 16 / 9; }
.play-in-cluster { display: grid; grid-column: span 12; gap: clamp(.25rem, .6vw, .65rem); align-items: start; }
.play-in-cluster .project-media { grid-column: auto !important; min-width: 0; }
.play-in-cluster--triptych { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.play-in-cluster--stage { grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; }
.play-in-cluster__main { grid-column: span 3; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.25rem, .6vw, .65rem); }
.play-in-cluster__strip { display: grid; gap: clamp(.25rem, .6vw, .65rem); }
.ghostland-pair { display: grid; grid-column: span 12; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.25rem, .6vw, .65rem); }
.ghostland-pair .project-media, .ghostland-field .project-media { grid-column: auto !important; min-width: 0; }
.ghostland-field { display: grid; grid-column: span 12; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(.25rem, .6vw, .65rem); align-items: start; }
.ghostland-field__main { grid-column: span 3; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.25rem, .6vw, .65rem); }
.ghostland-field__timeline { display: grid; gap: clamp(.25rem, .6vw, .65rem); }

/* Lab projects keep the selected cover as a stable left-hand reference while
   the numbered project media begins beside it. */
.project-view--lab { display: grid; grid-template-columns: clamp(11rem, 21vw, 21rem) minmax(0, 1fr); column-gap: clamp(1rem, 3vw, 3.5rem); align-items: start; }
.project-cover--lab { position: sticky; top: 5.2rem; grid-column: 1; grid-row: 1 / span 2; align-self: start; }
.project-cover__asset { display: block; width: 100%; height: auto; max-height: 48svh; object-fit: contain; }
.project-view--lab .project-intro, .project-view--lab .project-flow { grid-column: 2; }
.project-view--lab .project-intro { min-height: 20svh; }
.project-view--lab .project-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.project-view--lab .project-flow .project-media { grid-column: auto !important; align-self: start; overflow: visible; background: transparent; aspect-ratio: auto !important; }
.project-view--lab .project-flow .project-media__asset { display: block; width: 100%; height: auto !important; min-height: 0; background: transparent; object-fit: contain; }
.project-view--lab .project-flow .project-copy { grid-column: span 2; }
.project-view--lab .project-media:hover img.project-media__asset { transform: none; }

.project-flow--aralarda { display: block; min-height: 0; padding-bottom: 1rem; }
.aralarda-layout { width: 100%; }
.aralarda-timeline { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; padding-bottom: .85rem; cursor: ew-resize; scroll-behavior: smooth; }
.aralarda-timeline__document { position: relative; width: min(1137.786svh, 758.524rem); min-width: 100%; height: clamp(24rem, 78svh, 52rem); margin: 0; overflow: hidden; aspect-ratio: 17242 / 1182; background: #fff; }
.aralarda-timeline__asset { display: block; width: 100%; height: 100%; object-fit: fill; background: #fff; }
.aralarda-timeline__hotspots { position: absolute; inset: 0; }
.aralarda-timeline__hotspot { position: absolute; top: 0; bottom: 0; left: var(--hotspot-start); width: var(--hotspot-width); min-width: 0; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.aralarda-timeline__hotspot:focus-visible { outline: 2px solid #111; outline-offset: -4px; }
.aralarda-text { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; gap: clamp(1rem, 2.4vw, 3rem); margin-top: clamp(1.5rem, 3vw, 3rem); color: #3f3f3e; font: .72rem/1.68 var(--mono); }
.aralarda-text p { margin: 0; }
.project-view--modul .project-media--9, .project-view--modul .project-media--10 { grid-column: span 12; }
.project-view--balikesir .project-flow { display: grid; }
.balikesir-layout { display: grid; grid-column: span 12; grid-template-columns: minmax(0, 1.6fr) minmax(15rem, .62fr); gap: clamp(1.1rem, 3vw, 4rem); align-items: start; }
.balikesir-slideshow { position: relative; min-width: 0; }
.balikesir-slideshow__track { display: flex; height: clamp(22rem, 68svh, 48rem); overflow-x: auto; overscroll-behavior-x: contain; background: #fff; scrollbar-width: none; scroll-behavior: smooth; scroll-snap-type: x mandatory; touch-action: pan-x; }
.balikesir-slideshow__track::-webkit-scrollbar { display: none; }
.balikesir-slideshow__track .project-media { position: relative; display: flex; flex: 0 0 100%; width: 100%; height: 100%; min-width: 0; margin: 0; grid-column: auto; overflow: hidden; background: transparent; aspect-ratio: auto; scroll-snap-align: start; }
.project-view--selection .project-flow .balikesir-slideshow__track .project-media__asset { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; object-position: center; cursor: zoom-in; }
.project-view--selection .project-flow .balikesir-slideshow__track .project-media { align-items: center; justify-content: center; background: #fff; }
.balikesir-slideshow__expand { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.balikesir-slideshow__expand:focus-visible { outline: 2px solid #111; outline-offset: -5px; }
.balikesir-slideshow__control { position: absolute; top: 50%; z-index: 4; display: grid; width: 1.45rem; height: 1.45rem; place-items: center; padding: 0; color: #111; border: 1px solid rgba(17,17,17,.18); border-radius: 50%; background: rgba(255,255,255,.10); backdrop-filter: blur(3px); font: .68rem/1 var(--sans); transform: translateY(-50%); transition: background .18s ease, transform .18s ease; }
.balikesir-slideshow__control:hover, .balikesir-slideshow__control:focus-visible { background: rgba(255,255,255,.8); transform: translateY(-50%) scale(1.06); }
.balikesir-slideshow__control--previous { left: .75rem; }
.balikesir-slideshow__control--next { right: .75rem; }
.balikesir-summary { align-self: start; max-width: 35rem; padding-top: .1rem; color: #3f3f3e; font: .72rem/1.65 var(--mono); }
.balikesir-summary p { margin: 0; padding: 0 0 1.15rem; }
.balikesir-summary p + p { padding-top: 1.15rem; border: 0; }
.balikesir-summary__link { display: inline-block; margin-top: .2rem; color: var(--ink); border-bottom: 1px solid currentColor; line-height: 1.25; }
.balikesir-summary__link:hover, .balikesir-summary__link:focus-visible { color: var(--accent); }

.media-lightbox { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 1rem; background: #fff; }
.media-lightbox > div { display: grid; width: 100%; height: 100%; min-width: 0; min-height: 0; place-items: center; overflow: hidden; }
.media-lightbox__asset { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; min-width: 0; min-height: 0; object-fit: contain; }
.media-lightbox button { position: fixed; top: 1.1rem; right: 1.25rem; z-index: 2; width: 2.25rem; aspect-ratio: 1; background: transparent; }
.media-lightbox button::before, .media-lightbox button::after { position: absolute; top: 50%; left: 10%; width: 80%; height: 1px; background: #111; content: ""; transform: rotate(45deg); }
.media-lightbox button::after { transform: rotate(-45deg); }

@keyframes caret { 50% { opacity: 0; } }

/* Vertical project index - a quiet, cinematic scroll inspired by editorial
   portfolios. Each image holds the frame while its adjacent label arrives and
   leaves with the viewport. */
.selection-view,
.lab-view { padding: 0; overflow: visible; background: #f0f0ee; }
.selection-view .collection-title,
.lab-view .collection-title {
  position: relative; z-index: 2; display: flex; min-height: 68svh; align-items: flex-end;
  margin: 0; padding: 7rem 1.25rem clamp(2.5rem, 7vw, 7rem);
  font-size: clamp(5rem, 15vw, 15rem); font-weight: 500; letter-spacing: -.055em;
}
.scroll-showcase { position: relative; width: 100%; }
.showcase-project {
  --showcase-bg: #e8e7e3;
  position: relative; display: grid; grid-template-columns: minmax(0, 1.62fr) minmax(18rem, .78fr);
  min-height: 112svh; align-items: center; gap: clamp(1.5rem, 5vw, 6rem);
  padding: clamp(5rem, 10svh, 8rem) clamp(1.25rem, 4vw, 4.5rem);
  overflow: clip; background: var(--showcase-bg); isolation: isolate;
}
.showcase-project:nth-child(even) { grid-template-columns: minmax(18rem, .78fr) minmax(0, 1.62fr); }
.showcase-project:nth-child(even) .showcase-project__visual { grid-column: 2; }
.showcase-project:nth-child(even) .showcase-project__copy { grid-column: 1; grid-row: 1; }
.showcase-project__visual {
  position: sticky; top: 10svh; display: grid; width: 100%; height: 80svh; place-items: center;
  overflow: hidden; background: rgba(255,255,255,.28);
}
.showcase-project__image {
  display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  filter: saturate(.96); transform: scale(1.025); transition: transform 1.15s cubic-bezier(.2,.7,.2,1), filter .6s ease;
}
.showcase-project.is-active .showcase-project__image { filter: saturate(1); transform: scale(1); }
.showcase-project__copy {
  display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: start; gap: clamp(.75rem, 1.5vw, 1.6rem);
  opacity: 0; transform: translateY(2.4rem); transition: opacity .55s ease, transform .75s cubic-bezier(.2,.7,.2,1);
}
.showcase-project.is-active .showcase-project__copy { opacity: 1; transform: translateY(0); }
.showcase-project__number { padding-top: .28rem; font: .64rem/1 var(--mono); }
.showcase-project__copy h2 { max-width: 13ch; margin: 0; font: 500 clamp(2.5rem, 5vw, 6.3rem)/.88 var(--sans); letter-spacing: -.045em; }
.showcase-project__copy p { margin: 1rem 0 0; color: var(--muted); font: .67rem/1.5 var(--mono); }
.showcase-project__arrow { font: clamp(1.15rem, 2vw, 2rem)/1 var(--sans); transition: transform .25s ease; }
.showcase-project:hover .showcase-project__arrow,
.showcase-project:focus-visible .showcase-project__arrow { transform: translate(.22rem,-.22rem); }
.showcase-project:focus-visible { outline: 2px solid #111; outline-offset: -5px; }

/* Subtle project-specific fields, sampled from each project's dominant mood. */
.showcase-project--balikesir { --showcase-bg: #ddd8cd; }
.showcase-project--play-in { --showcase-bg: #d8dde0; }
.showcase-project--aralarda { --showcase-bg: #d9cec9; }
.showcase-project--ghostland { --showcase-bg: #d2d0cc; }
.showcase-project--kok { --showcase-bg: #ddd3ba; }
.showcase-project--lal { --showcase-bg: #d9c9c0; }
.showcase-project--tlaloc { --showcase-bg: #cad3c3; }
.showcase-project--ir-regular { --showcase-bg: #d4d0c8; }
.showcase-project--de-form { --showcase-bg: #cfd6d7; }
.showcase-project--modul { --showcase-bg: #d7d0c4; }
.showcase-project--the-walls { --showcase-bg: #d1ccc5; }
.showcase-project--in-between { --showcase-bg: #d5d8d1; }
.showcase-project--invisible-cities { --showcase-bg: #d5d0cb; }
.showcase-project--blood-falls { --showcase-bg: #d9c3bd; }

.project-view--balikesir { --project-field: #e5e0d6; }
.project-view--play-in { --project-field: #e1e6e8; }
.project-view--aralarda { --project-field: #e7dfdc; }
.project-view--ghostland { --project-field: #deddd9; }
.project-view--kok { --project-field: #e7ddc5; }
.project-view--lal { --project-field: #e4d5cd; }
.project-view--tlaloc { --project-field: #dbe2d6; }
.project-view--selection { background: var(--project-field, #fff); }
.project-view--selection .balikesir-slideshow__track,
.project-view--selection .balikesir-slideshow__track .project-media { background: transparent; }

@media (max-width: 760px) {
  .detail-head { padding: .9rem; gap: 1rem; }
  .detail-name { font-size: .78rem; }
  .detail-head nav { gap: .25rem .6rem; max-width: 67vw; }
  .detail-head nav a { font-size: .65rem; }
  .language-control { bottom: .85rem; left: .9rem; font-size: .68rem; }
  .home-copy { padding-inline: .9rem; }
  .home-name { font-size: clamp(3.7rem, 17vw, 6.4rem); letter-spacing: -.02em; white-space: normal; }
  .home-practice { margin-top: .9rem; font-size: .64rem; }
  .layer-chip { padding: .54rem .6rem; font-size: .73rem; }
  .layer-chip--1 { top: 15%; left: .9rem; }
  .layer-chip--2 { top: 31%; right: .9rem; }
  .layer-chip--3 { bottom: 20%; left: .9rem; }
  .layer-chip--4 { right: .9rem; bottom: 11%; }
  .collection-view { padding-top: 5.6rem; }
  .selection-view { padding-top: 4.7rem; }
  .collection-title { margin: 0 .9rem 1.25rem; font-size: clamp(3.15rem, 17vw, 6.8rem); }
  .work-timeline { gap: 1rem; min-height: 0; padding: 0 .9rem 2rem; }
  .selection-view .work-timeline { padding-top: 1.25rem; }
  .work-tile { max-width: 80vw; }
  .work-tile__media { height: min(36svh, 23rem); }
  .work-tile__image { max-width: 80vw; height: min(33svh, 21rem); max-height: 33svh; }
  .work-tile--play-in .work-tile__media { height: min(33svh, 21rem); }
  .work-tile--play-in .work-tile__image, .work-tile--aralarda .work-tile__image { height: min(30svh, 19rem); max-height: 30svh; }
  .work-tile__caption { max-width: 80vw; }
  .work-tile__caption { opacity: 1; transform: none; }
  .work-tile__caption h2 { font-size: 1.08rem; }
  .selection-view .selection-carousel__control { top: min(17svh, 9rem); }
  .selection-carousel__control { width: 2.35rem; height: 2.35rem; }
  .selection-carousel__control--previous { left: .4rem; }
  .selection-carousel__control--next { right: .4rem; }
  .lab-timeline { min-height: 58svh; margin-top: 0; padding: 0 .9rem 4.6rem; }
  .lab-card { flex: 0 0 auto; max-width: 80vw; }
  .lab-card__media { max-width: 80vw; }
  .lab-card__image { max-width: 80vw; max-height: 40svh; }
  .lab-card__caption { max-width: 80vw; }
  .lab-card--modul { width: min(80vw, 24rem); }
  .lab-card--modul .lab-card__image { width: 100%; height: min(27svh, 15rem); }
  .lab-card--ir-regular { width: min(80vw, 24rem); }
  .lab-card--ir-regular .lab-card__image { width: 100%; height: min(35svh, 20rem); }
  .lab-project-view { padding: 5.2rem .9rem 1rem; }
  .lab-project__layer-title { height: min(20svh, 10rem); font-size: clamp(3.4rem, 19vw, 6rem); }
  .lab-project__stage { grid-template-columns: minmax(7.5rem, 31vw) minmax(0, 1fr); gap: .85rem; min-height: min(65svh, 36rem); }
  .lab-project__cover-media { height: min(20svh, 11rem); }
  .lab-project__information { gap: .3rem; padding-top: .45rem; font-size: .54rem; }
  .lab-project__information h2 { font-size: clamp(1rem, 5.2vw, 1.45rem); }
  .lab-project__timeline { gap: .8rem; min-height: min(61svh, 34rem); padding-bottom: .25rem; }
  .lab-project__media { height: min(43svh, 23rem); max-width: 70vw; }
  .lab-project__asset { max-width: 70vw; }
  .archive-view { padding: 5.6rem .9rem 3rem; }
  .archive-flow { min-height: 73svh; margin-right: -.9rem; padding-top: 5rem; transform: rotate(-9deg); }
  .archive-line { width: 105vw; }
  .archive-line strong { font-size: clamp(1.2rem, 5.5vw, 2rem); }
  .archive-modal { padding: 1rem; }
  .archive-modal__content { width: auto; max-width: calc(100vw - 2rem); padding: 0; }
  .archive-modal__media { max-width: calc(100vw - 2rem); max-height: 68svh; }
  .about-view { display: block; min-height: 100svh; background: #000; }
  .about-photo { min-height: 57svh; padding-top: 4.1rem; }
  .about-photo__asset { width: min(67vw, 21rem); max-height: 49svh; }
  .about-text { grid-template-columns: 1fr; gap: 1.2rem; padding: 2rem 2.1rem 5rem 1rem; }
  .about-text > p { font-size: .93rem; line-height: 1.38; }
  .about-text__secondary { grid-template-columns: 1fr; gap: 1rem; font-size: .61rem; }
  .mail-rail, .behance-rail { right: .9rem; font-size: 1.3rem; }
  .behance-rail { top: calc(50% + 4rem); }
  .project-view { padding: 6.1rem .9rem 2rem; }
  .project-intro { display: block; min-height: 0; padding-bottom: 1.7rem; }
  .project-intro h1 { font-size: clamp(3.6rem, 17vw, 6.5rem); }
  .project-information { margin-top: 1.8rem; font-size: .63rem; }
  .project-view--selection { padding-top: 5.3rem; }
  .project-view--selection .project-intro h1 { max-width: 12ch; font-size: clamp(2.8rem, 13vw, 5.4rem); }
  .project-view--selection .project-information { margin-top: 1rem; }
  .project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy, .project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--2, .project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--3 { right: .55rem; bottom: .55rem; left: .55rem; width: auto; margin: 0; padding: .6rem; font-size: .62rem; transform: translateY(.55rem); }
  .project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--3, .project-view--selection .project-flow:not(.project-flow--aralarda) .project-media .project-copy--3.is-visible { right: .55rem; transform: translateY(0); }
  .project-flow { gap: .45rem; }
  .project-copy, .project-copy--2, .project-copy--3 { position: relative; top: auto; grid-column: span 12; margin: 0; padding: .8rem; font-size: .65rem; }
  .project-flow--flow .project-media, .project-flow--flow .project-media--1, .project-flow--flow .project-media--4, .project-flow--flow .project-media--3n, .project-flow--flow .project-media--5n, .project-flow--overlay .project-media, .project-flow--overlay .project-media--1, .project-flow--overlay .project-media--4n, .project-flow--overlay .project-media--3n, .project-flow--play-in .project-media, .project-flow--play-in .project-media--1, .project-flow--play-in .project-media--5, .project-flow--play-in .project-media--12, .project-flow--ghostland .project-media, .project-flow--ghostland .project-media--1, .project-flow--ghostland .project-media--2, .project-flow--ghostland .project-media--8, .project-flow--ghostland .project-media--9, .project-flow--ghostland .project-media--10, .project-flow--ghostland .project-media--11, .project-flow--ghostland .project-media--12, .project-flow--ghostland .project-media--13, .project-flow--ghostland .project-media--26 { grid-column: span 12; margin-top: 0; }
  .project-flow--play-in .project-media--2, .project-flow--play-in .project-media--3, .project-flow--play-in .project-media--4 { grid-column: span 12; }
  .project-media .pdf-media { height: 28rem; }
  .project-view--lab { display: block; }
  .project-cover--lab { position: relative; top: auto; width: min(46vw, 14rem); margin: 0 0 1.3rem; }
  .project-view--lab .project-intro, .project-view--lab .project-flow { grid-column: auto; }
  .project-view--lab .project-flow { grid-template-columns: 1fr; }
  .project-view--lab .project-flow .project-copy { grid-column: auto; }
  .play-in-cluster--triptych, .play-in-cluster__main { grid-template-columns: 1fr; }
  .play-in-cluster--stage { grid-template-columns: 1fr; }
  .ghostland-pair, .ghostland-field, .ghostland-field__main { grid-template-columns: 1fr; }
  .project-view--selection .project-flow--flow > .project-media, .project-view--selection .project-flow--overlay > .project-media, .project-view--selection .project-flow--ghostland > .project-media, .project-view--selection .project-flow--play-in > .project-media { grid-column: span 12; aspect-ratio: 4 / 3; }
  .project-view--selection .play-in-cluster__main, .project-view--selection .ghostland-field__main { grid-column: auto; }
  .balikesir-layout { grid-template-columns: 1fr; gap: 1.1rem; }
  .balikesir-slideshow__track { height: min(54svh, 34rem); }
  .balikesir-slideshow__control { width: 1.3rem; height: 1.3rem; font-size: .62rem; }
  .balikesir-slideshow__control--previous { left: .55rem; }
  .balikesir-slideshow__control--next { right: .55rem; }
  .balikesir-summary { max-width: none; padding: 0; font-size: .65rem; }
  .balikesir-summary p { padding-bottom: .85rem; }
  .balikesir-summary p + p { padding-top: .85rem; }
  .project-flow--aralarda { margin-right: -.9rem; padding-bottom: .8rem; }
  .aralarda-timeline { margin-right: .9rem; }
  .aralarda-timeline__document { width: min(846.046svh, 495.958rem); height: clamp(16rem, 58svh, 34rem); }
  .aralarda-text { grid-template-columns: 1fr; gap: .9rem; margin: 1.2rem .9rem 0 0; font-size: .65rem; }
  .media-lightbox { padding: .75rem; }
}

/* FINAL SYSTEM — monochrome site, Kök preserved verbatim. */
.editorial-project:not(.project-view--kok):not(.project-view--ghostland):not(.project-view--blood-falls) {
  --story-bg: #fff; --story-ink: #0a0a0a; --story-accent: #0a0a0a; --stage: transparent;
}
.editorial-project.project-view--ghostland {
  --story-bg: #080808; --story-ink: #f5f5f2; --story-accent: #ff5a00; --stage: #141414;
}
.editorial-project.project-view--blood-falls {
  --story-bg: #090909; --story-ink: #f5f5f2; --story-accent: #f5f5f2; --stage: #151515;
}
body:has(.editorial-project:not(.project-view--kok):not(.project-view--ghostland):not(.project-view--blood-falls)) .detail-head {
  color: #111;
}
.editorial-project:not(.project-view--kok):not(.project-view--ghostland):not(.project-view--blood-falls) + .language-control {
  color: #111;
}
.project-view--ir-regular .editorial-hero__section,
.project-view--modul .editorial-hero__section { color: #ff5a00; }

/* The four requested Lab projects now use In-between's 2×2 board language. */
@media (min-width: 761px) {
  .project-view--ir-regular .story-board--4 .story-board__media,
  .project-view--de-form .story-board--4 .story-board__media,
  .project-view--modul .story-board--4 .story-board__media,
  .project-view--the-walls .story-board--4 .story-board__media {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
  }
  .project-view--ir-regular .story-board--4 .story-board__cell--1,
  .project-view--de-form .story-board--4 .story-board__cell--1,
  .project-view--modul .story-board--4 .story-board__cell--1,
  .project-view--the-walls .story-board--4 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--2,
  .project-view--de-form .story-board--4 .story-board__cell--2,
  .project-view--modul .story-board--4 .story-board__cell--2,
  .project-view--the-walls .story-board--4 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--3,
  .project-view--de-form .story-board--4 .story-board__cell--3,
  .project-view--modul .story-board--4 .story-board__cell--3,
  .project-view--the-walls .story-board--4 .story-board__cell--3 { grid-column: 1 !important; grid-row: 2 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--4,
  .project-view--de-form .story-board--4 .story-board__cell--4,
  .project-view--modul .story-board--4 .story-board__cell--4,
  .project-view--the-walls .story-board--4 .story-board__cell--4 { grid-column: 2 !important; grid-row: 2 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--3 { grid-column: 1 / -1 !important; grid-row: 2 !important; justify-items: start; }
  .project-view--ir-regular .story-board--3 .story-board__cell--1 .story-frame__asset { width: 100% !important; max-width: 100% !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--3 .story-frame__asset { width: 50% !important; max-width: 50% !important; }
}

/* EOF GRID LOCK — must remain the last rule in this file. */
@media (min-width: 761px) {
  body .project-view--ghostland .story-board--3 .story-board__media,
  body .project-view--ir-regular .story-board--3 .story-board__media,
  body .project-view--modul .story-board--3 .story-board__media {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
  }
  body .project-view--ghostland .story-board--3 .story-board__cell--1,
  body .project-view--ir-regular .story-board--3 .story-board__cell--1,
  body .project-view--modul .story-board--3 .story-board__cell--1 {
    grid-column: 1 !important; grid-row: 1 !important; aspect-ratio: 4 / 3;
  }
  body .project-view--ghostland .story-board--3 .story-board__cell--2,
  body .project-view--ir-regular .story-board--3 .story-board__cell--2,
  body .project-view--modul .story-board--3 .story-board__cell--2 {
    grid-column: 2 !important; grid-row: 1 !important; aspect-ratio: 4 / 3;
  }
  body .project-view--ghostland .story-board--3 .story-board__cell--3,
  body .project-view--ir-regular .story-board--3 .story-board__cell--3,
  body .project-view--modul .story-board--3 .story-board__cell--3 {
    grid-column: 3 !important; grid-row: 1 !important; aspect-ratio: 4 / 3; justify-items: stretch !important;
  }
  body .project-view--ir-regular .story-board:first-child .story-board__cell {
    aspect-ratio: 3 / 4;
  }
  body .project-view--ghostland .story-board--3 .story-frame__asset,
  body .project-view--ir-regular .story-board--3 .story-frame__asset,
  body .project-view--modul .story-board--3 .story-frame__asset {
    width: 100% !important; max-width: none !important; height: 100% !important; object-fit: contain !important;
  }
  body .project-view--ghostland .story-board--3 .story-board__cell .story-frame__asset,
  body .project-view--ir-regular .story-board--3 .story-board__cell .story-frame__asset,
  body .project-view--modul .story-board--3 .story-board__cell .story-frame__asset {
    width: 100% !important; max-width: none !important;
  }
}

/* ABSOLUTE FINAL GRID OVERRIDE — keep at EOF. */
.editorial-project.project-view--ir-regular,
.editorial-project.project-view--modul,
.editorial-project.project-view--the-walls {
  --story-bg: #fff; --story-ink: #0a0a0a; --story-accent: #0a0a0a; --stage: #fff;
}
body:has(.project-view--ir-regular) .detail-head,
body:has(.project-view--modul) .detail-head,
body:has(.project-view--the-walls) .detail-head,
.project-view--ir-regular + .language-control,
.project-view--modul + .language-control,
.project-view--the-walls + .language-control,
.project-view--ir-regular .editorial-hero__section,
.project-view--modul .editorial-hero__section,
.project-view--the-walls .editorial-hero__section { color: #0a0a0a !important; }
.project-view--ir-regular .story-board,
.project-view--modul .story-board,
.project-view--the-walls .story-board {
  width: 100% !important; margin-inline: 0 !important; padding: 0 !important;
  background: #fff !important; border: 0 !important;
}
.project-view--ghostland .story-board__media,
.project-view--ir-regular .story-board__media,
.project-view--modul .story-board__media,
.project-view--the-walls .story-board__media {
  gap: clamp(.35rem, .65vw, .7rem) !important; padding: 0 !important; background: transparent !important;
}
.project-view--ghostland .story-board__cell,
.project-view--ir-regular .story-board__cell,
.project-view--modul .story-board__cell,
.project-view--the-walls .story-board__cell {
  min-width: 0; overflow: hidden; background: #fff !important; align-self: stretch;
}
.project-view--ghostland .story-frame__asset,
.project-view--ir-regular .story-frame__asset,
.project-view--modul .story-frame__asset,
.project-view--the-walls .story-frame__asset {
  display: block; width: 100% !important; height: 100% !important;
  max-width: none !important; max-height: none !important; object-fit: contain !important;
}
@media (min-width: 761px) {
  .project-view--ghostland .story-board--3 .story-board__media,
  .project-view--ir-regular .story-board--3 .story-board__media,
  .project-view--modul .story-board--3 .story-board__media {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important; grid-template-rows: 1fr !important;
  }
  .project-view--ghostland .story-board--3 .story-board__cell,
  .project-view--ir-regular .story-board--3 .story-board__cell,
  .project-view--modul .story-board--3 .story-board__cell { grid-row: 1 !important; aspect-ratio: 4 / 3; }
  .project-view--ghostland .story-board--3 .story-board__cell--1,
  .project-view--ir-regular .story-board--3 .story-board__cell--1,
  .project-view--modul .story-board--3 .story-board__cell--1 { grid-column: 1 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--2,
  .project-view--ir-regular .story-board--3 .story-board__cell--2,
  .project-view--modul .story-board--3 .story-board__cell--2 { grid-column: 2 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--3,
  .project-view--ir-regular .story-board--3 .story-board__cell--3,
  .project-view--modul .story-board--3 .story-board__cell--3 { grid-column: 3 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell,
  .project-view--modul .story-board--4 .story-board__cell,
  .project-view--the-walls .story-board--4 .story-board__cell { aspect-ratio: 4 / 3; }
  .project-view--ir-regular .story-board:first-child .story-board__cell,
  .project-view--the-walls .story-board:first-child .story-board__cell { aspect-ratio: 3 / 4; }
  .project-view--modul .story-board:nth-child(2) .story-board__cell { aspect-ratio: 1 / 1; }
  .project-view--modul .story-board--2 .story-board__cell { aspect-ratio: 4 / 3; }
}
@media (max-width: 760px) {
  .project-view--ghostland .story-board__cell,
  .project-view--ir-regular .story-board__cell,
  .project-view--modul .story-board__cell,
  .project-view--the-walls .story-board__cell { aspect-ratio: auto !important; }
  .project-view--ghostland .story-frame__asset,
  .project-view--ir-regular .story-frame__asset,
  .project-view--modul .story-frame__asset,
  .project-view--the-walls .story-frame__asset { height: auto !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 760px) {
  .selection-view,
  .lab-view { padding: 0; }
  .selection-view .collection-title,
  .lab-view .collection-title {
    min-height: 52svh; margin: 0; padding: 6rem .9rem 2.4rem;
    font-size: clamp(4rem, 22vw, 7rem);
  }
  .showcase-project,
  .showcase-project:nth-child(even) {
    display: flex; min-height: 100svh; flex-direction: column; justify-content: center; gap: 1.25rem;
    padding: 4.75rem .9rem 3.25rem;
  }
  .showcase-project:nth-child(even) .showcase-project__visual,
  .showcase-project:nth-child(even) .showcase-project__copy { grid-column: auto; grid-row: auto; }
  .showcase-project__visual { position: relative; top: auto; height: min(61svh, 34rem); }
  .showcase-project__copy { width: 100%; gap: .65rem; }
  .showcase-project__copy h2 { max-width: 15ch; font-size: clamp(2rem, 10vw, 3.7rem); }
  .showcase-project__copy p { margin-top: .65rem; font-size: .61rem; }
}

/* Grid index: the reveal typography is retained, but the collection overview
   behaves as a concise editorial wall rather than a sequence of full screens. */
.selection-view,
.lab-view { padding: 0 1.25rem 6rem; background: #f4f4f2; }
.selection-view .collection-title,
.lab-view .collection-title {
  min-height: 45svh; margin: 0; padding: 7rem 0 3.5rem;
  font-size: clamp(5rem, 13vw, 13rem); color: #0a0a0a;
}
.scroll-showcase {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(2rem, 5vw, 6rem) clamp(.8rem, 1.5vw, 1.5rem);
}
.showcase-project,
.showcase-project:nth-child(even) {
  display: flex; grid-column: span 6; min-height: 0; flex-direction: column; gap: .8rem;
  padding: 0; overflow: visible; color: #111; background: transparent;
}
.showcase-project:nth-child(4n + 1) { grid-column: span 7; }
.showcase-project:nth-child(4n + 2) { grid-column: 9 / span 4; padding-top: clamp(5rem, 12vw, 12rem); }
.showcase-project:nth-child(4n + 3) { grid-column: 2 / span 4; }
.showcase-project:nth-child(4n) { grid-column: 7 / span 6; padding-top: clamp(2rem, 6vw, 6rem); }
.showcase-project__visual,
.showcase-project:nth-child(even) .showcase-project__visual {
  position: relative; top: auto; grid-column: auto; width: 100%; height: auto; min-height: 20rem;
  aspect-ratio: 4 / 3; overflow: hidden; background: #e9e9e7;
}
.showcase-project:nth-child(3n + 2) .showcase-project__visual { aspect-ratio: 3 / 4; }
.showcase-project:nth-child(5n) .showcase-project__visual { aspect-ratio: 16 / 10; }
.showcase-project__image { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); }
.showcase-project.is-active .showcase-project__image,
.showcase-project:hover .showcase-project__image { filter: grayscale(0); }
.showcase-project__copy,
.showcase-project:nth-child(even) .showcase-project__copy {
  grid-column: auto; grid-row: auto; width: 100%; grid-template-columns: auto minmax(0,1fr) auto;
  opacity: 0; transform: translateY(1.2rem);
}
.showcase-project.is-active .showcase-project__copy { opacity: 1; transform: translateY(0); }
.showcase-project__copy h2 { max-width: 18ch; font-size: clamp(1.7rem, 3.1vw, 3.8rem); line-height: .92; }

/* Colour is an event, not the default: only a few works break the monochrome wall. */
.showcase-project--aralarda .showcase-project__visual { background: #ff3b18; }
.showcase-project--ghostland .showcase-project__visual { background: #0a0a0a; }
.showcase-project--blood-falls .showcase-project__visual { background: #e31b23; }
.showcase-project--aralarda .showcase-project__image,
.showcase-project--blood-falls .showcase-project__image { mix-blend-mode: multiply; filter: grayscale(1) contrast(1.08); }

/* Editorial project stories: full-scale hero, alternating image fields and
   captions that enter and leave with the scroll position. */
.editorial-project { --story-bg: #fff; --story-ink: #0a0a0a; --story-accent: #0a0a0a; padding: 0; color: var(--story-ink); background: var(--story-bg); }
.editorial-hero {
  display: grid; grid-template-columns: repeat(12, minmax(0,1fr)); min-height: 72svh;
  align-content: end; gap: 1rem; padding: 7rem 1.25rem 2.5rem;
  opacity: 0; transform: translateY(2rem); transition: opacity .65s ease, transform .85s cubic-bezier(.2,.7,.2,1);
}
.editorial-hero.is-visible { opacity: 1; transform: none; }
.editorial-hero__section { grid-column: 1 / span 2; align-self: end; padding-bottom: .55rem; font: .65rem var(--mono); text-transform: uppercase; }
.editorial-hero h1 { grid-column: 3 / span 7; max-width: 15ch; margin: 0; font: 500 clamp(3rem, 6.8vw, 7.4rem)/.88 var(--sans); letter-spacing: -.045em; text-wrap: balance; }
.editorial-hero__meta { grid-column: 10 / span 3; align-self: end; padding-bottom: .35rem; font: .68rem/1.55 var(--mono); overflow-wrap: normal; word-break: normal; }
.editorial-hero__meta p { margin: 0 0 .8rem; }
.editorial-hero__meta a { border-bottom: 1px solid currentColor; }
.project-story { display: block; padding: 8svh 1.25rem 18svh; }
.story-frame {
  display: grid; grid-template-columns: repeat(12, minmax(0,1fr)); align-items: end;
  min-height: 108svh; margin: 0; opacity: .12; transform: translateY(3.5rem);
  transition: opacity .65s ease, transform .9s cubic-bezier(.2,.7,.2,1);
}
.story-frame.is-visible { opacity: 1; transform: none; }
.story-frame__media { position: relative; grid-column: 1 / span 8; overflow: hidden; background: #fff; }
.story-frame--right .story-frame__media { grid-column: 5 / span 8; }
.story-frame--wide .story-frame__media { grid-column: 1 / span 12; }
.story-frame--portrait .story-frame__media { grid-column: 2 / span 6; }
.story-frame--portrait.story-frame--right .story-frame__media { grid-column: 6 / span 6; }
.story-frame__asset { display: block; width: 100%; height: auto; max-height: 82svh; object-fit: contain; background: transparent; }
.story-frame--standard .story-frame__asset { height: min(76svh, 58rem); object-fit: cover; }
.story-frame--wide .story-frame__asset { width: 100%; height: min(86svh, 64rem); object-fit: cover; }
.story-frame--portrait .story-frame__asset { height: min(82svh, 60rem); object-fit: cover; }
.story-frame__expand { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; padding: 0; background: transparent; cursor: zoom-in; }
.story-frame__caption { grid-column: 10 / span 3; padding: 0 0 1rem 1rem; font: .66rem/1.62 var(--mono); }
.story-frame--right .story-frame__caption { grid-column: 1 / span 3; grid-row: 1; padding: 0 1rem 1rem 0; }
.story-frame--wide .story-frame__caption { grid-column: 9 / span 4; padding: 1rem 0 0 1rem; }
.story-frame__caption span { display: block; margin-bottom: 1.1rem; color: var(--story-accent); }
.story-frame__caption p { margin: 0; }

.project-view--aralarda { --story-bg: #f2f0ec; --story-accent: #f03213; }
.project-view--ghostland { --story-bg: #080808; --story-ink: #f5f5f2; --story-accent: #c7ff26; }
.project-view--blood-falls { --story-bg: #f3f1ed; --story-accent: #e10f18; }
.project-view--ghostland + .language-control { color: #fff; }
body:has(.project-view--ghostland) .detail-head { color: #fff; }
body:has(.project-view--kok) .detail-head { color: #fff; }
.project-view--kok + .language-control { color: #fff; }

@media (max-width: 760px) {
  .selection-view,
  .lab-view { padding: 0 .9rem 4rem; }
  .selection-view .collection-title,
  .lab-view .collection-title { min-height: 36svh; padding: 6rem 0 2.2rem; }
  .scroll-showcase { grid-template-columns: 1fr; gap: 3.5rem; }
  .showcase-project,
  .showcase-project:nth-child(n) { grid-column: 1; padding-top: 0; }
  .showcase-project__visual { min-height: 0; aspect-ratio: 4 / 3; }
  .showcase-project:nth-child(3n + 2) .showcase-project__visual { aspect-ratio: 4 / 5; }
  .showcase-project__copy h2 { font-size: clamp(1.8rem, 9vw, 3rem); }
  .editorial-hero { display: flex; min-height: 92svh; flex-direction: column; justify-content: flex-end; padding: 6rem .9rem 1.5rem; }
  .editorial-hero h1 { font-size: clamp(3.6rem, 17vw, 6.5rem); line-height: .8; }
  .editorial-hero__meta { max-width: 28rem; padding: 1.5rem 0 0 18vw; }
  .project-story { padding: 3rem .9rem 7rem; }
  .story-frame { display: flex; min-height: 92svh; flex-direction: column; justify-content: center; gap: 1rem; }
  .story-frame__media,
  .story-frame--right .story-frame__media,
  .story-frame--wide .story-frame__media,
  .story-frame--portrait .story-frame__media,
  .story-frame--portrait.story-frame--right .story-frame__media { width: 100%; }
  .story-frame__asset,
  .story-frame--standard .story-frame__asset,
  .story-frame--wide .story-frame__asset,
  .story-frame--portrait .story-frame__asset { width: 100%; height: auto; max-height: 68svh; object-fit: contain; }
  .story-frame__caption,
  .story-frame--right .story-frame__caption,
  .story-frame--wide .story-frame__caption { width: 100%; padding: 0; }
  .story-frame__caption p { max-width: 42rem; padding-left: 18vw; }
}

/* Regular Delane-like index. Media is never cropped, recoloured or filtered. */
.scroll-showcase {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start; gap: clamp(3rem, 6vw, 7rem) clamp(1rem, 2vw, 2rem);
}
.showcase-project,
.showcase-project:nth-child(n) {
  display: flex; grid-column: auto; min-width: 0; flex-direction: column; gap: .8rem;
  padding: 0; color: #111; background: transparent;
}
.showcase-project__visual,
.showcase-project:nth-child(n) .showcase-project__visual {
  position: relative; top: auto; width: 100%; height: auto; min-height: 0;
  overflow: visible; aspect-ratio: auto; background: transparent;
}
.showcase-project__image,
.showcase-project.is-active .showcase-project__image,
.showcase-project:hover .showcase-project__image,
.showcase-project--aralarda .showcase-project__image,
.showcase-project--blood-falls .showcase-project__image {
  display: block; width: 100%; height: auto; max-height: none;
  object-fit: contain; object-position: center; filter: none; mix-blend-mode: normal;
  transform: none;
}
.showcase-project--aralarda .showcase-project__visual,
.showcase-project--ghostland .showcase-project__visual,
.showcase-project--blood-falls .showcase-project__visual { background: transparent; }
.showcase-project__copy h2 { max-width: none; }

/* Project images retain their complete native proportions at every breakpoint. */
.story-frame { min-height: 100svh; }
.story-frame__media,
.story-frame--right .story-frame__media,
.story-frame--wide .story-frame__media,
.story-frame--portrait .story-frame__media,
.story-frame--portrait.story-frame--right .story-frame__media { overflow: visible; background: transparent; }
.story-frame__asset,
.story-frame--standard .story-frame__asset,
.story-frame--wide .story-frame__asset,
.story-frame--portrait .story-frame__asset {
  display: block; width: 100%; height: auto; max-height: none;
  object-fit: contain; object-position: center; filter: none; mix-blend-mode: normal;
}

@media (max-width: 760px) {
  .scroll-showcase { grid-template-columns: 1fr; gap: 4rem; }
  .showcase-project,
  .showcase-project:nth-child(n) { grid-column: auto; }
  .story-frame { min-height: 88svh; }
}

/* Measured from Delane /work: 3 equal columns, 8px gutters and a fixed 400px
   image stage. Curated covers are trimmed once at source, then fitted here. */
.selection-view,
.lab-view { padding-inline: 1.5rem; }
.scroll-showcase {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start; column-gap: .5rem; row-gap: clamp(5rem, 8vw, 8rem);
}
.showcase-project,
.showcase-project:nth-child(n) {
  display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 1.25rem 400px auto; grid-column: auto;
  align-items: stretch; gap: 0; padding: 0; min-width: 0;
}
.showcase-project__number {
  display: block; align-self: start; padding: 0; font: .72rem/1 var(--mono);
}
.showcase-project__visual,
.showcase-project:nth-child(n) .showcase-project__visual {
  display: block; width: 100%; height: 400px; overflow: hidden; background: #ececea;
}
.showcase-project__image,
.showcase-project.is-active .showcase-project__image,
.showcase-project:hover .showcase-project__image,
.showcase-project--aralarda .showcase-project__image,
.showcase-project--blood-falls .showcase-project__image {
  width: 100%; height: 100%; object-fit: cover; object-position: center;
  filter: none; mix-blend-mode: normal; transform: none;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.showcase-project:hover .showcase-project__image { transform: scale(1.018); }
.showcase-project__copy,
.showcase-project:nth-child(even) .showcase-project__copy {
  display: grid; grid-template-columns: minmax(0,1fr) auto; grid-column: auto; grid-row: auto;
  align-items: start; gap: .75rem; padding-top: .75rem;
}
.showcase-project__copy h2 { max-width: 18ch; font-size: clamp(1.45rem, 2.35vw, 2.8rem); }
.showcase-project__copy p { margin-top: .45rem; }

@media (max-width: 900px) and (min-width: 761px) {
  .scroll-showcase { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .selection-view,
  .lab-view { padding-inline: 1.5rem; }
  .scroll-showcase { grid-template-columns: 1fr; row-gap: 3rem; }
  .showcase-project,
  .showcase-project:nth-child(n) { grid-template-rows: 1.25rem 400px auto; }
  .showcase-project__visual,
  .showcase-project:nth-child(n) .showcase-project__visual { height: 400px; }
  .showcase-project__copy h2 { font-size: clamp(1.7rem, 8vw, 2.6rem); }
}

/* Project content: a strict editorial grid. Every source is contained in a
   bounded viewport stage, so tall documents never extend beyond the screen. */
.editorial-project { --stage: #e9e9e6; }
.project-story {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start; gap: .5rem; padding: .5rem 1.5rem 10rem;
}
.story-frame,
.story-frame--left,
.story-frame--right,
.story-frame--wide,
.story-frame--portrait,
.story-frame--portrait.story-frame--right {
  --media-height: 70svh;
  display: grid; grid-template-columns: 1fr; grid-template-rows: minmax(0, var(--media-height)) auto;
  grid-column: span 1; min-height: 0; align-items: stretch; margin: 0;
  background: var(--stage); overflow: hidden;
}
.story-frame--wide { --media-height: 78svh; grid-column: 1 / -1; }
.story-frame__media,
.story-frame--right .story-frame__media,
.story-frame--wide .story-frame__media,
.story-frame--portrait .story-frame__media,
.story-frame--portrait.story-frame--right .story-frame__media {
  display: grid; grid-column: 1; grid-row: 1; width: 100%; height: var(--media-height); min-height: 0;
  place-items: center; padding: clamp(.75rem, 1.5vw, 1.5rem); overflow: hidden;
  background: var(--stage);
}
.story-frame__asset,
.story-frame--standard .story-frame__asset,
.story-frame--wide .story-frame__asset,
.story-frame--portrait .story-frame__asset {
  display: block; width: auto; height: auto; min-width: 0; min-height: 0;
  max-width: 100%; max-height: calc(var(--media-height) - 3rem);
  object-fit: contain; object-position: center; filter: none; transform: none;
}
.story-frame__caption,
.story-frame--right .story-frame__caption,
.story-frame--wide .story-frame__caption {
  display: grid; grid-template-columns: 4rem minmax(0,1fr); grid-column: 1; grid-row: 2;
  gap: 1rem; width: 100%; min-height: 5.5rem; padding: .8rem 1rem 1.1rem;
  color: var(--story-ink); background: var(--story-bg);
}
.story-frame__caption span { margin: .12rem 0 0; }
.story-frame__caption p { max-width: 62ch; margin: 0; padding: 0; }

/* Strong interface fields; media colour remains untouched. */
.project-view--play-in { --story-bg: #ffffff; --story-ink: #080808; --story-accent: #1540ff; --stage: #1540ff; }
.project-view--kok { --story-bg: #0a0a0a; --story-ink: #ffffff; --story-accent: #ff5a00; --stage: #ff5a00; }
.project-view--lal { --story-bg: #ffffff; --story-ink: #111111; --story-accent: #d71920; --stage: #d71920; }
.project-view--tlaloc { --story-bg: #ffffff; --story-ink: #111111; --story-accent: #006b54; --stage: #006b54; }
.project-view--ghostland { --stage: #171717; }
.project-view--blood-falls { --stage: #e10f18; }

/* Aralarda deliberately keeps its original panoramic, horizontal document. */
.project-view--timeline { --project-field: #fff; padding-top: 5.8rem; background: #fff; }
.project-view--timeline .project-intro { color: #111; }
.project-view--timeline .aralarda-timeline__document { background: #fff; }

@media (max-width: 760px) {
  .project-story { grid-template-columns: 1fr; gap: .5rem; padding: .5rem .9rem 6rem; }
  .story-frame,
  .story-frame--wide { --media-height: 68svh; grid-column: 1; }
  .story-frame__media,
  .story-frame--right .story-frame__media,
  .story-frame--wide .story-frame__media,
  .story-frame--portrait .story-frame__media,
  .story-frame--portrait.story-frame--right .story-frame__media { padding: .65rem; }
  .story-frame__asset,
  .story-frame--standard .story-frame__asset,
  .story-frame--wide .story-frame__asset,
  .story-frame--portrait .story-frame__asset { max-height: calc(var(--media-height) - 1.3rem); }
  .story-frame__caption,
  .story-frame--right .story-frame__caption,
  .story-frame--wide .story-frame__caption { grid-template-columns: 3.25rem minmax(0,1fr); min-height: 5rem; padding: .75rem; }
  .story-frame__caption p { padding: 0; }
}

/* Architectural board composition: three related drawings share one viewport
   instead of producing three long, disconnected screens. */
.editorial-project { --stage: transparent; }
.project-view--play-in,
.project-view--lal,
.project-view--tlaloc { --stage: transparent; }
.project-story { display: block; padding: .5rem 1.5rem 6rem; }
.project-view--lab.editorial-project { display: block; grid-template-columns: none; }
.project-view--lab.editorial-project .editorial-hero,
.project-view--lab.editorial-project .project-story { grid-column: auto; }
.story-board {
  display: block; min-height: 0; margin: 0 0 clamp(1.5rem, 3vw, 3rem);
  opacity: .12; transform: translateY(2.5rem);
  transition: opacity .65s ease, transform .85s cubic-bezier(.2,.7,.2,1);
}
.story-board.is-visible { opacity: 1; transform: none; }
.story-board__media {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto auto; width: 100%; height: auto;
  align-items: start; gap: clamp(.18rem, .42vw, .45rem); background: var(--stage);
}
.story-board__cell { position: relative; display: grid; min-width: 0; min-height: 0; place-items: center; overflow: hidden; background: transparent; }
.story-board__cell--1,
.story-board--reverse .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board__cell--2,
.story-board--reverse .story-board__cell--2 { grid-column: 2; grid-row: 1; }
.story-board__cell--3,
.story-board--reverse .story-board__cell--3 { grid-column: 1 / -1; grid-row: 2; }
.story-board--portrait-tail .story-board__media,
.story-board--reverse.story-board--portrait-tail .story-board__media { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; }
.story-board--portrait-tail .story-board__cell--1,
.story-board--reverse.story-board--portrait-tail .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board--portrait-tail .story-board__cell--2,
.story-board--reverse.story-board--portrait-tail .story-board__cell--2 { grid-column: 2; grid-row: 1; }
.story-board--portrait-tail .story-board__cell--3,
.story-board--reverse.story-board--portrait-tail .story-board__cell--3 { grid-column: 3; grid-row: 1; }
.story-board--panorama-1 .story-board__media,
.story-board--panorama-2 .story-board__media,
.story-board--panorama-3 .story-board__media,
.story-board--reverse.story-board--panorama-1 .story-board__media,
.story-board--reverse.story-board--panorama-2 .story-board__media,
.story-board--reverse.story-board--panorama-3 .story-board__media {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto auto;
}
.story-board--panorama-1 .story-board__cell--1 { grid-column: 1 / -1; grid-row: 1; }
.story-board--panorama-1 .story-board__cell--2 { grid-column: 1; grid-row: 2; }
.story-board--panorama-1 .story-board__cell--3 { grid-column: 2; grid-row: 2; }
.story-board--panorama-3 .story-board__cell--1,
.story-board--panorama-2 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board--panorama-3 .story-board__cell--2 { grid-column: 2; grid-row: 1; }
.story-board--panorama-3 .story-board__cell--3 { grid-column: 1 / -1; grid-row: 2; }
.story-board--panorama-2 .story-board__cell--2 { grid-column: 1 / -1; grid-row: 1; }
.story-board--panorama-2 .story-board__cell--1 { grid-column: 1; grid-row: 2; }
.story-board--panorama-2 .story-board__cell--3 { grid-column: 2; grid-row: 2; }
.story-board--2 .story-board__media { grid-template-columns: repeat(2, minmax(0,1fr)); grid-template-rows: auto; height: auto; }
.story-board--2 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board--2 .story-board__cell--2 { grid-column: 2; grid-row: 1; }
.story-board--4 .story-board__media { grid-template-columns: repeat(2, minmax(0,1fr)); grid-template-rows: auto auto; }
.story-board--4 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board--4 .story-board__cell--2 { grid-column: 2; grid-row: 1; }
.story-board--4 .story-board__cell--3 { grid-column: 1; grid-row: 2; }
.story-board--4 .story-board__cell--4 { grid-column: 2; grid-row: 2; }
.story-board--1 .story-board__media { display: grid; grid-template-columns: 1fr; grid-template-rows: auto; height: auto; }
.story-board--1 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
.story-board .story-frame__asset {
  display: block; width: auto; height: auto; min-width: 0; min-height: 0;
  max-width: 100%; max-height: 78svh; object-fit: contain; object-position: center;
  filter: none; mix-blend-mode: normal; transform: none; background: transparent;
}
.story-board__cell[data-orientation="landscape"] .story-frame__asset,
.story-board__cell[data-orientation="panorama"] .story-frame__asset { width: 100%; }
.story-board__cell--3:not([data-orientation="portrait"]) .story-frame__asset { width: min(100%, 86rem); }
.story-board .story-frame__caption {
  display: grid; grid-template-columns: minmax(0,1fr); gap: 0;
  width: 100%; min-height: 5.25rem; padding: .85rem 0 0;
  color: var(--story-ink); background: transparent;
}
.story-board .story-frame__caption span { margin: .12rem 0 0; }
.story-board .story-frame__caption p { max-width: 68ch; margin: 0; padding: 0; }

/* Colour belongs to the interface, never to the supplied work. Most projects
   remain absolute black/white; only a few carry one decisive project colour. */
.project-view--balikesir { --story-bg: #fff; --story-ink: #090909; --story-accent: #762b22; }
.project-view--play-in { --story-bg: #fff; --story-ink: #080808; --story-accent: #ad4527; --stage: transparent; }
.editorial-project.project-view--kok { --stage: #ff5a00; }
.editorial-project.project-view--ghostland { --story-bg: #080808; --story-ink: #f6f6f2; --story-accent: #c7ff26; --stage: #171717; }
.editorial-project.project-view--blood-falls { --story-bg: #090909; --story-ink: #f5f3ee; --story-accent: #c53a38; --stage: #151515; }
.project-view--lal,
.project-view--tlaloc { --story-bg: #fff; --stage: transparent; }
.project-view--kok .story-board__media { padding: clamp(.75rem, 1.4vw, 1.4rem); }
.project-view--ghostland .story-board__media { padding: .5rem; }
.project-view--blood-falls .story-board__media { padding: .5rem; }

/* Project-specific editorial direction. The media remains untouched; rhythm,
   rules and interface colour give every body of work its own atmosphere. */
@media (min-width: 761px) {
  .story-board--reverse:not(.story-board--panorama-1):not(.story-board--panorama-2):not(.story-board--panorama-3):not(.story-board--portrait-tail) .story-board__cell--1 {
    grid-column: 1 / -1; grid-row: 1;
  }
  .story-board--reverse:not(.story-board--panorama-1):not(.story-board--panorama-2):not(.story-board--panorama-3):not(.story-board--portrait-tail) .story-board__cell--2 {
    grid-column: 1; grid-row: 2;
  }
  .story-board--reverse:not(.story-board--panorama-1):not(.story-board--panorama-2):not(.story-board--panorama-3):not(.story-board--portrait-tail) .story-board__cell--3 {
    grid-column: 2; grid-row: 2;
  }
}

.project-view--balikesir .story-board { border-top: 1px solid #762b22; padding-top: .45rem; }
.project-view--balikesir .story-frame__caption span { color: #762b22; }
.project-view--balikesir .story-board:nth-child(even) { border-top-width: 3px; }

.project-view--play-in .project-story { border-left: clamp(.2rem, .4vw, .4rem) solid #ad4527; padding-left: clamp(1rem, 2vw, 2.3rem); }
.project-view--play-in .story-board { position: relative; }
.project-view--play-in .story-board::before {
  content: ''; position: absolute; top: -.15rem; left: calc(clamp(1rem, 2vw, 2.3rem) * -1 - .65rem);
  width: 1.05rem; height: 1.05rem; border: .18rem solid #ad4527; border-radius: 50%; background: #fff;
}
.project-view--play-in .story-frame__caption { border-top: 1px solid #ad4527; }

.project-view--ghostland .story-board { border-top: 1px solid #383838; padding-top: .75rem; }
.project-view--ghostland .story-board:nth-child(3n + 2) { padding: clamp(1rem, 2.4vw, 2.5rem); background: #141414; }
.project-view--ghostland .story-frame__caption span { color: #c7ff26; }

.project-view--lal .story-board { border-top: 1px solid #84262a; padding-top: .45rem; }
.project-view--lal .story-board:nth-child(even) { width: 92%; margin-left: auto; }
.project-view--lal .story-frame__caption span { color: #84262a; }

.editorial-project.project-view--tlaloc { --story-bg: #11100e; --story-ink: #f6f1e7; --story-accent: #c89b3c; --stage: #191714; }
.project-view--tlaloc .project-story { padding-inline: clamp(1.25rem, 4vw, 4.5rem); }
.project-view--tlaloc .story-board { border-top: 1px solid rgba(200,155,60,.72); padding-top: .65rem; }
.project-view--tlaloc .story-board:nth-child(even) { width: 90%; margin-left: auto; }
.project-view--tlaloc .story-frame__caption span { color: #c89b3c; }
body:has(.project-view--tlaloc) .detail-head,
.project-view--tlaloc + .language-control { color: #fff; }

.project-view--blood-falls .story-board { border-top: 1px solid #c53a38; padding-top: .5rem; }
.project-view--blood-falls .story-frame__caption span { color: #c53a38; }
body:has(.project-view--blood-falls) .detail-head,
.project-view--blood-falls + .language-control { color: #fff; }

/* Final project identities: Kök/Ghostland logic, interpreted per project. */
.editorial-project.project-view--ir-regular {
  --story-bg: #140d1d; --story-ink: #f8f2e9; --story-accent: #ff6a45; --stage: #20152c;
}
.project-view--ir-regular .story-board { border-top: 1px solid #ff6a45; padding-top: .42rem; }
.project-view--ir-regular .story-board__media { padding: .38rem; }
body:has(.project-view--ir-regular) .detail-head,
.project-view--ir-regular + .language-control { color: #fff; }
@media (min-width: 761px) {
  .project-view--ir-regular .story-board--3 .story-board__cell--1 { grid-column: 1 / -1; grid-row: 1; }
  .project-view--ir-regular .story-board--3 .story-board__cell--2 { grid-column: 1; grid-row: 2; }
  .project-view--ir-regular .story-board--3 .story-board__cell--3 { grid-column: 2; grid-row: 2; }
}

.editorial-project.project-view--de-form {
  --story-bg: #080b20; --story-ink: #f5f2e8; --story-accent: #e6b92f; --stage: #101534;
}
.project-view--de-form .story-board { border-top: 1px solid #e6b92f; padding-top: .5rem; }
.project-view--de-form .story-board__media { padding: .45rem; }
body:has(.project-view--de-form) .detail-head,
.project-view--de-form + .language-control { color: #fff; }

.editorial-project.project-view--modul {
  --story-bg: #0b0a08; --story-ink: #f5efe4; --story-accent: #d19a42; --stage: #18130d;
}
.project-view--modul .story-board { border-top: 1px solid #d19a42; padding-top: .42rem; }
.project-view--modul .story-board__media { padding: .42rem; }
@media (min-width: 761px) {
  .project-view--modul .story-board--3 .story-board__cell--1 { grid-column: 1 / -1; grid-row: 1; }
  .project-view--modul .story-board--3 .story-board__cell--2 { grid-column: 1; grid-row: 2; }
  .project-view--modul .story-board--3 .story-board__cell--3 { grid-column: 2; grid-row: 2; }
}
body:has(.project-view--modul) .detail-head,
.project-view--modul + .language-control { color: #fff; }

.editorial-project.project-view--the-walls {
  --story-bg: #101724; --story-ink: #f6f0e7; --story-accent: #d56a48; --stage: #172235;
}
.project-view--the-walls .story-board { border-top: 1px solid #d56a48; padding-top: .5rem; }
.project-view--the-walls .story-board:nth-child(even) { background: #162033; padding: clamp(.55rem, 1vw, 1rem); }
.project-view--the-walls .story-board__media { padding: .38rem; }
body:has(.project-view--the-walls) .detail-head,
.project-view--the-walls + .language-control { color: #fff; }

.project-view--ghostland .story-board--2 .story-board__media { grid-template-columns: repeat(2, minmax(0,1fr)); }
.project-view--ghostland .story-board--2:nth-child(even) { width: 92%; margin-left: auto; }
.project-view--ghostland .story-board--3:nth-child(3n) { border-top-color: #c7ff26; }

/* No divider-line language outside Kök. Project identity comes from fields,
   spacing and contrast instead of horizontal rules. */
.editorial-project:not(.project-view--kok) .story-board {
  border-top: 0 !important; padding-top: 0;
}
.editorial-project:not(.project-view--kok) .story-frame__caption { border-top: 0; }
.editorial-project:not(.project-view--kok) .story-board__media { gap: 0; }

/* Final requested layout constraint: these bodies of work use only two-column
   or four-column fields. Assets fill their cells, so no false centre voids. */
@media (min-width: 761px) {
  .project-view--ghostland .story-board__media,
  .project-view--ir-regular .story-board__media,
  .project-view--de-form .story-board__media,
  .project-view--modul .story-board__media,
  .project-view--the-walls .story-board__media {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .project-view--ghostland .story-board--4 .story-board__media,
  .project-view--ir-regular .story-board--4 .story-board__media,
  .project-view--de-form .story-board--4 .story-board__media,
  .project-view--modul .story-board--4 .story-board__media,
  .project-view--the-walls .story-board--4 .story-board__media {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important; grid-template-rows: auto !important;
  }
  .project-view--ghostland .story-board--4 .story-board__cell,
  .project-view--ir-regular .story-board--4 .story-board__cell,
  .project-view--de-form .story-board--4 .story-board__cell,
  .project-view--modul .story-board--4 .story-board__cell,
  .project-view--the-walls .story-board--4 .story-board__cell { grid-row: 1 !important; }
  .project-view--ghostland .story-board--4 .story-board__cell--1,
  .project-view--ir-regular .story-board--4 .story-board__cell--1,
  .project-view--de-form .story-board--4 .story-board__cell--1,
  .project-view--modul .story-board--4 .story-board__cell--1,
  .project-view--the-walls .story-board--4 .story-board__cell--1 { grid-column: 1 !important; }
  .project-view--ghostland .story-board--4 .story-board__cell--2,
  .project-view--ir-regular .story-board--4 .story-board__cell--2,
  .project-view--de-form .story-board--4 .story-board__cell--2,
  .project-view--modul .story-board--4 .story-board__cell--2,
  .project-view--the-walls .story-board--4 .story-board__cell--2 { grid-column: 2 !important; }
  .project-view--ghostland .story-board--4 .story-board__cell--3,
  .project-view--ir-regular .story-board--4 .story-board__cell--3,
  .project-view--de-form .story-board--4 .story-board__cell--3,
  .project-view--modul .story-board--4 .story-board__cell--3,
  .project-view--the-walls .story-board--4 .story-board__cell--3 { grid-column: 3 !important; }
  .project-view--ghostland .story-board--4 .story-board__cell--4,
  .project-view--ir-regular .story-board--4 .story-board__cell--4,
  .project-view--de-form .story-board--4 .story-board__cell--4,
  .project-view--modul .story-board--4 .story-board__cell--4,
  .project-view--the-walls .story-board--4 .story-board__cell--4 { grid-column: 4 !important; }
  .project-view--ghostland .story-board--2 .story-board__cell--1,
  .project-view--ir-regular .story-board--2 .story-board__cell--1,
  .project-view--de-form .story-board--2 .story-board__cell--1,
  .project-view--modul .story-board--2 .story-board__cell--1,
  .project-view--the-walls .story-board--2 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  .project-view--ghostland .story-board--2 .story-board__cell--2,
  .project-view--ir-regular .story-board--2 .story-board__cell--2,
  .project-view--de-form .story-board--2 .story-board__cell--2,
  .project-view--modul .story-board--2 .story-board__cell--2,
  .project-view--the-walls .story-board--2 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--1,
  .project-view--ir-regular .story-board--3 .story-board__cell--1,
  .project-view--de-form .story-board--3 .story-board__cell--1,
  .project-view--modul .story-board--3 .story-board__cell--1,
  .project-view--the-walls .story-board--3 .story-board__cell--1 { grid-column: 1 / -1 !important; grid-row: 1 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--2,
  .project-view--ir-regular .story-board--3 .story-board__cell--2,
  .project-view--de-form .story-board--3 .story-board__cell--2,
  .project-view--modul .story-board--3 .story-board__cell--2,
  .project-view--the-walls .story-board--3 .story-board__cell--2 { grid-column: 1 !important; grid-row: 2 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--3,
  .project-view--ir-regular .story-board--3 .story-board__cell--3,
  .project-view--de-form .story-board--3 .story-board__cell--3,
  .project-view--modul .story-board--3 .story-board__cell--3,
  .project-view--the-walls .story-board--3 .story-board__cell--3 { grid-column: 2 !important; grid-row: 2 !important; }
  .project-view--ghostland .story-board--3 .story-board__cell--1 .story-frame__asset,
  .project-view--ir-regular .story-board--3 .story-board__cell--1 .story-frame__asset,
  .project-view--de-form .story-board--3 .story-board__cell--1 .story-frame__asset,
  .project-view--modul .story-board--3 .story-board__cell--1 .story-frame__asset,
  .project-view--the-walls .story-board--3 .story-board__cell--1 .story-frame__asset {
    width: 100% !important; max-width: 100% !important;
  }
  .project-view--ghostland .story-board--3.story-board--forward .story-board__cell--1,
  .project-view--ir-regular .story-board--3.story-board--forward .story-board__cell--1,
  .project-view--de-form .story-board--3.story-board--forward .story-board__cell--1,
  .project-view--modul .story-board--3.story-board--forward .story-board__cell--1,
  .project-view--the-walls .story-board--3.story-board--forward .story-board__cell--1 { justify-items: start; }
  .project-view--ghostland .story-board--3.story-board--reverse .story-board__cell--1,
  .project-view--ir-regular .story-board--3.story-board--reverse .story-board__cell--1,
  .project-view--de-form .story-board--3.story-board--reverse .story-board__cell--1,
  .project-view--modul .story-board--3.story-board--reverse .story-board__cell--1,
  .project-view--the-walls .story-board--3.story-board--reverse .story-board__cell--1 { justify-items: end; }
  .project-view--ghostland .story-frame__asset,
  .project-view--ir-regular .story-frame__asset,
  .project-view--de-form .story-frame__asset,
  .project-view--modul .story-frame__asset,
  .project-view--the-walls .story-frame__asset {
    width: 100%; max-width: none; max-height: none;
  }
}

@media (max-width: 760px) {
  .project-story { padding: .5rem .9rem 5rem; }
  .story-board { margin-bottom: 4rem; }
  .story-board__media,
  .story-board--reverse .story-board__media,
  .story-board--panorama-1 .story-board__media,
  .story-board--panorama-2 .story-board__media,
  .story-board--panorama-3 .story-board__media,
  .story-board--reverse.story-board--panorama-1 .story-board__media,
  .story-board--reverse.story-board--panorama-2 .story-board__media,
  .story-board--reverse.story-board--panorama-3 .story-board__media {
    grid-template-columns: 1fr; grid-template-rows: repeat(3, auto);
    height: auto; gap: .4rem;
  }
  .story-board--portrait-tail .story-board__media,
  .story-board--reverse.story-board--portrait-tail .story-board__media { grid-template-columns: 1fr; grid-template-rows: repeat(3, auto); }
  .story-board__cell--1,
  .story-board--reverse .story-board__cell--1 { grid-column: 1; grid-row: 1; }
  .story-board__cell--2,
  .story-board--reverse .story-board__cell--2 { grid-column: 1; grid-row: 2; }
  .story-board__cell--3,
  .story-board--reverse .story-board__cell--3 { grid-column: 1; grid-row: 3; }
  .story-board--2 .story-board__media { grid-template-columns: 1fr; grid-template-rows: repeat(2, auto); height: auto; }
  .story-board--2 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
  .story-board--2 .story-board__cell--2 { grid-column: 1; grid-row: 2; }
  .story-board--4 .story-board__media { grid-template-columns: 1fr; grid-template-rows: repeat(4, auto); }
  .story-board--4 .story-board__cell--1 { grid-column: 1; grid-row: 1; }
  .story-board--4 .story-board__cell--2 { grid-column: 1; grid-row: 2; }
  .story-board--4 .story-board__cell--3 { grid-column: 1; grid-row: 3; }
  .story-board--4 .story-board__cell--4 { grid-column: 1; grid-row: 4; }
  .story-board--1 .story-board__media { height: auto; }
  .story-board .story-frame__asset,
  .story-board__cell--1 .story-frame__asset,
  .story-board__cell--2 .story-frame__asset,
  .story-board__cell--3 .story-frame__asset { width: auto; height: auto; max-width: 100%; max-height: 72svh; }
  .story-board__cell[data-orientation="landscape"] .story-frame__asset,
  .story-board__cell[data-orientation="panorama"] .story-frame__asset { width: 100%; }
  .story-board .story-frame__caption { grid-template-columns: 4rem minmax(0,1fr); min-height: 5rem; }
  .editorial-hero { min-height: 70svh; }
  .editorial-hero h1 { font-size: clamp(2.8rem, 12vw, 4.8rem); line-height: .9; }
  .editorial-hero__meta { padding: 1.25rem 0 0; }
  .project-view--play-in .project-story { border-left-width: .3rem; padding-left: 1rem; }
  .project-view--play-in .story-board::before { left: -1.48rem; width: .85rem; height: .85rem; border-width: .17rem; }
  .project-view--lal .story-board,
  .project-view--tlaloc .story-board,
  .project-view--ghostland .story-board--2:nth-child(even) { width: 100%; margin-left: 0; }
}

/* TRUE FINAL OVERRIDE: requested Lab projects exactly follow In-between 2×2. */
@media (min-width: 761px) {
  .project-view--ir-regular .story-board--4 .story-board__media,
  .project-view--de-form .story-board--4 .story-board__media,
  .project-view--modul .story-board--4 .story-board__media,
  .project-view--the-walls .story-board--4 .story-board__media {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
  }
  .project-view--ir-regular .story-board--4 .story-board__cell--1,
  .project-view--de-form .story-board--4 .story-board__cell--1,
  .project-view--modul .story-board--4 .story-board__cell--1,
  .project-view--the-walls .story-board--4 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--2,
  .project-view--de-form .story-board--4 .story-board__cell--2,
  .project-view--modul .story-board--4 .story-board__cell--2,
  .project-view--the-walls .story-board--4 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--3,
  .project-view--de-form .story-board--4 .story-board__cell--3,
  .project-view--modul .story-board--4 .story-board__cell--3,
  .project-view--the-walls .story-board--4 .story-board__cell--3 { grid-column: 1 !important; grid-row: 2 !important; }
  .project-view--ir-regular .story-board--4 .story-board__cell--4,
  .project-view--de-form .story-board--4 .story-board__cell--4,
  .project-view--modul .story-board--4 .story-board__cell--4,
  .project-view--the-walls .story-board--4 .story-board__cell--4 { grid-column: 2 !important; grid-row: 2 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--3 { grid-column: 1 / -1 !important; grid-row: 2 !important; justify-items: start; }
  .project-view--ir-regular .story-board--3 .story-board__cell--1 .story-frame__asset,
  .project-view--ir-regular .story-board--3 .story-board__cell--2 .story-frame__asset { width: 100% !important; max-width: 100% !important; }
  .project-view--ir-regular .story-board--3 .story-board__cell--3 .story-frame__asset { width: 100% !important; max-width: 100% !important; }
}

/* EOF GRID LOCK — final cascade authority. */
@media (min-width: 761px) {
  body .project-view--ghostland .story-board--3 .story-board__media,
  body .project-view--ir-regular .story-board--3 .story-board__media,
  body .project-view--modul .story-board--3 .story-board__media {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
  }
  body .project-view--ghostland .story-board--3 .story-board__cell--1,
  body .project-view--ir-regular .story-board--3 .story-board__cell--1,
  body .project-view--modul .story-board--3 .story-board__cell--1 { grid-column: 1 !important; grid-row: 1 !important; }
  body .project-view--ghostland .story-board--3 .story-board__cell--2,
  body .project-view--ir-regular .story-board--3 .story-board__cell--2,
  body .project-view--modul .story-board--3 .story-board__cell--2 { grid-column: 2 !important; grid-row: 1 !important; }
  body .project-view--ghostland .story-board--3 .story-board__cell--3,
  body .project-view--ir-regular .story-board--3 .story-board__cell--3,
  body .project-view--modul .story-board--3 .story-board__cell--3 { grid-column: 3 !important; grid-row: 1 !important; justify-items: stretch !important; }
  body .project-view--ghostland .story-board--3 .story-board__cell,
  body .project-view--ir-regular .story-board--3 .story-board__cell,
  body .project-view--modul .story-board--3 .story-board__cell { aspect-ratio: 4 / 3; }
  body .project-view--ir-regular .story-board:first-child .story-board__cell { aspect-ratio: 3 / 4; }
  body .project-view--ghostland .story-board--3 .story-frame__asset,
  body .project-view--ir-regular .story-board--3 .story-frame__asset,
  body .project-view--modul .story-board--3 .story-frame__asset {
    width: 100% !important; max-width: none !important; height: 100% !important; object-fit: contain !important;
  }
}

/* Final monochrome edition. Layout geometry remains unchanged. */
.editorial-project.project-view--invisible-cities {
  --story-bg: #0a0a0a !important;
  --story-ink: #f5f5f2 !important;
  --story-accent: #f5f5f2 !important;
  --stage: #151515 !important;
}
body:has(.project-view--invisible-cities) .detail-head,
.project-view--invisible-cities + .language-control,
.project-view--invisible-cities .editorial-hero__section {
  color: #f5f5f2 !important;
}
.project-view--invisible-cities .story-board {
  background: transparent !important;
  border-color: transparent !important;
}

/* De-form and Play-in return to the white edition without changing their grids. */
.editorial-project.project-view--de-form,
.editorial-project.project-view--play-in {
  --story-bg: #ffffff !important;
  --story-ink: #0a0a0a !important;
  --story-accent: #0a0a0a !important;
  --stage: #ffffff !important;
}
body:has(.project-view--de-form) .detail-head,
body:has(.project-view--play-in) .detail-head,
.project-view--de-form + .language-control,
.project-view--play-in + .language-control,
.project-view--de-form .editorial-hero__section,
.project-view--play-in .editorial-hero__section {
  color: #0a0a0a !important;
}
.project-view--de-form .story-board,
.project-view--play-in .story-board {
  background: transparent !important;
  border-color: transparent !important;
}
.project-view--play-in .project-story {
  border-left: 0 !important;
  padding-left: 0 !important;
}
.project-view--play-in .story-board::before {
  content: none !important;
  display: none !important;
}

/* Responsive copy remains a horizontal paragraph, never a narrow text column. */
picture { display: contents; }

@media (max-width: 1024px) {
  .editorial-hero {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .editorial-hero__section,
  .editorial-hero h1,
  .editorial-hero__meta {
    grid-column: 1 / -1;
    width: 100%;
  }
  .editorial-hero__meta {
    max-width: 72ch;
    padding: 1.25rem 0 0;
  }
  .editorial-hero__meta p,
  .story-frame__caption p,
  .project-information,
  .project-information p,
  .project-copy,
  .project-copy p,
  .balikesir-summary,
  .balikesir-summary p,
  .aralarda-text,
  .aralarda-text p {
    width: 100%;
    max-width: 72ch;
    padding-left: 0;
    white-space: normal;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
    hyphens: none;
  }
  .project-information { white-space: normal; }
  .story-board .story-frame__caption,
  .story-frame__caption,
  .story-frame--right .story-frame__caption,
  .story-frame--wide .story-frame__caption {
    display: block;
    grid-template-columns: none;
  }
  .story-board picture > .story-frame__asset {
    display: block;
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  .editorial-hero__meta,
  .editorial-hero__meta p,
  .story-frame__caption p {
    max-width: none;
  }
  .project-view--ghostland .story-board:first-child .story-board__media {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    align-items: stretch;
  }
  .project-view--ghostland .story-board:first-child .story-board__cell--1 {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  .project-view--ghostland .story-board:first-child .story-board__cell--2 {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .project-view--ghostland .story-board:first-child .story-board__cell,
  .project-view--ghostland .story-board:first-child .story-frame__asset {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
  }
}
