.lodging-mvp{--lodging-divider:#c5c1b8;border-top:2px solid var(--line);padding-top:20px}.lodging-mvp .lodging-mvp-heading{margin-bottom:16px}.lodging-mvp .lodging-mvp-heading h2{margin-bottom:8px}.lodging-mvp .lodging-mvp-area{color:var(--ink);overflow-wrap:anywhere;align-items:flex-start;gap:5px;margin:0;font-size:14px;line-height:1.5;display:flex}.lodging-mvp-area svg{flex:0 0 16px;width:16px;height:16px;margin-top:2px}.lodging-mvp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.lodging-mvp-card{border:2px solid var(--line);min-width:0;color:var(--ink);text-align:left;font:inherit;letter-spacing:0;background:#fff;border-radius:0;flex-direction:column;align-items:stretch;padding:16px 14px 12px;text-decoration:none;display:flex}.lodging-mvp-logo{align-items:center;height:76px;margin-bottom:12px;display:flex}.lodging-mvp-logo img{object-fit:contain;object-position:left center;width:min(100%,180px);height:76px;display:block}.lodging-mvp-cta{border-top:1px solid var(--lodging-divider);white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;font-size:16px;font-weight:700;line-height:24px;display:flex}.lodging-mvp-cta svg{flex-shrink:0;width:20px;height:20px}.lodging-mvp-card.is-ready{border-color:var(--blue)}.lodging-mvp-card.is-ready .lodging-mvp-cta{color:var(--blue)}.lodging-mvp-card.is-ready:hover{background:#f3f5ff}.lodging-mvp-card.is-ready:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.lodging-mvp-card.is-pending{border-color:var(--lodging-divider);cursor:not-allowed;opacity:1}.lodging-mvp-card.is-pending .lodging-mvp-cta{color:#62605a}.lodging-mvp .lodging-mvp-disclosure{color:#62605a;margin:10px 0 0;font-size:12px;line-height:1.6}@media (max-width:600px){.lodging-mvp{padding-top:16px}.lodging-mvp .lodging-mvp-heading{margin-bottom:12px}.lodging-mvp-grid{grid-template-columns:1fr;gap:8px}.lodging-mvp-card{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:10px 12px}.lodging-mvp-logo{flex:160px;min-width:0;height:60px;margin:0}.lodging-mvp-logo img{width:min(100%,160px);height:60px}.lodging-mvp-cta{border:0;flex-shrink:0;gap:5px;padding:0;font-size:15px}}
.detail-page .festival-detail.page{width:min(1040px,100%)}.detail-page .festival-detail .detail-body{padding:28px}.festival-detail .detail-overview{align-items:start;gap:28px;display:grid}.festival-detail.page .detail-overview.has-media{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}.festival-detail.page .detail-overview.has-media:not(:has(.detail-media)){grid-template-columns:minmax(0,1fr)}.detail-summary{min-width:0}.festival-detail .detail-overview .detail-heading h1{overflow-wrap:anywhere;word-break:keep-all;margin:8px 0 12px;font-size:36px;line-height:1.2}.festival-detail .detail-overview .detail-period{margin:0 0 20px;font-size:15px}.festival-detail .detail-overview .detail-row{overflow-wrap:anywhere;grid-template-columns:20px 62px minmax(0,1fr);gap:8px;padding:10px 0}.festival-detail .detail-overview .detail-primary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.festival-detail .detail-overview .detail-primary-actions a{grid-column:auto;min-width:0;font-size:13px}.festival-detail .detail-overview .detail-primary-actions a:last-child:nth-child(odd){grid-column:1/-1}.detail-media{min-width:0;margin:0}.detail-media-link{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.detail-media .festival-poster{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:560px;display:block}.detail-media-expand{min-height:40px;color:var(--blue);justify-content:center;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.detail-media-expand svg{width:16px;height:16px}.detail-media-link:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.detail-media-link:hover .detail-media-expand{text-decoration:underline}.festival-detail.drawer .detail-overview{grid-template-columns:1fr;gap:18px}.festival-detail.drawer .detail-summary{display:contents}.festival-detail.drawer .detail-heading{grid-row:1}.festival-detail.drawer .detail-media{grid-row:2}.festival-detail.drawer .detail-media .festival-poster{max-height:440px}@media (max-width:820px){.detail-page .festival-detail .detail-body{padding:20px 16px}.festival-detail.page .detail-overview.has-media{grid-template-columns:minmax(0,1fr);gap:18px}.festival-detail.page .detail-summary{display:contents}.festival-detail.page .detail-heading{grid-row:1}.festival-detail.page .detail-media{grid-row:2}.festival-detail .detail-overview .detail-heading h1{font-size:30px;line-height:1.2}.festival-detail .detail-overview .detail-period{margin-bottom:0}.festival-detail .detail-media .festival-poster{max-height:min(54svh,500px)}.festival-detail .detail-overview .detail-primary-actions{margin-top:0}}@media (max-width:380px){.festival-detail .detail-overview .detail-heading h1{font-size:27px}}
