*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:oklch(97% .008 110);color:oklch(21% .015 140);font-family:"Avenir Next","Trebuchet MS",Arial,sans-serif}a{color:inherit;text-decoration:none}header,main,footer{max-width:1440px;margin:auto;padding-left:48px;padding-right:48px}header{height:96px;display:flex;align-items:center;gap:40px;border-bottom:1px solid #d7dbd3}.logo{font-size:36px;font-weight:900;letter-spacing:-3px}.logo span{color:#477200;padding-left:5px}.header-label,.eyebrow,.tag,.section-title>span{font-family:ui-monospace,monospace;font-size:12px;letter-spacing:.065em}.header-label{color:#596155}.browse{margin-left:auto;font-size:15px;font-weight:bold}.browse span{margin-left:16px}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:48px 0 40px}.eyebrow{margin:0 0 20px;color:#596155}h1{font-size:84px;line-height:.97;letter-spacing:-4px;margin:0;font-weight:800}h1 span{color:#537b1c}.intro-text{font-size:18px;line-height:1.55;margin:0 0 3px;max-width:350px}.featured-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.tile{display:block;min-width:0}.picture{position:relative;overflow:hidden;background:#e3e6de;border-radius:8px}.picture img{width:100%;height:auto;aspect-ratio:11/7;object-fit:cover;display:block;transition:transform .22s ease}.open{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:40px;height:40px;background:#f7f8f3;color:#16210c;font-size:25px;border-radius:4px;transition:background .18s}.tile:hover .picture img{transform:scale(1.025)}.tile:hover .open{background:#c0f06b}.tile:hover h2{text-decoration:underline;text-underline-offset:5px}.details{padding:20px 0 8px}.tag{color:#596155}h2{font-size:26px;letter-spacing:-.6px;margin:8px 0 8px;line-height:1.2}.details p{font-size:16px;line-height:1.5;color:#56604e;margin:0 0 16px;max-width:510px}.action{font-weight:700;font-size:14px}.action span{margin-left:12px}.featured .picture img{aspect-ratio:1.73}.featured .picture{background:#dce3d6}.featured h2{font-size:36px}.football{background:#1d2c21;color:#f6f9f1;border-radius:8px;overflow:hidden}.football .picture{border-radius:0}.football .details{padding:24px 28px}.football .tag,.football .details p{color:#c9d5c4}.football .action{display:inline-block;background:#c0f06b;color:#182810;padding:12px 16px;border-radius:4px}.olympiad .details{padding:24px 8px}.olympiad .picture{background:#fff0c8}.olympiad .picture img{object-fit:cover}.section-title{margin:56px 0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.section-title h2{font-size:30px;margin:0}.section-title>span{color:#596155}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.grid .picture{border:1px solid #d9dfd4}footer{margin-top:64px;min-height:130px;border-top:1px solid #d7dbd3;display:flex;align-items:center;gap:32px}footer p,footer>a:last-child{font-size:13px;color:#596155}footer>a:last-child{margin-left:auto}a:focus-visible{outline:3px solid #598c14;outline-offset:6px}@media(min-width:1000px){.featured-grid{align-items:stretch}.olympiad{display:flex;flex-direction:column}.olympiad .picture{flex:1}.olympiad .picture img{height:100%;object-fit:cover;object-position:center}}@media(max-width:950px){header,main,footer{padding-left:24px;padding-right:24px}h1{font-size:64px;letter-spacing:-3px}.intro-text{font-size:16px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-label{display:none}.featured-grid{grid-template-columns:1fr 1fr}.section-title>span{display:none}}@media(max-width:580px){header,main,footer{padding-left:20px;padding-right:20px}header{height:76px}.logo{font-size:32px}.intro{padding:32px 0 24px;display:block}h1{font-size:60px;letter-spacing:-3px}.intro-text{margin-top:20px;font-size:16px;line-height:1.5}.intro-text br{display:none}.eyebrow{font-size:11px;margin-bottom:16px}.featured-grid,.grid{grid-template-columns:1fr;gap:28px}.featured h2{font-size:30px}.football .details{padding:20px}.olympiad .details{padding:16px 0 0}.section-title{margin:40px 0 20px}.section-title h2{font-size:26px}.details{padding-top:16px}.grid{gap:28px}.grid .picture img{aspect-ratio:1.73}.details p{margin-bottom:12px}footer{margin-top:40px;padding-top:24px;padding-bottom:24px;flex-wrap:wrap;gap:12px 20px}footer p{flex:1;margin:0}footer>a:last-child{margin:0;width:100%}.browse{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.picture img,.open{transition:none}}

.app-launcher header,.app-launcher .intro,.app-launcher footer,.app-launcher .section-title,.app-launcher .tag,.app-launcher .details p,.app-launcher .action,.app-launcher .open{display:none}.app-launcher main{padding:24px 16px}.app-launcher .featured-grid,.app-launcher #collection{display:contents}.app-launcher main,.app-launcher .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 16px}.app-launcher .grid{display:contents}.app-launcher .tile,.app-launcher .scratch{display:block;background:none;color:#202a20;overflow:visible}.app-launcher .picture{width:80px;height:80px;margin:auto;border-radius:18px;overflow:hidden;border:1px solid #d5ddd1}.app-launcher .picture img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center}.app-launcher .details,.app-launcher .football .details,.app-launcher .scratch .details{padding:10px 0 0;text-align:center}.app-launcher .details h2{font-size:14px;letter-spacing:0;line-height:1.3;margin:0;overflow-wrap:anywhere}@media(min-width:650px){.app-launcher main{max-width:900px;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;padding:32px}.app-launcher .picture{width:100px;height:100px}.app-launcher .details h2{font-size:16px}}

.app-launcher body{background:white}

.app-launcher .picture{background:oklch(0.49 0.20 25);border-color:oklch(0.49 0.20 25)}.app-launcher .picture img{display:none}

.app-symbol{display:none}.app-launcher .picture{display:grid;place-items:center}.app-launcher .app-symbol{display:block;font-size:44px;line-height:1}@media(min-width:650px){.app-launcher .app-symbol{font-size:54px}}

.picture .app-character{display:none}.app-launcher .picture .app-character{display:block;width:100%;height:100%;object-fit:contain;padding:5px}


.rpl .picture{background:oklch(.49 .20 25);display:grid;place-items:center;aspect-ratio:11/7}.rpl .app-symbol{display:block;font-size:64px}
