*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Inter,Segoe UI,Roboto,Helvetica Neue,sans-serif;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:#fff;color:#1d1d1f;min-height:100vh;width:100%}html{scroll-behavior:smooth}section{padding:80px 0;position:relative}@media (max-width:768px){section{padding:60px 0}}.navbar{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background-color:#fffc;border-bottom:1px solid #0000001a;height:44px;left:0;padding:0;position:fixed;right:0;top:0;transition:background-color .3s ease;z-index:1000}.navbar.scrolled{background-color:#fffffff2}.navbar-container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 22px;position:relative}.navbar-logo{color:#1d1d1f;display:inline-block;font-size:13px;font-weight:600;letter-spacing:-.01em;margin-right:auto;text-decoration:none;transition:color .3s ease,transform .3s ease}.navbar-logo:hover{color:#0071e3;transform:translateX(-2px)}.navbar-menu{align-items:center;display:flex;flex:1 1;gap:20px;justify-content:center;list-style:none;margin:0;padding:0}.navbar-menu li a{color:#1d1d1f;display:block;font-size:11px;font-weight:400;line-height:40px;padding:0 4px;position:relative;text-decoration:none;transition:color .3s ease}.navbar-menu li a:hover{color:#0071e3}.navbar-menu li a.active{color:#0071e3;font-weight:500}.navbar-menu li a:after{background-color:#0071e3;border-radius:2px 2px 0 0;bottom:0;content:"";height:2px;left:4px;margin:0 auto;position:absolute;right:4px;transition:width .3s ease;width:0}.navbar-menu li a.active:after,.navbar-menu li a:hover:after{width:calc(100% - 8px)}.mobile-menu-toggle{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;height:22px;justify-content:space-around;padding:0;position:relative;width:22px;z-index:1001}.mobile-menu-toggle span{background-color:#1d1d1f;border-radius:2px;height:2px;transform-origin:center;transition:all .3s ease;width:100%}.mobile-menu-toggle.open span:first-child{transform:rotate(45deg) translate(6px,6px)}.mobile-menu-toggle.open span:nth-child(2){opacity:0}.mobile-menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width:768px){.mobile-menu-toggle{display:flex}.navbar-menu{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background-color:#fffffffa;border-bottom:1px solid #0000001a;box-shadow:0 4px 12px #0000001a;flex-direction:column;gap:0;left:0;opacity:0;padding:20px 0;position:fixed;right:0;top:40px;transform:translateY(-100%);transition:transform .3s ease,opacity .3s ease,visibility .3s ease;visibility:hidden}.navbar-menu.mobile-open{opacity:1;transform:translateY(0);visibility:visible}.navbar-menu li{border-bottom:1px solid #0000000d;width:100%}.navbar-menu li:last-child{border-bottom:none}.navbar-menu li a{display:block;font-size:13px;line-height:1.5;padding:16px 22px;width:100%}.navbar-menu li a:after{bottom:12px;left:22px;right:22px}.navbar-menu li a.active:after,.navbar-menu li a:hover:after{width:calc(100% - 44px)}.navbar-logo{font-size:12px}}.hero{align-items:center;background:linear-gradient(180deg,#f8f9fa,#fff);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:164px 22px 80px;position:relative}.hero:before{background:radial-gradient(circle at 50% 50%,#0071e305 0,#0000 70%);content:"";pointer-events:none}.hero-background-image,.hero:before{bottom:0;left:0;position:absolute;right:0;top:0;z-index:0}.hero-background-image{height:100%;overflow:hidden;width:100%}.hero-background-img{height:100%;left:0;object-fit:cover;object-position:center;opacity:1;position:absolute;top:0;width:100%;z-index:0}.hero-background-img-fade-out{animation:backgroundImageFadeOut .6s ease-out forwards}.hero-background-img-fade-in{animation:backgroundImageFadeIn .8s ease-out forwards;opacity:0}.hero-container{align-items:center;display:flex;gap:60px;justify-content:center;margin:0 auto;max-width:1200px;position:relative;width:100%;z-index:2}.hero-content{animation:slideToLeft 1s ease-in-out 3.5s forwards;flex:0 0 auto;max-width:700px;padding:60px 40px;position:relative;text-align:center;width:100%;z-index:10}.hero:after{background-color:#ffffffe6;border-radius:0;content:"";height:450px;left:0;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-40%);width:100vw;will-change:auto;z-index:1}.hero-image-wrapper{animation:slideInFromRight 1s ease-in-out 3.5s forwards;flex:0 0;min-width:0;opacity:0;overflow:hidden;transform:translateX(150px);visibility:hidden;width:0}.hero-image{border-radius:18px;box-shadow:0 20px 60px #0000001a;height:100%;min-height:550px;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:100%}.hero-image:hover{box-shadow:0 30px 80px #00000026;transform:translateY(-4px)}.hero-image-img{border-radius:18px;display:block;height:100%;left:0;min-height:550px;object-fit:cover;position:absolute;top:0;width:100%}.hero-image-img.image-fade-out{animation:imageFadeOut .6s ease-out forwards}.hero-image-img-new{opacity:0}.hero-image-slide-right{animation:imageSlideInFromRight .8s ease-out forwards;transform:translateX(150px)}.hero-image-slide-top{animation:imageSlideInFromTop .8s ease-out forwards;transform:translateY(-150px)}.hero-title{animation:fadeInTitle .6s ease-out;color:#1d1d1f;display:inline-block;font-size:64px;font-weight:600;letter-spacing:-1.6px;line-height:1.05;margin-bottom:16px;overflow:hidden;position:relative}.hero-title:after{animation:lightBeamMove 2.5s ease-in-out .6s;background:linear-gradient(110deg,#0000,#0000 45%,#ffffff80 48%,#fff 49%,#fff 50%,#fff 51%,#ffffff80 52%,#0000 55%,#0000);border-radius:4px;content:"";filter:brightness(1.5) contrast(1.2);height:100%;left:-150%;mix-blend-mode:screen;opacity:.9;pointer-events:none;position:absolute;top:0;width:150%;z-index:1}.hero-subtitle{color:#1d1d1f;font-size:22px;font-weight:400;letter-spacing:.007em;line-height:1.14286;margin-bottom:13px;min-height:1.5em;opacity:0;transition:none}.hero-subtitle.text-fade-in{animation:textFadeIn .8s ease-out forwards;pointer-events:auto;will-change:opacity,transform}.hero-subtitle.text-fade-out{animation:textFadeOut .8s ease-out forwards!important;opacity:1!important;pointer-events:none;transition:none!important;will-change:opacity,transform}.hero-description{color:#86868b;font-size:17px;font-weight:400;letter-spacing:.011em;line-height:1.381;margin-bottom:32px;min-height:1.5em;opacity:0;transition:none}.hero-description.text-fade-in{animation:textFadeIn .8s ease-out forwards;pointer-events:auto;will-change:opacity,transform}.hero-description.text-fade-out{animation:textFadeOut .8s ease-out forwards!important;opacity:1!important;pointer-events:none;transition:none!important;will-change:opacity,transform}.hero-cta{animation:fadeInUp .8s ease-out 4.9s both;display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-start;left:0;opacity:0;transform:translateX(0);width:-webkit-fit-content;width:fit-content}.cta-button,.hero-cta{align-items:center;position:relative}.cta-button{background-color:#0071e3;border-radius:980px;box-shadow:0 4px 12px #0071e34d;color:#fff;display:inline-flex;font-size:14px;font-weight:400;gap:6px;justify-content:center;min-width:128px;overflow:hidden;padding:11px 22px;text-align:center;text-decoration:none;transition:all .3s ease}.cta-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.cta-button:hover:before{left:100%}.cta-button:hover{background-color:#0077ed;box-shadow:0 6px 20px #0071e366;transform:translateY(-2px)}.cta-button:active{transform:translateY(0)}.cta-button svg{flex-shrink:0;transition:transform .3s ease}.cta-button:hover svg{transform:translateX(4px)}.cta-link{align-items:center;border-radius:980px;color:#0071e3;display:inline-flex;font-size:14px;font-weight:400;gap:6px;justify-content:center;padding:11px 22px;position:relative;text-decoration:none;transition:all .3s ease}.cta-link:after{background-color:#0071e3;bottom:8px;content:"";height:1px;left:22px;position:absolute;right:22px;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.cta-link:hover{background-color:#0071e30d;color:#0077ed}.cta-link:hover:after{transform:scaleX(1)}.cta-link svg{flex-shrink:0;transition:transform .3s ease}.cta-link:hover svg{transform:translateX(4px)}@keyframes fadeInTitle{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes lightBeamMove{0%{left:-150%}to{left:100%}}@keyframes textFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes textFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes imageFadeOut{0%{opacity:1}to{opacity:0}}@keyframes imageSlideInFromRight{0%{opacity:0;transform:translateX(150px)}to{opacity:1;transform:translateX(0)}}@keyframes imageSlideInFromTop{0%{opacity:0;transform:translateY(-150px)}to{opacity:1;transform:translateY(0)}}@keyframes backgroundImageFadeOut{0%{opacity:1}to{opacity:0}}@keyframes backgroundImageFadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUpAndCenter{0%{opacity:0;transform:translateY(30px) translateX(-50%)}to{opacity:1;transform:translateY(0) translateX(-50%)}}@keyframes slideToLeft{0%{text-align:center;transform:translateX(0)}to{text-align:left;transform:translateX(-15%)}}@keyframes slideInFromRight{0%{flex:0 0;min-width:0;opacity:0;transform:translateX(150px);visibility:hidden;width:0}to{flex:1 1 auto;max-width:650px;min-width:0;opacity:1;transform:translateX(0);visibility:visible;width:auto}}@keyframes buttonsSlideLeft{0%{justify-content:center;left:50%;transform:translateY(0) translateX(-50%)}to{justify-content:flex-start;left:0;transform:translateY(0) translateX(0)}}@media (max-width:1068px){.hero-container{flex-direction:column;gap:40px}.hero-content{max-width:100%;padding:50px 30px;text-align:center}.hero:after{height:400px}.hero-content.slideToLeft{text-align:left}.hero-image-wrapper{max-width:100%}.hero-title{font-size:51px}.hero-subtitle{font-size:19px}.hero-description{font-size:15px}}@media (max-width:768px){.hero{min-height:90vh;padding:144px 22px 60px}.hero-container{flex-direction:column;gap:30px}.hero-content{padding:40px 20px;text-align:center!important;transform:none!important}.hero:after{height:350px}.hero-image-wrapper{max-width:100%!important;opacity:1!important;transform:none!important}.hero-image,.hero-image-img{min-height:400px}.hero-title{font-size:38px;letter-spacing:-.8px}.hero-subtitle{font-size:17px}.hero-description{font-size:14px}.hero-cta{flex-direction:column}.cta-button,.cta-link{font-size:13px;max-width:240px;padding:10px 20px;width:100%}}.active-flower-container{align-items:center;display:flex;height:auto;justify-content:center;max-width:640px;position:absolute;width:auto}.active-flower-container.centered-vertical{transform:translateY(-50%)}.active-flower-image{-webkit-user-drag:none;display:block;height:auto;max-width:640px;object-fit:contain;transition:opacity .3s ease;-webkit-user-select:none;user-select:none;width:100%}.active-flower-image.loading{opacity:0}.active-flower-image.loaded{opacity:1}.active-flower-loading{align-items:center;display:flex;height:40px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:40px}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #0071e333;border-radius:50%;border-top-color:#0071e3;height:24px;width:24px}@media (max-width:1024px){.active-flower-container,.active-flower-image{max-width:240px}}@media (max-width:768px){.active-flower-container{left:-24px!important;max-width:160px}.active-flower-image{max-width:160px}}@media (max-width:480px){.active-flower-container,.active-flower-image{max-width:120px}}@media (prefers-reduced-motion:reduce){.active-flower-image{transition:none}.loading-spinner{animation:none;border-top-color:#0071e333}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.active-flower-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.about{align-items:center;background-color:#fff;display:flex;min-height:100vh;overflow:hidden;padding:80px 0;position:relative}.about-background-image{bottom:0;overflow:hidden;right:0}.about-background-image,.about-background-img{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.about-background-img{object-fit:cover;object-position:center;opacity:.6}.about-container{display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 22px;position:relative;width:100%;z-index:2}.about-header{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.about-header.fade-in-up{opacity:1;transform:translateY(0)}.about-section-title{color:#1d1d1f;font-size:38px;font-weight:600;letter-spacing:-.4px;line-height:1.07143;margin-bottom:13px;text-align:center}.about-section-description{color:#86868b;font-size:15px;font-weight:400;letter-spacing:.011em;line-height:1.381;margin:0 auto 32px;max-width:640px;text-align:center}.about-features{grid-gap:19px;display:grid;gap:19px;grid-template-columns:repeat(3,1fr);margin-bottom:32px;margin-top:0}.feature-item{background-color:#f5f5f7;border:1px solid #0000000d;border-radius:14px;opacity:0;padding:19px 16px;text-align:center;transform:translateY(30px);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.feature-item.fade-in-up{animation:fadeInUp .6s ease-out forwards}.feature-item:hover{background-color:#fff;border-color:#0000001a;box-shadow:0 16px 32px #00000014;transform:translateY(-6px)}.feature-icon{display:inline-block;font-size:29px;margin-bottom:10px;transition:transform .3s ease}.feature-item:hover .feature-icon{transform:scale(1.1)}.feature-item h3{color:#1d1d1f;font-size:18px;font-weight:600;letter-spacing:.009em;margin-bottom:6px}.feature-item p{color:#86868b;font-size:14px;font-weight:400;letter-spacing:-.022em;line-height:1.47059}.about-stats{grid-gap:24px;border-top:1px solid #0000001a;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-top:0;opacity:0;padding-top:24px;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.about-stats.fade-in-up{opacity:1;transform:translateY(0)}.stat-item{text-align:center}.stat-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0071e3,#0077ed);-webkit-background-clip:text;background-clip:text;color:#0071e3;font-size:34px;font-weight:600;letter-spacing:-.4px;line-height:1.07143;margin-bottom:3px}.stat-label{color:#86868b;font-size:11px;font-weight:400;letter-spacing:-.022em;letter-spacing:.05em;line-height:1.47059;text-transform:uppercase}@media (max-width:1068px){.about{min-height:100vh;padding:60px 0}.section-title{font-size:32px}.section-description{font-size:14px;margin-bottom:24px}.about-features{gap:16px;margin-bottom:24px}.about-features,.about-stats{grid-template-columns:repeat(2,1fr)}.about-stats{gap:19px;padding-top:19px}.stat-number{font-size:29px}.stat-label{font-size:10px}}@media (max-width:768px){.about{min-height:100vh;padding:60px 0}.section-title{font-size:29px;margin-bottom:10px}.section-description{font-size:13px;margin-bottom:19px}.about-features{gap:13px;grid-template-columns:1fr;margin-bottom:19px}.feature-item{padding:16px 13px}.feature-icon{font-size:26px;margin-bottom:8px}.feature-item h3{font-size:14px;margin-bottom:5px}.feature-item p{font-size:11px}.about-stats{gap:16px;grid-template-columns:repeat(2,1fr);padding-top:16px}.stat-number{font-size:26px}.stat-label{font-size:10px}}@media (max-width:480px){.about{min-height:100vh;padding:40px 0}.section-title{font-size:26px}.section-description{font-size:12px;margin-bottom:16px}.about-features{margin-bottom:16px}.about-stats{gap:13px;grid-template-columns:repeat(2,1fr);padding-top:13px}.stat-number{font-size:22px}.stat-label{font-size:9px}}.services{align-items:center;background:#fff;display:flex;min-height:100vh;overflow:hidden;padding:100px 0;position:relative}.services:before{background:radial-gradient(circle at 20% 30%,#0071e308 0,#0000 50%),radial-gradient(circle at 80% 70%,#0077ed08 0,#0000 50%);bottom:0;left:0;right:0;top:0}.services:after,.services:before{content:"";pointer-events:none;position:absolute;z-index:0}.services:after{animation:float 20s ease-in-out infinite;background:radial-gradient(circle,#0071e30d 0,#0000 70%);border-radius:50%;height:600px;right:-10%;top:-50%;width:600px}.services-container{display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 22px;position:relative;width:100%;z-index:1}.services-header{opacity:0;transform:translateY(30px);transition:opacity .5s ease-out,transform .5s ease-out}.services-header.fade-in-up{opacity:1;transform:translateY(0)}.services-header.faded{opacity:0;pointer-events:none;transform:translateY(-20px)}.section-title{letter-spacing:-.4px;position:relative}.section-description{margin:0 auto 48px;max-width:560px}.service-section-title{color:#1d1d1f;font-size:38px;font-weight:600;letter-spacing:-.4px;line-height:1.07143;margin-bottom:13px;position:relative;text-align:center}.service-section-description{color:#86868b;font-size:15px;font-weight:400;letter-spacing:.011em;line-height:1.381;margin:0 auto 32px;max-width:640px;text-align:center}.services-error,.services-loading{color:#86868b;font-size:14px;font-weight:400;padding:64px 16px;text-align:center}.services-loading{align-items:center;display:flex;flex-direction:column;gap:13px}.services-loading:before{animation:spin .8s linear infinite;border:2px solid #0071e31a;border-radius:50%;border-top-color:#0071e3;content:"";height:32px;width:32px}.services-error{background:#d32f2f0d;border-radius:10px;color:#d32f2f;margin:0 auto;max-width:400px;padding:19px}.services-grid{grid-gap:19px;display:grid;gap:19px;grid-template-columns:repeat(auto-fit,minmax(256px,1fr));margin:0 auto;max-width:1200px;padding:0;position:relative;transition:all .5s cubic-bezier(.4,0,.2,1);width:100%;z-index:999}.services-grid.has-expanded{gap:0;max-width:100%;padding:0}.service-card-wrapper{opacity:0;position:relative;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out;width:100%;z-index:1}.service-card-wrapper.fade-in-up{animation:fadeInUp .6s ease-out forwards;opacity:1;transform:translateY(0)}.service-card-wrapper.expanded-wrapper{animation:expandCard .6s cubic-bezier(.4,0,.2,1) forwards;-webkit-backdrop-filter:none;backdrop-filter:none;filter:none;height:85vh;left:50%;max-height:900px;max-width:1200px;opacity:1;position:fixed;top:50%;transform:translate(-50%,-50%);transition:none!important;width:90vw;z-index:1001}.service-card-wrapper:not(.expanded-wrapper){height:auto!important;left:auto!important;max-height:none!important;max-width:none!important;position:relative!important;top:auto!important;transform:translateY(0)!important;transition:opacity .6s ease-out;width:100%!important}.service-card{align-items:stretch;background-color:#f5f5f7;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #0000000a;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100%;min-height:192px;outline:none;overflow:hidden;padding:0;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.service-card:focus-visible{outline:2px solid #0071e3;outline-offset:2px}.service-card.expanded{transition:none}.service-card:hover:not(.expanded){background-color:#fff;border-color:#00000014;box-shadow:0 10px 26px #0000001f;transform:translateY(-5px)}.service-card.expanded{background-color:#fff!important;border-color:#0000001a;border-radius:14px;box-shadow:0 16px 32px #00000014;cursor:default;height:100%;min-height:100%;overflow-y:auto}.service-card.expanded,.service-card.expanded *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;transition:none!important}.service-card.expanded :not(.service-close-icon){animation:none!important}.service-card-header{align-items:center;display:flex;flex-direction:column;flex-shrink:0;justify-content:center;padding:26px 19px 19px;position:relative;transition:padding .3s ease}.service-card.expanded .service-card-header{padding:32px 26px 22px;transition:none}.service-icon-wrapper{align-items:center;background:#fffc;border-radius:13px;display:flex;height:58px;justify-content:center;margin-bottom:13px;position:relative;transition:all .3s ease;width:58px;z-index:1}.service-card:hover:not(.expanded) .service-icon-wrapper{background:#fff;box-shadow:0 4px 12px #00000014;transform:scale(1.05)}.service-icon{display:inline-block;font-size:32px;line-height:1;position:relative;transition:transform .3s ease;z-index:1}.service-card:hover:not(.expanded) .service-icon{transform:scale(1.05)}.service-card.expanded .service-icon-wrapper{height:64px;margin-bottom:16px;transition:none;width:64px}.service-card.expanded .service-icon{font-size:35px;transition:none}.service-expand-indicator{align-items:center;color:#86868b;display:flex;font-size:10px;font-weight:500;gap:5px;justify-content:center;margin-top:6px;opacity:1;pointer-events:none;transition:all .3s ease}.service-expand-indicator.hidden{opacity:0;pointer-events:none}.service-expand-indicator svg{color:#86868b;transition:transform .3s ease}.service-card:hover:not(.expanded) .service-expand-indicator{color:#0071e3}.service-card:hover:not(.expanded) .service-expand-indicator svg{color:#0071e3;transform:translateY(2px)}.service-close-icon{align-items:center;background:#0000000a;border:none;border-radius:8px;color:#1d1d1f;cursor:pointer;display:flex;height:29px;justify-content:center;opacity:0;pointer-events:none;position:absolute;right:16px;top:16px;transition:all .3s ease;width:29px;z-index:10}.service-close-icon.visible{animation:fadeInScale .3s ease-out forwards;opacity:1;pointer-events:all}.service-close-icon:hover{background:#00000014;color:#1d1d1f;transform:scale(1.05)}.service-close-icon:active{transform:scale(.95)}.service-close-icon:focus-visible{outline:2px solid #0071e3;outline-offset:2px}.service-title{color:#1d1d1f;flex-shrink:0;font-size:14px;font-weight:600;letter-spacing:-.01em;line-height:1.3;margin-bottom:10px;position:relative;transition:font-size .3s ease;z-index:1}.service-card.expanded .service-title{font-size:22px;margin-bottom:13px;transition:none}.service-card-content{display:flex;flex:1 1;flex-direction:column;max-height:0;opacity:0;overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .4s ease-out}.service-card-content.expanded{flex:1 1;max-height:none;opacity:1;overflow-y:auto;transition:none}.service-content-inner{display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;padding:0 19px 26px}.service-card.expanded .service-content-inner{animation:none;padding:0 26px 32px;transition:none}.service-description-card{word-wrap:break-word;box-sizing:border-box;color:#4a4a4f;font-size:12px;font-weight:400;letter-spacing:-.01em;line-height:1.6;margin-bottom:0;margin-left:0;margin-right:0;max-width:100%;overflow-wrap:break-word;padding:0;position:relative;text-align:center;width:100%;z-index:1}.service-card.expanded .service-description-card{color:#1d1d1f;font-size:13px;line-height:1.7;margin-bottom:26px;text-align:left}.service-card.expanded::-webkit-scrollbar{width:8px}.service-card.expanded::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.service-card.expanded::-webkit-scrollbar-thumb{background:#0071e34d;border-radius:4px}.service-card.expanded::-webkit-scrollbar-thumb:hover{background:#0071e380}.service-tech-section{border-top:1px solid #00000014;margin-top:26px;padding-top:26px}.service-tech-title{color:#86868b;font-size:11px;font-weight:600;letter-spacing:.05em;margin-bottom:13px;text-align:left;text-transform:uppercase}.service-examples{display:flex;flex-shrink:0;flex-wrap:wrap;gap:6px;justify-content:flex-start;list-style:none;margin:0;padding:0;position:relative;width:100%;z-index:1}.service-examples li{background:#f5f5f7;border:1px solid #00000014;border-radius:16px;color:#1d1d1f;font-size:10px;font-weight:500;letter-spacing:.01em;line-height:1.4;padding:5px 11px;position:relative;transition:all .2s ease}.service-examples li:hover{background:#e8e8ed;border-color:#0000001f;transform:translateY(-1px)}.services-dots{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9;border:1px solid #0071e31a;border-radius:50px;box-shadow:0 4px 16px #0000000f;display:flex;gap:10px;justify-content:center;margin-top:48px;padding:16px 24px}.dot{background-color:#00000026;border:none;border-radius:50%;cursor:pointer;height:10px;outline:none;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:10px}.dot:before{background:#0071e333;border-radius:50%;content:"";height:20px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .3s ease;width:20px}.dot:hover:before{transform:translate(-50%,-50%) scale(1)}.dot:hover{background-color:#0071e380;transform:scale(1.3)}.dot.active{background:linear-gradient(135deg,#0071e3,#0077ed);border-radius:10px;box-shadow:0 2px 8px #0071e366;transform:scale(1);width:40px}.dot.active:before{display:none}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes expandCard{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}@keyframes shimmer{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@media (max-width:1068px){.services{padding:60px 0}.section-title{font-size:32px}.section-description{font-size:14px;margin-bottom:24px}.service-section-title{font-size:32px}.service-section-description{font-size:14px;margin-bottom:24px}.services-grid{gap:19px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.service-card{min-height:144px}.service-card.expanded{min-height:360px}.service-card-header{padding:22px 16px 16px}.service-card.expanded .service-card-header{padding:29px 22px 19px}.service-content-inner{padding:0 16px 22px}.service-card.expanded .service-content-inner{padding:0 22px 29px}.service-title{font-size:16px}.service-card.expanded .service-title{font-size:19px}.service-description-card{font-size:11px}.service-card.expanded .service-description-card{font-size:12px}.service-icon-wrapper{height:51px;margin-bottom:11px;width:51px}.service-card.expanded .service-icon-wrapper{height:58px;margin-bottom:14px;width:58px}.service-icon{font-size:29px}.service-card.expanded .service-icon{font-size:32px}.service-expand-icon{height:29px;right:16px;top:16px;width:29px}.service-card-wrapper.expanded-wrapper{height:90vh;max-height:800px;width:95vw}.service-card.expanded .service-card-header{padding:24px 20px}.service-card.expanded .service-content-inner{padding:0 20px 24px}}@media (max-width:768px){.services{min-height:100vh;padding:60px 0}.section-title{font-size:29px;margin-bottom:10px}.section-description{font-size:13px;margin-bottom:19px}.service-section-title{font-size:29px;margin-bottom:10px}.service-section-description{font-size:13px;margin-bottom:19px}.services-grid{gap:16px;grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.service-card{min-height:128px}.service-card.expanded{min-height:336px}.service-card-header{padding:19px 14px 16px}.service-card.expanded .service-card-header{padding:26px 19px 19px}.service-content-inner{padding:0 14px 19px}.service-card.expanded .service-content-inner{padding:0 19px 26px}.service-icon-wrapper{height:48px;margin-bottom:10px;width:48px}.service-card.expanded .service-icon-wrapper{height:54px;margin-bottom:13px;width:54px}.service-icon{font-size:26px}.service-card.expanded .service-icon{font-size:29px}.service-title{font-size:14px}.service-card.expanded .service-title{font-size:18px}.service-description-card{font-size:11px}.service-card.expanded .service-description-card{font-size:12px}.service-examples{gap:6px}.service-examples li{font-size:10px;padding:6px 11px}.service-expand-icon{height:26px;right:14px;top:14px;width:26px}.service-expand-icon svg{height:16px;width:16px}.service-card-wrapper.expanded-wrapper{height:92vh;max-height:700px;width:95vw}.service-card.expanded .service-card-header{padding:20px 16px}.service-card.expanded .service-content-inner{padding:0 16px 20px}}@media (max-width:480px){.services{padding:32px 0}.section-title{font-size:26px}.section-description{font-size:12px;margin-bottom:16px}.service-section-title{font-size:26px}.service-section-description{font-size:12px;margin-bottom:16px}.services-grid{gap:16px;grid-template-columns:1fr}.service-card{min-height:120px}.service-card.expanded{min-height:320px}.service-card-header,.service-card.expanded .service-card-header{padding:16px 13px}.service-card.expanded .service-content-inner,.service-content-inner{padding:0 13px 16px}.service-icon-wrapper{height:45px;margin-bottom:8px;width:45px}.service-card.expanded .service-icon-wrapper{height:51px;margin-bottom:11px;width:51px}.service-icon{font-size:22px}.service-card.expanded .service-icon{font-size:26px}.service-title{font-size:14px}.service-card.expanded .service-title{font-size:16px}.service-description-card{font-size:10px;margin-bottom:19px}.service-card.expanded .service-description-card{font-size:11px;margin-bottom:22px}.service-examples li{font-size:9px;padding:5px 10px}.service-expand-icon{height:26px;right:13px;top:13px;width:26px}.service-expand-icon svg{height:14px;width:14px}.service-card-wrapper.expanded-wrapper{height:95vh;max-height:600px;width:98vw}.service-card.expanded .service-card-header{padding:20px 16px}.service-card.expanded .service-content-inner{padding:0 16px 20px}.service-card.expanded .service-description-card{font-size:14px;margin-bottom:24px}}.portfolio{align-items:center;background-color:#fff;display:flex;min-height:100vh;overflow:hidden;padding:64px 0;position:relative}.portfolio-container{display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 18px;width:100%}.portfolio-header{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.portfolio-header.fade-in-up{opacity:1;transform:translateY(0)}.portfolio-error,.portfolio-loading{color:#86868b;font-size:14px;padding:48px 16px;text-align:center}.portfolio-error{color:#d32f2f}.portfolio-grid{grid-gap:19px;display:grid;gap:19px;grid-template-columns:repeat(3,1fr);margin-top:0}.portfolio-item{background-color:#f5f5f7;border:1px solid #0000001a;border-radius:14px;box-shadow:0 2px 6px #0000000d;opacity:0;overflow:hidden;padding:26px 22px;position:relative;transform:translateY(30px);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.portfolio-item.fade-in-up{animation:fadeInUp .6s ease-out forwards}.portfolio-item:before{background:linear-gradient(90deg,#0071e3,#00d4ff);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.portfolio-item:hover:before{transform:scaleX(1)}.portfolio-item:hover{background-color:#fff;border-color:#0071e333;box-shadow:0 16px 32px #0000001f;transform:translateY(-6px)}.portfolio-icon{display:inline-block;font-size:32px;margin-bottom:13px;transition:transform .3s ease}.portfolio-item:hover .portfolio-icon{transform:scale(1.15) rotate(5deg)}.portfolio-category{color:#0071e3;font-size:10px;font-weight:600;letter-spacing:.05em;margin-bottom:8px;opacity:.8;text-transform:uppercase}.portfolio-title{color:#1d1d1f;font-size:21px;font-weight:600;letter-spacing:-.5px;line-height:1.2;margin-bottom:10px}.portfolio-description{color:#86868b;font-size:13px;font-weight:400;letter-spacing:.012em;line-height:1.5;margin-bottom:13px}.portfolio-highlight{background-color:#0071e314;border-left:2px solid #0071e3;border-radius:6px;color:#0071e3;display:inline-block;font-size:11px;font-weight:600;margin-bottom:16px;padding:6px 10px}.portfolio-tech{display:flex;flex-wrap:wrap;gap:6px}.tech-tag{background-color:#0071e31a;border:1px solid #0071e333;border-radius:5px;transition:all .3s ease}.portfolio-item:hover .tech-tag{background-color:#0071e326;border-color:#0071e34d;transform:translateY(-2px)}@media (max-width:1068px){.portfolio{min-height:100vh;padding:48px 0}.section-title{font-size:32px}.section-description{font-size:14px;margin-bottom:24px}.portfolio-grid{gap:16px;grid-template-columns:repeat(2,1fr)}.portfolio-item{padding:22px 19px}.portfolio-icon{font-size:29px;margin-bottom:11px}.portfolio-title{font-size:19px}.portfolio-description{font-size:12px;margin-bottom:11px}.portfolio-highlight{font-size:10px;margin-bottom:14px}}@media (max-width:768px){.portfolio{min-height:100vh;padding:48px 0}.section-title{font-size:29px;margin-bottom:10px}.section-description{font-size:13px;margin-bottom:19px}.portfolio-grid{gap:16px;grid-template-columns:1fr}.portfolio-item{padding:19px 16px}.portfolio-icon{font-size:26px;margin-bottom:10px}.portfolio-title{font-size:18px;margin-bottom:8px}.portfolio-description{font-size:11px;margin-bottom:10px}.portfolio-highlight{font-size:10px;margin-bottom:13px;padding:5px 8px}.tech-tag{font-size:10px;padding:4px 8px}}@media (max-width:480px){.portfolio{padding:32px 0}.section-title{font-size:26px}.section-description{font-size:12px;margin-bottom:16px}.portfolio-item{padding:16px 13px}.portfolio-title{font-size:16px}.portfolio-description{font-size:10px}}.notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:500px;min-width:300px;overflow:hidden;position:fixed;right:20px;top:20px;z-index:10000}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.notification-content{align-items:center;display:flex;gap:12px;padding:16px 20px}.notification-success{background-color:#4caf50;color:#fff}.notification-error{background-color:#f44336;color:#fff}.notification-icon{align-items:center;background-color:#fff3;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:24px;justify-content:center;width:24px}.notification-message{flex:1 1;font-size:14px;font-weight:500;line-height:1.5}.notification-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;line-height:1;opacity:.8;padding:0;transition:opacity .2s ease;width:24px}.notification-close:hover{opacity:1}.notification-close:focus{border-radius:4px;outline:2px solid #ffffff80;outline-offset:2px}@media (max-width:768px){.notification{left:10px;max-width:none;min-width:auto;right:10px;top:10px}.notification-content{padding:14px 16px}.notification-message{font-size:13px}}.contact{align-items:center;background-color:#f5f5f7;display:flex;min-height:100vh;overflow:hidden;padding:64px 0;position:relative}.contact-container{display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1200px;padding:0 18px;width:100%}.contact-header{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.contact-header.fade-in-up{opacity:1;transform:translateY(0)}.contact-content{grid-gap:48px;display:grid;gap:48px;grid-template-columns:1fr 1.5fr;margin-top:0}.contact-info{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.contact-info.fade-in-up{animation:fadeInUp .6s ease-out forwards}.contact-info h3{color:#1d1d1f;font-size:26px;font-weight:600;letter-spacing:-.5px;margin-bottom:13px}.contact-info-description{color:#86868b;font-size:14px;line-height:1.5;margin-bottom:26px}.info-items{display:flex;flex-direction:column;font-style:normal;gap:19px}.info-item{align-items:flex-start;background-color:#fff;border:1px solid #0000001a;border-radius:10px;display:flex;gap:13px;opacity:0;padding:16px;transform:translateY(20px);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.info-item.fade-in-up{animation:fadeInUp .6s ease-out forwards}.info-item:hover{border-color:#0071e333;box-shadow:0 6px 19px #0000001a;transform:translateY(-3px)}.info-icon{flex-shrink:0;font-size:26px;transition:transform .3s ease}.info-item:hover .info-icon{transform:scale(1.1) rotate(5deg)}.info-content{flex:1 1}.info-content strong{color:#86868b;display:block;font-size:10px;font-weight:600;letter-spacing:.05em;margin-bottom:5px;text-transform:uppercase}.info-content a{color:#0071e3;display:block;font-size:14px;font-style:normal;font-weight:400;text-decoration:none;transition:color .3s ease}.info-content a:hover{color:#0077ed;text-decoration:underline}.info-content span{color:#1d1d1f;display:block;font-size:14px;font-style:normal;font-weight:400}.contact-form{display:flex;flex-direction:column;gap:16px;opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.contact-form.fade-in-up{animation:fadeInUp .6s ease-out forwards}.form-group{margin-bottom:4px;position:relative;width:100%}.form-label{color:#1d1d1f;display:block;font-size:12px;font-weight:600;letter-spacing:.01em;margin-bottom:8px}.form-label .required{color:#d32f2f;margin-left:2px}.form-group input,.form-group textarea{border:1px solid #0000001a;box-shadow:0 2px 3px #00000005;padding:13px 14px;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{background-color:#fff;box-shadow:0 0 0 3px #0071e31a,0 3px 10px #0000000d;transform:translateY(-2px)}.form-group input.error,.form-group textarea.error{background-color:#fff5f5;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a}.form-group input.error:focus,.form-group textarea.error:focus{border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f26,0 3px 10px #d32f2f1a}.form-group input.valid,.form-group textarea.valid{background-color:#f1f8f4;border-color:#4caf50}.form-group input.valid:focus,.form-group textarea.valid:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a,0 3px 10px #4caf500d}.form-group textarea{min-height:112px}.error-message{animation:slideDown .2s ease-out;color:#d32f2f;display:block;font-size:11px;font-weight:500;margin-top:6px}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.textarea-footer{align-items:flex-start;display:flex;justify-content:space-between;margin-top:6px;min-height:18px}.character-count{color:#86868b;font-size:11px;font-weight:500;margin-left:auto}.character-count.warning{color:#ff9800}.character-count.warning:after{content:" (approaching limit)";font-size:10px}.submit-button{align-items:center;align-self:flex-start;border-radius:980px;box-shadow:0 4px 12px #0071e34d;display:inline-flex;font-size:14px;font-weight:400;gap:6px;justify-content:center;min-width:144px;overflow:hidden;padding:11px 22px;position:relative;text-decoration:none;transition:all .3s ease}.submit-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.submit-button:hover:before{left:100%}.submit-button:hover:not(:disabled){box-shadow:0 6px 20px #0071e366;transform:translateY(-2px)}.submit-button:disabled{opacity:.7}.submit-button:disabled:before{display:none}.submit-button svg{flex-shrink:0;transition:transform .3s ease}.submit-button:hover:not(:disabled) svg{transform:translateX(2px)}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;flex-shrink:0;height:14px;width:14px}.section-title{color:#1d1d1f;font-size:38px;font-weight:600;letter-spacing:-.5px;line-height:1.07143;margin-bottom:13px;text-align:center}.section-description{color:#86868b;font-size:15px;font-weight:400;letter-spacing:.011em;line-height:1.381;margin:0 auto 32px;max-width:640px;text-align:center}@media (max-width:1068px){.contact{min-height:100vh;padding:48px 0}.section-title{font-size:32px}.section-description{font-size:14px;margin-bottom:24px}.contact-content{gap:32px;grid-template-columns:1fr}.contact-info h3{font-size:22px}.contact-info-description{font-size:13px;margin-bottom:22px}.info-item{padding:14px}.info-icon{font-size:22px}}@media (max-width:768px){.contact{min-height:100vh;padding:48px 0}.section-title{font-size:29px;margin-bottom:10px}.section-description{font-size:13px;margin-bottom:19px}.contact-info h3{font-size:19px}.contact-info-description{font-size:12px;margin-bottom:19px}.info-items{gap:13px}.info-item{font-size:12px;padding:13px}.info-icon{font-size:19px}.info-content a,.info-content span{font-size:12px}.form-label{font-size:11px;margin-bottom:6px}.form-group input,.form-group textarea{font-size:13px;padding:11px 13px}.error-message{font-size:10px;margin-top:5px}.character-count{font-size:10px}.submit-button{font-size:13px;min-width:auto;padding:11px 22px;width:100%}}@media (max-width:480px){.contact{padding:32px 0}.section-title{font-size:26px}.section-description{font-size:12px;margin-bottom:16px}.contact-content{gap:26px}.info-item{align-items:center;flex-direction:column;padding:11px;text-align:center}.info-icon{font-size:22px}}.footer{background-color:#f5f5f7;border-top:1px solid #00000014;margin-top:0;padding:80px 0 24px;position:relative}.footer-container{margin:0 auto;max-width:1200px;padding:0 22px}.footer-content{grid-gap:48px;border-bottom:1px solid #00000014;display:grid;gap:48px;grid-template-columns:1.5fr repeat(3,1fr);margin-bottom:40px;opacity:0;padding-bottom:40px;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.footer-content.fade-in-up{opacity:1;transform:translateY(0)}.footer-section{display:flex;flex-direction:column;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.footer-section.fade-in-up{animation:fadeInUp .6s ease-out forwards}.footer-content.fade-in-up .footer-brand{opacity:1;transform:translateY(0)}.footer-brand{max-width:320px}.footer-section h3{font-size:18px;letter-spacing:-.01em;text-transform:none}.footer-section h3,.footer-section h4{color:#1d1d1f;font-weight:600;margin-bottom:16px}.footer-section h4{font-size:11px;letter-spacing:.05em;opacity:.8;text-transform:uppercase}.footer-section p{color:#86868b;font-size:13px;font-weight:400;letter-spacing:-.01em;line-height:1.6;margin:0 0 24px}.footer-social{display:flex;gap:12px;margin-top:8px}.social-link{align-items:center;background-color:#fff;border:1px solid #0000001a;border-radius:50%;box-shadow:0 2px 4px #0000000d;display:flex;height:36px;justify-content:center;text-decoration:none;transition:all .3s ease;width:36px}.social-link:hover{background-color:#fff;border-color:#0071e34d;box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.social-icon{font-size:16px;transition:transform .3s ease}.social-link:hover .social-icon{transform:scale(1.15)}.footer-section ul{list-style:none;margin:0;padding:0}.footer-section ul li{margin-bottom:10px}.footer-section ul li:last-child{margin-bottom:0}.footer-section ul li a{color:#86868b;display:inline-block;font-size:13px;font-weight:400;letter-spacing:-.01em;line-height:1.6;padding:2px 0;position:relative;text-decoration:none;transition:all .2s ease}.footer-section ul li a:hover{color:#0071e3;transform:translateX(4px)}.footer-section ul li a:after{background-color:#0071e3;bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .2s ease;width:0}.footer-section ul li a:hover:after{width:100%}.footer-bottom{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;opacity:0;padding-top:24px;text-align:center;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.footer-bottom.fade-in-up{animation:fadeInUp .6s ease-out forwards}.footer-bottom p{color:#86868b;font-size:12px;font-weight:400;letter-spacing:-.01em;line-height:1.5;margin:0}.footer-legal{align-items:center;display:flex;font-size:11px;gap:12px}.footer-legal a{color:#86868b;text-decoration:none;transition:color .2s ease}.footer-legal a:hover{color:#0071e3}.footer-legal .separator{color:#86868b;opacity:.5}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1068px){.footer{padding:60px 0 20px}.footer-content{gap:40px;grid-template-columns:repeat(2,1fr)}.footer-brand{grid-column:1/-1;max-width:100%}.footer-section h3{font-size:16px}.footer-section p{font-size:12px}}@media (max-width:768px){.footer{padding:50px 0 20px}.footer-content{gap:32px;grid-template-columns:1fr;margin-bottom:32px;padding-bottom:32px}.footer-brand{grid-column:1}.footer-section h3{font-size:16px;margin-bottom:12px}.footer-section h4{font-size:10px;margin-bottom:12px}.footer-section p{font-size:12px;margin-bottom:20px}.footer-section ul li a{font-size:12px}.footer-section ul li{margin-bottom:8px}.footer-social{gap:10px}.social-link{height:32px;width:32px}.social-icon{font-size:14px}.footer-bottom{gap:10px;padding-top:20px}.footer-bottom p{font-size:11px}.footer-legal{font-size:10px;gap:10px}}@media (max-width:480px){.footer{padding:40px 0 16px}.footer-content{gap:28px;margin-bottom:28px;padding-bottom:28px}.footer-section h3{font-size:14px}.footer-section p,.footer-section ul li a{font-size:11px}.footer-bottom p{font-size:10px}.footer-legal{flex-direction:column;gap:8px}.footer-legal .separator{display:none}}.admin-login{align-items:center;background:linear-gradient(180deg,#f8f9fa,#fff);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.admin-login-container{max-width:440px;width:100%}.admin-login-card{background-color:#fff;border:1px solid #00000014;border-radius:18px;box-shadow:0 4px 24px #00000014;padding:48px 40px}.admin-login-header{margin-bottom:32px;text-align:center}.admin-login-header h1{color:#1d1d1f;font-size:32px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.admin-login-header p{color:#86868b;font-size:17px;line-height:1.5}.admin-login-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:14px;line-height:1.5;margin-bottom:24px;padding:12px 16px}.admin-login-form{display:flex;flex-direction:column;gap:24px}.admin-login-form .form-group{display:flex;flex-direction:column;gap:8px}.admin-login-form label{color:#1d1d1f;font-size:14px;font-weight:500}.admin-login-form input{background-color:#fff;border:1px solid #0003;border-radius:10px;color:#1d1d1f;font-family:inherit;font-size:17px;padding:14px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.admin-login-form input:focus{border-color:#0071e3;box-shadow:0 0 0 4px #0071e31a;outline:none}.admin-login-form input::placeholder{color:#86868b}.admin-login-button{background-color:#0071e3;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:17px;font-weight:500;margin-top:8px;padding:14px 24px;transition:background-color .2s ease,transform .1s ease;width:100%}.admin-login-button:hover:not(:disabled){background-color:#0077ed}.admin-login-button:active:not(:disabled){transform:scale(.98)}.admin-login-button:disabled{cursor:not-allowed;opacity:.6}.admin-login-footer{border-top:1px solid #00000014;margin-top:32px;padding-top:24px;text-align:center}.back-link{color:#0071e3;font-size:15px;text-decoration:none;transition:color .2s ease}.back-link:hover{color:#0077ed;text-decoration:underline}@media (max-width:768px){.admin-login{padding:20px 16px}.admin-login-card{padding:40px 32px}.admin-login-header h1{font-size:28px}.admin-login-header p{font-size:16px}}@media (max-width:480px){.admin-login-card{padding:32px 24px}.admin-login-header h1{font-size:24px}}.admin-navbar{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background-color:#fffc;border-bottom:1px solid #0000001a;height:44px;left:0;padding:0;position:fixed;right:0;top:0;transition:background-color .3s ease;z-index:1000}.admin-navbar.scrolled{background-color:#fffffff2}.admin-navbar-container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 22px;position:relative}.admin-navbar-logo{color:#1d1d1f;display:inline-block;font-size:14px;font-weight:600;letter-spacing:-.01em;margin-right:auto}.admin-navbar-menu{align-items:center;display:flex;flex:1 1;gap:24px;justify-content:center}.admin-navbar-link{color:#1d1d1f;display:block;font-size:12px;font-weight:400;line-height:44px;padding:0 4px;position:relative;text-decoration:none;transition:color .3s ease}.admin-navbar-link:hover{color:#0071e3}.admin-navbar-link.active{color:#0071e3;font-weight:500}.admin-navbar-link:after{background-color:#0071e3;border-radius:2px 2px 0 0;bottom:0;content:"";height:2px;left:4px;margin:0 auto;position:absolute;right:4px;transition:width .3s ease;width:0}.admin-navbar-link.active:after,.admin-navbar-link:hover:after{width:calc(100% - 8px)}.admin-navbar-actions{align-items:center;display:flex;gap:12px}.admin-navbar-button{align-items:center;background-color:initial;border:1px solid #0000001a;border-radius:6px;color:#1d1d1f;cursor:pointer;display:flex;font-family:inherit;font-size:12px;font-weight:400;gap:6px;line-height:1.5;padding:6px 12px;transition:all .3s ease}.admin-navbar-button:hover:not(:disabled){background-color:#0071e30d;border-color:#0071e3;color:#0071e3}.admin-navbar-button:active:not(:disabled){transform:scale(.98)}.admin-navbar-button:disabled{cursor:not-allowed;opacity:.6}.admin-navbar-register{color:#1d1d1f}.admin-navbar-logout{border-color:#d32f2f33;color:#d32f2f}.admin-navbar-logout:hover:not(:disabled){background-color:#d32f2f0d;border-color:#d32f2f;color:#b71c1c}.admin-navbar-icon{align-items:center;display:flex;font-size:14px;justify-content:center}.admin-navbar-button-text{font-size:12px;font-weight:400}@media (max-width:768px){.admin-navbar-container{padding:0 16px}.admin-navbar-logo{font-size:13px}.admin-navbar-menu{gap:16px}.admin-navbar-link{font-size:11px}.admin-navbar-actions{gap:8px}.admin-navbar-button{gap:4px;padding:6px 10px}.admin-navbar-button-text{font-size:11px}.admin-navbar-icon{font-size:13px}}@media (max-width:480px){.admin-navbar-menu{gap:12px}.admin-navbar-link{font-size:10px}.admin-navbar-button-text{display:none}.admin-navbar-button{justify-content:center;min-width:36px;padding:6px 10px}}.traffic-overview-container{margin:0 auto 40px;max-width:1400px;padding:0 20px;width:100%}.traffic-overview-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:32px}.traffic-overview-header h2{color:#1d1d1f;font-size:32px;font-weight:600;letter-spacing:-.5px;margin:0}.duration-selector{align-items:center;display:flex;gap:12px}.duration-selector label{color:#1d1d1f;font-size:14px;font-weight:500;white-space:nowrap}.duration-selector .duration-select{background-color:#fff;border:1px solid #00000026;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease}.duration-selector .duration-select:hover{border-color:#0071e3}.duration-selector .duration-select:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e31a;outline:none}.traffic-overview-error,.traffic-overview-loading{color:#86868b;font-size:17px;padding:60px 20px;text-align:center}.traffic-overview-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:10px;color:#d32f2f;padding:20px}.traffic-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.metric-card{align-items:flex-start;background-color:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.metric-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.metric-icon{flex-shrink:0;font-size:32px;line-height:1}.metric-content{flex:1 1;min-width:0}.metric-label{color:#86868b;font-size:13px;font-weight:500;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.metric-value{color:#1d1d1f;font-size:28px;font-weight:600;letter-spacing:-.5px;line-height:1.2;margin-bottom:4px}.metric-percentage{color:#86868b;font-size:13px;margin-top:4px}@media (max-width:1024px){.traffic-overview-container{padding:0 16px}.traffic-overview-header h2{font-size:28px}.traffic-metrics-grid{gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metric-card{padding:20px}.metric-value{font-size:24px}}@media (max-width:768px){.traffic-overview-header{align-items:flex-start;flex-direction:column}.traffic-overview-header h2{font-size:24px}.traffic-metrics-grid{gap:12px;grid-template-columns:1fr}.metric-card{padding:16px}.metric-icon{font-size:28px}.metric-value{font-size:22px}}.activity-container{margin:0 auto;max-width:1400px;padding:0 20px;width:100%}.activity-header{margin-bottom:32px}.activity-header h2{color:#1d1d1f;font-size:32px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.activity-header p{color:#86868b;font-size:17px;line-height:1.5}.activity-empty,.activity-error,.activity-loading{color:#86868b;font-size:17px;padding:60px 20px;text-align:center}.activity-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:10px;color:#d32f2f;padding:20px}.activity-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.mode-toggle{background-color:#f5f5f7;border-radius:10px;display:flex;gap:4px;padding:4px}.mode-button{background:#0000;border:none;border-radius:8px;color:#515154;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.mode-button:hover{background-color:#0000000d}.mode-button.active{background-color:#fff;box-shadow:0 2px 4px #0000001a;color:#0071e3}.refresh-button{align-items:center;background-color:#fff;border:1px solid #00000026;border-radius:8px;color:#1d1d1f;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.refresh-button:hover:not(:disabled){background-color:#f0f7ff;border-color:#0071e3;color:#0071e3}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.refresh-icon{display:inline-block;font-size:16px;transition:transform .3s ease}.refresh-button:not(:disabled):hover .refresh-icon{transform:rotate(180deg)}.refresh-button:disabled .refresh-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.time-plot-controls{align-items:center;display:flex;flex-wrap:wrap;gap:24px}.control-group{align-items:center;display:flex;gap:12px}.control-group label{color:#1d1d1f;font-size:14px;font-weight:500;white-space:nowrap}.duration-select{background-color:#fff;border:1px solid #00000026;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease}.duration-select:hover{border-color:#0071e3}.duration-select:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e31a;outline:none}.chart-type-buttons{display:flex;gap:8px}.chart-type-button{background-color:#fff;border:1px solid #00000026;border-radius:8px;color:#515154;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.chart-type-button:hover{border-color:#0071e3;color:#0071e3}.chart-type-button.active{background-color:#0071e3;border-color:#0071e3;color:#fff}.activity-row-view{width:100%}.activity-table-wrapper{background-color:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;overflow-x:auto}.activity-table{border-collapse:collapse;min-width:2000px;width:100%}.activity-table thead{background-color:#f5f5f7;border-bottom:2px solid #0000001a}.activity-table th{color:#1d1d1f;font-size:13px;font-weight:600;letter-spacing:.01em;padding:16px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.activity-table tbody tr{border-bottom:1px solid #0000000f;transition:background-color .2s ease}.activity-table tbody tr:hover{background-color:#f8f9fa}.activity-table tbody tr:last-child{border-bottom:none}.activity-table td{color:#1d1d1f;font-size:14px;padding:16px 12px;vertical-align:middle}.activity-id{color:#86868b;font-size:13px;font-weight:600;text-align:center;width:60px}.activity-ip{color:#515154;font-family:Courier New,monospace;font-size:13px}.activity-type-cell{min-width:120px}.activity-type-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px;text-transform:capitalize;white-space:nowrap}.activity-type-badge.page_view{background-color:#e8f4f8;color:#0071e3}.activity-type-badge.contact_view{background-color:#e6ffed;color:#28a745}.activity-type-badge.unknown{background-color:#f5f5f7;color:#86868b}.activity-method{min-width:80px}.method-badge{border-radius:12px;display:inline-block;font-family:Courier New,monospace;font-size:12px;font-weight:500;padding:4px 10px;white-space:nowrap}.method-badge.GET{background-color:#e6ffed;color:#28a745}.method-badge.POST{background-color:#fff3cd;color:#856404}.method-badge.PUT{background-color:#cfe2ff;color:#084298}.method-badge.DELETE{background-color:#f8d7da;color:#721c24}.method-badge.unknown{background-color:#f5f5f7;color:#86868b}.activity-browser,.activity-device,.activity-os{color:#515154;font-size:13px;white-space:nowrap}.activity-endpoint,.activity-response-time{color:#515154;font-family:Courier New,monospace;font-size:13px;white-space:nowrap}.activity-endpoint{max-width:200px;overflow:hidden;text-overflow:ellipsis}.activity-date{color:#86868b;font-size:13px;min-width:180px;white-space:nowrap}.activity-user-agent{color:#515154;font-family:Courier New,monospace;font-size:12px;max-width:250px;min-width:200px}.truncate-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-timezone{min-width:140px}.activity-location,.activity-timezone{color:#515154;font-size:13px;white-space:nowrap}.activity-location{max-width:220px;min-width:180px}.activity-coordinates{color:#515154;font-family:Courier New,monospace;font-size:12px;min-width:140px;white-space:nowrap}.coordinate-text{display:inline-block}.activity-request-body{color:#515154;font-family:Courier New,monospace;font-size:12px;max-width:200px;min-width:150px}.request-body-text{cursor:help;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-value{color:#86868b;font-style:italic}.activity-count{color:#515154;font-size:13px;font-weight:500;min-width:80px;text-align:center}.activity-pagination{align-items:center;display:flex;gap:16px;justify-content:center;padding:20px}.pagination-button{background-color:#fff;border:1px solid #00000026;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.pagination-button:hover:not(:disabled){background-color:#f0f7ff;border-color:#0071e3;color:#0071e3}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#86868b;font-size:14px}.activity-time-plot-view{width:100%}.chart-container{background-color:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-top:24px;padding:24px}@media (max-width:1024px){.activity-container{padding:0 16px}.activity-header h2{font-size:28px}.activity-controls,.time-plot-controls{align-items:stretch;flex-direction:column}.time-plot-controls{gap:16px}.control-group{align-items:stretch;flex-direction:column}.chart-type-buttons{width:100%}.chart-type-button{flex:1 1}.activity-table-wrapper{border-radius:10px}.activity-table td,.activity-table th{font-size:13px;padding:12px 8px}.activity-date{font-size:12px;min-width:150px}}@media (max-width:768px){.activity-header h2{font-size:24px}.activity-header p{font-size:15px}.activity-table{min-width:2000px}.chart-container{padding:16px}}.admin-profile{background:linear-gradient(180deg,#f8f9fa,#fff);min-height:100vh;padding:84px 20px 40px}.admin-profile-container{display:flex;flex-direction:column;gap:60px;margin:0 auto;max-width:1200px;width:100%}.admin-profile-header{padding:60px 20px;text-align:center}.admin-profile-header h1{color:#1d1d1f;font-size:48px;font-weight:600;letter-spacing:-.5px;margin-bottom:16px}.admin-profile-header p{color:#86868b;font-size:19px;line-height:1.5}@media (max-width:768px){.admin-profile{padding:20px 16px}.admin-profile-header{padding:40px 20px}.admin-profile-header h1{font-size:36px}.admin-profile-header p{font-size:17px}}.create-service-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.create-service-modal{animation:slideUp .3s ease-out;background-color:#fff;border-radius:18px;box-shadow:0 8px 32px #0003;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.create-service-modal-header{align-items:center;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:24px 28px}.create-service-modal-header h2{color:#1d1d1f;font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0}.create-service-modal-close{align-items:center;background:none;border:none;border-radius:8px;color:#86868b;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background-color .2s ease,color .2s ease}.create-service-modal-close:hover:not(:disabled){background-color:#0000000d;color:#1d1d1f}.create-service-modal-close:disabled{cursor:not-allowed;opacity:.5}.create-service-form{display:flex;flex-direction:column;gap:24px;padding:28px}.create-service-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:10px;color:#c53030;font-size:14px;line-height:1.5;padding:12px 16px}.form-group{gap:8px}.form-group label{font-size:14px}.form-group input,.form-group textarea{border-radius:10px;font-size:17px;padding:14px 16px}.form-group input:focus,.form-group textarea:focus{box-shadow:0 0 0 4px #0071e31a}.form-group textarea{min-height:100px}.form-hint{font-size:13px;margin-top:-4px}.tech-stack-input-wrapper{gap:8px}.add-tech-button{border-radius:10px;font-size:15px;padding:14px 20px}.tech-stack-tags{gap:8px;margin-top:4px}.tech-tag{font-size:13px;gap:6px;padding:6px 12px}.tech-tag-remove{font-size:18px;height:18px;width:18px}.create-service-form-actions{border-top:1px solid #00000014;display:flex;gap:12px;justify-content:flex-end;margin-top:8px;padding-top:8px}.cancel-button,.submit-button{border-radius:10px;font-size:15px;padding:12px 24px}.submit-button:hover:not(:disabled){box-shadow:0 4px 12px #0071e34d}@media (max-width:768px){.create-service-modal-overlay{padding:16px}.create-service-modal{border-radius:16px;max-height:95vh}.create-service-modal-header{padding:20px 24px}.create-service-modal-header h2{font-size:24px}.create-service-form{gap:20px;padding:24px}.tech-stack-input-wrapper{flex-direction:column}.add-tech-button{width:100%}.create-service-form-actions{flex-direction:column-reverse}.cancel-button,.submit-button{width:100%}}.delete-confirmation-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10001}.delete-confirmation-modal{animation:slideUp .3s ease-out;background-color:#fff;border-radius:18px;box-shadow:0 8px 32px #0003;max-width:440px;overflow:hidden;width:100%}.delete-confirmation-icon{display:flex;justify-content:center;padding:32px 28px 0}.delete-confirmation-content{padding:24px 28px;text-align:center}.delete-confirmation-content h2{color:#1d1d1f;font-size:24px;font-weight:600;letter-spacing:-.5px;margin:0 0 12px}.delete-confirmation-content p{color:#515154;font-size:15px;line-height:1.5;margin:0}.delete-confirmation-content strong{color:#1d1d1f;font-weight:600}.delete-confirmation-actions{border-top:1px solid #00000014;display:flex;gap:12px;padding:20px 28px 28px}.delete-cancel-button{background-color:#fff;border:1px solid #0003;border-radius:10px;color:#1d1d1f;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:12px 24px;transition:all .2s ease}.delete-cancel-button:hover:not(:disabled){background-color:#f5f5f7;border-color:#0000004d}.delete-cancel-button:disabled{cursor:not-allowed;opacity:.5}.delete-confirm-button{background-color:#d32f2f;border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:12px 24px;transition:all .2s ease}.delete-confirm-button:hover:not(:disabled){background-color:#c62828;box-shadow:0 4px 12px #d32f2f4d;transform:translateY(-1px)}.delete-confirm-button:active:not(:disabled){transform:translateY(0)}.delete-confirm-button:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.delete-confirmation-overlay{padding:16px}.delete-confirmation-modal{border-radius:16px;max-width:100%}.delete-confirmation-content{padding:20px 24px}.delete-confirmation-content h2{font-size:22px}.delete-confirmation-content p{font-size:14px}.delete-confirmation-actions{flex-direction:column-reverse;padding:16px 24px 24px}.delete-cancel-button,.delete-confirm-button{width:100%}}.services-table-container{margin:0 auto;max-width:1400px;padding:0 20px;width:100%}.services-table-header{margin-bottom:32px}.services-table-header-content{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.services-table-header h2{color:#1d1d1f;font-size:32px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.services-table-header p{color:#86868b;font-size:17px;line-height:1.5}.create-service-button{align-items:center;background-color:#0071e3;border:none;border-radius:10px;box-shadow:0 2px 8px #0071e333;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.create-service-button:hover{background-color:#0077ed;box-shadow:0 4px 12px #0071e34d;transform:translateY(-1px)}.create-service-button:active{box-shadow:0 2px 8px #0071e333;transform:translateY(0)}.create-service-button svg{height:16px;width:16px}.services-table-empty,.services-table-error,.services-table-loading{color:#86868b;font-size:17px;padding:60px 20px;text-align:center}.services-table-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:10px;color:#d32f2f;padding:20px}.services-table-wrapper{background-color:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow-x:auto}.services-table{border-collapse:collapse;min-width:1000px;width:100%}.services-table thead{background-color:#f5f5f7;border-bottom:2px solid #0000001a}.services-table th{color:#1d1d1f;font-size:13px;font-weight:600;letter-spacing:.01em;padding:16px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.services-table tbody tr{border-bottom:1px solid #0000000f;transition:background-color .2s ease}.services-table tbody tr:hover{background-color:#f8f9fa}.services-table tbody tr:last-child{border-bottom:none}.services-table td{color:#1d1d1f;font-size:14px;padding:16px 12px;vertical-align:top}.service-id{color:#86868b;font-size:13px;font-weight:600}.service-icon-cell,.service-id{text-align:center;width:60px}.service-icon-img{border-radius:6px;height:32px;object-fit:contain;width:32px}.service-icon-placeholder{background-color:#f5f5f7;border-radius:6px;display:flex;margin:0 auto}.service-icon-placeholder,.service-icon-text{align-items:center;font-size:20px;height:32px;justify-content:center;width:32px}.service-icon-text{display:inline-block;display:flex;line-height:1;text-align:center}.service-name{color:#1d1d1f;font-weight:600;min-width:150px}.service-description{max-width:300px}.service-description-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#515154;display:-webkit-box;line-height:1.5;overflow:hidden;text-overflow:ellipsis}.service-tech{min-width:200px}.tech-tag{border-radius:12px;font-size:12px;padding:4px 10px}.no-tech,.service-date{font-size:13px}.service-date{color:#86868b;min-width:140px;white-space:nowrap}.service-actions{white-space:nowrap;width:100px}.action-button{border-radius:6px;font-size:16px;padding:6px 8px}@media (max-width:1024px){.services-table-container{padding:0 16px}.services-table-header-content{align-items:stretch;flex-direction:column}.create-service-button{justify-content:center;width:100%}.services-table-header h2{font-size:28px}.services-table-wrapper{border-radius:10px}.services-table td,.services-table th{font-size:13px;padding:12px 8px}.service-description{max-width:250px}.service-description-text{-webkit-line-clamp:2}}@media (max-width:768px){.services-table-header h2{font-size:24px}.services-table-header p{font-size:15px}.services-table{min-width:800px}.service-description{max-width:200px}.service-date{font-size:12px;min-width:120px}}.create-profile-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.create-profile-modal{animation:slideUp .3s ease-out;background-color:#fff;border-radius:14px;box-shadow:0 6px 26px #0003;max-height:90vh;max-width:560px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.create-profile-modal-header{align-items:center;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:19px 22px}.create-profile-modal-header h2{color:#1d1d1f;font-size:22px;font-weight:600;letter-spacing:-.5px;margin:0}.create-profile-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#86868b;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:background-color .2s ease,color .2s ease}.create-profile-modal-close:hover:not(:disabled){background-color:#0000000d;color:#1d1d1f}.create-profile-modal-close:disabled{cursor:not-allowed;opacity:.5}.create-profile-form{display:flex;flex-direction:column;gap:19px;padding:22px}.create-profile-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:11px;line-height:1.5;padding:10px 13px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:#1d1d1f;font-size:11px;font-weight:500}.form-group input,.form-group textarea{background-color:#fff;border:1px solid #0003;border-radius:8px;color:#1d1d1f;font-family:inherit;font-size:14px;padding:11px 13px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#0071e3;box-shadow:0 0 0 3px #0071e31a;outline:none}.form-group input:disabled,.form-group textarea:disabled{background-color:#f5f5f7;cursor:not-allowed;opacity:.7}.form-group input::placeholder,.form-group textarea::placeholder{color:#86868b}.form-group textarea{font-family:inherit;min-height:80px;resize:vertical}.form-hint{color:#86868b;font-size:10px;margin-top:-3px}.progress-input-wrapper{display:flex;flex-direction:column;gap:10px}.progress-input{max-width:96px;width:100%}.progress-slider-wrapper{display:flex;flex-direction:column;gap:6px}.progress-slider{-webkit-appearance:none;appearance:none;background:#f5f5f7;border-radius:3px;height:6px;outline:none;width:100%}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#0071e3;border-radius:50%;box-shadow:0 2px 3px #0071e34d;cursor:pointer;height:16px;-webkit-transition:background .2s ease,transform .1s ease;transition:background .2s ease,transform .1s ease;width:16px}.progress-slider::-webkit-slider-thumb:hover{background:#0077ed;transform:scale(1.1)}.progress-slider::-moz-range-thumb{background:#0071e3;border:none;border-radius:50%;box-shadow:0 2px 3px #0071e34d;cursor:pointer;height:16px;-moz-transition:background .2s ease,transform .1s ease;transition:background .2s ease,transform .1s ease;width:16px}.progress-slider::-moz-range-thumb:hover{background:#0077ed;transform:scale(1.1)}.progress-slider:disabled{cursor:not-allowed;opacity:.5}.progress-preview{background-color:#f5f5f7;border-radius:10px;height:19px;overflow:hidden;position:relative;width:100%}.progress-preview-fill{background:linear-gradient(90deg,#0071e3,#0077ed);border-radius:10px;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.progress-preview-text{color:#1d1d1f;font-size:9px;font-weight:600;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:1}.tech-stack-input-wrapper{display:flex;gap:6px}.tech-stack-input-wrapper input{flex:1 1}.add-tech-button{background-color:#fff;border:1px solid #0071e3;border-radius:8px;color:#0071e3;cursor:pointer;font-size:12px;font-weight:500;padding:11px 16px;transition:all .2s ease;white-space:nowrap}.add-tech-button:hover:not(:disabled){background-color:#0071e3;color:#fff}.add-tech-button:disabled{cursor:not-allowed;opacity:.5}.tech-stack-tags{gap:6px;margin-top:3px}.tech-tag{align-items:center;display:inline-flex;gap:5px;padding:5px 10px}.tech-tag-remove{align-items:center;background:none;border:none;border-radius:50%;color:#0071e3;cursor:pointer;display:flex;font-size:14px;height:14px;justify-content:center;line-height:1;margin:0;padding:0;transition:background-color .2s ease,color .2s ease;width:14px}.tech-tag-remove:hover:not(:disabled){background-color:#0071e333;color:#0051a3}.tech-tag-remove:disabled{cursor:not-allowed;opacity:.5}.create-profile-form-actions{border-top:1px solid #00000014;display:flex;gap:10px;justify-content:flex-end;margin-top:6px;padding-top:6px}.cancel-button{background-color:#fff;border:1px solid #0003;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:12px;font-weight:500;padding:10px 19px;transition:all .2s ease}.cancel-button:hover:not(:disabled){background-color:#f5f5f7;border-color:#0000004d}.cancel-button:disabled{cursor:not-allowed;opacity:.5}.submit-button{background-color:#0071e3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:10px 19px;transition:all .2s ease}.submit-button:hover:not(:disabled){background-color:#0077ed;box-shadow:0 3px 10px #0071e34d;transform:translateY(-1px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.create-profile-modal-overlay{padding:13px}.create-profile-modal{border-radius:13px;max-height:95vh;max-width:100%}.create-profile-modal-header{padding:16px 19px}.create-profile-modal-header h2{font-size:19px}.create-profile-form{gap:16px;padding:19px}.form-row{gap:16px;grid-template-columns:1fr}.tech-stack-input-wrapper{flex-direction:column}.add-tech-button{width:100%}.create-profile-form-actions{flex-direction:column-reverse}.cancel-button,.submit-button{width:100%}}.profile-table-container{margin:0 auto;max-width:1400px;padding:0 20px;width:100%}.profile-table-header{margin-bottom:26px}.profile-table-header-content{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.profile-table-header h2{color:#1d1d1f;font-size:26px;font-weight:600;letter-spacing:-.5px;margin-bottom:6px}.profile-table-header p{color:#86868b;font-size:14px;line-height:1.5}.create-profile-button{align-items:center;background-color:#0071e3;border:none;border-radius:8px;box-shadow:0 2px 6px #0071e333;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;padding:10px 19px;transition:all .2s ease;white-space:nowrap}.create-profile-button:hover{background-color:#0077ed;box-shadow:0 3px 10px #0071e34d;transform:translateY(-1px)}.create-profile-button:active{box-shadow:0 2px 6px #0071e333;transform:translateY(0)}.create-profile-button svg{height:13px;width:13px}.profile-table-empty,.profile-table-error,.profile-table-loading{color:#86868b;font-size:14px;padding:48px 16px;text-align:center}.profile-table-error{background-color:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#d32f2f;padding:16px}.profile-table-wrapper{background-color:#fff;border:1px solid #00000014;border-radius:10px;box-shadow:0 2px 6px #0000000d;overflow-x:auto}.profile-table{border-collapse:collapse;min-width:960px;width:100%}.profile-table thead{background-color:#f5f5f7;border-bottom:2px solid #0000001a}.profile-table th{color:#1d1d1f;font-size:10px;font-weight:600;letter-spacing:.01em;padding:13px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.profile-table tbody tr{border-bottom:1px solid #0000000f;transition:background-color .2s ease}.profile-table tbody tr:hover{background-color:#f8f9fa}.profile-table tbody tr:last-child{border-bottom:none}.profile-table td{color:#1d1d1f;font-size:11px;padding:13px 10px;vertical-align:top}.profile-id{color:#86868b;font-size:10px;font-weight:600}.profile-icon-cell,.profile-id{text-align:center;width:48px}.profile-icon-img{border-radius:5px;height:26px;object-fit:contain;width:26px}.profile-icon-placeholder{background-color:#f5f5f7;border-radius:5px;display:flex;margin:0 auto}.profile-icon-placeholder,.profile-icon-text{align-items:center;font-size:16px;height:26px;justify-content:center;width:26px}.profile-icon-text{display:inline-block;display:flex;line-height:1;text-align:center}.profile-title{color:#1d1d1f;font-weight:600;min-width:144px}.profile-work-type{color:#515154;font-size:10px;min-width:112px}.profile-description{max-width:240px}.profile-description-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;color:#515154;display:-webkit-box;line-height:1.5;overflow:hidden;text-overflow:ellipsis}.profile-progress{min-width:96px}.progress-bar-container{background-color:#f5f5f7;border-radius:10px;height:19px;overflow:hidden;position:relative;width:80px}.progress-bar-fill{background:linear-gradient(90deg,#0071e3,#0077ed);border-radius:10px;height:100%;left:0;position:absolute;top:0;transition:width .3s ease}.progress-text{color:#1d1d1f;font-size:9px;font-weight:600;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:1}.profile-progress-note{color:#515154;font-size:10px;font-style:italic;min-width:120px}.profile-tech{min-width:160px}.tech-stack-tags{display:flex;flex-wrap:wrap;gap:5px}.tech-tag{background-color:#e8f4f8;border-radius:10px;color:#0071e3;display:inline-block;font-size:10px;font-weight:500;padding:3px 8px;white-space:nowrap}.no-tech{color:#86868b;font-size:10px;font-style:italic}.profile-status{min-width:80px}.status-badge{border-radius:10px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;padding:3px 10px;text-transform:uppercase}.status-badge.active{background-color:#e8f5e9;color:#2e7d32}.status-badge.inactive{background-color:#ffebee;color:#c62828}.profile-date{color:#86868b;font-size:10px;min-width:112px;white-space:nowrap}.profile-actions{white-space:nowrap;width:80px}.action-button{align-items:center;background:none;border:none;border-radius:5px;cursor:pointer;display:inline-flex;font-size:13px;justify-content:center;margin:0 2px;padding:5px 6px;transition:background-color .2s ease,transform .1s ease}.action-button:hover{background-color:#0000000d;transform:scale(1.1)}.action-button:active{transform:scale(.95)}.edit-button:hover{background-color:#0071e31a}.delete-button:hover{background-color:#d32f2f1a}@media (max-width:1024px){.profile-table-container{padding:0 16px}.profile-table-header-content{align-items:stretch;flex-direction:column}.create-profile-button{justify-content:center;width:100%}.profile-table-header h2{font-size:22px}.profile-table-wrapper{border-radius:8px}.profile-table{min-width:800px}.profile-table td,.profile-table th{font-size:10px;padding:10px 6px}.profile-description{max-width:200px}.profile-description-text{-webkit-line-clamp:2;line-clamp:2}}@media (max-width:768px){.profile-table-header h2{font-size:19px}.profile-table-header p{font-size:12px}.profile-table{min-width:720px}.profile-description{max-width:160px}.profile-date{font-size:10px;min-width:96px}}.cookie-consent-overlay{align-items:flex-end;animation:slideUpFadeIn .4s ease-out;bottom:0;display:flex;justify-content:flex-end;padding:20px;pointer-events:none;position:fixed;right:0;z-index:10000}@keyframes slideUpFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cookie-consent-container{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background-color:#fff;border:1px solid #0000001a;border-radius:12px;box-shadow:0 8px 32px #0000001f;max-width:500px;padding:24px;pointer-events:auto;position:relative;width:100%}.cookie-consent-close{align-items:center;background:none;border:none;border-radius:6px;color:#86868b;cursor:pointer;display:flex;height:32px;justify-content:center;padding:8px;position:absolute;right:16px;top:16px;transition:color .2s ease,background-color .2s ease;width:32px}.cookie-consent-close:hover{background-color:#0000000d;color:#1d1d1f}.cookie-consent-close:active{background-color:#0000001a}.cookie-consent-content{margin-bottom:20px;padding-right:32px}.cookie-consent-title{color:#1d1d1f;font-size:20px;font-weight:600;letter-spacing:-.3px;line-height:1.3;margin:0 0 12px}.cookie-consent-text{color:#86868b;font-size:14px;line-height:1.5;margin:0;text-align:justify}.cookie-consent-actions{display:flex;flex-direction:column;gap:10px}.cookie-consent-button{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;letter-spacing:-.1px;padding:12px 24px;text-align:center;transition:all .2s ease;width:100%}.cookie-consent-button-accept{background-color:#0071e3;border-color:#0071e3;color:#fff}.cookie-consent-button-accept:hover{background-color:#0077ed;border-color:#0077ed;box-shadow:0 4px 12px #0071e34d;transform:translateY(-1px)}.cookie-consent-button-accept:active{box-shadow:0 2px 6px #0071e333;transform:translateY(0)}.cookie-consent-button-deny{background-color:#fff;border-color:#00000026;color:#1d1d1f}.cookie-consent-button-deny:hover{background-color:#f5f5f7;border-color:#0003;box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.cookie-consent-button-deny:active{box-shadow:0 1px 4px #0000000d;transform:translateY(0)}.cookie-consent-button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.cookie-consent-button:disabled:hover{box-shadow:none!important;transform:none!important}@media (max-width:768px){.cookie-consent-overlay{padding:16px}.cookie-consent-container{max-width:100%;padding:20px}.cookie-consent-title{font-size:18px;margin-bottom:10px}.cookie-consent-text{font-size:13px}.cookie-consent-button{font-size:13px;padding:11px 20px}.cookie-consent-close{height:28px;padding:6px;right:12px;top:12px;width:28px}}@media (max-width:480px){.cookie-consent-overlay{padding:12px}.cookie-consent-container{border-radius:10px;padding:18px}.cookie-consent-content{margin-bottom:16px;padding-right:28px}.cookie-consent-title{font-size:17px}.cookie-consent-text{font-size:12px;line-height:1.4}}
/*# sourceMappingURL=main.4b192e81.css.map*/