/* Code Eagle: Congra Itinerary + Eagle Gallery, adaptados a fotografias de obra reais. */
.eagle-obra { padding: clamp(84px, 11vw, 170px) var(--page-gutter, 40px); background: var(--color-ink-deep, #0a0a0a); color: #fff; }
.eagle-obra__shell { width: min(100%, 1440px); margin-inline: auto; }
.eagle-obra__header { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .55fr); gap: 28px clamp(40px, 9vw, 154px); align-items: end; }
.eagle-obra__header > p:first-child { grid-column: 1 / -1; margin: 0 0 28px; color: var(--accent-spark, #e65100); font-family: var(--font-mono, monospace); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.eagle-obra__header > p:first-child span { color: rgba(255,255,255,.45); padding-inline: 6px; }
.eagle-obra__header h2 { max-width: 12ch; margin: 0; font-family: var(--font-display, serif); font-size: clamp(46px, 5.6vw, 88px); font-weight: 700; letter-spacing: -.06em; line-height: .89; text-wrap: balance; }
.eagle-obra__header > p:last-child { max-width: 390px; margin: 0 0 4px; color: rgba(255,255,255,.68); font-size: clamp(15px, 1.15vw, 18px); line-height: 1.55; }
.eagle-obra__layout { display: grid; grid-template-columns: minmax(300px, .73fr) minmax(0, 1.27fr); gap: clamp(40px, 7vw, 120px); margin-top: clamp(66px, 9vw, 130px); }
.eagle-obra__timeline { display: grid; align-content: start; gap: 0; margin: 0; padding: 0; list-style: none; }
.eagle-obra__timeline li { display: grid; grid-template-columns: 54px 1fr; gap: 22px; min-height: 142px; }
.eagle-obra__bar { display: grid; justify-items: center; grid-template-rows: auto 1fr; }
.eagle-obra__bar span { display: grid; place-items: center; width: 38px; height: 38px; color: var(--accent-spark, #e65100); border: 1px solid rgba(230,81,0,.6); border-radius: 50%; font-family: var(--font-mono, monospace); font-size: 10px; font-weight: 600; }
.eagle-obra__bar i { width: 1px; margin-top: 9px; background: linear-gradient(var(--accent-spark, #e65100), rgba(255,255,255,.14)); }
.eagle-obra__timeline h3 { margin: 8px 0 8px; font-size: clamp(19px, 1.6vw, 26px); font-weight: 700; letter-spacing: -.03em; line-height: 1.05; }
.eagle-obra__timeline p { max-width: 34ch; margin: 0; color: rgba(255,255,255,.62); font-size: 14px; line-height: 1.52; }
.eagle-obra__gallery { display: grid; grid-template-columns: 1.12fr .88fr; grid-template-rows: repeat(2, minmax(160px, 1fr)); gap: 10px; min-height: 610px; }
.eagle-obra__photo { position: relative; margin: 0; overflow: hidden; background: #171717; }
.eagle-obra__photo--main { grid-row: 1 / span 2; }
.eagle-obra__photo img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.86) contrast(1.04); transition: transform 550ms var(--ease-out, ease-out); }
.eagle-obra__photo:hover img { transform: scale(1.045); }
.eagle-obra__photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 48%, rgba(0,0,0,.66)); pointer-events: none; }
.eagle-obra__photo figcaption { position: absolute; z-index: 1; right: 14px; bottom: 13px; left: 14px; color: #fff; font-family: var(--font-mono, monospace); font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
@media (max-width: 800px) { .eagle-obra { padding-inline: 20px; } .eagle-obra__header { grid-template-columns: 1fr; } .eagle-obra__header > p:first-child { margin-bottom: 4px; } .eagle-obra__header h2 { max-width: 11ch; } .eagle-obra__layout { grid-template-columns: 1fr; margin-top: 52px; } .eagle-obra__gallery { order: -1; min-height: 440px; grid-template-rows: repeat(2, 210px); } .eagle-obra__timeline li { min-height: 126px; } }
@media (prefers-reduced-motion: reduce) { .eagle-obra__photo img { transition: none; } }
