
 .festival-history > .festival-section-title {
  color: #1a1a1a; background: #ffe1b0 url("assets/historia/24-bege-textura.webp") center / cover;
}

.festival-about h1 { font-size: clamp(2.5rem, 6vw, 6rem); line-height: .96; max-width: 10ch; margin: .6rem 0 1rem; }

.festival-about::before { clip-path: polygon(40% 0, 100% 0, 100% 100%, 14% 100%, 24% 57%, 9% 43%); }

.festival-history > .festival-section-title { width: 100%; padding-inline: max(6%, calc((100% - 79rem)/2)); }

.festival-history > .festival-section-title .festival-kicker { color: #522b04; }

.festival-history .festival-chapter { background: var(--chapter-base); color: var(--chapter-ink); }

.festival-history .chapter-layout { min-height: min(68svh, 37rem); }

.festival-history .chapter-copy { padding: 0; box-shadow: none; background: none; }

.festival-history .chapter-art::before { display: none; }

.festival-history .chapter-art img:first-child { width: min(100%, 34rem); max-height: 26rem; object-fit: contain; margin-inline: auto; box-shadow: none; }

.festival-history .chapter-2024 {
  --chapter-base: #ffe1b0; --chapter-ink: #1a1a1a; --chapter-accent: #522b04;
}

.festival-history .chapter-2024 .chapter-backdrop {
  inset: 0; opacity: 1; background-image: url("assets/historia/24-bege-textura.webp");
}

.festival-history .chapter-2024::before {
  content: ""; position: absolute; z-index: -1; inset: 0;
  background: #704214 url("assets/historia/24-marrom-textura.webp") center / cover;
  clip-path: ellipse(40% 12% at 0 110%);
}

.festival-history .chapter-2024 .chapter-layout::after {
  content: ""; position: absolute; bottom: 0; inset-inline: 0; height: .45rem; background: var(--year-spectrum);
}

.chapter-2024 .archive-title-line { display: block; }

.chapter-2024 .archive-lettering { font-family: "Dirtyline Arquivo", Georgia, serif; }

.chapter-2024 .archive-title-number { width: auto; height: .93em; vertical-align: -.015em; }

.chapter-2024 .archive-title-ucs { font-size: 1.7em; letter-spacing: .08em; }

.festival-history .chapter-2024 .chapter-copy .chapter-explore { background: #522b04; color: #ffe1b0; }

.festival-history .chapter-2025 .chapter-copy { border: none; }

.festival-history .chapter-2025::before, .festival-history .chapter-2026::before {
  content: ""; position: absolute; z-index: -1; inset: 0; background: var(--chapter-wedge);
  clip-path: polygon(100% 0, 100% 100%, 52% 100%, 64% 59%);
}

.festival-history .chapter-2025 { --chapter-wedge: #cb0000; }

.festival-history .chapter-2026 { --chapter-base: var(--green); --chapter-ink: var(--cream); --chapter-accent: var(--yellow); --chapter-wedge: var(--red); }

.festival-history .chapter-2026 .chapter-explore { background: var(--cream); color: var(--ink); }

.festival-history .festival-chapter::after { display: none; }

.festival-history :is(.chapter-2025,.chapter-2026)::after {
  display: block; content: ""; position: absolute; inset: 0 0 auto; height: clamp(1rem, 7vw, 6rem);
  z-index: -1; background: var(--previous-ink); clip-path: polygon(0 0, 100% 0, 100% 12%, 18% 100%, 0 68%);
}

.festival-history .chapter-2025 { --previous-ink: #704214; }

.festival-history .chapter-2026 { --previous-ink: #3f3f3f; }

.festival-bridge { position: relative; overflow: clip; isolation: isolate; display: grid; place-items: center; min-height: clamp(6rem, 18vh, 11rem); background: var(--green); }

.festival-bridge::before { content: ""; position: absolute; z-index: -1; inset: 0; background: var(--red); clip-path: polygon(0 0, 100% 0, 100% 35%, 72% 5%, 22% 45%, 0 28%); }

.festival-bridge img { width: clamp(4rem, 12vw, 8rem); }

.festival-contact { padding-block: 3.5rem; background: var(--cream); color: var(--ink); }

.festival-contact h2 { color: var(--green); font: 900 clamp(2rem, 6vw, 5rem)/1 "Mona Sans Wide", sans-serif; }

.festival-contact ul { padding-left: 1.2rem; line-height: 1.9; overflow-wrap: anywhere; }
@media (prefers-reduced-motion: no-preference) {

  .festival-history .chapter-2024::before {
    clip-path: ellipse(calc(35% + 20% * var(--leave,0)) calc(14% + 88% * var(--leave,0)) at 0 110%);
  }

  .festival-history .chapter-2024 .chapter-layout::after { transform: scaleX(calc(.5 + .5 * var(--enter,1))); transform-origin: left; }

  .festival-history .chapter-2025 .chapter-art {
    transform: translateX(calc(15% * (1 - var(--enter,1)))) scale(calc(.78 + .22 * var(--enter,1) + .6 * var(--leave,0)));
  }

  .festival-history :is(.chapter-2025,.chapter-2026)::before {
    transform: translateX(calc(30% * (1 - var(--enter,1)) - 12% * var(--leave,0)));
  }

  .festival-history :is(.chapter-2025,.chapter-2026)::after {
    transform: translateY(calc(-90% * var(--enter,1)));
  }

  .festival-bridge img { transform: translateY(calc(3rem * (1 - var(--enter,1)))) rotate(calc(-18deg * (1 - var(--enter,1)))) scale(calc(.72 + .28 * var(--enter,1))); }

  .festival-bridge::before { transform: translateY(calc(-82% * var(--leave,0))); }
}
@media (max-width: 720px) {

  .festival-history .chapter-layout { min-height: 0; }

  .festival-history .chapter-art img:first-child { max-height: 13rem; }

  .festival-about::before { inset: 64% 0 0 0; }
}


/* Match the approved About heading after promoting it to the page title. */
.festival-about h1{color:var(--ink);letter-spacing:-.045em}
.festival-page .stat-year{background:transparent;border-top:1px solid #eee2c933}
.festival-page .stat-2025{color:#fff}
.festival-page .stat-2026{color:#eee2c9}
.festival-page .stat-2026 strong,.festival-page .stat-2026 h3{color:#e6a119}
