.program-card-simple.festival-card{border:1px solid var(--line,#e2e8f0);min-width:0;color:var(--ink,#0f172a);background:#fff;border-radius:12px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.program-card-simple.festival-card:hover{border-color:#9aaab7;text-decoration:none}.festival-card .festival-card-visual{grid-template-rows:var(--program-card-identity-height,52px) minmax(0, 1fr);height:var(--program-card-cover-height,190px);flex:0 0 var(--program-card-cover-height,190px);display:grid}.festival-card .festival-card-identity{color:#112b4d;background:#fff;align-items:center;gap:8px;min-width:0;padding:8px 14px;display:flex}.festival-card .festival-card-identity img{object-fit:contain;flex:0 0 24px;width:24px;height:24px}.festival-card .festival-card-identity span{text-transform:uppercase;min-width:0;font-size:7px;font-weight:700;line-height:1.3;display:block}.festival-card .festival-card-identity b{font-weight:700;display:block}.festival-card .festival-card-posters{background:#0a2a52;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;min-height:0;display:grid;position:relative;overflow:hidden}.festival-card .festival-card-posters img{object-fit:cover;width:100%;min-width:0;height:100%}.festival-card .festival-card-posters:after{content:"";pointer-events:none;background:linear-gradient(#0000 45%,#0a2a52c7);position:absolute;inset:0}.festival-card .festival-card-date,.festival-card .festival-card-count{z-index:1;white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:5px 9px;font-size:12.5px;font-weight:600;line-height:1.3;display:inline-flex;position:absolute;bottom:10px}.festival-card .festival-card-date{color:#0a2a52;background:#fff;left:12px;box-shadow:0 2px 8px #0a2a5240}.festival-card .festival-card-date .ic{color:#0054a6;width:13px;height:13px;margin:0}.festival-card .festival-card-count{color:#fff;background:#0a2a52;right:12px}html[data-theme=dark] .program-card-simple.festival-card{background:var(--card,#0f1c2e);color:var(--ink);border-color:#2c3e55}@media (max-width:760px){.institutional-home .festival-card .festival-card-identity{gap:5px;padding:5px 7px}.institutional-home .festival-card .festival-card-identity img{flex-basis:18px;width:18px;height:18px}.institutional-home .festival-card .festival-card-identity span{font-size:5px;line-height:1.35}.festival-card .festival-card-count{display:none}.festival-card .festival-card-date{white-space:normal;gap:4px;max-width:calc(100% - 12px);padding:3px 6px;font-size:11.5px;line-height:1.25;bottom:7px;left:6px}.festival-card .festival-card-date .ic{width:12px;height:12px}}.program-card-simple.festival-card{--fc-green:#15803d;--fc-stripes:repeating-linear-gradient(135deg, #ffffff17 0 6px, transparent 6px 12px);--fc-cream:#fbf8f0;--fc-ink:#0d2545;--fc-dash:#0d254538;background:var(--fc-cream);border-color:#0d254533;position:relative}.program-card-simple.festival-card:before{content:"";z-index:2;background:var(--fc-stripes), var(--fc-green);height:5px;position:absolute;top:0;left:0;right:0}.program-card-simple.festival-card:hover{border-color:var(--fc-green)}.festival-card .festival-card-identity{background:var(--fc-cream);padding-top:11px;position:relative}.festival-card .festival-card-ribbon{color:#0a6331;white-space:nowrap;background:#dcf6e6;border:1px solid #1f9d57;border-radius:6px;flex:none;margin-left:auto;padding:3px 9px;font-size:10.5px;font-style:normal;font-weight:600;line-height:1.3}.festival-card .festival-card-posters img{transition:transform .35s}.festival-card:hover .festival-card-posters img{transform:scale(1.05)}.festival-card .festival-card-posters:before{content:"";z-index:1;mix-blend-mode:screen;pointer-events:none;background:radial-gradient(60% 90% at 50% -20%,#fffae652,#0000 70%);position:absolute;inset:0}.festival-card .festival-card-date{color:var(--fc-ink);border:1px solid #b9e3c8}.festival-card .festival-card-date .ic{color:var(--fc-green)}.festival-card .festival-card-count{background:var(--fc-stripes), var(--fc-green);color:#fff;letter-spacing:.02em}.festival-card .festival-card-perforation{border-top:2px dashed var(--fc-dash);height:0;margin:0 14px;position:relative}.festival-card .festival-card-perforation:before,.festival-card .festival-card-perforation:after{content:"";background:var(--paper,#f8fafc);border:1px solid #0d254533;border-radius:50%;width:18px;height:18px;position:absolute;top:-10px}.festival-card .festival-card-perforation:before{left:-24px}.festival-card .festival-card-perforation:after{right:-24px}.festival-card .program-card-body{background:var(--fc-cream)}.festival-card .program-basic-type{color:var(--fc-green);font-weight:600}.festival-card .festival-card-ticket{background:var(--fc-stripes), var(--fc-green);color:#fff;letter-spacing:.06em;border-radius:4px;align-items:center;padding:4px 14px;font-size:11.5px;font-weight:700;display:inline-flex;-webkit-mask:radial-gradient(5px at 0,#0000 98%,#000) 0/51% 100% no-repeat,radial-gradient(5px at 100%,#0000 98%,#000) 100%/51% 100% no-repeat;mask:radial-gradient(5px at 0,#0000 98%,#000) 0/51% 100% no-repeat,radial-gradient(5px at 100%,#0000 98%,#000) 100%/51% 100% no-repeat}.festival-card .foot{border-top:2px dashed var(--fc-dash)}@media (max-width:760px){.festival-card .festival-card-ribbon{display:none}.festival-card .festival-card-perforation{margin:0 10px}.festival-card .festival-card-perforation:before{left:-20px}.festival-card .festival-card-perforation:after{right:-20px}.festival-card .festival-card-ticket{padding:3px 10px;font-size:11.5px}}@media (prefers-reduced-motion:reduce){.festival-card .festival-card-posters img{transition:none}.festival-card:hover .festival-card-posters img{transform:none}}html[data-theme=dark] .program-card-simple.festival-card{--fc-cream:var(--card,#0f1c2e);--fc-dash:#cbd5e140;border-color:#2c3e55}html[data-theme=dark] .festival-card .festival-card-ribbon{color:#8fe0ad;background:#12352a;border-color:#2f7d4f}html[data-theme=dark] .festival-card .program-basic-type{color:#6fd39a}html[data-theme=dark] .festival-card .festival-card-perforation:before,html[data-theme=dark] .festival-card .festival-card-perforation:after{background:var(--paper,#0b1626);border-color:#2c3e55}.festival-card .festival-card-price{color:var(--fc-green);flex-direction:column;line-height:1.15;display:flex}.festival-card .festival-card-price s{color:#566f8c;font-size:12.5px;font-weight:500;-webkit-text-decoration:line-through #c0392b;text-decoration:line-through #c0392b;text-decoration-thickness:2px}html[data-theme=dark] .festival-card .festival-card-price{color:#6fd39a}html[data-theme=dark] .festival-card .festival-card-price s{color:#9fb0c3}.festival-card .festival-card-posters[data-count="1"]{grid-template-columns:minmax(0,1fr)}.festival-card .festival-card-posters[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.festival-card .festival-card-posters[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.festival-card .festival-card-posters[data-count="2"] img{object-position:center 30%}.festival-card .festival-card-posters img.festival-card-poster-blur{z-index:0;object-fit:cover;filter:blur(14px)brightness(.62)saturate(1.1);width:calc(100% + 24px);height:calc(100% + 24px);position:absolute;inset:-12px}.festival-card .festival-card-posters img.festival-card-poster-main{z-index:0;object-fit:contain;width:auto;max-width:100%;height:100%;margin:0 auto;position:absolute;inset:0;box-shadow:0 6px 18px #00000059}.festival-card:hover .festival-card-posters img.festival-card-poster-blur{transform:none}.festival-card .festival-card-poster-empty{color:#fff;background:repeating-linear-gradient(135deg,#ffffff0f 0 6px,#0000 6px 12px),linear-gradient(160deg,#0f3a6d,#0a2a52 55%,#0e4a35);justify-content:center;align-items:center;min-width:0;min-height:0;padding:10px;display:flex;overflow:hidden}.festival-card .festival-card-poster-empty>b{color:#ffffffeb;border:2px solid #ffffff52;border-radius:50%;place-items:center;width:46px;height:46px;margin-bottom:18px;font-size:22px;font-weight:600;line-height:1;display:grid}.festival-card .festival-card-poster-empty>span{display:none}.festival-card .festival-card-posters[data-count="1"] .festival-card-poster-empty{justify-content:flex-start;align-items:flex-start;padding:12px 14px}.festival-card .festival-card-posters[data-count="1"] .festival-card-poster-empty>b{display:none}.festival-card .festival-card-posters[data-count="1"] .festival-card-poster-empty>span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-width:0;font-size:15px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}@media (max-width:760px){.festival-card .festival-card-poster-empty{padding:6px}.festival-card .festival-card-poster-empty>b{border-width:1.5px;width:30px;height:30px;margin-bottom:14px;font-size:14px}.festival-card .festival-card-posters[data-count="1"] .festival-card-poster-empty{padding:7px 8px}.festival-card .festival-card-posters[data-count="1"] .festival-card-poster-empty>span{font-size:12px}}
