@import "https://fonts.googleapis.com/css2?family=Archivo+Black&family=DM+Sans:wght@400;500;600;700&display=swap";
:root{--ink:#171712;--paper:#f2efe7;--acid:#d7ff3f;--orange:#ff5c35;--line:#ccc8bc;--soft:#e7e3d8}.notificationPage{max-width:1120px;margin:auto;padding:55px 44px}.notificationPage h1{text-transform:uppercase;letter-spacing:-.05em;overflow-wrap:anywhere;margin:10px 0;font:clamp(42px,7vw,82px)/.95 Archivo Black}.notificationPage h2{text-transform:uppercase;margin-top:35px}.notificationMessage{border-left:5px solid var(--orange);background:var(--soft);padding:13px}.notificationForm{border:1px solid var(--line);grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:12px;margin:35px 0;padding:22px;display:grid}.notificationPage label{gap:7px;font-size:12px;font-weight:800;display:grid}.notificationPage select,.notificationPage input,.notificationPage button{border:1px solid var(--ink);background:var(--paper);min-height:42px;color:var(--ink);padding:9px 11px;font:700 12px DM Sans}.notificationPage button{cursor:pointer}.notificationPage button:disabled{cursor:not-allowed;opacity:.5}.notificationGrid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.notificationGrid>section{border:1px solid var(--line);padding:20px}.notificationForm>*,.notificationGrid>*,.channelRow>*,.preferenceRow>*{min-width:0}.notificationPage select,.notificationPage input{min-width:0;max-width:100%}.notificationPage :is(p,small,strong){overflow-wrap:anywhere}.channelRow,.preferenceRow{border-top:1px solid var(--line);align-items:center;gap:12px;padding:13px 0;display:flex}.channelRow>span:first-child,.preferenceRow>span:first-child{flex:1;display:grid}.channelRow small,.preferenceRow small{color:#68665f;display:block}@media (max-width:850px){.notificationForm{grid-template-columns:1fr 1fr}.notificationGrid{grid-template-columns:1fr}}@media (max-width:560px){.notificationPage{padding:32px 18px}.notificationForm{grid-template-columns:1fr}.channelRow,.preferenceRow{flex-direction:column;align-items:stretch}}@media (max-width:600px){.siteHeader{flex-wrap:wrap;gap:10px 14px;height:auto;min-height:78px;padding-top:12px;padding-bottom:12px}.siteHeader .brand{flex:auto;min-width:0}.siteHeader nav{flex-wrap:wrap;order:3;gap:10px 16px;width:100%}.siteHeader nav a{min-width:0}.siteHeader .accountMenu{min-width:0;max-width:min(48%,190px)}.siteHeader .accountButton{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}}.localActions{flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 20px;display:flex}.localActions select,.favoriteButton,.outlineButton{color:inherit;cursor:pointer;background:0 0;border:1px solid;padding:10px 13px;font:700 12px DM Sans}.favoriteButton.selected{background:var(--acid);color:var(--ink);border-color:var(--acid)}.localActions a{font-size:12px;font-weight:800;text-decoration:underline}.artistPage>.favoriteButton{margin-top:25px}.plannerPage{max-width:1280px;margin:auto;padding:34px 44px}.plannerHero{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:30px;padding:55px 0;display:flex}.plannerHero h1{text-transform:uppercase;letter-spacing:-.055em;margin:12px 0;font:clamp(45px,7vw,90px)/.95 Archivo Black}.plannerHero p{color:#67655f}.plannerSection{border-bottom:1px solid var(--line);padding:55px 0}.planList{margin:25px 0}.planList article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:18px 10px;display:flex}.planList article>div{flex:1;grid-template-columns:110px minmax(220px,1fr) 1fr;align-items:center;gap:15px;display:grid}.planList small,.planList span{color:#706d65}.planList select{border:1px solid var(--line);background:0 0;padding:9px}.playlistFestivalGrid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:25px 0;display:grid}.playlistFestivalGrid label{background:var(--paper);cursor:pointer;align-items:center;gap:9px;min-width:0;padding:13px;font-size:13px;font-weight:700;display:flex}.playlistFestivalGrid label span{overflow-wrap:anywhere;min-width:0}.playlistActions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.playlistActions .primaryButton{cursor:pointer;border:0}.playlistActions .primaryButton:disabled{cursor:wait;opacity:.65}.playlistStatus{margin:.8rem 0}.playlistStatus.created{color:#8ee6ae}.playlistStatus.error{color:#ff9e9e}.plannerSection details{margin-top:1rem}.plannerSection details p{max-width:54rem}.artistChips{flex-wrap:wrap;gap:7px;margin:18px 0 25px;display:flex}.artistChips a,.artistChips span{background:var(--soft);padding:7px 10px;font-size:12px;font-weight:700}.primaryButton{background:var(--ink);color:#fff;padding:12px 16px;font-size:12px;font-weight:800;display:inline-block}.viewHeading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.viewHeading h2{text-transform:uppercase;letter-spacing:-.05em;margin:8px 0 0;font:clamp(32px,5vw,58px)/1 Archivo Black}.viewHeading p{color:#67655f;max-width:390px}.monthNav{align-items:center;gap:14px;display:flex}.monthNav button{border:1px solid var(--ink);cursor:pointer;background:0 0;width:42px;height:42px;font-size:20px}.calendarGrid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;min-height:170px;margin-bottom:22px;display:grid}.calendarGrid>a{background:var(--paper);gap:14px;padding:17px;display:flex}.calendarGrid time{background:var(--acid);place-items:center;min-width:42px;height:42px;font:18px Archivo Black;display:grid}.calendarGrid span{flex-direction:column;gap:4px;display:flex}.calendarGrid small{color:#67655f}.calendarGrid>p{background:var(--paper);grid-column:1/-1;padding:20px}.europeMap{border:1px solid var(--line);background:linear-gradient(135deg,#cce5ed,#e8f3f5);min-height:560px;position:relative;overflow:visible}.mapLand{color:#9a9a85;letter-spacing:-.08em;clip-path:polygon(23% 8%,45% 14%,55% 2%,73% 22%,92% 34%,81% 56%,91% 82%,64% 91%,51% 73%,36% 94%,24% 65%,2% 55%,14% 36%);background:#dbdcc4;place-items:center;font:clamp(60px,13vw,170px) Archivo Black;display:grid;position:absolute;inset:9% 15% 8% 18%}.mapMarker{z-index:2;position:absolute;transform:translate(-50%,-50%)}.mapMarker summary{background:var(--orange);color:#fff;cursor:pointer;border:3px solid #fff;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:900;list-style:none;display:grid;box-shadow:0 3px 12px #0005}.mapMarker summary::-webkit-details-marker{display:none}.mapMarker summary span{color:var(--ink);font-size:10px;position:absolute;top:42px}.mapMarker>div{background:var(--paper);border:2px solid var(--ink);width:235px;max-height:240px;position:absolute;top:24px;left:24px;overflow:auto;box-shadow:7px 7px #17171244}.mapMarker>div a{border-bottom:1px solid var(--line);flex-direction:column;padding:10px 12px;display:flex}.mapMarker>div small{color:#67655f}@media (max-width:700px){.plannerPage{padding:24px 18px}.viewHeading{flex-direction:column;align-items:flex-start}.calendarGrid{grid-template-columns:1fr}.europeMap{min-height:440px}.mapMarker>div{z-index:20;width:auto;position:fixed;inset:auto 18px 18px}.plannerPage{overflow-x:clip}.europeMap{overflow:clip}.mapMarker{margin:-20px;transform:none}.mapMarker>div{box-sizing:border-box;max-width:calc(100vw - 36px)}.filterBar>*{min-width:0}.filterBar .toggle{box-sizing:border-box;flex:100%}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}.skipLink{z-index:100;background:var(--acid);color:var(--ink);padding:10px 14px;font-weight:800;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skipLink:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.siteHeader{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1440px;height:78px;margin:auto;padding:0 44px;display:flex}.brand{text-transform:uppercase;letter-spacing:-.03em;align-items:center;gap:12px;font-weight:800;display:flex}.brandMark{background:var(--ink);width:38px;height:38px;color:var(--acid);place-items:center;font-family:Archivo Black;font-size:14px;display:grid;transform:rotate(-3deg)}nav{gap:30px;font-size:14px;font-weight:700;display:flex}nav a:hover{text-decoration:underline}.accountButton,.accountPopover button{border:1px solid var(--ink);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;padding:8px 12px;font-weight:700}.accountPopover{z-index:20;border:1px solid var(--ink);background:var(--paper);width:min(340px,100vw - 32px);box-shadow:8px 8px 0 var(--ink);padding:20px;position:absolute;top:calc(100% + 12px);right:0}.accountPopover form{gap:14px;margin-top:16px}.accountPopover input{border:1px solid var(--line);min-width:0;font:inherit;padding:10px}.accountTabs{gap:8px;display:flex}.accountTabs [aria-selected=true]{background:var(--ink);color:var(--paper)}.accountHint{color:#66645e;font-size:13px}.accountDivider{color:#66645e;text-transform:uppercase;align-items:center;gap:10px;font-size:12px;display:flex}.accountDivider:before,.accountDivider:after{content:"";border-top:1px solid var(--line);flex:1}.passkeyButton{background:var(--ink)!important;color:var(--paper)!important}.accountClose{position:absolute;top:6px;right:6px;border:0!important;font-size:20px!important}main{min-height:calc(100vh - 160px)}footer{border-top:1px solid var(--line);color:#66645e;justify-content:space-between;max-width:1440px;margin:70px auto 0;padding:30px 44px;font-size:13px;display:flex}.languagePicker{align-items:center;gap:10px;font-weight:700;display:flex}.languagePicker select{border:1px solid var(--line);color:var(--ink);background:0 0;padding:7px 28px 7px 9px;font:600 12px DM Sans,sans-serif}.hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 88% 15%,#d7ff3fb3 0,#d7ff3f00 24%);max-width:1440px;margin:auto;padding:74px 44px 54px}.eyebrow{letter-spacing:.16em;font-size:12px;font-weight:800}.hero h1,.detailHero h1,.artistHero h1{text-transform:uppercase;letter-spacing:-.055em;margin:19px 0;font-family:Archivo Black,sans-serif;line-height:.91}.hero h1{max-width:1000px;font-size:clamp(56px,8.4vw,126px)}.hero h1 em{color:var(--orange);font-style:normal}.hero>p{color:#5b5952;max-width:650px;font-size:20px;line-height:1.5}.heroStats{text-transform:uppercase;letter-spacing:.07em;gap:34px;margin-top:44px;font-size:13px;display:flex}.heroStats strong{margin-right:7px;font-family:Archivo Black;font-size:22px}.explorer{max-width:1440px;margin:auto;padding:32px 44px}.filterBar{z-index:5;background:#171712f5;flex-wrap:wrap;gap:10px;padding:12px;display:flex;position:sticky;top:12px;box-shadow:0 10px 30px #00000029}.filterBar .search{flex:230px}.filterBar select{flex:145px;width:auto}.search{background:#fff;align-items:center;gap:10px;padding:0 16px;display:flex}.search input{flex:1;min-width:0}.search button{width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.search button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.search button span{font-size:19px}.search span{font-size:25px}.search input,.filterBar select{background:#fff;border:0;outline:0;width:100%;padding:15px;font:600 14px DM Sans}.toggle{color:#fff;white-space:nowrap;cursor:pointer;align-items:center;gap:10px;padding:0 14px;font-size:13px;font-weight:700;display:flex}.toggle input{display:none}.toggle span{background:#5b5a53;border-radius:20px;width:38px;height:22px;transition:all .2s;position:relative}.toggle span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:3px;left:3px}.toggle input:checked+span{background:var(--acid)}.toggle input:checked+span:after{background:var(--ink);transform:translate(16px)}.resultMeta{color:#6f6c63;text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;margin:35px 0 15px;font-size:12px;font-weight:700;display:flex}.festivalGrid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.festivalCard{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff17;flex-direction:column;min-width:0;min-height:390px;padding:25px;transition:all .18s;display:flex}.festivalCard>a{flex-direction:column;flex:1;display:flex}.compareButton{border:1px solid var(--line);cursor:pointer;background:0 0;align-self:flex-end;margin:-12px -10px 12px 0;padding:6px 9px;font:700 11px DM Sans}.compareButton.active{background:var(--acid);border-color:var(--ink)}.compareButton:disabled{opacity:.35;cursor:not-allowed}.compareTray{border:1px solid var(--ink);background:#fff;margin:18px 0 0;padding:12px;font-size:12px;display:block}.compareHeading{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.compareHint{color:#5f5c54;margin:12px 0 0}.comparisonScroll{margin-top:12px;overflow-x:auto}.comparisonTable{border-collapse:collapse;text-align:left;width:100%;min-width:680px}.comparisonTable th,.comparisonTable td{border:1px solid var(--line);vertical-align:top;padding:10px}.comparisonTable thead th{background:var(--ink);color:#fff}.comparisonTable tbody th{background:var(--soft);width:190px}.comparisonTable a{font-weight:800;text-decoration:underline}.compareTray button{background:var(--soft);cursor:pointer;border:0;padding:7px 9px}.festivalCard:hover{z-index:2;background:#fff;transform:translateY(-4px);box-shadow:0 15px 30px #00000017}.cardTop{justify-content:space-between;align-items:flex-start;margin-bottom:38px;display:flex}.festivalLogo{width:68px;height:54px;color:var(--ink);border:1px solid var(--line);background:#fff;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;padding:8px;display:grid;overflow:hidden}.festivalLogo img{object-fit:contain;width:100%;height:100%;display:block}.festivalLogo span{font-family:Archivo Black;font-size:20px}.festivalLogo.large{flex:none;width:150px;height:120px;padding:18px}.festivalLogo.large span{font-size:40px}.status{text-transform:uppercase;letter-spacing:.09em;border:1px solid;width:max-content;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.status.confirmed{color:#356800;background:#e5ffc0}.status.partial{color:#8b3700;background:#ffe0b7}.status.tba{color:#77746c}.date{letter-spacing:.12em;color:#68655d;text-transform:uppercase;font-size:12px;font-weight:800}.festivalCard h2{text-transform:uppercase;letter-spacing:-.04em;margin:10px 0 7px;font-family:Archivo Black;font-size:27px;line-height:1.05}.location{color:#67655f;font-size:13px}.artists{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.artists span{background:var(--soft);padding:5px 8px;font-size:11px;font-weight:700}.artists .muted{color:#89867e;background:0 0;padding-left:0;font-weight:500}.cardFoot{border-top:1px solid var(--line);justify-content:space-between;margin-top:auto;padding-top:24px;font-size:12px;display:flex}.cardFoot b{color:#d7431e}.empty{text-align:center;border:1px solid var(--line);color:#777;padding:80px}.detailPage,.artistPage{max-width:1280px;margin:auto;padding:34px 44px}.back{font-size:13px;font-weight:700;text-decoration:underline}.detailHero{background:var(--ink);color:#fff;background-image:radial-gradient(circle at 90% 20%,#574d10,#0000 30%);align-items:center;gap:45px;margin:45px 0;padding:55px;display:flex}.detailHero h1{max-width:920px;font-size:clamp(45px,7vw,96px)}.detailDate{color:#d0cdc4;font-size:18px}.detailHero .status{margin-top:15px}.actionGrid{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.actionGrid>a,.actionGrid>div{border-right:1px solid var(--line);flex-direction:column;gap:8px;min-height:96px;padding:24px;display:flex}.actionGrid>a:hover{background:var(--acid)}.actionGrid small{color:#77746d;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.actionGrid .disabled{opacity:.5}.lineupSection{padding:72px 0 25px}.sectionHeading{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:flex-end;padding-bottom:20px;display:flex}.sectionHeading h2{text-transform:uppercase;letter-spacing:-.05em;margin:8px 0 0;font-family:Archivo Black;font-size:50px}.sectionHeading>span{text-transform:uppercase;letter-spacing:.08em;font-size:12px}.lineupSection h3{text-transform:uppercase;letter-spacing:.12em;margin:36px 0 13px;font-size:12px}.headlinerGrid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.headlinerGrid a{background:var(--ink);color:#fff;text-transform:uppercase;flex-direction:column;justify-content:space-between;min-height:130px;padding:22px;font:24px Archivo Black;display:flex}.headlinerGrid a:hover{background:var(--orange)}.headlinerGrid span{letter-spacing:.06em;font:11px DM Sans}.lineupGrid{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.lineupGrid a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px;font-size:13px;font-weight:700}.lineupGrid a:hover{background:#fff}.lineupEmpty{border:1px solid var(--line);flex-direction:column;gap:10px;margin-top:25px;padding:45px;display:flex}.sourceNote{background:#e6e2d7;grid-template-columns:180px 1fr auto;align-items:center;gap:20px;margin-top:60px;padding:24px;font-size:13px;display:grid}.sourceNote p{color:#605e58}.sourceNote a{font-weight:700;text-decoration:underline}.planningSection{padding:60px 0 0}.planningSection .sectionHeading h2{font-size:42px}.planningActions{flex-wrap:wrap;gap:10px;padding:22px 0;display:flex}.planningActions a,.planningActions>span{border:1px solid var(--ink);padding:13px 16px;font-size:12px;font-weight:800}.planningActions a:hover{background:var(--acid)}.timetable{background:var(--soft);justify-content:space-between;gap:20px;padding:20px;font-size:13px;display:flex}.timetable span{color:#66635b}.timetablePublished{display:block}.timetableHeader,.timetablePublished footer{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.timetableHeader>div{gap:5px;display:grid}.timetableWarning{color:#7c2113;border:2px solid #9b2f1d;margin-top:16px;padding:12px;font-weight:800}.timetableDay{margin-top:22px}.timetableDay h3,.timetableStage h4{margin:0 0 10px}.timetableStages{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.timetableStage{border:1px solid var(--line);background:#fff;padding:14px}.timetableStage ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.timetableStage li{grid-template-columns:48px 1fr auto;gap:10px;display:grid}.timetableStage time{font-variant-numeric:tabular-nums;font-weight:800}.timetableStage li.cancelled span{text-decoration:line-through}.timetableStage em{color:#9b2f1d;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:900}.timetablePublished footer{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.timetablePublished footer a{font-weight:800;text-decoration:underline}@media (max-width:640px){.timetableEmpty,.timetableHeader,.timetablePublished footer{flex-direction:column}}.recommendations{border:1px solid var(--line);grid-template-columns:180px repeat(3,1fr);margin-top:15px;display:grid}.recommendations h3,.recommendations a{border-right:1px solid var(--line);margin:0;padding:18px}.recommendations a{flex-direction:column;gap:6px;display:flex}.recommendations span{color:#706d65;font-size:11px}.artistHero{border-bottom:3px solid var(--ink);align-items:center;gap:30px;padding:65px 0 35px;display:flex}.artistHero h1{font-size:clamp(45px,7vw,90px)}.artistHero p{color:#6a675f}.artistMonogram{background:var(--orange);place-items:center;width:120px;height:120px;font:58px Archivo Black;display:grid;transform:rotate(-3deg)}.artistPortrait{border:1px solid var(--ink);object-fit:cover;background:var(--soft);flex:none;width:190px;height:190px}.artistSetlists{margin-top:28px}.artistSetlists ul{border-top:1px solid var(--line);margin:12px 0 0;padding:0;list-style:none}.artistSetlists li{border-bottom:1px solid var(--line);grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 0;display:grid}.artistSetlists time{font-variant-numeric:tabular-nums;font-weight:800}.freshnessNote{color:#67655f;margin:12px 0 0;font-size:12px}.artistActions{gap:10px;padding:20px 0;display:flex}.artistActions a{border:1px solid var(--ink);padding:12px 16px;font-size:12px;font-weight:800}.artistActions a:hover{background:var(--acid)}.directoryPage{max-width:1280px;margin:auto;padding:70px 44px}.directoryPage>h1{text-transform:uppercase;letter-spacing:-.05em;max-width:1000px;font:clamp(42px,7vw,88px)/.95 Archivo Black}.directoryPage>p{max-width:720px;line-height:1.6}.directoryPage section{margin:48px 0}.directoryRow{border-top:1px solid var(--line);grid-template-columns:120px 1fr;gap:24px;padding:22px 0;display:grid}.textLink{font-weight:800;text-decoration:underline}.submissionForm{gap:18px;max-width:700px;margin-top:36px;display:grid}.submissionForm label{gap:7px;font-weight:800;display:grid}.submissionForm input,.submissionForm textarea{font:inherit;background:#fff;border:1px solid #888;padding:13px}.submissionForm textarea{min-height:120px}.submissionForm button{background:var(--ink);color:#fff;cursor:pointer;border:0;width:max-content;padding:15px 20px;font-weight:800}.submissionForm button:hover{background:var(--orange)}.honeypot{position:absolute!important;left:-10000px!important}.artistMetadata{border-top:1px solid var(--line);grid-template-columns:2fr 1fr;gap:35px;padding:32px 0;display:grid}.artistMetadata p{max-width:720px;line-height:1.6}.artistMetadata li{margin:8px 0}.artistSources{background:var(--soft);margin-top:30px;padding:18px}.artistSources summary{cursor:pointer;font-weight:800}.artistSources a,.artistSources code{overflow-wrap:anywhere;margin-top:10px;display:block}.appearances{margin-top:50px}.appearances>.eyebrow{margin-bottom:14px}.appearances>a{border-top:1px solid var(--line);grid-template-columns:50px 1fr 1fr 30px;align-items:center;padding:19px 10px;display:grid}.appearances>a:last-child{border-bottom:1px solid var(--line)}.appearances>a:hover{background:#fff}.appearances span,.appearances em{color:#706d65;font-size:13px;font-style:normal}@media (max-width:900px){.festivalGrid{grid-template-columns:repeat(2,1fr)}.filterBar{grid-template-columns:1fr 180px}.toggle{grid-column:1/-1;padding:8px}.actionGrid,.headlinerGrid{grid-template-columns:repeat(2,1fr)}.lineupGrid{grid-template-columns:repeat(3,1fr)}.sourceNote{grid-template-columns:1fr}.detailHero{padding:35px}.festivalLogo.large{width:110px;height:90px}}@media (max-width:600px){.siteHeader,.hero,.explorer,.detailPage,.artistPage{padding-left:20px;padding-right:20px}.siteHeader{flex-wrap:wrap;gap:10px 16px;height:auto;min-height:78px;padding-top:12px;padding-bottom:12px}.siteHeader nav{flex:1 0 100%;order:3;justify-content:space-between;gap:10px;font-size:12px}.siteHeader .accountMenu{margin-left:auto}.siteHeader nav a:last-child{display:none}.hero{padding-top:45px}.heroStats{flex-direction:column;gap:8px}.filterBar{grid-template-columns:1fr;position:relative;top:0}.filterBar select,.toggle{grid-column:auto}.festivalGrid{grid-template-columns:1fr}.festivalCard{min-height:350px}.resultMeta span:last-child{display:none}.detailHero{flex-direction:column;align-items:flex-start;gap:25px;padding:30px 22px}.detailHero h1{font-size:45px}.actionGrid{grid-template-columns:1fr}.actionGrid>a,.actionGrid>div{border-right:0;border-bottom:1px solid var(--line)}.sectionHeading h2{font-size:38px}.headlinerGrid,.lineupGrid{grid-template-columns:1fr}.planningSection{min-width:0}.recommendations{grid-template-columns:minmax(0,1fr);max-width:100%}.recommendations h3,.recommendations a{border-right:0;border-bottom:1px solid var(--line);overflow-wrap:anywhere;min-width:0}.recommendations a:last-child{border-bottom:0}.sourceNote{display:block}.sourceNote p{margin:10px 0 18px}.artistHero{flex-direction:column;align-items:flex-start}.artistMonogram{width:80px;height:80px;font-size:38px}.artistActions{flex-wrap:wrap}.appearances>a{grid-template-columns:40px 1fr 25px}.appearances em{display:none}footer{padding:25px 20px;display:block}footer>span{margin:6px 0;display:block}.languagePicker{margin-top:18px}.languagePicker span{margin:0}}.adminShell{background:#ebe8df;grid-template-columns:260px 1fr;min-height:100vh;display:grid}.adminNav{background:var(--ink);color:#fff;flex-direction:column;gap:8px;height:100vh;padding:30px 22px;display:flex;position:sticky;top:0}.adminNav h1{text-transform:uppercase;margin:8px 0;font:25px Archivo Black}.adminNav p{color:#aaa79f;margin:0 0 30px;font-size:13px}.adminNav button{color:#d6d3ca;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;padding:13px 12px;font:700 13px DM Sans;display:flex}.adminNav button.active{background:var(--acid);color:var(--ink)}.adminNav button b{background:var(--orange);color:#fff;border-radius:20px;padding:1px 7px}.adminNav>a{color:#aaa79f;margin-top:auto;font-size:13px}.adminMain{width:100%;max-width:1240px;margin:auto;padding:38px 44px 70px}.adminHeader{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:flex-end;margin-bottom:24px;padding-bottom:20px;display:flex}.adminHeader h2{text-transform:uppercase;letter-spacing:-.04em;margin:9px 0 0;font:46px Archivo Black}.adminRole{border:1px solid var(--line);background:#fff;padding:9px;font-size:12px}.adminNotice{background:var(--acid);justify-content:space-between;margin-bottom:18px;padding:14px 18px;font-size:13px;font-weight:700;display:flex}.adminNotice button{cursor:pointer;background:0 0;border:0;font-size:18px}.adminToolbar{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.adminToolbar p{color:#65625b;font-size:13px}.adminToolbar select,.adminPanel input,.adminPanel select,.adminPanel textarea{border:1px solid var(--line);background:#fff;width:100%;padding:11px;font:500 13px DM Sans}.reviewCard,.adminPanel{border:1px solid var(--line);background:#f7f5ef;margin-bottom:14px;padding:22px}.reviewCard.approved{border-left:5px solid #579000}.reviewCard.rejected{opacity:.62}.reviewMeta{justify-content:space-between;align-items:center;display:flex}.reviewMeta small{color:#77746d}.safe,.risk{text-transform:uppercase;letter-spacing:.06em;width:max-content;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.safe{color:#386800;background:#dfffb8}.risk{color:#8b3700;background:#ffe0b7}.reviewCard h3,.adminPanel h3{text-transform:uppercase;margin:17px 0;font:20px Archivo Black}.reviewCard h3 span{color:#77746d}.diff{border:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.diff>div{padding:13px}.diff>div+div{border-left:1px solid var(--line);background:#fff}.diff small,.adminPanel label{text-transform:uppercase;letter-spacing:.08em;color:#6d6a62;font-size:10px;font-weight:800}.diff p{margin:7px 0;font-size:14px}.reviewActions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.adminMain button{border:1px solid var(--ink);background:var(--ink);color:#fff;text-transform:uppercase;cursor:pointer;padding:10px 14px;font:800 11px DM Sans}.adminMain button.secondary{color:var(--ink);background:0 0}.adminMain button:disabled{opacity:.5}.decision{text-align:right;text-transform:uppercase;margin-top:14px;font-size:11px;display:block}.editorGrid{grid-template-columns:2fr 1fr;gap:18px;display:grid}.adminPanel label{gap:7px;margin-bottom:15px;display:grid}.fieldPair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.adminPanel p{color:#66635c;font-size:13px;line-height:1.5}.artistAdminList{margin:12px 0 0;padding:0;list-style:none}.artistAdminList li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:9px 0;font-size:13px;display:flex}.adminMain button.textButton{color:var(--ink);background:0 0;border:0;padding:4px;text-decoration:underline}.assetPreview{flex-direction:column;gap:10px;height:max-content;display:flex}.diagnosticGrid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.diagnosticGrid dl{border-top:1px solid var(--line)}.diagnosticGrid dl div{border-bottom:1px solid var(--line);justify-content:space-between;padding:8px 0;font-size:12px;display:flex}.diagnosticGrid dt{color:#77746d}.diagnosticGrid dd{margin:0;font-weight:700}.auditTable article{border-bottom:1px solid var(--line);grid-template-columns:190px 1fr 180px;gap:18px;padding:14px 5px;font-size:12px;display:grid}.auditTable time,.auditTable span{color:#77746d}.auditTable p{margin:4px 0}@media (max-width:900px){.adminShell{grid-template-columns:1fr}.adminNav{height:auto;position:relative;overflow-x:auto}.adminNav>a{margin-top:20px}.adminMain{padding:28px 22px}.diagnosticGrid,.editorGrid{grid-template-columns:1fr}.adminHeader h2{font-size:34px}}@media (max-width:600px){.adminHeader{flex-direction:column;align-items:flex-start;gap:20px}.diff,.fieldPair{grid-template-columns:1fr}.diff>div+div{border-left:0;border-top:1px solid var(--line)}.adminToolbar{flex-direction:column;align-items:flex-start;gap:12px}.auditTable article{grid-template-columns:1fr;gap:5px}}.adminShell{grid-template-columns:260px minmax(0,1fr);max-width:100%}.adminNav,.adminMain,.adminHeader>*,.adminToolbar>*,.reviewCard,.adminPanel,.reviewMeta>*,.diff>*,.editorGrid>*,.diagnosticGrid>*,.auditTable article>*{min-width:0}.adminMain,.reviewCard,.adminPanel{max-width:100%}.adminNav button{white-space:normal;overflow-wrap:anywhere;min-width:0}.adminRole{text-align:right;overflow-wrap:anywhere;gap:3px;max-width:100%;display:grid}.adminRole small{text-transform:none;font-weight:500}.reviewMeta{flex-wrap:wrap;gap:8px}.reviewMeta small,.reviewCard :is(p,a,h3),.adminPanel :is(p,a,h3),.auditTable :is(p,span,strong,time){overflow-wrap:anywhere;word-break:break-word}.adminPanel :is(input,select,textarea),.adminToolbar select{min-width:0;max-width:100%}.adminPanel :is(.safe,.risk){white-space:normal;overflow-wrap:anywhere;width:fit-content;max-width:100%}.reviewActions{flex-wrap:wrap}.diagnosticGrid pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);background:#fff;max-width:100%;padding:12px;font-size:12px;overflow:auto}@media (max-width:900px){.adminShell{grid-template-columns:minmax(0,1fr)}.adminNav,.adminMain{width:100%;max-width:100vw}}@media (max-width:600px){.adminRole{text-align:left}.adminHeader h2{overflow-wrap:anywhere}}.adminPage{min-height:100vh}.adminLanguage{gap:6px;margin:12px;display:grid}.adminLanguage span{text-transform:uppercase;font-size:11px;font-weight:800}.adminLanguage select{color:var(--ink);background:#fff;border:2px solid #0000;padding:8px}.adminShell :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--orange);outline-offset:3px}.adminNotice[role=status]{min-height:48px}.accountSync{border:2px solid var(--ink);background:#fff}.syncActions{flex-wrap:wrap;gap:10px;display:flex}.accountSync button,.accountSync input{border:1px solid var(--ink);background:#fff;padding:10px 12px;font:700 12px DM Sans}.accountSync button{cursor:pointer}.accountSync button:disabled{opacity:.5;cursor:wait}.syncConflict{border-left:5px solid var(--orange);background:#fff0c2;margin-top:16px;padding:16px}.syncConflict div{gap:8px;margin-top:12px;display:flex}.syncGrid{grid-template-columns:1fr 1fr;gap:22px;margin-top:24px;display:grid}.syncGrid>div{background:var(--soft);align-content:start;gap:12px;padding:18px;display:grid}.syncGrid h3{margin:0}.syncGrid label{gap:6px;display:grid}.shareResult{align-items:center;gap:8px;display:flex}.shareResult a{overflow-wrap:anywhere}.accountMenu{position:relative}.accountPopover{z-index:20;border:2px solid var(--ink);background:#fff;width:min(360px,90vw);padding:20px;position:absolute;top:44px;right:0;box-shadow:8px 8px #0000002e}.accountPopover form,.accountPopover label{gap:8px;display:grid}.accountPopover form{gap:12px}.accountTabs{gap:6px;margin-bottom:12px;display:flex}.accountClose{position:absolute;top:8px;right:8px}.accountHint{font-size:12px}.accountButton{white-space:nowrap}@media (max-width:700px){.syncGrid{grid-template-columns:1fr}.shareResult{flex-direction:column;align-items:flex-start}}.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.filterBar>*{min-width:0}.filterBar .toggle{box-sizing:border-box;flex:100%}}.lineupSort{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.lineupSort select{max-width:100%;font:inherit;padding:.5rem}.artistStats{margin:1.5rem 0}
