/* Real work, moving through a blue / turquoise / periwinkle atmosphere. */
.services-new,.visual-projects,.process-section,.reel-section{position:relative;isolation:isolate}.services-new:before,.visual-projects:before,.process-section:after,.reel-section:before{content:'';position:absolute;inset:15% -4% 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 10% 55%,#255cd659,transparent 55%),radial-gradient(ellipse at 90% 85%,#18ad9b3d,transparent 55%);filter:blur(35px)}.service-bento{grid-template-columns:1.05fr 1fr}.service-main{display:flex;flex-direction:column;justify-content:flex-end}.service-main .tile-window{height:330px;padding:0;transform:perspective(1000px) rotateY(7deg) rotateX(3deg);overflow:hidden;margin:5px -5px 35px;flex:1;min-height:280px}.tile-window>.tile-real{width:100%;height:100%;object-fit:cover;object-position:left top}.tile-window:has(.tile-real)>:not(.tile-real){display:none}.service-network{margin:-5px 0 20px}.service-network svg{width:100%;height:110px;overflow:visible}.service-network rect{fill:#10253b;stroke:#93c8fb70}.service-network path{stroke:#a6e1fa;stroke-width:1.6;fill:none}.service-network .network-track{stroke:#326080}.service-network .network-light{stroke-width:3;stroke-dasharray:40 230;animation:network-run 4s linear infinite;filter:drop-shadow(0 0 6px #7edefb)}@keyframes network-run{to{stroke-dashoffset:-270}}.photo-tile{background:linear-gradient(140deg,#122540,#0a171f);padding-top:22px}.photo-ribbon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;height:150px;margin-bottom:25px}.photo-ribbon figure{overflow:hidden;border-radius:9px;transform:rotate(-4deg);transition:transform .6s}.photo-ribbon figure:nth-child(2){transform:translateY(-8px) rotate(4deg)}.photo-ribbon figure:nth-child(3){transform:rotate(-2deg)}.photo-ribbon img{height:100%;width:100%;object-fit:cover}.photo-tile:hover .photo-ribbon figure{transform:rotate(0) translateY(-5px)}
.reel-section{padding:70px 0 100px;overflow:hidden}.reel-section:before{inset:15% -5% -10%;background:radial-gradient(ellipse at 20% 75%,#135def77,transparent 60%),radial-gradient(ellipse at 85% 75%,#10b9b74a,transparent 60%)}.tablet-perspective{perspective:1500px;padding:25px 30px 15px}.reel-tablet{position:relative;border:2px solid #8094ab;border-radius:38px;padding:23px;background:linear-gradient(150deg,#313e4c,#080b10 35%,#29323e);box-shadow:0 45px 80px #0009;transform:rotateX(var(--tablet-rotate,8deg)) scale(var(--tablet-scale,.96));transform-origin:center bottom;will-change:transform}.tablet-camera{position:absolute;top:8px;left:50%;width:6px;height:6px;background:#05080f;border:1px solid #52728e;border-radius:50%}.reel-viewport{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:18px;background:#05080f}.reel-viewport>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.reel-scrim{position:absolute;inset:0;background:linear-gradient(0deg,#030b18e6,transparent 70%)}.reel-start{position:absolute;inset:0;margin:auto;width:max-content;max-width:90%;height:72px;padding:0 26px;display:flex;align-items:center;gap:16px;background:#091729d9;color:#fff;border:1px solid #c7e9ff99;border-radius:50px;cursor:pointer;backdrop-filter:blur(12px)}.reel-start svg{width:28px;height:28px}.reel-start:hover{background:#164f8ae8}.reel-brand{position:absolute;left:35px;bottom:24px;font:700 clamp(23px,4vw,50px) var(--display);letter-spacing:-.04em;pointer-events:none}.reel-viewport iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.reel-note{display:flex;justify-content:space-between;gap:25px;color:#b7c5d7;font-size:12px;margin:22px 32px 0}.reel-note a{color:#a6e1fa}.reel-section.is-playing .reel-tablet{transform:none!important}
.visual-projects{padding-block:60px 100px}.project-showcase{display:flex;flex-direction:column;gap:70px}.showcase-project{display:grid;grid-template-columns:1.7fr 1fr;gap:45px;align-items:center;position:relative;padding:35px;border-radius:24px;background:linear-gradient(130deg,#18304d80,#08121f80);border:1px solid #7da9d324}.showcase-project:nth-child(2){grid-template-columns:1fr 1.7fr;background:linear-gradient(130deg,#101329,#20324b80)}.showcase-project:nth-child(2) .project-screen{order:2}.showcase-project:nth-child(3){background:linear-gradient(130deg,#0b344280,#08121f80)}.project-screen{display:block;position:relative;overflow:hidden;border-radius:13px;border:1px solid #bcd8f855;box-shadow:0 22px 35px #0007;transform:perspective(1000px) rotateY(var(--screen-rotate,-3deg)) translateY(var(--screen-y,0px));will-change:transform}.screen-chrome{padding:10px 13px;background:#172334;color:#b5cadc;display:flex;justify-content:space-between;font-size:11px;gap:12px}.screen-chrome>span:first-child{font-size:7px;color:#a6e1fa}.project-screen>img{display:block;width:100%;height:auto;aspect-ratio:1265/720;object-fit:cover;object-position:top}.project-description h3{font-size:clamp(28px,3vw,43px);margin:15px 0}.project-description p{font-size:17px;margin-bottom:22px}.project-description .text-link{font-size:15px;font-weight:700}.project-description small{display:block;font-size:12px;color:#8fa4bc;margin-top:24px}.project-index{font:italic 28px Georgia;color:#9dd8fb}.project-screen:hover{border-color:#cff2ff}
.process-section{overflow:visible}.process-section:after{inset:0 -4%;background:radial-gradient(ellipse at 10% 10%,#5364e545,transparent 55%),radial-gradient(ellipse at 85% 60%,#0c8bce45,transparent 60%)}.process-road{max-width:1050px;gap:95px;padding-block:15px}.process-road:before{display:none}.process-card{width:43%;min-height:205px;align-items:flex-start;padding:30px;z-index:1;background:linear-gradient(145deg,#11182b,#080f19);box-shadow:0 18px 40px #0005}.process-card:nth-of-type(even){justify-self:end}.process-card>span{display:grid;place-items:center;font:700 17px var(--display);border:1px solid #93c7ff44;border-radius:12px;min-width:44px;height:44px;background:#17345460;box-shadow:0 0 25px #6886ff24}.scroll-trail{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;stroke-width:3;fill:none}.trail-track{stroke:#8cacdf25;stroke-dasharray:.006 .009}.trail-light{stroke:url(#trail-gradient);stroke-dasharray:1;stroke-dashoffset:var(--path-offset,1);filter:drop-shadow(0 0 7px #6eb7ff);stroke-linecap:round}.blue-landing .visual-projects .section-intro{max-width:800px}.blue-landing .visual-projects .project-description p{color:#b4c4d7}.blue-landing .reel-section .section-intro h2{font-size:clamp(38px,4.7vw,66px)}.blue-landing .service-network{margin-bottom:28px}.motion-paused .reel-tablet,.motion-paused .project-screen{will-change:auto}.motion-paused .trail-light{stroke-dashoffset:0}
@media(max-width:760px){.service-bento{grid-template-columns:1fr}.service-main .tile-window{min-height:210px;height:210px;flex:auto}.photo-ribbon{height:130px}.reel-section{padding:40px 0 60px}.tablet-perspective{padding:0;perspective:none}.reel-tablet{padding:13px;border-radius:22px;transform:none}.reel-viewport{border-radius:10px}.tablet-camera{top:4px;width:4px;height:4px}.reel-start{height:52px;padding:0 16px;font-size:13px;gap:8px}.reel-start svg{width:20px}.reel-brand{left:15px;bottom:12px;font-size:22px}.reel-note{display:block;margin:18px 0 0;font-size:12px}.reel-note a{display:block;margin-top:10px}.visual-projects{padding-block:30px 60px}.project-showcase{gap:25px}.showcase-project,.showcase-project:nth-child(2){grid-template-columns:1fr;padding:16px;gap:25px}.showcase-project:nth-child(2) .project-screen{order:0}.project-screen{transform:none!important}.project-description{padding:0 7px 12px}.project-description h3{font-size:32px}.project-description small{margin-top:15px}.screen-chrome{font-size:10px}.process-road{gap:55px;padding-left:22px}.process-card{width:100%;min-height:0;padding:23px;gap:15px}.process-card>span{min-width:36px;height:36px;font-size:14px}.scroll-trail{width:18px;left:0}.trail-light,.trail-track{stroke-width:60}.process-card h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.project-screen,.reel-tablet{transform:none!important;will-change:auto}.trail-light{stroke-dashoffset:0!important}.network-light{animation:none!important}}
.process-road .process-card{justify-self:start}.process-road .process-card:nth-of-type(even){justify-self:end}
/* Pointer choreography: independent screen plane, image parallax and moving reflection. */
@media(hover:hover) and (pointer:fine) and (min-width:761px){
 .showcase-project{--project-light:121,190,255;perspective:1100px;overflow:visible;transition:border-color .35s,background-color .35s}
 .project-osc{--project-light:155,149,255}.project-predlabs{--project-light:90,224,236}
 .showcase-project .project-screen{transform-style:preserve-3d;transform:perspective(1000px) rotateX(var(--pointer-rx,0deg)) rotateY(calc(var(--screen-rotate,-3deg) + var(--pointer-ry,0deg))) translateY(var(--screen-y,0px));transition:transform .6s cubic-bezier(.2,.75,.2,1),box-shadow .45s,border-color .35s;isolation:isolate}
 .showcase-project.pointer-active .project-screen{transform:perspective(1000px) rotateX(var(--pointer-rx,0deg)) rotateY(var(--pointer-ry,0deg)) translateY(-12px) scale(1.045);transition:transform .15s ease-out,box-shadow .35s;box-shadow:0 34px 60px #000b,0 0 36px rgba(var(--project-light),.16);border-color:rgba(var(--project-light),.8);z-index:2}
 .showcase-project .project-screen:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:3;border-radius:inherit;opacity:0;background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%),rgba(var(--project-light),.24),transparent 60%),linear-gradient(115deg,transparent 20%,#ffffff12 45%,transparent 65%);transition:opacity .4s;mix-blend-mode:screen}
 .showcase-project.pointer-active .project-screen:after{opacity:1}
 .showcase-project .project-screen>img{transform:scale(1.025);transition:transform .65s cubic-bezier(.2,.75,.2,1);transform-origin:center}
 .showcase-project.pointer-active .project-screen>img{transform:translate(var(--image-x,0px),var(--image-y,0px)) scale(1.055);transition:transform .2s ease-out}
 .showcase-project .screen-chrome{position:relative;z-index:4;box-shadow:0 3px 15px #0004}
 .showcase-project.pointer-active{border-color:rgba(var(--project-light),.38)}
 .showcase-project .project-description{transition:transform .5s cubic-bezier(.2,.75,.2,1)}
 .showcase-project.pointer-active .project-description{transform:translateY(-4px)}
}
.motion-paused .showcase-project .project-screen,.motion-paused .showcase-project .project-screen>img,.motion-paused .showcase-project .project-description{transform:none!important;transition:none!important}.motion-paused .project-screen:after{opacity:0!important}
@media(prefers-reduced-motion:reduce){.showcase-project .project-screen,.showcase-project .project-screen>img,.showcase-project .project-description{transform:none!important;transition:none!important}.showcase-project .project-screen:after{display:none}}
