.grs-mosaic-fullpage{width:100vw;margin-left:calc(50% - 50vw);min-height:100vh;position:relative;overflow:hidden;padding:var(--grs-gap);box-sizing:border-box;background:#061326}.grs-mosaic-grid{display:grid;grid-template-columns:repeat(var(--grs-cols),1fr);grid-auto-rows:var(--grs-base-h);gap:var(--grs-gap);width:100%;min-height:100vh;position:relative;z-index:2}.grs-mosaic-tile{position:relative;display:block;overflow:hidden;border-radius:var(--grs-radius);text-decoration:none;background:#000;isolation:isolate}.grs-mosaic-tile img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(var(--grs-brightness)) saturate(1.08);transform:scale(1.01);transition:transform .55s ease,filter .55s ease}.grs-mosaic-tile:before{content:"";position:absolute;inset:0;z-index:2;opacity:0;background:radial-gradient(circle at center,transparent 30%,var(--grs-glow) 140%);mix-blend-mode:screen;transition:opacity .35s ease}.grs-mosaic-tile:after{content:"";position:absolute;inset:-4px;z-index:3;pointer-events:none;border-radius:inherit;transition:.35s ease;opacity:0}.grs-mosaic-tile:hover{z-index:10}.grs-mosaic-tile:hover img{transform:scale(1.08);filter:brightness(1.12) saturate(1.35)}.grs-mosaic-tile:hover:before{opacity:.55}.grs-mosaic-tile:hover:after{opacity:1;box-shadow:0 0 18px var(--grs-glow),0 0 38px var(--grs-glow),0 0 76px var(--grs-glow)}.grs-mosaic-title{position:absolute;left:12px;right:12px;bottom:10px;z-index:4;color:#fff;font:900 18px/1.1 Arial,sans-serif;text-shadow:0 3px 10px #000;opacity:0;transform:translateY(10px);transition:.35s ease}.grs-mosaic-tile:hover .grs-mosaic-title{opacity:1;transform:translateY(0)}.grs-span-wide{grid-column:span 2}.grs-span-tall{grid-row:span 2}.grs-span-large{grid-column:span 2;grid-row:span 2}.grs-span-hero{grid-column:span 3;grid-row:span 2}.grs-overlay-dark:before,.grs-overlay-light:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}.grs-overlay-dark:before{background:rgba(0,0,0,.12)}.grs-overlay-light:before{background:rgba(255,255,255,.08)}.grs-mosaic-empty{text-align:center;padding:30px;border:1px dashed #bbb;background:#fff}.grs-firework-particle{position:fixed;width:8px;height:8px;border-radius:50%;pointer-events:none;z-index:999999;animation:grsFirework .75s ease-out forwards;box-shadow:0 0 14px currentColor}.grs-star-particle{position:fixed;pointer-events:none;z-index:999999;color:#fff000;font-size:22px;animation:grsStar .9s ease-out forwards;text-shadow:0 0 12px currentColor}@keyframes grsFirework{from{transform:translate(0,0) scale(1);opacity:1}to{transform:translate(var(--x),var(--y)) scale(.2);opacity:0}}@keyframes grsStar{from{transform:translate(0,0) scale(1) rotate(0deg);opacity:1}to{transform:translate(var(--x),var(--y)) scale(.3) rotate(220deg);opacity:0}}@media(max-width:1100px){.grs-mosaic-grid{grid-template-columns:repeat(4,1fr)}.grs-span-hero{grid-column:span 2}}@media(max-width:700px){.grs-mosaic-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.grs-span-wide,.grs-span-large,.grs-span-hero{grid-column:span 2}.grs-span-tall,.grs-span-large,.grs-span-hero{grid-row:span 2}}