.festival-card{min-width:0;color:var(--ink);background:#fff;border:1px solid #d1d6da;border-radius:12px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.festival-card:hover{border-color:#9aaab7;text-decoration:none}.festival-card:focus-visible,.festival-page a:focus-visible,.festival-booking button:focus-visible{outline-offset:4px;outline:3px solid #265ea5}.festival-card-header{background:#164b82;flex-direction:column;justify-content:center;gap:12px;min-height:164px;padding:23px 22px;display:flex}.festival-card-branch{color:#d9e8f6;letter-spacing:.04em;font-size:10px;font-weight:600;line-height:1.5}.institutional-home .festival-card .festival-card-header h3{color:#fff;font-family:var(--display);letter-spacing:0;margin:0;font-size:24px;font-weight:600;line-height:1.3}.festival-card-content{flex:1;min-width:0}.festival-card-labels{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.festival-card .festival-free{color:#174e82;background:#eaf3fc;border:1px solid #bed5ec;border-radius:4px;padding:3px 7px;font-size:9px;font-weight:600;line-height:1.5}.festival-card-content>p{color:#617389;margin:3px 0 8px;font-size:13px;line-height:1.65}.festival-card .meta-rows{padding-top:0}.festival-card .foot{border-top:1px solid #e1e7ed}.festival-card .foot .festival-card-action{color:#fff;width:100%;box-shadow:none;background:#164b82;border-color:#164b82;justify-content:space-between;align-items:center;gap:12px;display:flex}.festival-card:hover .foot .festival-card-action{background:#103f70;border-color:#103f70}@media (max-width:760px){.festival-card-header{gap:9px;min-height:140px;padding:15px 12px}.festival-card-branch{font-size:8px}.institutional-home .festival-card .festival-card-header h3{font-size:17px;line-height:1.35}.festival-card-content>p{margin:2px 0 6px;font-size:11px;line-height:1.6}.festival-card-labels{gap:5px}.festival-card .festival-free{padding:2px 5px;font-size:8px}.institutional-home .festival-card .foot .festival-card-action{padding:8px 9px;font-size:11px}}html[data-theme=dark] .festival-card-content>p{color:#b7c7d9}html[data-theme=dark] .festival-card .foot{border-color:#34465b}.festival-eyebrow{color:#7b3547;letter-spacing:.1em;flex-wrap:wrap;align-items:center;gap:12px;font-size:11px;font-weight:700;line-height:1.7;display:flex}.festival-page{max-width:1200px;padding-top:30px;padding-bottom:70px}.festival-back{color:#73636b;align-items:center;min-height:44px;margin-bottom:12px;font-size:13px;text-decoration:none;display:inline-flex}.festival-hero{color:#fff8ee;background:#164b82;border-radius:14px;justify-content:space-between;align-items:center;gap:28px;padding:42px 44px;display:flex}.festival-hero .festival-eyebrow{color:#dec3a2;margin:0 0 18px}.festival-hero h1{font:500 clamp(32px,4vw,49px)/1.12 var(--display);color:inherit;margin:0}.festival-hero h1>span{font:400 clamp(18px,2.1vw,26px)/1.5 var(--display);color:#ecd8c2;margin-bottom:6px;display:block}.festival-hero p:not(.festival-eyebrow){color:#ebd4db;margin:22px 0 0;font-size:15px;line-height:1.8}.festival-hero-note{color:#ebd4db;border:1px solid #bf8b7f66;border-radius:9px;gap:13px;min-width:215px;padding:24px;font-size:12px;display:grid}.festival-hero-note b{font:500 25px/1.2 var(--display);color:#f5dfb9}.festival-steps{border-bottom:1px solid #e9e0e3;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 16px;padding:23px 0;list-style:none;display:grid}.festival-steps li{color:#887a80;align-items:center;gap:10px;font-size:13px;display:flex}.festival-steps li>span{background:#f2edef;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.festival-steps li[aria-current]{color:#164b82;font-weight:600}.festival-steps li[aria-current]>span{color:#fff;background:#164b82}.festival-section-title{justify-content:space-between;align-items:flex-end;gap:16px;margin:30px 0 20px;display:flex}.festival-section-title h2,.festival-detail h2{font:500 28px/1.25 var(--display);color:#193d63;margin:6px 0 0}.festival-section-title>p,.festival-live{color:#7a6c74;margin:0;font-size:12px}.festival-shows{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.festival-show{text-align:left;cursor:pointer;font:inherit;background:#fff;border:1px solid #e4d9de;border-radius:10px;flex-direction:column;padding:19px;transition:border-color .15s,background .15s;display:flex}.festival-show:hover:not(:disabled){background:#f6faff;border-color:#799ec2}.festival-show.is-selected{background:#edf5fd;border:2px solid #164b82;padding:18px}.festival-show:disabled{cursor:default;opacity:.65}.festival-show.is-selected:disabled{opacity:1}.festival-show-top{color:#976e7d;letter-spacing:.09em;justify-content:space-between;width:100%;font-size:10px;display:flex}.festival-show h3{font:500 23px/1.25 var(--display);color:#193d63;margin:18px 0 15px}.festival-show p{color:#786972;margin:0 0 9px;font-size:12px;line-height:1.6}.festival-show-bottom{color:#82737b;flex-wrap:wrap;justify-content:space-between;gap:8px;width:100%;margin-top:auto;padding-top:19px;font-size:11px;display:flex}.festival-show-bottom b{color:#49604d}.festival-selected{background:#fff;border:1px solid #e8e0e3;border-radius:12px;margin-top:28px;overflow:hidden}.festival-detail{background:#fcf9f6;border-bottom:1px solid #e8e0e3;justify-content:space-between;align-items:flex-start;gap:24px;padding:28px 30px;display:flex}.festival-detail>div{max-width:760px}.festival-detail p{color:#70636b;white-space:pre-line;font-size:14px;line-height:1.8}.festival-detail>a{color:#7a3547;flex-shrink:0;margin-top:8px;font-size:12px}.festival-detail-meta{color:#6e5c66;flex-wrap:wrap;gap:8px 18px;font-size:12px;display:flex}.festival-identity,.festival-seating,.festival-confirm{padding:0 30px 30px}.festival-identity{border-bottom:1px solid #eee7ea}.festival-identity>p,.festival-seating>p,.festival-confirm>p{color:#766872;font-size:13px;line-height:1.8}.festival-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:22px 0;display:grid}.festival-fields label{color:#5d4250;flex-direction:column;gap:8px;font-size:13px;font-weight:500;display:flex}.festival-fields input{font:inherit;color:#35242c;background:#fff;border:1px solid #dcd0d6;border-radius:6px;width:100%;min-height:46px;padding:12px;font-size:16px}.festival-fields input:focus{outline-offset:2px;outline:2px solid #3d78b3}.festival-fields small{color:#85717c;font-size:11px;font-weight:400}.festival-button{color:#fff;cursor:pointer;background:#164b82;border:1px solid #164b82;border-radius:7px;min-height:46px;padding:13px 20px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5}.festival-button:disabled{opacity:.5;cursor:default}.festival-legend{flex-wrap:wrap;gap:12px 20px;padding:16px 0;display:flex}.festival-legend>span{color:#75606c;align-items:center;gap:7px;font-size:11px;display:flex}.festival-legend i{border:1px solid;border-radius:4px;width:14px;height:14px}.festival-seat-plan{gap:17px;display:grid}.festival-seat-row{align-items:center;gap:18px;display:flex}.festival-row-label{color:#745d69;flex:0 0 120px;font-size:11px;font-weight:600}.festival-seat-row>div{flex-wrap:wrap;gap:8px;display:flex}.festival-seat{cursor:pointer;border:1px solid;border-radius:7px 7px 4px 4px;min-width:42px;height:42px;font-family:inherit;font-size:12px;font-weight:600;line-height:1}.seat-available{color:#2f6038;background:#f1f8f2;border-color:#85ac8b!important}.seat-held{color:#71500c;background:#ffdf74;border-color:#ba8b1c!important}.seat-pending{color:#5c4582;background:#dfd8f3;border-color:#9d88c8!important}.seat-approved{color:#5c5c67;background:#e4e5e8;border-color:#a7a8b0!important}.festival-seat:disabled{cursor:default}.festival-seat.seat-available:disabled{opacity:.55}.festival-seat.is-mine{outline-offset:2px;outline:3px solid #164b82}.festival-seat-hint{background:#f8f5f6;border-radius:6px;padding:12px 15px}.festival-confirm{background:#fffbeb;border-top:1px solid #ecdfae;padding-top:26px}.festival-timer{justify-content:space-between;align-items:center;gap:18px;display:flex}.festival-timer>div{gap:7px;display:grid}.festival-timer span{color:#86691d;letter-spacing:.08em;font-size:10px}.festival-timer strong{color:#6e4f1a;font-size:15px}.festival-timer b{color:#7b5111;font-variant-numeric:tabular-nums;font-size:35px;line-height:1}.festival-timer small{color:#8c6a2e;text-align:center;font-size:11px}.festival-consent{color:#6f6149;align-items:flex-start;gap:12px;margin:20px 0;font-size:12px;line-height:1.8;display:flex}.festival-consent input{accent-color:#164b82;flex-shrink:0;width:19px;height:19px;margin-top:3px}.festival-notice{color:#79602e;background:#fff7df;border:1px solid #ead9a5;border-radius:8px;margin:18px 0;padding:15px 18px;font-size:13px;line-height:1.7}.festival-notice.is-error{color:#9a2742;background:#fff0f1;border-color:#efc3ce}.festival-notice button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:15px;text-decoration:underline}.festival-selected>.festival-notice{margin:20px 30px}.festival-empty{text-align:center;background:#fcfaf8;border:1px solid #e9e1e5;border-radius:10px;margin-top:28px;padding:48px 25px}.festival-empty .festival-eyebrow{justify-content:center}.festival-empty h2{font:500 30px/1.3 var(--display);color:#193d63;margin:12px 0}.festival-empty p{color:#80707a;max-width:570px;margin:0 auto 22px;font-size:14px;line-height:1.8}.festival-empty a{color:#356088;font-size:13px}.festival-success{background:#f3f8f3;gap:22px;padding:36px 30px;display:flex}.festival-success-mark{color:#37623d;background:#dcebdc;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.festival-success h2{font:500 27px/1.3 var(--display);color:#37573a;margin:8px 0}.festival-success .festival-eyebrow{color:#5e7b5f}.festival-success p{color:#607462;font-size:14px;line-height:1.8}@media (max-width:1000px){.festival-shows{grid-template-columns:repeat(2,minmax(0,1fr))}.festival-hero{padding:32px}.festival-detail{flex-direction:column;gap:10px}}@media (max-width:640px){.festival-page{padding-top:20px}.festival-hero{flex-direction:column;align-items:stretch;gap:24px;padding:27px 22px}.festival-hero-note{gap:9px;min-width:0;padding:18px}.festival-hero-note b{font-size:21px}.festival-steps{gap:8px}.festival-steps li{flex-direction:column;align-items:flex-start;font-size:11px;line-height:1.6}.festival-shows{grid-template-columns:1fr}.festival-show{padding:20px}.festival-show h3{margin:12px 0}.festival-section-title{flex-direction:column;align-items:flex-start;gap:10px}.festival-section-title h2{font-size:26px}.festival-detail,.festival-success{padding:24px 20px}.festival-identity,.festival-seating,.festival-confirm{padding-left:20px;padding-right:20px}.festival-fields{grid-template-columns:1fr;gap:18px}.festival-seat-row{flex-direction:column;align-items:flex-start;gap:10px}.festival-row-label{flex-basis:auto}.festival-seat-row>div{gap:7px}.festival-timer{align-items:flex-start}.festival-timer strong{font-size:13px;line-height:1.6}.festival-timer b{font-size:29px}.festival-button{width:100%}.festival-success{flex-direction:column}}@media (prefers-reduced-motion:reduce){.festival-card,.festival-show{transition:none}}.festival-show-poster{object-fit:cover;border-radius:5px;width:100%;height:140px;margin:0 0 17px}.festival-identity-recap{background:#fffdf7;border:1px solid #ebdfbb;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0;padding:20px;display:grid}.festival-identity-recap dt{color:#88744a;margin-bottom:6px;font-size:11px}.festival-identity-recap dd{color:#5e4c2b;overflow-wrap:anywhere;margin:0;font-size:14px}.festival-success a{color:#37573a}@media (max-width:640px){.festival-identity-recap{grid-template-columns:1fr;gap:15px;padding:16px}}.festival-hero{color:#fff;background:#164b82;display:block}.festival-hero .festival-hero-kicker{color:#d2e5f6;flex-wrap:wrap;gap:8px 18px;margin:0 0 16px;font-size:12px;display:flex}.festival-hero h1>span{color:#e0edfa}.festival-hero .festival-hero-lead{color:#dceafa;margin:18px 0 0}.festival-hero-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0 0;padding:22px 0 0;list-style:none;display:grid}.festival-hero-facts li{color:#e3edf8;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6;display:flex}.festival-hero-facts .ic{flex-shrink:0;margin-top:3px}.festival-hero-facts b{color:#b9d4ee;margin-bottom:3px;font-size:10px;font-weight:500;display:block}.festival-show-card{background:#fff;border:1px solid #dce6f1;border-radius:10px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.festival-show-card.is-selected{border-color:#164b82;box-shadow:0 0 0 1px #164b82}.festival-show-card .festival-show{border:0;border-radius:0;flex:1;width:100%;padding:19px}.festival-show-card .festival-show.is-selected{border:0;padding:19px}.festival-show-action{color:#164b82;border-top:1px solid #dce6f1;width:100%;margin-top:12px;padding-top:16px;font-size:12px;font-weight:600;display:block}.festival-show-info{color:#52687f;border-top:1px solid #dce6f1;font-size:12px;line-height:1.75}.festival-show-info>summary{cursor:pointer;color:#25547f;justify-content:space-between;gap:10px;padding:12px 18px;font-weight:600;display:flex}.festival-show-info>summary::marker{content:""}.festival-show-info>div{padding:0 18px 18px}.festival-show-info p{white-space:pre-line;margin:0 0 15px}.festival-show-info dl{gap:10px;margin:0 0 14px;display:grid}.festival-show-info dt{color:#8596a8;font-size:10px;font-weight:600}.festival-show-info dd{overflow-wrap:anywhere;margin:1px 0 0}.festival-show-info ul{padding-left:16px}.festival-show-info a{color:#164b82;font-weight:600}.festival-reservation-bar{background:#fffae8;border:1px solid #e6cd7d;border-radius:10px;flex-wrap:wrap;align-items:center;gap:20px;margin:20px 0;padding:20px 24px;display:flex}.festival-reservation-bar>div:first-child{flex:1;gap:6px;min-width:180px;display:grid}.festival-reservation-bar strong{color:#614d1b;font-size:17px}.festival-reservation-bar>div:first-child>span:last-child{color:#8a742e;overflow-wrap:anywhere;font-size:12px}.festival-mini-timer{text-align:center;gap:6px;display:grid}.festival-mini-timer b{color:#785b11;font-variant-numeric:tabular-nums;font-size:30px}.festival-mini-timer small{color:#8a742e;font-size:10px}.festival-inline-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.festival-inline-actions>button:not(.festival-button){color:#72591d;font:inherit;cursor:pointer;background:#fffdf6;border:1px solid #d8c68f;border-radius:6px;padding:8px 12px;font-size:12px}.festival-inline-actions button:disabled{opacity:.5;cursor:default}.festival-button.is-secondary{color:#164b82;background:#fff;border-color:#b7cee5}.festival-edit-identity{background:#f3f8fd;border:1px solid #bfd4e8;border-radius:10px;margin:24px 0;padding:28px 30px}.festival-edit-identity h2{color:#19466f;margin:0 0 10px;font-size:25px}.festival-edit-identity>p{color:#657e96;font-size:13px;line-height:1.7}.festival-quantity{background:#f7faff;border:1px solid #d7e3ef;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin:22px 0 16px;padding:16px 18px;display:flex}.festival-quantity legend{color:#315777;padding:0 6px;font-size:13px;font-weight:600}.festival-quantity label{color:#315777;cursor:pointer;background:#fff;border:1px solid #ccdaea;border-radius:6px;align-items:center;gap:8px;min-height:42px;padding:9px 16px;font-size:14px;display:flex}.festival-quantity label:has(input:checked){background:#e8f2fc;border-color:#164b82}.festival-quantity input{accent-color:#164b82;width:17px;height:17px}.festival-quantity small{color:#6a7f95;flex:1;min-width:210px;font-size:12px;line-height:1.7}.festival-confirm{border:1px solid #ecdfae;border-radius:10px;margin-top:26px}.festival-confirm .festival-section-title{margin-top:0}.festival-confirm .festival-section-title>strong{color:#7c662a;white-space:nowrap;font-size:13px}.festival-chosen-seats{flex-wrap:wrap;gap:9px;margin:15px 0;display:flex}.festival-chosen-seats button{color:#705417;font:inherit;cursor:pointer;background:#ffe295;border:1px solid #c7a451;border-radius:6px;padding:10px 13px;font-size:12px}.festival-chosen-seats button>span{margin-left:12px;font-size:17px}.festival-chosen-seats button:disabled{opacity:.5;cursor:default}.festival-selection-warning{background:#fff3d7;border:1px solid #e6c996;border-radius:6px;padding:12px 15px;color:#845018!important}.festival-confirm-note{color:#8b7c5c;font-size:11px;line-height:1.7}.festival-notice.is-info{color:#315d85;background:#eff6fd;border-color:#c9ddef}.festival-success{border:1px solid #d9e7da;border-radius:10px;margin-top:26px}.festival-success>div{flex:1;min-width:0}.festival-success .festival-identity-recap{background:#fff;border-color:#d5e3d7}@media (max-width:640px){.festival-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.festival-reservation-bar{gap:14px;padding:18px}.festival-reservation-bar .festival-inline-actions{width:100%}.festival-reservation-bar .festival-inline-actions>button{flex:1}.festival-edit-identity{padding:22px 20px}.festival-quantity{padding:12px}.festival-quantity small{flex-basis:100%;min-width:0}.festival-show-card .festival-show,.festival-show-card .festival-show.is-selected{padding:20px}}.festival-shows{align-items:start}
:is(body:has(.institutional-home),body:has(.festival-page)){--body-font:"Lufga", "Segoe UI", Arial, sans-serif;--display:var(--body-font);--cond:var(--body-font);--mono:var(--body-font);font-family:var(--body-font)}:is(body:has(.institutional-home) :is(*):not(svg,svg *,code,kbd,pre,samp,.brand-institution),body:has(.festival-page) :is(*):not(svg,svg *,code,kbd,pre,samp,.brand-institution)){font-family:Lufga,Segoe UI,Arial,sans-serif!important}.institutional-home .catalog-results .program-grid{--program-card-cover-height:164px;--program-card-identity-height:44px;align-items:stretch}.institutional-home .catalog-results .program-grid>.program-card-simple{align-self:stretch;min-width:0;height:auto}.institutional-home .catalog-results .program-grid>.program-card-simple>:is(.event-banner,.festival-card-visual){height:var(--program-card-cover-height);min-height:var(--program-card-cover-height);max-height:var(--program-card-cover-height);flex:0 0 var(--program-card-cover-height)}.institutional-home .catalog-results .program-grid>.program-card-simple .event-banner-poster{height:100%;min-height:0}.institutional-home .catalog-results .program-card-simple>.program-card-body{flex:1 0 auto;min-width:0}.institutional-home .catalog-results .program-card-simple .program-basic-heading h3{-webkit-line-clamp:unset;overflow-wrap:anywhere;display:block;overflow:visible}.institutional-home .catalog-results .program-card-simple :is(.program-basic-type,.mrow>span){white-space:normal;text-overflow:clip;overflow-wrap:anywhere;overflow:visible}.institutional-home .catalog-results .program-card-simple .meta-rows{margin-top:0}.institutional-home .catalog-results .program-card-simple .foot{margin-top:auto}.institutional-home .catalog-results .program-card-simple>.program-cover-link{height:var(--program-card-cover-height);flex:0 0 var(--program-card-cover-height);display:block;overflow:hidden}.institutional-home .catalog-results .program-cover-link>.event-banner{--card-identity-height:var(--program-card-identity-height);border:0;height:100%;min-height:0;max-height:none}.institutional-home .section-heading>.catalog-description{max-width:650px;color:var(--muted,#53667d);margin:10px 0 0;font-size:13px;line-height:1.75;display:block}.institutional-home .catalog-intro .section-heading{display:block}.institutional-home .catalog-intro .section-heading:after{display:none}.program-content-preview{border-top:1px solid var(--line-soft,#dce5ef);min-width:0;padding-top:12px}.program-content-excerpt{-webkit-line-clamp:4;overflow-wrap:anywhere;color:var(--muted,#53667d);-webkit-box-orient:vertical;margin:0 0 10px;font-size:12px;line-height:1.75;display:-webkit-box;overflow:hidden}.program-content-preview:has(details[open]) .program-content-excerpt{display:none}.program-content-details>summary{cursor:pointer;min-height:44px;color:var(--accent,#0054a6);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:12px;font-weight:600;list-style:none;display:flex}.program-content-details>summary::-webkit-details-marker{display:none}.program-content-details>summary>span{font-size:18px}.program-content-details[open]>summary>span{transform:rotate(45deg)}.program-content-scroll{border:1px solid var(--line-soft,#dce5ef);background:var(--bg,#f8fafc);overflow-wrap:anywhere;border-radius:8px;max-height:360px;padding:12px;font-size:13px;line-height:1.8;overflow:auto}.program-content-scroll .rich-content :is(p,li){font-size:inherit;line-height:inherit}.program-content-scroll .rich-content :is(h3,h4){margin:16px 0 8px;font-size:14px}.program-content-scroll:focus-visible,.program-content-details>summary:focus-visible{outline:2px solid var(--accent,#0054a6);outline-offset:3px}@media (max-width:760px){.institutional-home .catalog-results .program-grid{--program-card-cover-height:104px;--program-card-identity-height:30px}.institutional-home .catalog-results .program-card-simple:has(.program-content-details[open]){grid-column:1/-1}}
