.tile-grid{box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(var(--columns,2),1fr);margin:40px 0;max-width:100%;width:100%}.tile-grid .tile{--max-image-size:inherit;align-items:flex-start;background:#c9e6e5;border-radius:8px;color:#333;display:flex;padding:20px;text-decoration:none;transition:transform .2s,box-shadow .2s}.tile-grid .tile:hover{box-shadow:0 2px 6px rgba(0,0,0,.1);transform:translateY(-5px)}.tile-grid.center .tile .text-content{text-align:center}.tile-grid .tile h3{font-size:1.3em;font-weight:700;margin:0;padding-top:.65rem}.tile-grid .tile h3:hover{text-decoration:underline}.tile-grid.horizontal .tile{flex-direction:row}.tile-grid.vertical .tile{align-items:flex-start;flex-direction:column;text-align:left}.tile-grid.vertical.center .tile{align-items:center}.tile-grid.vertical:not(.center) .tile img{align-self:flex-start;max-width:100%;width:auto}.tile-grid.horizontal .tile img{--max-image-size:inherit;flex-shrink:0;margin:0 20px 0 0;max-width:var(--max-image-size,180px);width:auto}.tile-grid.horizontal .tile img,.tile-grid.vertical .tile img{display:block;height:auto;max-height:var(--max-image-size,180px);object-fit:contain}.tile-grid.vertical .tile img{flex-shrink:1;margin:0 0 15px;max-width:100%;width:100%}.tile.transparent{background:transparent;box-shadow:none}@media (max-width:768px){.tile-grid[style]{--columns:1!important;gap:15px;margin:0;padding:0 15px}.tile-grid .tile{align-items:center;flex-direction:column!important;text-align:center}.tile-grid .tile img{height:auto;margin:0 0 15px;max-height:var(--max-image-size,180px);object-fit:contain;width:100%}}.file-toolbar{backdrop-filter:blur(10px);background:rgba(0,0,0,.8);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);display:flex;gap:8px;left:50%;opacity:0;padding:8px;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .2s ease;visibility:hidden;z-index:10}.tile-grid .tile:hover .file-toolbar{opacity:1;visibility:visible}.file-btn{align-items:center;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.file-btn:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.3);transform:translateY(-1px)}.file-view-btn:hover{background:rgba(59,130,246,.3);border-color:rgba(59,130,246,.5)}.file-download-btn:hover{background:rgba(34,197,94,.3);border-color:rgba(34,197,94,.5)}.file-btn svg{flex-shrink:0}@media (max-width:768px){.file-toolbar{border-radius:6px;gap:6px;padding:6px}.file-btn{font-size:11px;gap:4px;padding:6px 8px}.file-btn svg{height:14px;width:14px}}@media (max-width:480px){.file-toolbar{flex-direction:column;gap:4px;padding:4px}.file-btn{font-size:10px;justify-content:center;padding:6px}.file-btn svg{height:12px;width:12px}}.tile-video-modal-overlay{align-items:center;backdrop-filter:blur(4px);background:rgba(0,0,0,.8);display:flex;height:100%;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;width:100%;z-index:10000}.tile-video-modal-overlay.active{opacity:1;visibility:visible}.tile-video-modal-container{background:#000;border-radius:12px;box-shadow:0 25px 50px rgba(0,0,0,.5);height:90%;max-height:800px;max-width:1200px;overflow:hidden;position:relative;transform:scale(.9);transition:transform .3s ease;width:90%}.tile-video-modal-overlay.active .tile-video-modal-container{transform:scale(1)}.tile-video-modal-close{align-items:center;background:none;border:none;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:50px;font-weight:100;height:80px;justify-content:center;position:fixed;right:10px;text-shadow:0 2px 8px rgba(0,0,0,.8);top:10px;transition:all .2s ease;width:80px;z-index:10001}.tile-video-modal-close:hover{color:#fff;transform:scale(1.2)}.tile-video-modal-close:focus,.tile-video-modal-close:hover{background:none!important;border:none!important;box-shadow:none!important;outline:none!important}.tile-video-modal-content{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.tile-video-modal-content iframe{border:none}.tile-video-modal-content iframe,.tile-video-modal-content video{border-radius:12px;height:100%;transition:opacity .3s ease;width:100%}.tile-video-modal-content video{background:#000;object-fit:contain}.tile-video-play-overlay{align-items:center;background:rgba(0,0,0,.3);border-radius:12px;cursor:pointer;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;transition:background-color .2s ease;width:100%;z-index:10}.tile-video-play-overlay:hover{background:rgba(0,0,0,.5)}.tile-video-play-button{color:#fff;text-align:center;transition:transform .2s ease}.tile-video-play-button:hover{transform:scale(1.1)}.tile-video-play-button svg{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));margin-bottom:12px}.tile-video-play-button p{font-size:16px;font-weight:500;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.5)}.tile-video-loading{color:#fff;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:10002}.loading-spinner{animation:spin 1s linear infinite;border:3px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#279a93;height:40px;margin:0 auto 16px;width:40px}.tile-video-loading p{font-size:16px;font-weight:500;margin:0;opacity:.9}.tile-video-error{color:#fff;max-width:400px;padding:40px;text-align:center}.tile-video-error h3{font-size:24px;font-weight:600;margin:0 0 16px}.tile-video-error p{font-size:16px;line-height:1.5;margin:0 0 24px;opacity:.8}.tile-video-fallback-link{background:#279a93;border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:12px 24px;text-decoration:none;transition:background-color .2s ease}.tile-video-fallback-link:hover{background:#1f7a74;color:#fff;text-decoration:none}body.tile-video-modal-open{overflow:hidden}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.tile-video-modal-container{border-radius:8px;height:80%;width:95%}.tile-video-modal-close{font-size:40px;height:65px;right:8px;top:8px;width:65px}.tile-video-loading p{font-size:14px}.tile-video-error{padding:20px}.tile-video-error h3{font-size:20px}.tile-video-error p{font-size:14px}.tile-video-play-button svg{height:60px;width:60px}.tile-video-play-button p{font-size:14px}}@media (max-width:480px){.tile-video-modal-container{height:70%;width:98%}.tile-video-modal-close{font-size:35px;height:55px;right:5px;top:5px;width:55px}.tile-video-play-button svg{height:50px;width:50px}.tile-video-play-button p{font-size:12px}}