.ana-story {
  display: grid;
  grid-template-columns: minmax(18rem, .78fr) minmax(24rem, 1.22fr);
  gap: clamp(3rem, 8vw, 9rem);
  align-items: center;
  color: var(--ivory);
  background: #24231f;
}

.ana-story__portrait { position: relative; min-height: 42rem; margin: 0; overflow: hidden; }
.ana-story__portrait::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 58%, rgba(16,16,14,.72)); pointer-events: none; }
.ana-story__portrait img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 24%; filter: saturate(.82) contrast(1.02); }
.ana-story__portrait figcaption { position: absolute; z-index: 1; right: 1.5rem; bottom: 1.5rem; left: 1.5rem; color: #d4cec4; font-size: .58rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.ana-story__content h2 { max-width: 15ch; margin-bottom: clamp(2rem, 4vw, 4rem); }
.ana-story__content h2 em { color: var(--wood); }
.ana-story__copy { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem 3rem; max-width: 55rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.2); }
.ana-story__copy p { margin: 0; color: #aaa69f; line-height: 1.65; }
.ana-story__copy .ana-story__close { grid-column: 1 / -1; max-width: 34ch; margin: 1rem 0 0 auto; color: var(--ivory); font-family: "Times New Roman", Times, serif; font-size: clamp(1.45rem,2.2vw,2.25rem); font-style: italic; line-height: 1.2; text-align: right; }

@media (max-width: 980px) {
  .ana-story { grid-template-columns: 1fr; }
  .ana-story__portrait { min-height: 70svh; }
}

@media (max-width: 700px) {
  .ana-story__portrait { min-height: 34rem; }
  .ana-story__copy { grid-template-columns: 1fr; }
  .ana-story__copy .ana-story__close { grid-column: 1; }
}
