:root{--ease:cubic-bezier(.2,.7,.2,1)}.loader{position:fixed;inset:0;background:var(--paper);display:grid;place-items:center;z-index:100;transition:opacity .65s var(--ease),visibility .65s}.loader div{text-align:center}.loader img{width:170px;display:block;margin:0 auto 19px}.loader span{display:block;width:150px;height:2px;background:linear-gradient(90deg,var(--orange) 50%,var(--line) 50%);background-size:200% 100%;animation:load 1.1s var(--ease) forwards}.loader.is-hidden{opacity:0;visibility:hidden}.hero-copy>*{animation:rise .85s var(--ease) both}.hero-copy .eyebrow{animation-delay:.22s}.hero-copy h1{animation-delay:.32s}.hero-copy .lede{animation-delay:.42s}.hero-copy .hero-actions{animation-delay:.52s}.sun{animation:glow 3s ease-in-out infinite}.orbit-one{animation:spin 18s linear infinite}.orbit-two{animation:spin 26s linear infinite reverse}.card{animation:float 5s ease-in-out infinite}.card-right{animation-delay:-1.5s}.card-bottom{animation-delay:-3s}.button-primary{transition:transform .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease)}.button-primary:hover{transform:translateY(-4px);background:var(--blue);box-shadow:0 12px 28px rgba(20,41,52,.22)}.nav a:not(.nav-cta){position:relative}.nav a:not(.nav-cta):after{content:"";height:1px;background:var(--ink);position:absolute;left:0;bottom:-5px;width:100%;transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}.nav a:not(.nav-cta):hover:after{transform:scaleX(1);transform-origin:left}.project-art>*{transition:transform .7s var(--ease)}.project:hover .dots{transform:translate(-50%,-50%) scale(1.35) rotate(20deg)}.project:hover strong{transform:translateY(-10px) rotate(-4deg)}.project:hover .window{transform:scale(1.08) rotate(-2deg)}.project:hover .sphere{transform:translate(-50%,-50%) scale(1.23)}.project-hover{position:absolute!important;inset:0;background:rgba(20,41,52,.88);color:white;display:flex;align-items:center;justify-content:space-between;padding:26px;opacity:0;transform:translateY(100%);transition:opacity .35s var(--ease),transform .55s var(--ease)!important}.project:hover .project-hover{opacity:1;transform:none}.project-hover span{font:600 12px Manrope!important;position:static!important;color:#fff!important}.project-hover b{font-size:35px!important;position:static!important;color:#fff!important}.service-list article{transition:padding .35s var(--ease),background .35s var(--ease)}.service-list article:hover{padding-left:18px;padding-right:18px;background:rgba(255,255,255,.06)}@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-13px) rotate(2deg)}}@keyframes glow{0%,100%{box-shadow:0 0 0 16px rgba(237,124,25,.12)}50%{box-shadow:0 0 0 31px rgba(237,124,25,.05)}}@keyframes spin{to{transform:translate(-50%,-50%) rotate(342deg)}}@keyframes load{to{background-position:100% 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.loader{display:none}}
.whatsapp{position:fixed;right:25px;bottom:25px;z-index:20;display:flex;align-items:center;gap:10px;padding:13px 17px;border-radius:999px;background:#20c66b;color:white;text-decoration:none;font-size:13px;font-weight:800;box-shadow:0 11px 27px rgba(20,120,68,.28);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.whatsapp svg{width:23px;height:23px;fill:currentColor}.whatsapp:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 16px 35px rgba(20,120,68,.37)}.whatsapp:before{content:"";position:absolute;inset:-6px;border-radius:inherit;border:1px solid #20c66b;opacity:.6;animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(.9);opacity:.7}100%{transform:scale(1.25);opacity:0}}@media(max-width:440px){.whatsapp{right:17px;bottom:17px;padding:13px}.whatsapp span{display:none}}
