/* The characters guide visitors; the full brand logo appears in the header. */
.play-guide{position:absolute;top:-1%;left:10%;width:45%;height:auto;z-index:4;filter:drop-shadow(0 16px 20px #0007);transform:rotate(-8deg) translate(var(--move-x),var(--move-y));pointer-events:none;transition:transform .15s ease-out}
.mascot-callout{position:absolute;top:15%;right:2%;padding:12px 15px;border:1px solid #fff2a5;background:#ffdc48;color:#21132f;border-radius:12px 12px 12px 0;font-size:12px;font-weight:900;transform:rotate(4deg);box-shadow:0 8px 24px #0005;z-index:5}
.mascot-callout:before{content:'';position:absolute;left:-12px;bottom:-1px;border-top:12px solid transparent;border-bottom:0 solid transparent;border-right:15px solid #ffdc48}
.video-game-grid .game-heading{position:relative;min-height:130px;display:block;padding-right:135px;margin-bottom:12px}
.video-game-grid .game-heading h3{font-size:43px;position:relative;z-index:1;padding-top:8px}
.video-game-grid .game-heading .pill{position:absolute;bottom:5px;left:0;font-size:7px;max-width:none;transform:none;line-height:1.5;padding:6px 8px;letter-spacing:.5px}
.game-mascot{position:absolute;right:-5px;bottom:-12px;width:146px;height:146px;object-fit:contain;filter:drop-shadow(0 10px 8px #0005);pointer-events:none;transform:rotate(5deg)}
.game-mascot.banana-guide{right:3px;bottom:-14px;width:128px;height:170px;transform:rotate(8deg)}
.route-mascot{width:130px;height:130px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 8px 10px #0005);transform:rotate(-5deg);margin:-22px -8px -16px -8px}
.own-route-compact{gap:24px}.own-route-compact>div{flex:1;min-width:0}.own-route-compact h2{font-size:27px}
.footer-signature{font-size:26px;font-weight:900;letter-spacing:-1px;transform:rotate(-3deg)}.footer-signature span{color:#39c8ff}.tour-phone-header .tour-brand-name{font-size:24px;font-weight:900;letter-spacing:-1px;color:white}
.faq-mascot-heading{position:relative;padding-top:125px}.faq-ghost{position:absolute;left:-15px;top:-12px;width:205px;height:137px;object-fit:contain;filter:drop-shadow(0 12px 15px #0005);transform:rotate(-5deg);pointer-events:none}
@media(max-width:760px){.faq-mascot-heading{padding:0 125px 0 0;min-height:145px}.faq-mascot-heading h2{font-size:30px;letter-spacing:-1px}.faq-mascot-heading .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:12px}.faq-ghost{left:auto;right:-16px;top:10px;width:155px;height:120px;transform:rotate(-6deg)}}
@media(max-width:360px){.faq-mascot-heading{padding-right:105px}.faq-mascot-heading h2{font-size:27px}.faq-ghost{width:135px;right:-15px}}
@media(min-width:761px) and (max-width:1100px){.play-guide{top:8%;left:6%;width:48%}.mascot-callout{top:13%;right:0;font-size:10px;padding:10px}.own-route-compact{gap:20px}.route-mascot{width:105px;height:105px}.own-route-compact h2{font-size:23px}.own-route-compact .button{padding:14px;font-size:11px}}
@media(max-width:760px){.play-guide{top:3%;left:12%;width:48%}.mascot-callout{top:12%;right:0;font-size:9px;padding:9px 10px}.video-game-grid .game-heading{min-height:108px;padding-right:108px;margin-bottom:16px}.video-game-grid .game-heading h3{font-size:35px;padding-top:0}.video-game-grid .game-heading .pill{bottom:0;font-size:6px;padding:5px;letter-spacing:.2px}.game-mascot{right:-6px;width:119px;height:119px;bottom:-8px}.game-mascot.banana-guide{right:-8px;width:110px;height:143px;bottom:-8px}.own-route-compact{position:relative;padding:24px;display:block}.own-route-compact>div{padding-right:75px}.own-route-compact h2{font-size:26px}.own-route-compact p:not(.eyebrow){margin-right:-75px}.route-mascot{position:absolute;right:8px;top:10px;width:100px;height:100px;margin:0}.footer-signature{font-size:24px}}
@media(max-width:360px){.mascot-callout{font-size:8px;padding:8px}.play-guide{top:5%;left:6%;width:49%}.video-game-grid .game-heading .pill{max-width:140px}.game-mascot{width:100px;height:110px}.game-mascot.banana-guide{width:95px;height:130px}.own-route-compact h2{font-size:23px}.own-route-compact>div{padding-right:60px}.own-route-compact p:not(.eyebrow){margin-right:-60px}.route-mascot{width:85px;height:85px;right:5px}}
/* Keep the guide outside the miniature city, next to the action he explains. */
.play-world{inset:0 -25px 95px}
.play-guide{top:auto;bottom:14px;left:0;width:27%;max-width:170px;transform:none;z-index:6;transition:none}
.play-control{left:29%;right:6%;transform:none;bottom:0}
.play-control button{padding:12px;gap:9px}.play-control button span{font-size:12px}.play-control button img{width:35px;height:35px}
.mascot-callout{top:auto;bottom:135px;left:29%;right:auto;max-width:70%;transform:none;font-size:11px;padding:10px 13px}
.mascot-callout:before{left:-10px;bottom:0;border-right-width:12px}
.play-score{top:19%}.play-location{top:26%}
.play-bomb{opacity:0}.is-firing .play-bomb{opacity:1}
@keyframes bomb-throw{0%{left:24%;top:85%;transform:scale(.8) rotate(-14deg);opacity:1}45%{left:45%;top:22%;transform:scale(1.1) rotate(140deg);opacity:1}85%{left:63%;top:43%;transform:scale(.6) rotate(300deg);opacity:1}100%{left:63%;top:43%;transform:scale(.2) rotate(330deg);opacity:0}}
@media(min-width:761px) and (max-width:1100px){.play-world{inset:0 -20px 100px}.play-guide{bottom:35px;width:29%;left:-1%}.play-control{left:29%;right:0}.play-control button{padding:10px;gap:7px}.play-control button span{font-size:10px}.play-control small{font-size:8px}.play-control button img{width:27px;height:27px}.mascot-callout{bottom:134px;left:29%;font-size:9px;padding:9px}.play-score{top:18%}.play-location{top:27%}}
@media(max-width:760px){.play-world{inset:0 -14px 115px}.play-guide{top:auto;bottom:47px;left:0;width:30%;max-width:130px;transform:none}.play-control{left:30%;right:0;bottom:12px}.play-control button{padding:10px 8px;gap:6px}.play-control button span{font-size:10px}.play-control button img{width:26px;height:26px}.play-control button>b{font-size:18px}.play-control small{font-size:8px;line-height:1.4}.play-control p{font-size:8px;line-height:1.5;min-height:36px}.mascot-callout{top:auto;bottom:145px;left:30%;right:auto;font-size:9px;padding:9px;max-width:69%}.play-score{top:17%;right:5px}.play-location{top:24%}}
@media(max-width:360px){.play-world{inset:0 -10px 105px}.play-guide{bottom:55px;width:31%}.play-control{left:31%;right:0;bottom:15px}.play-control button span{font-size:9px}.play-control button img{width:23px;height:23px}.play-control small{font-size:7px}.mascot-callout{bottom:146px;left:31%;font-size:8px;padding:7px}.play-score{top:13%}.play-location{top:22%}}
@media(min-width:761px) and (max-width:1100px){.play-control{right:3%}}
@media(prefers-reduced-motion:reduce){.play-bomb{display:none}}
