/* ACE96 V42: homepage-only presentation. V40 shared pages and carousel behavior remain intact. */
.home-page{--home-width:1180px;--home-border:#ddd8e7;--home-muted:#625e73;--home-purple:#3c317d;background:#efecf6;color:#262339;font-size:16px;line-height:1.6}
.home-page main>:is(.site-disclosure,.hero,.start-section,.iconnav,.featured-offer,.section,.how-starts),.home-page>.site-footer{width:calc(100% - 32px);max-width:var(--home-width);margin-left:auto;margin-right:auto;box-sizing:border-box}
.home-page main>:is(.hero,.start-section,.iconnav,.featured-offer,.section,.how-starts){margin-top:0;margin-bottom:24px}
.home-page .site-disclosure{margin-top:16px;margin-bottom:16px;padding:0;font-size:14px;line-height:1.5;color:#514c64}
.home-page .hero{background:#241c58;border-radius:0 0 10px 10px;box-shadow:0 3px 12px #241c5812}
.home-page .carousel-controls{background:#241c58;border-top:1px solid #ffffff30;border-bottom:0;gap:12px;padding:5px 12px;min-height:56px}
.home-page .carousel-controls button{min-width:44px;min-height:44px;height:auto;background:#ffffff12;border-color:#ffffff70;color:#fff;border-radius:8px}
.home-page .carousel-controls button:hover{background:#ffffff28}.home-page .carousel-controls button:active{background:#ffffff40}
.home-page .carousel-position{font-size:14px;color:#fff}
.home-page :is(.primary-cta,.secondary-cta,.text-cta){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px;font-size:14px;font-weight:700;line-height:1.4;border-radius:8px;box-shadow:none;white-space:normal;text-align:center;min-width:0;overflow-wrap:anywhere}
.home-page .primary-cta{background:#f68c1f;color:#32200a;border:1px solid #f68c1f}
.home-page .secondary-cta{background:#fff;color:#3c317d;border:1px solid #8a7d9d}
.home-page .text-cta{color:#3c317d;text-decoration:underline;text-underline-offset:3px}
.home-page .primary-cta:hover{background:#e98118;border-color:#e98118}.home-page .primary-cta:active{background:#dc7610;border-color:#dc7610}
.home-page .secondary-cta:hover{background:#eee9fb}.home-page .secondary-cta:active{background:#e0d8f2}
.home-page .text-cta:hover{background:#f0edf7}.home-page .text-cta:active{background:#e0d8f2}
.home-page .start-section{padding:0}
.home-page .start-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:linear-gradient(135deg,#3d317d,#57449c);color:#fff;border:1px solid #6b5baf;border-radius:10px 10px 0 0;box-shadow:0 8px 24px #34266a26}
.home-page .start-copy{min-width:0;flex:1 1 0}
.home-page :is(.start-kicker,.featured-kicker){font-size:12px;line-height:1.5;letter-spacing:.05em;font-weight:700;color:#594575}
.home-page .start-card h2{font-size:24px;line-height:1.3;font-weight:750;letter-spacing:-.3px;margin:8px 0 12px;color:#fff}
.home-page .start-card p{font-size:16px;line-height:1.6;color:#e7e3f6;margin:0;max-width:65ch}
.home-page .start-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 1 auto;max-width:48%;margin:0}
.home-page .trust-strip{display:flex;align-items:center;justify-content:center;gap:8px 24px;flex-wrap:wrap;background:#eeebf5;border:1px solid var(--home-border);border-top:0;border-radius:0 0 10px 10px;margin:0;padding:12px 16px;font-size:14px;line-height:1.5;font-weight:500;color:#514666}
.home-page .iconnav{display:grid;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:4px;padding:12px 8px;background:linear-gradient(160deg,#3c317d,#241c58);color:#fff;border:1px solid #6b5baf;border-radius:10px;text-align:center}
.home-page .iconnav a{grid-column:span 3;min-height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px 4px;font-size:14px;line-height:1.4;border-radius:8px;opacity:1;min-width:0;background:#ffffff08;border:1px solid #ffffff20}
.home-page .iconnav a:nth-child(n+5){grid-column:span 4}
.home-page .iconnav a:hover{background:#ffffff1f}.home-page .iconnav a:active{background:#ffffff30}
.home-page .iconnav .ui-icon{width:24px;height:24px;color:#fff}
.home-page .iconnav .category-label{display:block;font-size:14px;line-height:1.4;color:#fff;margin:0;max-width:100%;overflow-wrap:anywhere;text-transform:lowercase}
.home-page .category-label::first-letter{text-transform:uppercase}
.home-page .featured-offer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:#fff;border:1px solid var(--home-border);border-radius:10px;box-shadow:none}
.home-page .featured-copy{min-width:0;flex:1}
.home-page .featured-offer h2{font-size:20px;line-height:1.4;font-weight:750;color:#3c317d;margin:8px 0 12px}
.home-page .featured-offer p{font-size:16px;line-height:1.6;color:var(--home-muted);margin:0;max-width:65ch}
.home-page .featured-actions{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap;flex:0 0 auto}
.home-page main>.section{padding:0}
.home-page .section-title{display:flex;align-items:center;gap:10px;font-size:20px;line-height:1.4;font-weight:750;letter-spacing:-.2px;color:#3c317d;margin:0 0 16px}
.home-page .section-title::before{content:"";display:block;flex:0 0 4px;width:4px;height:24px;border-radius:2px;background:#f68c1f}
.home-page .game-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.home-page .game{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid var(--home-border);border-radius:10px;box-shadow:0 2px 6px #241c5808;min-width:0}
.home-page .game img{display:block;width:100%;max-width:200px;height:auto;aspect-ratio:1;object-fit:contain;border-radius:6px}
.home-page .game b{display:flex;align-items:center;justify-content:center;min-height:40px;padding:0;font-size:14px;font-weight:650;line-height:1.5;text-align:center;color:#45375f;overflow-wrap:anywhere}
.home-page .game:hover{border-color:#8a7d9d;background:#faf9fd}.home-page .game:active{background:#f0edf7}
.home-page .hot-rank-section{padding-top:0!important}
.home-page .rank-card{width:100%;max-width:480px;margin:0 auto;padding:24px!important;background:#443687;color:#fff;border:1px solid #665694;border-radius:10px!important;box-shadow:none;text-align:center}
.home-page .rank-card .rank-label{display:inline-block;width:auto;margin:0 auto 16px;padding:6px 12px;border-radius:8px;background:#f7a21e;color:#32200a;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.04em}
.home-page .rank-image-wrap{max-width:200px;margin:0 auto}
.home-page .rank-card .rank-img{display:block;width:100%;max-width:200px;height:auto;aspect-ratio:auto;object-fit:contain;border:0;border-radius:8px}
.home-page .rank-card h2{margin:16px 0 0;font-size:18px;line-height:1.4;color:#fff;font-weight:700}
.home-page .how-starts{padding:0}
.home-page .how-start-grid{display:grid;grid-template-columns:1fr;gap:16px}
.home-page .how-start-card{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:12px;align-items:start;min-height:0;padding:20px;background:#fff;border:1px solid var(--home-border);border-radius:10px;box-shadow:0 4px 12px #241c580a}
.home-page .how-start-card>span{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;background:#3c317d;color:#fff;font-size:14px;font-weight:700;border-radius:50%;margin:0}
.home-page .how-start-card h3{grid-column:2;margin:0 0 8px;font-size:16px;line-height:1.5;font-weight:700;color:#3c317d}
.home-page .how-start-card p{grid-column:2;font-size:16px;line-height:1.6;color:var(--home-muted);margin:0}
.home-page>.site-footer{margin-top:32px;margin-bottom:0;padding:24px 0 48px;border-top:1px solid var(--home-border)}
.home-page .site-footer nav{gap:4px 16px}
.home-page .site-footer a{font-size:14px;line-height:1.5}
@media(min-width:600px){.home-page .game-row{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1000px){.home-page .how-start-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:999px){
 .home-page .start-card{display:block;padding:20px 16px}
 .home-page .start-card h2{font-size:22px}
 .home-page .start-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:none;flex:none;margin-top:16px}
 .home-page .start-actions .text-cta{grid-column:1/-1}
 .home-page .featured-offer{display:block;padding:20px 16px}
 .home-page .featured-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}
}
@media(min-width:1100px){
 .home-page .header{max-width:1212px;row-gap:0}
 .home-page .desktop-nav{padding-top:3px}
 .home-page .iconnav{grid-template-columns:repeat(7,minmax(0,1fr))!important}
 .home-page .iconnav a,.home-page .iconnav a:nth-child(n+5){grid-column:auto}
}
/* White/dark rings stay visible on light surfaces and the dark carousel strip. */
.home-page :is(a,button,[tabindex]):focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 5px #241744}
@media(prefers-reduced-motion:reduce){.home-page *{transition:none!important}}

/* Contextual text stays readable on the restored V40 branded panel. */
.home-page .start-card .start-kicker{color:#ffd08c}
.home-page .start-card .text-cta{color:#fff}
.home-page .start-card .text-cta:hover{background:#ffffff16}
.home-page .start-card .text-cta:active{background:#ffffff28}
