@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.flex{display:flex}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:#000;background-color:#fff;overflow-x:hidden;cursor:none}@media (max-width:768px){body{cursor:auto}}.container{max-width:1200px;margin:0 auto;padding:0 20px}.cursor{width:8px;height:8px;background:#000;border-radius:50%;z-index:10002;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;will-change:transform,background-color}.cursor,.cursor-follower{position:fixed;pointer-events:none;transform:translate(-50%,-50%);left:-100px;top:-100px}.cursor-follower{width:40px;height:40px;border:1px solid hsla(0,0%,50%,.6);border-radius:50%;z-index:10001;transition:width .25s ease,height .25s ease,border-radius .25s ease,border-color .2s ease,border-width .2s ease;will-change:left,top,width,height,border-radius;background:transparent}.cursor.light-bg{background:#000}.cursor.dark-bg{background:#fff}.cursor-follower.light-bg{border-color:hsla(0,0%,50%,.6)}.cursor-follower.dark-bg{border-color:hsla(0,0%,44%,.7)}.cursor-follower.hover-light{border-color:hsla(0,0%,50%,.9);border-width:2px}.cursor-follower.hover-dark{border-color:hsla(0,0%,46%,.9);border-width:2px}@media (max-width:768px){.cursor,.cursor-follower{display:none!important}}.message{padding:20px;margin-bottom:30px;border-radius:0;font-size:14px;text-align:center}.message.success{background-color:#f8f8f8;color:#000;border:1px solid #ddd}.message.error{background-color:#000;color:#fff;border:1px solid #333}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);transition:all .3s ease}.navbar{padding:20px 0}.nav-container{display:flex;justify-content:space-between;align-items:center}.logo{font-size:24px;font-weight:700;letter-spacing:-.5px;margin-left:10px}.logo-text{color:#000}.logo-accent{color:#666}.nav-menu{display:flex;list-style:none;gap:40px}.nav-link{color:#000;text-decoration:none;font-weight:400;font-size:15px;position:relative;transition:color .3s ease}.nav-link.active,.nav-link:hover{color:#666}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1px;background:#000;transition:width .3s ease}.nav-link.active:after,.nav-link:hover:after{width:100%}.nav-cta-btn{background:#000;color:#fff;border:none;padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;margin-left:20px;margin-right:10px;border-radius:6px;letter-spacing:.5px}.nav-cta-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#333;transition:left .3s ease;z-index:-1}.nav-cta-btn:hover:before{left:0}.nav-cta-btn:hover{transform:translateY(-1px)}.burger-menu{display:none;flex-direction:column;cursor:pointer;gap:4px;padding:8px;border-radius:4px;transition:all .3s ease}.burger-menu:hover{background:rgba(0,0,0,.05)}.burger-menu span{width:25px;height:2px;background:#000;transition:all .3s ease;border-radius:1px}.burger-menu.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.burger-menu.active span:nth-child(2){opacity:0}.burger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;z-index:10001;opacity:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);padding:20px}.mobile-menu-overlay.active{opacity:1}.mobile-menu{background:#fff;border-radius:12px;max-width:400px;width:100%;position:relative;transform:scale(.8) translateY(50px);transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 20px 60px rgba(0,0,0,.3);overflow:hidden}.mobile-menu.active{transform:scale(1) translateY(0)}.mobile-menu-header{padding:30px;text-align:center;border-bottom:1px solid rgba(0,0,0,.1);position:relative}.mobile-menu-title{font-size:24px;font-weight:700;color:#000;margin:0}.mobile-menu-subtitle{font-size:14px;color:#666;margin-top:5px}.mobile-menu-close{position:absolute;top:20px;right:20px;background:none;border:none;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:50%;z-index:1}.mobile-menu-close:hover{background:rgba(0,0,0,.05);transform:rotate(90deg)}.mobile-menu-close span{position:absolute;width:20px;height:2px;background:#000;transition:all .3s ease;border-radius:1px}.mobile-menu-close span:first-child{transform:rotate(45deg)}.mobile-menu-close span:last-child{transform:rotate(-45deg)}.mobile-menu-close:hover span{background:#666}.mobile-menu-content{padding:0}.mobile-nav-list{list-style:none;padding:0;margin:0}.mobile-nav-item{border-bottom:1px solid rgba(0,0,0,.05)}.mobile-nav-item:last-child{border-bottom:none}.mobile-nav-link{display:block;padding:20px 30px;color:#000;text-decoration:none;font-size:16px;font-weight:500;transition:all .3s ease;position:relative}.mobile-nav-link:hover{background:rgba(0,0,0,.02);color:#666;padding-left:35px}.mobile-nav-link.active{background:rgba(0,0,0,.05);color:#000;font-weight:600}.mobile-nav-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#000}.mobile-menu-cta{padding:20px 30px;border-top:1px solid rgba(0,0,0,.05)}.mobile-cta-btn{width:100%;background:#000;color:#fff;border:none;padding:16px;font-size:15px;font-weight:500;cursor:pointer;border-radius:8px;transition:all .3s ease;letter-spacing:.5px}.mobile-cta-btn:hover{background:#333;transform:translateY(-1px)}.btn-primary,.btn-secondary{padding:15px 30px;border:none;font-size:16px;font-weight:500;cursor:pointer;position:relative;overflow:hidden;transition:all .3s ease;border-radius:6px;letter-spacing:.5px}.btn-primary{background:#000;color:#fff}.btn-primary .btn-bg{position:absolute;top:0;left:-100%;width:100%;height:100%;background:#333;transition:left .3s ease;z-index:-1}.btn-primary:hover .btn-bg{left:0}.btn-secondary{background:transparent;color:#000;border:1px solid #000}.btn-secondary:hover,.submit-btn{background:#000;color:#fff}.submit-btn{border:none;padding:15px 40px;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;border-radius:6px}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#333;transition:left .3s ease;z-index:-1}.submit-btn:hover:before{left:0}.submit-btn:hover{transform:translateY(-2px)}.modal-submit-btn{background:#000;color:#fff;border:none;padding:18px 40px;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:1px;cursor:pointer;position:relative;overflow:hidden;transition:all .3s ease;margin-top:20px;align-self:flex-start;border-radius:6px}.modal-submit-btn .btn-bg{position:absolute;top:0;left:-100%;width:100%;height:100%;background:#333;transition:left .3s ease;z-index:-1}.modal-submit-btn:hover .btn-bg{left:0}.modal-submit-btn:hover{transform:translateY(-2px)}.modal-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.service-link{display:inline-block;margin-top:20px;color:#000;font-weight:500;font-size:14px;text-decoration:none;position:relative;transition:all .3s ease}.service-link:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:1px;background:#000;transition:width .3s ease}.service-link:hover{color:#666}.service-link:hover:after{width:100%}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .3s cubic-bezier(.25,.46,.45,.94);padding:20px}.modal-overlay.active{opacity:1}.modal{background:#fff;border-radius:8px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;transform:scale(.8) translateY(50px);transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 20px 60px rgba(0,0,0,.3)}.modal.active{transform:scale(1) translateY(0)}.modal-content{padding:60px 50px 50px;position:relative}.modal-close{top:20px;right:20px;background:none;border:none;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1}.modal-close,.modal-close span{position:absolute;transition:all .3s ease}.modal-close span{width:20px;height:2px;background:#000}.modal-close span:first-child{transform:rotate(45deg)}.modal-close span:last-child{transform:rotate(-45deg)}.modal-close:hover{transform:rotate(90deg)}.modal-close:hover span{background:#666}.modal-header{text-align:center;margin-bottom:40px}.modal-header h2{font-size:32px;font-weight:700;margin-bottom:10px;color:#000}.modal-header p{font-size:16px;color:#666}.modal-form{display:flex;flex-direction:column;gap:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.modal-form .form-group{margin-bottom:0}.modal-form label{display:block;margin-bottom:8px;color:#000;font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:1px}.modal-form input,.modal-form select,.modal-form textarea{width:100%;padding:15px 0;border:none;border-bottom:1px solid #ddd;background:transparent;font-size:16px;color:#000;transition:all .3s ease;font-family:Inter,sans-serif;border-radius:4px}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{outline:none;border-bottom-color:#000;background:rgba(0,0,0,.02)}.modal-form textarea{resize:vertical;min-height:100px;padding-top:15px}.modal-form select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 0 center;background-size:20px;padding-right:30px}.form-message .message{margin-bottom:0}.hero{height:100vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#f8f8f8,#fff);z-index:-1}.hero-content{width:100%}.hero-title{font-size:clamp(3rem,8vw,6rem);font-weight:700;line-height:.9;margin-bottom:30px;overflow:hidden}.title-line{display:block;transform:translateY(100%);animation:slideUp 1s ease forwards}.title-line:nth-child(2){animation-delay:.1s}.title-line:nth-child(3){animation-delay:.2s}.title-line.accent{color:#666}.hero-description{font-size:18px;color:#666;max-width:500px;margin-bottom:40px;opacity:0;animation:fadeInUp 1s ease .5s forwards}.hero-buttons{display:flex;gap:20px;opacity:0;animation:fadeInUp 1s ease .7s forwards}.hero-badge{display:inline-block;background:rgba(0,0,0,.05);color:#000;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:2px;padding:8px 16px;border-radius:30px;margin-bottom:20px;border:1px solid rgba(0,0,0,.1);animation:fadeInUp 1s ease .3s forwards;opacity:0}.hero-shape{width:400px;height:400px;background:rgba(0,0,0,.02);top:-100px;right:-100px;animation:float 15s ease-in-out infinite}.hero-shape,.hero-shape-2{position:absolute;border-radius:50%;z-index:-1}.hero-shape-2{width:300px;height:300px;background:rgba(0,0,0,.03);bottom:-50px;left:-100px;animation:float 20s ease-in-out infinite reverse}.services{padding:120px 0;background:#f8f8f8}.section-header{text-align:center;margin-bottom:80px}.section-title{font-size:48px;font-weight:700;margin-bottom:20px;color:#000}.section-subtitle{font-size:18px;color:#666;max-width:500px;margin:0 auto}.section-badge{display:inline-block;background:rgba(0,0,0,.05);color:#000;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:2px;padding:8px 16px;border-radius:30px;margin-bottom:15px;border:1px solid rgba(0,0,0,.1)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.service-card{background:#fff;padding:40px;border:1px solid rgba(0,0,0,.1);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;border-radius:8px;display:flex;flex-direction:column;height:100%}.service-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,0,0,.05),transparent);transition:left .5s ease;pointer-events:none;z-index:1}.service-card:hover:before{left:100%}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.1)}.service-icon{width:60px;height:60px;margin-bottom:30px;position:relative;z-index:2}.icon-shape{width:100%;height:100%;background:#000;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;animation:blobA 12s ease-in-out infinite;transition:background .4s ease;will-change:border-radius,transform}@keyframes blobA{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}25%{border-radius:60% 40% 70% 30%/50% 60% 40% 50%}50%{border-radius:40% 60% 30% 70%/70% 30% 60% 40%}75%{border-radius:70% 30% 60% 40%/40% 70% 30% 60%}}@keyframes blobB{0%,to{border-radius:50% 50% 80% 20%/20% 80% 50% 50%}33%{border-radius:20% 80% 40% 60%/80% 20% 60% 40%}66%{border-radius:80% 20% 20% 80%/50% 50% 80% 20%}}@keyframes blobC{0%,to{border-radius:50% 50% 50% 50%/50% 50% 50% 50%}33%{border-radius:40% 60% 60% 40%/70% 30% 30% 70%}66%{border-radius:70% 30% 30% 70%/40% 60% 60% 40%}}@keyframes blobD{0%,to{border-radius:10% 90% 10% 90%/90% 10% 90% 10%}25%{border-radius:50% 50% 50% 50%/50% 50% 50% 50%}50%{border-radius:90% 10% 90% 10%/10% 90% 10% 90%}75%{border-radius:30% 70% 70% 30%/70% 30% 30% 70%}}@keyframes blobE{0%,to{border-radius:60% 40% 30% 70%/50% 50% 70% 30%}25%{border-radius:40% 60% 70% 30%/30% 70% 50% 50%}50%{border-radius:70% 30% 50% 50%/60% 40% 30% 70%}75%{border-radius:30% 70% 50% 50%/40% 60% 70% 30%}}.service-card[data-service=telegram-bot] .icon-shape{animation-name:blobA;animation-duration:9s}.service-card[data-service=telegram-miniapp] .icon-shape{animation-name:blobB;animation-duration:13s}.service-card[data-service=webdev] .icon-shape{animation-name:blobC;animation-duration:11s}.service-card:hover .icon-shape,.service-category-card:hover .icon-shape{animation:portfolioMorphFast 4s ease-in-out infinite,gradientShift 3s ease-in-out infinite;background:linear-gradient(45deg,#000,#333 50%,#000);background-size:200% 200%}@keyframes portfolioMorphFast{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%;transform:rotate(0deg) scale(1.1)}16.66%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%;transform:rotate(20deg) scale(1.15)}33.33%{border-radius:50% 50% 50% 50%/50% 50% 50% 50%;transform:rotate(40deg) scale(1.2)}50%{border-radius:70% 30% 30% 70%/70% 70% 30% 30%;transform:rotate(60deg) scale(1.15)}66.66%{border-radius:40% 60% 60% 40%/60% 40% 40% 60%;transform:rotate(80deg) scale(1.1)}83.33%{border-radius:80% 20% 40% 60%/40% 60% 80% 20%;transform:rotate(100deg) scale(1.18)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.service-number{font-size:14px;color:#999;letter-spacing:1px}.service-card h3,.service-number{font-weight:600;margin-bottom:15px;position:relative;z-index:2}.service-card h3{font-size:24px;color:#000}.service-card p{color:#666;margin-bottom:20px;line-height:1.6;flex-grow:1;position:relative;z-index:2}.service-tech{font-size:12px;color:#999;text-transform:uppercase;letter-spacing:1px;position:relative;z-index:2}.services-cta{margin-top:60px;text-align:center;padding:40px;background:#f2f2f2;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:20px}.services-cta p{font-size:18px;font-weight:500;color:#000}.stats{padding:80px 0;background:#000;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;text-align:center}.stat-item{padding:20px}.stat-number{font-size:48px;font-weight:700;display:block;margin-bottom:10px}.stat-label{font-size:14px;color:#999;text-transform:uppercase;letter-spacing:2px}.page-hero{padding:150px 0 80px;background:#f8f8f8}.page-hero-content{text-align:center}.page-title{font-size:64px;font-weight:700;margin-bottom:20px;color:#000}.page-subtitle{font-size:20px;color:#666;max-width:600px;margin:0 auto}.about-story{padding:120px 0;background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-text h2{font-size:36px;font-weight:600;margin-bottom:30px;color:#000}.about-text p{font-size:16px;line-height:1.8;color:#666;margin-bottom:25px}.about-visual{display:flex;justify-content:center;align-items:center}.visual-element{width:300px;height:300px;background:#000;position:relative;transition:all .3s ease}.visual-element:before{content:"";position:absolute;top:20px;left:20px;right:20px;bottom:20px;border:2px solid #666;transition:all .3s ease}.visual-element:hover{transform:rotate(5deg)}.visual-element:hover:before{transform:rotate(-10deg)}.tech-stack{padding:120px 0;background:#f8f8f8}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:60px}.tech-category{text-align:center}.tech-category h3{font-size:24px;font-weight:600;margin-bottom:30px;color:#000}.tech-list{list-style:none;padding:0}.tech-list li{padding:12px 0;color:#666;font-size:16px;border-bottom:1px solid rgba(0,0,0,.1);transition:color .3s ease}.tech-list li:hover{color:#000}.tech-list li:last-child{border-bottom:none}.principles{padding:120px 0;background:#000;color:#fff}.principles .section-title{color:#fff}.principles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:60px}.principle-item{text-align:center;padding:40px 20px}.principle-number{font-size:48px;font-weight:700;color:#333;margin-bottom:20px;transition:color .3s ease}.principle-item:hover .principle-number{color:#666}.principle-item h3{font-size:20px;font-weight:600;margin-bottom:15px;color:#fff}.principle-item p{color:#999;line-height:1.6;font-size:14px}.contact-hero{padding:150px 0 80px;background:#f8f8f8;text-align:center}.contact-form-section{padding:120px 0;background:#fff}.form-container{max-width:600px;margin:0 auto}.form-group{margin-bottom:30px}.form-group label{display:block;margin-bottom:8px;color:#000;font-weight:500;font-size:14px;text-transform:uppercase;letter-spacing:1px}.form-group input,.form-group textarea{width:100%;padding:15px 0;border:none;border-bottom:1px solid #ddd;background:transparent;font-size:16px;color:#000;transition:border-color .3s ease;font-family:Inter,sans-serif;border-radius:4px}.form-group input:focus,.form-group textarea:focus{outline:none;border-bottom-color:#000}.form-group textarea{resize:vertical;min-height:120px}.contact-info{padding:80px 0;background:#f8f8f8}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:60px;text-align:center}.contact-item h3{font-size:18px;font-weight:600;margin-bottom:15px;color:#000;text-transform:uppercase;letter-spacing:1px}.contact-item p{font-size:16px;color:#666}.portfolio-intro{padding:120px 0;background:#fff}.portfolio-services{padding:80px 0;background:#f8f8f8}.services-grid.portfolio-grid-cat{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.service-category-card{background:#fff;padding:40px;border:1px solid rgba(0,0,0,.1);transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;border-radius:8px;text-decoration:none;color:inherit;display:flex;flex-direction:column}.service-category-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.1);border-color:rgba(0,0,0,.2)}.category-icon{width:60px;height:60px;margin-bottom:20px}.icon-shape.cat-telegram-bot{animation-name:blobD;animation-duration:8s;animation-delay:0s}.icon-shape.cat-telegram-miniapp{animation-name:blobE;animation-duration:14s;animation-delay:-3s}.icon-shape.cat-webdev{animation-name:blobB;animation-duration:10s;animation-delay:-1s}.icon-shape.cat-fullstack{animation-name:blobA;animation-duration:16s;animation-delay:-6s}.icon-shape.cat-landing{animation-name:blobC;animation-duration:7s;animation-delay:-2s}.icon-shape.cat-frontend{animation-name:blobD;animation-duration:12s;animation-delay:-5s}.icon-shape.cat-backend{animation-name:blobE;animation-duration:9s;animation-delay:-4s}.icon-shape.cat-ecommerce{animation-name:blobA;animation-duration:15s;animation-delay:-8s}.icon-shape.cat-ui-ux{animation-name:blobC;animation-duration:11s;animation-delay:-7s}.category-number{font-size:14px;font-weight:600;color:#999;margin-bottom:10px;letter-spacing:1px}.service-category-card h3{font-size:22px;font-weight:600;margin-bottom:12px;color:#000}.service-category-card p{color:#666;font-size:14px;line-height:1.6;flex-grow:1;margin-bottom:20px}.category-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.category-features span{font-size:11px;background:rgba(0,0,0,.05);color:#000;padding:4px 10px;border-radius:20px;border:1px solid rgba(0,0,0,.1)}.ui-ux-hero{position:relative;min-height:50vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f8f8f8;padding:150px 20px 80px;text-align:center}.ui-ux-hero-content{position:relative;z-index:2;transition:opacity .3s ease,transform .3s ease}.ui-ux-hero-content.fade-out{opacity:0;transform:translateY(-30px)}.service-details{padding:80px 0}.service-intro{max-width:800px;margin:0 auto 80px;text-align:center;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.25,.46,.45,.94)}.service-intro.animate-in{opacity:1;transform:translateY(0)}.service-intro h2{font-size:36px;font-weight:600;margin-bottom:20px;color:#000}.service-intro p{font-size:18px;color:#666;line-height:1.8}.portfolio-showcase,.service-cta,.service-features,.service-process{margin-bottom:80px;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.25,.46,.45,.94)}.portfolio-showcase.animate-in,.service-cta.animate-in,.service-features.animate-in,.service-process.animate-in{opacity:1;transform:translateY(0)}.portfolio-showcase h3,.service-features h3,.service-process h3{font-size:28px;font-weight:600;margin-bottom:40px;color:#000;text-align:center}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}.process-step{text-align:center;padding:30px 20px;background:#f8f8f8;border-radius:8px;opacity:0;transform:translateY(30px);transition:all .5s ease}.process-step.animate-in{opacity:1;transform:translateY(0)}.step-number{font-size:36px;font-weight:700;color:#ddd;margin-bottom:15px}.process-step h4{font-size:16px;font-weight:600;margin-bottom:10px;color:#000}.process-step p{font-size:14px;color:#666;line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.feature-item{padding:30px;border:1px solid rgba(0,0,0,.1);border-radius:8px;transition:all .3s ease;opacity:0;transform:translateY(20px)}.feature-item.animate-in{opacity:1;transform:translateY(0)}.feature-item:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.05)}.feature-item h4{font-size:16px;font-weight:600;margin-bottom:10px;color:#000}.feature-item p{font-size:14px;color:#666;line-height:1.6}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.portfolio-item{border-radius:8px;overflow:hidden;border:1px solid rgba(0,0,0,.1);transition:all .3s ease;opacity:0;transform:translateY(20px)}.portfolio-item.animate-in{opacity:1;transform:translateY(0)}.portfolio-item:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.portfolio-image{aspect-ratio:16/9;background:#f2f2f2;display:flex;align-items:center;justify-content:center}.placeholder-image{font-size:14px;color:#999;font-weight:500}.portfolio-info{padding:20px}.portfolio-info h4{font-size:16px;font-weight:600;margin-bottom:8px;color:#000}.portfolio-info p{font-size:14px;color:#666;line-height:1.5}.service-cta{text-align:center;padding:80px 40px;background:#f8f8f8;border-radius:12px}.service-cta h3{font-size:32px;font-weight:700;margin-bottom:15px;color:#000}.service-cta p{font-size:18px;color:#666;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}.particles{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.particle{position:absolute;width:3px;height:3px;background:#000;border-radius:50%;animation:particleFloat 2s ease-in-out infinite;opacity:.3}@keyframes particleFloat{0%,to{transform:translateY(0) translateX(0);opacity:.3}50%{transform:translateY(calc(var(--random-x, 1) * 20px)) translateX(calc(var(--random-x, 1) * 10px));opacity:.6}}.footer{background:#000;color:#fff;padding:80px 0 0}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:60px;margin-bottom:60px}.footer-section h4{font-size:16px;font-weight:600;margin-bottom:25px;color:#fff;text-transform:uppercase;letter-spacing:1px}.footer-logo{font-size:28px;font-weight:700;margin-bottom:20px}.footer-logo .logo-text{color:#fff}.footer-logo .logo-accent{color:#666}.footer-description{color:#999;line-height:1.6;margin-bottom:30px;max-width:300px}.footer-social{display:flex;gap:20px}.social-link{color:#999;text-decoration:none;font-size:14px;transition:color .3s ease;position:relative}.social-link:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:1px;background:#fff;transition:width .3s ease}.social-link:hover{color:#fff}.social-link:hover:after{width:100%}.footer-links{list-style:none;padding:0}.footer-links li{margin-bottom:12px}.footer-links a{color:#999;text-decoration:none;font-size:14px;transition:color .3s ease}.footer-links a:hover{color:#fff}.footer-contact p{color:#999;font-size:14px;line-height:1.6;margin-bottom:15px}.footer-contact strong{color:#fff;font-weight:500}.footer-bottom{border-top:1px solid #333;padding:30px 0}.footer-legal{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-legal p{color:#666;font-size:14px;margin:0}.footer-legal-links{display:flex;gap:30px}.footer-legal-links a{color:#666;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease;cursor:pointer}.footer-legal-links a:hover{color:#fff}@keyframes slideUp{to{transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translate(0)}25%{transform:translate(30px,-30px)}50%{transform:translateY(20px)}75%{transform:translate(-30px,-10px)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.notification{position:fixed;top:20px;right:20px;background:#000;color:#fff;padding:15px 20px;border-radius:5px;box-shadow:0 10px 30px rgba(0,0,0,.3);z-index:10003;transform:translateX(110%);transition:transform .3s cubic-bezier(.25,.46,.45,.94);max-width:350px;font-size:14px}.notification.show{transform:translateX(0)}.notification.error{background:#333}.document-modal-content{max-width:800px}.document-header{text-align:center;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid #eee}.document-header h2{font-size:28px;font-weight:600;color:#000}.document-content{line-height:1.8;color:#333}.document-content h3{font-size:18px;font-weight:600;margin:30px 0 15px;color:#000}.document-content ul{margin:10px 0 10px 20px}.document-content li{margin-bottom:6px}.document-content p{margin-bottom:12px}.document-content a{color:#000;text-decoration:underline}@media (max-width:1200px){.container{max-width:980px}}@media (max-width:992px){.container{max-width:768px;padding:0 15px}.hero-title{font-size:clamp(2.5rem,6vw,4.5rem)}.section-title{font-size:40px}.footer-main{grid-template-columns:1fr 1fr;gap:40px}}@media (max-width:768px){.nav-menu{display:none}.burger-menu{display:flex;margin-right:10px}.hero{padding-top:80px;min-height:calc(100vh - 80px)}.hero-title{font-size:3rem;margin-bottom:20px}.hero-description{font-size:16px}.hero-buttons{flex-direction:column;align-items:flex-start;width:100%}.btn-primary,.btn-secondary{width:100%;margin-bottom:15px}.services{padding:80px 0}.section-title{font-size:32px}.services-grid{grid-template-columns:1fr;gap:30px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-number{font-size:36px}.footer-main{grid-template-columns:1fr;gap:40px}.footer-section:first-child{text-align:center}.footer-social{justify-content:center}.footer-legal{flex-direction:column;text-align:center}.footer-legal-links{flex-direction:column;gap:15px}.page-title{font-size:40px}.about-grid{grid-template-columns:1fr;gap:40px}.about-text h2{font-size:28px}.visual-element{width:200px;height:200px}.contact-grid,.principles-grid,.tech-grid{grid-template-columns:1fr;gap:40px}.modal-content{padding:40px 30px 30px}.modal-header h2{font-size:24px}.form-row{grid-template-columns:1fr;gap:15px}.modal-submit-btn{width:100%}.hero-shape,.hero-shape-2{display:none}.features-grid,.portfolio-grid,.process-steps{grid-template-columns:1fr}}@media (max-width:480px){.container{padding:0 15px}.hero-title{font-size:2.5rem}.section-title{font-size:28px}.stats-grid{grid-template-columns:1fr 1fr;gap:20px}}.scroll-animate{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.scroll-animate.animate{opacity:1;transform:translateY(0)}.fade-in{opacity:0;animation:fadeInUp .6s ease forwards}.fade-in-delay-1{animation-delay:.1s}.fade-in-delay-2{animation-delay:.2s}.fade-in-delay-3{animation-delay:.3s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.modal-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem;gap:1rem}.modal-success-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#6c63ff,#4fd1c5);display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:#fff;flex-shrink:0}.modal-success h3{font-size:1.5rem;font-weight:700;color:var(--text-primary,#fff);margin:0}.modal-order-number{background:rgba(108,99,255,.15);border:1px solid rgba(108,99,255,.4);border-radius:8px;padding:.75rem 1.25rem;font-size:1rem;color:var(--text-primary,#fff)}.modal-order-number strong{color:#a78bfa;font-size:1.1rem;letter-spacing:.05em}.modal-success-text{font-size:.95rem;color:var(--text-secondary,hsla(0,0%,100%,.7));line-height:1.6;margin:0}.modal-success-hint{font-size:.85rem;color:var(--text-secondary,hsla(0,0%,100%,.5));margin:0}.modal-tg-link{color:#6c63ff;text-decoration:none;font-weight:600;transition:color .2s}.modal-tg-link:hover{color:#a78bfa;text-decoration:underline}