fovea-manifesto { display: block; }
.manifesto { background: #040404; color: #fff; padding: clamp(56px, 6vw, 96px) var(--gutter) 0; overflow: clip; font-family: 'Scope One', serif; font-weight: 400; }
.manifesto__meta { display: flex; justify-content: space-between; gap: 24px; padding-bottom: 36px; color: #888; font-size: 9px; text-transform: uppercase; letter-spacing: .09em; }
.manifesto__composition { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.25fr) minmax(0, .95fr); grid-template-rows: auto repeat(3, minmax(150px, 1fr)); gap: clamp(28px, 3.4vw, 52px) clamp(28px, 4.4vw, 72px); height: clamp(780px, 62vw, 1040px); min-height: 0; max-height: none; }
.manifesto__word { position: relative; z-index: 4; grid-column: 1 / -1; grid-row: 1; display: block; width: 100%; height: auto; margin: 0; font: inherit; font-family: 'Kumbh Sans', sans-serif; }
.manifesto__word-start, .manifesto__word-end { position: relative; display: inline-block; width: auto; max-width: none; font-size: clamp(64px, 9.7vw, 180px); font-weight: 600; line-height: .95; letter-spacing: -.075em; }
.manifesto__visual { position: relative; z-index: 1; grid-column: 2; grid-row: 2 / 5; min-width: 0; min-height: 500px; }
.manifesto__photo { position: absolute; margin: 0; overflow: hidden; }
.manifesto__photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.84) contrast(1.03); transition: transform .85s cubic-bezier(.2,.72,.2,1); }
.manifesto__photo:hover img { transform: scale(1.025); }
.manifesto__photo--one { z-index: 3; left: 0; top: 17%; width: 44%; height: 43%; }
.manifesto__photo--two { z-index: 2; left: 17%; top: 5%; width: 79%; height: 83%; }
.manifesto__photo--three { z-index: 3; right: 0; bottom: 0; width: 29%; height: 27%; }
.manifesto__photo--three img { object-fit: cover; object-position: 45% 30%; }
.manifesto__owner { position: absolute; bottom: calc(100% + 14px); left: 0; font-size: clamp(9px, .7vw, 12px); line-height: 1.5; letter-spacing: .04em; font-weight: 400; }
.manifesto__owner span { display: block; }
.manifesto__owner span + span { margin-top: 3px; color: #999; font-size: .9em; }
.manifesto__copy { position: absolute; z-index: 5; margin: 0; font-size: clamp(13px, 1.05vw, 17px); font-weight: 400; line-height: 1.5; letter-spacing: -.025em; }
.manifesto__copy span { display: block; }
.manifesto__intro { position: relative; grid-column: 1; grid-row: 2; align-self: center; width: 92%; margin-left: 0; font-size: clamp(24px, 2.45vw, 38px); line-height: 1.16; }
.manifesto__perception { position: relative; grid-column: 1; grid-row: 3; align-self: start; width: 82%; margin: 2% 0 0 8%; }
.manifesto__observation { position: relative; grid-column: 3; grid-row: 2; align-self: end; width: 92%; margin: 0 0 12% auto; font-size: clamp(12px, .9vw, 15px); }
.manifesto__transform { position: relative; grid-column: 3; grid-row: 3; align-self: center; width: 82%; margin-left: 10%; font-size: clamp(18px, 1.6vw, 26px); }
.manifesto__reason { position: relative; grid-column: 1; grid-row: 4; align-self: center; width: 88%; margin-left: 2%; font-size: clamp(12px, .95vw, 16px); }
.manifesto__closing { position: relative; z-index: 5; width: min(48%, 720px); margin: clamp(44px, 5.5vw, 84px) 0 0 auto; }
.manifesto__closing .manifesto__copy { position: static; font-size: clamp(18px, 1.8vw, 29px); }
.manifesto__signature { margin: 16px 0 0; font-family: 'Kumbh Sans', sans-serif; font-weight: 600; font-size: clamp(14px, 1.2vw, 19px); line-height: 1.6; letter-spacing: .08em; }
.manifesto__signature sup { font-size:.58em; line-height:0; letter-spacing:0; vertical-align:super; }
.manifesto__signature span { display: block; color: #999; margin-top: 5px; letter-spacing: 0; font-weight:400; }
.manifesto__exit { height: clamp(48px, 8svh, 96px); }
@media (max-width: 900px) and (min-width: 701px) {
  .manifesto__composition { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); grid-template-rows: auto repeat(5, minmax(105px, auto)); gap: 28px clamp(24px, 4vw, 40px); height: auto; }
  .manifesto__word-start, .manifesto__word-end { font-size: clamp(66px, 10.5vw, 106px); }
  .manifesto__visual { grid-column: 2; grid-row: 2 / 7; min-height: 690px; }
  .manifesto__intro { grid-column: 1; grid-row: 2; font-size: clamp(24px, 3vw, 32px); }
  .manifesto__perception { grid-column: 1; grid-row: 3; width: 88%; margin-left: 7%; }
  .manifesto__observation { grid-column: 1; grid-row: 4; align-self: center; width: 90%; margin: 0; }
  .manifesto__transform { grid-column: 1; grid-row: 5; width: 80%; margin-left: 12%; }
  .manifesto__reason { grid-column: 1; grid-row: 6; width: 88%; margin-left: 3%; }
  .manifesto__closing { width: 62%; margin-top: 48px; }
}
@media (max-width: 700px) {
  .manifesto__meta { font-size: 8px; align-items: flex-start; }
  .manifesto__meta > span:last-child { max-width: 19em; text-align: right; line-height: 1.6; }
  .manifesto__composition { display: flex; flex-direction: column; gap: 0; height: auto; min-height: 0; max-height: none; }
  .manifesto__word { display: block; margin: 0 0 24px; white-space: nowrap; }
  .manifesto__word-start, .manifesto__word-end, :lang(es) .manifesto__word-end { font-size: 15vw; }
  .manifesto__word-start, .manifesto__word-end { vertical-align: top; }
  .manifesto__visual { order: 2; width: 100%; height: 78vw; min-height: 280px; max-height: 420px; margin: 0 0 32px; }
  .manifesto__photo--one { left: 5%; top: 15%; width: 38%; height: 54%; }
  .manifesto__photo--two { left: 28%; top: 0; width: 69%; height: 96%; }
  .manifesto__photo--three { left: 0; right: auto; bottom: 0; width: 24%; height: 27%; }
  .manifesto__owner { width: 105px; font-size: 9px; bottom: calc(100% + 10px); }
  .manifesto__copy { position: relative; width: auto; }
  .manifesto__intro { align-self: flex-start; width: 82%; max-width: 13em; margin: 0 0 24px; font-size: 25px; }
  .manifesto__perception { align-self: flex-end; width: 77%; margin: 0 2% 24px auto; font-size: 14px; }
  .manifesto__observation { align-self: flex-start; width: 84%; margin: 0 0 24px 7%; font-size: 13px; }
  .manifesto__transform { align-self: flex-end; width: 66%; margin: 0 8% 24px auto; font-size: 19px; }
  .manifesto__reason { align-self: flex-start; width: 80%; max-width: 24em; margin: 0 0 0 auto; font-size: 13px; }
  .manifesto__closing { width: 84%; margin: 32px 0 0 auto; }
  .manifesto__closing .manifesto__copy { position: relative; font-size: 22px; }
  .manifesto__exit { height: clamp(48px, 8svh, 96px); }
}
@media (prefers-reduced-motion: reduce) { .manifesto__exit { height: 48px; } .manifesto__photo img { transition: none; } }

/* Editorial composition: one anchor image with two supporting images. */
.manifesto__visual { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.82fr); grid-template-rows:repeat(2,minmax(0,1fr)); gap:clamp(10px,1.2vw,18px); }
.manifesto__photo { position:relative; inset:auto; width:auto; height:auto; min-width:0; min-height:0; z-index:1; border-radius:4px; }
.manifesto__photo--one { grid-column:1; grid-row:1 / 3; }
.manifesto__photo--two { grid-column:2; grid-row:1; }
.manifesto__photo--three { grid-column:2; grid-row:2; }
@media (max-width:700px) {
  .manifesto__visual { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); grid-template-rows:repeat(2,minmax(0,1fr)); }
  .manifesto__photo--one { grid-column:1; grid-row:1 / 3; }
  .manifesto__photo--two { grid-column:2; grid-row:1; }
  .manifesto__photo--three { grid-column:2; grid-row:2; }
}

