:root{--white:#fff;--off-white:#f5f5f7;--black:#000;--off-black:#1d1d1f;--gray:#86868b;--light-gray:#d2d2d7;--red:#ff3b30;--accent-red:#ed1c24;--section-padding:80px 0}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:#fff;background-color:var(--white);color:#1d1d1f;color:var(--off-black);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.47;overflow-x:hidden}h1,h2,h3,h4{font-weight:700;letter-spacing:-.5px;line-height:1.1}p{color:#86868b;color:var(--gray);font-size:1.2rem;margin-bottom:1.5rem}a{color:#1d1d1f;color:var(--off-black);text-decoration:none;transition:all .3s ease}.container{margin:0 auto;max-width:980px;padding:0 22px}.btn{border-radius:30px;display:inline-block;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.btn-primary{background-color:#ff3b30;background-color:var(--red);border:2px solid #ff3b30;border:2px solid var(--red);color:#fff;color:var(--white);z-index:10}.btn-primary:hover{background-color:#ed1c24;background-color:var(--accent-red);border-color:#ed1c24;border-color:var(--accent-red);cursor:pointer;transform:translateY(-2px);z-index:10}.btn-secondary{background-color:initial;border:2px solid #1d1d1f;border:2px solid var(--off-black);color:#1d1d1f;color:var(--off-black)}.btn-secondary:hover{background-color:#1d1d1f;background-color:var(--off-black);color:#fff;color:var(--white);cursor:pointer;transform:translateY(-2px);z-index:10}.section-title{font-size:3rem;margin-bottom:60px;position:relative;text-align:center}.section-title:after{background-color:#ff3b30;background-color:var(--red);bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#ffffffe6;position:fixed;top:0;transition:all .3s ease;width:100%;z-index:1000}.nav-content{height:60px;justify-content:space-between}.logo,.nav-content{align-items:center;display:flex}.logo{color:#1d1d1f;color:var(--off-black);font-size:1.5rem;font-weight:700}.logo-dot{color:#ff3b30;color:var(--red);margin-left:2px}.nav-links{display:flex}.hero{background:linear-gradient(135deg,#f5f5f7,#fff);background:linear-gradient(135deg,var(--off-white) 0,var(--white) 100%);overflow:hidden;padding:160px 0;position:relative;text-align:center}.hero:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' opacity='.03'%3E%3Cpath fill='%23ff3b30' d='M0 1000 1000 0v1000z'/%3E%3C/svg%3E");background-size:cover;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.hero h1{font-size:2.5rem;line-height:1.05;margin-bottom:10px}.hero .tagline{color:#86868b;color:var(--gray);font-size:1.8rem;font-weight:400;margin-bottom:30px}.hero .intro{cursor:pointer;font-size:1.3rem;line-height:1.6;margin:0 auto 40px;max-width:600px}.hero-buttons{cursor:pointer;display:flex;gap:20px;justify-content:center;margin-top:40px;z-index:10}.about{background-color:#fff;background-color:var(--white);padding:80px 0;padding:var(--section-padding)}.about-content{align-items:center;display:flex;gap:60px}.about-text{flex:1 1}.about-text h2{margin-bottom:30px;text-align:left}.about-text h2:after{left:0;transform:none}.about-image{align-items:center;background:linear-gradient(45deg,#1d1d1f,#ff3b30);background:linear-gradient(45deg,var(--off-black),var(--red));border-radius:12px;box-shadow:0 20px 40px #0000001a;color:#fff;color:var(--white);display:flex;flex:1 1;font-size:1.2rem;height:400px;justify-content:center;overflow:hidden}.skills-list{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}.skill-tag{border-radius:20px;font-size:.9rem;font-weight:500;padding:8px 16px}.portfolio,.skill-tag{background-color:#f5f5f7;background-color:var(--off-white)}.portfolio{padding:80px 0;padding:var(--section-padding)}.portfolio-filters{display:flex;gap:15px;justify-content:center;margin-bottom:40px}.filter-btn{background:none;border:none;border-radius:20px;cursor:pointer;font-size:.9rem;padding:8px 20px;transition:all .3s ease}.filter-btn.active{background-color:#ff3b30;background-color:var(--red);color:#fff;color:var(--white)}.portfolio-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.portfolio-item{background-color:#fff;background-color:var(--white);border-radius:12px;box-shadow:0 10px 30px #00000014;overflow:hidden;transition:all .3s ease}.portfolio-item:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-10px)}.portfolio-img{background:#fff;color:#fff;color:var(--white);display:flex;height:200px;justify-content:center;margin-top:20px}.portfolio-info{padding:25px}.portfolio-info p{color:#675f5f}.portfolio-info h3{background-color:#fff;color:#675f5f;font-size:1.4rem;margin-bottom:10px}.portfolio-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.portfolio-tag{background-color:#f5f5f7;background-color:var(--off-white);border-radius:12px;color:#86868b;color:var(--gray);font-size:.8rem;padding:4px 10px}.services{background-color:#fff;background-color:var(--white);padding:80px 0;padding:var(--section-padding)}.services-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.service-card{border-radius:12px;padding:40px 30px;text-align:center;transition:all .3s ease}.service-card:hover{box-shadow:0 20px 40px #0000001a;transform:translateY(-10px)}.service-icon{color:#ff3b30;color:var(--red);font-size:2.5rem;margin-bottom:20px}.service-card h3{font-size:1.5rem;margin-bottom:15px}.testimonials{background-color:#f5f5f7;background-color:var(--off-white);padding:80px 0;padding:var(--section-padding)}.testimonials-container{margin:0 auto;max-width:800px}.testimonial-text{margin-bottom:20px}.author-avatar{background-color:#d2d2d7;background-color:var(--light-gray);height:50px!important;margin-right:15px;width:50px!important}.contact{background-color:#fff;background-color:var(--white);padding:80px 0;padding:var(--section-padding)}.contact-content{display:flex;gap:60px}.contact-text{flex:1 1}.contact-text h2{margin-bottom:30px;text-align:left}.contact-text h2:after{left:0;transform:none}.contact-info{margin-top:30px}.contact-item{margin-bottom:15px}.contact-icon,.contact-item{align-items:center;display:flex}.contact-icon{background-color:#f5f5f7;background-color:var(--off-white);border-radius:50%;color:#ff3b30;color:var(--red);height:40px;justify-content:center;margin-right:15px;width:40px}.contact-form{flex:1 1}.form-group{margin-bottom:20px}.form-control{border:1px solid #d2d2d7;border:1px solid var(--light-gray);border-radius:8px;font-size:1rem;padding:15px;transition:all .3s ease;width:100%}.form-control:focus{border-color:#ff3b30;border-color:var(--red);outline:none}textarea.form-control{min-height:150px;resize:vertical}.footer{background-color:#1d1d1f;background-color:var(--off-black);border-radius:30px 30px 0 0;color:#86868b;color:var(--gray);padding:60px 0 30px}.footer-content{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.footer-logo{color:#fff;color:var(--white);font-size:1rem;font-weight:700;margin:10px}.footer-tagline{color:#d2d2d7;color:var(--light-gray);font-size:1rem;margin-top:10px}.footer-links{gap:30px}.footer-links a{color:#86868b;color:var(--gray);font-size:.9rem}.footer-links a:hover{color:#fff;color:var(--white)}.social-links{display:flex;gap:15px}.social-link{align-items:center;background-color:#ffffff1a;border-radius:50%;color:#86868b;color:var(--gray);display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.social-link:hover{background-color:#ff3b30;background-color:var(--red);color:#fff;color:var(--white)}.footer-bottom{border-top:1px solid #ffffff1a;font-size:.9rem;padding-top:30px;text-align:center}.floating-contact{transition:all .3s ease}.floating-contact:hover{transform:scale(1.1)}@media (max-width:768px){.nav-links{display:none}.mobile-menu-btn{display:block}.hero h1{font-size:3rem}.hero .tagline{font-size:1.4rem}.about-content,.contact-content,.footer-content{flex-direction:column}.footer-content{gap:30px;text-align:center}.hero-buttons{align-items:center;cursor:pointer;flex-direction:column;position:relative;z-index:10}.section-title{font-size:2.5rem}}.hero-logo{margin-bottom:10px;text-align:center}.logo-image{display:block;height:auto;margin:0 auto;transition:all .3s ease;width:250px}.about-image-container{border-radius:12px;box-shadow:0 20px 40px #0000001a;flex:1 1;height:400px;min-width:0;overflow:hidden}.about-image{height:100%;object-fit:cover;object-position:center;width:100%}@media (max-width:1024px){.about-image-container{height:350px}}@media (max-width:768px){.about-image-container{height:300px;max-width:100%}}@media (max-width:480px){.about-image-container{height:250px}}.logo-footer{align-items:center;height:auto;margin:0 10px;width:100px}.floating-contact{align-items:center;background-color:#ff3b30;background-color:var(--red);border-radius:50%;bottom:30px;box-shadow:0 5px 15px #ff3b3066;color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:1.5rem;height:60px;justify-content:center;position:fixed;right:30px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);width:60px;z-index:100}.floating-contact.visible{opacity:1;pointer-events:auto;transform:scale(1) translateY(0)}.floating-contact.hidden{opacity:0;pointer-events:none;transform:scale(.5) translateY(100px)}.floating-contact.visible:hover{box-shadow:0 8px 25px #ff3b3099;transform:scale(1.1)}.floating-contact.scrolling{transform:scale(.95)}.floating-contact i{transition:transform .3s ease}.floating-contact.visible:hover i{transform:scale(1.1)}@media (max-width:768px){.floating-contact{bottom:20px;font-size:1.3rem;height:55px;right:20px;width:55px}.floating-contact.hidden{transform:scale(.4) translateY(80px)}}@media (max-width:480px){.floating-contact{bottom:15px;font-size:1.2rem;height:50px;right:15px;width:50px}}.nav-links{display:flex!important;list-style:none}.nav-links li{margin-left:2rem}.nav-links a{font-size:.9rem;font-weight:500;position:relative}.nav-links a:after{background-color:#ff3b30;background-color:var(--red);bottom:-5px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-links a:hover:after{width:100%}.mobile-menu-btn{background:none;border:none;cursor:pointer;display:none;font-size:1.5rem}@media (max-width:768px){.nav-links{background-color:#fff;background-color:var(--white);box-shadow:0 5px 20px #0000001a;display:none!important;flex-direction:column;left:0;padding:2rem 0;position:fixed;top:60px;width:100%}.nav-links.mobile-open{display:flex!important}.nav-links li{margin:1rem 0;text-align:center}.mobile-menu-btn{display:block}}.pre-animate{visibility:hidden}.animate-logo{animation:logoGrandEntrance 1.5s cubic-bezier(.23,1,.32,1) forwards}@keyframes logoGrandEntrance{0%{filter:blur(10px);opacity:0;transform:scale(.3) rotate(-10deg)}20%{filter:blur(0);opacity:.8;transform:scale(1.1) rotate(5deg)}40%{transform:scale(.95) rotate(-2deg)}60%{transform:scale(1.02) rotate(1deg)}80%{transform:scale(.98)}to{opacity:1;transform:scale(1) rotate(0deg)}}.animate-tagline{animation:taglineReveal 1.2s cubic-bezier(.25,.46,.45,.94) .2s both}@keyframes taglineReveal{0%{filter:blur(5px);opacity:0;transform:translateY(30px) scale(.95)}50%{opacity:.7;transform:translateY(-5px) scale(1.02)}to{filter:blur(0);opacity:1;transform:translateY(0) scale(1)}}.animate-intro{animation:introTypewriter 1.4s cubic-bezier(.19,1,.22,1) .1s both}@keyframes introTypewriter{0%{-webkit-clip-path:polygon(0 0,0 0,0 100%,0 100%);clip-path:polygon(0 0,0 0,0 100%,0 100%);opacity:0;transform:translateY(20px)}40%{-webkit-clip-path:polygon(0 0,60% 0,60% 100%,0 100%);clip-path:polygon(0 0,60% 0,60% 100%,0 100%);opacity:.8}70%{-webkit-clip-path:polygon(0 0,85% 0,85% 100%,0 100%);clip-path:polygon(0 0,85% 0,85% 100%,0 100%);opacity:.9}to{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:1;transform:translateY(0)}}.animate-buttons{animation:buttonsReveal 1.2s cubic-bezier(.34,1.56,.64,1) .1s both}@keyframes buttonsReveal{0%{opacity:0;transform:translateY(40px) scale(.8)}30%{opacity:.8;transform:translateY(-8px) scale(1.05)}50%{transform:translateY(4px) scale(.98)}70%{transform:translateY(-2px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}.hero-buttons.animate-buttons .btn{animation:buttonPulse .6s cubic-bezier(.25,.46,.45,.94) .5s both}.hero-buttons.animate-buttons .btn:nth-child(2){animation-delay:.7s}@keyframes buttonPulse{0%{opacity:0;transform:scale(.8) translateY(20px)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes backgroundPulse{0%,to{opacity:.03;transform:scale(1)}50%{opacity:.05;transform:scale(1.02)}}@keyframes subtleFloat{0%,to{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-5px) rotate(.5deg)}66%{transform:translateY(3px) rotate(-.3deg)}}.hero-logo.animate-logo:after{animation:glowPulse 2s ease-in-out 3s forwards;background:radial-gradient(circle,hsla(0,0%,99%,.905) 0,#0000 70%);border-radius:50%;content:"";height:120%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:120%;z-index:-1}@keyframes glowPulse{0%,to{opacity:0;transform:translate(-50%,-50%) scale(.8)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.1)}}.tagline.animate-tagline{overflow:hidden;position:relative}.tagline.animate-tagline:after{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:50%}@keyframes textShimmer{0%{left:-100%}50%{left:150%}to{left:150%}}@media (max-width:768px){.hero-logo.animate-logo{animation-duration:1.2s}.animate-tagline{animation-duration:1s}.animate-intro{animation-duration:1.2s}.animate-buttons{animation-duration:1s}}.hero *{will-change:transform,opacity}.hero .container{animation:containerReveal .01s forwards}@keyframes containerReveal{to{overflow:visible}}.pre-animate{opacity:0}.animate-title{animation:slideInFromRight .8s ease-out forwards}.animate-image{animation:slideInFromRight .8s ease-out .2s forwards}.animate-text{animation:slideInFromRight .8s ease-out .6s forwards;opacity:0}.animate-text p:first-child{animation:slideInFromRight .6s ease-out .8s forwards}.animate-text p:nth-child(2){animation:slideInFromRight .6s ease-out 1.1s forwards}.animate-skills{animation:slideInFromRight .8s ease-out 1.4s forwards;opacity:0}.animate-skills .skill-tag:first-child{animation:slideInFromRight .5s ease-out 1.6s forwards}.animate-skills .skill-tag:nth-child(2){animation:slideInFromRight .5s ease-out 1.8s forwards}.animate-skills .skill-tag:nth-child(3){animation:slideInFromRight .5s ease-out 2s forwards}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRightDynamic{0%{opacity:0;transform:translateX(80px) skewX(-5deg)}70%{opacity:1;transform:translateX(-5px) skewX(1deg)}to{opacity:1;transform:translateX(0) skewX(0deg)}}@keyframes slideInFromRightSmooth{0%{opacity:0;transform:translateX(60px)}to{opacity:1;transform:translateX(0)}}.form-note{color:#86868b;color:var(--gray);font-size:.8rem;font-style:italic;margin-top:10px;text-align:center}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.btn:disabled:hover{background-color:#ff3b30;background-color:var(--red);transform:none!important}.form-control:invalid{border-color:#d2d2d7;border-color:var(--light-gray)}.form-control:valid{border-color:#d2d2d7;border-color:var(--light-gray)}.form-control:focus:invalid{border-color:#ff3b30;border-color:var(--red)}.form-control:focus:valid{border-color:#4caf50}.legal-modal-content{border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:800px;padding:40px;width:100%}.legal-modal-close{background:none;font-size:1.5rem;height:40px;right:15px;top:15px;transition:color .3s ease;width:40px}.legal-modal-close:hover{background:#f5f5f7;background:var(--off-white);color:#ff3b30;color:var(--red)}.legal-modal-content h2{font-size:2rem;margin-bottom:30px;padding-right:40px}.legal-modal-text{line-height:1.6}.legal-modal-text .legal-section{margin-bottom:25px;padding-bottom:20px}.legal-modal-text h3{font-size:1.2rem;margin-bottom:15px}.legal-modal-text p{font-size:.95rem;margin-bottom:10px}.legal-modal-content::-webkit-scrollbar{width:8px}.legal-modal-content::-webkit-scrollbar-thumb,.legal-modal-content::-webkit-scrollbar-track{border-radius:4px}.legal-modal-content::-webkit-scrollbar-thumb:hover{background:#1d1d1f;background:var(--off-black)}@media (max-width:768px){.legal-modal-overlay{padding:10px}.legal-modal-content{border-radius:8px;max-height:95vh;padding:30px 20px}.legal-modal-content h2{font-size:1.5rem;margin-bottom:20px;padding-right:30px}.legal-modal-text .legal-section{margin-bottom:20px;padding-bottom:15px}.legal-modal-close{height:35px;right:10px;top:10px;width:35px}}@media (max-width:480px){.legal-modal-content{padding:25px 15px}.legal-modal-content h2{font-size:1.3rem}.legal-modal-text h3{font-size:1.1rem}}.legal-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:2000}.legal-modal-content{background:#fff;background:var(--white);border:1px solid #d2d2d7;border:1px solid var(--light-gray);border-radius:16px;box-shadow:0 25px 80px #0006;max-height:90vh;max-width:900px;overflow-y:auto;padding:50px 40px 40px;position:relative;width:95%}.legal-modal-close{align-items:center;background:#f5f5f7;background:var(--off-white);border:none;border-radius:50%;box-shadow:0 2px 10px #0000001a;color:#86868b;color:var(--gray);cursor:pointer;display:flex;font-size:1.3rem;height:45px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:45px;z-index:2001}.legal-modal-close:hover{background:#ff3b30;background:var(--red);color:#fff;color:var(--white);transform:scale(1.1)}.legal-modal-content h2{border-bottom:3px solid #ff3b30;border-bottom:3px solid var(--red);color:#1d1d1f;color:var(--off-black);font-size:2.2rem;margin-bottom:35px;padding-bottom:15px;padding-right:50px;text-align:center}.legal-modal-text{line-height:1.7}.legal-modal-text .legal-section{animation:fadeInUp .5s ease-out;border-bottom:1px solid #d2d2d7;border-bottom:1px solid var(--light-gray);margin-bottom:30px;padding-bottom:25px}.legal-modal-text .legal-section:last-child{border-bottom:none;margin-bottom:0}.legal-modal-text h3{align-items:center;color:#1d1d1f;color:var(--off-black);display:flex;font-size:1.3rem;font-weight:600;margin-bottom:18px}.legal-modal-text h3:before{color:#ff3b30;color:var(--red);content:"•";font-size:1.5rem;margin-right:10px}.legal-modal-text p{color:#86868b;color:var(--gray);font-size:1rem;margin-bottom:12px}.legal-modal-text strong{color:#1d1d1f;color:var(--off-black);font-weight:600}.legal-modal-content::-webkit-scrollbar{width:10px}.legal-modal-content::-webkit-scrollbar-track{background:#f5f5f7;background:var(--off-white);border-radius:8px;margin:10px 0}.legal-modal-content::-webkit-scrollbar-thumb{background:#86868b;background:var(--gray);border:2px solid #f5f5f7;border:2px solid var(--off-white);border-radius:8px}.legal-modal-content::-webkit-scrollbar-thumb:hover{background:#ff3b30;background:var(--red)}.legal-link{background:none;border:none;border-radius:6px;color:#86868b;color:var(--gray);cursor:pointer;font-size:.95rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.legal-link:hover{background:#ffffff1a;color:#fff;color:var(--white);transform:translateY(-2px)}.footer-links{align-items:center;display:flex;gap:20px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.legal-section{animation:fadeInUp .5s ease-out}@media (max-width:768px){.legal-modal-overlay{padding:15px}.legal-modal-content{border-radius:12px;max-height:85vh;max-width:95%;padding:40px 25px 30px}.legal-modal-content h2{font-size:1.8rem;margin-bottom:25px;padding-right:40px}.legal-modal-text .legal-section{margin-bottom:25px;padding-bottom:20px}.legal-modal-text h3{font-size:1.2rem;margin-bottom:15px}.legal-modal-text p{font-size:.95rem}.legal-modal-close{height:40px;right:15px;top:15px;width:40px}.footer-links{flex-direction:column;gap:10px}.legal-link{text-align:center;width:100%}}@media (max-width:480px){.legal-modal-content{max-height:90vh;padding:35px 20px 25px}.legal-modal-content h2{font-size:1.6rem}.legal-modal-text h3{font-size:1.1rem}.legal-modal-text p{font-size:.9rem}}body.modal-open{overflow:hidden}@media (max-width:768px){.testimonial-author{align-items:center;flex-direction:row;justify-content:flex-start}.author-avatar{flex-shrink:0;height:50px;margin-right:15px;min-width:50px;width:50px}.author-info{flex:1 1;min-width:0}.author-info h4{font-size:1rem}.author-info h4,.author-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.author-info p{font-size:.85rem}}@media (max-width:480px){.testimonial{padding:30px 25px}.author-avatar{height:45px;margin-right:12px;min-width:45px;width:45px}.author-info h4{font-size:.95rem}.author-info p{font-size:.8rem}}.author-avatar{object-fit:cover}.portfolio-overlay{align-items:center;background:#000000b5;border-radius:12px;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:all .3s ease;width:100%}.portfolio-item:hover .portfolio-overlay{opacity:1}.more-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000;border:2px solid #fff;border:2px solid var(--white);border-radius:50px;color:#fff;color:var(--white);cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:1px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease;z-index:-1}.more-btn:hover{background:#fff;background:var(--white);box-shadow:0 5px 15px #fff3;color:#1d1d1f;color:var(--off-black);transform:translateY(-2px)}.portfolio-popup-overlay{background:#000c}.portfolio-popup-content{border-radius:5px;max-height:85vh;max-width:800px;padding:40px}.popup-header{margin-bottom:30px}.popup-header h2{font-size:2.2rem}.popup-category{font-size:.8rem;padding:6px 16px}.detail-section{margin-bottom:30px;padding:25px}.detail-section h3{font-size:1.3rem;gap:10px;margin-bottom:15px}.detail-section p{font-size:1rem;line-height:1.7}.tech-stack{gap:10px}.tech-item{border-radius:20px;font-size:.85rem;padding:8px 16px}.popup-tags{margin-top:30px}@media (max-width:768px){.portfolio-popup-content{border-radius:5px;max-height:90vh;padding:30px 20px}.popup-header h2{font-size:1.8rem}.detail-section{margin-bottom:20px;padding:20px}.detail-section h3{font-size:1.1rem}.tech-stack{gap:8px}.tech-item{font-size:.8rem;padding:6px 12px}}@media (max-width:480px){.portfolio-popup-content{border-radius:5px;padding:25px 15px}.popup-header h2{font-size:1.5rem}.detail-section{padding:15px}.popup-close{height:40px;right:15px;top:15px;width:40px}}.author-avatar{background:#d2d2d7;background:var(--light-gray);border-radius:50%;flex-shrink:0;height:60px;margin-right:20px;overflow:hidden;position:relative;width:60px}.author-avatar img{border-radius:50%;height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.author-avatar:hover img{transform:scale(1.05)}.avatar-fallback{align-items:center;background:linear-gradient(135deg,#ff3b30,#1d1d1f);background:linear-gradient(135deg,var(--red),var(--off-black));border-radius:50%;color:#fff;color:var(--white);display:none;font-size:1.1rem;font-weight:600;height:100%;justify-content:center;width:100%}.author-info{flex:1 1}.author-info h4{color:#1d1d1f;color:var(--off-black);font-size:1.1rem;margin-bottom:5px}.author-info p{color:#86868b;color:var(--gray);font-size:.9rem;margin:0}.author-company{color:#d2d2d7;color:var(--light-gray);display:block;font-size:.8rem;font-style:italic;margin-top:3px}.testimonial{background-color:#fff;background-color:var(--white);border-radius:12px;box-shadow:0 10px 30px #00000014;margin-bottom:30px;padding:40px;transition:transform .3s ease,box-shadow .3s ease}.testimonial:hover{box-shadow:0 15px 40px #0000001f;transform:translateY(-5px)}.testimonial-text{font-size:1.2rem;font-style:italic;line-height:1.6;margin-bottom:25px;position:relative}.testimonial-author{align-items:center;display:flex}@media (max-width:768px){.author-avatar{height:50px;margin-right:15px;width:50px}.testimonial{padding:30px 25px}.testimonial-text{font-size:1.1rem}.author-info h4{font-size:1rem}.author-info p{font-size:.85rem}}@media (max-width:480px){.author-avatar{height:45px;margin-right:12px;width:45px}.testimonial{padding:25px 20px}.testimonial-text{font-size:1rem}.testimonial-author{align-items:flex-start}.author-info h4{font-size:.95rem}}.author-avatar{border:3px solid #fff;border:3px solid var(--white);box-shadow:0 3px 10px #0000001a}.testimonial:first-child .author-avatar{border-color:#ff6b6b}.testimonial:nth-child(2) .author-avatar{border-color:#4ecdc4}.testimonial:nth-child(3) .author-avatar{border-color:#45b7d1}.testimonial:nth-child(4) .author-avatar{border-color:#96ceb4}.logo-white{height:auto;width:150px}.hero-buttons{position:relative;z-index:100}.btn{cursor:pointer;position:relative;z-index:11}.hero *{pointer-events:auto}.hero-buttons .btn{transform:none}.hero-buttons .btn:hover{transform:translateY(-2px)}.hero,.hero *{cursor:default}.hero .btn{cursor:pointer}.hero:before{pointer-events:none}.hover-indicator{align-items:center;background:#000000b3;border-radius:12px;color:#fff;color:var(--white);display:flex;flex-direction:column;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transition:all .3s ease;width:100%}.portfolio-item:hover .hover-indicator{opacity:1}.hover-indicator i{font-size:2rem;margin-bottom:10px}.hover-indicator span{font-size:.9rem;font-weight:500}.portfolio-popup-overlay{align-items:center;animation:overlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e6;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:3000}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.portfolio-popup-content{animation:popupSlideIn .4s cubic-bezier(.175,.885,.32,1.275);background:#fff;background:var(--white);border:2px solid #d2d2d7;border:2px solid var(--light-gray);border-radius:20px;box-shadow:0 25px 80px #0006;max-height:90vh;max-width:1000px;overflow-y:auto;padding:50px 40px 40px;position:relative;width:95%}@keyframes popupSlideIn{0%{opacity:0;transform:scale(.8) translateY(50px)}to{opacity:1;transform:scale(1) translateY(0)}}.popup-close{align-items:center;background:#f5f5f7;background:var(--off-white);border:none;border-radius:50%;box-shadow:0 2px 10px #0000001a;color:#86868b;color:var(--gray);cursor:pointer;display:flex;font-size:1.3rem;height:45px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:45px;z-index:3001}.popup-close:hover{background:#ff3b30;background:var(--red);color:#fff;color:var(--white);transform:rotate(90deg)}.popup-header{border-bottom:2px solid #f5f5f7;border-bottom:2px solid var(--off-white);margin-bottom:40px;padding-bottom:20px;text-align:center}.popup-header h2{color:#1d1d1f;color:var(--off-black);font-size:2.5rem;margin-bottom:10px}.popup-category{background:#ff3b30;background:var(--red);border-radius:20px;color:#fff;color:var(--white);display:inline-block;font-size:.9rem;font-weight:600;letter-spacing:1px;padding:8px 20px;text-transform:uppercase}.popup-content-grid{grid-gap:40px;align-items:start;display:grid;gap:40px;grid-template-columns:1fr 1fr}.popup-image-section{border-radius:12px;box-shadow:0 10px 30px #0000001a;overflow:hidden}.popup-main-image{border-radius:12px;height:300px;object-fit:cover;width:100%}.popup-details-section{display:flex;flex-direction:column;gap:25px}.detail-section{background:#f5f5f7;background:var(--off-white);border-left:4px solid #ff3b30;border-left:4px solid var(--red);border-radius:12px;padding:20px}.detail-section h3{align-items:center;color:#1d1d1f;color:var(--off-black);display:flex;font-size:1.2rem;gap:8px;margin-bottom:12px}.detail-section p{color:#86868b;color:var(--gray);font-size:.95rem;line-height:1.6;margin:0}.tech-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tech-item{background:#fff;background:var(--white);border:1px solid #d2d2d7;border:1px solid var(--light-gray);border-radius:15px;color:#1d1d1f;color:var(--off-black);font-size:.8rem;font-weight:500;padding:6px 12px}.popup-tags{border-top:1px solid #d2d2d7;border-top:1px solid var(--light-gray);display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px;padding-top:20px}.popup-tag{background:#ff3b30;background:var(--red);border-radius:20px;color:#fff;color:var(--white);font-size:.8rem;font-weight:600;padding:8px 16px}.portfolio-popup-content::-webkit-scrollbar{width:8px}.portfolio-popup-content::-webkit-scrollbar-track{background:#f5f5f7;background:var(--off-white);border-radius:4px}.portfolio-popup-content::-webkit-scrollbar-thumb{background:#86868b;background:var(--gray);border-radius:4px}.portfolio-popup-content::-webkit-scrollbar-thumb:hover{background:#ff3b30;background:var(--red)}@media (max-width:968px){.popup-content-grid{gap:30px;grid-template-columns:1fr}.popup-main-image{height:250px}}@media (max-width:768px){.portfolio-popup-content{max-height:85vh;padding:40px 25px 30px}.popup-header h2{font-size:2rem}.popup-content-grid{gap:25px}.detail-section{padding:15px}.detail-section h3{font-size:1.1rem}.hover-indicator span{font-size:.8rem}}@media (max-width:480px){.portfolio-popup-content{padding:35px 20px 25px}.popup-header h2{font-size:1.6rem}.popup-close{height:40px;right:15px;top:15px;width:40px}body{font-size:14px}.container{padding:0 15px}.hero{padding:120px 0 80px}.hero h1{font-size:1.8rem;margin-bottom:8px}.hero .tagline{font-size:1.2rem;margin-bottom:20px}.hero .intro{font-size:1rem;margin-bottom:25px}.hero-buttons{flex-direction:column;gap:12px;margin-top:25px}.btn{font-size:.9rem;max-width:200px;padding:10px 20px;width:100%}.nav-content{height:50px}.logo,.mobile-menu-btn{font-size:1.2rem}.nav-links.mobile-open{padding:1.5rem 0}.nav-links li{margin:.8rem 0}.section-title{font-size:1.8rem;margin-bottom:40px}.section-title:after{bottom:-10px;height:3px;width:60px}.about-content{flex-direction:column;gap:30px}.about-image-container{height:200px;order:-1}.about-text h2{font-size:1.5rem;text-align:center}.about-text h2:after{left:50%;transform:translateX(-50%)}.skills-list{gap:8px;justify-content:center}.skill-tag{font-size:.8rem;padding:6px 12px}.portfolio-filters{flex-wrap:wrap;gap:8px;margin-bottom:30px}.filter-btn{font-size:.8rem;padding:6px 12px}.portfolio-grid{gap:20px;grid-template-columns:1fr}.portfolio-img{height:150px}.portfolio-info{padding:20px}.portfolio-info h3{font-size:1.2rem}.portfolio-info p{font-size:.9rem}.services-grid{gap:20px;grid-template-columns:1fr}.service-card{padding:30px 20px}.service-icon{font-size:2rem}.service-card h3{font-size:1.3rem}.testimonial{margin-bottom:20px;padding:25px 20px}.testimonial-text{font-size:1rem}.author-avatar{height:40px!important;margin-right:12px;width:40px!important}.author-info h4{font-size:.9rem}.author-info p{font-size:.8rem}.contact-content{flex-direction:column;gap:30px}.contact-text h2{font-size:1.5rem;text-align:center}.contact-text h2:after{left:50%;transform:translateX(-50%)}.contact-item{margin-bottom:12px}.contact-icon{font-size:.9rem;height:35px;margin-right:12px;width:35px}.form-control{font-size:.9rem;padding:12px}textarea.form-control{min-height:120px}.footer{padding:40px 0 20px}.footer-content{flex-direction:column;gap:25px;margin-bottom:30px}.footer-logo{font-size:1.2rem;text-align:center}.footer-tagline{font-size:.9rem;text-align:center}.footer-links{flex-direction:column;gap:15px;text-align:center}.social-links{justify-content:center}.social-link{font-size:.9rem;height:35px;width:35px}.footer-bottom{font-size:.8rem;padding-top:20px}.floating-contact{bottom:15px;font-size:1.1rem;height:45px;right:15px;width:45px}.portfolio-popup-content{border-radius:8px;margin:10px;padding:30px 15px 25px}.popup-header h2{font-size:1.4rem}.popup-content-grid{gap:20px;grid-template-columns:1fr}.popup-main-image{height:180px}.detail-section{padding:15px}.detail-section h3{font-size:1rem}.detail-section p{font-size:.85rem}.tech-item{font-size:.75rem;padding:4px 10px}.popup-close{font-size:1.1rem;height:35px;right:10px;top:10px;width:35px}.legal-modal-content{margin:10px;padding:30px 15px 25px}.legal-modal-content h2{font-size:1.4rem;padding-right:30px}.legal-modal-text h3{font-size:1rem}.legal-modal-text p{font-size:.85rem}.legal-modal-close{height:35px;right:10px;top:10px;width:35px}.logo-image{width:180px}.logo-footer{width:80px}}@media (max-width:320px){.container{padding:0 12px}.hero h1{font-size:1.6rem}.hero .tagline{font-size:1.1rem}.section-title{font-size:1.6rem}.portfolio-filters{gap:6px}.filter-btn{font-size:.75rem;padding:5px 10px}.btn{font-size:.85rem;padding:8px 16px}.floating-contact{font-size:1rem;height:40px;width:40px}}.contact-icon-footer{background-color:#303032;font-size:.9rem;height:35px;margin-right:12px;width:35px}
/*# sourceMappingURL=main.c9d2e1e6.css.map*/