@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--header-height:4rem;--primary-color:#2563eb;--primary-color-alt:#1d4ed8;--primary-color-light:#3b82f6;--secondary-color:#0f172a;--title-color:#1e293b;--text-color:#475569;--text-color-light:#64748b;--border-color:#e2e8f0;--body-color:#fff;--container-color:#f8fafc;--white-color:#fff;--gradient:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--gradient-alt:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);--body-font:"Inter",sans-serif;--biggest-font-size:3rem;--h1-font-size:2.25rem;--h2-font-size:1.875rem;--h3-font-size:1.5rem;--normal-font-size:1rem;--small-font-size:.875rem;--smaller-font-size:.813rem;--font-light:300;--font-regular:400;--font-medium:500;--font-semi-bold:600;--font-bold:700;--font-extra-bold:800;--mb-0-25:.25rem;--mb-0-5:.5rem;--mb-0-75:.75rem;--mb-1:1rem;--mb-1-5:1.5rem;--mb-2:2rem;--mb-2-5:2.5rem;--mb-3:3rem;--z-tooltip:10;--z-fixed:100;--z-modal:1000;--transition:all .3s ease}@media screen and (max-width:992px){:root{--biggest-font-size:2.25rem;--h1-font-size:1.875rem;--h2-font-size:1.5rem;--h3-font-size:1.25rem;--normal-font-size:.938rem;--small-font-size:.813rem;--smaller-font-size:.75rem}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body-font);font-size:var(--normal-font-size);background-color:var(--body-color);color:var(--text-color);line-height:1.6}h1,h2,h3,h4{color:var(--title-color);font-weight:var(--font-bold);line-height:1.2}ul{list-style:none}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:var(--body-font);border:none;outline:none}input,textarea,select{font-family:var(--body-font);font-size:var(--normal-font-size);border:none;outline:none}.section{padding:5rem 0}.section__header{text-align:center;margin-bottom:var(--mb-3)}.section__subtitle{font-size:var(--small-font-size);font-weight:var(--font-semi-bold);color:var(--primary-color);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--mb-0-5);display:inline-block}.section__title{font-size:var(--h2-font-size);margin-bottom:var(--mb-1)}.section__description{max-width:600px;color:var(--text-color-light);margin:0 auto}.container{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}.button{background-color:var(--primary-color);color:var(--white-color);font-weight:var(--font-semi-bold);transition:var(--transition);white-space:nowrap;border-radius:.5rem;align-items:center;gap:.5rem;padding:1rem 2rem;display:inline-flex}.button:hover{background-color:var(--primary-color-alt);transform:translateY(-3px);box-shadow:0 10px 20px #2563eb33}.button--primary{background:var(--gradient-alt)}.button--ghost{color:var(--primary-color);border:2px solid var(--primary-color);background-color:#0000}.button--ghost:hover{background-color:var(--primary-color);color:var(--white-color);transform:translateY(-3px)}.button--large{padding:1.25rem 2.5rem;font-size:1.1rem}.button--full{justify-content:center;width:100%}.header{width:100%;z-index:var(--z-fixed);background-color:var(--white-color);transition:var(--transition);position:fixed;top:0;left:0;box-shadow:0 2px 16px #0000000d}.nav{height:var(--header-height);justify-content:space-between;align-items:center;display:flex}.nav__logo{font-weight:var(--font-bold);color:var(--primary-color);align-items:center;gap:.5rem;font-size:1.25rem;display:flex}.nav__logo i{font-size:1.5rem}.nav__list{gap:2rem;display:flex}.nav__link{color:var(--text-color);font-weight:var(--font-medium);transition:var(--transition);position:relative}.nav__link:after{content:"";background-color:var(--primary-color);width:0;height:2px;transition:var(--transition);position:absolute;bottom:-.5rem;left:0}.nav__link:hover{color:var(--primary-color)}.nav__link:hover:after{width:100%}.nav__toggle,.nav__close{color:var(--title-color);cursor:pointer;font-size:1.5rem;display:none}.button--header{padding:.875rem 1.5rem}.hero{padding-top:calc(var(--header-height) + 3rem);background:linear-gradient(135deg,#f8fafc 0%,#e0e7ff 100%);align-items:center;min-height:100vh;display:flex}.hero__container{grid-template-columns:repeat(2,1fr);align-items:center;gap:3rem;display:grid}.hero__subtitle{font-size:var(--small-font-size);font-weight:var(--font-semi-bold);color:var(--primary-color);margin-bottom:var(--mb-1);background-color:#2563eb1a;border-radius:2rem;padding:.5rem 1rem;display:inline-block}.hero__title{font-size:var(--biggest-font-size);margin-bottom:var(--mb-1);line-height:1.2}.hero__description{color:var(--text-color-light);margin-bottom:var(--mb-2);font-size:1.125rem}.hero__buttons{margin-bottom:var(--mb-3);flex-wrap:wrap;gap:1rem;display:flex}.hero__stats{padding-top:var(--mb-2);border-top:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.hero__stat{text-align:center}.hero__stat-number{font-size:2rem;font-weight:var(--font-extra-bold);color:var(--primary-color);margin-bottom:.25rem;display:block}.hero__stat-text{font-size:var(--small-font-size);color:var(--text-color-light)}.hero__image{justify-content:center;align-items:center;display:flex;position:relative}.hero__blob{width:400px;height:400px;position:relative}.hero__blob svg{width:100%;height:100%;animation:8s ease-in-out infinite blob}.hero__icon{color:var(--white-color);font-size:8rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes blob{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.1)rotate(5deg)}50%{transform:scale(.9)rotate(-5deg)}75%{transform:scale(1.05)rotate(3deg)}}.about{background-color:var(--white-color)}.about__content{grid-template-columns:1.5fr 1fr;align-items:start;gap:3rem;display:grid}.about__description p{margin-bottom:var(--mb-1);text-align:justify}.about__features{flex-direction:column;gap:1.5rem;display:flex}.about__feature{background-color:var(--container-color);transition:var(--transition);border-radius:1rem;gap:1rem;padding:1.5rem;display:flex}.about__feature:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001a}.about__feature-icon{background:var(--gradient-alt);width:60px;height:60px;color:var(--white-color);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.about__feature-content h3{font-size:var(--h3-font-size);margin-bottom:.5rem}.about__feature-content p{font-size:var(--small-font-size);color:var(--text-color-light)}.services{background-color:var(--container-color)}.services__grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;display:grid}.service__card{background-color:var(--white-color);transition:var(--transition);border-radius:1rem;padding:2rem;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000014}.service__card:before{content:"";background:var(--gradient-alt);transform-origin:0;width:100%;height:4px;transition:var(--transition);position:absolute;top:0;left:0;transform:scaleX(0)}.service__card:hover:before{transform:scaleX(1)}.service__card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #00000026}.service__icon{width:70px;height:70px;color:var(--primary-color);margin-bottom:var(--mb-1-5);background:linear-gradient(135deg,#2563eb1a 0%,#1d4ed81a 100%);border-radius:1rem;justify-content:center;align-items:center;font-size:2rem;display:flex}.service__title{font-size:var(--h3-font-size);margin-bottom:var(--mb-1)}.service__description{color:var(--text-color-light);margin-bottom:var(--mb-1-5);line-height:1.7}.service__link{color:var(--primary-color);font-weight:var(--font-semi-bold);transition:var(--transition);align-items:center;gap:.5rem;display:inline-flex}.service__link:hover{gap:.75rem}.service__link i{transition:var(--transition)}.swiper{width:100%;padding:2rem 0}.swiper-slide{height:auto;transition:transform .3s}.swiper-slide-active{z-index:1;transform:scale(1.05)}.swiper-button-next,.swiper-button-prev{color:var(--primary-color);background:#ffffffe6;border-radius:50%;width:40px;height:40px;transition:all .3s;box-shadow:0 2px 8px #0000001a}.swiper-button-next:after,.swiper-button-prev:after{font-size:1.2rem;font-weight:700}.swiper-button-next:hover,.swiper-button-prev:hover{background:var(--primary-color);color:#fff}.swiper-pagination-bullet{background:var(--text-color-light);opacity:.5;width:10px;height:10px;transition:all .3s}.swiper-pagination-bullet-active{background:var(--primary-color);opacity:1;transform:scale(1.2)}.portfolio{background-color:var(--white-color)}.portfolio__carousel{margin-top:var(--mb-3)}.portfolio__item{background-color:var(--white-color);transition:var(--transition);border-radius:1rem;margin:0 15px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.portfolio__item:hover{transform:translateY(-10px);box-shadow:0 10px 40px #00000026}.portfolio__image{height:300px;position:relative;overflow:hidden}.portfolio__image img{object-fit:cover;width:100%;height:100%;transition:var(--transition)}.portfolio__item:hover .portfolio__image img{transform:scale(1.1)}.portfolio__overlay{opacity:0;width:100%;height:100%;transition:var(--transition);background:linear-gradient(135deg,#2563ebe6 0%,#1d4ed8e6 100%);justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.portfolio__item:hover .portfolio__overlay{opacity:1}.portfolio__button{background-color:var(--white-color);color:var(--primary-color);font-weight:var(--font-semi-bold);transition:var(--transition);border-radius:.5rem;align-items:center;gap:.5rem;padding:1rem 2rem;display:inline-flex;transform:translateY(20px)}.portfolio__item:hover .portfolio__button{transform:translateY(0)}.portfolio__content{padding:1.5rem}.portfolio__category{font-size:var(--small-font-size);color:var(--primary-color);font-weight:var(--font-medium);background-color:#2563eb1a;border-radius:.25rem;margin-bottom:.5rem;padding:.25rem .75rem;display:inline-block}.portfolio__title{font-size:var(--h3-font-size);margin-bottom:.5rem}.portfolio__description{color:var(--text-color-light);font-size:var(--small-font-size)}.slick-dots{bottom:-50px}.slick-dots li button:before{color:var(--primary-color);font-size:12px}.slick-prev,.slick-next{background-color:var(--white-color);z-index:1;border-radius:50%;width:50px;height:50px;box-shadow:0 4px 12px #0000001a}.slick-prev:hover,.slick-next:hover{background-color:var(--primary-color)}.slick-prev:before,.slick-next:before{color:var(--primary-color)}.slick-prev:hover:before,.slick-next:hover:before{color:var(--white-color)}.slick-prev{left:-70px}.slick-next{right:-70px}.testimonials{background-color:var(--container-color)}.testimonials__carousel{padding:2rem 0}.testimonial__card{background-color:var(--white-color);transition:var(--transition);border-radius:1rem;height:auto;padding:2rem;box-shadow:0 4px 16px #00000014}.testimonial__card:hover{transform:translateY(-10px);box-shadow:0 8px 24px #0000001f}.testimonial__rating{margin-bottom:var(--mb-1);gap:.25rem;display:flex}.testimonial__rating i{color:#fbbf24;font-size:1.125rem}.testimonial__text{color:var(--text-color);margin-bottom:var(--mb-1-5);font-style:italic;line-height:1.8}.testimonial__author{padding-top:var(--mb-1);border-top:1px solid var(--border-color);align-items:center;gap:1rem;display:flex}.testimonial__author-name{font-size:var(--normal-font-size);font-weight:var(--font-semi-bold);margin-bottom:.25rem}.testimonial__author-title{font-size:var(--small-font-size);color:var(--text-color-light)}.faq{background-color:var(--white-color)}.faq__content{max-width:800px;margin:0 auto}.faq__item{background-color:var(--white-color);border:1px solid var(--border-color);transition:var(--transition);border-radius:.75rem;margin-bottom:1rem;overflow:hidden}.faq__item:hover{box-shadow:0 4px 12px #00000014}.faq__header{cursor:pointer;transition:var(--transition);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.faq__header:hover{background-color:var(--container-color)}.faq__question{font-size:var(--h3-font-size);font-weight:var(--font-semi-bold);color:var(--title-color);margin:0}.faq__icon{color:var(--primary-color);transition:var(--transition);font-size:1.25rem}.faq__item.active .faq__icon{transform:rotate(180deg)}.faq__answer{max-height:0;transition:max-height .4s;overflow:hidden}.faq__item.active .faq__answer{max-height:500px}.faq__answer p{color:var(--text-color-light);padding:0 1.5rem 1.5rem;line-height:1.8}.cta{background:var(--gradient-alt);color:var(--white-color)}.cta__content{text-align:center;max-width:700px;margin:0 auto}.cta__title{font-size:var(--h1-font-size);color:var(--white-color);margin-bottom:var(--mb-1)}.cta__description{margin-bottom:var(--mb-2);opacity:.9;font-size:1.125rem}.cta .button{background-color:var(--white-color);color:var(--primary-color)}.cta .button:hover{transform:translateY(-5px);box-shadow:0 10px 30px #ffffff4d}.contact{background-color:var(--container-color)}.contact__content{margin-top:var(--mb-3);grid-template-columns:1fr 1.5fr;gap:3rem;display:grid}.contact__info-title{font-size:var(--h3-font-size);margin-bottom:var(--mb-1)}.contact__info-description{color:var(--text-color-light);margin-bottom:var(--mb-2)}.contact__details{margin-bottom:var(--mb-2);flex-direction:column;gap:1.5rem;display:flex}.contact__detail{gap:1rem;display:flex}.contact__detail-icon{width:50px;height:50px;color:var(--primary-color);background-color:#2563eb1a;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.contact__detail-content h4{font-size:var(--normal-font-size);font-weight:var(--font-semi-bold);margin-bottom:.25rem}.contact__detail-content p,.contact__detail-content a{color:var(--text-color-light);font-size:var(--small-font-size)}.contact__detail-content a:hover{color:var(--primary-color)}.contact__social h4{font-size:var(--normal-font-size);margin-bottom:var(--mb-1)}.contact__social-links{gap:1rem;display:flex}.contact__social-link{width:45px;height:45px;color:var(--primary-color);transition:var(--transition);background-color:#2563eb1a;border-radius:.5rem;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.contact__social-link:hover{background-color:var(--primary-color);color:var(--white-color);transform:translateY(-5px)}.contact__form{background-color:var(--white-color);border-radius:1rem;padding:2rem;box-shadow:0 4px 20px #0000001a}.contact__form-title{font-size:var(--h3-font-size);margin-bottom:var(--mb-2)}.contact__form-group{margin-bottom:var(--mb-1-5)}.contact__form-label{font-size:var(--small-font-size);font-weight:var(--font-medium);color:var(--title-color);margin-bottom:.5rem;display:block}.contact__form-input{background-color:var(--container-color);border:1px solid var(--border-color);width:100%;color:var(--text-color);transition:var(--transition);border-radius:.5rem;padding:1rem}.contact__form-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.contact__form-textarea{resize:vertical;min-height:120px}.contact__form-checkbox{cursor:pointer;align-items:center;gap:.5rem;display:flex}.contact__form-checkbox input{width:auto}.contact__form-checkbox span{font-size:var(--small-font-size);color:var(--text-color-light)}.contact__form-message{margin-top:var(--mb-1);text-align:center;font-weight:var(--font-medium);border-radius:.5rem;padding:1rem;display:none}.contact__form-message.success{color:#065f46;background-color:#d1fae5;display:block}.contact__form-message.error{color:#991b1b;background-color:#fee2e2;display:block}.footer{background-color:var(--secondary-color);color:var(--white-color);padding:4rem 0 2rem}.footer__content{margin-bottom:var(--mb-3);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;display:grid}.footer__logo{font-weight:var(--font-bold);color:var(--white-color);margin-bottom:var(--mb-1);align-items:center;gap:.5rem;font-size:1.25rem;display:flex}.footer__logo i{color:var(--primary-color-light);font-size:1.5rem}.footer__description{color:#ffffffb3;margin-bottom:var(--mb-1-5);line-height:1.7}.footer__social{gap:1rem;display:flex}.footer__social-link{width:45px;height:45px;color:var(--white-color);transition:var(--transition);background-color:#ffffff1a;border-radius:.5rem;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.footer__social-link:hover{background-color:var(--primary-color);transform:translateY(-5px)}.footer__title{font-size:var(--h3-font-size);margin-bottom:var(--mb-1-5);color:var(--white-color)}.footer__links{flex-direction:column;gap:.75rem;display:flex}.footer__links a{color:#ffffffb3;transition:var(--transition)}.footer__links a:hover{color:var(--white-color);padding-left:.5rem}.footer__contact{flex-direction:column;gap:1rem;display:flex}.footer__contact li{color:#ffffffb3;align-items:flex-start;gap:.75rem;display:flex}.footer__contact i{color:var(--primary-color-light);margin-top:.25rem}.footer__contact a{color:#ffffffb3;transition:var(--transition)}.footer__contact a:hover{color:var(--white-color)}.footer__bottom{padding-top:var(--mb-2);border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer__copy{color:#ffffffb3;font-size:var(--small-font-size)}.footer__legal{font-size:var(--small-font-size);gap:1rem;display:flex}.footer__legal a{color:#ffffffb3;transition:var(--transition)}.footer__legal a:hover{color:var(--white-color)}.footer__legal span{color:#ffffff4d}.scrolltop{background-color:var(--primary-color);width:50px;height:50px;color:var(--white-color);z-index:var(--z-tooltip);transition:var(--transition);border-radius:.5rem;justify-content:center;align-items:center;display:flex;position:fixed;bottom:-20%;right:2rem;box-shadow:0 4px 12px #2563eb4d}.scrolltop:hover{background-color:var(--primary-color-alt);transform:translateY(-5px)}.scrolltop__icon{font-size:1.5rem}.show-scroll{bottom:2rem}@media screen and (max-width:992px){.nav__menu{background-color:var(--white-color);width:80%;height:100%;transition:var(--transition);padding:4rem 2rem;position:fixed;top:0;right:-100%;box-shadow:-2px 0 16px #0000001a}.nav__menu.show-menu{right:0}.nav__list{flex-direction:column;gap:1.5rem}.nav__close,.nav__toggle{display:block}.nav__close{position:absolute;top:1.5rem;right:1.5rem}.button--header{display:none}.hero__container{grid-template-columns:1fr}.hero__image{order:-1}.hero__blob{width:300px;height:300px}.hero__icon{font-size:6rem}.about__content,.contact__content{grid-template-columns:1fr}.slick-prev{left:10px}.slick-next{right:10px}}@media screen and (max-width:768px){.hero__stats{grid-template-columns:1fr;gap:1rem}.hero__buttons{flex-direction:column}.button{justify-content:center;width:100%}.services__grid,.footer__content{grid-template-columns:1fr}.footer__bottom{text-align:center;flex-direction:column}}@media screen and (max-width:576px){.section{padding:3rem 0}.hero{padding-top:calc(var(--header-height) + 2rem)}.scrolltop{right:1rem}.show-scroll{bottom:1rem}}
