.dropdown-icon{display:inline-block;height:10px;position:relative;width:10px}.dropdown-icon:after,.dropdown-icon:before{background-color:currentColor;content:"";height:2px;position:absolute;transition:transform .3s ease;width:8px}.dropdown-icon:before{left:0;transform:rotate(45deg)}.dropdown-icon:after{left:4px}.dropdown-icon.open:before,.dropdown-icon:after{transform:rotate(-45deg)}.dropdown-icon.open:after{transform:rotate(45deg)}.dropdown-menu{border-radius:5px;box-shadow:0 5px 15px #0000001a;left:0;padding:10px 0;top:calc(100% + 2px);transition:opacity .3s ease,transform .3s ease,visibility .3s ease;width:220px}.dropdown-menu li{margin:0}.dropdown-link{display:block;padding:10px 20px;transition:background-color .3s ease,color .3s ease}.navbar{background-color:#fff;box-shadow:0 2px 10px #0000001a;height:80px;left:0;position:fixed;top:0;transition:all .5s cubic-bezier(.25,1,.5,1);width:100%;z-index:1003}.navbar-scrolled{border-radius:15px;box-shadow:0 5px 20px #00000026;height:60px;left:24px;right:24px;top:12px;width:calc(100% - 48px)}.navbar-container{align-items:center;display:flex;height:100%;justify-content:space-between;padding:0 20px}.navbar-scrolled .navbar-container{padding:0 20px}.navbar-logo{align-items:center;color:#212121;display:flex;text-decoration:none}.navbar-logo img{height:40px;margin-right:10px;transition:all .3s ease}.navbar-scrolled .navbar-logo img{height:32px}.navbar-title{display:flex;flex-direction:column}.navbar-name{color:#1976d2;font-size:1.2rem;font-weight:700}.navbar-subtitle{color:#333;font-size:.8rem}.navbar-toggle{cursor:pointer;display:none;position:relative;top:0;z-index:1001}.hamburger{height:20px;position:relative;width:30px}.hamburger span{background-color:#1976d2;border-radius:2px;display:block;height:3px;position:absolute;transition:all .3s ease;width:100%}.hamburger span:first-child{top:0}.hamburger span:nth-child(2){top:9px}.hamburger span:nth-child(3){top:18px}.hamburger.open span:first-child{top:9px;transform:rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){top:9px;transform:rotate(-45deg)}.navbar-overlay{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;width:100%;z-index:1000}.navbar-overlay.open{opacity:1;visibility:visible}.navbar-menu{display:flex;list-style:none;margin:0;padding:0}.navbar-item{margin:0 15px}.navbar-link{align-items:center;color:#212121;display:flex;font-size:1rem;font-weight:500;height:24px;padding:5px 0;position:relative;text-decoration:none;transition:color .3s ease}.navbar-link:after{background-color:#1976d2;bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.navbar-link.active,.navbar-link:hover{color:#1976d2}.navbar-link.active:after,.navbar-link:hover:after{width:100%}.navbar-contact,.navbar-contact-link{align-items:center;display:flex}.navbar-contact-link{color:#1976d2;font-size:.9rem;font-weight:500;text-decoration:none}.phone-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:16px;margin-right:5px;width:16px}@media screen and (max-width:965px){.navbar-subtitle{display:none}}@media screen and (max-width:835px){.navbar{position:fixed}.navbar,.navbar-scrolled{border-radius:0;height:60px;left:0;top:0;width:100%}.navbar-scrolled{box-shadow:0 2px 10px #0000001a;right:0}.navbar-toggle{display:block}.hide-mobile{display:none}.navbar-menu{align-items:flex-start;background-color:#fff;box-shadow:5px 0 15px #00000026;flex-direction:column;height:100vh;left:-280px;overflow-y:auto;padding-top:60px;position:fixed;top:0;transition:transform .3s ease;width:280px;z-index:1002}.navbar-menu.open{transform:translateX(280px)}.navbar-item{border-bottom:1px solid #f5f5f5;margin:0;text-align:left;width:100%}.navbar-item:last-child{border-bottom:none}.navbar-menu.open .navbar-item{opacity:1;transform:translateY(0)}.navbar-link{font-size:1.1rem;height:auto;justify-content:flex-start;padding:15px 20px;width:100%}.navbar-link.active{background-color:#f5f5f5;border-left:4px solid #1976d2;color:#1976d2}.navbar-link.active:after{display:none}.dropdown-menu{border-radius:0;box-shadow:none;max-height:0;overflow:hidden;padding:0;position:static;transform:none;transition:max-height .3s ease;width:100%}.dropdown-menu.open{margin:0;max-height:300px;opacity:1;padding:0;visibility:visible}.dropdown-link{background-color:#f9f9f9;padding:12px 0;text-align:center}.dropdown-link.active{background-color:#e9f3ff}}.navbar-item.dropdown{position:relative}.dropdown-toggle{align-items:center;display:flex}.dropdown-icon{align-items:center;display:inline-flex;font-size:.75rem;height:100%;margin-left:5px;transition:transform .3s ease}.dropdown-icon.open{transform:rotate(180deg)}.dropdown-menu{background-color:#fff;border:1px solid #00000014;border-radius:8px;box-shadow:0 8px 30px #00000026;left:-20px;margin-top:15px;opacity:0;overflow:hidden;padding:0;position:absolute;top:100%;transform:translateY(10px);transition:opacity .25s ease,transform .25s ease,visibility .25s;visibility:hidden;width:240px;z-index:100}.dropdown-menu.open{opacity:1;transform:translateY(0);visibility:visible}.dropdown-menu:before{border-bottom:8px solid #fff;border-left:8px solid #0000;border-right:8px solid #0000;content:"";height:0;left:40px;position:absolute;top:-8px;width:0;z-index:1001}.dropdown-menu li{margin:0!important;padding:0!important;width:100%}.dropdown-link{align-items:center;box-sizing:border-box;color:#212121;display:flex;font-size:.95rem;padding:14px 16px;text-decoration:none;transition:background-color .2s ease,color .2s ease;width:100%}.dropdown-link i{color:#1976d2;margin-right:10px;text-align:center;width:20px}.dropdown-link.active,.dropdown-link:hover{background-color:#f8f9ff;color:#1976d2}.dropdown-link.active{position:relative}.dropdown-link.active:before{background-color:#1976d2;bottom:0;content:"";display:block;left:0;position:absolute;top:0;width:3px}@media screen and (max-width:768px){.navbar-item.dropdown{width:100%}.dropdown-toggle{justify-content:space-between;padding-right:20px}.dropdown-menu{background-color:#f8f9ff;border:1px solid #0000000d;border-left:none;border-right:none;box-shadow:none;margin-top:0;max-height:0;opacity:1;overflow:hidden;padding:0;position:static;transform:none;transition:max-height .3s ease,visibility .3s ease;visibility:hidden;width:100%}.dropdown-menu:before{display:none}.dropdown-menu.open{max-height:500px;visibility:visible}.dropdown-link{justify-content:flex-start;padding:12px 20px 12px 40px;text-align:left}.dropdown-link.active:before{display:none}}.footer{background-color:#f5f5f5;color:#333;padding:60px 0 30px}.footer-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(4,1fr);margin-bottom:40px}.footer-info{grid-column:span 1}.footer-logo{align-items:center;color:#212121;display:flex;margin-bottom:20px;text-decoration:none}.footer-logo img{height:40px;margin-right:10px}.footer-title{display:flex;flex-direction:column}.footer-name{color:#1976d2;font-size:1.2rem;font-weight:700}.footer-subtitle{color:#333;font-size:.8rem}.footer-description{color:#666;font-size:.9rem;line-height:1.6}.footer-heading{color:#212121;font-size:1.1rem;font-weight:600;margin-bottom:20px;padding-bottom:10px;position:relative}.footer-heading:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:40px}.footer-menu{list-style:none;margin:0;padding:0}.footer-item{margin-bottom:10px}.footer-link{color:#666;font-size:.9rem;text-decoration:none;transition:color .3s ease}.footer-link:hover{color:#1976d2}.footer-contact-list{list-style:none;margin:0;padding:0}.footer-contact-item{display:flex;margin-bottom:15px}.footer-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;margin-right:10px;width:20px}.location-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231976D2'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}.footer-contact-item p{color:#666;font-size:.9rem;line-height:1.6;margin:0}.footer-contact-link{color:#666;text-decoration:none;transition:color .3s ease}.footer-contact-link:hover{color:#1976d2}.footer-bottom{align-items:center;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;padding-top:20px}.footer-copyright p{color:#777;font-size:.85rem;margin:0}.footer-legal{align-items:center;display:flex}.footer-legal-link{color:#777;font-size:.85rem;text-decoration:none;transition:color .3s ease}.footer-legal-link:hover{color:#1976d2}.footer-separator{color:#ccc;margin:0 10px}@media screen and (max-width:992px){.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-info{grid-column:span 2}}@media screen and (max-width:768px){.footer{padding:40px 0 20px}.footer-grid{gap:20px;grid-template-columns:1fr}.footer-info{grid-column:span 1}.footer-bottom{align-items:center;flex-direction:column}.footer-copyright{margin-bottom:10px;text-align:center}.footer-legal{flex-wrap:wrap;justify-content:center}.footer-legal-link{margin:5px 10px}.footer-separator{display:none}}.scroll-top-button{align-items:center;background-color:#1976d2;border:none;border-radius:50%;bottom:20px;box-shadow:0 4px 12px #00000014;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;opacity:.9;position:fixed;right:20px;transition:all .3s ease;width:50px;z-index:1000}.scroll-top-button:focus,.scroll-top-button:hover{background-color:#1565c0;box-shadow:0 8px 18px #0000001f;opacity:1;transform:translateY(-5px)}@media (min-width:768px){.scroll-top-button{display:none}}.scroll-top-button{animation:fadeIn .3s ease-in-out}.layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;margin-bottom:0;padding-top:80px}@media screen and (max-width:768px){.main-content{padding-top:60px}}.animated-text{overflow:hidden}.animated-letter{display:inline-block;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease;transition-delay:0s;transition-delay:var(--animation-delay,0s)}.animated-text.animate .animated-letter{opacity:1;transform:translateY(0)}.animated-element{opacity:0;transition-delay:0s;transition-delay:var(--animation-delay,0s);transition-duration:.5s;transition-duration:var(--animation-duration,.5s);transition-property:transform,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.animated-element.fade-in{opacity:0}.animated-element.fade-in.animate{opacity:1}.animated-element.slide-up{opacity:0;transform:translateY(30px)}.animated-element.slide-up.animate{opacity:1;transform:translateY(0)}.animated-element.slide-right{opacity:0;transform:translateX(-30px)}.animated-element.slide-right.animate{opacity:1;transform:translateX(0)}.animated-element.slide-left{opacity:0;transform:translateX(30px)}.animated-element.slide-left.animate{opacity:1;transform:translateX(0)}.animated-element.zoom-in{opacity:0;transform:scale(.95)}.animated-element.zoom-in.animate{opacity:1;transform:scale(1)}.hero{background-color:#fff;overflow:hidden;padding:120px 0 80px;position:relative}.hero-container{align-items:center;display:flex;justify-content:space-between;position:relative;z-index:1}.hero-content{padding-right:40px;width:55%}.hero-title{color:#1976d2;font-size:2.8rem;font-weight:700;line-height:1.2;margin-bottom:15px}.hero-headings{width:100%}.hero-subtitle{color:#1976d2;font-size:1.5rem;font-weight:500;margin-bottom:10px}.hero-subheading{color:#212121;font-size:1.3rem;font-weight:500;margin-bottom:20px}.hero-description{color:#555;font-size:1.1rem;line-height:1.7;margin-bottom:30px}.hero-buttons{display:flex;gap:15px}.hero-btn{min-width:180px;text-align:center}.hero-slider-container{bottom:0;width:45%}.hero-slider,.hero-slider-container{height:100%;position:absolute;right:0;top:0}.hero-slider{overflow:hidden;width:100%}.hero-slider-overlay{background:linear-gradient(90deg,#fff 0,#fff0);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:30%;z-index:2}.hero-slider-slides{height:100%;position:relative;width:100%}.hero-slider-slide{background-position:50%;background-size:cover;height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity 1.5s ease;width:100%;z-index:1}.hero-slider-slide.active{opacity:1}.hero-slider-indicators{bottom:20px;display:flex;gap:10px;position:absolute;right:20px;z-index:3}.hero-slider-indicator{background-color:#ffffff80;border:none;border-radius:50%;cursor:pointer;height:12px;transition:background-color .3s ease,transform .3s ease;width:12px}.hero-slider-indicator.active{background-color:#1976d2;transform:scale(1.2)}@media screen and (max-width:992px){.hero{padding:100px 0 400px}.hero-container{flex-direction:column}.hero-content{margin-bottom:40px;padding-right:0;text-align:center;width:100%}.hero-title{font-size:2.2rem;text-align:center}.hero-headings,.hero-subtitle{display:block;text-align:center}.hero-subtitle{font-size:1.3rem;width:100%}.hero-subheading{display:block;font-size:1.1rem;text-align:center;width:100%}.hero-description{font-size:1rem;text-align:center}.hero-buttons{justify-content:center}.hero-slider-container{bottom:0;height:350px;left:0;position:absolute;top:auto;width:100%}.hero-slider{border-radius:0;height:100%;left:0;position:absolute;top:0;width:100%}.hero-slider-overlay{display:none}}@media screen and (max-width:768px){.hero{padding:80px 0 300px}.hero-title{font-size:1.8rem}.hero-subtitle{font-size:1.1rem}.hero-slider-container{height:250px}.hero-buttons{flex-direction:column;gap:10px}.hero-btn{width:100%}}.service-card-img{border-radius:8px 8px 0 0;height:200px;margin:0 0 20px;overflow:hidden;position:relative}.service-card-img img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.service-card:hover .service-card-img img{transform:scale(1.05)}.service-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0;position:relative;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{box-shadow:0 15px 30px #0000001a;transform:translateY(-10px)}.service-card-category{border-bottom-left-radius:10px;color:#fff;font-size:.8rem;font-weight:500;padding:5px 15px;position:absolute;right:0;top:0;z-index:10}.service-card-category.personal,.service-card-category.studio{background-color:#1976d2}.service-card-icon{align-items:center;color:#1976d2;display:flex;font-size:2rem;justify-content:flex-start;margin-bottom:15px;margin-top:10px;padding:0 30px}.service-card-title{color:#212121;font-size:1.3rem;font-weight:600;margin:0 0 15px;padding:0 30px}.service-card-description{color:#555;flex:1 1;font-size:.95rem;line-height:1.6;margin-bottom:20px;padding:0 30px}.service-card-button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:auto;padding:5px 30px 30px;text-align:left;transition:color .3s ease}.service-card-button:hover{color:#1565c0}.service-card-button:after{content:" \2192";display:inline-block;transition:transform .3s ease}.service-card-button:hover:after{transform:translateX(3px)}.services{background-color:#f8f9ff;overflow:hidden;position:relative}.services:before{border-radius:50%;bottom:-50px;height:200px;left:-50px;width:200px}.services:after,.services:before{background-color:#1976d2;content:"";opacity:.05;position:absolute;z-index:0}.services:after{border-radius:20px;height:150px;right:-50px;top:50px;transform:rotate(45deg);width:150px}.section-header{margin-bottom:50px;position:relative;z-index:1}.section-title{color:#212121;display:inline-block;font-size:2.2rem;margin-bottom:15px;position:relative}.section-title:after{background-color:#1976d2;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.section-subtitle{color:#555;font-size:1.1rem;margin:0 auto;max-width:800px}.services-categories{margin-bottom:40px;position:relative;z-index:1}.services-category{margin-bottom:40px}.services-category-title{align-items:center;color:#212121;display:flex;font-size:1.5rem;margin-bottom:25px}.services-category-icon{font-size:1.8rem;margin-right:15px}.services-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(3,1fr)}.services-grid .service-card{padding:0}.services-link-container{text-align:center}.services-link{font-weight:500;padding:12px 30px}@media screen and (max-width:1200px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:992px){.section-title{font-size:2rem}.section-subtitle{font-size:1rem}}@media screen and (max-width:768px){.services-grid{gap:20px;grid-template-columns:1fr}.services-category-title{font-size:1.3rem}.section-title{font-size:1.8rem}.section-header{margin-bottom:30px}}.expertise-card-link-wrapper{color:inherit;display:block;height:100%;text-decoration:none;transition:transform .3s ease}.expertise-card-link-wrapper:hover{transform:translateY(-10px)}.expertise-card{background-color:#fff;border-radius:15px;box-shadow:0 5px 20px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:box-shadow .3s ease;z-index:1}.expertise-card-link-wrapper:hover .expertise-card{box-shadow:0 15px 30px #0000001a}.expertise-card:before{background-color:#1976d2;content:"";height:5px;left:0;position:absolute;top:0;width:100%;z-index:2}.expertise-img{height:200px;margin:0 auto;overflow:hidden;position:relative;width:100%;z-index:3}.expertise-image{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.expertise-card-link-wrapper:hover .expertise-image{transform:scale(1.05)}.expertise-img-civile-edilizia,.expertise-img-idraulica,.expertise-img-infrastrutture{border-top:4px solid #1976d2}.expertise-content{display:flex;flex:1 1;flex-direction:column;padding:0 25px 25px}.expertise-title{color:#212121;font-size:1.3rem;font-weight:600;margin-bottom:15px;text-align:center}.expertise-description{color:#555;font-size:.95rem;line-height:1.6;margin-bottom:20px;text-align:center}.expertise-list{flex:1 1;list-style-type:none;margin:0 0 20px;padding:0}.expertise-item{color:#333;font-size:.9rem;margin-bottom:10px;padding-left:25px;position:relative}.expertise-item:before{color:#1976d2;content:"✓";font-weight:700;left:0;position:absolute;top:0}.expertise-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:30px}@media screen and (max-width:992px){.expertise-grid{grid-template-columns:repeat(2,1fr)}.expertise-title{font-size:1.2rem}.expertise-description{font-size:.9rem}}@media screen and (max-width:768px){.expertise-grid{grid-template-columns:1fr}.expertise-card{margin:0 auto;max-width:450px}.expertise-img{height:180px}}.expertise{background-color:#fff;position:relative}.expertise .expertise-grid{margin-top:30px}.project-image-container{background-color:#f5f5f5;border-radius:8px;height:0;overflow:hidden;padding-bottom:66.67%;position:relative;width:100%}.project-image{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform .5s ease;width:100%}.project-image-container:hover .project-image{transform:scale(1.05)}.project-image-placeholder{align-items:center;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:absolute;text-align:center;top:0;width:100%}.project-image-icon{font-size:3rem;margin-bottom:10px}.project-image-category{font-size:1.2rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}.project-image-loader{align-items:center;background-color:#f5f5f5;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.project-image-loader:after{animation:spin 1s ease-in-out infinite;border:2px solid #e0e0e0;border-radius:50%;border-top-color:#1976d2;content:"";height:30px;width:30px}.project-image-container.loading .project-image{opacity:0}.project-image-container.loaded .project-image-loader{display:none}@media screen and (max-width:768px){.project-image-icon{font-size:2.5rem}.project-image-category{font-size:1rem}}.project-placeholder-graphic{align-items:center;border-radius:8px;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.project-placeholder-graphic-content{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:20px;text-align:center;z-index:1}.project-placeholder-graphic-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:28px;height:60px;justify-content:center;margin-bottom:15px;width:60px}.project-placeholder-graphic-title{color:#333;font-size:1.5rem;margin:10px 0}.project-placeholder-graphic-category{border-radius:4px;color:#fff;font-size:.9rem;font-weight:600;margin-top:10px;padding:5px 14px}.project-placeholder-graphic-text{color:#666;font-size:.9rem;line-height:1.5;margin-top:15px}.project-placeholder-graphic-decoration{border-radius:10px;position:absolute}.card-variant .project-placeholder-graphic-icon{font-size:24px;height:50px;width:50px}.card-variant .project-placeholder-graphic-category{font-size:.75rem;padding:4px 12px}@media screen and (max-width:768px){.project-placeholder-graphic-icon{font-size:24px;height:50px;width:50px}.project-placeholder-graphic-title{font-size:1.2rem}.project-placeholder-graphic-category,.project-placeholder-graphic-text{font-size:.8rem}}.project-card-link-wrapper{color:inherit;display:block;height:100%;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}.project-card-link-wrapper:hover{transform:translateY(-10px)}.project-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:box-shadow .3s ease}.project-card-link-wrapper:hover .project-card{box-shadow:0 15px 30px #0000001a}.project-card-image{height:0;overflow:hidden;padding-top:60%;position:relative;width:100%}.project-image-wrapper{overflow:hidden}.project-card-image-content,.project-image-wrapper{height:100%;left:0;position:absolute;top:0;width:100%}.project-card-image img{height:100%;object-fit:cover;width:100%}.project-card-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:5px 12px;position:absolute;right:15px;top:15px;z-index:2}.project-card-placeholder-wrapper{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.project-card-placeholder-wrapper .project-placeholder-graphic{height:100%}.project-card-badge.personal,.project-card-badge.studio{background-color:#1976d2}.project-card-content{display:flex;flex:1 1;flex-direction:column;padding:20px}.project-card-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.project-card-category{border-radius:4px;color:#fff;display:inline-block;font-size:.7rem;font-weight:500;padding:4px 10px}.project-card-category.infrastrutture{background-color:#0672b9}.project-card-category.idraulica{background-color:#038c73}.project-card-category.civile-edilizia{background-color:#045d9f}.project-card-year{color:#777;font-size:.85rem;font-weight:500}.project-card-title{color:#212121;font-size:1.1rem;font-weight:600;line-height:1.4;margin-bottom:12px;min-height:3em}.project-card-description{color:#555;flex:1 1;font-size:.85rem;line-height:1.6;margin-bottom:15px}.project-card-details{background-color:#f8f9ff;border-radius:6px;margin-bottom:15px;padding:12px}.project-card-detail{align-items:flex-start;display:flex;font-size:.8rem;margin-bottom:6px}.project-card-detail:last-child{margin-bottom:0}.project-card-detail-label{color:#333;font-weight:600;min-width:60px}.project-card-detail-value{color:#555;flex:1 1}.project-card-link{align-items:center;color:#1976d2;display:inline-flex;font-size:.85rem;font-weight:500;margin-top:auto;text-decoration:none;transition:color .3s ease}.project-card-link-arrow{margin-left:5px;transition:transform .3s ease}.project-card-link:hover{color:#1565c0}.project-card-link:hover .project-card-link-arrow{transform:translateX(3px)}.project-card-placeholder{align-items:center;display:flex;height:100%;justify-content:center;left:0;overflow:hidden;position:absolute;top:0;width:100%}.project-card-placeholder-content{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:15px;text-align:center;z-index:1}.project-card-placeholder-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:24px;height:50px;justify-content:center;margin-bottom:10px;width:50px}.project-card-placeholder-category{border-radius:4px;color:#fff;font-size:12px;font-weight:600;margin-top:5px;padding:4px 12px}.project-card .project-placeholder-decoration{border-radius:10px;position:absolute}@media screen and (max-width:768px){.project-card-title{font-size:1rem;min-height:auto}.project-card-description{font-size:.8rem}.project-card-content{padding:15px}}.featured-project-card-custom{height:100%}.featured-projects{background-color:#f8f9ff;position:relative}.featured-projects-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:30px}.featured-project-card-wrapper{height:100%}.featured-project-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.featured-project-card:hover{box-shadow:0 15px 30px #0000001a;transform:translateY(-10px)}.featured-project-image{height:0;overflow:hidden;padding-top:60%;position:relative;width:100%}.featured-project-image img{height:100%;left:0;object-fit:cover;position:absolute;top:0;transition:transform .5s ease;width:100%}.featured-project-card:hover .featured-project-image img{transform:scale(1.05)}.featured-project-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:5px 12px;position:absolute;right:15px;top:15px;z-index:2}.featured-project-badge.personal,.featured-project-badge.studio{background-color:#1976d2}.featured-project-content{display:flex;flex:1 1;flex-direction:column;padding:25px}.featured-project-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.featured-project-category{border-radius:4px;color:#fff;display:inline-block;font-size:.8rem;font-weight:500;padding:4px 12px}.featured-project-category.infrastrutture{background-color:#0672b9}.featured-project-category.idraulica{background-color:#038c73}.featured-project-category.civile-edilizia{background-color:#045d9f}.featured-project-year{color:#777;font-size:.9rem;font-weight:500}.featured-project-title{color:#212121;font-size:1.2rem;font-weight:600;line-height:1.4;margin-bottom:15px}.featured-project-description{color:#555;flex:1 1;font-size:.9rem;line-height:1.6;margin-bottom:20px}.featured-project-details{background-color:#f8f9ff;border-radius:8px;margin-bottom:20px;padding:15px}.featured-project-detail{align-items:flex-start;display:flex;font-size:.85rem;margin-bottom:8px}.featured-project-detail:last-child{margin-bottom:0}.featured-project-detail-label{color:#333;font-weight:600;min-width:70px}.featured-project-detail-value{color:#555;flex:1 1}.featured-project-link{align-items:center;align-self:center;background-color:initial;border:2px solid #1976d2;border-radius:30px;color:#1976d2;display:inline-flex;font-size:.95rem;font-weight:500;justify-content:center;margin-top:auto;padding:10px 25px;text-align:center;text-decoration:none;transition:all .3s ease}.featured-project-link:hover{background-color:#1976d2;color:#fff}.featured-project-link i{font-size:.85rem;margin-left:8px;transition:transform .3s ease}.featured-project-link:hover i{transform:translateX(4px)}.featured-projects-action{margin-top:40px;text-align:center}@media screen and (max-width:1200px){.featured-projects-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:768px){.featured-projects-grid{grid-template-columns:1fr}.featured-project-card{margin:0 auto;max-width:450px}.featured-project-title{font-size:1.1rem}.featured-project-description{font-size:.85rem}}.cta{background-color:#fff;overflow:hidden;padding:80px 0;position:relative}.cta:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.cta-container{align-items:center;display:flex;justify-content:space-between;position:relative;z-index:1}.cta-content{padding-right:50px;width:50%}.cta-title{color:#212121;font-size:2.2rem;font-weight:700;margin-bottom:20px;padding-bottom:15px;position:relative}.cta-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:80px}.cta-text{color:#555;font-size:1.1rem;line-height:1.7;margin-bottom:30px}.cta-contacts{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px}.cta-contact-item{align-items:center;display:flex}.cta-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:24px;margin-right:10px;width:24px}.cta-contact-link{color:#1976d2;font-size:1rem;font-weight:500;text-decoration:none;transition:color .3s ease}.cta-contact-link:hover{color:#1565c0}.cta-button{font-size:1rem;padding:12px 30px}.cta-image{min-width:360px;position:relative;width:45%}.cta-image-shape{background-color:#1976d2;border-radius:20px;height:90%;left:20px;opacity:.1;position:absolute;top:20px;width:90%;z-index:0}.cta-image-content{background-color:#fff;border:1px solid #00000008;border-radius:15px;box-shadow:0 10px 30px #00000014;padding:40px 30px;position:relative;z-index:1}.cta-image-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:25px;padding-bottom:12px;position:relative;text-align:center}.cta-image-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:50px}.cta-services-list{list-style:none;margin:0 0 30px;padding:0}.cta-services-item{align-items:flex-start;color:#444;display:flex;font-size:1.05rem;font-weight:500;line-height:1.5;margin-bottom:18px}.cta-services-icon{align-items:center;background-color:#e6e6ff;border-radius:50%;box-shadow:0 2px 5px #0605ff26;color:#1976d2;display:inline-block;display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:24px;justify-content:center;margin-right:14px;width:24px}.cta-services-link{border-top:1px solid #e0e0e0;color:#1976d2;display:inline-block;font-weight:500;padding:12px 0;text-align:center;text-decoration:none;transition:color .3s ease,background-color .3s ease;width:100%}.cta-services-link-arrow{display:inline-block;margin-left:5px;transition:transform .3s ease}.cta-services-link:hover{background-color:#f8f9ff;color:#1565c0}.cta-services-link:hover .cta-services-link-arrow{transform:translateX(5px)}@media screen and (max-width:992px){.cta{padding:60px 0}.cta-container{flex-direction:column}.cta-content{margin-bottom:40px;padding-right:0;text-align:center;width:100%}.cta-title:after{left:50%;transform:translateX(-50%)}.cta-contacts{justify-content:center}.cta-image{max-width:550px;min-width:auto;width:100%}.cta-image-content{padding:35px 30px}}@media screen and (max-width:768px){.cta{padding:50px 0}.cta-title{font-size:1.8rem}.cta-text{font-size:1rem}.cta-contact-item{justify-content:center;width:100%}.cta-image-title{font-size:1.4rem;margin-bottom:25px}.cta-services-item{font-size:1rem;margin-bottom:16px}.cta-services-icon{height:22px;width:22px}}.last-updated{border-top:1px solid #e0e0e0;color:#777;font-size:.8rem;margin-top:30px;padding-top:10px}.last-updated-label{font-weight:500}.project-filter{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;margin-bottom:30px;padding:25px}.project-filter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.project-filter-title{color:#212121;font-size:1.3rem;font-weight:600;margin:0}.project-filter-reset{background:none;border:none;color:#1976d2;cursor:pointer;font-size:.9rem;font-weight:500;padding:5px 10px;transition:color .3s ease}.project-filter-reset:hover{color:#1565c0;text-decoration:underline}.project-filter-section{margin-bottom:25px}.project-filter-section:last-child{margin-bottom:0}.project-filter-section-title{color:#333;font-size:1rem;font-weight:600;margin-bottom:15px;padding-bottom:8px;position:relative}.project-filter-section-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:40px}.project-filter-options{display:flex;flex-wrap:wrap;gap:10px}.year-options{max-height:150px;overflow-y:auto;padding-right:5px}.project-filter-option{background:none;border:1px solid #e0e0e0;border-radius:20px;color:#555;cursor:pointer;font-size:.85rem;padding:6px 14px;transition:all .3s ease}.project-filter-option:hover{border-color:#1976d2;color:#1976d2}.project-filter-option.active{background-color:#1976d2;border-color:#1976d2;color:#fff}.project-filter-option.infrastrutture.active{background-color:#0672b9;border-color:#0672b9}.project-filter-option.idraulica.active{background-color:#038c73;border-color:#038c73}.project-filter-option.civile-edilizia.active{background-color:#045d9f;border-color:#045d9f}.project-filter-option.personal.active,.project-filter-option.studio.active{background-color:#1976d2;border-color:#1976d2}.project-filter-count{font-size:.75rem;opacity:.8}.year-options::-webkit-scrollbar{width:5px}.year-options::-webkit-scrollbar-track{background:#f5f5f5;border-radius:10px}.year-options::-webkit-scrollbar-thumb{background:#ccc;border-radius:10px}.year-options::-webkit-scrollbar-thumb:hover{background:#aaa}@media screen and (max-width:768px){.project-filter{padding:20px}.project-filter-header{align-items:flex-start;flex-direction:column}.project-filter-reset{margin-top:10px;padding-left:0}.project-filter-title{font-size:1.2rem}.project-filter-section-title{font-size:.95rem}.project-filter-option{font-size:.8rem;padding:5px 12px}}.project-gallery{margin-bottom:30px}.project-gallery-main{border-radius:10px;box-shadow:0 5px 15px #0000001a;margin-bottom:20px;overflow:hidden;position:relative}.project-gallery-main-image{background-color:#f5f5f5;height:0;padding-bottom:66.67%;position:relative;width:100%}.project-gallery-nav{align-items:center;background-color:#fffc;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#212121;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:40px;z-index:10}.project-gallery-nav:hover{background-color:#fff;box-shadow:0 4px 12px #00000026}.project-gallery-prev{left:15px}.project-gallery-next{right:15px}.project-gallery-thumbnails{display:flex;gap:15px;overflow-x:auto;padding-bottom:10px}.project-gallery-thumbnail{border-radius:5px;box-shadow:0 2px 5px #0000001a;cursor:pointer;flex-shrink:0;height:67px;opacity:.7;overflow:hidden;position:relative;transition:opacity .3s ease,transform .3s ease;width:100px}.project-gallery-thumbnail:after{border:2px solid #0000;border-radius:5px;content:"";height:100%;left:0;position:absolute;top:0;transition:border-color .3s ease;width:100%}.project-gallery-thumbnail:hover{opacity:.9;transform:translateY(-2px)}.project-gallery-thumbnail.active{opacity:1}.project-gallery-thumbnail.active:after{border-color:#1976d2}.project-gallery-thumbnails::-webkit-scrollbar{height:5px}.project-gallery-thumbnails::-webkit-scrollbar-track{background:#f5f5f5;border-radius:10px}.project-gallery-thumbnails::-webkit-scrollbar-thumb{background:#ccc;border-radius:10px}.project-gallery-thumbnails::-webkit-scrollbar-thumb:hover{background:#aaa}@media screen and (max-width:768px){.project-gallery-nav{font-size:1.3rem;height:35px;width:35px}.project-gallery-thumbnail{height:53px;width:80px}}.project-placeholder{border-radius:10px;box-shadow:0 5px 15px #0000000d;height:400px;margin-bottom:30px;overflow:hidden;position:relative;width:100%}.project-placeholder .project-placeholder-graphic{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.project-placeholder .project-placeholder-graphic-content{background-color:#ffffffb3;padding:20px}.project-placeholder .project-placeholder-graphic-icon{font-size:3rem;height:80px;margin-bottom:15px;width:80px}.project-placeholder .project-placeholder-graphic-title{color:#212121;font-size:1.3rem;font-weight:600;line-height:1.4;margin-bottom:10px;max-width:80%}.project-placeholder .project-placeholder-graphic-category{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:500;margin-bottom:20px;padding:5px 15px}.project-placeholder .project-placeholder-graphic-text{color:#555;font-size:.9rem;line-height:1.6;max-width:70%}@media screen and (max-width:768px){.project-placeholder{height:300px}.project-placeholder .project-placeholder-graphic-icon{font-size:2.5rem;height:70px;margin-bottom:10px;width:70px}.project-placeholder .project-placeholder-graphic-title{font-size:1.1rem;max-width:90%}.project-placeholder .project-placeholder-graphic-text{font-size:.85rem;max-width:90%}}.projects-page-header{background-color:#f8f9ff;overflow:hidden;padding:80px 0 60px;position:relative;text-align:center}.projects-page-header:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.projects-page-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px;position:relative;z-index:1}.projects-page-subtitle{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:800px;position:relative;z-index:1}.projects-page-content{padding:60px 0}.projects-page-layout{display:flex;gap:30px;margin-bottom:40px}.projects-page-sidebar{flex-shrink:0;width:300px}.projects-page-main{flex:1 1}.projects-page-results{background-color:#f8f9ff;border-left:3px solid #1976d2;border-radius:10px;color:#555;font-size:.95rem;margin-bottom:25px;padding:15px 20px}.projects-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card-wrapper{height:100%}.projects-page-empty{align-items:center;background-color:#f8f9ff;border-radius:10px;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.projects-page-empty-icon{font-size:3rem;margin-bottom:20px}.projects-page-empty-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.projects-page-empty-text{color:#555;font-size:1rem;margin-bottom:25px;max-width:500px}@media screen and (max-width:992px){.projects-page-layout{flex-direction:column}.projects-page-sidebar{width:100%}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media screen and (max-width:768px){.projects-page-header{padding:60px 0 40px}.projects-page-title{font-size:2rem}.projects-page-subtitle{font-size:1rem}.projects-page-content{padding:40px 0}.projects-grid{grid-template-columns:1fr}}.project-detail-header{background-color:#f8f9ff;overflow:hidden;padding:80px 0 40px;position:relative}.project-detail-breadcrumb{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:30px}.project-detail-breadcrumb-link{color:#555;font-size:.9rem;text-decoration:none;transition:color .3s ease}.project-detail-breadcrumb-link:hover{color:#1976d2}.project-detail-breadcrumb-separator{color:#aaa;font-size:.9rem;margin:0 8px}.project-detail-breadcrumb-current{color:#1976d2;font-size:.9rem;font-weight:500}.project-detail-title{color:#212121;font-size:2.3rem;font-weight:700;line-height:1.3;margin-bottom:20px;max-width:800px}.project-detail-meta{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.project-detail-meta-item{margin-right:15px}.project-detail-category{border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:500;padding:5px 15px}.project-detail-category.infrastrutture{background-color:#0672b9}.project-detail-category.idraulica{background-color:#038c73}.project-detail-category.civile-edilizia{background-color:#045d9f}.project-detail-acquisition-type{border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:500;padding:5px 15px}.project-detail-acquisition-type.personal,.project-detail-acquisition-type.studio{background-color:#1976d2}.project-detail-year{background-color:#fff;border:1px solid #e0e0e0;border-radius:20px;color:#555;display:inline-block;font-size:.85rem;font-weight:500;padding:5px 15px}.project-detail-content{padding:60px 0}.project-detail-layout{display:flex;gap:40px;margin-bottom:40px}.project-detail-main{flex:1 1}.project-detail-sidebar{flex-shrink:0;width:350px}.project-detail-section-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:20px;padding-bottom:10px;position:relative}.project-detail-section-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}.project-detail-description{color:#555;font-size:1rem;line-height:1.8;margin-top:30px}.project-detail-description p{margin-bottom:15px}.project-detail-info-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;margin-bottom:30px;padding:25px}.project-detail-info-title{border-bottom:1px solid #e0e0e0;color:#212121;font-size:1.2rem;font-weight:600;margin-bottom:20px;padding-bottom:10px}.project-detail-info-list{gap:15px}.project-detail-info-item,.project-detail-info-list{display:flex;flex-direction:column}.project-detail-info-label{color:#555;font-size:.85rem;font-weight:600;margin-bottom:5px}.project-detail-info-value{color:#212121;font-size:.95rem}.project-detail-contact-card{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;padding:25px}.project-detail-contact-title{color:#212121;font-size:1.2rem;font-weight:600;margin-bottom:15px}.project-detail-contact-text{color:#555;font-size:.95rem;line-height:1.6;margin-bottom:20px}.project-detail-contact-info{margin-bottom:20px}.project-detail-contact-item{align-items:center;display:flex;margin-bottom:10px}.project-detail-contact-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;margin-right:10px;width:20px}.project-detail-contact-link{color:#1976d2;font-size:.95rem;text-decoration:none;transition:color .3s ease}.project-detail-contact-link:hover{color:#1565c0}.project-detail-contact-btn{text-align:center;width:100%}.project-detail-navigation{display:flex;justify-content:flex-start;margin-bottom:30px}.project-detail-back-btn{align-items:center;display:inline-flex}@media screen and (max-width:992px){.project-detail-layout{flex-direction:column}.project-detail-sidebar{order:-1;width:100%}.project-detail-contact-card,.project-detail-info-card{max-width:600px}}@media screen and (max-width:768px){.project-detail-header{padding:60px 0 30px}.project-detail-title{font-size:1.8rem}.project-detail-content{padding:40px 0}.project-detail-section-title{font-size:1.3rem}.project-detail-contact-title,.project-detail-info-title{font-size:1.1rem}}.studio-history{margin-bottom:60px}.studio-history-title{color:#212121;font-size:2rem;font-weight:700;margin-bottom:30px;padding-bottom:15px;position:relative}.studio-history-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:80px}.studio-history-content{display:flex;gap:40px;margin-bottom:40px}.studio-history-image-container{flex:0 0 40%;position:relative}.studio-history-image-shape{background-color:#1976d2;border-radius:10px;height:100%;left:20px;opacity:.1;position:absolute;top:20px;width:100%;z-index:0}.studio-history-image{border-radius:10px;box-shadow:0 5px 15px #0000001a;height:auto;position:relative;width:100%;z-index:1}.studio-history-text{display:flex;flex:1 1;flex-direction:column;gap:15px}.studio-history-text p{color:#555;font-size:1rem;line-height:1.8;margin:0}.studio-history-mission{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;margin-bottom:40px;padding:30px;position:relative}.studio-history-mission-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.studio-history-mission-text{color:#555;font-size:1.05rem;line-height:1.8}.studio-history-expertise{margin-bottom:40px}.studio-history-expertise-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:25px;padding-bottom:10px;position:relative}.studio-history-expertise-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:60px}.studio-history-expertise-list{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}.studio-history-expertise-item{align-items:flex-start;display:flex}.studio-history-expertise-icon{align-items:center;background-color:#e6e6ff;border-radius:50%;color:#1976d2;display:flex;flex-shrink:0;font-weight:700;height:30px;justify-content:center;margin-right:15px;margin-top:5px;width:30px}.studio-history-expertise-content{flex:1 1}.studio-history-expertise-content h4{color:#212121;font-size:1.1rem;font-weight:600;margin:0 0 10px}.studio-history-expertise-content p{color:#555;font-size:.95rem;line-height:1.6;margin:0}@media screen and (max-width:992px){.studio-history-content{flex-direction:column}.studio-history-image-container{flex:0 0 100%;margin-bottom:20px}.studio-history-expertise-list{gap:20px;grid-template-columns:1fr}}@media screen and (max-width:768px){.studio-history-title{font-size:1.8rem}.studio-history-expertise-title,.studio-history-mission-title{font-size:1.3rem}.studio-history-mission{padding:20px}.studio-history-expertise-content h4,.studio-history-mission-text{font-size:1rem}}.engineer-bio{margin-bottom:60px}.engineer-bio-title{color:#212121;font-size:2rem;font-weight:700;margin-bottom:30px;padding-bottom:15px;position:relative}.engineer-bio-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:80px}.engineer-bio-content{display:flex;gap:40px;margin-bottom:40px}.engineer-bio-image-container{flex:0 0 35%;position:relative}.engineer-bio-image-shape{background-color:#1976d2;border-radius:10px;height:100%;left:20px;opacity:.1;position:absolute;top:20px;width:100%;z-index:0}.engineer-bio-image{border-radius:10px;box-shadow:0 5px 15px #0000001a;height:auto;position:relative;width:100%;z-index:1}.engineer-bio-image-info{background-color:#0605ffcc;border-bottom-left-radius:10px;border-bottom-right-radius:10px;bottom:0;color:#fff;left:0;padding:20px;position:absolute;width:100%;z-index:2}.engineer-bio-image-name{font-size:1.3rem;font-weight:600;margin-bottom:8px}.engineer-bio-image-role{font-size:1rem;opacity:.9}.engineer-bio-text{display:flex;flex:1 1;flex-direction:column;gap:15px}.engineer-bio-text p{color:#555;font-size:1rem;line-height:1.8;margin:0}.engineer-bio-experience{align-items:center;background-color:#f8f9ff;border-left:3px solid #1976d2;border-radius:10px;display:flex;margin-bottom:20px;padding:15px}.engineer-bio-experience-years{color:#1976d2;font-size:2.5rem;font-weight:700;line-height:1;margin-right:15px}.engineer-bio-experience-text{color:#555;font-size:1rem;line-height:1.3}.engineer-bio-section-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:20px;padding-bottom:10px;position:relative}.engineer-bio-section-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:60px}.engineer-bio-education{margin-bottom:40px}.engineer-bio-list{list-style:none;margin:0;padding:0}.engineer-bio-list-item{color:#555;font-size:1rem;line-height:1.6;margin-bottom:15px;padding-left:25px;position:relative}.engineer-bio-list-item:before{color:#1976d2;content:"•";font-size:1.2rem;left:0;position:absolute;top:0}.engineer-bio-specializations{margin-bottom:40px}.engineer-bio-specializations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.engineer-bio-specialization-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;padding:25px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.engineer-bio-specialization-card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.engineer-bio-specialization-icon{align-items:center;border-radius:50%;display:flex;font-size:2rem;height:60px;justify-content:center;margin:0 auto 15px;width:60px}.infrastructure-icon{background-color:#0672b91a;color:#0672b9}.hydraulic-icon{background-color:#038c731a;color:#038c73}.civil-icon{background-color:#045d9f1a;color:#045d9f}.consulting-icon{background-color:#0605ff1a;color:#1976d2}.engineer-bio-specialization-title{color:#212121;font-size:1.1rem;font-weight:600;margin-bottom:10px}.engineer-bio-specialization-desc{color:#555;font-size:.9rem;line-height:1.6}.engineer-bio-services{background-color:#f8f9ff;border-radius:10px;padding:30px;position:relative}.engineer-bio-services-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0}.engineer-bio-services-item{color:#555;font-size:1rem;line-height:1.6;padding-left:25px;position:relative}.engineer-bio-services-item:before{color:#1976d2;content:"✓";font-weight:700;left:0;position:absolute;top:0}@media screen and (max-width:1200px){.engineer-bio-services-list,.engineer-bio-specializations-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:992px){.engineer-bio-content{flex-direction:column}.engineer-bio-image-container{flex:0 0 100%;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:400px}}@media screen and (max-width:768px){.engineer-bio-title{font-size:1.8rem}.engineer-bio-section-title{font-size:1.3rem}.engineer-bio-services-list,.engineer-bio-specializations-grid{grid-template-columns:1fr}.engineer-bio-experience-years{font-size:2rem}}.timeline{margin-bottom:60px}.timeline-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:40px;padding-bottom:10px;position:relative}.timeline-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:60px}.timeline-container{padding:20px 0;position:relative}.timeline-container:after{background-color:#e0e0e0;bottom:0;content:"";left:50%;margin-left:-2px;position:absolute;top:0;width:4px;z-index:-1}.timeline-item-wrapper{margin-bottom:50px;width:100%}.timeline-item{position:relative;width:50%}.timeline-item.left{left:0;padding-right:40px}.timeline-item.right{left:50%;padding-left:40px}.timeline-content{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;padding:20px;position:relative;transition:all .3s ease}.timeline-item.left .timeline-content:after{border-color:#0000 #0000 #0000 #fff;border-style:solid;border-width:10px 0 10px 10px;content:"";position:absolute;right:-10px;top:20px}.timeline-item.right .timeline-content:after{border-color:#0000 #fff #0000 #0000;border-style:solid;border-width:10px 10px 10px 0;content:"";left:-10px;position:absolute;top:20px}.timeline-badge{align-items:center;background-color:#1976d2;border-radius:20px;color:#fff;display:flex;font-size:.9rem;font-weight:600;height:40px;justify-content:center;position:absolute;width:70px;z-index:1}.timeline-item.left .timeline-badge{margin-top:20px;right:-35px;top:100%}.timeline-item.right .timeline-badge{left:-35px;margin-top:20px;top:100%}.timeline-item-title{color:#212121;font-size:1.1rem;font-weight:600;margin-bottom:10px}.timeline-item-description{color:#555;font-size:.95rem;line-height:1.6;margin:0}.timeline-item:hover .timeline-content{box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}@media screen and (max-width:768px){.timeline-container:after{left:31px}.timeline-item{padding-right:20px;width:100%}.timeline-item,.timeline-item.right{left:0;padding-left:70px}.timeline-item.left .timeline-badge,.timeline-item.right .timeline-badge{left:0;margin-top:20px;right:auto;top:100%}.timeline-item.left .timeline-content:after,.timeline-item.right .timeline-content:after{border-color:#0000 #fff #0000 #0000;border-width:10px 10px 10px 0;left:-10px;top:20px}}.team-structure{margin-bottom:60px}.team-structure-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:25px;padding-bottom:10px;position:relative}.team-structure-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:60px}.team-structure-description{margin-bottom:40px}.team-structure-description p{color:#555;font-size:1rem;line-height:1.8;margin:0}.team-structure-org-chart{align-items:center;display:flex;flex-direction:column;margin-bottom:50px;position:relative}.team-structure-org-chart-head,.team-structure-org-chart-main{margin-bottom:20px}.team-structure-org-chart-connector{background-color:#1976d2;height:40px;margin-bottom:20px;width:3px}.team-structure-org-chart-branches{display:flex;height:40px;justify-content:space-around;margin-bottom:20px;max-width:1000px;position:relative;width:100%}.team-structure-org-chart-branch{background-color:#1976d2;height:100%;width:2px}.team-structure-org-chart-branches:before{background-color:#1976d2;content:"";height:2px;left:5%;position:absolute;top:0;width:90%}.team-structure-org-chart-departments{display:flex;gap:30px;justify-content:space-between;max-width:1000px;width:100%}.team-structure-org-chart-box{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #00000014;min-width:250px;padding:20px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.team-structure-org-chart-box:hover{box-shadow:0 10px 25px #0000001f;transform:translateY(-5px)}.team-structure-org-chart-box.primary{background-color:#1976d2;color:#fff}.team-structure-org-chart-box.primary h4{color:#fff}.team-structure-org-chart-box.primary p{color:#ffffffe6}.team-structure-org-chart-box.secondary{background-color:#f8f9ff;border:2px solid #1976d2}.team-structure-org-chart-box.tertiary{background-color:#fff;border:1px solid #e0e0e0;flex:1 1}.team-structure-org-chart-box h4{color:#212121;font-size:1.1rem;font-weight:600;margin:0 0 5px}.team-structure-org-chart-box p{color:#555;font-size:.9rem;margin:0}.team-structure-members{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-bottom:40px}.team-structure-member-wrapper{height:100%}.team-structure-member{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.team-structure-member:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.team-structure-member-image-container{height:200px;overflow:hidden}.team-structure-member-image{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.team-structure-member:hover .team-structure-member-image{transform:scale(1.05)}.team-structure-member-placeholder{align-items:center;background-color:#f8f9ff;display:flex;height:200px;justify-content:center}.team-structure-member-initial{align-items:center;background-color:#1976d2;border-radius:50%;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;width:80px}.team-structure-member-info{display:flex;flex:1 1;flex-direction:column;padding:20px}.team-structure-member-name{color:#212121;font-size:1.2rem;font-weight:600;margin:0 0 5px}.team-structure-member-role{color:#1976d2;font-size:.85rem;font-weight:500;margin-bottom:15px}.team-structure-member-description{color:#555;font-size:.95rem;line-height:1.6;margin:0}.team-structure-tools{background-color:#f8f9ff;border-radius:10px;padding:30px}.team-structure-tools-title{color:#212121;font-size:1.3rem;font-weight:600;margin-bottom:15px}.team-structure-tools-description{color:#555;font-size:1rem;line-height:1.6;margin-bottom:25px}.team-structure-tools-categories{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(3,1fr)}.team-structure-tools-category{background-color:#fff;border-radius:8px;box-shadow:0 3px 10px #0000000d;padding:20px}.team-structure-tools-category-title{border-bottom:1px solid #e0e0e0;color:#212121;font-size:1.1rem;font-weight:600;margin-bottom:15px;padding-bottom:8px}.team-structure-tools-list{list-style:none;margin:0;padding:0}.team-structure-tools-item{color:#555;font-size:.9rem;line-height:1.5;margin-bottom:10px;padding-left:20px;position:relative}.team-structure-tools-item:before{color:#1976d2;content:"•";font-size:1.2rem;left:0;position:absolute;top:0}.team-structure-tools-item:last-child{margin-bottom:0}@media screen and (max-width:1200px){.team-structure-members,.team-structure-tools-categories{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:992px){.team-structure-org-chart-branches{display:none}.team-structure-org-chart-departments{align-items:center;flex-direction:column;gap:20px}.team-structure-org-chart-box.tertiary{max-width:300px;width:100%}}@media screen and (max-width:768px){.team-structure-members,.team-structure-tools-categories{grid-template-columns:1fr}.team-structure-title{font-size:1.3rem}.team-structure-tools-title{font-size:1.2rem}}.about-page-header{background-color:#f8f9ff;overflow:hidden;padding:80px 0 60px;position:relative;text-align:center}.about-page-header:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.about-page-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px;position:relative;z-index:1}.about-page-subtitle{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:800px;position:relative;z-index:1}.about-page-content{padding:60px 0}.about-page-section{margin-bottom:60px}.about-page-section-title{color:#212121;font-size:2rem;font-weight:700;margin-bottom:30px;padding-bottom:15px;position:relative}.about-page-section-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:80px}.about-page-timeline-container{margin-top:40px}.about-page-cta{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;margin-bottom:60px;padding:40px;text-align:center}.about-page-cta-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.about-page-cta-text{color:#555;font-size:1.05rem;line-height:1.7;margin-bottom:25px;margin-left:auto;margin-right:auto;max-width:800px}@media screen and (max-width:992px){.about-page-header{padding:60px 0 40px}.about-page-title{font-size:2.2rem}.about-page-section-title{font-size:1.8rem}.about-page-cta{padding:30px}.about-page-cta-title{font-size:1.3rem}}@media screen and (max-width:768px){.about-page-header{padding:50px 0 30px}.about-page-title{font-size:1.8rem}.about-page-subtitle{font-size:1rem}.about-page-content{padding:40px 0}.about-page-section-title{font-size:1.5rem}.about-page-cta{padding:25px 20px}.about-page-cta-title{font-size:1.2rem}.about-page-cta-text{font-size:1rem}}.form-group{margin-bottom:20px}.form-label{color:#333;display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.required-mark{color:#f44336;margin-left:4px}.form-input,.form-select,.form-textarea{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;font-family:Roboto,Open Sans,sans-serif;font-size:1rem;padding:12px 15px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1976d2;box-shadow:0 0 0 2px #0605ff33;outline:none}.form-textarea{min-height:120px;resize:vertical}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23333'%3E%3Cpath d='m7 10 5 5 5-5z'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:20px;padding-right:40px}.checkbox-group{margin-top:10px}.checkbox-container{align-items:flex-start;display:flex}.form-checkbox{cursor:pointer;margin-right:10px;margin-top:4px}.checkbox-label{color:#333;cursor:pointer;font-size:.9rem}.form-error{color:#f44336;font-size:.85rem;margin-top:5px}.has-error .form-input,.has-error .form-select,.has-error .form-textarea{border-color:#f44336}.has-error .form-label{color:#f44336}.form-row{display:flex;flex-wrap:wrap;margin-left:-10px;margin-right:-10px}.form-col{flex:1 1;padding-left:10px;padding-right:10px}@media screen and (max-width:768px){.form-row{flex-direction:column}.form-col{margin-bottom:10px}}.contact-form-container{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;margin-bottom:30px;padding:30px}.contact-form-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:10px}.contact-form-subtitle{color:#555;font-size:1rem;margin-bottom:25px}.contact-form{display:flex;flex-direction:column;gap:20px}.contact-form-submit{margin-top:10px}.contact-form-button{min-width:200px}.contact-form-privacy-link{color:#1976d2;text-decoration:underline;transition:color .3s ease}.contact-form-privacy-link:hover{color:#1565c0}.contact-form-success{padding:30px 20px;text-align:center}.contact-form-success-icon{align-items:center;background-color:#4caf50;border-radius:50%;color:#fff;display:flex;font-size:2rem;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.contact-form-success-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.contact-form-success-message{color:#555;font-size:1rem;margin-bottom:25px}.contact-form-error{padding:30px 20px;text-align:center}.contact-form-error-icon{align-items:center;background-color:#f44336;border-radius:50%;color:#fff;display:flex;font-size:2rem;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.contact-form-error-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.contact-form-error-message{color:#555;font-size:1rem;margin-bottom:25px}@media screen and (max-width:768px){.contact-form-container{padding:20px}.contact-form-title{font-size:1.3rem}.contact-form-subtitle{font-size:.9rem}}.contact-info-container{background-color:#f8f9ff;border-radius:10px;height:100%;padding:30px}.contact-info-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:25px;padding-bottom:10px;position:relative}.contact-info-title:after{background-color:#1976d2;bottom:0;content:"";height:2px;left:0;position:absolute;width:50px}.contact-info-items{display:flex;flex-direction:column;gap:25px;margin-bottom:30px}.contact-info-item{align-items:flex-start;display:flex}.contact-info-icon{background-color:#0605ff1a;background-position:50%;background-repeat:no-repeat;background-size:20px;border-radius:50%;flex-shrink:0;height:40px;margin-right:15px;width:40px}.address-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231976D2'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}.phone-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231976D2'%3E%3Cpath d='M20 15.5c-1.25 0-2.45-.2-3.57-.57a1.02 1.02 0 0 0-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.59l2.2-2.21a.96.96 0 0 0 .25-1A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1zM19 12h2a9 9 0 0 0-9-9v2c3.87 0 7 3.13 7 7zm-4 0h2c0-2.76-2.24-5-5-5v2c1.66 0 3 1.34 3 3z'/%3E%3C/svg%3E")}.email-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231976D2'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E")}.contact-info-content{flex:1 1}.contact-info-item-title{color:#212121;font-size:1.1rem;font-weight:600;margin:0 0 10px}.contact-info-text{color:#555;font-size:.95rem;line-height:1.6;margin:0 0 10px}.contact-info-link{align-items:center;color:#1976d2;display:inline-flex;font-size:.95rem;text-decoration:none;transition:color .3s ease}.contact-info-link:hover{color:#1565c0;text-decoration:underline}.contact-info-list{list-style:none;margin:0;padding:0}.contact-info-list-item{display:flex;flex-wrap:wrap;font-size:.95rem;margin-bottom:8px}.contact-info-label{color:#555;font-weight:600;margin-right:5px;min-width:60px}.contact-info-value{color:#212121;text-decoration:none;transition:color .3s ease}.contact-info-value:hover{color:#1976d2}.contact-info-hours{border-top:1px solid #e0e0e0;margin-bottom:25px;padding-top:20px}.contact-info-hours-title{color:#212121;font-size:1.1rem;font-weight:600;margin:0 0 15px}.contact-info-hours-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.contact-info-hours-day{display:flex;flex-direction:column}.contact-info-hours-day-name{color:#555;font-size:.9rem;font-weight:600;margin-bottom:5px}.contact-info-hours-time{color:#212121;font-size:.9rem}.contact-info-note{border-top:1px solid #e0e0e0;color:#555;font-size:.9rem;font-style:italic;line-height:1.6;padding-top:20px}@media screen and (max-width:768px){.contact-info-container{padding:20px}.contact-info-title{font-size:1.3rem}.contact-info-item-title{font-size:1rem}.contact-info-hours-grid{gap:10px;grid-template-columns:1fr}.contact-info-hours-day{margin-bottom:10px}}.contact-map-container{margin-bottom:40px}.contact-map-wrapper{border-radius:10px;box-shadow:0 5px 15px #00000014;overflow:hidden;position:relative;width:100%}.contact-map-placeholder{align-items:center;background-color:#f8f9ff;display:flex;height:100%;justify-content:center;width:100%}.contact-map-loader{animation:spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#1976d2;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.contact-map-iframe{height:100%;left:0;position:absolute;top:0;width:100%}.contact-map-overlay{pointer-events:none;position:absolute;right:20px;top:20px;z-index:10}.contact-map-card{background-color:#fff;border-radius:8px;box-shadow:0 5px 15px #0000001a;max-width:300px;padding:20px;pointer-events:auto}.contact-map-title{color:#212121;font-size:1.2rem;font-weight:600;margin-bottom:10px}.contact-map-address{color:#555;font-size:.95rem;line-height:1.6;margin-bottom:15px}.contact-map-directions{background-color:#1976d2;border-radius:4px;color:#fff;display:inline-block;font-size:.9rem;font-weight:500;padding:8px 15px;text-decoration:none;transition:background-color .3s ease}.contact-map-directions:hover{background-color:#1565c0}@media screen and (max-width:768px){.contact-map-overlay{margin-bottom:20px;margin-top:-80px;padding:0 20px;position:relative;right:auto;top:auto}.contact-map-card{margin:0 auto;max-width:100%}}.contact-page-header{background-color:#f8f9ff;overflow:hidden;padding:80px 0 60px;position:relative;text-align:center}.contact-page-header:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.contact-page-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px;position:relative;z-index:1}.contact-page-subtitle{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:800px;position:relative;z-index:1}.contact-page-content{padding:60px 0}.contact-page-layout{display:flex;gap:40px;margin-bottom:50px}.contact-page-main{flex:2 1}.contact-page-sidebar{flex:1 1}.contact-page-section-title{color:#212121;font-size:1.8rem;font-weight:600;margin-bottom:25px;padding-bottom:12px;position:relative}.contact-page-section-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:70px}.contact-page-additional-info{margin-bottom:50px}.contact-page-directions{display:flex;gap:30px}.contact-page-directions-item{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;flex:1 1;padding:25px}.contact-page-directions-title{border-bottom:1px solid #e0e0e0;color:#212121;font-size:1.2rem;font-weight:600;margin-bottom:15px;padding-bottom:10px}.contact-page-directions-text{color:#555;font-size:1rem;line-height:1.6}.contact-page-cta{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;margin-bottom:40px;padding:30px;text-align:center}.contact-page-cta-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.contact-page-cta-text{color:#555;font-size:1.05rem;margin-bottom:20px}.contact-page-cta-phone{border:2px solid #1976d2;border-radius:30px;color:#1976d2;display:inline-block;font-size:1.5rem;font-weight:700;padding:10px 25px;text-decoration:none;transition:all .3s ease}.contact-page-cta-phone:hover{background-color:#1976d2;color:#fff}@media screen and (max-width:992px){.contact-page-layout{flex-direction:column}.contact-page-directions{flex-direction:column;gap:20px}.contact-page-title{font-size:2.2rem}.contact-page-section-title{font-size:1.5rem}.contact-page-cta-title{font-size:1.3rem}}@media screen and (max-width:768px){.contact-page-header{padding:60px 0 40px}.contact-page-title{font-size:1.8rem}.contact-page-subtitle{font-size:1rem}.contact-page-content{padding:40px 0}.contact-page-cta{padding:25px 20px}.contact-page-cta-phone{font-size:1.3rem}}.service-emoji{font-size:2rem;line-height:1}.service-detail-icon .service-emoji{margin-right:15px}.services-expertise-grid{margin-top:30px}.services-page-header{background-color:#f8f9ff;overflow:hidden;padding:80px 0 40px;position:relative;text-align:center}.services-page-header:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.services-page-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px;position:relative;z-index:1}.services-page-subtitle{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto 30px;max-width:800px;position:relative;z-index:1}.services-page-filters-container{align-items:center;display:flex;flex-direction:column;gap:20px;position:relative;z-index:1}.services-page-filters{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.services-page-filters.sectors{margin-top:15px}.services-page-filter{background:none;border:2px solid #1976d2;border-radius:30px;color:#1976d2;cursor:pointer;font-size:.95rem;font-weight:500;padding:8px 20px;transition:all .3s ease}.services-page-filter:hover{background-color:#0605ff1a}.services-page-filter.active{background-color:#1976d2;color:#fff}.services-page-filters.sectors .services-page-filter{border-color:#1976d2;color:#1976d2}.services-page-filters.sectors .services-page-filter:hover{background-color:#0c46a01a}.services-page-filters.sectors .services-page-filter.active{background-color:#1976d2;color:#fff}.services-page-content{padding:60px 0}.services-page-category{margin-bottom:60px}.services-page-category-title{align-items:center;color:#212121;display:flex;font-size:1.8rem;font-weight:600;margin-bottom:15px;position:relative}.services-page-category-icon{background-position:50%;background-repeat:no-repeat;background-size:20px;border-radius:50%;display:inline-block;height:40px;margin-right:15px;width:40px}.studio-icon{background-color:#0605ff1a;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231976D2'%3E%3Cpath d='M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z'/%3E%3C/svg%3E")}.personal-icon{background-color:#0c46a01a;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230C46A0'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E")}.services-page-category-description{color:#555;font-size:1.05rem;margin-bottom:30px;max-width:900px}.services-page-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.service-card-wrapper{height:100%}.services-page-service-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:30px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.services-page-service-card:hover{box-shadow:0 15px 30px #0000001a;transform:translateY(-10px)}.services-page-service-category{border-bottom-left-radius:10px;color:#fff;font-size:.8rem;font-weight:500;padding:5px 15px;position:absolute;right:0;top:0}.services-page-service-category.personal,.services-page-service-category.studio{background-color:#1976d2}.services-page-service-title{color:#212121;font-size:1.3rem;font-weight:600;margin:15px 0;padding-top:10px}.services-page-service-description{color:#555;flex:1 1;font-size:.95rem;line-height:1.6;margin-bottom:20px}.services-page-service-icon{color:#1976d2;font-size:2rem;margin-bottom:15px;margin-top:10px}.services-page-service-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}.services-page-service-button{background:none;border:none;color:#1976d2;cursor:pointer;font-size:.95rem;font-weight:500;padding:5px 0;text-align:left;transition:color .3s ease}.services-page-service-button:hover{color:#1565c0}.services-page-service-link{align-items:center;align-self:flex-start;color:#1976d2;display:inline-flex;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .3s ease}.services-page-service-link:after{content:"→";margin-left:5px;transition:transform .3s ease}.services-page-service-link:hover{color:#1565c0}.services-page-service-link:hover:after{transform:translateX(3px)}.services-page-cta{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;margin-bottom:40px;padding:40px;text-align:center}.services-page-cta-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.services-page-cta-text{color:#555;font-size:1.05rem;margin-bottom:25px;margin-left:auto;margin-right:auto;max-width:700px}.service-detail{padding-top:40px}.service-detail-breadcrumb{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:20px}.service-detail-breadcrumb-link{color:#555;font-size:.9rem;text-decoration:none;transition:color .3s ease}.service-detail-breadcrumb-link:hover{color:#1976d2}.service-detail-breadcrumb-separator{color:#aaa;font-size:.9rem;margin:0 8px}.service-detail-breadcrumb-current{color:#1976d2;font-size:.9rem;font-weight:500}.service-detail-breadcrumb-button{background:none;border:none;cursor:pointer;font-family:inherit;padding:0}.service-detail-back-btn{align-items:center;background:none;border:2px solid #1976d2;border-radius:30px;color:#1976d2;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;margin-bottom:20px;padding:8px 15px;transition:all .3s ease}.service-detail-back-btn:hover{background-color:#0605ff1a}.service-detail-back-btn i{margin-right:8px}.service-detail-category{border-radius:5px;color:#fff;display:inline-block;font-size:.9rem;font-weight:500;margin-bottom:15px;padding:5px 15px}.service-detail-category.personal,.service-detail-category.studio{background-color:#1976d2}.service-detail-title{align-items:center;color:#212121;display:flex;font-size:2.2rem;font-weight:700;margin-bottom:30px}.service-detail-icon{color:#1976d2;font-size:1.8rem;margin-right:15px}.service-detail-image{border-radius:10px;box-shadow:0 5px 15px #0000001a;height:400px;margin-bottom:30px;overflow:hidden;position:relative;width:100%}.service-detail-image img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.service-detail-image:hover img{transform:scale(1.03)}.service-detail-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:2fr 1fr;margin-bottom:40px}.service-detail-description{color:#333}.service-detail-main-description{color:#444;font-size:1.2rem;font-weight:500;line-height:1.6;margin-bottom:30px}.service-detail-subtitle{color:#212121;font-size:1.4rem;font-weight:600;margin-bottom:20px;padding-bottom:10px;position:relative}.service-detail-subtitle:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:50px}.service-detail-long-description{font-size:1.05rem;line-height:1.7;margin-bottom:30px}.service-detail-long-description p{margin-bottom:20px;text-align:justify;white-space:pre-line}.service-detail-sidebar{display:flex;flex-direction:column;gap:30px}.service-detail-benefits{background-color:#f8f9ff;border-radius:10px;box-shadow:0 3px 10px #0000000d;margin-bottom:20px;padding:25px}.service-detail-benefits .service-detail-subtitle{font-size:1.2rem}.service-detail-benefits-list{list-style:none;margin:0;padding:0}.service-detail-benefit-item{display:flex;font-size:1.05rem;margin-bottom:15px}.benefit-icon{color:#1976d2;flex-shrink:0;margin-right:15px}.benefit-text{flex:1 1}.service-detail-info{background-color:#f8f9ff;border-radius:10px;box-shadow:0 3px 10px #0000000d;padding:25px}.service-detail-info .service-detail-subtitle{font-size:1.2rem}.service-detail-info-item{border-bottom:1px solid #e0e0f0;margin-bottom:15px;padding-bottom:15px}.service-detail-info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-label{color:#555;font-weight:600;margin-bottom:5px}.info-value{color:#333}.contact-box{background-color:#1976d2;border-radius:10px;box-shadow:0 5px 15px #0605ff33;color:#fff;padding:25px;text-align:center}.contact-box h3{font-size:1.2rem;font-weight:600;margin-bottom:10px}.contact-box p{margin-bottom:20px;opacity:.9}.contact-box .service-detail-cta-inline{display:flex;gap:15px;justify-content:center;margin-top:0}.contact-box .btn-outline{background:#0000;border:2px solid #fff;color:#fff}.service-detail-cta-inline{display:flex;gap:15px;margin-top:30px}.btn-outline{background:#0000;border-radius:5px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-outline:hover{background-color:#0605ff1a}.btn-secondary{background-color:#fff;border:none;border-radius:5px;color:#1976d2;cursor:pointer;display:inline-block;font-weight:500;padding:10px 20px;text-decoration:none;transition:all .3s ease}.btn-secondary:hover{background-color:#f5f5f5;transform:translateY(-2px)}@media screen and (max-width:1200px){.service-detail-content{grid-template-columns:3fr 2fr}.service-detail-image{height:350px}}@media screen and (max-width:992px){.service-detail-content{gap:30px;grid-template-columns:1fr}.service-detail-image{height:300px}.service-detail-sidebar{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.contact-box{grid-column:span 2}}@media screen and (max-width:768px){.service-detail-title{align-items:flex-start;flex-direction:column;font-size:1.8rem}.service-detail-image{height:250px}.service-detail-icon{margin-bottom:10px}.service-detail-sidebar{grid-template-columns:1fr}.contact-box{grid-column:span 1}.service-detail-cta-inline{flex-direction:column}}.services-page-section-title{color:#212121;font-size:2rem;font-weight:600;margin-bottom:30px;padding-bottom:15px;position:relative;text-align:center}.services-page-section-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.services-page-sectors{background-color:#f8f9ff;border-radius:10px;margin:60px 0;padding:40px 0}.services-page-sectors-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:30px}.sector-card-wrapper{height:100%}.services-page-sector-card{background-color:#fff;border-radius:10px;border-top:4px solid #1976d2;box-shadow:0 5px 15px #00000014;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:30px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.services-page-sector-card:hover{box-shadow:0 15px 30px #0000001f;transform:translateY(-10px)}.services-page-sector-icon{color:#1976d2;font-size:2.5rem;margin-bottom:20px;text-align:center}.services-page-sector-title{color:#212121;font-size:1.4rem;font-weight:600;margin-bottom:20px;text-align:center}.services-page-sector-list{flex:1 1;list-style:none;margin:0 0 25px;padding:0}.services-page-sector-item{align-items:flex-start;color:#555;display:flex;font-size:.95rem;margin-bottom:10px}.services-page-sector-item i{color:#1976d2;font-size:.8rem;margin-right:10px;margin-top:4px}.services-page-sector-button{align-self:center;background-color:#1976d2;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:auto;padding:10px 15px;transition:background-color .3s ease;width:100%}.services-page-sector-button:hover{background-color:#083980}.services-page-faqs{margin:60px 0}.services-page-faqs-list{margin-top:30px}.services-page-faq-item{background-color:#fff;border-radius:10px;box-shadow:0 3px 8px #0000000d;margin-bottom:15px;overflow:hidden;transition:box-shadow .3s ease}.services-page-faq-item:hover{box-shadow:0 5px 15px #00000014}.services-page-faq-item.open{box-shadow:0 8px 20px #0000001a}.services-page-faq-question{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:background-color .3s ease}.services-page-faq-question:hover{background-color:#f8f9ff}.services-page-faq-item.open .services-page-faq-question{background-color:#f0f2ff}.services-page-faq-question h3{color:#212121;flex:1 1;font-size:1.1rem;font-weight:600;margin:0}.services-page-faq-toggle{color:#1976d2;font-size:.9rem;transition:transform .3s ease}.services-page-faq-item.open .services-page-faq-toggle{transform:rotate(180deg)}.services-page-faq-answer{max-height:0;overflow:hidden;padding:0 20px;transition:max-height .3s ease,padding .3s ease}.services-page-faq-item.open .services-page-faq-answer{max-height:1000px;padding:0 20px 20px;transition:max-height .5s ease,padding .3s ease}.services-page-faq-answer p{color:#555;font-size:1rem;line-height:1.6;margin:15px 0 0}@media screen and (max-width:1200px){.services-page-grid,.services-page-sectors-grid{grid-template-columns:repeat(2,1fr)}.service-detail-content{gap:30px;grid-template-columns:1fr}}@media screen and (max-width:992px){.services-page-title{font-size:2.2rem}.services-page-category-title{font-size:1.5rem}.service-detail-title,.services-page-cta-title,.services-page-section-title{font-size:1.8rem}.service-detail-main-description{font-size:1.1rem}}@media screen and (max-width:768px){.services-page-header{padding:60px 0 30px}.services-page-title{font-size:1.8rem}.services-page-subtitle{font-size:1rem}.services-page-filters-container{align-items:center;flex-direction:column}.services-page-filters{flex-direction:column;max-width:300px;width:100%}.services-page-filter{width:100%}.services-page-content{padding:40px 0}.services-page-grid,.services-page-sectors-grid{grid-template-columns:1fr}.services-page-cta{padding:30px 20px}.services-page-cta-title,.services-page-section-title{font-size:1.5rem}.service-detail-back{font-size:.9rem}.service-detail-title{align-items:flex-start;flex-direction:column;font-size:1.6rem}.service-detail-icon{margin-bottom:10px}.service-detail-benefit-item{font-size:1rem}}.sector-page-image-caption:after{clear:both;content:"";display:block;height:10px;visibility:hidden}.sector-page-content-image+p{margin-top:20px}.sector-page-header{background-color:#f8f9ff;overflow:hidden;padding:100px 0 60px;position:relative;text-align:center}.sector-page-header:before{background-image:linear-gradient(45deg,#0605ff08 25%,#0000 0,#0000 50%,#0605ff08 0,#0605ff08 75%,#0000 0,#0000);background-size:20px 20px;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.sector-page-img{border-radius:10px;box-shadow:0 5px 20px #00000026;height:300px;margin:0 auto 30px;max-width:700px;overflow:hidden;position:relative;width:100%;z-index:1}.sector-page-image{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.sector-page-img:hover .sector-page-image{transform:scale(1.05)}.sector-page-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px;position:relative;z-index:1}.sector-page-subtitle{color:#555;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:800px;position:relative;z-index:1}.sector-page-content{padding:60px 0}.sector-page-section{margin-bottom:60px}.sector-page-section-title{color:#212121;font-size:2rem;font-weight:600;margin-bottom:30px;padding-bottom:15px;position:relative}.sector-page-section-title:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}.sector-page-content-image{border-radius:8px;box-shadow:0 5px 15px #0000001a;box-sizing:border-box;display:block;font-size:0;margin:20px 0 0!important;max-width:100%;overflow:hidden}.sector-page-content-image img{display:block;height:auto;margin:0;padding:0;width:100%}.sector-page-image-caption{background-color:#f8f9ff;border-bottom-left-radius:8px;border-bottom-right-radius:8px;box-sizing:border-box;color:#555;display:block;font-size:.9rem;font-style:italic;line-height:1.4;margin:0!important;padding:10px 15px 15px;text-align:center}.sector-page-content-image.right{float:right;margin-bottom:0!important;margin-left:30px!important;margin-right:0!important;width:40%}.sector-page-content-image.left{float:left;margin-bottom:0!important;margin-left:0!important;margin-right:30px!important;width:40%}@media screen and (max-width:768px){.sector-page-content-image.left,.sector-page-content-image.right{float:none;margin:20px auto!important;max-width:500px;width:100%}}.sector-page-description{color:#555;font-size:1.05rem;line-height:1.6;margin-bottom:30px;overflow:auto}.sector-page-description p{margin-bottom:20px;margin-top:0}.sector-page-description .sector-page-content-image .sector-page-image-caption{margin-bottom:0!important;padding-bottom:0!important}.sector-page-image-caption+p{margin-top:20px!important}.sector-page-content-image:after{clear:both;content:"";display:block;height:0;margin-bottom:-1px!important}.sector-page-features{background-color:#f8f9ff;border-radius:10px;margin-bottom:60px;padding:40px}.sector-page-features-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr)}.sector-page-feature{align-items:flex-start;display:flex}.sector-page-feature-icon{color:#1976d2;font-size:1.2rem;margin-right:15px;margin-top:5px}.sector-page-feature-text{color:#333;font-size:1.05rem;line-height:1.5}.sector-page-services-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.sector-service-card{margin-bottom:20px}.sector-page-service{background-color:#fff;border-radius:10px;border-top:4px solid #1976d2;box-shadow:0 5px 15px #0000000d;display:flex;flex-direction:column;height:100%;padding:30px;transition:transform .3s ease,box-shadow .3s ease}.sector-page-service:hover{box-shadow:0 15px 30px #0000001a;transform:translateY(-10px)}.sector-page-projects-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-bottom:30px}.sector-page-project{background-color:#fff;border-radius:10px;box-shadow:0 5px 15px #0000000d;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.sector-page-project:hover{box-shadow:0 15px 30px #0000001a;transform:translateY(-10px)}.sector-page-project-image-container{height:200px;overflow:hidden}.sector-page-project-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.sector-page-project:hover .sector-page-project-image{transform:scale(1.05)}.sector-page-project-placeholder{align-items:center;background-color:#f8f9ff;color:#1976d2;display:flex;font-size:3rem;height:100%;justify-content:center;width:100%}.sector-page-project-title{color:#212121;font-size:1.1rem;font-weight:600;margin:0;padding:20px}.sector-page-project-link{background-color:#f8f9ff;color:#1976d2;display:block;font-weight:500;padding:15px 20px;text-align:center;text-decoration:none;transition:background-color .3s ease}.sector-page-project-link:hover{background-color:#e6e6ff}.sector-page-more-services{margin-top:20px;text-align:center}.sector-page-more-projects{text-align:center}.sector-project-card,.sector-service-card{height:100%}.sector-page-no-projects{background-color:#f8f9ff;border-radius:10px;grid-column:1/-1;padding:40px;text-align:center}.sector-page-no-projects p{color:#555;font-size:1.1rem}.sector-page-cta{background-color:#f8f9ff;border-left:4px solid #1976d2;border-radius:10px;margin-bottom:40px;padding:40px;text-align:center}.sector-page-cta-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:15px}.sector-page-cta-text{color:#555;font-size:1.05rem;margin-bottom:25px;margin-left:auto;margin-right:auto;max-width:700px}@media screen and (max-width:1200px){.sector-page-projects-grid,.sector-page-services-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:992px){.sector-page-title{font-size:2.2rem}.sector-page-section-title{font-size:1.8rem}.sector-page-features-grid{grid-template-columns:1fr}}@media screen and (max-width:768px){.sector-page-header{padding:80px 0 40px}.sector-page-img{height:200px}.sector-page-title{font-size:1.8rem}.sector-page-subtitle{font-size:1rem}.sector-page-projects-grid,.sector-page-services-grid{grid-template-columns:1fr}.sector-page-content{padding:40px 0}.sector-page-features{padding:20px}.sector-page-cta{padding:30px 20px}}.legal-page{background-color:#f9f9f9;padding-top:120px}.legal-content{background-color:#fff;border-radius:10px;box-shadow:0 5px 20px #0000000d;margin-top:40px;padding:40px}.privacy-section{margin-bottom:40px}.privacy-section:last-child{margin-bottom:0}.privacy-section h2{border-bottom:2px solid #f0f0f0;color:#045d9f;font-size:1.6rem;margin-bottom:20px;padding-bottom:10px}.privacy-section h3{color:#0672b9;font-size:1.3rem;margin-bottom:15px;margin-top:25px}.privacy-section p{line-height:1.6;margin-bottom:15px}.privacy-section ul{margin-bottom:15px;margin-left:20px}.privacy-section ul li{line-height:1.5;margin-bottom:10px}.privacy-section a{color:#0672b9;text-decoration:none;transition:color .3s ease}.privacy-section a:hover{color:#045d9f;text-decoration:underline}.privacy-section em{font-style:italic}.privacy-section strong{font-weight:600}@media screen and (max-width:768px){.legal-page{padding-top:100px}.legal-content{margin-top:25px;padding:25px}.privacy-section h2{font-size:1.4rem}.privacy-section h3{font-size:1.2rem}}.gear-icon{height:100%;width:100%}.not-found-page{align-items:center;display:flex;min-height:calc(100vh - 350px);padding:100px 0 60px}.not-found-content{margin:0 auto;max-width:800px;text-align:center}.not-found-img-container{margin-bottom:40px}.not-found-img{display:inline-block;position:relative}.not-found-404{color:#1976d2;font-size:8rem;font-weight:700;line-height:1;text-shadow:2px 2px 0 #e0e0e0}.not-found-gear-container{height:100px;position:absolute;right:-70px;top:-45px;width:100px}.not-found-gear{align-items:center;color:#1976d2;display:flex;justify-content:center;position:absolute}.gear-1{animation:rotate 10s linear infinite;height:60px;left:0;top:0;width:60px}.gear-2{animation:rotate-reverse 7s linear infinite;height:40px;left:40px;top:50px;width:40px}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes rotate-reverse{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}.not-found-title{color:#212121;font-size:2.5rem;font-weight:700;margin-bottom:15px}.not-found-text{color:#555;font-size:1.2rem;margin-bottom:30px}.not-found-actions{display:flex;gap:20px;justify-content:center;margin-bottom:60px}.not-found-btn{min-width:180px}.not-found-sitemap{border-top:1px solid #e0e0e0;padding-top:40px;text-align:left}.not-found-sitemap-title{color:#212121;font-size:1.5rem;font-weight:600;margin-bottom:25px;text-align:center}.not-found-sitemap-columns{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(4,1fr)}.not-found-sitemap-subtitle{border-bottom:1px solid #e0e0e0;color:#1976d2;font-size:1.1rem;font-weight:600;margin-bottom:15px;padding-bottom:8px}.not-found-sitemap-list{list-style:none;margin:0;padding:0}.not-found-sitemap-list li{margin-bottom:10px}.not-found-sitemap-list a{color:#555;font-size:.95rem;text-decoration:none;transition:color .3s ease}.not-found-sitemap-list a:hover{color:#1976d2}@media screen and (max-width:992px){.not-found-sitemap-columns{grid-template-columns:repeat(2,1fr)}.not-found-title{font-size:2.2rem}}@media screen and (max-width:768px){.not-found-page{padding:80px 0 40px}.not-found-404{font-size:6rem}.not-found-gear-container{height:80px;right:-20px;width:80px}.gear-1{height:40px;width:40px}.gear-2{height:30px;left:25px;top:35px;width:30px}.not-found-title{font-size:1.8rem}.not-found-text{font-size:1rem}.not-found-actions{flex-direction:column;gap:15px}.not-found-sitemap-columns{grid-template-columns:1fr}.not-found-sitemap-title{font-size:1.3rem}}.cookie-consent-wrapper{bottom:20px;max-width:380px;position:fixed;right:20px;width:100%;z-index:1000}.cookie-consent{height:100%;width:100%}.cookie-banner{padding:0;width:100%}.cookie-content{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000014;padding:20px}.cookie-content h3{color:#1976d2;font-size:1.25rem;font-weight:700;margin-bottom:12px;margin-top:0}.cookie-content p{color:#757575;font-size:.85rem;line-height:1.5;margin-bottom:15px}.cookie-content a{color:#1976d2;text-decoration:underline;transition:color .3s ease}.cookie-content a:hover{color:#1565c0}.cookie-actions{display:flex;flex-wrap:nowrap;gap:8px;justify-content:flex-end;margin-top:15px}.btn-cookie{border:none;border-radius:4px;cursor:pointer;font-family:Roboto,sans-serif;font-size:.8rem;font-weight:500;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.btn-accept-all{background-color:#1976d2;color:#fff}.btn-accept-all:hover{background-color:#1565c0;box-shadow:0 4px 8px #1976d24d;transform:translateY(-2px)}.btn-accept-necessary{background-color:initial;border:1px solid #e0e0e0;color:#212121}.btn-accept-necessary:hover{background-color:#f5f5f5}.btn-preferences{background-color:initial;border:1px solid #e0e0e0;color:#212121}.btn-preferences:hover{background-color:#f5f5f5}.btn-preferences-save{background-color:#4caf50;color:#fff}.btn-preferences-save:hover{background-color:#43a047;box-shadow:0 4px 8px #4caf504d;transform:translateY(-2px)}.cookie-preferences{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;margin:15px 0;padding:15px}.preference-item{align-items:flex-start;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:12px 0}.preference-item:last-child{border-bottom:none;padding-bottom:0}.preference-item:first-child{padding-top:0}.preference-info{flex:1 1;padding-right:15px}.preference-info h4{color:#212121;font-size:.9rem;margin:0 0 5px}.preference-info p{color:#757575;font-size:.75rem;margin:0}.preference-toggle{align-items:center;display:flex;justify-content:center;margin-top:5px;padding-left:10px}.preference-toggle input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.preference-toggle label{color:#757575;cursor:pointer;font-size:.8rem;padding-left:45px;position:relative;-webkit-user-select:none;user-select:none}.preference-toggle label:before{background-color:#e0e0e0;border:1px solid #bdbdbd;border-radius:9px;content:"";height:18px;left:0;position:absolute;top:0;transition:all .3s;width:36px}.preference-toggle label:after{background-color:#757575;border-radius:50%;content:"";height:12px;left:3px;position:absolute;top:3px;transition:all .3s;width:12px}.preference-toggle input:checked+label:before{background-color:#1976d2;border-color:#1976d2}.preference-toggle input:checked+label:after{background-color:#fff;left:21px}.preference-toggle.disabled label{color:#bdbdbd;cursor:not-allowed}.preference-toggle.disabled label:before{background-color:#1976d2;border-color:#1976d2}.preference-toggle.disabled label:after{background-color:#fff;left:21px}@media (max-width:768px){.cookie-consent-wrapper{bottom:10px;left:10px;max-width:calc(100% - 20px);right:10px}.cookie-content{padding:15px}.cookie-actions{flex-direction:column;flex-wrap:wrap}.btn-cookie{margin-bottom:4px;width:100%}.preference-item{align-items:flex-start;flex-direction:column}.preference-toggle{margin-top:10px;padding-left:0}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#fff;color:#212121;font-family:Roboto,Open Sans,sans-serif;line-height:1.6;overflow-x:hidden}.container{margin:0 auto;max-width:1200px;padding:0 20px;width:100%}.section{padding:60px 0}@media screen and (max-width:768px){.section{padding:40px 0}}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;font-weight:700;line-height:1.2;margin-bottom:.5em}h1{font-size:2.5rem}h2{font-size:2rem;padding-bottom:10px;position:relative}h2:after{background-color:#1976d2;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}h3{font-size:1.5rem}h4{font-size:1.2rem}.btn{border:none;border-radius:4px;cursor:pointer;display:inline-block;font-family:Roboto,sans-serif;font-weight:500;padding:10px 25px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#1976d2;color:#fff}.btn-primary:hover{background-color:#1565c0}.btn-outline{background-color:initial;border:2px solid #1976d2;color:#1976d2}.btn-outline:hover{background-color:#1976d2;color:#fff}.card{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014;overflow:hidden;transition:all .3s ease}.card:hover{box-shadow:0 8px 18px #0000001f;transform:translateY(-5px)}.grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(12,1fr)}@media screen and (max-width:768px){.grid{grid-template-columns:repeat(1,1fr)}}.flex{display:flex}.flex-column{flex-direction:column}.justify-center{justify-content:center}.align-center{align-items:center}.justify-between{justify-content:space-between}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:2rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:2rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-2{margin-bottom:.5rem;margin-top:.5rem}.my-3{margin-bottom:1rem;margin-top:1rem}.my-4{margin-bottom:1.5rem;margin-top:1.5rem}.my-5{margin-bottom:2rem;margin-top:2rem}.mx-auto{margin-left:auto;margin-right:auto}.text-center{text-align:center}.text-primary{color:#1976d2}.badge{border-radius:16px;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.badge-personal,.badge-studio{background-color:#1976d2;color:#fff}.badge-infrastrutture{background-color:#0672b9;color:#fff}.badge-idraulica{background-color:#038c73;color:#fff}.badge-civile-edilizia{background-color:#045d9f;color:#fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .5s ease-in-out}.visually-hidden{clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;white-space:nowrap;width:1px}.hide-mobile{display:block}.show-mobile{display:none}@media screen and (max-width:835px){.hide-mobile{display:none}.show-mobile{display:block}}
/*# sourceMappingURL=main.0c452e73.css.map*/