.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity .3s}.page-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;background-color:#fff;opacity:0;transition:opacity .4s ease-in-out;pointer-events:none}.page-loading.active{opacity:1;pointer-events:auto}.page-loading-inner{position:absolute;top:50%;left:50%;display:flex;align-items:center;justify-content:center;width:100%;transform:translate(-50%,-50%)}.page-spinner{width:2.5rem;height:2.5rem;margin-right:.75rem;border-radius:50%;border:.25rem solid rgba(64,76,247,.25);border-top-color:#404cf7;animation:spinner .75s linear infinite}@keyframes spinner{to{transform:rotate(1turn)}}.touch-effect{position:relative;overflow:hidden}.touch-effect:after{content:"";display:block;position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,#fff 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .4s,opacity .8s}.touch-effect:active:after{transform:scale(0);opacity:.3;transition:0s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;width:100%}.skill-item{display:flex;justify-content:center;align-items:center;transition:transform .2s ease-in-out;cursor:pointer;padding:.7rem}.skill-item:hover{transform:scale(1.15)}.skill-item img{transition:transform .2s ease-in-out;display:block}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-spinner{width:50px;height:50px;border-radius:50%;border:5px solid rgba(0,0,0,.1);border-top-color:#3498db;animation:spin 1s ease-in-out infinite}.spinner{width:40px;height:40px;border-radius:50%;border:4px solid rgba(0,0,0,.1);border-top-color:#3498db;animation:spin .8s linear infinite}.placeholder-loading{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading-wave 1.5s infinite}.service-placeholder{background:linear-gradient(90deg,#f5f5f5 25%,#e8e8e8 50%,#f5f5f5 75%);background-size:200% 100%;animation:loading-wave 1.5s infinite}.portfolio-placeholder{background:linear-gradient(90deg,#f8f8f8 25%,#eaeaea 50%,#f8f8f8 75%);background-size:200% 100%;animation:loading-wave 1.5s infinite}.contact-placeholder{background:linear-gradient(90deg,#f2f2f2 25%,#e5e5e5 50%,#f2f2f2 75%);background-size:200% 100%;animation:loading-wave 1.5s infinite}@keyframes loading-wave{0%{background-position:200% 0}to{background-position:-200% 0}}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:Manrope,Manrope Fallback;font-style:normal}