/* Simple home menu with generous game previews and a floating message bar. */
.menu-page{padding-bottom:125px}
.menu-page .nav-inner{min-height:76px}
.welcome-hero{background:#eaf7ff;border-bottom:2px solid var(--navy);overflow:hidden}
.welcome-inner{display:grid;grid-template-columns:minmax(0,1fr) 245px;align-items:center;gap:72px;padding-top:34px;padding-bottom:30px}
.welcome-copy h1{font-size:clamp(44px,5.4vw,68px);line-height:1.02;letter-spacing:0}
.welcome-copy h1 span{color:#1373c4}
.welcome-copy .eyebrow{margin-bottom:14px}
.welcome-copy>p:last-child{margin-top:18px;color:var(--muted);font-size:16px;line-height:1.65}
.welcome-mascot{position:relative;width:210px;margin:0 22px 0 0;justify-self:end;transform:rotate(3deg)}
.welcome-mascot>img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border:2px solid var(--navy);border-radius:22px;box-shadow:0 5px 0 var(--navy)}
.welcome-sticker{position:absolute;right:-25px;top:22px;transform:rotate(7deg);padding:9px 11px;background:var(--yellow);border:2px solid var(--navy);border-radius:7px;font:400 16px/1.04 var(--display);box-shadow:0 2px 0 var(--navy)}
.welcome-mascot figcaption{font-size:11px;font-weight:800;text-align:center;margin-top:13px}
.menu-page .menu-main{padding-top:35px;padding-bottom:40px}
.menu-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px}
.menu-section-heading h2{font-size:25px}
.menu-section-heading p{font-size:12px;color:var(--muted)}
.menu-page .destination{padding:28px 30px;border:2px solid var(--navy);border-radius:17px;box-shadow:0 4px 0 var(--navy)}
.menu-page .destination:hover{box-shadow:0 6px 0 var(--navy)}
.menu-page .destination-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:24px}
.menu-page .destination-shop{min-height:460px}
.menu-page .destination-about,.menu-page .destination-contact{min-height:218px}
.menu-page .destination-shop h2{font-size:44px}
.menu-page .destination h2{margin-bottom:5px}
.menu-page .destination p{font-size:15px}
.menu-page .destination-cta{margin-top:22px;padding-top:18px}
.menu-game-previews{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 30px}
.menu-game-preview{display:block;overflow:hidden;border:2px solid var(--navy);border-radius:10px;background:#fff;box-shadow:0 3px 0 var(--navy)}
.menu-game-preview img{width:100%;height:auto;aspect-ratio:25/14;object-fit:contain;object-position:center}
.menu-game-preview>span{display:block;padding:11px 12px;font-size:13px;font-weight:800;line-height:1.4}
.message-dock{position:fixed;z-index:25;left:50%;bottom:calc(17px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:560px;max-width:calc(100% - 32px)}
.message-bar{display:flex;align-items:center;gap:13px;margin:0;padding:10px 12px;background:#fff;border:2px solid var(--navy);border-radius:18px;box-shadow:0 4px 0 var(--navy),0 10px 28px #14213d20}
.message-bar:focus-within{background:#f3fbff;outline:3px solid #2bb5f64d;outline-offset:5px}
.message-bar>img{width:42px;height:42px;flex-shrink:0;object-fit:cover;border:2px solid var(--navy);border-radius:50%}
.message-bar input{width:100%;min-width:0;padding:10px 0;border:0;outline:none;background:transparent;color:var(--navy);font-size:15px;font-weight:700;line-height:1.5}
.message-bar input::placeholder{color:#52617c;opacity:1}
.message-submit{padding:9px 17px;min-height:40px;border:2px solid var(--navy);border-radius:10px;background:var(--yellow);color:var(--navy);font-size:13px;font-weight:800;box-shadow:0 2px 0 var(--navy)}
.message-submit:disabled{background:#eaf7ff;box-shadow:none;color:#64778d;border-color:#8ba1b7;cursor:default}
.message-submit:not(:disabled):hover{background:#ffe879}
.message-preview-note{width:max-content;max-width:100%;margin:9px auto 0;padding:2px 9px;border:1px solid #d7e6f0;border-radius:8px;background:#f7fafc;color:var(--muted);font-size:10px;line-height:1.5;text-align:center}
.message-preview{position:absolute;bottom:calc(100% + 12px);left:0;width:100%;padding:16px 18px;border:2px solid var(--navy);border-radius:14px;background:#eaf7ff;box-shadow:0 4px 0 var(--navy)}
.message-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px}
.message-preview-heading button{display:grid;place-items:center;min-width:32px;min-height:32px;border:1px solid var(--navy);border-radius:8px;background:#fff;color:var(--navy);font-size:21px;line-height:1}
.message-preview p{font-size:12px;line-height:1.65;color:var(--muted);margin-top:6px}
@media(min-width:1500px){.welcome-inner{padding-top:40px;padding-bottom:36px}.welcome-mascot{width:225px}.menu-page .menu-main{padding-top:30px;padding-bottom:36px}}
@media(max-width:900px){.welcome-inner{grid-template-columns:minmax(0,1fr) 205px;gap:30px}.welcome-mascot{width:180px;margin-right:15px}.welcome-sticker{font-size:14px;right:-19px;padding:8px 9px}.welcome-copy>p:last-child{font-size:14px}.desktop-break{display:none}.menu-game-previews{gap:12px}.menu-page .destination{padding:24px}.menu-game-preview>span{font-size:11px;padding:10px}}
@media(max-width:720px){.menu-page .nav-inner{min-height:0}.welcome-inner{grid-template-columns:minmax(0,1fr) 112px;gap:19px;padding-top:27px;padding-bottom:27px}.welcome-copy .eyebrow{font-size:9px;margin-bottom:12px}.welcome-copy h1{font-size:clamp(30px,6.4vw,43px)}.welcome-copy>p:last-child{font-size:12px;margin-top:14px;max-width:330px}.welcome-mascot{width:100px;margin-right:6px}.welcome-mascot>img{border-radius:14px;box-shadow:0 3px 0 var(--navy)}.welcome-sticker{font-size:10px;top:9px;right:-12px;padding:5px 6px;border-width:1.5px;border-radius:4px}.welcome-mascot figcaption{font-size:8px;line-height:1.4;margin-top:10px}.menu-page .menu-main{padding-top:24px;padding-bottom:25px}.menu-section-heading h2{font-size:23px}.menu-section-heading>p{font-size:10px;max-width:125px;text-align:right}.menu-page .destination-grid{gap:15px}.menu-page .destination-shop{min-height:0}.menu-page .destination-about,.menu-page .destination-contact{min-height:144px}.menu-game-previews{gap:12px;margin:17px 0}.menu-game-preview img{height:auto;aspect-ratio:25/14}.menu-game-preview>span{font-size:11px;padding:7px 9px}.menu-page .destination-shop h2{font-size:34px}.menu-page .destination p{font-size:13px}}
@media(max-width:400px){.welcome-inner{grid-template-columns:minmax(0,1fr) 83px;gap:12px}.welcome-copy h1{font-size:30px}.welcome-mascot{width:78px;margin-right:3px}.welcome-sticker{font-size:8px;right:-9px;top:7px;padding:4px}.welcome-mascot figcaption{font-size:7px}.welcome-copy>p:last-child{font-size:11px}.welcome-copy .eyebrow{font-size:8px;letter-spacing:.025em}.menu-game-preview>span{font-size:10px;padding:7px}.menu-section-heading>p{display:none}.menu-page .destination{padding:18px}}
@media(max-width:720px){.menu-page .destination-grid{grid-template-columns:minmax(0,1fr)}.menu-page .destination-shop{padding:25px}.menu-game-previews{margin:24px 0 28px;gap:16px}.menu-page .destination-shop h2{font-size:40px}.menu-page .destination-shop p{font-size:14px}.menu-game-preview>span{padding:11px;font-size:12px}.menu-page .destination-cta{margin-top:21px;padding-top:17px}.message-dock{bottom:calc(12px + env(safe-area-inset-bottom,0px))}.message-bar input{font-size:16px}}
@media(max-width:480px){.menu-game-previews{grid-template-columns:minmax(0,1fr);gap:18px}.menu-page .destination-shop{padding:23px}.menu-game-preview>span{font-size:13px;padding:12px}.message-bar{padding:8px 10px;gap:10px;border-radius:16px}.message-bar>img{width:35px;height:35px}.message-submit{padding:8px 12px}.message-preview{padding:14px}}
@media(prefers-reduced-motion:reduce){.welcome-mascot{transform:none}}
