/* Only CMS additions. The original page CSS is preserved verbatim in each page. */
.cms-privacy-link { position:relative; z-index:1; font:12px/1.5 Arial,sans-serif; color:#fffcdc; text-align:center; padding:12px; pointer-events:auto; }
.cms-privacy-link a { text-decoration:underline; }
.cms-tour-list { position:absolute; top:301px; left:24px; width:1144px; font-size:16px; line-height:normal; pointer-events:auto; }
.cms-tour-row { position:relative; height:99px; margin-bottom:32px; scroll-margin-top:20px; }
.cms-tour-row:before { content:""; position:absolute; left:237px; top:1px; width:822px; height:calc(100% - 1px); background:rgba(255,252,220,.41); }
.cms-tour-first { height:122px; margin-bottom:36px; }
.cms-city-label { position:absolute; left:0; top:0; width:247px; height:100%; box-sizing:border-box; background:#fffcdc; border-radius:4px; display:flex; flex-direction:column; justify-content:center; }
.cms-city-details { position:absolute; left:296px; width:641px; top:14px; text-align:center; }
.cms-tour-first .cms-city-details { top:20px; }
.cms-tour-row:not(.cms-tour-first) .cms-city-details { width:600px; }
.cms-tour-soon .cms-city-details { top:30px; }
.cms-ticket { position:absolute; right:0; top:0; width:196px; height:98px; }
.cms-tour-first .cms-ticket { top:12px; }
.cms-ticket img { width:100%; height:auto; }
.cms-tour-more { font:700 20px/1.5 "Hanken Grotesk 6",Arial,sans-serif; color:#fffcdc; text-align:center; padding-top:10px; }
.cms-tour-copyright { font:14px/1.5 Arial,sans-serif; color:white; text-align:center; margin-top:18px; }
.cms-tour-empty { font:26px/1.5 Arial,sans-serif; color:#fffcdc; }
body[data-cms-page="tour"] .s112, body[data-cms-page="tour"] .s113, body[data-cms-page="tour"] .s114 { min-height:calc(816px + var(--cms-extra-rows,0)*131px); }
.cms-city-popup { box-sizing:border-box; width:900px; max-width:calc(100vw - 32px); max-height:85vh; padding:36px; border:4px solid #a17d08; border-radius:10px; background:#fffcdc; color:#111; font:20px/1.5 Arial,sans-serif; text-align:center; overflow:auto; }
.cms-city-popup::backdrop,.cms-photo-viewer::backdrop { background:rgba(0,0,0,.75); }
.cms-city-popup h2 { font:42px/1.2 "Fjalla One",Arial,sans-serif; text-transform:uppercase; }
.cms-city-popup .cms-state { font:30px/1.3 "Fjalla One",Arial,sans-serif; color:#a17d08; }
.cms-city-popup p { margin:12px 0; }
.cms-city-popup h3 { font-size:26px; margin-top:20px; }
.cms-city-popup a { text-decoration:underline; }
.cms-close { position:absolute; right:12px; top:4px; font-size:36px; padding:8px; }
.cms-popup-ticket { width:196px; max-width:100%; height:auto; }
.cms-directions { display:inline-block; background:#a17d08; color:white; padding:10px 20px; }
.cms-venue-photos { display:flex; gap:20px; margin-top:20px; }
.cms-venue-photos a { flex:1; min-width:0; }
.cms-venue-photos img { width:100%; height:auto; }
.cms-photo-viewer { background:#000; color:#fff; border:0; padding:30px; max-width:95vw; max-height:92vh; width:min(1100px,95vw); box-sizing:border-box; font:16px/1.5 Arial,sans-serif; }
.cms-photo-viewer[open] { display:flex; align-items:center; gap:10px; }
.cms-photo-viewer figure { margin:0; flex:1; min-width:0; text-align:center; }
.cms-photo-viewer img { display:block; max-width:100%; max-height:75vh; margin:auto; }
.cms-photo-viewer button { color:white; font-size:40px; padding:10px; }
.cms-photo-viewer [data-photo-close] { position:absolute; top:0; right:0; }
.cms-policy { font:20px/1.6 "Hanken Grotesk 3",Arial,sans-serif; color:#fffcdc; }
.cms-policy h1 { font:42px/1.3 "Fjalla One",Arial,sans-serif; margin-bottom:24px; }
.cms-policy h2 { font-size:26px; margin:24px 0 12px; }
.cms-policy p { margin:12px 0; }
.cms-policy a { text-decoration:underline; }
body[data-cms-page="privacy"] .s98 { height:auto; overflow:visible; }
body[data-cms-page="privacy"] .ps86 { margin-top:30px; }
@media(max-width:1199px) and (min-width:960px) {
 .cms-tour-list { top:241px; left:19px; width:915px; }
 .cms-tour-row { height:79px; margin-bottom:26px; }
 .cms-tour-first { height:98px; margin-bottom:29px; }
 .cms-city-label { width:198px; }
 .cms-tour-row:before { left:190px; width:658px; }
 .cms-city-details { left:237px; width:513px; top:11px; }
 .cms-tour-row:not(.cms-tour-first) .cms-city-details { width:480px; }
 .cms-tour-first .cms-city-details { top:16px; }
 .cms-ticket { width:157px; height:78px; }
 .cms-tour-first .cms-ticket { top:10px; }
 .cms-tour-more { font-size:16px; }
 body[data-cms-page="tour"] .s112,body[data-cms-page="tour"] .s113,body[data-cms-page="tour"] .s114 { min-height:calc(653px + var(--cms-extra-rows,0)*105px); }
}
@media(max-width:959px) and (min-width:768px) {
 .cms-tour-list { top:193px; left:15px; width:732px; }
 .cms-tour-row { height:63px; margin-bottom:21px; }
 .cms-tour-first { height:78px; margin-bottom:23px; }
 .cms-city-label { width:158px; }
 .cms-tour-row:before { left:152px; width:526px; }
 .cms-city-details { left:189px; width:410px; top:9px; }
 .cms-tour-row:not(.cms-tour-first) .cms-city-details { width:384px; }
 .cms-tour-first .cms-city-details { top:13px; }
 .cms-ticket { width:125px; height:63px; }
 .cms-tour-first .cms-ticket { top:8px; }
 .cms-tour-more { font-size:13px; }
 body[data-cms-page="tour"] .s112,body[data-cms-page="tour"] .s113,body[data-cms-page="tour"] .s114 { min-height:calc(522px + var(--cms-extra-rows,0)*84px); }
}
@media(max-width:767px) {
 .cms-tour-list { top:215px; left:3px; width:310px; }
 .cms-tour-row,.cms-tour-first { height:110px; margin-bottom:20px; }
 .cms-city-label { width:97px; height:58px; }
 .cms-tour-row:before { left:94px; width:215px; height:58px; }
 .cms-city-details,.cms-tour-first .cms-city-details,.cms-tour-row:not(.cms-tour-first) .cms-city-details { left:105px; width:197px; top:7px; }
 .cms-ticket,.cms-tour-first .cms-ticket { right:96px; top:65px; width:90px; height:45px; }
 .cms-tour-more { font-size:15px; padding-top:0; }
 .cms-tour-copyright { margin-top:165px; font-size:11px; }
 body[data-cms-page="tour"] .s112,body[data-cms-page="tour"] .s113,body[data-cms-page="tour"] .s114 { min-height:calc(850px + var(--cms-extra-rows,0)*130px); }
 body[data-cms-page="tour"] .ps109 { transform:translateY(calc(70px + var(--cms-extra-rows,0)*130px)); }
 .cms-city-popup { font-size:15px; padding:28px 16px; }
 .cms-city-popup h2 { font-size:28px; }
 .cms-city-popup h3 { font-size:20px; }
 .cms-policy { font-size:14px; }
 .cms-policy h1 { font-size:26px; }
 .cms-policy h2 { font-size:19px; }
}
