/* Shared purchase-first cards. Original pricing and edition components remain intact. */
.games-grid.purchase-grid,.music-grid.purchase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.game-card.purchase-card,.music-card.purchase-card{display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;gap:8px 16px;padding:16px;min-width:0;overflow:hidden;border:1px solid #e1e7e2;border-radius:14px;background:#fff;align-content:start;transition:border-color .16s,box-shadow .16s}
.purchase-card .purchase-cover{grid-column:1;grid-row:1/4;align-self:start;aspect-ratio:1;display:block;position:relative;width:100%;height:auto;overflow:hidden;border:1px solid #eef0ec;border-radius:10px;background:#fafaf7}
.purchase-card .purchase-cover img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .2s}
.purchase-card .purchase-heading{grid-column:2;grid-row:1;min-width:0;padding:0}
.purchase-card h2{font-size:20px;line-height:1.35;margin:4px 0 6px;overflow-wrap:anywhere;letter-spacing:-.025em}
.purchase-card .game-mode,.purchase-card .music-artist{font-size:11px;line-height:1.5;font-weight:700;margin:0;color:#876527}
.purchase-card .music-edition{font-size:11px;line-height:1.6;margin:0;color:#68776d;overflow-wrap:anywhere}
.purchase-card .purchase-buybox{grid-column:2;grid-row:3;align-self:start;margin:0;padding:0;border:0;min-width:0}
.purchase-card .game-discount,.purchase-card .music-discount{top:8px;right:8px;font-size:14px;border-radius:6px;padding:5px 7px;line-height:1.2}
.purchase-card .game-console,.purchase-card .music-format{left:8px;bottom:8px;max-width:calc(100% - 16px);font-size:10px;padding:4px 6px;line-height:1.3}
.purchase-card .purchase-teaser{grid-column:2;grid-row:2;min-width:0;margin:0 0 4px;font-size:13px;line-height:1.75;color:#4e6557;overflow-wrap:anywhere;text-wrap:pretty}
.purchase-card .game-price strong,.purchase-card .music-price strong{font-size:34px;color:#c04420;font-weight:850;line-height:1.15;letter-spacing:-.04em}
.purchase-card .game-price strong small,.purchase-card .music-price strong small{font-size:16px;margin-right:2px}
.purchase-card .game-price-label,.purchase-card .music-price>span{font-size:10px;line-height:1.5;color:#758077}
.purchase-card .game-price s,.purchase-card .music-price s{font-size:11px;color:#89928a}
.purchase-card .deal-save,.purchase-card .music-saving{font-size:10px;line-height:1.4;background:#fff0e6;color:#aa3b1b;border-radius:4px;padding:2px 5px}
.purchase-card .game-buy,.purchase-card .music-purchase .button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;font-size:13px;font-weight:750;padding:9px 12px;border:1px solid #b94a26;border-radius:8px;background:#c64b25;color:#fff;box-shadow:0 3px 8px #b4472015;white-space:normal;text-align:center;line-height:1.3;transition:background .15s,box-shadow .15s}
.purchase-card .game-price-date,.purchase-card .music-updated{font-size:9px;line-height:1.5;margin:6px 0;color:#879187;overflow-wrap:anywhere}
.purchase-card .game-price-date span{display:inline}
.purchase-card .game-buttons{gap:8px;align-items:center;flex-wrap:wrap}
.purchase-card .game-buttons>small{font-size:9px;color:#788779}
.purchase-card .game-buttons>a:not(.button){font-size:11px;white-space:normal}
.purchase-card .game-purchase-options{gap:8px;margin:0}
.purchase-card .game-purchase-option{padding:10px;background:#fffbf6;border-color:#efe3d6;border-radius:9px}
.purchase-card .game-purchase-caption{font-size:10px;line-height:1.4;margin:0 0 5px}
.purchase-card .game-purchase-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.purchase-card .game-purchase-line .game-price{flex:1 1 100%;gap:3px 6px;min-width:0}
.purchase-card .game-purchase-line .game-buy{flex:1 1 100%;width:100%}
.purchase-card .game-purchase-edition,.purchase-card .game-purchase-shop{font-size:10px!important;line-height:1.55!important;margin-top:5px!important}
.purchase-card .game-purchase-compatibility{font-size:10px!important}
.purchase-card .game-purchase-direct{background:#f6f9f5;border-color:#e1e8df;padding:8px 10px}
.purchase-card .game-purchase-direct .game-price strong{font-size:25px;color:#3c604b}
.purchase-card .game-purchase-direct .game-purchase-line{align-items:center}
.purchase-card .game-direct-buy{color:#355f47!important;border-color:#bdcfbd!important;background:#fff!important;min-height:36px;font-size:12px}
.purchase-card .game-exclusive{font-size:10px;line-height:1.5}
.purchase-card .game-all-offers{font-size:11px;line-height:1.5;padding:8px 0 0;text-align:left}
.purchase-card .music-price{margin:0}
.purchase-card .music-price>div{gap:4px 6px;margin-top:2px}
.purchase-card .music-purchase{margin-top:9px;gap:7px}
.purchase-card .music-purchase>span{font-size:10px}
.purchase-card .music-coupon{font-size:11px;line-height:1.5;margin:5px 0}
.purchase-card .music-detail-link{font-size:11px;line-height:1.5;margin-top:2px}
.purchase-more{grid-column:1/-1;grid-row:4;margin-top:5px;border-top:1px solid #edf0e9;min-width:0}
.purchase-more>summary{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 0 0;min-height:34px;list-style:none;cursor:pointer;font-size:12px;line-height:1.5;color:#5a705f;font-weight:600}
.purchase-more>summary::-webkit-details-marker{display:none}
.purchase-more>summary>span:last-child{font-size:17px;line-height:1;transition:transform .15s}
.purchase-more[open]>summary>span:last-child{transform:rotate(45deg)}
.purchase-description{padding:10px 0 2px;font-size:13px;line-height:1.8;color:#647067}
.purchase-description .game-hook,.purchase-description .music-hook{font-size:13px!important;line-height:1.8!important;margin:0 0 8px!important}
.purchase-description .game-teaser,.purchase-description li{font-size:12px!important;line-height:1.85!important}
.purchase-description>a{display:inline-block;margin-top:10px;font-size:12px}
.purchase-description ul{margin:0;padding-left:17px}
.purchase-card a:focus-visible,.purchase-more>summary:focus-visible{outline:2px solid #a7772e;outline-offset:3px}
.games-page .games-heading,.music-page .music-heading{padding:14px 18px;margin-bottom:12px;gap:14px}
.music-page .music-heading{background:linear-gradient(110deg,#f6f1e7,#f5f6ed);border:1px solid #e9e3d7;border-radius:12px}
.games-heading h1,.music-heading h1{font-size:28px;line-height:1.3;margin:3px 0 5px}
.games-heading p,.music-heading p{font-size:12px;line-height:1.7;max-width:790px}
.games-count,.music-count{font-size:29px}
.game-detail-top{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:24px}
.game-detail-top .game-detail-image{max-height:380px}
.game-detail-top .game-purchase-detail .game-purchase-line{flex-wrap:wrap}
.game-detail-top .game-purchase-detail .game-purchase-line .game-buy{min-height:42px;font-size:12px;flex:1 1 100%;background:#c64b25}
.music-detail-top .music-purchase .button{min-height:44px;background:#c64b25;border-color:#b94a26;font-weight:750}
.music-detail-top .music-price strong{font-size:38px;color:#c04420}
.purchase-detail-intro{margin:20px auto;max-width:980px;font-size:14px;line-height:1.85;color:#53695b}
.purchase-detail-intro h2{font-size:19px;line-height:1.7;margin:0 0 8px}
.purchase-detail-intro p{margin:8px 0}
.purchase-detail-intro ul{padding-left:20px}
.games-page .commerce-story pre,.game-detail .commerce-story pre,.music-page .commerce-story pre{max-width:100%;overflow-x:auto;font-size:12px;padding:12px;border:1px solid #e5e9e2;border-radius:8px;background:#f7f8f5}
@media(hover:hover){.game-card.purchase-card:hover,.music-card.purchase-card:hover{transform:none;border-color:#bdcbbd;box-shadow:0 6px 22px #29482d0a}.purchase-card .purchase-cover:hover img{transform:scale(1.025)}.purchase-card .game-buy:hover,.purchase-card .music-purchase .button:hover{background:#b83f1e;box-shadow:0 4px 12px #b4472022}}
@media(min-width:1400px){.purchase-card .game-purchase-line .game-price{flex:1 1 130px}.purchase-card .game-purchase-line .game-buy{flex:0 0 auto;width:auto}}
@media(max-width:1050px) and (min-width:1001px){.game-card.purchase-card,.music-card.purchase-card{grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:8px 12px;padding:12px}.purchase-card h2{font-size:17px}.purchase-card .game-price strong,.purchase-card .music-price strong{font-size:29px}}
@media(max-width:1000px){.games-grid.purchase-grid,.music-grid.purchase-grid{grid-template-columns:1fr;gap:12px}.game-card.purchase-card,.music-card.purchase-card{grid-template-columns:minmax(0,36%) minmax(0,1fr)}.purchase-card .game-purchase-line .game-price{flex:1 1 130px}.purchase-card .game-purchase-line .game-buy{flex:0 0 auto;width:auto}.game-detail-top,.music-detail-top{grid-template-columns:1fr;gap:16px}.game-detail-top .game-detail-image{max-height:240px}.music-detail-top .music-detail-cover{max-width:240px}.games-page .games-heading,.music-page .music-heading{padding:12px 14px}.games-heading h1,.music-heading h1{font-size:25px}.music-count{display:none}}
@media(max-width:480px){
 .game-card.purchase-card,.music-card.purchase-card{grid-template-columns:126px minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:10px 12px;padding:12px}
 .purchase-card .purchase-cover{grid-row:1;grid-column:1}
 .purchase-card .purchase-heading{align-self:center;grid-row:1;grid-column:2}
 .purchase-card h2{font-size:18px;margin:3px 0 6px}
 .purchase-card .game-mode,.purchase-card .music-artist{font-size:11px}
 .purchase-card .purchase-teaser{grid-column:1/-1;grid-row:2;font-size:13px;line-height:1.7;margin:0}
 .purchase-card .purchase-buybox{grid-row:3;grid-column:1/-1}
 .purchase-card .game-discount,.purchase-card .music-discount{top:5px;right:5px;font-size:11px;padding:4px 5px}
 .purchase-card .game-console,.purchase-card .music-format{left:5px;bottom:5px;font-size:9px;max-width:calc(100% - 10px);padding:3px 5px}
 .purchase-card .game-purchase-line .game-price{flex:1 1 140px}
 .purchase-card .game-purchase-line .game-buy{flex:0 0 auto;width:auto;min-height:42px}
 .purchase-card .game-price strong,.purchase-card .music-price strong{font-size:33px}
 .purchase-card .game-purchase-direct .game-price strong{font-size:25px}
 .purchase-card .game-purchase-edition,.purchase-card .game-purchase-shop{font-size:10px!important}
 .purchase-card .game-purchase-shop{display:inline}
 .purchase-card .game-price-date{font-size:9px}
 .purchase-card .game-buttons{display:flex;text-align:left;justify-content:space-between}
 .purchase-card .music-card-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center}
 .purchase-card .music-price{grid-column:1;grid-row:1}
 .purchase-card .music-purchase{grid-column:2;grid-row:1;align-self:center;margin:0}
 .purchase-card .music-purchase>span{display:none}
 .purchase-card .music-coupon,.purchase-card .music-updated,.purchase-card .music-detail-link{grid-column:1/-1;margin:0}
 .purchase-card .music-detail-link{margin-top:2px}
 .purchase-more{margin-top:0}
 .games-page .games-heading,.music-page .music-heading{padding:12px;margin-bottom:10px}
 .games-heading p,.music-heading p{font-size:12px}
 .purchase-card .music-purchase .button{max-width:148px;padding:9px 10px}
}
@media(max-width:359px){.game-card.purchase-card,.music-card.purchase-card{grid-template-columns:104px minmax(0,1fr);padding:10px;gap:9px}.purchase-card h2{font-size:16px}.purchase-card .game-price strong,.purchase-card .music-price strong{font-size:29px}.purchase-card .game-purchase-line .game-price{flex-basis:120px}.purchase-card .game-buy,.purchase-card .music-purchase .button{font-size:12px;padding:8px}.purchase-card .music-purchase .button{max-width:126px}}
@media(prefers-reduced-motion:reduce){.game-card.purchase-card,.music-card.purchase-card,.purchase-card .purchase-cover img,.purchase-card .game-buy,.purchase-card .music-purchase .button,.purchase-more>summary>span:last-child{transition:none}.purchase-card .purchase-cover:hover img{transform:none}}

/* Readable buying guidance, revealed only when a shopper opens the card. */
.games-grid:has(.purchase-more[open])>.game-card{align-self:start}
.purchase-description.game-selling-guide{color:#4e6255;padding-top:12px}
.game-selling-guide h3{font-size:14px;line-height:1.5;letter-spacing:0;margin:0 0 7px;color:#294d38}
.purchase-description.game-selling-guide .game-teaser{font-size:13px!important;line-height:1.85!important;margin:0 0 10px}
.purchase-description .game-selling-points{list-style:none;margin:0 0 14px;padding:0;counter-reset:selling-point}
.purchase-description .game-selling-points li{position:relative;padding:10px 0 10px 29px;margin:0;border-bottom:1px solid #edf0e9;font-size:13px!important;line-height:1.85!important;color:#425c4b;counter-increment:selling-point;overflow-wrap:anywhere}
.game-selling-points li::before{content:counter(selling-point,decimal-leading-zero);position:absolute;left:0;top:12px;font-size:10px;line-height:1.7;font-weight:750;color:#95712c;font-variant-numeric:tabular-nums}
.game-selling-edition,.game-selling-caveat{padding:10px 12px;margin-top:10px;border-left:2px solid #c9d8cc;border-radius:0 6px 6px 0;background:#f6f8f5}
.game-selling-caveat{border-color:#dbc8a1;background:#faf8f2}
.game-selling-edition p,.game-selling-caveat p{margin:3px 0;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.purchase-detail-intro .game-benefits{padding:0;font-size:14px;line-height:1.9}
.purchase-detail-intro .game-benefits li{padding:8px 12px;margin:10px 0}
