/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.rounded{border-radius:.25rem}}:root{--ink:#07101f;--paper:#f2efe8;--cream:#faf7ef;--muted:#7c8492;--yellow:#ffca3a;--coral:#ff5a4f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,Helvetica Neue,Arial,sans-serif}button,a{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline-offset:2px;box-shadow:0 0 0 5px var(--ink);border-radius:inherit;outline:3px solid #fff}.siteHeader{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07101ff0;border-bottom:1px solid #ffffff14;align-items:center;gap:40px;height:82px;padding:0 clamp(20px,4vw,64px);display:flex}.brand{letter-spacing:-.04em;text-transform:uppercase;align-items:center;gap:12px;font-weight:900;line-height:.95;display:flex}.brandMark{background:var(--yellow);width:42px;height:42px;color:var(--ink);letter-spacing:-1px;border-radius:50%;place-items:center;font-size:12px;display:grid;transform:rotate(-6deg)}.brand small{color:#9ba6b8;letter-spacing:.16em;margin-top:5px;font-size:9px;display:block}.siteHeader nav{gap:28px;margin-left:auto;font-size:13px;font-weight:700;display:flex}.siteHeader nav a{color:#bbc3cf}.siteHeader nav a:hover{color:#fff}.accountArea{align-items:center;gap:9px;display:flex}.accountArea form{display:contents}.loginButton,.adminLink,.ghostButton{cursor:pointer;border:0;border-radius:99px;padding:11px 16px;font-size:12px;font-weight:800}.loginButton{color:var(--ink);background:#fff}.loginButton.disabled{opacity:.55}.adminLink{background:var(--yellow);color:var(--ink)}.ghostButton{color:#fff;background:#1d293b}.userBadge{text-overflow:ellipsis;color:#9ba6b8;max-width:180px;font-size:11px;overflow:hidden}.lockScreen{color:#fff;background:radial-gradient(circle at 50% 45%,#20314c 0%,#0b1628 46%,#050b15 100%);place-items:center;min-height:100vh;padding:28px;display:grid;position:relative;overflow:hidden}.lockScreen:before{content:"";opacity:.2;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:58px 58px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 74%);mask-image:radial-gradient(circle,#000,#0000 74%)}.chain{opacity:.25;filter:drop-shadow(0 4px 4px #000);background:repeating-radial-gradient(#0000 0 8px,#c9d0da 9px 12px,#0000 13px 24px);width:1050px;height:48px;position:absolute}.chainLeft{top:20%;left:-650px;transform:rotate(38deg)}.chainRight{bottom:20%;right:-650px;transform:rotate(38deg)}.lockPanel{z-index:2;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07101fc7;border:1px solid #ffffff24;border-radius:30px;width:min(620px,100%);max-width:100%;padding:52px 48px;position:relative;box-shadow:0 50px 120px #0000008c}.lockVisual{width:128px;height:150px;margin:0 auto 30px;position:relative}.lockShackle{border:14px solid var(--yellow);border-bottom:0;border-radius:48px 48px 0 0;width:80px;height:85px;position:absolute;top:0;left:24px}.lockBody{background:var(--yellow);height:92px;color:var(--ink);border-radius:22px;place-items:center;display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 18px 45px #ffca3a40}.lockBody:after{content:"";background:var(--ink);border-radius:6px;width:10px;height:22px;position:absolute;top:48px}.lockBody span{letter-spacing:.06em;margin-top:-27px;font-size:12px;font-weight:950}.lockPanel h1{letter-spacing:-.07em;text-transform:uppercase;margin:16px 0;font-size:clamp(48px,7vw,82px);line-height:.88}.lockPanel p{color:#aeb8c7;max-width:500px;margin:0 auto 28px;font-size:15px;line-height:1.65}.lockButton{color:var(--ink);background:#fff;border-radius:99px;align-items:center;gap:22px;padding:15px 19px;font-size:12px;font-weight:900;display:inline-flex}.lockButton span{background:var(--yellow);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.lockButton.secondary{background:var(--yellow)}.lockPanel>small{color:#6f7b8d;letter-spacing:.12em;text-transform:uppercase;margin-top:24px;font-size:9px;display:block}.hero{background:var(--ink);color:#fff;grid-template-columns:minmax(390px,.75fr) minmax(540px,1.25fr);min-height:740px;display:grid;overflow:hidden}.heroIntro{z-index:2;padding:clamp(70px,7vw,110px) 30px 70px clamp(28px,6vw,92px);position:relative}.heroWithoutMap{background:radial-gradient(circle at 84% 25%,#243c5f 0%,#111f34 29%,var(--ink) 68%);min-height:720px;display:block;position:relative}.heroWithoutMap:before{content:"";opacity:.22;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 8%,#000 76%,#0000);mask-image:linear-gradient(90deg,#0000 8%,#000 76%,#0000)}.heroWithoutMap .heroIntro{max-width:1380px;margin:auto;padding-right:clamp(28px,6vw,92px)}.eyebrow{color:var(--coral);letter-spacing:.22em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.hero h1{letter-spacing:-.075em;text-transform:uppercase;margin:26px 0 24px;font-size:clamp(58px,6.3vw,102px);font-weight:950;line-height:.83}.hero h1 i{color:var(--yellow);font-style:normal}.heroIntro>p{color:#adb7c7;max-width:490px;font-size:17px;line-height:1.65}.heroStats{border-top:1px solid #ffffff1f;gap:35px;margin-top:52px;padding-top:28px;display:flex}.heroStats div{flex-direction:column;display:flex}.heroStats b{color:#fff;font-size:28px}.heroStats span{color:#8490a2;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.heroStops{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:42px;display:grid}.heroStops .heroStop{color:#fff;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0e;border:1px solid #ffffff1f;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:0 12px;padding:17px;transition:background .2s,transform .2s,opacity .2s;display:grid}.heroStops .heroStop:hover{background:#ffffff1c;transform:translateY(-2px)}.heroStops .heroStop:active{transform:translateY(0)scale(.97)}.heroStops .heroStopNumber{background:var(--yellow);width:36px;height:36px;color:var(--ink);border-radius:50%;grid-row:1/3;place-items:center;font-size:9px;font-weight:950;display:grid}.heroStopMeta{display:contents}.heroStops b{text-transform:uppercase;font-size:13px}.heroStops small{color:#8e9bad;text-transform:uppercase;font-size:9px}.heroStop em{text-transform:uppercase;letter-spacing:.07em;color:#8e9bad;grid-column:2;margin-top:3px;font-size:8px;font-style:normal;font-weight:900}.heroStop--past{opacity:.55}.heroStop--past:hover{opacity:.85}.heroStops .heroStop.heroStop--ongoing{background:#ff5a4f29;border-color:#ff5a4f80}.heroStop--ongoing em{color:#ffb8b0}.heroStop--ongoing .heroStopNumber{background:var(--coral);color:#fff}.heroStops .heroStop.heroStop--next{background:#ffca3a24;border-color:#ffca3a8c}.heroStop--next em{color:var(--yellow)}.installAppButton{z-index:70;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07101ff0;border:1px solid #ffffff29;border-radius:99px;align-items:center;gap:9px;padding:8px 14px 8px 8px;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 14px 38px #07101f4d}.installAppButton span{background:var(--yellow);width:30px;height:30px;color:var(--ink);border-radius:50%;place-items:center;font-size:19px;font-weight:900;display:grid}.installAppButton b{text-transform:uppercase;letter-spacing:.06em;font-size:10px}.installHelp{z-index:120;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#040a14bd;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.installHelp>div{background:var(--cream);text-align:center;border-radius:25px;width:min(430px,94vw);padding:38px;position:relative;box-shadow:0 35px 90px #00000073}.installHelp>div>button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:50%;width:34px;height:34px;font-size:22px;position:absolute;top:14px;right:14px}.installIcon{background:var(--yellow);width:72px;height:72px;color:var(--ink);border-radius:20px;place-items:center;margin:auto;font-weight:950;display:grid;transform:rotate(-5deg)}.installHelp h2{letter-spacing:-.04em;margin:22px 0 12px;font-size:30px}.installHelp p{color:#596373;line-height:1.55}.installHelp small{color:#8a929e;line-height:1.5}.timelineSection{background:var(--yellow);scroll-snap-type:x proximity;align-items:center;gap:38px;padding:32px clamp(20px,4vw,64px);display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000,#000 calc(100% - 32px),#0000 100%);mask-image:linear-gradient(90deg,#000,#000 calc(100% - 32px),#0000 100%)}.sectionLabel{text-transform:uppercase;letter-spacing:.13em;align-items:center;gap:12px;min-width:max-content;font-size:11px;display:flex}.sectionLabel span{border:1px solid var(--ink);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.timeline{align-items:center;min-width:max-content;display:flex}.timelineGroup{align-items:center;display:flex}.timelineItem{text-align:left;cursor:pointer;scroll-snap-align:center;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:8px;display:flex}.timelineItem:hover{background:#ffffff40}.timelineItem:active{background:#07101f29}.timelineNumber{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:9px;display:grid}.timelineItem b,.timelineItem small{display:block}.timelineItem b{text-transform:uppercase;font-size:14px}.timelineItem small{opacity:.66;font-size:10px}.timelineItem--past{opacity:.5}.timelineItem--past:hover{opacity:.8}.timelineItem--ongoing{background:#ff5a4f29}.timelineItem--ongoing:hover{background:#ff5a4f47}.timelineItem--ongoing .timelineNumber{background:var(--coral);color:#fff}.timelineItem--next{background:#07101f1a}.timelineItem--next:hover{background:#07101f2e}.timelineStatus{text-transform:uppercase;letter-spacing:.07em;opacity:.85;margin-top:3px;font-size:8px;font-weight:900;display:block}.timelineStatus--ongoing{color:#8f241c}.timelineStatus--next{color:#07101f}.timelineStatus--past{color:#07101f80}.timelineStatus--upcoming{color:#07101f99}.timelineGap{text-align:center;color:#07101f8c;text-transform:uppercase;width:105px;margin:0 8px;font-size:9px;line-height:1.3}.timelineGap--countdown{color:#8f241c;font-weight:800}.timelineGap--past{opacity:.6}.festivalSection{padding:clamp(70px,8vw,120px) clamp(20px,5vw,80px)}.sectionTitle{justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px;display:flex}.sectionTitle h2{letter-spacing:-.065em;text-transform:uppercase;margin:14px 0 0;font-size:clamp(46px,6vw,84px);line-height:.9}.sectionTitle>p{color:#687181;max-width:390px;margin:0;line-height:1.6}.festivalGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.festivalCard{background:var(--cream);text-align:left;cursor:pointer;border:0;border-radius:22px;padding:0;transition:transform .25s,box-shadow .25s;display:block;overflow:hidden;box-shadow:0 8px 30px #07101f14}.festivalCard:hover{transform:translateY(-5px);box-shadow:0 18px 45px #07101f24}.festivalCard:active{transform:translateY(-1px)scale(.985)}.cardImage{background-position:50%;background-size:cover;min-height:270px;position:relative}.cardNumber{background:var(--accent);width:38px;height:38px;color:var(--ink);border-radius:50%;place-items:center;font-size:11px;font-weight:950;display:grid;position:absolute;top:18px;left:20px}.cardBadges{flex-direction:column;align-items:flex-end;gap:6px;max-width:calc(100% - 70px);display:flex;position:absolute;top:17px;right:16px}.cardStatus{color:#fff;text-transform:uppercase;letter-spacing:.11em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;background:#07101fbf;border-radius:99px;padding:7px 10px;font-size:8px}.cardStatus.missing{background:#7b2c31}.cardTiming{color:#fff;text-transform:uppercase;letter-spacing:.1em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;text-align:right;background:#7c8492d9;border-radius:99px;padding:7px 10px;font-size:8px;font-weight:900}.cardTiming--ongoing{background:var(--coral)}.cardTiming--next{background:var(--yellow);color:var(--ink)}.cardTiming--upcoming{background:#07101fbf}.festivalCard--past .cardImage{opacity:.7;filter:grayscale(.3)}.festivalCard--past .cardBody{opacity:.8}.festivalCard--ongoing{box-shadow:0 0 0 3px #ff5a4f66,0 18px 45px #07101f24}.festivalCard--next{box-shadow:0 0 0 3px #ffca3a99,0 18px 45px #07101f24}.cardBody{border-top:4px solid var(--accent);padding:24px}.cardDate{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:950}.cardDate span{color:#969ca5;font-weight:600}.cardBody h3{letter-spacing:-.05em;margin:8px 0;font-size:clamp(25px,3vw,38px)}.cardBody p{color:#737b88;margin:0;font-size:13px}.cardFooter{text-transform:uppercase;border-top:1px solid #ddd9cf;justify-content:space-between;margin-top:23px;padding-top:15px;font-size:11px;display:flex}.cardFooter b{color:var(--accent)}.nextLeg{background:var(--yellow);text-align:center;padding:100px 30px;transition:background .2s}.nextLeg .eyebrow{color:var(--ink)}.nextLeg h2{letter-spacing:-.07em;text-transform:uppercase;margin:20px 0;font-size:clamp(50px,8vw,112px);line-height:.9}.nextLegStatus{text-transform:uppercase;letter-spacing:.1em;color:#07101fad;margin:-10px 0 0;font-size:13px;font-weight:900}.nextLegLink{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:99px;margin-top:26px;padding:15px 22px;font-weight:900;transition:transform .15s;display:inline-block}.nextLegLink:active{transform:scale(.96)}.nextLeg--ongoing{background:var(--coral)}.nextLeg--past{background:#e7e2d3}footer{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:20px;padding:32px clamp(20px,5vw,80px);font-size:10px;display:flex}.detailHero{color:#fff;border-bottom:6px solid var(--accent);background-position:50%;background-size:cover;align-items:end;min-height:440px;padding:56px clamp(24px,7vw,110px) 70px;display:flex}.detailHeroContent{max-width:790px}.detailHero h1{letter-spacing:-.075em;text-transform:uppercase;margin:18px 0 8px;font-size:clamp(55px,8vw,118px);line-height:.84}.detailMeta{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-weight:950}.detailTiming{color:var(--accent);letter-spacing:.06em;vertical-align:middle;background:#ffffff24;border-radius:99px;padding:4px 9px;font-size:10px;font-weight:900;display:inline-block}.detailTiming--past{color:#c9cfda;background:#ffffff1a}.detailTiming--ongoing{color:#fff;background:var(--coral)}.detailTiming--next{color:var(--ink);background:var(--yellow)}.detailDescription{color:#c1c8d3;max-width:690px;font-size:17px;line-height:1.6}.heroActions{gap:12px;margin-top:27px;display:flex}.primaryButton,.secondaryButton{border-radius:99px;padding:14px 20px;font-size:12px;font-weight:900}.primaryButton{background:var(--accent);color:var(--ink)}.secondaryButton{border:1px solid #ffffff59}.detailBody{max-width:1240px;margin:auto;padding:0 28px 70px}.backLink{color:#c1c8d3;letter-spacing:.06em;text-transform:uppercase;margin-bottom:22px;font-size:12px;font-weight:900;display:inline-block}.backLink:hover{color:#fff}.festivalNav{z-index:2;background:#fff;border-radius:18px;flex-wrap:wrap;gap:8px;margin-top:-28px;padding:14px;display:flex;position:relative;box-shadow:0 18px 50px #07101f1f}.festivalNav a{border:2px solid var(--ink);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;border-radius:99px;align-items:center;gap:8px;padding:10px 16px;font-size:11px;font-weight:950;display:inline-flex}.festivalNav a[aria-current=page]{background:var(--ink);color:#fff}.festivalNav+.infoStrip{margin-top:18px}.festivalNav+.placesSection,.festivalNav+.documentsSection{margin-top:28px}.usefulLinks{margin-bottom:55px}.usefulLinks h2{letter-spacing:-.05em;text-transform:uppercase;margin:7px 0 16px;font-size:34px}.usefulLinks div{flex-wrap:wrap;gap:10px;display:flex}.usefulLinks a{border:1px solid var(--ink);border-radius:99px;padding:12px 16px;font-size:12px;font-weight:900}.programEmpty a{color:var(--coral);font-weight:900}.infoStrip{z-index:2;background:#fff;border-radius:18px;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:24px;margin-top:-28px;padding:24px 28px;display:grid;position:relative;box-shadow:0 18px 50px #07101f1f}.infoStrip div{flex-direction:column;display:flex}.infoStrip small{color:#8d939d;text-transform:uppercase;letter-spacing:.13em;font-size:9px}.infoStrip b{margin-top:6px;font-size:13px}.infoStrip span{color:#838a95;font-size:10px}.infoStrip>a{color:var(--coral);font-size:11px;font-weight:900}.scheduleSection{padding:85px 0 40px}.sectionHeading{justify-content:space-between;align-items:end;gap:20px;display:flex}.sectionHeading h2{letter-spacing:-.06em;text-transform:uppercase;margin:10px 0 0;font-size:clamp(40px,5vw,70px)}.dataStatus{color:#176c53;text-transform:uppercase;background:#dceee8;border-radius:99px;padding:9px 12px;font-size:9px;font-weight:900}.dataStatus.missing{color:#8e3131;background:#f1d8d8}.dataStatus.partial{color:#765e06;background:#fff0be}.statusNote{border-left:4px solid var(--yellow);color:#5f5f54;background:#fff9dd;margin:25px 0;padding:16px 18px;font-size:13px;line-height:1.5}.daysList{gap:18px;display:grid}.programTabs{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.programTabs button{border:2px solid var(--ink);color:var(--ink);font:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:99px;align-items:center;gap:8px;padding:10px 16px;font-size:11px;font-weight:950;display:inline-flex}.programTabs button[aria-selected=true]{background:var(--ink);color:#fff}.programTabs button:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:99px}.programTabCount{background:var(--accent);color:var(--ink);border-radius:99px;padding:2px 7px;font-size:10px}.programPanel[hidden]{display:none}.programEmpty{color:#5f5f54;border-top:1px solid #d6d2c9;padding:25px 0;font-size:14px}.dayBlock{border-top:1px solid #d6d2c9;grid-template-columns:180px 1fr;gap:25px;padding:25px 0;display:grid}.dayBlock h4{text-transform:uppercase;margin:5px 0;font-size:17px}.dayBlock.currentDay{border:2px solid var(--accent);background:var(--accent);border-radius:20px;margin:0 -22px;padding:25px 22px}@supports (color:color-mix(in lab, red, red)){.dayBlock.currentDay{background:color-mix(in srgb,var(--accent) 10%,white)}}.dayBlock.currentDay{scroll-margin-top:24px;box-shadow:0 14px 34px #07101f1a}.currentDayBadge{background:var(--accent);width:max-content;color:var(--ink);letter-spacing:.1em;border-radius:99px;margin-top:10px;padding:6px 9px;font-size:9px;font-weight:950;display:block}.liveSchedule{background:var(--ink);color:#fff;border-radius:20px;margin:28px 0 35px;padding:25px;box-shadow:0 16px 38px #07101f29}.liveScheduleHeading{align-items:center;gap:13px;margin-bottom:18px;display:flex}.liveScheduleHeading h3,.liveScheduleDone h3{letter-spacing:-.045em;text-transform:uppercase;margin:5px 0 0;font-size:26px}.livePulse{background:var(--coral);border-radius:50%;flex:none;width:13px;height:13px;animation:1.8s ease-out infinite livePulse;box-shadow:0 0 0 7px #ff5a4f29}@keyframes livePulse{50%{box-shadow:0 0 0 13px #ff5a4f00}}.liveScheduleGrid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.liveScheduleGrid article{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:15px;flex-direction:column;min-height:145px;padding:19px;display:flex}.liveScheduleGrid article.active{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.liveScheduleGrid article.active{background:color-mix(in srgb,var(--accent) 18%,var(--ink))}}.liveScheduleGrid article>span{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;font-size:9px;font-weight:950}.liveScheduleGrid b{font-size:18px;line-height:1.25}.liveScheduleGrid small{color:#aeb8c7;margin-top:7px;font-size:11px}.liveScheduleGrid em{color:var(--yellow);margin-top:auto;padding-top:14px;font-size:11px;font-style:normal;font-weight:900}.liveScheduleDone{align-items:center;gap:16px;display:flex}.eventTrack,.parallelSlot{gap:10px;display:grid}.parallelSlot.simultaneous{background:#ffffff4d;border:1px dashed #c7cbd1;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.parallelSlot.simultaneous:before{content:"Одновременно";color:#8a7380;letter-spacing:.14em;text-transform:uppercase;grid-column:1/-1;font-size:8px;font-weight:900}.eventCard{background:#fff;border-left:5px solid #a0a8b5;border-radius:14px;grid-template-columns:115px 1fr;gap:15px;padding:18px;display:grid;box-shadow:0 5px 18px #07101f0d}.eventCard.workshop{border-color:#647be3}.eventCard.party{border-color:#e84a9b}.eventCard.competition{border-color:#ff5a4f}.eventCard.concert{border-color:#ffca3a}.eventCard.social{border-color:#58d8c3}.eventCard.travel{background:#f4f9fd;border-color:#2680c2}.eventTime b,.eventTime span{display:block}.eventTime b{font-size:16px}.eventTime span{color:#969ca5;font-size:11px}.eventType{color:#737b88;text-transform:uppercase;letter-spacing:.13em;font-size:8px}.eventCard h5{margin:4px 0;font-size:17px}.eventCard p{color:#737b88;margin:0;font-size:11px}.eventCard small{color:#7a818c;margin-top:7px;line-height:1.45;display:block}.eventCard em{color:#b06528;text-transform:uppercase;margin-top:8px;font-size:9px;font-style:normal;font-weight:900;display:inline-block}.documentsSection{background:#fff;border-radius:22px;margin:25px 0 55px;padding:30px;box-shadow:0 9px 30px #07101f14}.documentsHeading{grid-template-columns:1fr auto;align-items:end;gap:22px;display:grid}.documentsHeading h2{letter-spacing:-.05em;text-transform:uppercase;margin:7px 0 5px;font-size:34px}.documentsHeading p{color:#687181;max-width:650px;margin:0;font-size:12px;line-height:1.55}.documentUpload{cursor:pointer;display:inline-flex}.documentUpload input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.documentUpload span{background:var(--yellow);color:var(--ink);white-space:nowrap;border-radius:99px;padding:13px 17px;font-size:11px;font-weight:950}.documentUpload.busy{opacity:.6;cursor:wait}.documentMessage{color:#765e06;background:#fff0be;border-radius:10px;margin:18px 0 0;padding:11px 13px;font-size:11px}.documentsGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.documentsGrid article{background:var(--cream);border:1px solid #dedbd4;border-radius:14px;overflow:hidden}.documentsGrid article>a{aspect-ratio:4/3;background:#e7e9eb;display:block;overflow:hidden}.documentsGrid img{object-fit:cover;width:100%;height:100%;transition:transform .2s}.documentsGrid article>a:hover img{transform:scale(1.025)}.documentsGrid article>div{align-items:center;gap:8px;padding:10px;display:flex}.documentsGrid article>div>span{flex:1;min-width:0}.documentsGrid b,.documentsGrid small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.documentsGrid b{font-size:11px}.documentsGrid small{color:#838b97;margin-top:3px;font-size:9px}.documentsGrid button{color:#a02f36;cursor:pointer;background:#f0d9d9;border:0;border-radius:50%;flex:none;width:29px;height:29px;font-size:18px}.documentsEmpty{color:#7a818c;border:1px dashed #c9c7c0;border-radius:13px;align-items:center;gap:13px;margin-top:20px;padding:18px;display:flex}.documentsEmpty span{font-size:25px}.documentsEmpty p{margin:0;font-size:11px}.placesSection{background:#e8e3d8;border-radius:22px;margin:25px 0 55px;padding:30px}.placesHeading{grid-template-columns:1fr auto;align-items:end;gap:4px 25px;margin-bottom:20px;display:grid}.placesHeading .eyebrow{grid-column:1/-1}.placesHeading h2{letter-spacing:-.05em;text-transform:uppercase;margin:7px 0 0;font-size:34px}.placesHeading p{color:#596270;max-width:390px;margin:0;font-size:12px;line-height:1.5}.placesGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.placesGrid>a{background:radial-gradient(circle at 85% 10%,#ffca3a8c,#0000 29%),#d9e0df;border:1px solid #07101f21;border-radius:16px;flex-direction:column;min-height:195px;padding:0;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #07101f14}.placesGrid>a:before{content:"";opacity:.22;background-image:linear-gradient(#526170 1px,#0000 1px),linear-gradient(90deg,#526170 1px,#0000 1px);background-size:22px 22px;height:82px;position:absolute;top:0;left:0;right:0}.placesGrid>a:hover{transform:translateY(-3px);box-shadow:0 13px 30px #07101f29}.placesGrid>a>*{z-index:1;position:relative}.placePin{background:var(--coral);color:#fff;border:3px solid #fff;border-radius:50% 50% 50% 10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid;top:17px;left:17px;transform:rotate(-45deg);box-shadow:0 5px 15px #07101f40;position:absolute!important}.placesGrid>a>div{background:#fff;flex:1;width:100%;margin-top:82px;padding:17px 17px 8px}.placesGrid>a>strong{color:#245487;text-transform:uppercase;letter-spacing:.05em;background:#fff;width:100%;padding:7px 17px 17px;font-size:10px;display:block}.placesGrid b,.placesGrid small,.placesGrid em{display:block}.placesGrid b{color:#07101f;font-size:16px;line-height:1.2}.placesGrid small{color:#364152;margin-top:6px;font-size:11px;font-weight:650;line-height:1.35}.placesGrid em{color:#687181;margin-top:8px;font-size:10px;font-style:normal;line-height:1.4}.placesGrid>a.stayPlace{border-color:#d0a514}.placesGrid>a.stayPlace:before{background-color:#f6df85}.placesGrid>a.stayPlace .placePin{background:var(--yellow);color:var(--ink)}.highlightsSection{padding:30px 0 55px}.highlightChips{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}.highlightChips span{background:var(--ink);color:#fff;border-radius:99px;padding:10px 13px;font-size:11px}.sourceFoot{color:#818894;border-top:1px solid #d6d2c9;justify-content:space-between;padding-top:20px;font-size:10px;display:flex}.sourceFoot a{color:var(--coral);font-weight:800}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.livePulse{animation:none}.timelineSection{scroll-snap-type:none}}@media (width<=1000px){.siteHeader nav,.userBadge{display:none}.hero{grid-template-columns:1fr}.heroIntro{padding-bottom:35px}.heroStops{grid-template-columns:repeat(2,minmax(0,1fr))}.festivalGrid{grid-template-columns:1fr}.infoStrip,.placesGrid{grid-template-columns:1fr 1fr}.documentsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.dayBlock{grid-template-columns:1fr;gap:8px}}@media (width<=640px){.siteHeader{height:70px;padding:0 14px}.brand small{display:none}.brandMark{width:36px;height:36px}.loginButton,.adminLink,.ghostButton{padding:9px 11px;font-size:10px}.lockPanel{padding:40px 20px}.lockVisual{margin-bottom:12px;transform:scale(.82)}.hero{min-height:auto}.heroIntro{padding:40px 18px 26px}.hero h1{margin:14px 0;font-size:38px}.heroIntro>p{font-size:14px;line-height:1.5}.heroStats{gap:16px;margin-top:20px;padding-top:14px}.heroStats b{font-size:19px}.heroStops{grid-template-columns:1fr;gap:8px;margin-top:14px}.timelineSection{padding:22px 15px;display:block}.sectionLabel{margin-bottom:13px}.sectionTitle{flex-direction:column;align-items:start}.festivalSection{padding:70px 15px}.cardImage{min-height:215px}.nextLeg{padding:70px 16px}footer{flex-direction:column;align-items:flex-start}.detailHero{min-height:0;padding:28px 18px 54px}.detailHero h1{overflow-wrap:anywhere;font-size:44px}.festivalNav{gap:6px;padding:10px}.festivalNav a{padding:9px 12px;font-size:10px}.detailBody{padding:0 14px 50px}.infoStrip{grid-template-columns:1fr;margin-top:-20px;padding:20px}.sectionHeading{flex-direction:column;align-items:start}.liveSchedule{padding:19px 14px}.liveScheduleGrid{grid-template-columns:1fr}.dayBlock.currentDay{margin:0 -7px;padding:20px 10px}.parallelSlot.simultaneous,.eventCard{grid-template-columns:1fr}.documentsSection{padding:20px 14px}.documentsHeading{grid-template-columns:1fr}.documentUpload span{text-align:center;width:100%}.documentsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.placesSection{padding:20px 14px}.placesHeading,.placesGrid{grid-template-columns:1fr}.sourceFoot{flex-direction:column;gap:15px}.heroActions{flex-wrap:wrap}.installAppButton{padding-right:10px;bottom:10px;right:10px}.installAppButton b{display:none}.heroStops .heroStop{align-items:center;gap:10px;padding:11px 14px;display:flex}.heroStops .heroStopNumber{flex:none;width:30px;height:30px}.heroStopMeta{flex:auto;min-width:0;display:inline}.heroStopMeta small:before,.heroStopMeta em:before{content:"· "}}@media (width<=400px){.heroIntro{padding:32px 16px 22px}.hero h1{margin:12px 0;font-size:32px}.heroIntro>p{font-size:13px;line-height:1.45}.heroStats{margin-top:16px;padding-top:12px}.heroStops{margin-top:12px}}.adminPage{background:#edf0f4;min-height:100vh}.adminHeader{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex}.adminHeader>div{align-items:center;gap:8px;display:flex}.adminHeader button,.adminHeader>div a{color:#aeb8c6;cursor:pointer;background:#1b293d;border:0;border-radius:99px;padding:10px 14px;font-size:11px;font-weight:800}.adminHeader button.active{background:var(--yellow);color:var(--ink)}.adminContent{max-width:1320px;margin:auto;padding:55px 28px}.adminTitle{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.adminTitle h1{letter-spacing:-.06em;text-transform:uppercase;margin:8px 0 0;font-size:58px}.adminPrimary{cursor:pointer;background:var(--coral)!important;color:#fff!important;border:0!important;border-radius:99px!important;padding:13px 18px!important;font-weight:900!important}.adminMessage{background:#fff5ca;border-radius:10px;margin:0 0 18px;padding:12px 15px;font-size:12px}.adminFestivalList{gap:10px;display:grid}.adminFestivalList article{background:#fff;border-radius:15px;grid-template-columns:45px 86px 1fr auto auto;align-items:center;gap:18px;padding:14px;display:grid;box-shadow:0 3px 14px #07101f0d}.orderBadge{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;font-size:10px;display:grid}.adminThumb{background-position:50%;background-size:cover;border-radius:9px;width:86px;height:65px}.adminFestivalMain small{color:#89919d;font-size:9px}.adminFestivalMain h2{margin:3px 0;font-size:20px}.adminFestivalMain p{color:#7d8591;margin:0;font-size:11px}.adminActions{gap:5px;display:flex}.adminActions button,.userList button{cursor:pointer;background:#fff;border:1px solid #dfe2e7;border-radius:8px;padding:8px 10px;font-size:9px;font-weight:800}.danger{color:#bc3d45!important}.usersPanel form{gap:10px;margin-bottom:20px;display:flex}.usersPanel input{border:1px solid #d9dee6;border-radius:10px;min-width:320px;padding:13px 15px}.userList{gap:8px;display:grid}.userList article{background:#fff;border-radius:12px;grid-template-columns:1fr auto 220px;align-items:center;gap:15px;padding:17px;display:grid}.userList b,.userList small{display:block}.userList small{color:#8a929f;margin-top:3px;font-size:10px}.userList .enabled,.userList .disabled{text-transform:uppercase;border-radius:99px;padding:6px 9px;font-size:9px;font-weight:900}.userList .enabled{color:#176c53;background:#dceee8}.userList .disabled{color:#8e3131;background:#f1d8d8}.adminGate{background:var(--ink);color:#fff;place-items:center;min-height:100vh;display:grid}.adminGate>div{max-width:580px;padding:35px}.adminGate h1{letter-spacing:-.06em;text-transform:uppercase;margin:15px 0;font-size:55px;line-height:.95}.adminGate p{color:#aeb7c5;margin-bottom:30px;line-height:1.6}.adminGate a{margin-right:15px;display:inline-block}.adminModal{z-index:100;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#040a14c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.editDialog,.diffDialog{background:#f7f5ef;border-radius:20px;width:min(1180px,96vw);max-height:92vh;padding:30px;position:relative;overflow:auto;box-shadow:0 40px 100px #0006}.diffDialog{width:min(780px,96vw)}.editTop{justify-content:space-between;align-items:start;display:flex}.editTop h2,.diffDialog h2{letter-spacing:-.05em;margin:8px 0 25px;font-size:38px}.modalX{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:50%;width:38px;height:38px;font-size:23px}.formGrid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.formGrid label{color:#6e7682;text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:5px;font-size:9px;font-weight:900;display:flex}.formGrid input,.formGrid textarea,.formGrid select,.programEditor input,.programEditor select{width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border:1px solid #d5d9df;border-radius:8px;padding:10px;font-size:12px}.formGrid textarea{resize:vertical;min-height:80px}.formGrid .wide{grid-column:span 2}.formGrid .full{grid-column:1/-1}.programEditor{margin-top:28px}.programEditor>div{justify-content:space-between;align-items:center;display:flex}.programEditor h3{font-size:22px}.programEditor>div button{background:var(--yellow);cursor:pointer;border:0;border-radius:99px;padding:9px 12px;font-size:10px;font-weight:900}.programEditor article{grid-template-columns:120px 120px 90px 90px 1.5fr 120px 1fr 32px;gap:6px;margin-bottom:6px;display:grid}.programEditor article button{cursor:pointer;background:#f2dada;border:0;border-radius:7px}.editFooter{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f5eff0;border-top:1px solid #ddd;justify-content:flex-end;gap:10px;margin:25px -30px -30px;padding:18px 30px;display:flex;position:sticky;bottom:-30px}.editFooter>button:first-child{cursor:pointer;background:#fff;border:1px solid #cfd4dc;border-radius:99px;padding:12px 18px}.diffRow{background:#fff;border-radius:10px;grid-template-columns:90px 1fr 1fr auto;gap:10px;margin:10px 0;padding:13px;font-size:11px;display:grid}.diffRow span small{color:#9199a5;text-transform:uppercase;font-size:8px;display:block}.diffRow em{color:#a16721;text-transform:uppercase;font-size:8px;font-style:normal}.emptyState{color:#7b8491;background:#edf0f4;border-radius:12px;padding:25px}@media (width<=900px){.adminFestivalList article{grid-template-columns:35px 70px 1fr}.adminFestivalList .dataStatus,.adminActions{grid-column:3}.adminActions{flex-wrap:wrap}.formGrid{grid-template-columns:1fr 1fr}.programEditor article{grid-template-columns:1fr 1fr 1fr}.userList article{grid-template-columns:1fr}.adminHeader{padding:0 14px}.adminHeader .brand>span:last-child{display:none}}@media (width<=600px){.adminHeader>div button{display:none}.adminContent{padding:35px 12px}.adminTitle h1{font-size:42px}.adminFestivalList article{grid-template-columns:35px 1fr}.adminThumb{display:none}.adminFestivalMain,.adminFestivalList .dataStatus,.adminActions{grid-column:2}.formGrid{grid-template-columns:1fr}.formGrid .wide,.formGrid .full{grid-column:auto}.editDialog{padding:20px}.programEditor article{grid-template-columns:1fr 1fr}.usersPanel form{flex-direction:column}.usersPanel input{min-width:0}.editFooter{margin:20px -20px -20px}.adminTitle{flex-direction:column;align-items:start;gap:15px}}.nowSlotBadge{background:var(--accent);width:max-content;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;border-radius:99px;grid-column:1/-1;margin:0;padding:5px 9px;font-size:9px;font-weight:950;display:block}.nowSlot--current .eventCard[aria-current=time]{outline:2px solid var(--accent);outline-offset:2px}
