.festival-article{max-width:880px;margin:28px auto 70px}.festival-article h1{font-size:clamp(32px,5vw,52px);line-height:1.12;letter-spacing:-1px}.festival-kicker{font-size:11px!important;font-weight:700;letter-spacing:.12em;color:#6d683e}.festival-lead{font-size:19px;line-height:1.8;color:#536759}.festival-edition,figcaption{font-size:12px;color:#627363;line-height:1.6}.festival-article section{padding:26px 0;border-bottom:1px solid #dfe6d9;scroll-margin-top:25px}.festival-article p{line-height:1.9;white-space:pre-line}.festival-article figure{margin:24px 0}.festival-article figure img{width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:18px}.festival-article figcaption{padding:8px 2px}.festival-chapters{display:flex;gap:10px 20px;flex-wrap:wrap;padding:20px 0;border-block:1px solid #dce5d6;font-size:13px}.festival-chapters a{padding:6px 0}.festival-timeline{border-left:2px solid #c3aa6c;list-style:none;margin:25px 0 0 12px;padding-left:26px}.festival-timeline li{position:relative;padding-bottom:24px}.festival-timeline li:before{content:'';position:absolute;left:-33px;top:6px;width:12px;height:12px;border-radius:50%;background:#c3aa6c}.festival-timeline h3{font-size:20px}.festival-notice{padding:16px 20px;border-left:3px solid #c3aa6c;background:#f3f4e9;border-radius:0 12px 12px 0;font-size:13px}.festival-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px}.festival-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin:24px 0}.festival-card{border:1px solid #dce5d6;border-radius:18px;overflow:hidden;text-decoration:none;color:#173e32;background:#fff}.festival-card img{display:block;width:100%;height:185px;object-fit:cover}.festival-card>div{padding:20px}.festival-card h2{font-size:23px}.festival-card p{font-size:14px;line-height:1.7}.festival-card span{font-size:13px;font-weight:700}.festival-pagination{display:flex;justify-content:space-between;gap:24px;margin:30px 0}.festival-pagination a{padding:10px 18px;border:1px solid #dce5d6;border-radius:10px}.festival-empty{font-size:14px;color:#63745e}@media(max-width:650px){.festival-article{margin-top:18px}.festival-article h1{font-size:34px}.festival-lead{font-size:17px}.festival-article section{padding:22px 0}.festival-chapters{flex-wrap:nowrap;overflow:auto;white-space:nowrap}.festival-chapters a{min-height:44px;display:flex;align-items:center}.festival-gallery{grid-template-columns:1fr}.festival-article figure img{border-radius:15px}}

.festival-article>header{display:block;padding:0 0 22px;border:0}.festival-article>header h1{margin:14px 0 20px}.festival-article>header p{margin:12px 0}.festival-article>header .festival-kicker{margin-bottom:18px}
