/* Local-cover and original-video adaptation of the saved Aceternity Link Preview pattern.
   A quiet anchor and a complete image: no card, arrow or screenshot service. */
.project-preview-link{
 display:inline-flex;align-items:center;min-height:36px;max-width:100%;
 font-family:inherit;font-size:14px;line-height:1.4;font-weight:400;
 letter-spacing:-.015em;color:#c4c4c4;text-decoration:none;
 transition:color var(--motion-color,180ms) ease;
}
.project-preview-label{
 text-decoration:underline;text-decoration-color:#555;text-decoration-thickness:1px;
 text-underline-offset:4px;transition:text-decoration-color var(--motion-color,180ms) ease;
}
.project-preview-link:focus-visible{color:#fff}
.project-preview-link:focus-visible .project-preview-label{text-decoration-color:currentColor}
.project-preview{
 position:fixed;z-index:45;display:flex;box-sizing:content-box;
 margin:0;padding:0;background:transparent;border:0;line-height:0;
 opacity:0;transform:translateY(var(--preview-shift,4px)) scale(.98);
 transform-origin:var(--preview-origin,50% 100%);
 transition:opacity 140ms ease,transform 140ms var(--ease-out,cubic-bezier(.22,.68,0,1));
 pointer-events:none;isolation:isolate;
}
.project-preview[hidden]{display:none}
.project-preview[data-side="top"]{padding-bottom:12px;--preview-shift:4px}
.project-preview[data-side="bottom"]{padding-top:12px;--preview-shift:-4px}
.project-preview[data-side="left"]{padding-right:12px;--preview-shift:0px}
.project-preview[data-side="right"]{padding-left:12px;--preview-shift:0px}
.project-preview[data-open="true"]{
 opacity:1;transform:translateY(0) scale(1);pointer-events:auto;
 transition-duration:var(--motion-ui,220ms);
}
.project-preview img,.project-preview video{
 display:block;width:100%;height:100%;max-width:none;max-height:none;
 object-fit:contain;flex:none;border-radius:12px;
 box-shadow:0 8px 26px #0005;
}
.project-preview video{
 position:absolute;opacity:0;pointer-events:none;box-shadow:none;
 transition:opacity 140ms var(--ease-out,cubic-bezier(.22,.68,0,1));
}
.project-preview video[data-ready="true"]{opacity:1}
.project-preview[data-instant="true"]{transform:none;transition:none}
@media(hover:hover) and (pointer:fine){
 .project-preview-link:hover{color:#fff}
 .project-preview-link:hover .project-preview-label{text-decoration-color:currentColor}
}
@media(pointer:coarse){.project-preview-link{min-height:44px}}
@media(prefers-reduced-motion:reduce){
 .project-preview,.project-preview[data-open="true"]{transform:none;transition:none}
 .project-preview-link,.project-preview-label{transition:none}
 .project-preview video{display:none;transition:none}
}
