@import url('../blog.css');
:root { --orange: #9a3412; --cream: #fff5e6; }
body { background: #fffcf7; }
.festival-hero { padding: 64px 0 32px; background: var(--cream); }
.festival-hero h1 { font-family: Georgia, serif; font-weight: 500; }
.festival-hero .intro { max-width: 650px; }
.breadcrumb { flex-wrap: wrap; gap: 10px; margin-bottom: 30px; }
.reading { max-width: 780px; margin-inline: auto; padding-block: 36px 64px; }
.reading section { margin-block: 40px; scroll-margin-top: 24px; }
.reading h2 { font-family: Georgia, serif; font-weight: 500; }
.reading p, .reading li { font-size: 1.05rem; line-height: 1.85; }
.reading li { margin-bottom: 16px; }
.reading figure { margin: 32px 0; }
.reading figure img, .festival-cover img { display: block; width: 100%; height: auto; border-radius: 16px; }
.festival-cover { margin: 24px 0 0; }
.contents { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 20px 0; border-bottom: 1px solid #e5d5c4; }
.levels { background: var(--cream); padding: 24px 24px 24px 44px; border-radius: 16px; }
.credits { border-top: 1px solid #e5d5c4; padding-top: 24px; overflow-wrap: anywhere; }
.credits li { font-size: .9rem; }
.festival-card { max-width: 720px; }
.festival-card img { display: block; width: 100%; height: auto; }
@media (max-width: 760px) { .festival-hero { padding-top: 32px; } .reading { padding-top: 16px; } .nav nav { flex-wrap: wrap; } .breadcrumb, .contents { justify-content: flex-start; } }
