/* Sixto Projects Grid — scoped widget styles */
.sc-grid{ --sc-cols:3; --sc-gap:26px; --sc-ratio:1/1; perspective:1400px; }
.sc-grid .sc-grid-inner{ display:grid; grid-template-columns:repeat(var(--sc-cols),1fr);
  gap:var(--sc-gap); transform-style:preserve-3d; will-change:transform; }
.sc-tile{ position:relative; aspect-ratio:var(--sc-ratio); border-radius:14px; display:block;
  text-decoration:none; color:#fff; background:#081b4d; transform-style:preserve-3d;
  box-shadow:0 18px 46px rgba(2,8,30,.35); transition:box-shadow .45s ease;
  will-change:transform; -webkit-tap-highlight-color:transparent; }
.sc-tile, .sc-tile *{ -webkit-touch-callout:none; }
.sc-tile.hov{ box-shadow:0 32px 84px rgba(2,8,30,.55), 0 0 44px rgba(123,47,247,.35); z-index:5; }
.sc-inner{ position:absolute; inset:0; border-radius:inherit; overflow:hidden;
  clip-path:inset(100% 0 0 0 round 14px); transition:clip-path 1.1s cubic-bezier(.2,.8,.2,1); }
.sc-tile.in .sc-inner{ clip-path:inset(0 0 0 0 round 14px); }
.sc-tile video, .sc-tile img{ position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; display:block; border-radius:inherit; clip-path:inset(0 round 14px);
  transform:scale(1); transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.sc-tile.hov video, .sc-tile.hov img{ transform:scale(1.055); }
.sc-dither{ position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none;
  opacity:0; transition:opacity .35s ease; image-rendering:pixelated; }
.sc-tile.hov .sc-dither{ opacity:1; }
.sc-meta{ position:absolute; left:0; right:0; bottom:0; z-index:3; padding:20px 22px 22px;
  display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end;
  gap:var(--sc-meta-gap,6px);
  background:linear-gradient(0deg, rgba(2,8,30,.97) 0%, rgba(2,8,30,.86) 35%, rgba(2,8,30,.4) 70%, transparent 100%);
  opacity:0; transform:translateY(10px); transition:opacity .4s ease, transform .4s ease; }
.sc-tile.hov .sc-meta{ opacity:1; transform:translateY(0); }
.sc-t{ font-weight:700; font-size:var(--sc-t-size,1.08rem); line-height:var(--sc-t-lh,1.1);
  letter-spacing:-.01em; color:var(--sc-t-color,#ffffff); text-shadow:0 2px 12px rgba(0,0,0,.7); }
.sc-c{ font-size:.64rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  color:var(--sc-c-color,#aebcec); text-shadow:0 1px 8px rgba(0,0,0,.7);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
@property --scAng{ syntax:'<angle>'; initial-value:0deg; inherits:false; }
.sc-tile.sc-glow::before{ content:''; position:absolute; inset:-3px; border-radius:17px; padding:3px;
  background:conic-gradient(from var(--scAng), var(--sc-g1,#21d4fd), var(--sc-g2,#b721ff), var(--sc-g3,#ff2d9a), var(--sc-g1,#21d4fd));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:0; transition:opacity .35s ease; pointer-events:none; z-index:6;
  animation:scSpin 3.2s linear infinite paused; }
.sc-tile.sc-glow.hov::before{ opacity:1; animation-play-state:running; }
@keyframes scSpin{ to{ --scAng:360deg; } }
@media (hover:none){
  .sc-meta{ opacity:1; transform:none; }
}
