/* Shared touch refinements; preserve the desktop design and existing brand art. */
@media(max-width:700px){
 .brand-page .site-header .contact-cta,.catalog-page .site-header .contact-cta{min-height:44px;display:inline-flex;align-items:center}
 .brand-page .site-header .menu-toggle,.catalog-page .site-header .menu-toggle{min-width:44px;min-height:44px;justify-content:center}
 .site-header nav a{min-height:44px;display:flex;align-items:center}
 .site-header nav{gap:6px}
 .text-link{display:inline-flex;align-items:center;min-height:44px}
 .spotlight .text-link{font-size:13px;min-height:44px}
 .catalog-search input{font-size:16px;min-height:50px}
 .catalog-gallery .catalog-results{font-size:12px;line-height:1.7}
 .catalog-gallery .game-caption h3{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
 .catalog-gallery .game-caption small{font-size:9px;letter-spacing:.07em}
 dialog:not(.site-disclaimer){border-radius:20px;max-height:calc(100dvh - 24px);overscroll-behavior:contain}
 dialog .close-dialog,#film-dialog .close-dialog{width:44px;height:44px;min-width:44px;display:grid;place-items:center;padding:0;z-index:2;border-radius:50%;line-height:1}
 dialog .close-dialog{right:8px;top:8px;background:#edf2f1ed}
 #film-dialog .close-dialog{background:transparent}
 #game-dialog{padding:26px 24px 22px}
 #game-dialog>img{width:auto;max-width:75%;max-height:30svh;object-fit:contain}
 #game-dialog .dialog-copy{padding-top:20px}
 #game-dialog .dialog-copy h2{font-size:28px}
 #game-dialog .dialog-copy>p:not(.eyebrow){font-size:14px;line-height:1.7;margin-bottom:16px}
 #game-dialog .dialog-copy .eyebrow{margin-bottom:10px}
 #game-dialog .dialog-copy .button{width:100%;justify-content:space-between}
 #privacy-dialog{padding:48px 26px 25px}
 .film-dialog-header{gap:12px}
 .film-dialog-header h2{line-height:1.4}
 .footer-links a,.footer-links button{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
 footer .footer-links{gap:4px 22px}
 .footer-bottom{flex-wrap:wrap;gap:8px}
 .disclaimer-leave{display:inline-flex;align-items:center;min-height:44px}
 .age-confirm{min-height:44px}
}
@media(hover:none){.button:hover{transform:none}.game-card:hover .game-art img{transform:none}}
@media(max-width:360px){.film-hero{min-height:700px}.hero-wordmark{top:8%;width:68%}}
/* Keep the notice introduction visible when its contents require scrolling. */
#disclaimer-title:focus{outline:none}
@media(max-height:500px) and (min-width:701px){
 #game-dialog[open]{grid-template-columns:.65fr 1.35fr;gap:24px;padding:24px;align-items:start;border-radius:20px;max-height:calc(100dvh - 24px)}
 #game-dialog>img{max-height:calc(100dvh - 80px);width:100%;object-fit:contain}
 #game-dialog .dialog-copy{padding:0 24px 0 0}
 #game-dialog .dialog-copy h2{font-size:26px;margin-bottom:12px}
 #game-dialog .dialog-copy .eyebrow{margin-bottom:10px}
 #game-dialog .dialog-copy>p:not(.eyebrow){font-size:13px;line-height:1.6;margin-bottom:12px}
 #game-dialog .close-dialog{display:grid;place-items:center;width:44px;height:44px;right:4px;top:4px;padding:0}
}

/* Readable shared privacy notice, including narrow screens and long content. */
#privacy-dialog{width:min(680px,calc(100% - 24px));max-width:680px;max-height:calc(100dvh - 24px);padding:0!important;overflow-y:auto;overscroll-behavior:contain;background:#edf2f1;color:#182e35;border:1px solid #afc5bb;border-radius:20px}
#privacy-dialog .privacy-heading{position:sticky;top:0;z-index:2;padding:25px 32px 20px;background:#edf2f1;border-bottom:1px solid #cbd7d4}
#privacy-dialog .privacy-heading .eyebrow{font-size:10px;margin:0 50px 12px 0;color:#285e55}
#privacy-dialog h2{font-size:32px;line-height:1.15;letter-spacing:-.04em;margin:0 42px 10px 0}
#privacy-title:focus{outline:none}
#privacy-dialog .notice-date{font-size:12px;color:#526b6d;margin:0}
#privacy-dialog .close-dialog{position:absolute;top:14px;right:16px;width:44px;height:44px;padding:0;display:grid;place-items:center;color:#285e55}
#privacy-dialog .privacy-copy{padding:24px 32px 30px}
#privacy-dialog .privacy-copy h3{font-size:16px;line-height:1.4;letter-spacing:-.01em;margin:28px 0 9px;color:#182e35}
#privacy-dialog .privacy-copy p{font-size:14px;line-height:1.8;color:#456068;margin:0 0 16px;overflow-wrap:anywhere}
#privacy-dialog a,.privacy-inline-link{color:#176b61;text-decoration:underline;text-underline-offset:3px}
.privacy-inline-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}
#privacy-dialog .privacy-copy a:focus-visible{outline:2px solid #17796f;outline-offset:3px}
@media(max-width:480px){#privacy-dialog .privacy-heading{padding:22px 24px 18px}#privacy-dialog .privacy-copy{padding:20px 24px 26px}#privacy-dialog h2{font-size:28px}#privacy-dialog .privacy-copy p{font-size:14px}}
