/* One looping row with perspective depth on desktop and mobile. */
#projects.projects-gateway{padding:0;background:radial-gradient(ellipse at 0% 50%,#4e1f6a2f,transparent 55%),#08070c;overflow:clip;color:#f5f0fc}
#projects.projects-gateway .project-ring{min-height:clamp(860px,94svh,980px);padding:64px 0 72px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:38px;isolation:isolate}
#projects.projects-gateway .project-ring .work-orbit{--orbit-stride:203px;position:relative;inset:auto;flex:none;width:100%;height:470px;z-index:0;overflow:clip;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);pointer-events:none}
#projects.projects-gateway .gateway-content{position:relative;z-index:2;width:min(620px,calc(100% - 40px));margin:0 auto;gap:27px;pointer-events:none;text-align:center}
#projects.projects-gateway .gateway-content>*{pointer-events:auto}
#projects.projects-gateway .project-search{margin:0;background:radial-gradient(ellipse at var(--glass-x,24%) var(--glass-y,0%),#ffffff12,transparent 68%),linear-gradient(135deg,#6e33881c,#ffffff06 55%,#4f256919);border-color:#bd86f13d;box-shadow:inset 0 1px 0 #ffffff24,0 20px 55px #0007,0 0 32px #7d32c51a;backdrop-filter:blur(32px) saturate(150%);-webkit-backdrop-filter:blur(32px) saturate(150%)}
.project-orbit-card{position:absolute;left:calc(50% + var(--orbit-slot,0)*var(--orbit-stride,203px));top:50%;width:calc(290px*var(--orbit-factor,1));aspect-ratio:9/16;display:block;isolation:isolate;border-radius:28px;border:1px solid #c98cff80;background:radial-gradient(circle at var(--glass-x,22%) var(--glass-y,4%),#ffffff24,transparent 52%),linear-gradient(145deg,#7d3ba82c,#25132f88 48%,#120b19cc);background-clip:padding-box;box-shadow:inset 0 1px 0 #ffffff70,inset 0 -1px 0 #a54dd044,0 0 0 1px #9d50c42c,0 0 24px #a33cff66,0 0 58px #7c24bd32,0 24px 58px #000b;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);opacity:var(--orbit-opacity,1);transform:translate(-50%,-50%) perspective(900px) rotateY(var(--orbit-yaw,0deg)) rotate(var(--orbit-tilt,0deg)) scale(var(--orbit-zoom,1));transition:box-shadow .45s ease,transform .45s cubic-bezier(.22,1,.36,1),opacity .35s ease;pointer-events:auto;overflow:hidden;text-align:center}
.project-orbit-card:before{content:'';position:absolute;inset:3px;border:1px solid #f1d9ff45;border-radius:25px;z-index:3;pointer-events:none;background:linear-gradient(145deg,#ffffff18,transparent 28%,transparent 72%,#a14ad819)}
.orbit-card-media{position:absolute;inset:10px;overflow:hidden;border-radius:20px;background:#09070d;box-shadow:inset 0 0 0 1px #ffffff12,0 10px 26px #0008}
.orbit-card-media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;filter:blur(var(--orbit-blur,0px));transition:filter .35s ease}
.project-orbit-card:hover .orbit-card-media img,.project-orbit-card:focus-visible .orbit-card-media img{filter:blur(0)}
.orbit-project-name{position:absolute;left:5%;right:5%;bottom:5%;z-index:3;border-radius:9px;padding:7px 5px;background:#20112bba;backdrop-filter:blur(10px);color:#fff;font-size:10px;line-height:1.25;opacity:0;translate:0 5px;transition:opacity .3s,translate .3s;pointer-events:none}
.project-orbit-card:hover,.project-orbit-card:focus-visible{--orbit-zoom:1.055;opacity:1;box-shadow:inset 0 1px 0 #ffffff88,inset 0 -1px 0 #b45fe05c,0 0 0 1px #c58bf059,0 0 30px #b240ff91,0 0 72px #8129c43b,0 28px 60px #000b;outline:0}
.project-orbit-card:hover .orbit-project-name,.project-orbit-card:focus-visible .orbit-project-name{opacity:1;translate:0 0}
.project-orbit-card[hidden]{display:none}
.orbit-running .project-orbit-card{transition:box-shadow .6s ease}
.orbit-running .project-orbit-card:hover,.orbit-running .project-orbit-card:focus-visible{transition:box-shadow .6s ease,transform .5s cubic-bezier(.22,1,.36,1)}
#projects.portfolio-collection .project-card figure{border:1px solid #cb9ee66e;border-radius:24px;box-shadow:inset 0 1px 0 #fff,0 0 0 3px #c6a0e411,0 0 24px #9c43d71b;transition:box-shadow .6s ease}
#projects.portfolio-collection .project-card:hover figure,#projects.portfolio-collection .project-card:focus-visible figure{box-shadow:inset 0 1px 0 #fff,0 0 0 3px #bb85e62a,0 0 30px #9e43df45}
.scroll-motion-enabled .projects-gateway .gateway-content{translate:0 calc((1 - var(--section-arrival,1))*22px);opacity:calc(.55 + var(--section-arrival,1)*.45)}
.scroll-motion-enabled .projects-gateway .gateway-content:focus-within{translate:none;opacity:1}
.scroll-motion-enabled #projects.projects-gateway .work-orbit{translate:none}
@media(max-width:980px){
  #projects.projects-gateway .project-ring{min-height:0;padding:34px 0 58px;display:flex;flex-direction:column;gap:32px}
  #projects.projects-gateway .project-ring .work-orbit{--orbit-stride:min(161px,41.3vw);position:relative;inset:auto;flex:none;width:100%;height:300px}
  #projects.projects-gateway .gateway-content{width:calc(100% - 36px);max-width:520px;margin:0 auto;gap:24px}
  .project-orbit-card{width:calc(min(230px,59vw)*var(--orbit-factor,1));border-radius:26px;box-shadow:inset 0 1px 0 #ffffff70,0 0 22px #a33cff55,0 15px 34px #0009}
  .project-orbit-card:before{border-radius:23px}
  .orbit-card-media{inset:9px;border-radius:18px}
}
@media(max-width:700px){#projects.projects-gateway .project-ring .work-orbit{height:290px}.orbit-project-name{font-size:9px;padding:6px 4px}}
@media(prefers-reduced-motion:reduce){.project-orbit-card,.orbit-project-name,#projects.portfolio-collection .project-card figure{transition:none}.project-orbit-card:hover,.project-orbit-card:focus-visible{--orbit-zoom:1}}
.paused .project-orbit-card,.paused .orbit-project-name,.paused #projects.portfolio-collection .project-card figure{transition:none}
