:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--color-bg-translucent: rgba(255, 255, 255, .75);--color-bg-opaque: #ffffff;--color-text: #000000;--color-text-muted: #444444;--color-mint: #afff54;--color-border: #000000;--color-border-light: #e0e0e0;--color-btn-program-bg: transparent;--color-btn-program-text: var(--color-text);--color-btn-program-hover: rgba(35, 240, 49, .05);--color-btn-program-active-bg: #57ff44;--color-btn-program-active-text: #000000;--color-btn-map-bg: transparent;--color-btn-map-text: var(--color-text);--color-btn-map-hover: rgba(255, 61, 61, .05);--color-btn-map-active-bg: #57ff44;--color-btn-map-active-text: #000000;--color-btn-info-bg: transparent;--color-btn-info-text: var(--color-text);--color-btn-info-hover: rgba(43, 174, 255, .05);--color-btn-info-active-bg: #57ff44;--color-btn-info-active-text: #000000;--max-width: 1200px;--header-height: 80px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:scroll}body{background-color:var(--color-bg-opaque);color:var(--color-text);line-height:1.3;min-height:100vh;display:flex;flex-direction:column;width:100%}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border:3px solid #ffffff;border-radius:10px}.navbar{position:sticky;top:0;width:100%;height:var(--header-height);background-color:var(--color-bg-opaque);border-bottom:2px solid var(--color-border);z-index:100}.nav-container{max-width:var(--max-width);height:100%;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.logo-group{display:flex;align-items:baseline;gap:1.5rem}.nav-logo{font-size:2.2rem;font-weight:800;letter-spacing:-.04em;color:var(--color-text);line-height:1}.nav-dates{font-size:1.3rem;font-weight:700;letter-spacing:-.03em;color:var(--color-text)}.nav-subtitle-middle{display:flex;flex-direction:column;line-height:1.1;font-size:1.1rem;letter-spacing:-.01em;padding-top:.2rem}.nav-subtitle-middle .bold-part{font-weight:800;color:var(--color-text)}.nav-subtitle-middle .normal-part{font-weight:400;color:var(--color-text)}.nav-logos-right{display:flex;align-items:center}.header-logos{height:45px;width:auto;object-fit:contain}@media (max-width: 768px){:root{--header-height: 120px}.nav-container{flex-direction:column;align-items:flex-start;justify-content:center;padding:1rem 1.5rem;gap:.25rem}.logo-group{flex-direction:column;gap:.15rem}.nav-subtitle-middle{font-size:.9rem;width:100%}.header-logos{height:35px}}.main-container{width:100%;max-width:100%;margin:0;padding:0;display:flex;flex-direction:column;flex-grow:1}.navigation-box{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:2px solid var(--color-border);background-color:var(--color-bg-opaque);z-index:99;position:sticky;top:var(--header-height);height:45px}.nav-tab-btn{border:none;font-family:var(--font-sans);font-size:1.1rem;font-weight:800;letter-spacing:.05em;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center;transition:all .2s ease}.nav-tab-btn[data-tab=program]{background-color:var(--color-btn-program-bg);color:var(--color-btn-program-text)}.nav-tab-btn[data-tab=map]{background-color:var(--color-btn-map-bg);color:var(--color-btn-map-text)}.nav-tab-btn[data-tab=info]{background-color:var(--color-btn-info-bg);color:var(--color-btn-info-text)}.nav-tab-btn:not(:last-child){border-right:2px solid var(--color-border)}.nav-tab-btn[data-tab=program]:hover{background-color:var(--color-btn-program-hover)}.nav-tab-btn[data-tab=map]:hover{background-color:var(--color-btn-map-hover)}.nav-tab-btn[data-tab=info]:hover{background-color:var(--color-btn-info-hover)}.nav-tab-btn[data-tab=program].active{background-color:var(--color-btn-program-active-bg);color:var(--color-btn-program-active-text)}.nav-tab-btn[data-tab=map].active{background-color:var(--color-btn-map-active-bg);color:var(--color-btn-map-active-text)}.nav-tab-btn[data-tab=info].active{background-color:var(--color-btn-info-active-bg);color:var(--color-btn-info-active-text)}@media (max-width: 600px){.nav-tab-btn{font-size:1rem}}.content-panel{background-color:var(--color-bg-opaque);padding:3.5rem 2rem;position:relative;flex-grow:1}@media (min-width: 1200px){.content-panel{padding:4rem calc((100% - var(--max-width)) / 2 + 2rem)}}@media (max-width: 768px){.content-panel{padding:1.5rem}}.tab-pane{display:none}.tab-pane.active{display:block}.program-grid{display:grid;grid-template-columns:1fr;gap:0;align-items:start;padding-top:0!important}.program-column{display:none}.program-column.active-day{display:flex;flex-direction:column}.program-days-nav{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:2px solid var(--color-border);background-color:var(--color-bg-opaque);z-index:98;position:sticky;top:calc(var(--header-height) + 45px);height:45px}.day-nav-btn{background-color:var(--color-bg-opaque);color:var(--color-text);border:none;font-family:var(--font-sans);font-size:1.1rem;font-weight:800;letter-spacing:.05em;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer;text-transform:uppercase;transition:all .2s ease}.day-nav-btn:not(:last-child){border-right:2px solid var(--color-border)}.day-nav-btn:hover{background-color:#e8ffe8}.day-nav-btn.active{background-color:#d8ffdc;color:var(--color-text)}#tab-program{padding-top:0}@media (max-width: 992px){.content-panel{padding-top:0!important}#tab-map,#tab-info{padding-top:1.5rem}}.location-header{font-size:2.4rem;font-weight:300;margin-bottom:1.5rem;letter-spacing:-.02em;color:var(--color-text);margin-top:-2rem}@media (max-width: 992px){.location-header{margin-top:1.5rem;font-size:2rem}}.events-list{display:flex;flex-direction:column;padding:0 .5rem}.program-column:first-child .events-list{padding-left:0}.program-column:last-child .events-list{padding-right:0}@media (max-width: 992px){.events-list{padding:0}}.event-item{padding:.75rem 0;display:flex;flex-direction:row;align-items:flex-start;gap:1.5rem;position:relative}.event-time{font-size:1.4rem;font-weight:300;font-style:italic;color:var(--color-text);line-height:1.2;min-width:4.5rem;letter-spacing:-.01em;margin-bottom:0}.event-details{display:flex;flex-direction:column}.event-title{font-size:1.3rem;font-weight:800;line-height:1.2;color:var(--color-text);margin-bottom:.1rem;letter-spacing:-.02em}.event-location{display:none}.event-desc{font-size:1.1rem;color:var(--color-text);line-height:1.25;font-weight:400}.event-item.is-break .event-time,.event-item.is-break .event-title{color:#a0a0a0;font-weight:300;font-style:italic}.now-badge{display:inline-block;background-color:var(--color-mint);color:#000;border-radius:20px;padding:.1rem .5rem;font-size:.75rem;font-weight:800;text-transform:uppercase;animation:breathe 2s infinite ease-in-out;pointer-events:none;margin-left:.6rem;vertical-align:middle}@keyframes breathe{0%{transform:scale(1);box-shadow:0 0 #afff5466}50%{transform:scale(1.05);box-shadow:0 0 10px 2px #afff5499}to{transform:scale(1);box-shadow:0 0 #afff5400}}.map-section-layout{display:flex;flex-direction:column;gap:0}@media (min-width: 993px){.map-section-layout{flex-direction:row;align-items:flex-start;gap:3rem}}.map-canvas{background-color:var(--color-bg-opaque);margin:-3.5rem -2rem 0;padding:1rem;display:flex;justify-content:center;position:relative}@media (min-width: 993px){.map-canvas{position:sticky;top:calc(var(--header-height) + 45px);width:50%;height:calc(100vh - var(--header-height) - 45px);margin:-3.5rem 0 0 -2rem;flex-shrink:0;z-index:10}}@media (min-width: 1200px){.map-canvas{margin-top:-4rem}}@media (max-width: 992px) and (min-width: 769px){.map-canvas{margin-top:-1.5rem}}.artists-section-wrapper{padding-top:1rem;padding-bottom:2rem}@media (min-width: 993px){.artists-section-wrapper{width:50%;padding-top:0}}.map-canvas img{width:100%;height:auto;display:block}@media (min-width: 769px){.map-canvas img{max-height:60vh;width:auto}}@media (min-width: 993px){.map-canvas img{max-height:100%;width:100%;object-fit:contain}}@media (max-width: 768px){body.map-active{overflow:hidden;height:100vh}body.map-active .content-panel{height:calc(100vh - var(--header-height) - 45px);padding-top:0;padding-bottom:0;display:flex;flex-direction:column}#tab-map.active{display:flex;flex-direction:column;flex:1;min-height:0}.map-section-layout{flex:1;min-height:0}.map-canvas{height:40%;flex-shrink:0;margin:-1.5rem -1.5rem 0;overflow:hidden;border-bottom:2px solid var(--color-border)}.map-canvas img{height:100%;object-fit:contain;cursor:grab;touch-action:none}.map-canvas img:active{cursor:grabbing}.artists-section-wrapper{flex:1;overflow-y:auto;min-height:0}}.map-placeholder-canvas{width:100%;height:350px;background-color:#00000005;border:2px dashed var(--color-border);display:flex;justify-content:center;align-items:center;padding:2rem;text-align:center}.placeholder-border-box h3{font-size:1.5rem;font-weight:800;margin-bottom:.75rem}.placeholder-border-box p{font-size:1rem;color:var(--color-text-muted);max-width:600px;margin:0 auto .5rem}.placeholder-hint{font-size:.85rem;font-weight:600;color:#777}.artists-section-wrapper{display:flex;flex-direction:column;gap:2rem}.section-title{font-size:2.2rem;font-weight:800;letter-spacing:-.04em;border-bottom:2px solid var(--color-border);padding-bottom:1rem;margin-bottom:1.5rem}.artists-list-view{column-count:2;column-gap:3rem;display:block}@media (min-width: 993px){.artists-list-view{column-count:1}}@media (max-width: 768px){.artists-list-view{column-count:1}}.artist-work-row{display:flex;flex-direction:row;align-items:flex-start;padding-bottom:.5rem;gap:.5rem;break-inside:avoid;page-break-inside:avoid;transition:background-color .2s ease;border-radius:8px}.artist-number{background-color:var(--color-text);color:var(--color-bg-opaque);border-radius:50%;min-width:1.6rem;height:1.6rem;display:flex;align-items:center;justify-content:center;font-weight:300;font-size:1rem}.artist-details{margin-top:.1rem}.artist-work-title{font-size:1.3rem;font-weight:800;line-height:1.2}.artist-work-name{font-size:1rem;font-weight:400;color:var(--color-text)}.artist-work-desc{font-size:.9rem;color:var(--color-text-muted);line-height:1.5}.info-section-layout{max-width:800px}.info-text-content{display:flex;flex-direction:column;gap:.8rem;font-size:1.1rem;line-height:1.25;color:var(--color-text)}.footer-minimal{background-color:var(--color-bg-opaque);padding:1.5rem 2rem;margin-top:auto;text-align:center;border-top:1px solid var(--color-border-light);position:relative;z-index:3}.footer-minimal p{font-size:.85rem;color:var(--color-text-muted)}.info-video-container{position:sticky;top:calc(var(--header-height) + 45px);height:calc(100vh - var(--header-height) - 45px);width:100vw;margin-top:-3.5rem;margin-left:calc(-50vw + 50%);overflow:hidden;display:flex;justify-content:center;align-items:center;z-index:0;background-color:#000}@media (min-width: 1200px){.info-video-container{margin-top:-4rem}}@media (max-width: 992px){.info-video-container{margin-top:-1.5rem}}.bg-video{width:100%;height:100%;object-fit:cover;transform:scale(1.05)}.scroll-indicator{position:absolute;bottom:5rem;right:2rem;color:#fff;font-size:4rem;z-index:1;pointer-events:none}.info-text-wrapper{position:relative;z-index:2;background-color:var(--color-bg-opaque);width:100vw;margin-left:calc(-50vw + 50%);padding:2rem 2rem 4rem;display:flex;justify-content:center;box-shadow:0 -20px 30px -10px #00000026;min-height:100vh;margin-bottom:-3.5rem}@media (min-width: 1200px){.info-text-wrapper{margin-bottom:-4rem}}@media (max-width: 768px){.info-text-wrapper{margin-bottom:-1.5rem}}.zoom-controls{position:absolute;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:10}.zoom-btn{width:40px;height:40px;border-radius:50%;background-color:#ffffff80;border:2px solid var(--color-border);color:var(--color-text);font-size:1.5rem;font-weight:800;display:flex;justify-content:center;align-items:center;cursor:pointer;box-shadow:none;padding:0 0 2px;transition:background-color .2s ease}.zoom-btn:hover{background-color:var(--color-mint)}.party-banner{position:absolute;top:1.5rem;right:2rem;background-color:#f0f;color:#fff;padding:1rem 1.5rem;font-weight:800;border-radius:50px;text-decoration:none;z-index:10;border:none;box-shadow:none;animation:pulseScale 2s infinite ease-in-out;display:flex;align-items:center;justify-content:center}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width: 768px){.party-banner{top:1rem;right:1rem;padding:.8rem 1.2rem;font-size:.9rem}}
