/* Editable HTML poster. cqw scales typography with the poster, not the viewport. */
.flyer-hero{width:100%;max-width:760px;margin:0 auto;background:transparent;color:#15120c;container-type:inline-size}
.flyer-poster{position:relative;width:100%;padding-top:110.5cqw;padding-bottom:4.8cqw;font-family:"Rocko FLF Bold",Arial,sans-serif}
.flyer-smile{position:absolute;left:42.23%;top:41.63cqw;width:15.62%;height:auto;overflow:visible;color:#15120c}
.flyer-heading{position:absolute;left:5.37%;top:83.4cqw;width:89.26%;white-space:nowrap}
.flyer-heading h1{margin:0;color:#ef3e42;font-family:"Rocko Ultra FLF Bold",Arial,sans-serif;font-size:9.23cqw;font-weight:400;line-height:1.04;letter-spacing:0}
.flyer-subtitle{margin:.5cqw 0 0;color:#38699f;font-family:"Rocko Ultra FLF Bold",Arial,sans-serif;font-size:5.42cqw;line-height:1.1;letter-spacing:0}
.flyer-date{position:absolute;left:5.7%;top:100.6cqw;margin:0;color:#fff;font-family:"Rocko Ultra FLF Bold",Arial,sans-serif;font-size:6.39cqw;line-height:1.15;white-space:nowrap}
.flyer-details{position:relative;margin:0 5.7%;display:grid;grid-template-columns:1.12fr 1fr;gap:5.8%;font-size:2.66cqw;line-height:1.12;letter-spacing:0}
.flyer-address{font-style:normal;white-space:nowrap}
.flyer-hours{white-space:nowrap}
.flyer-hours p{margin:0}
.flyer-hours a{color:inherit;text-decoration:none}
.flyer-hours a:hover{text-decoration:underline}
.flyer-partners{position:relative;margin:6.3cqw 4.23% 0 4.83%;height:11.35cqw;display:flex;align-items:flex-end;justify-content:space-between;gap:5.5%}
.flyer-partners a{display:flex;width:48%;height:100%;align-items:flex-end}
.flyer-partners img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:left bottom}
.flyer-scroll{display:block;padding:18px 12px;text-align:center;color:#005eaa;font-family:"Rocko FLF Bold",Arial,sans-serif;font-size:14px}
.flyer-hero a:focus-visible{outline:3px solid #005eaa;outline-offset:4px}
@media(max-width:480px){.flyer-details{display:flex;flex-direction:column;gap:14px;font-size:clamp(12px,3.7cqw,18px);line-height:1.25}.flyer-partners{margin-top:7cqw;height:auto;align-items:center}.flyer-partners a{height:auto}.flyer-partners img{max-height:none}}

/* Keep short pages flush to the bottom without covering longer content. */
.site-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.site-main{flex:1 0 auto;min-width:0}
.site-shell>footer{flex-shrink:0}
.home-info-title{width:100%;max-width:100%;text-align:center}
@media(max-width:639px){
 .flyer-smile{left:50%;top:37cqw;width:30%;transform:translateX(-50%)}
 .home-info-title{font-size:clamp(1.3rem,6.8vw,2rem);line-height:1.15;overflow-wrap:normal}
 .home-title-brand,.home-title-place{display:block;max-width:100%;text-align:center}
 .home-title-brand{white-space:nowrap}
 .home-title-place{margin-top:.15em}
}

/* Only the right eye winks; the left eye and mouth stay still. */
.flyer-eye-open{transform-box:fill-box;transform-origin:center;animation:brick-eye-open 5s ease-in-out infinite}
.flyer-eye-wink{opacity:0;animation:brick-eye-wink 5s ease-in-out infinite}
@keyframes brick-eye-open{0%,8%,20%,100%{transform:scaleY(1);opacity:1}11%,17%{transform:scaleY(0);opacity:0}}
@keyframes brick-eye-wink{0%,8%,20%,100%{opacity:0}11%,17%{opacity:1}}
@media(prefers-reduced-motion:reduce){.flyer-eye-open{animation:none;opacity:0}.flyer-eye-wink{animation:none;opacity:1}}

/* Additional ticket notice: desktop overlay, mobile in the information flow. */
.site-main{position:relative}
.ticket-stack{position:absolute;top:24px;right:clamp(32px,4vw,96px);width:252px;z-index:2;text-align:left;font-family:"Rocko FLF Bold",Arial,sans-serif;color:#005eaa}
.ticket-stack h2{margin:0;font-family:"Rocko Ultra FLF Bold",Arial,sans-serif;font-size:22px;line-height:1.2;font-weight:400;white-space:nowrap}
.ticket-stack h2 span:first-child{color:#e30613}
.ticket-stack h2 span:last-child{color:#005eaa}
.ticket-stack-intro{margin:5px 0 23px;font-size:15px;line-height:1.4;color:#005eaa}
.ticket-brick{position:relative;display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:11px 15px 15px;margin-top:17px;border-radius:5px;box-shadow:inset 0 -5px #0002;font-size:15px;line-height:1.2}
.ticket-brick:before,.ticket-brick:after{content:"";position:absolute;top:-8px;width:35px;height:10px;border-radius:7px 7px 0 0;background:inherit}
.ticket-brick:before{left:25px}.ticket-brick:after{right:25px}
.ticket-brick strong{font-size:26px;font-weight:400;white-space:nowrap}
.ticket-brick-free{background:#fff3ca;color:#174e80}
.ticket-brick-free strong{font-size:19px}
.ticket-brick-child{margin-left:10px;margin-right:-4px;background:#c92e36;color:#fff}
.ticket-brick-adult{background:#145b97;color:#fff}
@media(max-width:767px){
 .ticket-stack{position:static;width:280px;max-width:100%;margin:30px auto 0}
 .ticket-stack h2{font-size:clamp(18px,5vw,22px);white-space:nowrap}
 .ticket-brick{font-size:14px;padding-left:12px;padding-right:12px}
 .ticket-brick-child{margin-right:0}
}

.info-card-heading{display:flex;align-items:flex-start;gap:12px}
.info-card-icon{flex:0 0 40px;width:40px;height:40px;margin:0}
.info-card-heading h2{min-width:0;margin:0;overflow-wrap:anywhere;font-size:clamp(24px,2.3vw,30px);line-height:1.15}
