.infinities-button-card{border:2px solid #000;border-radius:12px;height:200px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:block;position:relative;overflow:hidden}.infinities-button-card:hover{transform:scale(1.03)rotate(.5deg);box-shadow:4px 4px #0003}.marquee-track{width:max-content;height:100%;animation:8s linear infinite marqueeScroll;display:flex}.marquee-set{flex-shrink:0;align-items:center;display:flex}.door-img{object-fit:contain;flex-shrink:0;width:auto;height:140px;margin-right:60px}.text-overlay{z-index:1;background:#00000059;justify-content:center;align-items:center;transition:background .3s;display:flex;position:absolute;inset:0}.infinities-button-card:hover .text-overlay{background:#00000040}.text-overlay h3{color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px #00000080;margin:0;font-size:2.5rem;font-weight:700}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.monty-button-card{background:var(--background);cursor:pointer;border:2px solid #000;border-radius:12px;justify-content:center;align-items:center;height:200px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.monty-button-card:hover{transform:scale(1.03)rotate(.5deg);box-shadow:4px 4px #0003}.monty-doors-bg{opacity:.25;z-index:0;justify-content:center;align-items:center;gap:48px;transition:opacity .3s,transform .3s;display:flex;position:absolute;inset:0;transform:scale(.9)}.monty-doors-bg.hovered{opacity:.45;transform:scale(.95)}.monty-text-overlay{text-align:center;z-index:10;background:#00000059;justify-content:center;align-items:center;width:100%;transition:background .3s;display:flex;position:absolute;inset:0}.monty-button-card:hover .monty-text-overlay{background:#00000040}.monty-text-overlay h3{color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px #00000080;margin:0;padding:0 16px;font-size:2rem;font-weight:700}.factorial-button-card{background:var(--background);cursor:pointer;border:2px solid #000;border-radius:12px;justify-content:center;align-items:center;height:200px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.factorial-button-card:hover{transform:scale(1.03)rotate(.5deg);box-shadow:4px 4px #0003}.factorial-content{opacity:.35;z-index:0;justify-content:center;align-items:center;gap:24px;transition:opacity .3s,transform .3s;display:flex;position:absolute;inset:0;transform:scale(.95)}.factorial-button-card:hover .factorial-content{opacity:.55;transform:scale(1)}.factorial-label{color:var(--foreground);font-family:Georgia,serif;font-size:2.5rem;font-weight:700}.factorial-text-overlay{text-align:center;z-index:10;background:#00000059;justify-content:center;align-items:center;width:100%;transition:background .3s;display:flex;position:absolute;inset:0}.factorial-button-card:hover .factorial-text-overlay{background:#00000040}.factorial-text-overlay h3{color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px #00000080;margin:0;padding:0 16px;font-size:2rem;font-weight:700}.game-of-life-button-card{background:var(--background);cursor:pointer;border:2px solid #000;border-radius:12px;justify-content:center;align-items:center;height:200px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.game-of-life-button-card:hover{transform:scale(1.03)rotate(.5deg);box-shadow:4px 4px #0003}.game-of-life-grid-bg{opacity:.25;z-index:0;justify-content:center;align-items:center;transition:opacity .3s,transform .3s;display:flex;position:absolute;inset:0;transform:scale(.9)}.game-of-life-button-card:hover .game-of-life-grid-bg{opacity:.45;transform:scale(.95)}.game-of-life-text-overlay{text-align:center;z-index:10;background:#00000059;justify-content:center;align-items:center;width:100%;transition:background .3s;display:flex;position:absolute;inset:0}.game-of-life-button-card:hover .game-of-life-text-overlay{background:#00000040}.game-of-life-text-overlay h3{color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px #00000080;margin:0;padding:0 16px;font-size:2rem;font-weight:700}
