*{margin:0;padding:0;box-sizing:border-box}:root{--accent-color: #04c259;--deep-forest: #085D3E;--vibrant-emerald: #03935C;--mint-frost: #ECFDF4}html,body{font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fff;color:#1a1a1a;line-height:1.4;width:100%;position:relative}body{overflow-x:hidden}.container{max-width:1400px;margin:0 auto;padding:0 40px}.header{background:#fff;position:fixed;width:100%;top:0;z-index:1000;padding:30px 0;border-bottom:1px solid #e0e0e0;transition:background .3s ease,border-bottom .3s ease,padding .3s ease}body:not(.home-page){padding-top:90px}.header.index-header{background:#032b1e;border-bottom:none}.header.index-header .nav-links a:hover,.header.index-header .nav-links a.active,.header.index-header .logo{color:#fff}.header.index-header.scrolled{background:#fff;border-bottom:1px solid #e0e0e0}.header.index-header.scrolled .nav-links a.active,.header.index-header.scrolled .logo{color:var(--vibrant-emerald)}.nav{display:flex;justify-content:space-between;align-items:center}.logo{font-size:20px;font-weight:900;color:var(--vibrant-emerald);letter-spacing:2px;text-transform:uppercase;text-decoration:none}.nav-links{display:flex;gap:40px;list-style:none;margin-left:auto}.nav-links a{text-decoration:none;color:#666;font-weight:400;font-size:14px;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease}.nav-links a:hover{color:#1a1a1a}.nav-links a.active{color:var(--vibrant-emerald)}.back-btn{background:none;border:none;font-size:14px;color:#666;cursor:pointer;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease;text-decoration:none}.back-btn:hover{color:#1a1a1a}.project-hero{padding:80px 0;background:#fff}.hero-content{display:grid;grid-template-columns:1fr 600px;gap:80px;align-items:center}.hero-info{padding-right:40px}.project-logo{width:200px;height:auto;margin-bottom:20px;opacity:1}.project-category{font-size:12px;color:var(--accent-color);font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px}.project-title{font-size:3.5rem;font-weight:900;color:#1a1a1a;margin-bottom:30px;line-height:1.1;letter-spacing:-2px}.project-subtitle{font-size:18px;color:#666;line-height:1.6;margin-bottom:40px;max-width:500px}.project-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.meta-item{border-left:2px solid var(--accent-color);padding-left:20px}.meta-label{font-size:10px;color:#999;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.meta-value{font-size:14px;color:#1a1a1a;font-weight:600}.hero-image{width:100%;height:500px;border-radius:12px;position:relative;background:transparent}.about-hero{padding:80px 0;background:#fff}.about-title{font-size:3.5rem;font-weight:900;color:#1a1a1a;margin-bottom:30px;line-height:1.1;letter-spacing:-2px}.about-subtitle{font-size:18px;color:#666;line-height:1.6;margin-bottom:40px;max-width:500px}#hero-map{width:100%;height:100%;background:transparent;position:relative}.country{fill:#e0e7ef;stroke:#fff;stroke-width:.5;transition:fill .2s ease}.country:hover{fill:#c5d3e0}.marker{cursor:pointer;pointer-events:all}.marker-circle{fill:var(--vibrant-emerald);stroke:#fff;stroke-width:2.5;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transition:r .2s ease}.marker:hover .marker-circle{r:10}.marker-circle.spain{fill:var(--accent-color)}.map-popup{position:absolute;background:#fff;border-radius:12px;padding:15px;box-shadow:0 8px 24px #0003;pointer-events:none;opacity:0;transition:all .3s ease;z-index:9999;min-width:220px;max-width:280px;font-size:12px;border:2px solid var(--vibrant-emerald)}.map-popup.show{opacity:1}.popup-title{font-size:14px;font-weight:700;color:var(--vibrant-emerald);margin-bottom:3px}.popup-country{color:#7f8c8d;font-size:10px;margin-bottom:8px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.popup-detail{margin-bottom:6px;line-height:1.4;font-size:11px}.popup-detail strong{color:#34495e}.popup-info{color:#555;font-size:10px;line-height:1.4;display:none}.content-section:nth-child(2n){background:#fff}.section-subtitle{font-size:1.5rem;font-weight:600;color:var(--vibrant-emerald);margin-bottom:5px}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.mission-text{font-size:16px;color:#666;line-height:1.6;margin-bottom:30px}.values-list{list-style:none}.values-list li{border-bottom:1px solid #e8e8e8;color:#666;font-size:14px;position:relative;padding:15px 0 15px 25px}.values-list li:before{content:"→";position:absolute;left:0;color:var(--accent-color);font-weight:700}.values-list li:last-child{border-bottom:none}.team-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:40px}.team-member{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e8e8e8;transition:transform .3s ease,box-shadow .3s ease;flex:0 1 400px}.team-member:hover{transform:translateY(-10px);box-shadow:0 20px 40px #0000001a}.member-image{width:100%;height:250px;background:linear-gradient(135deg,#e8e8e8,#d0d0d0);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#bbb;position:relative}.member-image img{width:100%;height:100%;object-fit:cover;object-position:top}.member-info{padding:30px}.member-name{font-size:1.2rem;font-weight:700;color:#1a1a1a;margin-bottom:5px}.member-role{font-size:12px;color:var(--accent-color);text-transform:uppercase;letter-spacing:1px;margin-bottom:15px}.member-description{font-size:14px;color:#666;line-height:1.5}.services-container{max-width:1400px;margin:0 auto;padding:50px 40px}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.service-card{background:#fff;padding:2.5rem;border-radius:15px;border:1px solid rgba(169,241,202,.2);transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 8px 16px #0000001a;cursor:pointer}.service-card:hover{transform:scale(.98);background:var(--mint-frost);box-shadow:0 12px 24px #00000026}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--midnight-pine)}.service-card p{color:#666;line-height:1.6;margin-bottom:2rem}.service-button{position:absolute;bottom:1.5rem;left:2.5rem;background:var(--vibrant-emerald);color:#fff;padding:.5rem 1rem;border-radius:20px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .3s ease}.service-button:hover{background:var(--deep-forest);transform:translateY(-2px)}.mobile-menu-btn{display:none;flex-direction:column;justify-content:space-between;width:30px;height:24px;background:transparent;border:none;cursor:pointer;padding:0}.mobile-menu-btn span{display:block;height:3px;width:100%;background:#666;border-radius:2px;transition:all .3s ease}.mobile-menu-btn.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}.mobile-menu{position:fixed;top:0;right:-300px;width:300px;height:100vh;background:#fff;box-shadow:-2px 0 10px #0000001a;z-index:1000;transition:right .3s ease,visibility .3s ease;padding:80px 20px 20px;visibility:hidden}.mobile-menu.active{right:0;visibility:visible}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-nav-links{list-style:none;padding:0;margin:0}.mobile-nav-links li{margin-bottom:20px}.mobile-nav-links a{display:block;padding:15px 0;text-decoration:none;color:#1a1a1a;font-size:16px;font-weight:600;border-bottom:1px solid #e8e8e8;transition:color .3s ease}.mobile-nav-links a:hover,.mobile-nav-links a.active{color:var(--vibrant-emerald)}.mobile-menu-close{position:absolute;top:30px;right:20px;background:transparent;border:none;cursor:pointer;padding:0;width:30px;height:24px;display:flex;align-items:center;justify-content:center}.mobile-menu-close span{font-size:24px;color:#666;transition:color .3s ease;line-height:1}.mobile-menu-close:hover span{color:#1a1a1a}.footer{background:#032b1e;color:#fff;padding:60px 0 20px}.footer-content{display:flex;justify-content:space-between;gap:40px;margin-bottom:60px;align-items:start}.footer-section{flex:1}.footer-section:first-child{flex:2;max-width:400px}.footer-section:last-child{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.footer-section h4{font-size:1.1rem;font-weight:700;margin-bottom:20px;color:#fff}.footer-description{font-size:14px;line-height:1.6;color:#fffc;margin-bottom:20px}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:10px}.footer-links a{color:#fffc;text-decoration:none;font-size:14px;transition:color .3s ease}.footer-links a:hover{color:#fff}.social-links{display:flex;gap:15px}.social-link{color:#fffc;text-decoration:none;font-size:14px;transition:color .3s ease}.social-link:hover{color:var(--accent-color)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);font-size:14px;color:#fffc}.footer-legal{display:flex;gap:20px}.footer-legal a{color:#fffc;text-decoration:none;transition:color .3s ease}.footer-legal a:hover{color:#fff}.process-timeline{position:relative;padding:40px 0}.process-step{display:grid;grid-template-columns:1fr 60px 1fr;gap:40px;margin-bottom:80px;align-items:center}.step-number{width:60px;height:60px;border-radius:50%;background:var(--accent-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:20px;position:relative;z-index:2;margin:0 auto}.step-content{background:#fff;padding:40px;border-radius:8px;border:1px solid #e8e8e8;text-align:center}.step-title{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:15px}.step-description{font-size:14px;color:#666;line-height:1.6}.process-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:#e8e8e8;transform:translate(-50%)}.cta-section{background:var(--deep-forest);color:#fff;text-align:center;padding:80px 0}.cta-title{font-size:2.5rem;font-weight:900;margin-bottom:20px;color:#fff}.cta-subtitle{font-size:18px;margin-bottom:40px;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto}.cta-button{display:inline-block;background:var(--accent-color);color:#fff;padding:18px 40px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease}.cta-button:hover{background:#fff;color:var(--deep-forest);transform:translateY(-2px);box-shadow:0 8px 20px #ffffff4d}.contact-hero{padding:80px 0;background:#fff}.contact-title{font-size:3.5rem;font-weight:900;color:#1a1a1a;margin-bottom:30px;line-height:1.1;letter-spacing:-2px}.contact-subtitle{font-size:18px;color:#666;line-height:1.6;margin-bottom:40px;max-width:500px}.contact-info{display:grid;grid-template-columns:1fr;gap:20px;margin-top:40px}.info-item{border-left:2px solid var(--accent-color);padding-left:20px}.info-label{font-size:10px;color:#999;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.info-value{font-size:14px;color:#1a1a1a;font-weight:600}.info-value a{color:inherit;text-decoration:none;transition:color .3s ease}.info-value a:hover{color:var(--vibrant-emerald)}.contact-form-container{width:100%;background:#fff;border-radius:12px;padding:40px;border:1px solid #e8e8e8;box-shadow:0 4px 12px #0000000d}.form-title{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:30px;text-align:center}.contact-form{display:grid;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-weight:600}.form-group label:after{content:"*";color:#ff6b6b;margin-left:2px}.form-group input,.form-group textarea{width:100%;padding:15px;border:1px solid #e8e8e8;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;background:#fff}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #04c2591a}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{background:var(--vibrant-emerald);color:#fff;border:none;padding:18px 40px;border-radius:8px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;margin-top:20px}.submit-btn:hover{background:var(--deep-forest);transform:translateY(-2px);box-shadow:0 8px 20px #085d3e4d}.submit-btn:active{transform:translateY(0)}.form-group input:invalid:not(:placeholder-shown),.form-group textarea:invalid:not(:placeholder-shown){border-color:#ff6b6b}.form-group input:valid:not(:placeholder-shown),.form-group textarea:valid:not(:placeholder-shown){border-color:var(--accent-color)}.success-message{position:fixed;bottom:30px;right:30px;background:#fff;border-left:4px solid var(--accent-color);color:#333;padding:16px 24px;border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:10000;font-size:14px;font-weight:500;transform:translateY(100px);opacity:0;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);display:flex;align-items:center;gap:12px;pointer-events:none}.success-message.show{transform:translateY(0)!important;opacity:1!important;pointer-events:all!important}.success-message svg{width:20px;height:20px;stroke:var(--accent-color);flex-shrink:0}.counting{animation:countUp 2s ease-out forwards}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{opacity:0;transform:translateY(30px);animation:fadeInUp .8s ease forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.content-section:nth-child(1){animation-delay:.1s}.content-section:nth-child(2){animation-delay:.2s}.content-section:nth-child(3){animation-delay:.3s}.content-section:nth-child(4){animation-delay:.4s}.content-section:nth-child(5){animation-delay:.5s}.lightbox{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000e6;align-items:center;justify-content:center}.lightbox-content{max-width:90%;max-height:90%;object-fit:contain}.close{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;font-weight:700;cursor:pointer}.solution-image{position:relative;box-shadow:0 4px 12px #0000}.solution-image img{width:100%;height:auto;border-radius:12px}.solution-image:hover:after{content:"Click for full screen";position:absolute;inset:0;background-color:#000000ad;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500;border-radius:12px;pointer-events:none}@media(max-width:1024px){.hero-content,.footer-content,.overview-grid,.gallery-grid,.specs-grid{grid-template-columns:1fr;gap:40px}.footer-content{flex-direction:column;text-align:center;gap:40px}.footer-section,.footer-section:first-child,.footer-section:last-child{width:100%;max-width:none;align-items:center;text-align:center;flex:auto}.footer-links li{margin-bottom:15px}.footer-bottom{flex-direction:column;gap:20px;text-align:center}.requirements-grid{grid-template-columns:repeat(2,1fr)}.solution-grid{grid-template-columns:1fr}.process-step>div:empty{display:none}.process-step{display:flex;align-items:center;gap:20px}.step-number{order:1;margin:0}.step-content{order:2;flex:1}.process-timeline:before{left:30px;transform:none}}@media(max-width:768px){.container{padding:0 20px}.project-title,.about-title,.contact-title{font-size:2.5rem}.section-title{font-size:2rem}.stats-grid{grid-template-columns:1fr}.nav-links{display:none}.mobile-menu-btn{display:flex}.content-section{padding:30px 0}}@media(max-width:495px){.project-meta{grid-template-columns:1fr}}@media(max-width:699px){.portrait-cards{display:flex;justify-content:center;gap:40px}.portrait-cards .gallery-item{flex:1 1 300px;max-width:350px}.card-3{display:none}}@media(max-width:499px){.portrait-cards{display:grid;grid-template-columns:1fr;gap:40px;justify-items:center}.portrait-cards .gallery-item{max-width:350px}.card-3{display:none}}@media(min-width:1025px){.process-timeline{display:flex;align-items:center;justify-content:center;gap:20px;padding:300px 0;position:relative;margin-bottom:40px}.process-timeline:before{inset:50% 40px auto;height:4px;width:auto;transform:translateY(-50%);background:var(--vibrant-emerald);z-index:1;pointer-events:none;border-radius:2px}.process-step{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px;margin:0 10px;flex:1 1 0;max-width:320px;min-height:80px}.step-number{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;margin:0;flex:0 0 auto;box-shadow:0 0 0 6px #fff;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%}.step-content{position:absolute;left:50%;transform:translate(-50%);width:280px;z-index:2;padding:20px;box-sizing:border-box;max-height:none;overflow:visible}.process-step:nth-child(odd) .step-content{bottom:calc(100% + 80px)}.process-step:nth-child(2n) .step-content{top:calc(100% + 80px)}.step-content,.step-number{pointer-events:auto}}:root{--mint-frost: #ECFDF4;--soft-meadow: #A9F1CA;--deep-forest: #085D3E;--midnight-pine: #032B1E;--sage-mist: #5D6F5F;--dark-juniper: #084C34}html{scroll-behavior:smooth;height:100%}body.index-page{background:var(--midnight-pine);min-height:100vh;min-height:100dvh}.header.index-header .nav-links a{color:#fffc}.header.index-header .nav-links a:hover{color:#fff}.header.index-header.scrolled .nav-links a{color:#666}.header.index-header.scrolled .nav-links a:hover{color:#1a1a1a}.header.index-header.scrolled .logo{color:var(--vibrant-emerald)}.header.index-header .mobile-menu-btn span{background:#fffc}.header.index-header.scrolled .mobile-menu-btn span{background:#666}.back-btn{visibility:hidden}.hero{min-height:95vh;display:flex;align-items:center;padding:0 18%;position:relative;background:var(--midnight-pine)}.hero-content{max-width:1400px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-text h1{font-size:clamp(3rem,8vw,5.5rem);font-weight:600;line-height:1.1;margin-bottom:2rem;opacity:0;transform:translateY(50px);animation:fadeInUp 1s ease forwards;color:#fff}.hero-text h1 span{color:var(--vibrant-emerald);position:relative}.hero-text p{font-size:1.3rem;color:#fff;margin-bottom:3rem;opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease .2s forwards}.cta-button{display:inline-block;padding:1.2rem 3rem;background:var(--vibrant-emerald);color:var(--mint-frost);text-decoration:none;border-radius:50px;font-weight:600;transition:all .3s ease;opacity:0;transform:translateY(30px);animation:fadeInUp 1s ease .4s forwards;position:relative;overflow:hidden}.cta-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--soft-meadow);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.cta-button:hover:before{width:300px;height:300px}.cta-button span{position:relative;z-index:1}.cta-button:hover{transform:translateY(-3px);box-shadow:0 10px 30px #03935c4d;color:var(--deep-forest)}.hero-visual{position:relative;opacity:0;animation:fadeIn 1.5s ease .6s forwards}.stats{padding:8rem;background:#fff;position:relative}.stats-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.stats-text h2{font-size:3rem;font-weight:600;margin-bottom:1.5rem;color:var(--midnight-pine)}.stats-text h2 span{color:var(--vibrant-emerald)}.stats-text p{font-size:1.2rem;color:#000;line-height:1.8}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.stat-item{text-align:center;opacity:0;transform:translateY(30px)}.stat-item.visible{animation:fadeInUp .8s ease forwards}.stat-number{font-size:4rem;font-weight:800;color:var(--vibrant-emerald);margin-bottom:.5rem;position:relative;display:inline-block}.stat-label{font-size:1.1rem;color:#000}.clients{padding:1rem 0;background:#fff;overflow:hidden}.clients h3{text-align:center;font-size:1rem;color:var(--dark-juniper);text-transform:uppercase;letter-spacing:3px;margin-bottom:3rem;margin-top:3rem}.logo-carousel{display:flex;animation:scroll 45s linear infinite;margin-bottom:1rem}.logo-carousel-partners{display:flex;animation:scroll 45s linear infinite reverse}.logo-carousel:hover,.logo-carousel-partners:hover{animation-play-state:paused}.logo-item{flex:0 0 200px;padding:0 2rem;display:flex;align-items:center;justify-content:center;opacity:.8;transition:all .3s ease}.logo-item:hover{filter:grayscale(0%);opacity:1;transform:scale(1.1)}.logo-item img{max-width:150px;max-height:60px;object-fit:contain;transition:all .3s ease}.projects{padding:5rem;background:#fff}.projects-header{max-width:1400px;margin:0 auto 4rem}.projects-header h2{font-size:3rem;text-align:left;font-weight:700;color:var(--midnight-pine);margin-bottom:10px}.see-all-container{max-width:1400px;margin:3rem auto 0;text-align:center}.see-all-button{display:inline-block;padding:1rem 2rem;background:var(--vibrant-emerald);color:#fff;text-decoration:none;border-radius:50px;font-weight:600;font-size:1.1rem;transition:all .3s ease;box-shadow:0 4px 12px #03935c4d}.see-all-button:hover{background:var(--dark-juniper);transform:translateY(-2px);box-shadow:0 6px 20px #03935c66}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1400px;margin:0 auto}.project-card{background:#fff;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:1px solid rgba(169,241,202,.3);position:relative;box-shadow:0 2px 8px #00000014;height:100%;display:flex;flex-direction:column}.project-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #03935c1f;border-color:var(--vibrant-emerald)}.project-image{width:100%;height:200px;background:linear-gradient(135deg,var(--dark-juniper),var(--vibrant-emerald));position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:8px 8px 0 0}.project-image>img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease;border-radius:8px 8px 0 0;z-index:0}.project-card .project-logo{position:relative;z-index:2;width:auto;height:auto;margin:0;display:flex;align-items:center;justify-content:center}.project-card .project-logo img{width:auto;height:auto;max-width:140px;max-height:80px;object-fit:contain;border-radius:0;transition:transform .3s ease;filter:brightness(0) invert(1)}.project-card:hover .project-image>img{transform:scale(1.05)}.project-card:hover .project-logo img{transform:scale(1.1)}.project-image:before{content:"";position:absolute;inset:0;background:#ffffff1a;opacity:0;transition:opacity .3s ease}.project-card:hover .project-image:before{opacity:1}.project-image.p4{background:linear-gradient(135deg,#667eea,#764ba2)}.project-image.p5{background:linear-gradient(135deg,#f093fb,#f5576c)}.project-image.p6{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.project-overlay{position:absolute;inset:0;background:#0009;z-index:1}.project-image:after{content:"View Case Study";position:absolute;bottom:0;left:0;right:0;background:#fffffff2;color:var(--midnight-pine);padding:.75rem 1rem;text-align:center;font-weight:600;font-size:.9rem;transform:translateY(100%);transition:transform .3s ease;border-top:1px solid rgba(169,241,202,.4);z-index:2}.project-card:hover .project-image:after{transform:translateY(0)}.project-info{padding:2rem;flex:1;display:flex;flex-direction:column}.project-info h3{font-size:1.4rem;margin-bottom:.75rem;color:#000;font-weight:600;line-height:1.3}.project-info p{color:#000;line-height:1.6;margin-bottom:1.5rem;flex:1}.project-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:auto}.tag{background:#03935c14;color:var(--vibrant-emerald);padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500;border:1px solid rgba(3,147,92,.15);transition:all .2s ease}.tag:hover{background:var(--vibrant-emerald);color:#fff}.services-infographic{padding:1rem;background:#fff}.services-infographic-container{max-width:1400px;margin:0 auto}.services-infographic h2{font-size:3rem;text-align:left;font-weight:700;color:#1a1a1a;margin-bottom:10px}.services-infographic .services-subtitle{font-size:1.5rem;color:var(--vibrant-emerald);font-weight:400}.infographic-wrapper{display:flex;justify-content:center;align-items:center;margin:0 auto}.infographic-wrapper img{max-width:75%;height:auto;transition:transform .3s ease}.tech-stack{padding:1rem;background:#fff}.tech-stack-container{max-width:1400px;margin:0 auto;text-align:center}.tech-stack h2{font-size:3rem;font-weight:700;color:var(--midnight-pine);margin-bottom:10px;text-align:left}.tech-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;align-items:center}.tech-logo{background:transparent;padding:1.5rem;transition:all .3s ease;cursor:default;display:flex;align-items:center;justify-content:center;min-height:80px;flex:0 0 auto;width:180px}.tech-logo img{max-width:100%;max-height:60px;object-fit:contain;transition:all .3s ease}.contact{padding:8rem;background:#fff}.contact-container{max-width:800px;margin:0 auto;text-align:center}.contact h2{font-size:3.5rem;font-weight:600;margin-bottom:2rem;color:var(--midnight-pine)}.contact p{font-size:1.3rem;color:#000;margin-bottom:3rem}.contact-button{display:inline-block;padding:1.5rem 4rem;background:transparent;color:var(--vibrant-emerald);text-decoration:none;border:2px solid var(--vibrant-emerald);border-radius:50px;font-weight:600;font-size:1.1rem;transition:all .3s ease;position:relative;overflow:hidden}.contact-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:var(--vibrant-emerald);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;z-index:0}.contact-button:hover:before{width:400px;height:400px}.contact-button span{position:relative;z-index:1}.contact-button:hover{color:var(--mint-frost);transform:translateY(-3px);box-shadow:0 10px 30px #03935c4d}.service-button-contact{position:absolute;bottom:1.5rem;left:2.5rem;background:transparent;color:var(--vibrant-emerald);border:2px solid var(--vibrant-emerald);padding:.5rem 1rem;border-radius:20px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .3s ease}.service-button-contact:hover{border-color:var(--deep-forest);color:var(--deep-forest);transform:translateY(-2px)}@keyframes fadeIn{to{opacity:1}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-20px) rotate(2deg)}75%{transform:translateY(20px) rotate(-2deg)}}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(min-width:1389px){.project-card{min-width:380px;width:380px}}@media(max-width:1199px)and (min-width:900px){.projects-grid{gap:2rem}.project-logo img{width:200px;height:200px}}@media(max-width:899px)and (min-width:700px){.projects{padding:5rem 10%}.projects-grid{grid-template-columns:repeat(2,1fr);gap:2rem}.project-logo img{width:180px;height:180px}.tech-stack{padding:1rem 8%}.tech-stack h2{font-size:2.2rem;margin-bottom:2.5rem}.tech-logos{gap:1.8rem}.tech-logo{width:130px;padding:1.2rem;min-height:75px}.tech-logo img{max-height:55px}}@media(max-width:699px)and (min-width:500px){.projects{padding:4rem 5%}.projects-header h2{font-size:2.8rem}.projects-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.project-logo img{width:140px;height:140px}}@media(max-width:499px){.projects{padding:3rem 3%}.projects-header h2{font-size:2.4rem}.projects-grid{grid-template-columns:1fr;gap:1.5rem}.project-logo img{width:160px;height:160px}.project-info{padding:1.5rem}.project-info h3{font-size:1.2rem}.tech-stack{padding:1rem 3%}.tech-stack h2{font-size:1.8rem;margin-bottom:1.5rem}.tech-logos{gap:1rem;justify-content:space-around}.tech-logo{width:100px;padding:.8rem;min-height:60px}.tech-logo img{max-height:40px}.services-infographic{padding:3rem 3%}.services-infographic h2{font-size:2rem;margin-bottom:1.5rem}.services-infographic .services-subtitle{font-size:1rem}.infographic-wrapper img{border-radius:10px}.stats{padding:2rem 3%}.stats-container{gap:1.5rem}.stats-text h2{font-size:1.8rem;margin-bottom:1rem}.stats-text p{font-size:.9rem}.stats-grid{grid-template-columns:1fr;gap:1.5rem}.stat-item{text-align:left}.stat-number{font-size:2.5rem}.stat-label{font-size:.8rem}.contact{padding:3rem 3%}.contact h2{font-size:2rem;margin-bottom:1.2rem}.contact p{font-size:1rem;margin-bottom:1.5rem}.contact-button{padding:1rem 2rem;font-size:.9rem}.clients h3{font-size:.8rem;margin-bottom:1.5rem;margin-top:1.5rem}.logo-item{flex:0 0 120px}.logo-item img{width:100px;height:auto}}@media(max-width:1024px){.hero-content,.stats-container{grid-template-columns:1fr;text-align:center}.hero-visual{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stats{padding:3rem 5%}.stats-container{gap:2rem}.stats-text h2{font-size:2.2rem;margin-bottom:1rem}.stats-text p{font-size:1rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:2rem}.stat-number{font-size:3rem}.stat-label{font-size:.9rem}.tech-stack{padding:1rem 5%}.tech-stack h2{font-size:2rem;margin-bottom:2rem}.tech-logos{gap:1.5rem}.tech-logo{width:120px;padding:1rem;min-height:70px}.tech-logo img{max-height:50px}.services-infographic{padding:4rem 5%}.services-infographic h2{font-size:2.5rem;margin-bottom:1rem}.services-infographic .services-subtitle{font-size:1.2rem}.infographic-wrapper img{max-width:100%}.contact{padding:4rem 5%}.contact h2{font-size:2.5rem;margin-bottom:1.5rem}.contact p{font-size:1.1rem;margin-bottom:2rem}.contact-button{padding:1.2rem 3rem;font-size:1rem}.clients h3{font-size:.9rem;margin-bottom:2rem;margin-top:2rem}.logo-item{flex:0 0 150px}.logo-item img{width:120px;height:auto}}@media(max-width:495px){.mobile-menu{width:100%;right:-100%}}.projects-hero{padding:120px 0 80px;background:#fff;text-align:center}.projects-hero h1{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;color:var(--midnight-pine);margin-bottom:1.5rem}.projects-hero p{font-size:1.2rem;color:#666;max-width:700px;margin:0 auto;line-height:1.6}.projects-main{padding:60px 0 80px;background:#fff}.projects-main .projects-header h2{font-size:2.5rem;text-align:center;margin-bottom:3rem;color:var(--midnight-pine)}.projects-list{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:3rem}.project-list-item{background:#fff;border-radius:12px;overflow:hidden;transition:all .3s ease;border:1px solid #e8e8e8;box-shadow:0 2px 8px #0000000d;display:grid;grid-template-columns:400px 1fr;height:280px;cursor:pointer}.project-list-item:hover{transform:translateY(-4px);box-shadow:0 8px 25px #03935c26;border-color:var(--vibrant-emerald)}.project-list-image{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--dark-juniper),var(--vibrant-emerald))}.project-list-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.project-list-item:hover .project-list-image img{transform:scale(1.05)}.project-list-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.project-list-logo img{width:180px;height:auto;max-height:200px;object-fit:contain;filter:brightness(0) invert(1)}.project-list-overlay{position:absolute;inset:0;background:#00000080;z-index:1}.project-list-content{padding:2.5rem 3rem;display:flex;flex-direction:column;justify-content:center}.project-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.project-list-title{font-size:2rem;font-weight:700;color:var(--midnight-pine);margin:0;line-height:1.2}.project-list-arrow{font-size:2rem;color:var(--vibrant-emerald);transition:transform .3s ease}.project-list-item:hover .project-list-arrow{transform:translate(10px)}.project-list-description{color:#666;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.project-list-tags{display:flex;gap:.5rem;flex-wrap:wrap}.project-list-tags .tag{background:#03935c14;color:var(--vibrant-emerald);padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;border:1px solid rgba(3,147,92,.15);transition:all .2s ease}.project-list-tags .tag:hover{background:var(--vibrant-emerald);color:#fff}@media(max-width:1024px){.project-list-item{grid-template-columns:350px 1fr;height:260px}.project-list-logo img{width:150px}.project-list-content{padding:2rem}.project-list-title{font-size:1.75rem}}@media(max-width:768px){.projects-hero{padding:100px 0 60px}.projects-hero h1{font-size:2.5rem}.projects-main{padding:40px 0 60px}.projects-main .projects-header h2{font-size:2rem;margin-bottom:2rem}.project-list-item{grid-template-columns:1fr;height:auto}.project-list-image{height:250px}.project-list-logo img{width:160px}.project-list-content{padding:1.5rem}.project-list-title{font-size:1.5rem}.project-list-description{font-size:.95rem}}@media(max-width:480px){.projects-hero{padding:80px 0 40px}.projects-hero h1{font-size:2rem}.projects-hero p{font-size:1rem}.projects-main .projects-header h2{font-size:1.75rem}.projects-list{gap:2rem}.project-list-image{height:200px}.project-list-logo img{width:140px}.project-list-content{padding:1.25rem}.project-list-title{font-size:1.35rem}.project-list-arrow{font-size:1.5rem}.project-list-description{font-size:.9rem;margin-bottom:1rem}.project-list-tags .tag{font-size:.75rem;padding:.4rem .8rem}}@media(max-width:768px){.team-member{flex-basis:100%;max-width:400px;margin:0 auto}.hero-image{height:300px}}@media(max-width:768px){.contact-hero,.about-hero{padding:40px 0}.contact-title,.about-title{font-size:2.5rem}.contact-form-container{padding:25px}.form-row{grid-template-columns:1fr;gap:15px}.hero-content{grid-template-columns:1fr;gap:40px}.hero-info{padding-right:0;text-align:center}.contact-info{justify-items:center;text-align:left;max-width:300px;margin:30px auto 0}}.cookie-banner[data-astro-cid-garwan2p]{position:fixed;bottom:0;left:0;width:100%;background:#fff;box-shadow:0 -4px 20px #0000001a;z-index:9999;padding:20px;transform:translateY(0);transition:transform .3s ease-in-out;border-top:1px solid #f0f0f0}.cookie-banner[data-astro-cid-garwan2p].hidden{transform:translateY(100%)}.cookie-content[data-astro-cid-garwan2p]{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:15px}@media(min-width:768px){.cookie-content[data-astro-cid-garwan2p]{flex-direction:row;align-items:center;justify-content:space-between}}h3[data-astro-cid-garwan2p]{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:0}p[data-astro-cid-garwan2p]{font-size:.9rem;color:#666;margin:0;line-height:1.5;max-width:800px}.cookie-actions[data-astro-cid-garwan2p]{display:flex;gap:10px;flex-shrink:0}button[data-astro-cid-garwan2p]{padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-reject[data-astro-cid-garwan2p]{background:transparent;border:1px solid #ddd;color:#666}.btn-reject[data-astro-cid-garwan2p]:hover{background:#f5f5f5;border-color:#ccc;color:#333}.btn-accept[data-astro-cid-garwan2p]{background:var(--vibrant-emerald, #03935c);border:1px solid var(--vibrant-emerald, #03935c);color:#fff}.btn-accept[data-astro-cid-garwan2p]:hover{background:var(--deep-forest, #085d3e);border-color:var(--deep-forest, #085d3e)}
