@tailwind base;
@tailwind components;
@tailwind utilities;

.fade-in-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .7s ease-out,transform .7s ease-out}.fade-in-on-scroll.is-visible{opacity:1;transform:translateY(0)}.prose{color:#d1d5db}.prose h1,.prose h2,.prose h3,.prose h4{font-weight:600;color:#f8fafc;margin-top:1.5em;margin-bottom:.8em}.prose p{margin-bottom:1.25em;line-height:1.75}.prose a{color:var(--color-cta-green)}.prose a:hover{text-decoration:underline}.prose ul{list-style-type:disc;padding-left:1.5em;margin-bottom:1.25em}.prose li{margin-bottom:.5em}.prose .not-prose{color:inherit}.prose-invert{--tw-prose-bullets:#94a3b8}@keyframes gentle-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,100%{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-gentle-pulse{animation:gentle-pulse 2.5s infinite ease-in-out}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.flex-col{flex-direction:column}.items-center{align-items:center}.text-center{text-align:center}section{position:relative;padding:60px 0;margin-top:-50px;mask-image:linear-gradient(to bottom,transparent 0,black 10%,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 10%,black 90%,transparent 100%)}#contato{margin-top:0;mask-image:none;-webkit-mask-image:none;padding:0;background-color:var(--color-background-light)}.section-title{text-align:center;margin-bottom:2.5rem}.section-title h2{font-size:1.875rem;margin-bottom:1rem}.section-title p{max-width:42rem;margin:auto}.grid-3-col{display:grid;gap:1.5rem}.card-tech{background-color:#0f172a;padding:1.5rem;border-radius:.5rem;box-shadow:0 1px 2px 0 rgba(0,0,0,.05);border:1px solid #1e293b;transition:all 150ms;text-align:center}.card-tech:hover{box-shadow:0 10px 15px -3px rgba(30,142,74,.1),0 4px 6px -4px rgba(30,142,74,.1);border-color:#334155}.card-tech .icon-wrapper{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:9999px;background-color:#1e293b;margin-bottom:1rem;transition:background-color 150ms}.card-tech:hover .icon-wrapper{background-color:#334155}.card-tech .icon{font-size:2.5rem;color:var(--color-cta-green)}.card-tech h3{font-size:1.125rem;margin-bottom:.5rem}.card-tech p{font-size:.875rem;line-height:1.625}.bg-slate-950{background-color:#020617}.bg-surface-dark{background-color:#0f172a}.container{max-width:80rem;margin:auto;padding:0 1rem}.grid-2-col{display:grid;gap:1rem}.card-service{position:relative;background-color:rgba(30,41,59,.5);padding:1.5rem;border-radius:.5rem;border:1px solid #334155;transition:border-color 150ms;text-align:center}.card-service:hover{border-color:rgba(30,142,74,.5)}.card-service h3{font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.card-service p{font-size:.875rem}.card-service .highlight{position:absolute;top:1rem;left:50%;transform:translateX(-50%);border:1px solid var(--color-cta-green);color:var(--color-cta-green);font-size:.75rem;padding:.25rem .5rem;border-radius:9999px;font-weight:600}.border-t{border-top-width:1px}.border-slate-800\/50{border-color:rgba(30,41,59,.5)}.max-w-800px{max-width:800px;margin-left:auto;margin-right:auto}.grid-laudos{display:grid;gap:1rem;grid-template-columns:1fr}.card-laudo{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:1rem .75rem;background-color:rgba(30,41,59,.3);border-radius:.25rem;border:1px solid rgba(51,65,85,.5);transition:background-color 150ms}.card-laudo:hover{background-color:rgba(30,41,59,.5)}.card-laudo .icon{color:#94a3b8;margin-right:0;margin-bottom:.75rem;font-size:1.75rem;flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.card-laudo h3{font-weight:500;font-size:.875rem}.card-laudo p{font-size:.75rem;color:#64748b}.equipe-link{color:var(--color-cta-green)}.equipe-link:hover{text-decoration:underline}.text-xs.text-slate-600{color:#475569;margin-top:1rem}.metodologia-grid{display:grid;grid-template-columns:1fr;gap:1rem}.metodologia-step{text-align:center;padding:0 .5rem}.metodologia-step .step-icon-wrapper{width:4rem;height:4rem;border-radius:9999px;background-color:#0f172a;border:2px solid #334155;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;transition:all 150ms}.metodologia-step:hover .step-icon-wrapper{border-color:var(--color-cta-green)}.metodologia-step .icon{font-size:2rem;color:#94a3b8;transition:color 150ms}.metodologia-step:hover .icon{color:var(--color-cta-green)}.metodologia-step h3{font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.metodologia-step h3 span{color:var(--color-cta-green);font-weight:600;margin-right:.25rem}.metodologia-step p{font-size:.875rem}.faq details{background-color:rgba(30,41,59,.5);border-radius:.5rem;overflow:hidden;border:1px solid #334155;transition:all 150ms}.faq details[open]{border-color:rgba(30,142,74,.5)}.faq summary{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;cursor:pointer;list-style:none;color:#fff;font-weight:500;transition:background-color 150ms}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{background-color:#1e293b}.faq summary .icon{transform:rotate(0);transition:transform 150ms}.faq details[open] summary .icon{transform:rotate(180deg)}.faq .answer{padding:0 1.25rem 1.25rem;font-size:.875rem}.card-equipe{background-color:rgba(30,41,59,.3);padding:2rem;border-radius:.5rem;border:1px solid rgba(51,65,85,.5);text-align:center;transition:all 150ms}.card-equipe:hover{background-color:rgba(30,41,59,.5)}.card-equipe .avatar{width:5rem;height:5rem;margin:auto;border-radius:9999px;background-color:#334155;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-equipe .avatar img{width:100%;height:100%;object-fit:cover}.card-equipe .avatar .icon{font-size:4.5rem;color:#94a3b8}.card-equipe h3{font-size:1.125rem;font-weight:700}.card-equipe .role{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.025em;margin-bottom:1rem}#depoimentos p,#depoimentos span,.testimonial-text{color:#1e293b!important;font-weight:500!important}.secao-depoimentos-harpia{background-color:var(--color-background-dark);min-height:550px}.testimonials-container,.blog-container{position:relative}.testimonials-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1.5rem;padding-bottom:1rem}.testimonial-card{width:90%;flex-shrink:0;scroll-snap-align:center;background-color:#fff;color:#1e293b;border-radius:.5rem;padding:2rem;box-shadow:0 4px 6px rgba(0,0,0,.1);display:flex;flex-direction:column;height:100%}.testimonial-stars{color:#ffc107;font-size:1.25rem;margin-bottom:1rem}.testimonial-author{font-weight:700}.testimonial-text{font-style:italic;margin-bottom:1.5rem;font-size:1rem;line-height:1.6;flex-grow:1}.testimonial-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:rgba(30,41,59,.4);border-radius:9999px;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;color:#fff;z-index:10;transition:all 150ms}.testimonial-btn:hover{background-color:rgba(30,41,59,.7);transform:translateY(-50%) scale(1.1)}.testimonial-btn.prev{left:0}.testimonial-btn.next{right:0}.google-reviews-link{display:inline-flex;align-items:center;padding:.75rem 1.5rem;border:1px solid #94a3b8;font-size:.875rem;font-weight:500;border-radius:.25rem;color:#fff;transition:all 300ms}.google-reviews-link:hover{background-color:#fff;color:#0f172a}.blog-posts-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1.5rem;padding-bottom:1rem;margin-bottom:2rem}.blog-card{width:90%;flex-shrink:0;scroll-snap-align:center;background-color:#0f172a;border-radius:.5rem;overflow:hidden;border:1px solid #1e293b;display:flex;flex-direction:column;transition:transform 150ms}.blog-card:hover{transform:translateY(-.25rem)}.blog-card .blog-image-container{position:relative;height:12rem;overflow:hidden}.blog-card .blog-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease-in-out}.blog-card:hover .blog-image{transform:scale(1.1)}.blog-card .blog-image-overlay{position:absolute;top:1rem;left:1rem}.blog-card .blog-category-badge{background-color:#2563eb;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.05em}.blog-card .content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.blog-card .content .text-sm{color:#fff}.blog-card .meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;margin-bottom:.75rem}.blog-card .category{border:1px solid var(--color-cta-green);color:var(--color-cta-green);padding:.25rem .5rem;border-radius:9999px;font-weight:500}.blog-card .read-time{color:#64748b}.blog-card h3{font-size:1.125rem;font-weight:700;margin-bottom:.5rem;transition:color 150ms;flex-grow:1}.blog-card:hover h3{color:var(--color-cta-green)}.blog-card .footer{padding:1.5rem;background-color:rgba(30,41,59,.5);margin-top:auto}.blog-card .read-more{color:#fff;font-weight:600;font-size:.875rem}.blog-card .read-more:hover{text-decoration:underline}.view-all-posts-btn{display:inline-flex;align-items:center;padding:.75rem 1.5rem;border:1px solid #64748b;font-size:.875rem;font-weight:500;border-radius:.25rem;color:#fff;transition:all 150ms}.view-all-posts-btn:hover{background-color:#1e293b;border-color:#94a3b8}#contato .contact-wrapper{display:flex;flex-direction:column}#contato iframe{width:100%;height:100%;border:0;min-height:300px}#contato .form-container{display:flex;flex-direction:column;justify-content:center;padding:2rem;background-color:var(--color-surface-dark)}#contato .form-container h2{font-size:1.875rem;font-weight:700;margin-bottom:.5rem}#contact-form{display:flex;flex-direction:column;gap:1.25rem}#service-options-container{display:flex;flex-wrap:wrap;gap:.5rem}#service-options-container button{padding:.5rem 1rem;font-size:.875rem;border-radius:9999px;border:1px solid #cbd5e1;transition:all 200ms;background-color:#fff;color:#475569}#service-options-container button:hover{background-color:#f1f5f9;border-color:#94a3b8;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}#service-options-container button.selected{background-color:#1e293b;color:#fff;border-color:#1e293b}#contact-form input,#contact-form textarea{width:100%;background-color:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.5rem .75rem;color:#0f172a;font-size:.875rem;transition:all 150ms}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#94a3b8}#contact-form input:focus,#contact-form textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-color:#64748b;box-shadow:0 0 0 2px var(--tw-ring-color);border-color:#64748b}.btn-whatsapp-fix{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;min-height:55px!important;background-color:#25d366!important;color:#fff!important;font-weight:700!important;text-transform:uppercase!important;border:none!important;border-radius:8px!important;padding:0!important;margin:15px 0!important;cursor:pointer!important}#contact-form .form-intro,#contact-form label,.contact-info h3,.contact-info .info-item h4,.contact-info .info-item p,.contact-info .info-item a,.form-container .form-intro{color:#fff!important}#contact-form .text-slate-500{color:#94a3b8}.contact-info{margin-top:2rem;padding-top:2rem;border-top:1px solid #1e293b}.contact-info .info-grid{display:grid;gap:1.5rem}.contact-info .info-item{display:flex;align-items:flex-start}.contact-info .info-item .icon{color:#94a3b8;margin-right:1rem;font-size:1.875rem;flex-shrink:0}footer{background-color:var(--black);color:#94a3b8;padding:2.4rem 0;border-top:1px solid #1e293b}footer .footer-grid{display:grid;gap:2rem}footer .footer-col h4{font-size:.875rem;font-weight:600;color:#fff;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1rem}footer .footer-col nav{display:flex;flex-direction:column;gap:.5rem}footer .footer-col a{font-size:.875rem;transition:color 150ms}footer .footer-col a:hover{color:var(--color-cta-green)}footer .social-links{margin-top:1.5rem;display:flex;gap:1rem}footer .social-links a{color:#94a3b8;transition:color 150ms}footer .social-links a:hover{color:#fff}footer .social-links svg{width:1.5rem;height:1.5rem;fill:currentColor}footer .copyright{border-top:1px solid #1e293b;margin-top:2.5rem;padding-top:2rem;text-align:center;font-size:.75rem;color:#475569}#whatsapp-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;width:3.5rem;height:3.5rem;background-color:var(--color-cta-green);border-radius:9999px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;transition:transform 150ms}#whatsapp-fab:hover{transform:scale(1.1)}#whatsapp-fab svg{width:2rem;height:2rem;color:#fff;fill:currentColor}#back-to-top-btn{position:fixed;bottom:6rem;right:1.5rem;z-index:50;width:3rem;height:3rem;background-color:rgba(30,41,59,.8);backdrop-filter:blur(4px);border:1px solid #334155;border-radius:9999px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;color:#cbd5e1;transition:all 300ms;opacity:0;transform:translateY(1rem);visibility:hidden}#back-to-top-btn:hover{background-color:#334155;color:#fff;border-color:#475569}#back-to-top-btn.is-visible{opacity:1;transform:translateY(0);visibility:visible}#blog-post-container .blog-post-content{display:none}#blog-post-container .blog-post-content.active{display:block}.card-service,.card-laudo{height:100%;display:flex;flex-direction:column}.card-service p{flex-grow:1}.card-laudo>div{flex-grow:1}.team-scroll-hint{display:none}@media (max-width:768px){.grid-2-col,.grid-laudos{grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important;padding:0 .5rem}.card-service,.card-laudo{padding:.75rem!important}.card-service h3,.card-laudo h3{font-size:.85rem!important;line-height:1.2;margin-bottom:.5rem}.metodologia-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.metodologia-step .step-icon-wrapper{width:3rem;height:3rem}.metodologia-step .icon{font-size:1.5rem}.metodologia-step h3{font-size:1rem}#equipe .grid-3-col{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:1rem;padding-bottom:1rem}#equipe .grid-3-col::-webkit-scrollbar{display:none}#equipe .card-equipe{flex:0 0 70%;scroll-snap-align:center}.team-scroll-hint{display:block;text-align:center;color:#64748b;font-size:.875rem;margin-top:1rem}.logos-container{bottom:5px!important;height:50px}.logos-track img{height:22px!important}.logos-track{gap:30px}section{padding:40px 0;margin-top:-30px;mask-image:linear-gradient(to bottom,transparent 0,black 5%,black 95%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 5%,black 95%,transparent 100%)}}@media (min-width:640px){.contact-info .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-card,.blog-card{width:45%}}@media (min-width:768px){.grid-3-col{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2-col{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-laudos{grid-template-columns:repeat(3,minmax(0,1fr))}.section-title h2{font-size:1.875rem}.metodologia-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.testimonial-btn.prev{left:-1rem}.testimonial-btn.next{right:-1rem}footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-service{padding:1.5rem}.card-laudo{padding:1rem .75rem}.card-service h3{font-size:1.125rem}.card-laudo h3{font-size:.875rem}}@media (min-width:1024px){.container{padding:0 2rem}#contato .contact-wrapper{flex-direction:row;align-items:stretch}#contato .map-container{width:41.666667%}#contato .map-container iframe{height:100%}#contato .form-container{width:58.333333%;padding:3rem}.metodologia-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.testimonial-card,.blog-card{width:31%}}#blog-post-container .blog-post-content>div{background-color:transparent!important}#blog-post-container .max-w-3xl{max-width:850px!important;padding:120px 20px 60px!important}#blog-post-container .prose p{font-size:1.1rem;line-height:1.8}.logos-container{width:100%;overflow:hidden;position:absolute;bottom:30px;mask-image:linear-gradient(to right,transparent,black 15%,black 85%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 15%,black 85%,transparent)}.logos-track{display:flex;width:max-content;gap:80px;animation:scroll-loop 40s linear infinite}@keyframes scroll-loop{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.logos-track:hover{animation-play-state:paused}.logos-track img{width:auto!important;transition:all .3s ease;filter:brightness(0) invert(.9);opacity:.5}.logos-track img[alt*="MRV"],.logos-track img[alt*="Barbacena"],.logos-track img[alt*="Ouro Preto"],.logos-track img[alt*="Grupo Projeta"]{height:55px!important}.logos-track img[alt="Defesa Civil"],.logos-track img[alt*="Geo"]{height:35px!important;filter:brightness(0) invert(.85) contrast(1.1)}.logos-track img[alt*="Arquidiocese"],.logos-track img[alt*="Salesianas"]{height:45px!important}.logos-track img[alt*="TJMG"]{height:55px!important;transform:scale(1.4);margin:0 40px}.logos-track img[alt*="M2G2"]{height:55px!important;transform:scale(1.3);margin:0 30px;filter:brightness(0) invert(.95) contrast(1.2)}.logos-track img[alt*="Uisa"]{height:55px!important;transform:scale(1.3);margin:0 30px;filter:brightness(0) invert(.95) contrast(1.2)}.logos-track img:hover{filter:none!important;opacity:1!important;transform:scale(1.1);cursor:pointer}.service-card-new{background-color:var(--color-surface-dark);padding:2rem;border-radius:.5rem;border:1px solid #1e293b;display:flex;flex-direction:column;height:100%;transition:all .2s ease-in-out}.service-card-new:hover{transform:translateY(-5px);border-color:var(--cobre)}.service-card-new .card-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.service-card-new .card-header .material-icons{font-size:2.5rem;color:var(--cobre)}.service-card-new h3{font-size:1.25rem!important;margin-bottom:0!important}.service-card-new .subtitle{font-size:.875rem;color:#94a3b8!important;margin-bottom:1.5rem;min-height:40px}.service-card-new ul{list-style:none;padding:0;margin:0;text-align:left}.service-card-new li{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.9rem}.service-card-new li .material-icons{color:var(--color-cta-green);font-size:1.25rem}.service-card-new .cta-button-card{display:inline-block;text-align:center;padding:.75rem 1rem;font-size:.875rem;background-color:transparent!important;color:var(--cobre)!important;font-weight:700!important;text-transform:uppercase;transition:all .3s ease-in-out;border:2px solid var(--cobre)!important;border-radius:4px!important;margin-top:auto;text-decoration:none}.service-card-new .cta-button-card:hover{background-color:var(--cobre)!important;color:#fff!important}.btn-whatsapp-bottom{background-color:#25d366;color:#fff;font-weight:700;text-transform:uppercase;font-family:'Inter',sans-serif;display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:9999px;transition:transform 150ms}
