/* DZignn homepage kinetic typography — intentionally isolated from the shared system. */
.home .hero-copy{position:relative;overflow:hidden;isolation:isolate}
.home .hero-copy:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,transparent 0 49.92%,rgba(17,16,15,.055) 49.92% 50.08%,transparent 50.08%),linear-gradient(0deg,transparent 0 49.92%,rgba(17,16,15,.045) 49.92% 50.08%,transparent 50.08%);background-size:88px 88px;opacity:0;transform:scale(1.05);transition:opacity .7s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}
.home.hero-motion-ready .hero-copy:before{opacity:1;transform:scale(1)}
.home .kinetic-title{position:relative;z-index:2;perspective:1100px;transform-style:preserve-3d;--pointer-x:0;--pointer-y:0;--hero-scroll:0}
.home .kinetic-line{position:relative;display:block;width:max-content;max-width:100%;transform-style:preserve-3d;will-change:transform,filter;transition:transform .55s cubic-bezier(.16,1,.3,1)}
.home .kinetic-line .glyph{position:relative;display:inline-block;transform-origin:50% 88%;will-change:transform,opacity,filter;backface-visibility:hidden}
.home .kinetic-line .glyph.space{width:.245em}
.home .kinetic-title .line-build{transform:translate3d(calc(var(--pointer-x) * -5px),calc(var(--pointer-y) * -3px + var(--hero-scroll) * -9px),18px) rotateX(calc(var(--pointer-y) * -.35deg))}
.home .kinetic-title .line-digital{transform:translate3d(calc(var(--pointer-x) * 8px),calc(var(--pointer-y) * 4px + var(--hero-scroll) * -17px),34px) rotateY(calc(var(--pointer-x) * .55deg))}
.home .kinetic-title .line-systems{transform:translate3d(calc(var(--pointer-x) * -3px),calc(var(--pointer-y) * 6px + var(--hero-scroll) * -26px),52px) rotateX(calc(var(--pointer-y) * .45deg))}
.home .kinetic-title .line-tagline{transform:translate3d(calc(var(--pointer-x) * 11px),calc(var(--pointer-y) * -4px + var(--hero-scroll) * -12px),65px)}
.home.hero-motion-enabled .kinetic-line .glyph{opacity:0}
.home.hero-motion-enabled .kinetic-title .line-tagline{opacity:0;filter:blur(10px)}
.home.hero-motion-enabled .kinetic-title .line-digital{clip-path:inset(0 100% 0 0)}
.home .kinetic-title .line-digital:before{content:attr(data-text);position:absolute;inset:0;color:var(--orange);-webkit-text-stroke:0 transparent;clip-path:inset(0 100% 0 0);pointer-events:none;z-index:2;mix-blend-mode:multiply}
.home .kinetic-title .line-digital:after{left:42%;top:-6%;height:112%;width:7px;transform:translate3d(-210px,-140px,0) rotate(28deg) scaleY(.15);transform-origin:center;background:var(--orange);box-shadow:0 0 0 1px var(--paper);opacity:0;will-change:transform,opacity}
.home .kinetic-title:before{content:"DZ / KINETIC TYPE 01";position:absolute;right:0;top:-28px;font:800 8px/1 monospace;letter-spacing:.16em;color:rgba(17,16,15,.55);opacity:0;transform:translateY(8px)}
.home .kinetic-title:after{content:"";position:absolute;left:-8%;top:49%;width:116%;height:1px;background:var(--ink);opacity:0;transform:scaleX(0);transform-origin:left;pointer-events:none}
.home.hero-motion-ready .kinetic-title:before{animation:heroMetaIn .55s .15s both}
.home.hero-motion-ready .kinetic-title:after{animation:heroRule .85s .12s cubic-bezier(.16,1,.3,1) both,heroRuleOut .55s 1.15s both}
.home.hero-motion-ready .kinetic-title .line-digital{animation:digitalReveal .9s .42s cubic-bezier(.16,1,.3,1) both}
.home.hero-motion-ready .kinetic-title .line-digital:before{animation:digitalFill 1.25s .72s cubic-bezier(.76,0,.24,1) both}
.home.hero-motion-ready .kinetic-title .line-digital:after{animation:slashStrike .92s .82s cubic-bezier(.16,1,.3,1) both,slashIdle 4.8s 1.9s ease-in-out infinite}
.home.hero-motion-ready .kinetic-title .line-tagline{animation:taglineIn .9s 1.28s cubic-bezier(.16,1,.3,1) both}
.home .kinetic-line.is-live .glyph:hover{color:var(--orange);transform:translateY(-.08em) rotate(-2deg)!important;transition:transform .22s ease,color .22s ease}
.home .hero-copy .hero-code,.home .hero-copy>p,.home .hero-actions,.home .hero-proof{position:relative;z-index:3}
.home.hero-motion-enabled .hero-copy .hero-code,.home.hero-motion-enabled .hero-copy>p,.home.hero-motion-enabled .hero-actions,.home.hero-motion-enabled .hero-proof{opacity:0;transform:translateY(18px)}
.home.hero-motion-ready .hero-copy .hero-code{animation:supportIn .55s .05s both}
.home.hero-motion-ready .hero-copy>p{animation:supportIn .65s 1.45s both}
.home.hero-motion-ready .hero-actions{animation:supportIn .65s 1.58s both}
.home.hero-motion-ready .hero-proof{animation:supportIn .65s 1.72s both}
.home .hero-kinetic-cursor{position:absolute;left:0;top:0;width:10px;height:10px;border:1px solid var(--orange);border-radius:50%;pointer-events:none;z-index:8;opacity:0;transform:translate3d(-50%,-50%,0);transition:opacity .25s,width .25s,height .25s,background .25s;mix-blend-mode:multiply}
.home .hero-copy:hover .hero-kinetic-cursor{opacity:.9}
.home .hero-kinetic-cursor.is-over-text{width:34px;height:34px;background:rgba(255,87,42,.16)}
@keyframes heroMetaIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes heroRule{from{opacity:.9;transform:scaleX(0)}to{opacity:.9;transform:scaleX(1)}}
@keyframes heroRuleOut{from{opacity:.9}to{opacity:0}}
@keyframes digitalReveal{from{clip-path:inset(0 100% 0 0);filter:blur(8px)}to{clip-path:inset(0 0 0 0);filter:none}}
@keyframes digitalFill{0%{clip-path:inset(0 100% 0 0);opacity:0}20%{opacity:.9}65%{clip-path:inset(0 0 0 0);opacity:.9}100%{clip-path:inset(0 0 0 100%);opacity:0}}
@keyframes slashStrike{0%{opacity:0;transform:translate3d(-210px,-140px,0) rotate(28deg) scaleY(.15)}35%{opacity:1}72%{transform:translate3d(5px,6px,0) rotate(28deg) scaleY(1.1)}100%{opacity:1;transform:translate3d(0,0,0) rotate(28deg) scaleY(1)}}
@keyframes slashIdle{0%,100%{transform:translate3d(0,0,0) rotate(28deg) scaleY(1)}50%{transform:translate3d(2px,-5px,0) rotate(26deg) scaleY(1.035)}}
@keyframes taglineIn{from{opacity:0;filter:blur(10px);letter-spacing:.08em;transform:translate3d(0,22px,0)}to{opacity:1;filter:none;letter-spacing:-.03em;transform:none}}
@keyframes supportIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (max-width:900px){
 .home .kinetic-title:before{display:none}
 .home .kinetic-title .line-digital:after{width:5px}
 .home .hero-kinetic-cursor{display:none}
 .home .kinetic-title .line-build,.home .kinetic-title .line-digital,.home .kinetic-title .line-systems,.home .kinetic-title .line-tagline{transform:none}
}
@media (max-width:520px){
 .home .kinetic-line .glyph.space{width:.19em}
 .home .kinetic-title .line-digital:after{left:44%;height:108%}
}
@media (prefers-reduced-motion:reduce){
 .home.hero-motion-enabled .kinetic-line .glyph,.home.hero-motion-enabled .kinetic-title .line-tagline,.home.hero-motion-enabled .hero-copy .hero-code,.home.hero-motion-enabled .hero-copy>p,.home.hero-motion-enabled .hero-actions,.home.hero-motion-enabled .hero-proof{opacity:1;transform:none;filter:none}
 .home.hero-motion-enabled .kinetic-title .line-digital{clip-path:none}
 .home .kinetic-title .line-digital:before,.home .kinetic-title:before,.home .kinetic-title:after,.home .hero-kinetic-cursor{display:none}
 .home .kinetic-title .line-digital:after{opacity:1;transform:rotate(28deg);animation:none}
 .home .kinetic-line{transition:none!important;transform:none!important}
}

@media (max-width:700px){
 .home.hero-motion-static .kinetic-line,
 .home.hero-motion-static .kinetic-title .line-tagline,
 .home.hero-motion-static .hero-copy .hero-code,
 .home.hero-motion-static .hero-copy>p,
 .home.hero-motion-static .hero-actions,
 .home.hero-motion-static .hero-proof{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}
 .home.hero-motion-static .kinetic-title:before,
 .home.hero-motion-static .kinetic-title:after,
 .home.hero-motion-static .kinetic-title .line-digital:before{display:none!important}
 .home.hero-motion-static .kinetic-title .line-digital:after{opacity:1;transform:rotate(28deg);animation:none}
}
