/* Readability review: body 16px, supporting text 14px at default browser settings. */
html{font-size:100%;scroll-padding-bottom:100px}body{font-size:1rem;line-height:1.75}button,input,summary{line-height:1.5}p,li,dd,th,td{overflow-wrap:anywhere}a,button,summary,input{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #174f83!important;outline-offset:4px;box-shadow:0 0 0 2px white}input::placeholder{color:#596459;opacity:1}
body.home-variant{--muted:#4d5e50}body.ticket-variant{--muted:#4e5b63}
.home-variant :is(.quick-copy small,.section-heading p:not(.section-label),.map-zone span,.map-note,.ticket-kicker,.access-evidence){color:#4d5e50}
.home-variant :is(.ticket-description,.ticket ul,.info-card>p,.faq details p,.access-option p,.access-practical p,.access-practical li,.other-tickets small,.notice p){font-size:1rem}
.home-variant :is(.button,.quick-copy strong,.faq summary,.other-tickets strong,.search-field input,.attraction-item strong){font-size:1rem}
.home-variant :is(.ticket .fineprint,.schedule-notice,.calendar-hint,.access-small){font-size:.875rem!important}
.home-variant .hero-caption{background:#182d22eF;padding:18px;border-radius:16px;max-width:calc(100% - 32px)}
.home-variant .hero-caption :is(h1,.location-label,.text-link){color:#fff}.home-variant .hero-caption .text-link{font-size:.875rem}.home-variant .hero-actions{flex-wrap:wrap}.home-variant .hero-actions .button{font-size:1rem;min-height:48px}.hero-photo .photo-label{background:#fff}.hero-photo .photo-label small{color:#4d5e50}.hero-photo .photo-label strong{font-size:1rem;white-space:normal}
.review-bar{flex-wrap:wrap;gap:8px}.review-bar a{display:inline-flex;align-items:center;min-height:44px}.review-bar nav{flex-wrap:wrap}
:is(.view-switch button,.area-filters button,.ticket-filters button,.zoom-controls button,.calendar-heading button){min-height:44px}.zoom-controls button{min-width:44px}.calendar-heading button{min-width:44px}.view-switch button{font-size:1rem}.home-variant .map-heading{flex-wrap:wrap}.home-variant .map-zone{background:#fff;max-width:220px}.home-variant .map-zone strong{white-space:normal}.home-variant #map-help{background:#fff;color:#293c2e;line-height:1.5}.home-variant .map-note{font-size:.875rem}.home-variant .place-detail :is(p,li){font-size:1rem}.home-variant .place-detail :is(small,.place-source,.photo-source){font-size:.875rem}.home-variant .place-detail #place-close{min-width:44px;min-height:44px}
#calendar-days button{min-height:68px;gap:4px;border-color:#7b887b}#calendar-days button strong{font-size:1rem}#calendar-days button small{font-size:.75rem;letter-spacing:-.025em}#calendar-days button[aria-pressed=true]{outline:2px solid #286447;outline-offset:1px}#calendar-days button[aria-current=date] strong{text-decoration:underline;text-underline-offset:3px}.calendar-heading button{border-color:#7b887b}.calendar-week{font-size:.875rem}
.ticket-variant :is(.ticket-header>a,.product-buy>strong,.ticket-links,.product-details summary,.cg-secondary,.cg-btn,.cg-plain,.ticket-compare span,.ticket-filters button[aria-pressed=true],.review-bar a[aria-current]){color:#006482}.ticket-variant .product-buy .button{background:#006f91;border-color:#006f91;color:white}.ticket-variant .product-buy .button:hover{background:#005a76}.ticket-variant :is(.image-note,.ticket-date){color:#4e5b63}.ticket-variant :is(.product-description>p,.product-condition,.product-details>p,.cg-desc,.cg-list,.cg-method){font-size:1rem}.ticket-variant :is(.product-tag,.product-buy>small,.cg-note){font-size:.875rem}.ticket-variant .ticket-filters button[aria-pressed=true]{border:2px solid #006482}.ticket-variant .cg-btn{min-height:44px;display:flex;align-items:center}
@media(max-width:700px){
.home-variant .header{height:auto;min-height:80px;gap:10px;flex-wrap:wrap;padding:12px 18px}.home-variant .header nav>.button{font-size:1rem;min-height:48px}.home-variant .brand .facility-logo{max-width:48vw}.home-variant .hero-main{height:470px}.home-variant .hero-caption{left:16px;right:16px;bottom:18px;padding:16px}.home-variant .hero-caption h1{font-size:2rem}.home-variant .hero-caption .hero-actions{gap:10px;align-items:stretch;flex-direction:column}.home-variant .hero-caption .hero-actions a{min-height:44px;display:flex;align-items:center;justify-content:center}.home-variant .hero-side{grid-template-rows:minmax(185px,auto)}.home-variant .photo-label{top:auto;height:auto;max-height:none;padding:10px 8px}.home-variant .photo-label small{font-size:.875rem}.home-variant .quicklinks{grid-template-columns:1fr}.home-variant .quicklinks a{min-height:84px;padding:16px;border-right:0;border-bottom:1px solid #dbe2d9}.home-variant .quicklinks a:last-child{border-bottom:0}.home-variant .quick-copy strong{font-size:1rem}.home-variant .quick-copy small{font-size:.875rem}.home-variant .quick-icon{width:40px;height:40px}.home-variant .section-heading p:not(.section-label){font-size:1rem;max-width:none}.home-variant .notice{grid-template-columns:1fr}.home-variant .notice>a{grid-column:auto;font-size:1rem}.home-variant .info-card{padding:20px}.home-variant .ticket{padding:20px}.home-variant .rich-explorer .section-heading{display:block}.home-variant .view-switch{width:max-content;max-width:100%;margin-top:16px}.home-variant .search-field{min-width:0}.home-variant .search-field input{font-size:1rem}.home-variant .map-heading{padding:12px;gap:10px}.home-variant .zoom-controls{flex-wrap:wrap}.home-variant .map-zone{max-width:180px;padding:8px}.home-variant .map-zone strong{font-size:.875rem}.home-variant .map-zone span{font-size:.875rem}.home-variant .place-detail.has-place{max-height:65vh}.home-variant .mobile-nav{grid-template-columns:1fr 1fr 1.25fr}.home-variant .mobile-nav a{font-size:.875rem;padding:6px 2px;min-height:48px;text-align:center}.home-variant .faq summary{font-size:1rem;padding-right:28px}.home-variant .ticket-bottom a{overflow-wrap:anywhere}.home-variant .other-ticket-cta{white-space:normal;font-size:1rem}.ticket-variant .ticket-filter-row{flex-wrap:wrap}.ticket-variant .ticket-filters{flex-wrap:wrap}.ticket-variant .ticket-header{flex-wrap:wrap}.ticket-variant .ticket-header>a{font-size:1rem}.ticket-variant .ticket-compare>div{flex-wrap:wrap;gap:6px}.ticket-variant .product-buy>small{text-align:left}.ticket-variant .price-table{width:100%;margin-left:0;margin-right:0}.ticket-variant .price-table th,.ticket-variant .price-table td{padding:10px 6px;font-size:.875rem}.ticket-variant .ticket-links{flex-wrap:wrap;gap:16px}
}
@media(max-width:360px){#opening-calendar{padding:14px}#calendar-days{gap:2px}.home-variant .hero-side{grid-template-columns:1fr;grid-template-rows:210px 210px}.home-variant .hero-caption h1{font-size:1.75rem}.home-variant .map-zone{max-width:156px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.calendar-scroll{overflow-x:auto;padding:4px;max-width:100%;margin:0 -4px}.calendar-scroll .calendar-week,.calendar-scroll #calendar-days{min-width:calc(14rem + 24px)}.calendar-scroll:focus-visible{outline:3px solid #174f83;outline-offset:2px}.home-variant .rich-explorer .map-heading{height:auto;min-height:64px}.home-variant .rich-explorer .area-filters button{min-height:44px}.home-variant .rich-explorer .zoom-controls button{min-width:44px;min-height:44px}.home-variant .rich-explorer .map-viewport{min-height:34rem}.home-variant .map-zone{white-space:normal}.home-variant .map-zone span{white-space:normal}.home-variant .hero-caption{background:#182d22}.home-variant .mobile-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}body.home-variant{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}
.home-variant :is(#place-brief,#source-status,#photo-source,.place-source,#zone-unplaced small){color:#4d5e50}.home-variant :is(.area-filters button,.view-switch button)[aria-pressed=true]{border:2px solid #34543d;font-weight:800}.home-variant .view-switch button{border:2px solid transparent}
.home-variant .map-zone{width:200px;max-width:none}@media(max-width:700px){.home-variant .map-zone{width:180px}}@media(max-width:360px){.home-variant .map-zone{width:156px}}
.home-variant .price{flex-wrap:wrap;gap:8px}.home-variant .price strong{white-space:nowrap}.home-variant .selected-schedule>span{overflow-wrap:normal}@media(max-width:700px){.home-variant .hero-main{min-height:30rem;height:auto}.home-variant .hero-main .hero-image{height:30rem}.home-variant .hero-side{grid-auto-rows:minmax(13rem,auto)}.home-variant .hero-photo{min-height:13rem}.home-variant .hero-caption h1{overflow-wrap:anywhere}}
@media(max-width:700px){.home-variant .map-zone{width:calc((100vw - 70px)/2);max-width:180px}}
