/* POP overrides for the imported public reference styles.
   Keep local branding, reference-responsive catalogs and no external artwork dependencies. */
[hidden]{display:none!important}
*{box-sizing:border-box}
:root{color-scheme:dark;--display:"Anton","Archivo Black",var(--ap-font-sans);--cream:#f4e9d6;--bg-0:#0b0b0d;--bg-1:#111114;--bg-2:#17171b;--rule:rgba(255,255,255,.1);--rule-strong:rgba(255,255,255,.22)}
html{scroll-behavior:smooth;scroll-padding-top:100px}
html body{min-width:0;margin:0;background:var(--bg-0);color:var(--cream);overflow-x:clip}
button,input,textarea,select{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--ap-orange-300);outline-offset:5px}
a{text-decoration:none;color:inherit}
.pop-main{padding:0!important;min-width:0}
.pop-main .wrap,footer.site .ft-wrap{width:100%;max-width:1440px;padding-left:56px;padding-right:56px;margin-left:auto;margin-right:auto}
header.site.pop-header{position:sticky;top:0;z-index:80}
header.site.pop-header .nav-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:28px;padding:0 56px;height:88px}
header.site.pop-header .brand{justify-self:start;min-width:0;max-width:100%}
header.site.pop-header .brand img{width:255px;height:auto;max-width:100%}
header.site.pop-header .nav-links{gap:28px;margin:0;justify-self:center}
header.site.pop-header .nav-link{font-size:12px;letter-spacing:.08em;white-space:nowrap}
header.site.pop-header .nav-right{justify-self:end}
.language{border:1px solid var(--rule);background:transparent;color:var(--cream);padding:8px;border-radius:6px}
.pop-mobile-nav{display:none}
.pop-main .pop-home-hero{padding-top:66px;padding-bottom:58px}
.pop-home-hero .display{font:400 clamp(72px,9vw,134px)/.97 var(--display);margin:0;letter-spacing:-.025em}
.pop-home-hero .display .row{display:block}
.accent,.pop-main em{color:var(--ap-orange-300)}
.pop-hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.pop-hero-bottom .hero-sub{max-width:640px;margin:25px 0 0;line-height:1.7}
.pop-main .btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;height:auto;min-height:46px;padding:14px 22px;border-radius:7px;font:700 13px/1.4 var(--ap-font-sans);letter-spacing:.07em;text-transform:uppercase;white-space:normal}
.pop-main .btn-primary,dialog .btn-primary{background:var(--ap-orange-300);color:#0b0b0d;border:0}
.pop-main .btn-ghost{border:1px solid var(--rule-strong);background:transparent;color:var(--cream)}
.pop-main .pop-catalog{padding-top:12px;padding-bottom:36px}
.pop-main .chapter{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:42px 0 24px}
.pop-main .chap-eyebrow,.pop-eyebrow{font:800 11px/1 var(--ap-font-tag);letter-spacing:.24em;text-transform:uppercase;color:rgba(244,233,214,.55);margin:0 0 12px}
.pop-main .chap-title{font:400 clamp(38px,5.4vw,70px)/1.05 var(--display);text-transform:uppercase;color:var(--cream);margin:0}
.pop-section-count{font:600 16px/1 var(--ap-font-tag);color:var(--ap-orange-300);padding-bottom:6px}
.pop-main .chapter-divider{height:1px;background:linear-gradient(90deg,var(--ap-orange-300),var(--rule) 35%);margin:0}
.pop-main .pop-game-grid{display:grid;gap:18px;max-width:none;margin:28px 0 0;padding:0}
.pop-main .pop-game-grid[data-game-grid="testing"]{grid-template-columns:repeat(5,minmax(0,1fr))}
.pop-main .pop-game-grid[data-game-grid="upcoming"]{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1040px;margin-left:auto;margin-right:auto}
.pop-main .pop-game-grid[data-game-grid="originals"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.pop-main .pop-game-grid[data-game-grid="all"]{grid-template-columns:repeat(6,minmax(0,1fr))}
.pop-card{display:flex;flex-direction:column;min-width:0}
.pop-card-button{display:flex;flex-direction:column;width:100%;height:100%;border:0;padding:0;background:transparent;color:var(--cream);text-align:left;min-width:0}
.pop-art{position:relative;display:block;width:100%;aspect-ratio:1;border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#252128,#121216);border:1px solid var(--rule);isolation:isolate}
.pop-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}


.pop-original .pop-art{background:var(--ap-originals-tile)}
.pop-original .pop-art img{object-fit:contain;padding:3%}





.pop-card-info{display:flex;flex-direction:column;flex:1;width:100%;padding:16px 2px 0;gap:9px}
.pop-card-title{font:600 15px/1.55 var(--ap-font-sans);overflow-wrap:anywhere;color:var(--cream)}
.pop-card-title[lang=ja]{font-family:"Noto Sans JP",var(--ap-font-sans)}
.pop-card-meta{font:400 13px/1.6 var(--ap-font-sans);color:var(--ap-fg-3)}

.pop-upcoming .pop-art{background:repeating-linear-gradient(45deg,#1a1a20 0 12px,#131316 12px 24px)}

.originals-chapter .chap-title,.originals-chapter .pop-section-count{color:var(--ap-originals)}
.originals-chapter .chapter-divider{background:linear-gradient(90deg,var(--ap-originals),var(--rule) 35%)}
.pop-main .page-intro{padding-top:50px;padding-bottom:30px}
.pop-main .page-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}
.pop-main .page-title{font:400 clamp(62px,9vw,130px)/1 var(--display);text-transform:uppercase;margin:0}
.pop-main .page-sub{max-width:520px;font-size:16px;line-height:1.8;padding:0;margin:0;color:var(--ap-fg-3)}
.pop-main .crumbs{margin-bottom:32px;display:flex;align-items:center;gap:12px;font-size:12px;color:var(--ap-fg-3)}
.pop-all{margin-top:55px;padding:65px 0;border-top:1px solid var(--rule);background:linear-gradient(180deg,#151518,#0b0b0d)}
.pop-results,.pop-empty{font-size:14px;line-height:1.6;color:var(--ap-fg-3);margin-top:26px}
.pop-home-about{padding-top:70px;padding-bottom:70px;margin-top:40px;border-top:1px solid var(--rule)}
.pop-home-about h2,.pop-closing h2{font:700 clamp(38px,5vw,68px)/1.15 var(--ap-font-sans);letter-spacing:-.035em;margin:0 0 24px}
.pop-home-about>p:not(.pop-eyebrow){max-width:640px;font-size:17px;line-height:1.8;color:var(--ap-fg-3);margin-bottom:26px}
.pop-main .pop-closing{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:62px;padding-bottom:64px;border-top:1px solid var(--rule);margin-top:40px}
.pop-closing h2{margin:0}
.pop-main .a-hero{margin-top:0;padding:74px 0;background:radial-gradient(ellipse at 80% 0,rgba(229,119,63,.14),transparent 60%),#0b0b0d}
.pop-main .a-hero .wrap{grid-template-columns:1.25fr .75fr;gap:50px;align-items:center}
.pop-main .hero-display{font:800 italic clamp(48px,7.2vw,104px)/1.07 var(--ap-font-sans);margin:0 0 25px;letter-spacing:-.055em}
.pop-main .hero-lede{font-size:17px;line-height:1.8;color:var(--ap-fg-3);margin-bottom:27px}
.pop-brand-panel{min-height:290px;background:linear-gradient(140deg,#212024,#141416);border:1px solid var(--rule);border-radius:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:30px;padding:35px}
.pop-brand-panel img{width:100%;max-width:350px;height:auto}
.pop-brand-panel span{font:600 12px/1.8 var(--ap-font-tag);letter-spacing:.12em;color:var(--ap-fg-3)}
.pop-main .pop-story{padding-top:68px;padding-bottom:40px}
.pop-main .pop-story h2{font-size:56px;line-height:1.15;margin:0 0 24px;color:var(--cream)}
.pop-story>p:not(.pop-eyebrow){max-width:760px;line-height:1.8;font-size:17px;color:var(--ap-fg-3)}
.pop-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:20px;padding-bottom:65px}
.pop-pillars article{border:1px solid var(--rule);border-radius:12px;background:#151518;padding:28px}
.pop-pillars article>span{font:400 40px/1 var(--display);color:var(--ap-orange-300)}
.pop-pillars h3{font-size:22px;line-height:1.3;color:var(--cream);margin:24px 0 12px}
.pop-pillars p{font-size:15px;line-height:1.8;color:var(--ap-fg-3);margin:0}
.pop-company-pending{padding-top:40px;padding-bottom:40px;border-top:1px solid var(--rule)}
.pop-company-pending h2{font-size:40px;margin:0 0 20px}
.pop-company-pending>p:last-child{color:var(--ap-fg-3);font-size:16px;line-height:1.8}
.pop-main .c-hero{margin-top:0;padding:80px 0 60px}
.pop-main .c-headline{font-size:64px;line-height:1.15;margin:0 0 24px}
.pop-main .c-subhead{font-size:17px;line-height:1.8}
.pop-main .c-cards-section{padding-top:35px;padding-bottom:45px}
.pop-main .c-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pop-main .c-card{padding:28px}
.pop-main .c-card h2{font-size:23px;margin:0;line-height:1.35}
.pop-main .c-card p{font-size:15px;line-height:1.8}
.pop-main .c-card-ic{font-size:26px}
.pop-contact-pending{color:var(--ap-orange-300);font-size:13px;line-height:1.6}
.pop-main .c-form-section{padding-top:35px;padding-bottom:50px}
.pop-main .c-form-head p{line-height:1.8}
.pop-main .c-form-card{max-width:850px}
.pop-main .c-form-card fieldset{margin:0;padding:0;border:0;min-width:0}
.pop-main .c-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pop-main .c-field{display:flex;flex-direction:column;gap:10px;min-width:0}
.pop-main .c-field.full{grid-column:1/-1}
.pop-main .c-field label{font-size:12px;color:var(--ap-fg-3)}
.pop-main .c-field input,.pop-main .c-field textarea{width:100%;border:1px solid var(--rule-strong);border-radius:7px;background:#111114;color:var(--cream);padding:14px;font-size:15px;opacity:.65}
.pop-submit{margin-top:24px}
.pop-contact-bottom{padding-top:32px;padding-bottom:65px;border-top:1px solid var(--rule)}
.pop-contact-bottom h2{font-size:30px;line-height:1.3}
.pop-contact-bottom p{line-height:1.8;color:var(--ap-fg-3)}
.pop-footer-bottom{display:flex;justify-content:space-between;gap:22px;border-top:1px solid var(--rule);padding:25px 0 30px;font-size:12px;color:var(--ap-fg-3)}
dialog{width:min(440px,calc(100% - 36px));padding:34px;border:1px solid var(--rule-strong);border-radius:15px;background:#18181b;color:var(--cream)}
dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.dialog-close{position:absolute;top:8px;right:12px;background:none;border:0;color:var(--cream);font-size:30px}
dialog h2{font-size:27px;line-height:1.3;margin:20px 0}
dialog p{font-size:15px;line-height:1.8;color:var(--ap-fg-3)}
dialog .btn{padding:13px 22px;border-radius:6px;font-size:14px}
@media(max-width:1100px){
.pop-main .wrap,footer.site .ft-wrap{padding-left:32px;padding-right:32px}
header.site.pop-header .nav-row{padding:0 32px;gap:20px}
header.site.pop-header .nav-links{gap:20px}
header.site.pop-header .brand img{width:220px}
.pop-main .a-hero .wrap{gap:30px}
.pop-brand-panel{padding:24px}
}
@media(max-width:860px){
html{scrollbar-gutter:auto;scroll-padding-top:86px}
.pop-main .wrap,footer.site .ft-wrap{padding-left:18px;padding-right:18px}
header.site.pop-header .nav-row{display:flex;justify-content:space-between;height:74px;padding:0 18px;gap:12px}
header.site.pop-header .brand img{width:clamp(155px,48vw,215px)}
header.site.pop-header .nav-links{display:none}
header.site.pop-header .cta-pill{font-size:11px;letter-spacing:.03em;height:36px;padding:0 13px}
.pop-mobile-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;background:#111114f5;backdrop-filter:blur(15px);border-top:1px solid var(--rule);z-index:90;padding:9px 8px calc(9px + env(safe-area-inset-bottom))}
.pop-mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:44px;color:var(--ap-fg-3);font-size:11px}
.pop-mobile-nav svg{width:21px;height:21px}
.pop-mobile-nav a.active{color:var(--ap-orange-300)}
.pop-main .pop-home-hero{padding-top:35px;padding-bottom:24px}
.pop-home-hero .display{font-size:clamp(42px,9.4vw,72px);letter-spacing:-.02em}
.pop-hero-bottom{display:block}
.pop-hero-bottom .hero-sub{font-size:15px;margin:20px 0}
.pop-main .hero-eyebrow{font-size:10px;margin-bottom:18px}
.pop-main .chapter{padding-top:30px;padding-bottom:18px;gap:12px}
.pop-main .chap-title{font-size:clamp(29px,7vw,46px)}
.pop-main .chap-eyebrow,.pop-main .pop-eyebrow{font-size:10px;letter-spacing:.22em;margin-bottom:9px}
.pop-main .pop-catalog{padding-top:0;padding-bottom:24px}
.pop-main .pop-game-grid{gap:12px;margin-top:12px}
.pop-art{border-radius:7px}



.pop-card-info{padding-top:9px;gap:7px}
.pop-card-title{font-size:14px;line-height:1.6}
.pop-card-meta{font-size:11px;line-height:1.5}


.pop-main .page-intro{padding-top:32px;padding-bottom:16px}
.pop-main .page-head{display:block}
.pop-main .page-title{font-size:64px}
.pop-main .page-sub{font-size:15px;line-height:1.7;margin-top:20px}
.pop-main .crumbs{margin-bottom:22px;font-size:11px}
.pop-all{padding:38px 0;margin-top:30px}
.pop-results{font-size:12px}
.pop-main .pop-home-about{padding-top:38px;padding-bottom:38px;margin-top:24px}
.pop-home-about h2,.pop-closing h2{font-size:36px}
.pop-home-about>p:not(.pop-eyebrow){font-size:15px}
.pop-main .pop-closing{flex-direction:column;align-items:flex-start;padding-top:38px;padding-bottom:40px;gap:26px;margin-top:25px}
.pop-main .a-hero{padding:36px 0}
.pop-main .a-hero .wrap{display:grid;grid-template-columns:1fr;gap:28px}
.pop-main .hero-display{font-size:46px;letter-spacing:-.04em}
.pop-main .hero-lede{font-size:15px;line-height:1.8}
.pop-brand-panel{min-height:190px;padding:32px}
.pop-main .pop-story{padding-top:38px;padding-bottom:20px}
.pop-main .pop-story h2{font-size:40px}
.pop-story>p:not(.pop-eyebrow){font-size:15px}
.pop-pillars{grid-template-columns:1fr;gap:14px;padding-bottom:38px}
.pop-pillars article{padding:24px}
.pop-company-pending{padding-top:30px;padding-bottom:25px}
.pop-company-pending h2{font-size:32px}
.pop-main .c-hero{padding:44px 0 30px}
.pop-main .c-headline{font-size:40px}
.pop-main .c-subhead{font-size:15px}
.pop-main .c-cards-section{padding-top:22px;padding-bottom:25px}
.pop-main .c-cards{grid-template-columns:1fr;gap:15px}
.pop-main .c-card{padding:24px}
.pop-main .c-form-section{padding-top:25px;padding-bottom:35px}
.pop-main .c-form-card{padding:22px}
.pop-main .c-fields{grid-template-columns:1fr;gap:18px}
.pop-main .c-form-head h2{font-size:28px}
.pop-contact-bottom h2{font-size:25px}
.pop-footer-bottom{flex-direction:column;gap:12px;padding-bottom:15px;font-size:11px}
}
@media(max-width:350px){

.pop-card-title{font-size:13px}
header.site.pop-header .nav-row{padding-left:12px;padding-right:12px}
.pop-main .wrap,footer.site .ft-wrap{padding-left:14px;padding-right:14px}
.pop-main .page-title{font-size:56px}
.pop-main .hero-display{font-size:40px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Match the source catalog breakpoints while keeping every supplied title visible. */
@media(max-width:900px){
.pop-main .pop-game-grid[data-game-grid="testing"],.pop-main .pop-game-grid[data-game-grid="all"]{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px}
.home-page .pop-game-grid[data-game-grid="testing"],.pop-main .pop-game-grid[data-game-grid="upcoming"],.pop-main .pop-game-grid[data-game-grid="originals"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px}
}
@media(max-width:860px){
.pop-main .pop-game-grid[data-game-grid="testing"],.pop-main .pop-game-grid[data-game-grid="all"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
.pop-main .pop-game-grid[data-game-grid="originals"]{gap:12px}
}
@media(max-width:600px){.pop-main .pop-game-grid[data-game-grid="upcoming"]{gap:10px}}

.pop-home-hero .display{overflow-wrap:normal}
.pop-main .btn-primary:disabled{background:#3a2a1f;color:#ad9d91;box-shadow:none}

/* Local game artwork inside the reference site's hero and gallery components. */
.pop-promotion{margin-top:30px}
.pop-promotion .reel-track{transition:transform .9s var(--ap-ease,cubic-bezier(.22,.61,.36,1))}
.pop-promotion .reel-cell .art{background-size:auto 100%;background-position:right center;background-repeat:no-repeat}
.pop-promotion .reel-cell .art.sea-art{background-size:cover}
.pop-promotion .reel-cell .reel-meta{grid-column:1/-1;max-width:700px}
.pop-promotion .reel-cell h2{font:800 32px/1.4 var(--ap-font-sans);margin:14px 0 8px;color:white;overflow-wrap:anywhere}
.pop-promotion .hero-controls{display:flex;align-items:center;gap:6px;margin-left:auto}
.pop-promotion .hero-controls>button{height:34px;min-width:34px;border:1px solid var(--rule);border-radius:5px;background:var(--bg-2);color:var(--cream);font:600 11px/1 var(--ap-font-sans);padding:0 9px}
.pop-promotion .hero-dots{gap:6px}
.pop-promotion .hero-dots button{width:22px;height:34px;border:0;background:transparent;padding:0;display:flex;align-items:center;cursor:pointer;transition:width .35s var(--ap-ease)}
.pop-promotion .hero-dots button::after{content:"";height:3px;width:100%;border-radius:2px;background:rgba(255,255,255,.22)}
.pop-promotion .hero-dots button.active{width:38px}
.pop-promotion .hero-dots button.active::after{background:var(--ap-orange-300)}
.pop-promotion .hero-nav .pin{letter-spacing:.08em}
.pop-promotion .hero-nav .pin .idx{letter-spacing:.08em}
.pop-main .pop-game-feature{display:block;width:100%;padding:0;text-align:left;color:inherit;font:inherit}
.pop-game-feature .vh-title{font-family:var(--ap-font-sans);line-height:1.3}
.pop-game-feature .vh-play{font-size:30px;color:white}
@media(max-width:860px){
 .pop-promotion{margin-top:22px}
 .pop-promotion .reel-cell .art{background-size:cover}
 .pop-promotion .reel-cell::after{background:linear-gradient(90deg,rgba(11,11,13,.77),rgba(11,11,13,.08)),linear-gradient(0deg,rgba(11,11,13,.8),transparent 90%)}
 .pop-promotion .reel-cell h2{font-size:21px;margin:8px 0}
 .pop-promotion .reel-meta{padding:0 16px 16px}
 .pop-promotion .reel-cell .ms{margin:0;max-width:240px}
 .pop-promotion .hero-nav{gap:7px;flex-wrap:wrap}
 .pop-promotion .hero-nav .pin .ttl{display:inline}
 .pop-promotion .hero-controls{gap:4px}
 .pop-game-feature .vh-title{font-size:21px}
 .pop-game-feature .vh-play{font-size:20px}
 .pop-game-feature .vh-content{padding:0 16px 14px}
}

.pop-game-feature .vh-title,.pop-game-feature .vh-sub{display:block}

/* Larger New Games and compact Upcoming Games on the catalog page. */
.pop-main.games-page .pop-game-grid[data-game-grid="testing"]{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1040px;margin-left:auto;margin-right:auto}
.pop-main.games-page .pop-game-grid[data-game-grid="upcoming"]{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;margin-left:0;margin-right:0}
.pop-has-cover .pop-art{background:#101014}

@media(max-width:900px){
 .pop-main.games-page .pop-game-grid[data-game-grid="testing"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px}
 .pop-main.games-page .pop-game-grid[data-game-grid="upcoming"]{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px}
}
@media(max-width:860px){
 .pop-main.games-page .pop-game-grid[data-game-grid="upcoming"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}

}
@media(max-width:600px){
 .pop-main.games-page .pop-game-grid[data-game-grid="testing"]{gap:10px}
}

.pop-promotion .promo-video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.pop-promotion .sea-art .promo-video{object-fit:cover}
.pop-feature-media{position:relative;margin-top:40px}
.pop-feature-media .video-hero{margin-top:0}
.pop-game-feature .promo-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pop-video-toggle{position:absolute;top:16px;right:16px;z-index:6;min-height:36px;padding:8px 13px;border:1px solid var(--rule-strong);border-radius:6px;background:#0b0b0dcc;color:var(--cream);font:600 12px/1.3 var(--ap-font-sans)}
.pop-game-feature .vh-thumb::after{z-index:1}
@media(max-width:860px){
 .pop-feature-media{margin-top:20px}
 .pop-promotion .promo-video{object-fit:cover;object-position:center}
 .pop-video-toggle{top:12px;right:12px;min-height:32px;font-size:11px}
}

/* Reference-style cover interaction: a dim overlay and a restrained image zoom. */
.pop-card-button{height:auto;flex:none;border-radius:14px;position:relative;isolation:isolate}
.pop-card-button .pop-art{transition:transform .28s var(--ap-ease,ease),box-shadow .28s var(--ap-ease,ease)}
.pop-card-button .pop-art img{filter:contrast(.92) brightness(.96) saturate(.95);transform:scale(1);transition:transform .4s var(--ap-ease,ease),filter .3s var(--ap-ease,ease)}
.pop-cover-overlay{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.53);opacity:0;transition:opacity .25s var(--ap-ease,ease);pointer-events:none}
.pop-cover-overlay span{display:inline-flex;align-items:center;justify-content:center;width:56%;min-width:min(130px,calc(100% - 20px));height:40px;padding:0 12px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(11,11,13,.6);color:var(--cream);font:800 11px/1 var(--ap-font-sans);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:border-color .2s var(--ap-ease,ease),color .2s var(--ap-ease,ease)}
.pop-card-button:focus-visible .pop-cover-overlay{opacity:1}
.pop-card-button:focus-visible .pop-art{transform:translateY(-4px);box-shadow:0 20px 44px -18px rgba(0,0,0,.75)}
.pop-card-button:focus-visible .pop-art img{transform:scale(1.04);filter:contrast(.92) brightness(.96) saturate(.85)}
@media(hover:hover){
 .pop-card-button:hover .pop-cover-overlay{opacity:1}
 .pop-card-button:hover .pop-art{transform:translateY(-4px);box-shadow:0 20px 44px -18px rgba(0,0,0,.75)}
 .pop-card-button:hover .pop-art img{transform:scale(1.04);filter:contrast(.92) brightness(.96) saturate(.85)}
}
@media(max-width:860px){.pop-card-button{border-radius:7px}}
@media(prefers-reduced-motion:reduce){
 .pop-card-button .pop-art,.pop-card-button .pop-art img{transition:none;transform:none!important}
}

/* Full-width motion, with a lighter desktop scrim instead of a dark empty half. */
.pop-promotion .reel-cell .art,.pop-promotion .reel-cell.is-current .art{background-size:cover;background-position:center;transform:none;transition:none}
@media(min-width:861px){.pop-promotion .reel-cell::after{background:linear-gradient(90deg,rgba(11,11,13,.62) 0%,rgba(11,11,13,.35) 40%,rgba(11,11,13,.05) 75%),linear-gradient(0deg,rgba(11,11,13,.65),rgba(11,11,13,0) 75%)}}

/* Unified Home and dedicated collections. */
.pop-main.home-page .pop-game-grid.pop-preview-row{grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-auto-flow:column;grid-template-rows:auto;max-width:none;margin-left:0;margin-right:0;gap:18px}
.collection-page{padding-bottom:60px}
.pop-promotion .hokuto10-art .promo-video{object-position:50% 15%}
@media(max-width:900px){
 .pop-main.home-page .pop-game-grid.pop-preview-row{grid-template-columns:none!important;grid-auto-columns:calc((100% - 28px)/3);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-top:4px;padding-bottom:16px}
 .pop-preview-row .pop-card{scroll-snap-align:start}
}
@media(max-width:600px){
 .pop-main.home-page .pop-game-grid.pop-preview-row{grid-auto-columns:calc((100% - 12px)/2);gap:12px}
 .collection-page .page-title{font-size:clamp(42px,11vw,64px)}
}

/* Lift the artwork itself and keep shading close to the caption. */
.pop-promotion .reel-cell .art{filter:brightness(1.16) saturate(1.13) contrast(1.02)}
.pop-promotion .reel-cell .art.sea-art{filter:brightness(1.1) saturate(1.12)}
.pop-promotion .reel-cell .art.hokuto10-art{filter:brightness(1.12) saturate(1.08)}
.pop-promotion .reel-cell::after{background:linear-gradient(90deg,rgba(8,12,24,.36),rgba(8,12,24,.1) 44%,transparent 78%),linear-gradient(0deg,rgba(8,12,24,.48),transparent 65%)}
.pop-promotion .reel-meta h2{text-shadow:0 2px 12px rgba(0,0,0,.75)}
.pop-promotion .reel-cell .ms{color:#f1eef5;text-shadow:0 1px 6px #090d1a}

@media(max-width:860px){
 body[data-page="home"]::before{animation-duration:30s;opacity:.85}
 body[data-page="home"]::after{background-size:390px 420px,510px 540px,600px 620px}
 .pop-promotion .reel-cell::after{background:linear-gradient(90deg,rgba(8,12,24,.22),transparent 78%),linear-gradient(0deg,rgba(8,12,24,.57),rgba(8,12,24,.06) 70%,transparent)}
}
@media(prefers-reduced-motion:reduce){
 body[data-page="home"]::before,body[data-page="home"]::after{animation:none!important}
}

/* Neutral black chrome, matching the reference page. */
header.site.pop-header{background:#0b0b0d;border-bottom:1px solid var(--rule);box-shadow:none}
header.site.pop-header .nav-row{background:transparent}
.pop-all,.home-page .pop-all{background:#111114}
.pop-main .a-hero{background:#0b0b0d}
@media(max-width:860px){.pop-mobile-nav{background:#111114;border-top:1px solid var(--rule);backdrop-filter:none}}

/* Uniform 16:9 banners: scale proportionally to fill, with minimal edge cropping. */
.pop-promotion .promo-reel--hero{height:auto;aspect-ratio:16/9;max-height:none}
.pop-promotion .reel-cell .art.official-art{background:none;filter:none;overflow:hidden}
.promo-static-picture{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:hidden;pointer-events:none}
.promo-static-picture{z-index:1;transform:none}
.pop-promotion .promo-official::after{background:none;pointer-events:none}
.promo-game-link{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer;appearance:none}
.promo-game-link:focus-visible{outline:3px solid #b1edff;outline-offset:-6px}
@media(max-width:860px){
 .pop-promotion .promo-reel--hero{height:auto;aspect-ratio:16/9;max-height:none}
}

/* Exclude the bottom platform strip from the official Hokuto and Gundam covers. */
.pop-platform-free .pop-art img{height:120%;object-fit:cover;object-position:50% 0;transform-origin:50% 83.333333%}


/* Reuse the reference home chapter action, including its mobile arrow. */
.pop-catalog .pop-see-all{flex-shrink:0;white-space:nowrap}

/* Keep reference-style indicators visible; reveal auxiliary controls for keyboard users. */
.pop-promotion .hero-controls>.promo-keyboard-control:not(:focus-visible){position:absolute;width:1px;height:1px;min-width:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pop-promotion .hero-controls button:focus-visible{outline:2px solid var(--ap-orange-300);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.pop-promotion .hero-dots button{transition:none}}

/* Phone collection actions follow the reference Games page. */
.pop-mobile-originals-cta{display:none}
@media(max-width:860px){
 .originals-chapter .chapter .pop-see-all{display:none}
 .pop-mobile-originals-cta{display:flex;margin-top:14px}
 .pop-main .pop-mobile-originals-cta .btn{width:100%;height:44px;min-height:0;padding:0 22px;border-radius:8px;gap:8px;font:800 12px/1 var(--ap-font-sans);letter-spacing:.16em;white-space:nowrap;color:var(--cream);background:transparent;border:1px solid var(--rule-strong)}
 .pop-main .pop-mobile-originals-cta .btn:hover{border-color:var(--ap-orange-300);color:var(--ap-orange-300)}
}

/* Keep the phone catalogue heading and filters aligned to the content gutter. */
@media(max-width:860px){
}
/* Reference footer structure, with the local brand and destinations. */
footer.site.pop-footer{background:#111114}
footer.site .ft-brand img{max-width:100%}
footer.site .ft-col h5{position:relative}
footer.site .ft-col h5 button{display:block;width:100%;border:0;background:none;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left}
footer.site .ft-col h5 button:focus-visible,footer.site .footer-text-action:focus-visible{outline:2px solid var(--ap-orange-300);outline-offset:4px}
footer.site .footer-text-action{padding:0;border:0;background:none;font:500 14px/1 var(--ap-font-sans);color:rgba(244,233,214,.65);cursor:pointer;text-align:left;transition:color .2s var(--ap-ease,ease)}
footer.site .footer-text-action:hover{color:var(--ap-orange-300)}
@media(max-width:860px){
 footer.site.pop-footer{padding-bottom:77px}
 footer.site .ft-col h5 button{cursor:pointer}
 footer.site .ft-col h5::after{position:absolute;right:0;pointer-events:none}
 footer.site .footer-text-action{font-size:13px}
}


/* Reference Fun Play: the label and outline turn orange over the action. */
@media(hover:hover){
 .pop-cover-overlay span{pointer-events:auto}
 .pop-cover-overlay span:hover{border-color:var(--ap-orange-300);color:var(--ap-orange-300)}
}
.pop-card-button:focus-visible .pop-cover-overlay span{border-color:var(--ap-orange-300);color:var(--ap-orange-300)}

/* All Games uses the reference page typography and controls; Category is the only filter. */
.pop-all .va-title h2{margin:0;font-family:var(--display);font-size:72px;line-height:.88;letter-spacing:-.01em;text-transform:uppercase;color:var(--cream)}
.pop-all .va-title h2 .accent{color:var(--ap-orange-300)}
.pop-search-filter{min-width:280px}
.pop-all .va-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4E9D6' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px 14px}
@media(max-width:900px){.pop-all .va-title h2{font-size:clamp(44px,13vw,64px)}}
@media(max-width:860px){
 .pop-all .va-title h2{font-size:30px}
 .pop-all .va-head{align-items:stretch}
 .pop-all .va-title{justify-content:flex-start;text-align:left}
}

@media(prefers-reduced-motion:reduce){.pop-promotion .hero-eyebrow .live-now i{animation:none}}

/* Transparent brand artwork only: no panel, border, blur or background. */
.pop-promotion .promo-brand-logo{position:absolute;top:18px;left:18px;z-index:3;display:block;width:180px;height:auto;max-width:45%;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;filter:none;pointer-events:none}
@media(max-width:860px){.pop-promotion .promo-brand-logo{top:12px;left:12px;width:128px}}

/* Home introduction remains a single left-aligned line above the banner. */
.home-page .page-intro .page-head{display:block}

/* Home studio banner, FAQ and closing invitation follow the reference layout. */
.pop-studio-banner{background-image:url(../assets/official/hokuto11-banner.jpg)}
.pop-studio-banner h2{font-size:clamp(46px,8.89vw,128px)}
.pop-home-faq .faq-grid{width:100%}
.pop-home-faq .faq-left>.chap-eyebrow{margin:0 0 18px;font:700 11px/1 var(--ap-font-tag);letter-spacing:.24em}
.pop-home-faq .faq-left a{color:var(--ap-orange-300);text-decoration:underline;text-underline-offset:3px}
.pop-home-faq .faq-item h3{margin:0}
.pop-home-faq .faq-q{width:100%;padding:0;border:0;background:none;text-align:left}
.pop-home-faq .faq-item{cursor:default}
.pop-home-outro h2{font-size:clamp(78px,18.6vw,268px)}
.pop-studio-banner .btn,.pop-home-outro .btn{height:52px;min-height:0;padding:0 22px;border-radius:6px;font:800 13px/1 var(--ap-font-sans);letter-spacing:.14em;gap:10px;white-space:nowrap}
@media(max-width:860px){
 .pop-studio-banner,.pop-home-outro{display:block;margin-top:34px;padding:42px 0}
 .pop-studio-banner .inner{grid-template-columns:1fr;gap:22px}
 .pop-studio-banner .btn{justify-self:start}
 .pop-studio-banner p,.pop-home-outro p{font-size:13px;line-height:1.6}
 .pop-studio-banner h2{font-size:clamp(38px,8vw,62px)}
 .pop-home-outro h2{font-size:clamp(68px,16vw,132px)}
 .pop-home-outro .btn{height:44px;font-size:11px}
 .pop-home-faq+.pop-home-outro{padding-top:42px;margin-top:0}
}

/* Tighten only the gap from the banner controls to New Games by about one third. */
.home-page>.page-intro{padding-bottom:20px}
.home-page>#new-games{padding-top:8px}
.home-page>#new-games>.chapter{padding-top:28px}
@media(max-width:860px){
 .home-page>.page-intro{padding-bottom:10px}
 .home-page>#new-games{padding-top:0}
 .home-page>#new-games>.chapter{padding-top:20px}
}

/* Reference game-section eyebrow: compact tag font and orange marker. */
.pop-catalog .chap-eyebrow,.collection-page .chap-eyebrow{display:inline-flex;align-items:center;gap:10px}
.pop-catalog .chap-eyebrow::before,.collection-page .chap-eyebrow::before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--ap-orange-300)}

/* Reduce the gaps between Home game collections by approximately one third. */
.home-page>.pop-catalog{padding-bottom:24px}
.home-page>#upcoming,.home-page>#originals{padding-top:8px}
.home-page>#upcoming>.chapter,.home-page>#originals>.chapter{padding-top:28px}
.home-page>.pop-all{margin-top:37px}
@media(max-width:860px){
 .home-page>.pop-catalog{padding-bottom:16px}
 .home-page>#upcoming,.home-page>#originals{padding-top:0}
 .home-page>#upcoming>.chapter,.home-page>#originals>.chapter{padding-top:18px}
 .home-page>.pop-all{margin-top:20px}
}

/* Show every New Games card on mobile without horizontal scrolling. */
@media(max-width:900px){
 .pop-main.home-page #new-games .pop-game-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row;grid-auto-columns:auto;grid-template-rows:none;overflow:visible;scroll-snap-type:none;padding-bottom:0}
 .pop-main.home-page #new-games .pop-card{scroll-snap-align:none}
}
@media(max-width:600px){.pop-main.home-page #new-games .pop-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Mobile Upcoming preview: four cards in two rows; See All opens the full collection. */
@media(max-width:900px){
 .pop-main.home-page #upcoming .pop-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row;grid-auto-columns:auto;grid-template-rows:none;overflow:visible;scroll-snap-type:none;padding-bottom:0}
 .pop-main.home-page #upcoming .pop-card{scroll-snap-align:none}
 .pop-main.home-page #upcoming .pop-card:nth-child(n+5){display:none}
}

/* Match the gap below New Games to the gap above its section heading. */
.home-page>#new-games{padding-bottom:20px}
@media(max-width:860px){.home-page>#new-games{padding-bottom:12px}}

/* Leave a compact gap between the header and the Home banner label. */
.pop-main.home-page>.page-intro{padding-top:32px}
.home-page>.page-intro>.pop-promotion{margin-top:0}

@media(max-width:860px){.pop-main.home-page>.page-intro{padding-top:24px}}
