/* Part 3 — circular selection, then source-based examples. */
.home-page .categories{padding:52px 0 50px;background:radial-gradient(ellipse at 50% 28%,#e7f5ff85,transparent 57%),linear-gradient(#fff,#fafdff)}
.home-page .categories>.container{width:min(1310px,calc(100% - 110px))}
.home-page .categories .section-head h2{font-size:42px}
.home-page .categories .section-head p{font-size:16px;line-height:1.7;max-width:330px;color:#4b6783}
.home-page .category-carousel{width:min(1060px,100%);margin:0 auto}
.home-page .category-track{gap:24px;padding:34px 16px 13px;overflow:visible;scroll-snap-type:none}
.home-page .category-option{flex:1;min-width:0;align-self:center;border-radius:15px}
.home-page .category-option.active{flex:1.13}
.home-page .category-image{transform:scale(.92);border-width:4px;box-shadow:0 0 0 5px #bddff74d,0 9px 20px #246bb51c}
.home-page .category-option.active .category-image{transform:scale(1);box-shadow:0 0 0 4px #7bceff85,0 0 0 8px #e2f5ff,0 9px 25px #068bed35}
.home-page .category-option strong,.home-page .category-option.active strong{font-size:21px;line-height:1.45;margin-top:13px}
.home-page .category-option.active strong{color:#075fcc}
.home-page .category-caption{font-size:12px;line-height:1.75;margin-top:6px;color:#526f89}
.home-page .category-controls{top:43%;left:-35px;right:-35px}
.home-page .category-dots{margin-top:0}
.home-page .category-dots button:after{width:8px;height:8px;left:18px;top:18px}
.home-page .category-dots button.active:after{width:22px;left:11px;border-radius:6px}
.home-page .category-description{margin-top:5px;gap:22px}
.home-page .category-summary h3{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;font-size:24px;letter-spacing:.02em;line-height:1.45;margin:0 0 8px}
.home-page .category-summary p{font-size:16px;line-height:1.8;max-width:760px;color:#4b6783}
.home-page .category-preview{padding:25px;border-radius:20px;background:linear-gradient(125deg,#eef8ffb0,#fff 65%);border-color:#cae3f5;box-shadow:inset 0 1px 0 #fff,0 12px 35px #14558506}
.home-page .preview-head{margin-bottom:18px;gap:18px}
.home-page .preview-head>span{font-size:18px}
.home-page .preview-head>p{font-size:14px;line-height:1.65;color:#526d86}
.home-page .home-preview-cards{gap:18px}
.home-page .home-preview-card{padding:16px;min-height:163px;gap:19px;border-color:#dbe9f4;border-radius:14px;box-shadow:0 4px 14px #3f718607}
.home-page .home-preview-card img{width:126px;height:126px;border-radius:11px;object-fit:contain}
.home-page .home-preview-card>div{min-width:0}
.home-page .home-preview-card h4{font-size:18px;line-height:1.55;margin:0 0 8px;overflow-wrap:anywhere}
.home-page .home-preview-card p{font-size:13px;line-height:1.55;color:#536e88;overflow-wrap:anywhere}
.home-page .home-provider-line{gap:24px;padding-top:18px;margin-top:20px;min-height:63px}
.home-page .home-provider-line>span{font-size:14px;color:#4d6983}
.home-page #home-provider-logos{gap:25px}
.home-page #home-provider-logos img{width:108px;height:44px}
.home-page .category-description .button{min-height:50px;padding:11px 25px;font-size:16px;gap:15px;border-color:#aad2ed;background:#f0f8ff;color:#075fc0;box-shadow:inset 0 1px 0 #fff}
.home-page .category-option:focus-visible{outline:3px solid #0079e5;outline-offset:5px}
@media(min-width:781px) and (max-width:1150px){
 .home-page .categories>.container{width:calc(100% - 64px)}.home-page .categories .section-head h2{font-size:37px}.home-page .categories .section-head p{font-size:14px;max-width:280px}.home-page .category-carousel{width:calc(100% - 26px)}.home-page .category-track{gap:15px;padding-inline:8px}.home-page .category-controls{left:-24px;right:-24px}.home-page .category-option strong,.home-page .category-option.active strong{font-size:19px}.home-page .category-caption{font-size:11px}.home-page .home-preview-card{display:block;padding:16px;min-height:0}.home-page .home-preview-card img{width:100%;height:145px;margin-bottom:13px}.home-page .home-preview-card h4{font-size:17px}.home-page .home-preview-card p{font-size:12px}.home-page .category-summary p{font-size:15px}
}
@media(max-width:780px){
 .home-page .categories{padding:33px 0 35px}.home-page .categories>.container{width:calc(100% - 40px)}.home-page .categories .section-head h2{font-size:31px}.home-page .categories .section-head p{font-size:14px;max-width:none;text-align:left;margin-top:14px}.home-page .category-carousel{width:100%}.home-page .category-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:26px 3px 17px;overflow:visible}.home-page .category-option,.home-page .category-option.active{min-width:0;width:100%;flex:auto}.home-page .category-image{border-width:2px;transform:scale(.91);outline-width:1px;box-shadow:0 0 0 3px #cde8fb,0 4px 12px #246bb515}.home-page .category-option.active .category-image{box-shadow:0 0 0 2px #7bceff85,0 0 0 5px #e2f5ff,0 6px 17px #068bed30}.home-page .category-option strong,.home-page .category-option.active strong{font-size:14px;line-height:1.5;letter-spacing:0;margin-top:12px}.home-page .category-option.active strong:after{content:'';display:block;width:18px;height:3px;border-radius:3px;background:#0879e8;position:absolute;left:calc(50% - 9px);bottom:-8px}.home-page .category-caption,.home-page .category-controls,.home-page .category-dots{display:none}.home-page .category-description{gap:18px;margin-top:17px}.home-page .category-summary h3{font-size:22px;margin-bottom:7px}.home-page .category-summary p{font-size:14px;line-height:1.8;max-width:560px}
 .home-page .category-preview{padding:20px 15px 17px;border-radius:17px}.home-page .preview-head{display:block;margin-bottom:16px}.home-page .preview-head>span{font-size:17px}.home-page .preview-head>p{font-size:13px;line-height:1.75;margin-top:6px}.home-page .home-preview-cards{grid-template-columns:1fr;gap:11px}.home-page .home-preview-card{display:flex;padding:12px;min-height:119px;gap:17px;border-radius:12px}.home-page .home-preview-card img{width:94px;height:94px;border-radius:8px}.home-page .home-preview-card h4{font-size:16px;line-height:1.55;margin:0 0 7px}.home-page .home-preview-card p{font-size:12px;line-height:1.6}.home-page .home-provider-line{display:block;padding-top:16px;margin-top:18px}.home-page .home-provider-line>span{font-size:13px}.home-page #home-provider-logos{gap:12px;margin-top:9px;justify-content:space-between}.home-page #home-provider-logos img{width:calc((100% - 24px) / 3);max-width:108px;height:44px}.home-page .category-description .button{font-size:15px;min-height:48px}
}
@media(min-width:540px) and (max-width:780px){
 .home-page .category-carousel{max-width:590px}.home-page .category-option strong,.home-page .category-option.active strong{font-size:17px}.home-page .home-preview-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.home-page .home-preview-card{display:block;padding:14px}.home-page .home-preview-card img{width:100%;height:120px;margin-bottom:10px}.home-page #home-provider-logos{justify-content:flex-start;gap:23px}
}
@media(max-width:360px){
 .home-page .categories>.container{width:calc(100% - 32px)}.home-page .category-track{gap:8px;padding-inline:2px}.home-page .category-option strong,.home-page .category-option.active strong{font-size:13px}.home-page .category-preview{padding:17px 12px}.home-page .home-preview-card{gap:12px;padding:10px;min-height:107px}.home-page .home-preview-card img{width:80px;height:80px}.home-page .home-preview-card h4{font-size:15px}.home-page .home-preview-card p{font-size:12px}
}

/* Sports artwork is a wide supplier banner, not a square game cover. */
.home-page .category-preview[data-kind="sports"] .home-preview-card{display:block;padding:17px}
.home-page .category-preview[data-kind="sports"] .home-preview-card img{width:100%;height:auto;aspect-ratio:2.15;object-fit:contain;margin-bottom:14px;border-radius:9px}
.home-page .category-preview[data-kind="sports"] .home-preview-card h4{margin-bottom:5px}
@media(max-width:539px){
 .home-page .category-preview[data-kind="sports"] .home-preview-card{display:grid;grid-template-columns:116px minmax(0,1fr);gap:14px;padding:12px;align-items:center;min-height:104px}
 .home-page .category-preview[data-kind="sports"] .home-preview-card img{margin:0;width:116px;height:auto}
 .home-page .category-preview[data-kind="sports"] .home-preview-card h4{font-size:15px}
}
@media(max-width:360px){
 .home-page .category-preview[data-kind="sports"] .home-preview-card{grid-template-columns:104px minmax(0,1fr);padding:10px;gap:10px}
 .home-page .category-preview[data-kind="sports"] .home-preview-card img{width:104px}
 .home-page .category-preview[data-kind="sports"] .home-preview-card h4{font-size:14px}
}
