/* Shared Swiss festival feature, scoped to the two requested pages. */
.festival-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,5vw,72px);align-items:center;padding-block:54px 58px;border-top:1px solid var(--line);scroll-margin-top:28px}
.festival-feature figure{margin:0;min-width:0}
.festival-feature figure img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center}
.festival-feature figcaption{font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:10px}
.festival-copy{min-width:0}
.festival-copy .eyebrow{font-size:.75rem;letter-spacing:.1em;color:var(--deep-gold)}
.festival-copy h2{font-size:clamp(2rem,3vw,2.85rem);line-height:1.15;letter-spacing:-.045em;margin-top:17px}
.festival-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted);margin-top:18px;max-width:62ch}
.festival-copy>.text-link,.festival-links{margin-top:22px}
.festival-links{display:flex;flex-wrap:wrap;gap:16px 27px}
.festival-feature .text-link{font-size:.8125rem;gap:16px}
.festival-feature-compact{grid-template-columns:280px 1fr;padding-block:32px 36px;gap:42px}
.festival-feature-compact figure img{aspect-ratio:1.5;object-position:50% 50%}
.festival-feature-compact h2{font-size:clamp(1.65rem,2.35vw,2.2rem);margin-top:12px}
.festival-feature-compact .festival-copy>p:not(.eyebrow){font-size:.9375rem;line-height:1.75;margin-top:12px;max-width:68ch}
.festival-feature-compact .festival-copy>.text-link{margin-top:16px}
@media(max-width:760px){
 .festival-feature{grid-template-columns:1fr;gap:25px;padding-block:32px 38px}
 .festival-feature figure img{aspect-ratio:3/4;object-position:center}
 .festival-copy h2{font-size:2rem}
 .festival-feature-compact figure img{aspect-ratio:1.5;object-position:50% 50%}
 .festival-feature-compact h2{font-size:1.8rem}
 .festival-feature figcaption{font-size:.6875rem}
 .festival-links{flex-direction:column;align-items:flex-start}
}
