:root{--header-height:72px;--background:#f8f8f8;--foreground:#0b0b0b;--card:#fff;--card-foreground:#0b0b0b;--popover:#fff;--popover-foreground:#0b0b0b;--muted:#eee;--muted-foreground:#636363;--primary:#280065;--primary-foreground:#f8f8f8;--secondary:#edebff;--secondary-foreground:#280065;--accent:#e5d3ff;--accent-foreground:#3f0075;--highlight:#8a30ff;--text-highlight:#9b48fb;--text:#0f0f0fb3;--destructive:#de3b3d;--destructive-foreground:#f8f8f8;--border:#bebebe;--input:#fff;--ring:#9b48fb;--radius:1.5rem;--radius-lg:2rem}@supports (color:lab(0% 0 0)){:root{--background:lab(97.68% -.0000298023 .0000119209);--foreground:lab(3.04863% 0 0);--card:lab(100% 0 0);--card-foreground:lab(3.04863% 0 0);--popover:lab(100% 0 0);--popover-foreground:lab(3.04863% 0 0);--muted:lab(94.2% 0 0);--muted-foreground:lab(42% 0 0);--primary:lab(10.0045% 46.349 -57.7299);--primary-foreground:lab(97.68% -.0000298023 .0000119209);--secondary:lab(93.7034% 6.26838 -17.5929);--secondary-foreground:lab(10.0045% 46.349 -57.7299);--accent:lab(87.1599% 18.9779 -31.7577);--accent-foreground:lab(14.0164% 57.2109 -62.1245);--highlight:lab(43.9051% 70.1659 -91.83);--text-highlight:lab(49.1702% 59.9918 -76.964);--text:lab(4.31523% .0000521541 -.00504553/.7);--destructive:lab(51.5803% 63.2457 38.9399);--destructive-foreground:lab(97.68% -.0000298023 .0000119209);--border:lab(76.8% -.0000298023 0);--input:lab(100% 0 0);--ring:lab(49.1702% 59.9918 -76.964)}}.dark{--background:#000;--foreground:#f8f8f8;--card:#0b0c1a;--card-foreground:#f8f8f8;--popover:#0b0c1a;--popover-foreground:#f8f8f8;--muted:#131423;--muted-foreground:#9c9dab;--primary:#c09bfd;--primary-foreground:#16112b;--secondary:#16112b;--secondary-foreground:#c09bfd;--accent:#2a1049;--accent-foreground:#f2e9ff;--highlight:#8a30ff;--text-highlight:#9b48fb;--text:#f8f8f8;--destructive:#bb061e;--destructive-foreground:#f8f8f8;--border:#ffffff1a;--input:#ffffff26;--ring:#b27eff}@supports (color:lab(0% 0 0)){.dark{--background:lab(0% 0 0);--foreground:lab(97.68% -.0000298023 .0000119209);--card:lab(3.50838% 2.05448 -8.45253);--card-foreground:lab(97.68% -.0000298023 .0000119209);--popover:lab(3.50838% 2.05448 -8.45253);--popover-foreground:lab(97.68% -.0000298023 .0000119209);--muted:lab(6.94658% 2.90282 -10.6344);--muted-foreground:lab(65.0424% 1.40032 -7.39522);--primary:lab(70.2242% 29.1484 -44.0821);--primary-foreground:lab(6.61231% 8.15005 -16.7716);--secondary:lab(6.61231% 8.15005 -16.7716);--secondary-foreground:lab(70.2242% 29.1484 -44.0821);--accent:lab(11.2623% 23.71 -30.7956);--accent-foreground:lab(93.6214% 9.03297 -16.1145);--highlight:lab(43.9051% 70.1659 -91.83);--text-highlight:lab(49.1702% 59.9918 -76.964);--text:lab(97.68% -.0000298023 .0000119209);--destructive:lab(39.9438% 63.5347 42.0903);--destructive-foreground:lab(97.68% -.0000298023 .0000119209);--border:lab(100% 0 0/.1);--input:lab(100% 0 0/.15);--ring:lab(62.1579% 43.5784 -61.9524)}}body{color:var(--text);padding-top:var(--header-height);font-size:1.125rem;font-weight:500;line-height:1.625}@media (min-width:768px){body{font-size:1.25rem}}input,textarea{background-color:var(--muted);border:2px solid var(--muted-foreground);border-radius:.75rem;width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}input:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 80%);outline:none}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--foreground),transparent 80%)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--primary),transparent 80%)transparent}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--primary),transparent 80%);border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--primary)}h1,.h1{text-transform:uppercase;letter-spacing:-.05em;font-size:1.5rem;font-style:italic;font-weight:900;line-height:1;font-family:var(--font-outfit),sans-serif;color:var(--foreground);margin-bottom:10px;padding-right:.1em}@media (min-width:768px){h1,.h1{font-size:2.25rem}}h1--large,.h1--large{font-size:36px}@media (min-width:768px){h1--large,.h1--large{font-size:72px}}h2,.h2{text-transform:uppercase;letter-spacing:-.05em;font-size:1.5rem;font-style:italic;font-weight:900;line-height:1;font-family:var(--font-outfit),sans-serif;color:var(--foreground);margin-bottom:10px;padding-right:.1em}@media (min-width:768px){h2,.h2{font-size:2.25rem}}h3,.h3{text-transform:uppercase;letter-spacing:-.05em;font-size:1.5rem;font-style:italic;font-weight:900;line-height:1;font-family:var(--font-outfit),sans-serif;color:var(--foreground);margin-bottom:10px;padding-right:.1em}@media (min-width:768px){h3,.h3{font-size:1.5rem}}.text-button{text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:900;font-family:var(--font-sans);background-color:color-mix(in srgb,var(--text-highlight),transparent 90%);border:1px solid color-mix(in srgb,var(--text-highlight),transparent 80%);color:var(--text-highlight);border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.25rem .75rem;display:inline-flex}.text-button-disabled{background-color:color-mix(in srgb,var(--foreground),transparent 95%);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);text-transform:uppercase;color:color-mix(in srgb,var(--foreground),transparent 60%);border-radius:.5rem;justify-content:center;align-items:center;padding:.25rem .75rem;font-style:italic;font-weight:700;display:inline-flex}.text-gradient{background:linear-gradient(to right,var(--foreground),var(--primary));color:#0000;-webkit-background-clip:text;background-clip:text;padding-right:.1em;display:inline-block}.text-highlight-gradient{background:linear-gradient(135deg,var(--text-highlight)0%,var(--text-highlight)50%,white 100%);color:#0000;-webkit-background-clip:text;background-clip:text;padding-right:.1em;display:inline-block}.text-small{font-size:12px}@media (min-width:768px){.text-small{font-size:12px}}@keyframes gradient{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}a,.link{color:var(--primary);text-decoration:none;transition:color .3s}a:hover,.link:hover{color:var(--foreground)}.link-btn{cursor:pointer;color:var(--foreground);text-transform:uppercase;letter-spacing:.05em;background:0 0;border:1px solid #0000;border-radius:9999px;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.link-btn:hover{transform:scale(1.05)}.link-btn--standard{background:color-mix(in srgb,var(--primary),transparent 90%);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary),transparent 80%)}.link-btn--standard:hover{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);box-shadow:0 4px 12px color-mix(in srgb,var(--primary),transparent 70%)}.link-btn--large{letter-spacing:-.025em;background:color-mix(in srgb,var(--primary),transparent 90%);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary),transparent 80%);padding:1rem 1.5rem;font-size:1.5rem;font-weight:900}.link-btn--large:hover{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);box-shadow:0 8px 24px color-mix(in srgb,var(--primary),transparent 60%);transform:scale(1.05)}.link-btn--inactive{background:color-mix(in srgb,var(--foreground),transparent 95%);color:color-mix(in srgb,var(--foreground),transparent 60%);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);cursor:default}.link-btn--inactive:hover{box-shadow:none;background:color-mix(in srgb,var(--foreground),transparent 90%);color:color-mix(in srgb,var(--foreground),transparent 50%);transform:none}.items-center{align-items:center}.text-center{text-align:center}.underline-hover{position:relative}.underline-hover:after{content:"";background:var(--foreground);width:0;height:1px;transition:width .3s;position:absolute;bottom:-.25rem;left:0}.link-btn-circle-hover{border-radius:var(--radius);color:color-mix(in srgb,var(--foreground),transparent 40%);background-color:#0000;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.link-btn-circle-hover:hover{color:#fff;background:var(--highlight)}.link-btn-circle-hover.is-active{background-color:color-mix(in srgb,var(--primary),transparent 80%);color:var(--primary)}.link-btn-circle-hover.is-active:hover{background-color:color-mix(in srgb,var(--primary),transparent 70%)}.link-btn-circle-hover--small{padding:.25rem}.with-icon{align-items:center;gap:.5rem;display:inline-flex}.with-icon--arrow-down:after{content:"";border-bottom:2px solid;border-right:2px solid;width:.4em;height:.4em;margin-bottom:3px;transition:transform .3s;display:block;transform:rotate(45deg)}.card{border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);background:#fff;transition:all .5s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.card:hover{border-color:color-mix(in srgb,var(--primary),transparent 50%);transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.card-opacity{background-color:#ffffffb3}.dark .card{background:color-mix(in srgb,var(--background),white 3%);border-color:#ffffff14;box-shadow:0 4px 6px -1px #0003}.dark .card:hover{background:color-mix(in srgb,var(--background),white 5%);border-color:color-mix(in srgb,var(--primary),transparent 60%);box-shadow:0 10px 15px -3px #0006}.card--layout-full{flex-direction:column;height:100%;display:flex}.card--header{flex-direction:row;justify-content:space-between;align-items:center;padding:2.5rem;display:flex}.card--content{flex-direction:column;height:100%;padding:2.5rem;display:flex}.card--footer-content{border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);align-items:center;gap:1rem;padding-top:2rem;display:flex}.card--top-icon{background-color:#fafafa;border-radius:1.5rem;justify-content:center;align-items:center;width:4rem;height:4rem;margin-bottom:2.5rem;transition:all .5s;display:flex}.card:hover .card--top-icon{background-color:color-mix(in srgb,var(--primary),transparent 90%);transform:rotate(6deg)}.card-stats-grid{z-index:10;grid-template-columns:1fr;gap:2rem;display:grid;position:relative}@media (min-width:768px){.card-stats-grid{grid-template-columns:repeat(2,1fr)}}.card-stats-grid .full-width{grid-column:1/-1}.card-stats-grid .stat-item{flex-direction:column;gap:.25rem;display:flex}.card-stats-grid .stat-item-label{color:color-mix(in srgb,var(--primary),transparent 40%);text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:.5rem;font-size:10px;font-weight:900;display:flex}.card-stats-grid .stat-item-value{letter-spacing:-.025em;font-size:1.5rem;font-style:italic;font-weight:900}.city-select{z-index:30;-webkit-backdrop-filter:blur(10px);background:#7e09091a;border:1px solid #fff3;border-radius:1rem;width:100%;max-width:28rem;padding:.25rem;position:relative;box-shadow:0 25px 50px -12px #00000040}.dark .city-select{background:#0003;border-color:#ffffff1a}.city-select-glow{background:linear-gradient(to right,color-mix(in srgb,var(--primary),transparent 70%),color-mix(in srgb,var(--highlight),transparent 70%));border-radius:var(--radius);filter:blur(24px);opacity:0;pointer-events:none;transition:opacity .5s;position:absolute;inset:-.25rem}.city-select:focus-within .city-select-glow{opacity:1}.city-select-input-container{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:var(--radius);background:#ffffffe6;border:1px solid #fff3;align-items:center;width:100%;height:4rem;transition:all .3s;display:flex;position:relative;box-shadow:0 25px 50px -12px #00000040}.dark .city-select-input-container{background:#0006;border-color:#ffffff1a}.city-select:focus-within .city-select-input-container{border-color:color-mix(in srgb,var(--primary),transparent 50%);background:#fff}.dark .city-select:focus-within .city-select-input-container{background:#0009}.city-select-icon{color:color-mix(in srgb,var(--foreground),transparent 60%);z-index:10;pointer-events:none;transition:color .3s;position:absolute;top:50%;left:1.25rem;transform:translateY(-50%)}.city-select-icon.is-open{color:var(--primary)}.city-select-input{width:100%;height:100%;color:var(--foreground);background:0 0;border:0;outline:none;padding-left:3.5rem;padding-right:3.5rem;font-size:1.125rem;font-weight:700}.city-select-input::placeholder{color:color-mix(in srgb,var(--foreground),transparent 60%)}.city-select-clear{color:color-mix(in srgb,var(--foreground),transparent 60%);cursor:pointer;z-index:10;border-radius:9999px;justify-content:center;align-items:center;padding:.25rem;display:flex;position:absolute;top:50%;right:3rem;transform:translateY(-50%)}.city-select-clear:hover{background:color-mix(in srgb,var(--foreground),transparent 95%)}.city-select-search-btn{background:color-mix(in srgb,var(--primary),transparent 80%);border-radius:var(--radius);color:var(--primary);z-index:10;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.city-select:focus-within .city-select-search-btn{background:var(--primary);color:var(--primary-foreground)}.city-select-dropdown{z-index:50;border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);background:#fff;margin-top:.5rem;padding:.5rem;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.dark .city-select-dropdown{background:#18181b;border-color:#ffffff1a}.city-select-results{flex-direction:column;gap:.25rem;max-height:300px;display:flex;overflow-y:auto}.city-select-item{border-radius:var(--radius);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:1rem;transition:all .2s;display:flex}.city-select-item:hover{background:color-mix(in srgb,var(--primary),transparent 95%)}.city-select-item-info{flex-direction:column;display:flex}.city-select-item-name{color:var(--foreground);letter-spacing:-.025em;font-size:1.25rem;font-weight:900;line-height:1.2}.city-select-item-country{color:color-mix(in srgb,var(--foreground),transparent 50%);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-size:10px;font-weight:900}.city-select-item-icon{opacity:0;color:var(--primary);transition:all .2s;transform:translate(.5rem)}.city-select-item:hover .city-select-item-icon{opacity:1;transform:translate(0)}.city-select-empty{text-align:center;color:color-mix(in srgb,var(--foreground),transparent 60%);padding:3rem 1rem;font-style:italic;font-weight:700}.local-hero-vibe{flex-direction:column;align-items:center;gap:2.5rem;width:100%;display:flex}.local-hero-vibe-toggles{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0006;border:1px solid #ffffff0d;border-radius:9999px;gap:1rem;padding:.375rem;display:flex;box-shadow:inset 0 2px 4px #0000000d}.local-hero-vibe-toggle-btn{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;color:#fff6;background:0 0;border-radius:9999px;align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:10px;font-weight:900;transition:color .3s,background-color .3s;display:flex}.local-hero-vibe-toggle-btn:hover{background-color:#ffffff0d}.local-hero-vibe-toggle-btn--active{background-color:var(--primary);color:#fff;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%),0 4px 6px -4px color-mix(in srgb,var(--primary),transparent 80%)}.local-hero-vibe-toggle-btn--active:hover{background-color:var(--primary)}.local-hero-vibe-equalizer{align-items:flex-end;gap:.375rem;height:6rem;display:flex}.local-hero-vibe-equalizer-bar{width:.5rem}@media (min-width:768px){.local-hero-vibe-equalizer-bar{width:.75rem}}.local-hero-vibe-equalizer-bar{background-image:linear-gradient(to top,var(--text-highlight),var(--accent));border-radius:9999px;box-shadow:0 0 15px #2e106580}.local-hero-vibe-info{text-align:center}.local-hero-vibe-info-label{text-transform:uppercase;letter-spacing:.3em;opacity:.4;margin-bottom:.25rem;font-size:10px;font-weight:900}.local-hero-vibe-info-title{font-size:1.25rem}@media (min-width:768px){.local-hero-vibe-info-title{font-size:1.5rem}}.local-hero-vibe-info-title{text-transform:uppercase;letter-spacing:-.05em;background:linear-gradient(to right,var(--highlight),var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:900}.stars{color:var(--primary);gap:.25rem;margin-bottom:2rem;display:flex}.header-overlay-modal{margin-bottom:2rem;position:relative}.header-overlay-modal .search-input-wrapper{width:100%;position:relative}.header-overlay-modal .search-icon{color:color-mix(in srgb,var(--foreground),transparent 80%);z-index:10;pointer-events:none;align-items:center;gap:.75rem;display:flex;position:absolute;top:50%;left:1.5rem;transform:translateY(-50%)}.header-overlay-modal input{width:100%;color:var(--foreground);padding:1rem 1.5rem 1rem 3.5rem;font-size:1.125rem;transition:all .3s}.header-overlay-modal input::placeholder{color:color-mix(in srgb,var(--foreground),transparent 90%)}.header-overlay-modal input:focus{border-color:var(--primary);background:var(--background);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary),transparent 92%);outline:none}.circle-gradient{text-transform:uppercase;color:#fff;background-image:linear-gradient(to bottom right,var(--highlight),var(--highlight),var(--accent));width:3.5rem;height:3.5rem;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%),0 4px 6px -4px color-mix(in srgb,var(--primary),transparent 80%);border-radius:5rem;justify-content:center;align-items:center;font-size:1.25rem;font-style:italic;font-weight:900;display:flex}.link-btn{background:var(--link-btn-bg);color:var(--link-btn-color);border:var(--link-btn-border-width)solid var(--link-btn-border-color);border-radius:var(--link-btn-radius);padding:var(--link-btn-padding-y)var(--link-btn-padding-x);font-size:var(--link-btn-font-size);font-weight:var(--link-btn-font-weight);text-transform:uppercase;letter-spacing:var(--link-btn-letter-spacing);cursor:pointer;outline:none;justify-content:center;align-items:center;gap:.5rem;transition:all .3s;display:inline-flex}.link-btn:hover{background:var(--link-btn-bg-hover);color:var(--link-btn-color-hover);border-color:var(--link-btn-border-color-hover);transform:var(--link-btn-hover-transform);box-shadow:var(--link-btn-hover-shadow)}.link-btn:active{transform:scale(.97)}.link-btn.is-selected{background:var(--link-btn-bg-hover);color:var(--link-btn-color-hover);border-color:var(--link-btn-border-color-hover);box-shadow:var(--link-btn-hover-shadow)}.link-btn--standard{--link-btn-bg:color-mix(in srgb,var(--primary),transparent 90%);--link-btn-color:var(--primary);--link-btn-border-width:1px;--link-btn-border-color:color-mix(in srgb,var(--primary),transparent 80%);--link-btn-radius:9999px;--link-btn-padding-y:.375rem;--link-btn-padding-x:1rem;--link-btn-font-size:.75rem;--link-btn-font-weight:700;--link-btn-letter-spacing:.05em;--link-btn-bg-hover:var(--primary);--link-btn-color-hover:var(--primary-foreground);--link-btn-border-color-hover:var(--primary);--link-btn-hover-transform:scale(1.05);--link-btn-hover-shadow:0 4px 12px color-mix(in srgb,var(--primary),transparent 70%)}.link-btn--large{--link-btn-bg:color-mix(in srgb,var(--primary),transparent 90%);--link-btn-color:var(--primary);--link-btn-border-width:1px;--link-btn-border-color:color-mix(in srgb,var(--primary),transparent 80%);--link-btn-radius:9999px;--link-btn-padding-y:1rem;--link-btn-padding-x:1.5rem;--link-btn-font-size:1.5rem;--link-btn-font-weight:900;--link-btn-letter-spacing:-.025em;--link-btn-bg-hover:var(--primary);--link-btn-color-hover:var(--primary-foreground);--link-btn-border-color-hover:var(--primary);--link-btn-hover-transform:scale(1.05);--link-btn-hover-shadow:0 8px 24px color-mix(in srgb,var(--primary),transparent 60%)}.link-btn--inactive{--link-btn-bg:color-mix(in srgb,var(--foreground),transparent 95%);--link-btn-color:color-mix(in srgb,var(--foreground),transparent 60%);--link-btn-border-width:1px;--link-btn-border-color:color-mix(in srgb,var(--foreground),transparent 90%);--link-btn-radius:9999px;--link-btn-padding-y:.375rem;--link-btn-padding-x:1rem;--link-btn-font-size:.75rem;--link-btn-font-weight:700;--link-btn-letter-spacing:.05em;--link-btn-bg-hover:color-mix(in srgb,var(--foreground),transparent 90%);--link-btn-color-hover:color-mix(in srgb,var(--foreground),transparent 50%);--link-btn-border-color-hover:color-mix(in srgb,var(--foreground),transparent 85%);--link-btn-hover-transform:none;--link-btn-hover-shadow:none;cursor:default}.dark .link-btn--standard{--link-btn-bg:color-mix(in srgb,var(--primary),transparent 85%);--link-btn-color:var(--primary);--link-btn-border-color:color-mix(in srgb,var(--primary),transparent 70%);--link-btn-bg-hover:var(--primary);--link-btn-color-hover:var(--primary-foreground);--link-btn-border-color-hover:var(--primary);--link-btn-hover-shadow:0 4px 16px color-mix(in srgb,var(--primary),transparent 60%)}.dark .link-btn--large{--link-btn-bg:color-mix(in srgb,var(--primary),transparent 85%);--link-btn-color:var(--primary);--link-btn-border-color:color-mix(in srgb,var(--primary),transparent 70%);--link-btn-bg-hover:var(--primary);--link-btn-color-hover:var(--primary-foreground);--link-btn-border-color-hover:var(--primary);--link-btn-hover-shadow:0 8px 28px color-mix(in srgb,var(--primary),transparent 50%)}.dark .link-btn--inactive{--link-btn-bg:color-mix(in srgb,var(--foreground),transparent 92%);--link-btn-color:color-mix(in srgb,var(--foreground),transparent 60%);--link-btn-border-color:color-mix(in srgb,var(--foreground),transparent 88%);--link-btn-bg-hover:color-mix(in srgb,var(--foreground),transparent 88%);--link-btn-color-hover:color-mix(in srgb,var(--foreground),transparent 55%);--link-btn-border-color-hover:color-mix(in srgb,var(--foreground),transparent 85%)}.dark .link-btn--ticket{background:var(--primary);color:#fff;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%),0 4px 6px -2px color-mix(in srgb,var(--primary),transparent 95%);border-radius:9999px;padding:.5rem 1.5rem;font-size:.875rem}.dark .link-btn--ticket:hover{box-shadow:0 15px 25px -5px color-mix(in srgb,var(--primary),transparent 70%);background:var(--primary);color:#fff;transform:scale(1.05)}.map,.map-view{background:color-mix(in srgb,var(--foreground),transparent 97%);text-align:center;border:1px solid #ffffff0d;border-radius:1.5rem;flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;height:300px;padding:2rem;display:flex}.map-view{background:0 0;padding:0;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.map-error{height:150px}.map-loading{opacity:.8}.map-icon{background:color-mix(in srgb,var(--primary),transparent 90%);width:3rem;height:3rem;color:var(--primary);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:.5rem;display:flex}.map-text{flex-direction:column;gap:.25rem;display:flex}.map-text strong{color:color-mix(in srgb,var(--foreground),transparent 20%);font-size:.875rem;font-weight:500}.map-text small{color:var(--muted-foreground);font-size:.75rem}.map-button{border-color:color-mix(in srgb,var(--primary),transparent 80%);color:var(--primary);text-transform:uppercase;letter-spacing:.1em;border-radius:9999px;font-size:.75rem;font-weight:700}.map-button:hover{background:color-mix(in srgb,var(--primary),transparent 95%)}.map-iframe{filter:brightness(.9)contrast(1.1);width:100%;height:100%;transition:all .2s}.dark .map-iframe{filter:brightness(.8)contrast(1.1)}.map-overlay{background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-transform:uppercase;letter-spacing:.1em;color:var(--muted-foreground);pointer-events:none;border:1px solid #ffffff0d;border-radius:.375rem;padding:.25rem .5rem;font-size:8px;font-weight:700;position:absolute;bottom:.5rem;right:.5rem}.map-revoke-btn{color:color-mix(in srgb,var(--primary),transparent 60%);text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:.5rem;margin-top:.75rem;padding:0 .5rem;font-size:9px;font-weight:900;transition:color .2s;display:flex}.map-revoke-btn:hover{color:var(--primary)}.featured-cities{width:100%}.featured-cities-group{margin-bottom:4rem}.featured-cities-group:last-child{margin-bottom:0}.featured-cities-header{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.featured-cities-header h3{text-transform:uppercase;letter-spacing:-.05em;color:var(--foreground);font-size:1.5rem;font-style:italic;font-weight:900}@media (min-width:768px){.featured-cities-header h3{font-size:2.25rem}}.featured-cities-divider{background:color-mix(in srgb,var(--foreground),transparent 90%);flex-grow:1;height:1px}.featured-cities-count{color:var(--primary);text-transform:uppercase;letter-spacing:.3em;white-space:nowrap;font-size:10px;font-weight:900}.featured-cities-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (min-width:640px){.featured-cities-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:768px){.featured-cities-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:1024px){.featured-cities-grid{grid-template-columns:repeat(5,1fr)}}.featured-cities-skeleton{background:color-mix(in srgb,var(--foreground),transparent 95%);border-radius:var(--radius);animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.featured-cities-skeleton.is-title{width:12rem;height:2rem;margin-bottom:1.5rem}.featured-cities-skeleton.is-button{border-radius:var(--radius);height:3.5rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.concert-list-page{background:var(--background);min-height:100vh;color:var(--foreground);padding-bottom:6rem}.concert-list-container{flex-direction:row;display:flex}.concert-list-main{flex:1;width:100%;margin-top:25px;padding:2rem 5px}@media (min-width:768px){.concert-list-main{padding-left:1rem;padding-right:1rem}}@media (min-width:1024px){.concert-list-main{width:calc(100% - 400px)}}.concert-list-header{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.concert-list-header-icon{background:var(--primary);border-radius:var(--radius);color:#fff;justify-content:center;align-items:center;padding:.5rem;display:flex}.concert-list-title{text-transform:uppercase;letter-spacing:-.05em;font-size:1.5rem;font-style:italic;font-weight:900;line-height:1}@media (min-width:768px){.concert-list-title{font-size:2.25rem}}.concert-list-date-header{background:color-mix(in srgb,var(--background),transparent 5%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;gap:.75rem;margin-left:-5px;margin-right:-5px;padding:1rem 5px;display:flex;position:relative}@media (min-width:768px){.concert-list-date-header{margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}}.concert-list-date-icon{border-radius:var(--radius);background:color-mix(in srgb,var(--primary),transparent 90%);width:2rem;height:2rem;color:var(--primary);justify-content:center;align-items:center;display:flex}.concert-list-date-label{text-transform:uppercase;letter-spacing:.3em;color:color-mix(in srgb,var(--foreground),transparent 60%);font-size:.75rem;font-weight:900}.concert-list-date-line{background:color-mix(in srgb,var(--foreground),transparent 95%);flex:1;height:1px}.concert-list-load-more{justify-content:center;align-items:center;height:5rem;margin-top:2rem;display:flex}.concert-list-load-more-spinner{flex-direction:column;align-items:center;gap:.5rem;display:flex}.concert-list-load-more-spinner .spinner{border-bottom:2px solid var(--primary);border-radius:9999px;width:2rem;height:2rem;animation:1s linear infinite spin}.concert-list-load-more-spinner p{text-transform:uppercase;letter-spacing:.1em;color:color-mix(in srgb,var(--primary),transparent 40%);font-size:.75rem;font-weight:700}.concert-list-load-more-end{color:#64748b66;text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;font-style:italic;font-weight:700}.concert-list-empty{text-align:center;background:var(--card);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);border-style:dashed;border-color:color-mix(in srgb,var(--foreground),transparent 90%);padding-top:6rem;padding-bottom:6rem}.concert-list-empty-icon-wrap{background:color-mix(in srgb,var(--foreground),transparent 95%);border-radius:9999px;justify-content:center;align-items:center;width:5rem;height:5rem;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;display:flex}.concert-list-empty-icon-wrap svg{color:var(--muted-foreground)}.concert-list-empty-title{color:var(--muted-foreground);text-transform:uppercase;font-size:1.5rem;font-weight:700}.concert-list-empty-desc{color:color-mix(in srgb,var(--muted-foreground),transparent 40%);margin-top:.5rem}.concert-list-empty-btn{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;margin-top:2rem;font-weight:700}.concert-list-sidebar{width:400px;height:calc(100vh - 140px);padding-right:5px;display:none;position:sticky;top:125px}@media (min-width:1024px){.concert-list-sidebar{display:block}}@media (min-width:768px){.concert-list-sidebar{padding-right:1rem}}.concert-list-footer{text-align:center;border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);margin-top:5rem;padding-top:5rem;padding-bottom:5rem}.concert-list-footer-divider{opacity:.2;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.concert-list-footer-divider .line{background:var(--foreground);width:3rem;height:1px}.concert-list-footer-text{text-transform:uppercase;letter-spacing:.4em;color:var(--muted-foreground);font-size:10px;font-weight:700}.concert-list-footer-text span{color:var(--foreground);letter-spacing:normal;font-style:italic}.concert-list-city-picker{z-index:200;background:color-mix(in srgb,var(--background),transparent 5%);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);flex-direction:column;padding-top:6rem;display:flex;position:fixed;inset:0}.concert-list-city-picker-inner{flex-direction:column;width:100%;height:100%;padding-left:5px;padding-right:5px;display:flex;overflow:hidden}@media (min-width:768px){.concert-list-city-picker-inner{padding-left:1rem;padding-right:1rem}}.concert-list-city-picker-header{justify-content:space-between;align-items:center;margin-bottom:3rem;display:flex}.concert-list-city-picker-title{text-transform:uppercase;letter-spacing:-.05em;margin-bottom:.5rem;font-size:2.25rem;font-style:italic;font-weight:900}@media (min-width:768px){.concert-list-city-picker-title{font-size:3.75rem}}.concert-list-city-picker-title span{color:var(--primary)}.concert-list-city-picker-subtitle{color:color-mix(in srgb,var(--foreground),transparent 50%);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;display:flex}.concert-list-city-picker-subtitle svg{color:var(--primary)}.concert-list-city-picker-close{background:color-mix(in srgb,var(--foreground),transparent 95%);color:color-mix(in srgb,var(--foreground),transparent 60%);border-radius:var(--radius);justify-content:center;align-items:center;width:3rem;height:3rem;padding:1rem;transition:all .3s;display:flex}.concert-list-city-picker-close:hover{background:color-mix(in srgb,var(--primary),transparent 80%);color:var(--primary)}.concert-list-city-picker-close:hover svg{transform:rotate(90deg)}.concert-list-city-picker-close svg{transition:transform .3s}.concert-list-city-picker-content{flex:1;padding-bottom:5rem;overflow-y:auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s forwards fade-in}.slider-section{padding-top:4rem;padding-bottom:4rem;position:relative}.slider-viewport-wrap{margin-left:-5px;margin-right:-5px;padding-left:5px;padding-right:5px;position:relative;overflow:visible}@media (min-width:768px){.slider-viewport-wrap{margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}}.slider-viewport-wrap:hover .slider-nav-btn{opacity:1}.slider-viewport{cursor:grab;min-height:220px;overflow:hidden}.slider-viewport:active{cursor:grabbing}.slider-container{align-items:stretch;gap:1rem;padding-bottom:2rem;display:flex}.slider-nav-btn{z-index:30;pointer-events:none;opacity:0;transition:opacity .3s;display:none;position:absolute;top:50%;transform:translateY(-50%)}@media (min-width:768px){.slider-nav-btn{display:block}}.slider-nav-btn--left{left:-.5rem}.slider-nav-btn--right{right:-.5rem}.slider-nav-btn-inner{background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);pointer-events:auto;width:3rem;height:3rem;color:var(--foreground);border-radius:9999px;justify-content:center;align-items:center;transition:all .2s;display:flex;box-shadow:0 20px 25px -5px #0000001a}.slider-nav-btn-inner:hover{background:var(--primary);color:#fff}.slider-edge-fade{pointer-events:none;z-index:20;opacity:.4;width:3rem;display:none;position:absolute;top:0;bottom:3rem}@media (min-width:768px){.slider-edge-fade{display:block}}.slider-edge-fade--left{background:linear-gradient(to right,var(--background),transparent);left:0}.slider-edge-fade--right{background:linear-gradient(to left,var(--background),transparent);right:0}.slider-card{text-align:left;background:var(--card);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%);border-radius:1.5rem;flex-direction:column;flex-shrink:0;width:200px;height:100%;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 10px 30px -5px #0000001a}.slider-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -10px #00000026}.slider-card-image-wrap{aspect-ratio:4/3;background:color-mix(in srgb,var(--foreground),transparent 95%);width:100%;position:relative;overflow:hidden}.slider-card-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.slider-card:hover .slider-card-image{transform:scale(1.05)}.slider-card-date-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#000;background:#ffffffd9;border-radius:1rem;padding:.5rem 1rem;font-size:14px;font-weight:800;position:absolute;top:.75rem;right:.75rem;box-shadow:0 4px 12px #0000001a}.dark .slider-card-date-overlay{color:#fff;background:#0009}.slider-card-content{flex-direction:column;gap:.25rem;padding:1.25rem;display:flex}.slider-card-title{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.25rem;font-weight:800;line-height:1.2;transition:opacity .2s;display:block;overflow:hidden}.slider-card-title:hover{opacity:.8}.slider-card-genres{color:color-mix(in srgb,var(--foreground),transparent 40%);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:13px;font-style:italic;font-weight:500;overflow:hidden}.slider-card-venue{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;margin-top:.25rem;font-size:1.125rem;font-weight:500;transition:opacity .2s;display:block;overflow:hidden}.slider-card-venue:hover{opacity:.8}.slider-card-performers{color:color-mix(in srgb,var(--foreground),transparent 30%);white-space:nowrap;text-overflow:ellipsis;margin-top:.25rem;font-size:14px;font-weight:600;overflow:hidden}.slider-card-performer-link{color:var(--primary);text-decoration:none;transition:opacity .2s}.slider-card-performer-link:hover{opacity:.8;text-decoration:underline}.slider-empty{text-align:center;background:var(--card);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;margin-left:5px;margin-right:5px;padding-top:4rem;padding-bottom:4rem;display:flex}@media (min-width:768px){.slider-empty{margin-left:0;margin-right:0}}.slider-empty svg{color:color-mix(in srgb,var(--foreground),transparent 90%)}.slider-empty p{color:color-mix(in srgb,var(--foreground),transparent 60%);text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:700}.concert-card{border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);background:#fff;scroll-margin-top:8rem;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.dark .concert-card{background:var(--card);border-color:#ffffff14;box-shadow:0 4px 6px -1px #0003}.concert-card:hover{border-color:color-mix(in srgb,var(--primary),transparent 50%);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.dark .concert-card:hover{border-color:color-mix(in srgb,var(--primary),transparent 60%);box-shadow:0 10px 15px -3px #0006}.concert-card.card-selected{background:color-mix(in srgb,var(--foreground),transparent 97%);box-shadow:0 8px 12px -3px #0000001a;border:2px solid color-mix(in srgb,var(--primary),transparent 40%)!important}.dark .concert-card.card-selected{background:#ffffff0d;border-color:color-mix(in srgb,var(--highlight),transparent 40%)!important}.concert-card.card-overflow-hidden{overflow:hidden}.concert-card-inner{cursor:pointer;padding:0;display:block;position:relative}.concert-card-inner.no-tickets-visible{overflow:hidden}.concert-card-thumb{float:left;background:var(--muted);border-radius:var(--radius);width:90px;height:90px;margin-right:1rem;position:relative;overflow:hidden}@media (min-width:768px){.concert-card-thumb{width:160px;height:160px;margin-right:1.5rem}}.concert-card-image{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1)}.concert-card:hover .concert-card-image{transform:scale(1.1)}.concert-card-overlay{background:#0003;justify-content:center;align-items:center;transition:background .3s;display:flex;position:absolute;inset:0}@media (pointer:fine){.concert-card-overlay:hover{background:#0006}}.concert-card-play-circle{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;border:2px solid #ffffff1a;border-radius:9999px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}@media (min-width:768px){.concert-card-play-circle{border-width:4px;width:3rem;height:3rem}}.concert-card-play-circle.platform-youtube{background:red;box-shadow:0 0 20px #f006}.concert-card-play-circle.platform-spotify{background:#1db954;box-shadow:0 0 20px #1db95466}.concert-card-play-circle.no-consent{background:#fff3}.concert-card-content{min-height:90px;padding:.5rem 3rem .5rem 1rem}@media (min-width:768px){.concert-card-content{min-height:160px;padding:.75rem 6rem .75rem 1.5rem}}.concert-card-title-wrap{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.concert-card-title{text-transform:uppercase;letter-spacing:-.025em;white-space:nowrap;text-overflow:ellipsis;padding-right:5px;font-size:1.125rem;font-style:italic;font-weight:900;line-height:1.25;transition:color .3s;overflow:hidden}@media (min-width:768px){.concert-card-title{font-size:1.5rem}}.concert-card:hover .concert-card-title{color:var(--primary)}.concert-card-genres{text-transform:uppercase;letter-spacing:.2em;color:var(--highlight);margin-bottom:.75rem;font-size:10px;font-weight:700}.concert-card-performers-list{flex-direction:column;gap:.375rem;margin-bottom:.75rem;display:flex}.concert-card-performer-row{flex-wrap:wrap;align-items:center;gap:1rem .25rem;display:flex}.concert-card-performer-item{align-items:center;gap:.5rem;display:flex}.concert-card-performer-name{letter-spacing:-.025em;cursor:pointer;font-size:13px;font-weight:700;transition:color .2s}.concert-card-performer-name.is-inactive{color:color-mix(in srgb,var(--foreground),transparent 70%);cursor:default}.concert-card-performer-name.is-active{color:#22c55e}.concert-card-performer-name.concert-card-performer-name--support{font-size:.6875rem}.concert-card-performer-name.concert-card-performer-name--support:not(.is-inactive):not(.is-active){color:var(--foreground)}.concert-card-meta-group{color:var(--foreground);flex-wrap:wrap;align-items:center;gap:1rem;font-size:.875rem;display:flex}.concert-card-venue{align-items:center;gap:.5rem;font-weight:700;display:flex}.concert-card-time{white-space:nowrap;align-items:center;gap:.5rem;display:flex}.concert-card-time .time-access{opacity:.6;margin-left:.25rem}.concert-card-time svg{color:var(--text-highlight);flex-shrink:0}.concert-card-icon-btn{background:var(--primary);color:#fff;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;transition:transform .3s;display:flex}.concert-card-icon-btn:hover{transform:scale(1.1)}.concert-card-icon-btn.is-active{background:#22c55e}.concert-card-icon-btn.is-small{width:1.25rem;height:1.25rem}.concert-card-actions{z-index:30;align-items:center;gap:.25rem;transition:opacity .3s;display:flex;position:absolute;bottom:.5rem;right:.5rem}.concert-card-actions.is-hidden{opacity:0;pointer-events:none}.concert-card-action-btn{color:color-mix(in srgb,var(--foreground),transparent 80%);border-radius:9999px;padding:.5rem;transition:all .3s}.concert-card-action-btn:hover{color:var(--primary);background:color-mix(in srgb,var(--primary),transparent 95%);transform:scale(1.1)}.concert-card-action-btn.is-fav{color:var(--primary);transform:scale(1.1)}.concert-card-action-btn.is-fav svg{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--primary),transparent 60%))}.concert-card-expandable{border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);background:color-mix(in srgb,var(--foreground),transparent 98%)}.concert-card-expandable-inner{padding:.75rem}@media (min-width:768px){.concert-card-expandable-inner{padding:1rem}}.concert-card-ticket-wrap{z-index:30;position:absolute;top:.75rem;right:.75rem}.concert-card-ticket-menu{z-index:50;background:var(--card);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:16rem;margin-top:.5rem;padding:.5rem;position:absolute;top:100%;right:0;box-shadow:0 20px 50px #00000040}.dark .concert-card-ticket-menu{background:color-mix(in srgb,var(--background),white 5%)}.concert-card-ticket-header{color:color-mix(in srgb,var(--foreground),transparent 70%);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);align-items:center;gap:.5rem;margin-bottom:.25rem;padding:.5rem;font-size:10px;font-weight:700;display:flex}.concert-card-ticket-list{flex-direction:column;gap:.25rem;display:flex}.concert-card-ticket-empty{text-transform:uppercase;color:color-mix(in srgb,var(--foreground),transparent 60%);text-align:center;padding:.5rem .75rem;font-size:10px;font-style:italic;font-weight:700}.concert-card-player-grid{grid-template-columns:1fr;gap:.75rem;display:grid}@media (min-width:768px){.concert-card-player-grid.has-songs{grid-template-columns:repeat(2,1fr)}}.concert-card-player-grid.solo-player{max-width:42rem;margin-left:auto;margin-right:auto}.concert-card-player-wrap{border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);background:#000;width:100%;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.concert-card-player-wrap.aspect-video{aspect-ratio:16/9}.concert-card-player-wrap.is-spotify{height:352px}.concert-card-songs-container{background:color-mix(in srgb,var(--foreground),transparent 97%);border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%);height:fit-content;max-height:170px;padding:.75rem;overflow-y:auto}@media (min-width:768px){.concert-card-songs-container{max-height:none}}.concert-card-songs-header{width:100%;color:color-mix(in srgb,var(--foreground),transparent 70%);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:10px;font-weight:700;display:flex}.concert-card-songs-header.is-collapsible{cursor:pointer;transition:color .2s}.concert-card-songs-header.is-collapsible:hover{color:var(--primary)}.concert-card-songs-header .header-label{align-items:center;gap:.5rem;display:flex}.concert-card-songs-list{flex-direction:column;gap:.25rem;display:flex;overflow:hidden}.concert-card-song-item{text-align:left;border-radius:.5rem;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem;font-size:13px;font-weight:500;transition:all .2s;display:flex}.concert-card-song-item.is-active{background:var(--primary);color:#fff;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%)}.concert-card-song-item:not(.is-active){color:color-mix(in srgb,var(--foreground),transparent 30%)}.concert-card-song-item:not(.is-active):hover{background:color-mix(in srgb,var(--foreground),transparent 95%);color:var(--foreground)}.concert-card-song-icon-wrap{border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:flex}.concert-card-song-item.is-active .concert-card-song-icon-wrap{background:#fff3}.concert-card-song-item:not(.is-active) .concert-card-song-icon-wrap{background:color-mix(in srgb,var(--foreground),transparent 95%)}.concert-card-song-item:not(.is-active):hover .concert-card-song-icon-wrap{background:color-mix(in srgb,var(--foreground),transparent 90%)}.concert-card-expand-btn{text-transform:uppercase;letter-spacing:.2em;color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.625rem;font-weight:700;transition:color .2s}.concert-card-expand-btn:hover{color:color-mix(in srgb,var(--primary),transparent 20%)}.concert-card-support-label{text-transform:uppercase;letter-spacing:.2em;opacity:.7;margin-right:.25rem;font-size:.625rem;font-weight:700}.concert-card-admin-icons{align-items:center;gap:.25rem;margin-left:.25rem;display:flex}.concert-card-admin-icon{color:#ef4444;transition:opacity .2s}.concert-card-admin-icon:hover{opacity:.8}.concert-card-performer-name--support{font-size:.6875rem}.concert-card-ticket-btn-content{align-items:center;gap:.5rem;display:flex}.concert-card.has-ticket-menu-open{z-index:100}.advertising-card{border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);background:#fff;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.dark .advertising-card{background:var(--card);border-color:#ffffff14;box-shadow:0 4px 6px -1px #0003}.advertising-card--claim{background:#ebf3fe;border-color:#3b82f6}.dark .advertising-card--claim{background:color-mix(in srgb,#3b82f6 20%,var(--card))}.advertising-card--helper{background:#fcf4da;border-color:#eab308}.dark .advertising-card--helper{background:color-mix(in srgb,#eab308 25%,var(--card))}.advertising-card--internal_add,.advertising-card--external_add{background:#feeee3;border-color:#f97316}.dark .advertising-card--internal_add,.dark .advertising-card--external_add{background:color-mix(in srgb,#f97316 22%,var(--card))}.advertising-card--user_rating{background:#e1f6fa;border-color:#06b6d4}.dark .advertising-card--user_rating{background:color-mix(in srgb,#06b6d4 22%,var(--card))}.advertising-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.dark .advertising-card:hover{box-shadow:0 10px 15px -3px #0000004d}.advertising-card-inner{min-height:90px;padding:1.5rem}@media (max-width:768px){.advertising-card-inner{padding:1rem}}.advertising-card-content{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:100%;display:flex}.advertising-card-header{align-items:center;gap:.75rem;display:flex}.advertising-card-icon{background:color-mix(in srgb,var(--highlight),transparent 85%);width:2.5rem;height:2.5rem;color:var(--highlight);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dark .advertising-card-icon{background:color-mix(in srgb,var(--highlight),transparent 70%)}@media (max-width:768px){.advertising-card-icon{width:2rem;height:2rem}.advertising-card-icon svg{width:16px;height:16px}}.advertising-card-title{text-transform:uppercase;letter-spacing:.05em;color:var(--foreground);flex:1;margin:0;font-size:1.125rem;font-style:italic;font-weight:600}.dark .advertising-card-title{color:#fff}@media (max-width:768px){.advertising-card-title{font-size:1rem}}.advertising-card-description{color:color-mix(in srgb,var(--foreground),transparent 20%);margin:0;padding-left:3.25rem;font-size:.9375rem;line-height:1.6}.dark .advertising-card-description{color:#fffc}@media (max-width:768px){.advertising-card-description{padding-left:2.75rem;font-size:.875rem}.advertising-card{border-radius:calc(var(--radius)*.75)}}.event-sidebar{background:color-mix(in srgb,var(--card),transparent 50%);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%);border-radius:var(--radius);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.event-sidebar-header{background:color-mix(in srgb,var(--foreground),transparent 97%);border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);z-index:20;justify-content:space-between;align-items:center;width:100%;padding:1.5rem;display:flex;position:relative}.event-sidebar-header-title{text-overflow:ellipsis;white-space:nowrap;margin:0;padding-right:1rem;overflow:hidden}.event-sidebar-content{z-index:10;flex:1;padding:2rem;position:relative;overflow-y:auto}.event-sidebar-title-wrap{margin-bottom:1.5rem}.event-sidebar-date-info{color:var(--primary);align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.event-sidebar-date-info span{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:900}.event-sidebar-title{text-transform:uppercase;letter-spacing:-.05em;margin-bottom:1.5rem;font-size:2.25rem;font-style:italic;font-weight:900;line-height:.9;transition:color .3s}.event-sidebar:hover .event-sidebar-title{color:var(--primary)}@media (min-width:768px){.event-sidebar-title{font-size:2.5rem}}.event-sidebar-venue-link{text-transform:uppercase;letter-spacing:-.025em;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:1.125rem;font-style:italic;font-weight:900;transition:opacity .2s;display:flex}.event-sidebar-venue-link:hover{opacity:.8}.event-sidebar-address{color:color-mix(in srgb,var(--foreground),transparent 60%);margin-bottom:.75rem;font-size:.875rem;font-weight:500;line-height:1.5}.event-sidebar-map-toggle{color:var(--primary);text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:.5rem;font-size:10px;font-weight:900;transition:all .2s;display:flex}.event-sidebar-map-toggle:hover{opacity:.7}.event-sidebar-map-toggle svg{transition:transform .2s}.event-sidebar-map-toggle:hover svg{transform:scale(1.1)}.event-sidebar-info-row{gap:.75rem;margin-bottom:1rem;display:flex}.event-sidebar-info-row-icon{color:var(--primary);flex-shrink:0;margin-top:.125rem}.event-sidebar-info-row-content{text-transform:uppercase;flex-direction:column;gap:.25rem;font-size:.875rem;font-style:italic;font-weight:900;line-height:1.25;display:flex}.event-sidebar-info-row-content a{transition:opacity .2s}.event-sidebar-info-row-content a:hover{opacity:.8}.event-sidebar-info-row-content .support{opacity:.6;font-weight:700}.event-sidebar-external-link{text-transform:uppercase;letter-spacing:.1em;color:color-mix(in srgb,var(--foreground),transparent 60%);align-items:center;gap:.5rem;font-size:10px;font-weight:700;transition:opacity .2s;display:flex}.event-sidebar-external-link:hover{opacity:1;color:var(--primary)}.event-sidebar-external-link svg{transition:transform .2s}.event-sidebar-external-link:hover svg{transform:translate(2px,-2px)}.event-sidebar-report{text-transform:uppercase;letter-spacing:.2em;color:#ef4444;align-items:center;gap:.375rem;font-size:10px;font-weight:900;transition:color .2s;display:flex}.event-sidebar-report:hover{color:#dc2626}.event-sidebar-divider{background:color-mix(in srgb,var(--foreground),transparent 95%);width:100%;height:1px;margin:1.5rem 0}.event-sidebar-glow{filter:blur(100px);pointer-events:none;z-index:1;border-radius:9999px;width:16rem;height:16rem;position:absolute}.event-sidebar-glow--bottom{background:color-mix(in srgb,var(--primary),transparent 95%);bottom:-5rem;right:-5rem}.event-sidebar-glow--top{background:color-mix(in srgb,var(--accent),transparent 95%);top:-5rem;left:-5rem}.btn{text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;border-radius:9999px;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{background-color:var(--highlight);box-shadow:0 20px 25px -5px #0000001a}.btn-secondary{background-color:color-mix(in srgb,var(--foreground),transparent 95%);color:color-mix(in srgb,var(--foreground),transparent 40%);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%)}.btn-secondary:hover{background-color:color-mix(in srgb,var(--primary),transparent 80%);color:var(--primary);border-color:color-mix(in srgb,var(--primary),transparent 70%)}.btn-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:color-mix(in srgb,var(--foreground),transparent 20%);background:#ffffff0d}.btn-glass:hover{background-color:color-mix(in srgb,var(--primary),transparent 90%);border-color:color-mix(in srgb,var(--primary),transparent 70%);color:var(--primary)}.btn-outline{border:1px solid color-mix(in srgb,var(--foreground),transparent 80%);background-color:#0000}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.btn.-large{min-height:3.5rem;padding:1rem 2rem;font-size:1rem}.btn.-large svg{width:1.25rem;height:1.25rem}.btn.-block{width:100%;display:flex}.btn.-shadow{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.btn-icon-ghost{border-radius:var(--radius);cursor:pointer;color:color-mix(in srgb,var(--foreground),transparent 40%);background-color:#0000;border:none;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.btn-icon-ghost:hover{color:#fff;background:var(--highlight)}.btn-icon-ghost.is-active{background-color:color-mix(in srgb,var(--primary),transparent 80%);color:var(--primary)}.btn-icon-ghost.is-active:hover{background-color:color-mix(in srgb,var(--primary),transparent 70%)}.btn-icon-ghost.-small{padding:.25rem}.btn-pill{border-radius:var(--radius);text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb,var(--foreground),transparent 95%);color:color-mix(in srgb,var(--foreground),transparent 40%);border:1px solid #0000;padding:.5rem 1rem;font-size:.875rem;font-weight:700;transition:all .2s}.btn-pill:hover{background:color-mix(in srgb,var(--foreground),transparent 90%)}.btn-pill.is-selected{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%);transform:scale(1.05)}.btn-pill.-outline{border:1px solid color-mix(in srgb,var(--foreground),transparent 80%);background-color:#0000}.btn-pill.-outline:hover{border-color:var(--primary);color:var(--primary)}.footer{border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);background:var(--background);color:color-mix(in srgb,var(--foreground),transparent 60%);width:100%;padding:5rem 5px}@media (min-width:768px){.footer{padding-left:1rem;padding-right:1rem}}.footer-container-full{width:100%}.footer-grid{grid-template-columns:1fr;gap:3rem;margin-bottom:5rem;display:grid}@media (min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr)}.footer-brand-column{grid-column:span 2/span 2}}.footer-brand{font-size:2.25rem;font-family:var(--font-outfit),sans-serif;letter-spacing:5px;color:var(--foreground);margin-bottom:2rem;font-style:italic;font-weight:900}.footer-brand span{color:#0000;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(to bottom right,var(--foreground),var(--foreground),color-mix(in srgb,var(--foreground),transparent 60%))}.footer-desc{max-width:24rem;font-size:1.125rem}.footer-nav-title{color:var(--foreground);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.5rem;font-weight:700}.footer-nav-list{flex-direction:column;gap:1rem;padding:0;list-style:none;display:flex}.footer-nav-link{color:inherit;text-decoration:none;transition:color .2s}.footer-nav-link:hover{color:var(--primary)}.footer-bottom{border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);flex-direction:column;align-items:center;gap:1.5rem;padding-top:3rem;display:flex}@media (min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between}}.footer-copyright{letter-spacing:.1em;text-transform:uppercase;font-size:.875rem;font-weight:700}.footer-fixed{z-index:150;pointer-events:none;justify-content:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0}.footer-fixed-nav{pointer-events:auto;background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(40px);border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);justify-content:space-around;align-items:center;width:100%;height:46px;display:flex;position:relative;overflow:hidden;box-shadow:0 -10px 40px #0000001a}@media (min-width:768px){.footer-fixed-nav{border-left:1px solid color-mix(in srgb,var(--foreground),transparent 95%);border-top-left-radius:2.5rem;justify-content:flex-end;gap:3rem;width:auto;padding-left:3rem;padding-right:3rem}}.footer-fixed-accent{background:color-mix(in srgb,var(--primary),transparent 95%);opacity:.5;pointer-events:none;position:absolute;inset:0}.footer-fixed-link{z-index:10;min-width:80px;height:100%;color:var(--foreground);flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;transition:all .3s;display:flex;position:relative}.footer-fixed-link:hover,.footer-fixed-link--active{color:var(--primary)}.footer-fixed-separator{background:color-mix(in srgb,var(--foreground),transparent 90%);z-index:10;width:1px;height:1.25rem;position:relative}.footer-fixed-text{text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:900;line-height:1}.header{z-index:100;flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}.header-primary{background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);align-items:center;width:100%;height:72px;padding-left:5px;padding-right:5px;display:flex}@media (min-width:768px){.header-primary{padding-left:1rem;padding-right:1rem}}.header-progress{background:var(--text-highlight);transform-origin:0;height:2px;position:absolute;bottom:0;left:0;right:0}.header-logo-container{justify-content:center;align-items:center;display:flex;position:relative}.header-logo-text{font-family:var(--font-outfit),sans-serif;letter-spacing:-.05em;color:var(--foreground);align-items:center;gap:.125rem;font-size:1.5rem;font-style:italic;font-weight:900;display:flex}.header-secondary{background:color-mix(in srgb,var(--background),transparent 10%);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);width:100vw;height:50px}.header-secondary-content{justify-content:space-between;align-items:center;width:100%;max-width:90%;height:100%;margin-left:auto;margin-right:auto;padding-left:5px;padding-right:5px;display:flex;position:relative}@media (min-width:768px){.header-secondary-content{padding-left:10px;padding-right:10px}}@media (min-width:1024px){.header-secondary-content{padding-left:0;padding-right:0}}.header-secondary-fixed-date{z-index:70;position:absolute;top:100%;left:50%;transform:translate(-50%)}.header-date-badge{background:color-mix(in srgb,var(--background),transparent 5%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-top:0;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem;align-items:center;gap:.25rem;padding:.375rem .75rem;display:flex;box-shadow:0 10px 15px -3px #0000001a}.header-date-badge-button{color:var(--foreground);outline:none;align-items:center;gap:.5rem;transition:all .3s;display:flex}.header-date-badge-button:hover{color:var(--primary)}.header-date-badge-button span{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900}.header-date-badge-reset{color:color-mix(in srgb,var(--foreground),transparent 60%);border-radius:9999px;padding:.25rem;transition:all .2s}.header-date-badge-reset:hover{background:color-mix(in srgb,var(--primary),transparent 90%);color:var(--primary)}.header-overlay{z-index:10000;background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.header-overlay-modal{background:var(--background);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-radius:var(--radius);flex-direction:column;width:100%;max-width:42rem;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.header-overlay-modal--small{max-width:24rem}.header-overlay-header{border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);justify-content:space-between;align-items:center;padding:10px 1.5rem;display:flex}.header-overlay-header h2{text-transform:uppercase;letter-spacing:-.05em;font-size:1.5rem;font-style:italic;font-weight:900}.header-overlay-content{flex-direction:column;flex:1;gap:2rem;padding:1.5rem;display:flex;overflow-y:auto}.header-overlay-group{flex-direction:column;gap:1rem;display:flex}.header-overlay-title{text-transform:uppercase;letter-spacing:.1em;color:color-mix(in srgb,var(--foreground),transparent 60%);font-size:.875rem;font-weight:700}.header-overlay-calendar{flex-direction:column;gap:1rem;display:flex}.header-overlay-calendar-header{justify-content:space-between;align-items:center;padding:0 .5rem;display:flex}.header-overlay-calendar-header span{text-transform:uppercase;letter-spacing:-.025em;font-size:.875rem;font-style:italic;font-weight:900}.header-overlay-calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.header-overlay-calendar-weekday{color:color-mix(in srgb,var(--foreground),transparent 70%);text-transform:uppercase;padding:.5rem 0;font-size:10px;font-weight:700}.header-overlay-calendar-day{aspect-ratio:1;border-radius:.5rem;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;transition:all .2s;display:flex;position:relative}.header-overlay-calendar-day:hover:not(:disabled){background:color-mix(in srgb,var(--foreground),transparent 95%)}.header-overlay-calendar-day:disabled{opacity:.2;cursor:not-allowed}.header-overlay-calendar-day--selected{background:var(--primary);color:#fff;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%);z-index:10;transform:scale(1.1)}.header-overlay-calendar-today{background:var(--text-highlight);border-radius:9999px;width:.25rem;height:.25rem;position:absolute;bottom:.25rem}.header-overlay-calendar-day--selected .header-overlay-calendar-today{background:var(--primary-foreground)}.header-overlay-footer{background:color-mix(in srgb,var(--foreground),transparent 98%);border-top:1px solid color-mix(in srgb,var(--foreground),transparent 95%);flex-direction:column;gap:1rem;padding:10px 1.5rem;display:flex}.header-overlay-searchresults .header-overlay-group-title{text-transform:uppercase;letter-spacing:.2em;color:color-mix(in srgb,var(--foreground),transparent 80%);margin-bottom:.25rem;margin-left:.5rem;font-size:10px;font-weight:900}.header-overlay-searchresults .header-overlay-group-item{border-radius:var(--radius);background:color-mix(in srgb,var(--foreground),transparent 98%);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%);justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.header-overlay-searchresults .header-overlay-group-item:hover{background:color-mix(in srgb,var(--primary),transparent 95%);border-color:color-mix(in srgb,var(--primary),transparent 80%)}.header-overlay-searchresults .header-overlay-group-item:hover .search-item-icon{background:var(--primary);color:#fff}.header-overlay-searchresults .header-overlay-group-item:hover .search-item-name{color:var(--primary)}.header-overlay-searchresults .header-overlay-group-item:hover .search-item-arrow{color:var(--primary);transform:translate(4px)}.header-overlay-searchresults .header-overlay-group-item-info{align-items:center;gap:.75rem;display:flex}.header-overlay-searchresults .header-overlay-group-item-icon{background:color-mix(in srgb,var(--text-highlight),transparent 90%);width:2rem;height:2rem;color:var(--text-highlight);border-radius:9999px;justify-content:center;align-items:center;transition:all .2s;display:flex}.header-overlay-searchresults .header-overlay-group-item-name{text-transform:uppercase;letter-spacing:-.025em;color:var(--foreground);font-style:italic;font-weight:700;transition:color .2s}.header-overlay-searchresults .header-overlay-group-item-arrow{color:color-mix(in srgb,var(--foreground),transparent 80%);transition:all .2s}.header-overlay-empty{text-align:center;color:color-mix(in srgb,var(--foreground),transparent 70%);text-transform:uppercase;padding:2rem 0;font-size:.875rem;font-style:italic;font-weight:700}.header-nav-menu{background:color-mix(in srgb,var(--background),transparent 5%);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border-bottom:1px solid color-mix(in srgb,var(--foreground),transparent 95%);flex-direction:column;gap:1.5rem;padding:2rem;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 25px 50px -12px #00000080}.header-nav-menu a,.header-nav-menu button{text-align:left;text-transform:uppercase;color:var(--foreground);font-size:1.5rem;font-style:italic;font-weight:900;transition:color .2s}.header-nav-menu a:hover,.header-nav-menu button:hover{color:var(--primary)}.concert-card-detail-overlay{z-index:9000;background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}@media (min-width:1024px){.concert-card-detail-overlay{display:none}}.concert-card-detail-modal{background:var(--card);border-radius:var(--radius);width:100%;max-width:32rem;height:80vh;position:relative;box-shadow:0 25px 50px -12px #00000080}.player-wrap{border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);background:#000;width:100%;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.player-wrap.aspect-video{aspect-ratio:16/9}.player-wrap.is-spotify{height:352px}.player-placeholder{aspect-ratio:16/9;border-radius:var(--radius);background:color-mix(in srgb,var(--foreground),transparent 95%);border:1px solid color-mix(in srgb,var(--foreground),transparent 90%);width:100%;position:relative;overflow:hidden}.player-placeholder:hover .player-placeholder-bg img{transform:scale(1.05)}@media (min-width:768px){.player-placeholder{border-radius:var(--radius)}}.player-placeholder.is-spotify{height:100%;aspect-ratio:unset;border:none;border-radius:0}.player-placeholder-bg{z-index:0;position:absolute;inset:0}.player-placeholder-bg img{object-fit:cover;opacity:.3;width:100%;height:100%;transition:transform .7s}.player-placeholder-bg .player-placeholder-overlay{background-color:color-mix(in srgb,var(--background),transparent 50%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:absolute;inset:0}.player-placeholder-content{z-index:10;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:1.5rem;display:flex;position:relative}.player-placeholder-icon{background:color-mix(in srgb,var(--background),transparent 60%);color:var(--text-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:9999px;margin-bottom:1rem;padding:1rem;box-shadow:0 0 0 1px #ffffffe6}.player-placeholder h4{color:var(--foreground);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.player-placeholder p{color:var(--muted-foreground);max-width:24rem;margin:0 auto 1.5rem;font-size:.875rem}.player-skeleton{aspect-ratio:16/9;border-radius:var(--radius);background:var(--muted);width:100%;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.song-list{background:color-mix(in srgb,var(--foreground),transparent 97%);border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--foreground),transparent 95%);max-height:300px;padding:.75rem;overflow-y:auto}.song-list-header{color:color-mix(in srgb,var(--foreground),transparent 70%);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:10px;font-weight:700;display:flex}.song-list-items{flex-direction:column;gap:.25rem;display:flex}.song-list-item{text-align:left;border-radius:var(--radius);align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;transition:all .2s;display:flex}.song-list-item:hover{background:color-mix(in srgb,var(--foreground),transparent 95%);color:var(--foreground)}.song-list-item.is-active{background:var(--primary);color:var(--primary-foreground);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.song-list-item .play-icon-wrap{background:color-mix(in srgb,var(--foreground),transparent 95%);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;transition:background .2s;display:flex}.is-active .song-list-item .play-icon-wrap{background:#fff3}.song-list-item .audio-animation{align-items:flex-end;gap:2px;height:.5rem;display:flex}.song-list-item .audio-animation span{background:var(--primary-foreground);width:2px}.footer-player{z-index:140;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:46px;left:0;right:0}@media (min-width:768px){.footer-player{bottom:0;right:300px}}@media (min-width:1024px){.footer-player{right:400px}}.footer-player-container{pointer-events:auto;background:color-mix(in srgb,var(--background),transparent 20%);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border-left:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-right:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-top:1px solid color-mix(in srgb,var(--foreground),transparent 90%);border-top-left-radius:2.5rem;border-top-right-radius:2.5rem;flex-direction:column;align-items:center;min-width:280px;padding:0 2rem .375rem;display:flex;box-shadow:0 -15px 40px #00000026}.dark .footer-player-container{background:#000c}.footer-player-controls{align-items:center;gap:.5rem;display:flex}.footer-player-btn{cursor:pointer;border:none;border-radius:9999px;outline:none;justify-content:center;align-items:center;transition:all .3s;display:flex}.footer-player-btn svg{transition:transform .2s}.footer-player-btn.is-secondary{width:2rem;height:2rem;color:color-mix(in srgb,var(--foreground),transparent 60%);background:0 0}.footer-player-btn.is-secondary:hover{color:var(--primary)}.footer-player-btn.is-secondary:hover svg{transform:scale(1.1)}.footer-player-btn.is-primary{width:2.5rem;height:2.5rem;color:var(--primary);background:color-mix(in srgb,var(--primary),transparent 90%);box-shadow:inset 0 2px 4px #0000000d}.footer-player-btn.is-primary:hover{background:color-mix(in srgb,var(--primary),transparent 80%)}.footer-player-btn.is-primary:hover svg{transform:scale(1.1)}.footer-player-divider{background:color-mix(in srgb,var(--foreground),transparent 90%);width:1px;height:1.25rem;margin:0 .5rem}.footer-player-toggle{cursor:pointer;pointer-events:auto;background:0 0;border:none;outline:none;align-items:center;width:2.75rem;height:2rem;display:flex;position:relative}.footer-player-toggle-icon{border-radius:9999px;justify-content:center;align-items:center;padding:.375rem;transition:all .5s;display:flex;position:absolute}.footer-player-toggle-icon.is-spotify.is-active{z-index:20;color:#fff;background:#1db954;left:0;transform:scale(1.1);box-shadow:0 0 10px #1db95466}.footer-player-toggle-icon.is-spotify.is-inactive{z-index:10;color:#1db954;filter:blur(.5px);opacity:.4;background:#1db95433;left:1rem;transform:scale(.9)}.footer-player-toggle-icon.is-youtube.is-active{z-index:20;color:#fff;background:red;left:0;transform:scale(1.1);box-shadow:0 0 10px #f006}.footer-player-toggle-icon.is-youtube.is-inactive{z-index:10;color:red;filter:blur(.5px);opacity:.4;background:#f003;left:1rem;transform:scale(.9)}.footer-player-toggle:hover .is-inactive{opacity:1;filter:blur()}.footer-player-info-divider{background:color-mix(in srgb,var(--foreground),transparent 95%);width:100%;height:1px;margin-top:.125rem}.footer-player-info{width:100%;max-width:240px;margin-top:.3125rem}@media (min-width:768px){.footer-player-info{max-width:450px}}.footer-player-info p{text-transform:uppercase;letter-spacing:.2em;color:color-mix(in srgb,var(--foreground),transparent 70%);text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:0 .5rem;font-size:9px;font-style:italic;font-weight:900;line-height:1.25;overflow:hidden}.footer-player-info p span.date{color:color-mix(in srgb,var(--text-highlight),transparent 60%)}.cookie-banner{z-index:9999;width:100%;max-width:24rem;animation:.3s ease-out forwards slide-in-bottom;position:fixed;bottom:1rem;left:1rem}@keyframes slide-in-bottom{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}.cookie-banner-content{background:color-mix(in srgb,var(--background),transparent 5%);-webkit-backdrop-filter:blur(12px);border:1px solid color-mix(in srgb,var(--foreground),transparent 10%);border-radius:1rem;padding:1.5rem;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.cookie-banner-close{color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;transition:color .2s;position:absolute;top:1rem;right:1rem}.cookie-banner-close:hover{color:var(--foreground)}.cookie-banner-section{gap:1rem;margin-bottom:1rem;display:flex}.cookie-banner-section:last-of-type{margin-bottom:1.5rem}.cookie-banner-section-icon{background:color-mix(in srgb,var(--primary),transparent 90%);height:fit-content;color:var(--primary);border-radius:.75rem;justify-content:center;align-items:center;padding:.5rem;display:flex}.cookie-banner-section-icon.has-fill svg{fill:color-mix(in srgb,var(--primary),transparent 80%)}.cookie-banner-section-text h3{text-transform:uppercase;letter-spacing:.05em;color:var(--foreground);margin-bottom:.25rem;font-size:.875rem;font-weight:700}.cookie-banner-section-text p{color:var(--muted-foreground);margin:0;font-size:.75rem;line-height:1.5}.cookie-banner-section-text p a{color:var(--primary);margin-left:.25rem;font-weight:500;text-decoration:none}.cookie-banner-section-text p a:hover{text-decoration:underline}.cookie-banner-divider{background:color-mix(in srgb,var(--foreground),transparent 95%);width:100%;height:1px;margin:1rem 0}.cookie-banner-buttons{flex-direction:column;gap:.75rem;display:flex}.cookie-banner-buttons button{cursor:pointer;border:none;border-radius:.75rem;width:100%;transition:all .2s}.cookie-banner-buttons button:active{transform:scale(.98)}.cookie-banner-buttons .btn-accept{background:var(--primary);color:var(--primary-foreground);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 10px 15px -3px color-mix(in srgb,var(--primary),transparent 80%);padding:.75rem 1.5rem;font-style:italic;font-weight:900}.cookie-banner-buttons .btn-accept:hover{background:color-mix(in srgb,var(--primary),black 10%)}.cookie-banner-buttons .btn-deny{background:color-mix(in srgb,var(--foreground),transparent 95%);color:var(--foreground);text-transform:uppercase;letter-spacing:.1em;padding:.75rem 1.5rem;font-size:.75rem;font-weight:700}.cookie-banner-buttons .btn-deny:hover{background:color-mix(in srgb,var(--foreground),transparent 90%)}.venue-search{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}@media (min-width:768px){.venue-search{flex-direction:row;align-items:center}}.venue-search-input-wrap{width:100%;position:relative}@media (min-width:768px){.venue-search-input-wrap{width:20rem}}.venue-search input{border-radius:9999px;width:100%;padding:.625rem 3rem .625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .3s}.venue-search input:focus{border-color:color-mix(in srgb,var(--primary),transparent 50%);outline:none}.venue-search-icon{color:color-mix(in srgb,var(--foreground),transparent 60%);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.venue-search-suggest-btn{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;border:1px solid color-mix(in srgb,var(--primary),transparent 80%);background:color-mix(in srgb,var(--primary),transparent 95%);white-space:nowrap;cursor:pointer;border-radius:9999px;padding:.625rem 1.5rem;font-size:.75rem;font-style:italic;font-weight:900;transition:all .3s}.venue-search-suggest-btn:hover{color:color-mix(in srgb,var(--primary),white 20%);background:color-mix(in srgb,var(--primary),transparent 90%)}.venue-search-suggest-btn:disabled{opacity:.5;cursor:not-allowed}.main{min-height:100vh;padding-bottom:3rem;position:relative}.main-background{z-index:-10;pointer-events:none;width:100%;min-height:100%;position:absolute;top:0;left:0}.main-background .silhouette{object-fit:cover;object-position:center;opacity:.7;-webkit-mask-image:linear-gradient(#000 50%,#0000 100%);mask-image:linear-gradient(#000 50%,#0000 100%);width:100%!important;height:auto!important;position:relative!important}.main-background-image{object-fit:cover;object-position:center;opacity:.7;width:100%!important;height:auto!important;position:relative!important}.main-background .overlay-gradient{background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--background),transparent 70%)25%,color-mix(in srgb,var(--background),transparent 30%)75%);position:absolute;inset:0}.container-standard{width:100%;padding-left:5px;padding-right:5px}@media (min-width:768px){.container-standard{padding-left:10px;padding-right:10px}}@media (min-width:1024px){.container-standard{max-width:90%;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}}.section-content{-webkit-backdrop-filter:blur(10px);background:#fff9;padding-top:1.5rem;padding-bottom:1.5rem}.dark .section-content{background:color-mix(in srgb,var(--background),transparent 20%)}.layout-col-full{flex-direction:column;height:100%;display:flex}.grid-responsive-4{grid-template-columns:repeat(1,minmax(0,1fr));gap:2rem;display:grid}@media (min-width:768px){.grid-responsive-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.grid-responsive-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.grid-responsive-3{grid-template-columns:repeat(1,minmax(0,1fr));gap:2rem;display:grid}@media (min-width:768px){.grid-responsive-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.grid-responsive-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.grid-responsive-2{grid-template-columns:repeat(1,minmax(0,1fr));gap:2rem;display:grid}@media (min-width:768px){.grid-responsive-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.grid-responsive-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.layout-actions-group{flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-top:1rem;margin-bottom:1rem;display:flex}.flex{display:flex}.flex-row{flex-direction:row;display:flex}.flex-col{flex-direction:column;display:flex}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap;display:flex}.white-space-nowrap{white-space:nowrap}.overflow-x-auto{overflow-x:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.flex-nowrap{flex-wrap:nowrap}.flex-shrink-0{flex-shrink:0}.flex-1{flex:1}.m-b{margin-bottom:1rem}.section-title-subtitle{flex-direction:column;gap:1rem;margin-bottom:2rem;padding-left:.5rem;padding-right:.5rem;display:flex}@media (min-width:768px){.section-title-subtitle{flex-direction:row;justify-content:space-between;align-items:flex-end}}.section-title-subtitle-wrap{border-left:2px solid var(--primary);text-align:left;padding-left:1rem}.section-title-subtitle-title{text-transform:uppercase;letter-spacing:-.025em;color:var(--foreground);font-size:1.875rem;font-style:italic;font-weight:900;line-height:1}.section-title-subtitle-subtitle{color:color-mix(in srgb,var(--foreground),transparent 40%);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-size:.875rem;font-weight:700}
