/* I AM DESIGN — MOTION LAYER v1 · Neulis · #3d3d8a · #f26f2a */
.stage{opacity:0;transform:translateY(22px)}
.stage.go{animation:stageIn .9s forwards cubic-bezier(.2,.8,.3,1)}
@keyframes stageIn{to{opacity:1;transform:none}}
.rotate-line{font-family:var(--display);font-weight:300;font-size:clamp(18px,1.8vw,26px);color:var(--ink-soft);margin:-32px 0 56px}
.rotate-line .rot{font-weight:700;font-style:italic;color:var(--accent);display:inline-block;min-width:7ch}
.rot span{display:inline-block;animation:wordIn .65s cubic-bezier(.2,.9,.3,1)}
@keyframes wordIn{from{opacity:0;transform:translateY(.5em) skewY(3deg);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s cubic-bezier(.2,.8,.3,1),transform .9s cubic-bezier(.2,.8,.3,1);transition-delay:var(--d,0s)}
.reveal.on{opacity:1;transform:none}
.hero{overflow:hidden}
.hero-glow{position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(600px circle at var(--gx,30%) var(--gy,30%),rgba(61,61,138,0.07),transparent 65%),radial-gradient(900px circle at calc(var(--gx,30%) + 20%) calc(var(--gy,30%) + 25%),rgba(242,111,42,0.05),transparent 60%);transition:background .2s}
.hero .container{position:relative;z-index:1}
.work{position:relative}
.work-img{position:relative;overflow:hidden;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .8s,box-shadow .5s;transform-origin:center bottom}
.work:hover .work-img{transform:scale(1.02);filter:saturate(1.18) contrast(1.04);box-shadow:0 24px 60px rgba(61,61,138,0.18)}
.work-img::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 40%,rgba(255,255,255,0.14) 50%,transparent 60%);transform:translateX(-120%);pointer-events:none}
.work:hover .work-img::after{transform:translateX(120%);transition:transform 1s ease}
.work-tag{transition:color .3s,transform .3s}
.work:hover .work-tag{color:var(--accent);transform:translateX(4px)}
.service{transition:transform .4s cubic-bezier(.2,.8,.3,1),border-color .4s,box-shadow .4s}
.service:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(61,61,138,0.10);border-color:rgba(242,111,42,0.45)}
.service-num{transition:color .3s,letter-spacing .3s}
.service:hover .service-num{color:var(--accent);letter-spacing:.12em}
.podcast-play,.play-circle{animation:playPulse 2.8s ease-in-out infinite}
@keyframes playPulse{0%,100%{box-shadow:0 0 0 0 rgba(242,111,42,0.35)}50%{box-shadow:0 0 0 18px rgba(242,111,42,0)}}
.clients-row.marquee-on{flex-wrap:nowrap;width:max-content;justify-content:flex-start;animation:clientsScroll 30s linear infinite}
.clients-row.marquee-on:hover{animation-play-state:paused}
.clients{overflow:hidden}
@keyframes clientsScroll{to{transform:translateX(-50%)}}
.cta-mail{background-image:linear-gradient(var(--accent),var(--accent));background-repeat:no-repeat;background-position:0 100%;background-size:0% 2px;transition:background-size .5s cubic-bezier(.2,.8,.3,1),color .3s}
.cta-mail:hover{background-size:100% 2px}
.sticky-cta{position:fixed;right:24px;bottom:24px;z-index:999;font-family:var(--display);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em;background:var(--accent);color:#fff;padding:15px 26px;border-radius:999px;box-shadow:0 10px 34px rgba(242,111,42,0.4);opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .4s,transform .4s,background .5s,box-shadow .5s}
.sticky-cta.show{opacity:1;pointer-events:auto;transform:none}
.sticky-cta:hover{transform:translateY(-3px);background:var(--accent-hover)}
.sticky-cta.inverted{background:var(--ink);box-shadow:0 10px 34px rgba(61,61,138,0.4)}
.sticky-cta.inverted:hover{background:var(--ink-deep)}
@media (prefers-reduced-motion:reduce){.stage,.reveal{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.clients-row.marquee-on,.podcast-play,.play-circle,.rot span{animation:none!important}}
@media (max-width:640px){.sticky-cta{right:16px;bottom:16px;padding:13px 20px}.rotate-line{margin:-24px 0 48px}}