:root{
    --azul-marinho:#1a2332;
    --azul-medio:#2c5f8a;
    --azul-claro:#4a90e2;
    --azul-cielo:#5ba3f5;
    --branco:#ffffff;
    --cinza-azulado:#b0bec5;
    --cinza-claro:#f5f7fa;
    --preto:#0f1419;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:#1a2332;line-height:1.6;background:#fff}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* ============================================
   HEADER COM LOGO
   ============================================ */
.site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:100;
    background:rgba(26,35,50,0.97);
    backdrop-filter:blur(10px);
    border-bottom:1px solid rgba(74,144,226,0.15);
    transition:all 0.3s;
}
.header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:80px;
}
.logo{
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff;
    text-decoration:none;
    transition:transform 0.3s;
}
.logo:hover{
    transform:scale(1.05);
}
.logo-img{
    width:50px;
    height:50px;
    object-fit:contain;
    transition:transform 0.3s;
}
.logo:hover .logo-img{
    transform:rotate(5deg);
}
.logo-text{
    font-size:1.4rem;
    font-weight:800;
    letter-spacing:2px;
    color:#fff;
}
.main-nav ul{
    display:flex;
    gap:30px;
}
.main-nav a{
    color:#cfd8dc;
    font-weight:500;
    transition:color 0.2s;
    position:relative;
    padding:5px 0;
}
.main-nav a:hover,
.main-nav a.active{
    color:var(--azul-claro);
}
.main-nav a.active::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    bottom:-28px;
    height:3px;
    background:var(--azul-claro);
}
.menu-toggle{
    display:none;
    background:none;
    border:0;
    color:#fff;
    font-size:1.6rem;
    cursor:pointer;
}




/* BOTÕES */
.btn{display:inline-block;padding:14px 28px;border-radius:4px;font-weight:600;transition:all .25s;cursor:pointer;border:2px solid transparent}
.btn-primary{background:var(--azul-claro);color:#fff;border-color:var(--azul-claro)}
.btn-primary:hover{background:var(--azul-marinho);color:var(--azul-claro);border-color:var(--azul-claro)}
.btn-outline{background:transparent;color:#fff;border-color:#fff}
.btn-outline:hover{background:#fff;color:var(--azul-marinho)}

/* STATS */
.stats{background:var(--azul-marinho);color:#fff;padding:60px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.stats-grid strong{display:block;font-size:2.8rem;color:var(--azul-claro);font-weight:800}
.stats-grid span{color:var(--cinza-azulado);font-size:.95rem}

/* CTA */
.cta-banner{background:linear-gradient(135deg,var(--azul-marinho) 0%,var(--azul-medio) 100%);color:#fff;padding:80px 0;text-align:center}
.cta-banner h2{font-size:2.2rem;margin-bottom:15px}
.cta-banner p{margin-bottom:25px;color:#cfd8dc}

/* PAGE HEADER */
.page-header{background:linear-gradient(135deg,var(--azul-marinho),var(--azul-medio));color:#fff;padding:140px 0 60px;text-align:center;border-bottom:4px solid var(--azul-claro)}
.page-header h1{font-size:2.8rem;margin-bottom:10px}
.page-header p{color:var(--cinza-azulado)}


/* ============================================
   FOOTER COM REDES SOCIAIS
   ============================================ */
.site-footer{
    background:var(--preto);
    color:var(--cinza-azulado);
    padding:80px 0 0;
}
.footer-top{
    padding-bottom:50px;
}
.footer-logo-section{
    margin-bottom:50px;
    padding-bottom:40px;
    border-bottom:1px solid rgba(74,144,226,0.15);
}
.footer-logo{
    display:flex;
    align-items:center;
    gap:15px;
    text-decoration:none;
    transition:transform 0.3s;
    margin-bottom:20px;
}
.footer-logo:hover{
    transform:scale(1.03);
}
.footer-logo-img{
    width:65px;
    height:65px;
    object-fit:contain;
}
.footer-logo-text{
    display:flex;
    flex-direction:column;
}
.footer-logo-name{
    font-size:1.8rem;
    font-weight:800;
    color:#fff;
    letter-spacing:2px;
}
.footer-logo-tagline{
    font-size:0.85rem;
    color:var(--azul-claro);
    letter-spacing:1px;
}
.footer-desc{
    color:var(--cinza-azulado);
    line-height:1.7;
    max-width:500px;
    margin-bottom:30px;
}

/* REDES SOCIAIS */
.footer-social{
    margin-top:10px;
}
.social-label{
    display:block;
    color:#78909c;
    font-size:0.85rem;
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:15px;
}
.social-icons{
    display:flex;
    gap:12px;
}
.social-link{
    width:48px;
    height:48px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.1);
}
.social-link svg{
    width:22px;
    height:22px;
    color:#cfd8dc;
    transition:color 0.3s;
}
.social-link:hover{
    transform:translateY(-5px);
    box-shadow:0 8px 25px rgba(0,0,0,0.3);
}
.social-link:hover svg{
    color:#fff;
}

/* Cores específicas de cada rede social */
.social-link.facebook:hover{
    background:#1877f2;
    border-color:#1877f2;
}
.social-link.instagram:hover{
    background:linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    border-color:#dc2743;
}
.social-link.linkedin:hover{
    background:#0a66c2;
    border-color:#0a66c2;
}
.social-link.whatsapp:hover{
    background:#25d366;
    border-color:#25d366;
}

/* FOOTER GRID */
.footer-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr;
    gap:50px;
}
.footer-grid h4{
    color:#fff;
    margin-bottom:20px;
    font-size:1.1rem;
    position:relative;
    padding-bottom:12px;
}
.footer-grid h4::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:40px;
    height:2px;
    background:var(--azul-claro);
}
.footer-contact-list{
    list-style:none;
    padding:0;
    margin:0;
}
.footer-contact-list li{
    display:flex;
    gap:12px;
    margin-bottom:18px;
    align-items:flex-start;
}
.footer-icon{
    width:20px;
    height:20px;
    color:var(--azul-claro);
    flex-shrink:0;
    margin-top:3px;
}
.footer-contact-list a{
    color:var(--cinza-azulado);
    text-decoration:none;
    transition:color 0.3s;
}
.footer-contact-list a:hover{
    color:var(--azul-claro);
}
.footer-links{
    list-style:none;
    padding:0;
    margin:0;
}
.footer-links li{
    margin-bottom:12px;
}
.footer-links a{
    color:var(--cinza-azulado);
    text-decoration:none;
    transition:all 0.3s;
    display:inline-block;
    position:relative;
    padding-left:0;
}
.footer-links a::before{
    content:'→';
    position:absolute;
    left:-20px;
    opacity:0;
    color:var(--azul-claro);
    transition:all 0.3s;
}
.footer-links a:hover{
    color:var(--azul-claro);
    padding-left:20px;
}
.footer-links a:hover::before{
    left:0;
    opacity:1;
}
.footer-horario{
    list-style:none;
    padding:0;
    margin:0 0 30px 0;
}
.footer-horario li{
    display:flex;
    justify-content:space-between;
    padding:10px 0;
    border-bottom:1px solid rgba(74,144,226,0.1);
    font-size:0.95rem;
}
.footer-horario li:last-child{
    border-bottom:none;
}
.footer-horario span{
    color:var(--cinza-azulado);
}
.footer-horario strong{
    color:#fff;
}

/* NEWSLETTER */
.footer-newsletter{
    margin-top:30px;
}
.footer-newsletter h4{
    margin-bottom:10px;
}
.newsletter-desc{
    color:#78909c;
    font-size:0.9rem;
    margin-bottom:15px;
}
.newsletter-form{
    display:flex;
    gap:0;
}
.newsletter-form input{
    flex:1;
    padding:12px 16px;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.15);
    border-right:none;
    border-radius:8px 0 0 8px;
    color:#fff;
    font-family:inherit;
    font-size:0.9rem;
    outline:none;
    transition:border-color 0.3s;
}
.newsletter-form input::placeholder{
    color:#78909c;
}
.newsletter-form input:focus{
    border-color:var(--azul-claro);
}
.newsletter-form button{
    padding:12px 18px;
    background:var(--azul-claro);
    border:1px solid var(--azul-claro);
    border-radius:0 8px 8px 0;
    color:#fff;
    cursor:pointer;
    transition:all 0.3s;
    display:flex;
    align-items:center;
    justify-content:center;
}
.newsletter-form button svg{
    width:20px;
    height:20px;
}
.newsletter-form button:hover{
    background:var(--azul-medio);
    border-color:var(--azul-medio);
}

/* FOOTER BOTTOM */
.footer-bottom{
    border-top:1px solid rgba(74,144,226,0.15);
    padding:25px 0;
}
.footer-bottom-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.footer-bottom p{
    font-size:0.9rem;
    color:#78909c;
    margin:0;
}
.footer-bottom-links{
    display:flex;
    gap:20px;
}
.footer-bottom-links a{
    color:#78909c;
    text-decoration:none;
    font-size:0.85rem;
    transition:color 0.3s;
}
.footer-bottom-links a:hover{
    color:var(--azul-claro);
}

/* ============================================
   RESPONSIVO FOOTER
   ============================================ */
@media (max-width:900px){
    .footer-logo{
        justify-content:flex-start;
    }
    .footer-grid{
        grid-template-columns:1fr 1fr;
        gap:30px;
    }
}

@media (max-width:600px){
    .footer-logo{
        flex-direction:column;
        align-items:flex-start;
    }
    .footer-grid{
        grid-template-columns:1fr;
    }
    .social-icons{
        flex-wrap:wrap;
    }
    .social-link{
        width:44px;
        height:44px;
    }
    .footer-bottom-inner{
        flex-direction:column;
        gap:15px;
        text-align:center;
    }
    .footer-bottom-links{
        justify-content:center;
    }
}

/* RESPONSIVO HEADER E FOOTER */
@media (max-width:900px){
    .header-inner{
        height:70px;
    }
    .logo-img{
        width:40px;
        height:40px;
    }
    .logo-text{
        font-size:1.2rem;
    }
    .menu-toggle{
        display:block;
    }
    .main-nav{
        position:absolute;
        top:70px;
        left:0;
        right:0;
        background:var(--azul-marinho);
        display:none;
        border-top:1px solid rgba(74,144,226,0.2);
    }
    .main-nav.open{
        display:block;
    }
    .main-nav ul{
        flex-direction:column;
        gap:0;
    }
    .main-nav a{
        display:block;
        padding:15px 20px;
        border-bottom:1px solid rgba(74,144,226,0.1);
    }
    .main-nav a.active::after{
        display:none;
    }
    .footer-logo-section{
        grid-template-columns:1fr;
        text-align:center;
    }
    .footer-logo{
        justify-content:center;
    }
    .footer-desc{
        max-width:100%;
    }
    .footer-grid{
        grid-template-columns:1fr;
        gap:30px;
    }
}

@media (max-width:480px){
    .footer-logo-img{
        width:60px;
        height:60px;
    }
    .footer-logo-name{
        font-size:1.5rem;
    }
}

/* RESPONSIVO */
@media (max-width:900px){
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .about-grid,.service-row,.contact-grid,.negocio-detail-grid{grid-template-columns:1fr}
    .service-row.reverse .service-text,.service-row.reverse .service-visual{order:initial}
    .mvv-grid{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr;text-align:center}
    .menu-toggle{display:block}
    .main-nav{position:absolute;top:72px;left:0;right:0;background:var(--azul-marinho);display:none;border-top:1px solid rgba(74,144,226,.2)}
    .main-nav.open{display:block}
    .main-nav ul{flex-direction:column;gap:0}
    .main-nav a{display:block;padding:15px 20px;border-bottom:1px solid rgba(74,144,226,.1)}
    .main-nav a.active::after{display:none}
    .project-meta{grid-template-columns:repeat(2,1fr)}
    .negocio-header-content{flex-direction:column;text-align:center}
}
@media (max-width:500px){
    .hero{min-height:500px}
    .section{padding:50px 0}
    .page-header{padding:110px 0 40px}
    .negocios-grid{grid-template-columns:1fr}
}

/* ============================================
   PÁGINA SOBRE - DESIGN MODERNO
   ============================================ */

/* HERO SECTION */
.sobre-hero{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:180px 0 100px;
    overflow:hidden;
}
.sobre-hero::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" fill="none" stroke="rgba(255,255,255,0.05)" stroke-width="1"/></svg>');
    opacity:0.3;
}
.sobre-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:800px;
    margin:0 auto;
}
.sobre-tag{
    display:inline-block;
    padding:8px 20px;
    background:rgba(74,144,226,0.2);
    border:2px solid var(--azul-claro);
    color:var(--azul-claro);
    border-radius:30px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:25px;
    animation:fadeInDown 0.8s ease;
}
.sobre-hero h1{
    font-size:clamp(2.5rem, 5vw, 4rem);
    color:#fff;
    margin-bottom:20px;
    line-height:1.2;
    animation:fadeInUp 0.8s ease 0.2s backwards;
}
.sobre-hero .highlight{
    color:var(--azul-claro);
    position:relative;
    display:inline-block;
}
.sobre-hero .highlight::after{
    content:'';
    position:absolute;
    bottom:5px;
    left:0;
    right:0;
    height:8px;
    background:rgba(74,144,226,0.3);
    z-index:-1;
}
.sobre-hero p{
    font-size:1.3rem;
    color:var(--cinza-azulado);
    animation:fadeInUp 0.8s ease 0.4s backwards;
}

/* DIRETOR SECTION */
.diretor-section{
    padding:100px 0;
    background:#fff;
}
.diretor-wrapper{
    display:grid;
    grid-template-columns: 400px 1fr;
    gap:80px;
    align-items:center;
}
.diretor-coluna-foto{
    position:relative;
}
.diretor-foto-container{
    position:relative;
    width:100%;
    max-width:350px;
    margin:0 auto;
}
.diretor-foto-principal{
    width:100%;
    height:auto;
    border-radius:20px;
    position:relative;
    z-index:2;
    box-shadow:0 20px 60px rgba(26,35,50,0.3);
}
.diretor-foto-bg{
    position:absolute;
    top:30px;
    left:30px;
    right:-30px;
    bottom:-30px;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    border-radius:20px;
    z-index:1;
    opacity:0.3;
}
.diretor-coluna-conteudo{
    padding:20px 0;
}
.section-subtitle{
    display:inline-block;
    color:var(--azul-claro);
    font-weight:700;
    font-size:0.9rem;
    text-transform:uppercase;
    letter-spacing:3px;
    margin-bottom:15px;
}
.diretor-coluna-conteudo h2{
    font-size:2.5rem;
    color:var(--azul-marinho);
    margin-bottom:30px;
    line-height:1.2;
}
.text-angola{
    color:var(--azul-claro);
    position:relative;
}
.diretor-texto blockquote{
    font-size:1.25rem;
    color:var(--azul-marinho);
    font-style:italic;
    border-left:4px solid var(--azul-claro);
    padding-left:25px;
    margin-bottom:30px;
    line-height:1.6;
}
.diretor-texto p{
    font-size:1.05rem;
    color:#455a64;
    line-height:1.9;
    margin-bottom:20px;
    text-align:justify;
}
.diretor-texto strong{
    color:var(--azul-marinho);
}
.diretor-assinatura-moderna{
    margin-top:50px;
    padding-top:30px;
    border-top:2px solid #eceff1;
}
.assinatura-linha{
    width:200px;
    height:2px;
    background:linear-gradient(90deg, var(--azul-claro), transparent);
    margin-bottom:15px;
}
.assinatura-nome{
    font-size:1.2rem;
    color:var(--azul-marinho);
    font-weight:600;
    margin-bottom:5px;
}
.assinatura-frase{
    color:#78909c;
    font-style:italic;
}

/* HISTÓRIA SECTION */
.historia-section{
    padding:100px 0;
}
.section-header-center{
    text-align:center;
    max-width:700px;
    margin:0 auto 60px;
}
.section-header-center h2{
    font-size:2.5rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
}
.section-desc{
    color:#607d8b;
    font-size:1.1rem;
}
.historia-container{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:60px;
    align-items:start;
}
.historia-texto-box{
    background:#fff;
    padding:40px;
    border-radius:12px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
}
.historia-intro{
    font-size:1.15rem;
    color:var(--azul-marinho);
    font-weight:600;
    line-height:1.8;
    margin-bottom:25px;
    padding-bottom:25px;
    border-bottom:2px solid var(--cinza-claro);
}
.historia-texto-box p{
    color:#455a64;
    line-height:1.9;
    margin-bottom:20px;
    text-align:justify;
}
.highlight-angola{
    color:var(--azul-claro);
    font-weight:700;
}

/* TIMELINE MODERNA */
.timeline-moderna{
    position:relative;
    padding-left:40px;
}
.timeline-moderna::before{
    content:'';
    position:absolute;
    left:15px;
    top:0;
    bottom:0;
    width:2px;
    background:linear-gradient(180deg, var(--azul-claro), var(--azul-medio));
}
.timeline-item-moderno{
    position:relative;
    margin-bottom:40px;
    padding-left:30px;
}
.timeline-marker{
    position:absolute;
    left:-40px;
    top:0;
    width:32px;
    height:32px;
    background:var(--azul-claro);
    border-radius:50%;
    border:4px solid #fff;
    box-shadow:0 0 0 3px var(--azul-claro);
    z-index:2;
}
.timeline-item-moderno.presente .timeline-marker{
    background:var(--azul-medio);
    box-shadow:0 0 0 3px var(--azul-medio);
    animation:pulse 2s infinite;
}
@keyframes pulse{
    0%, 100%{ transform:scale(1); opacity:1; }
    50%{ transform:scale(1.1); opacity:0.8; }
}
.timeline-content{
    background:#fff;
    padding:25px;
    border-radius:10px;
    box-shadow:0 2px 10px rgba(26,35,50,0.08);
    border-left:4px solid var(--azul-claro);
    transition:transform 0.3s;
}
.timeline-content:hover{
    transform:translateX(10px);
}
.timeline-ano-label{
    display:inline-block;
    background:var(--azul-claro);
    color:#fff;
    padding:4px 12px;
    border-radius:20px;
    font-size:0.85rem;
    font-weight:700;
    margin-bottom:10px;
}
.timeline-content h4{
    font-size:1.3rem;
    color:var(--azul-marinho);
    margin-bottom:10px;
}
.timeline-content p{
    color:#607d8b;
    line-height:1.6;
    font-size:0.95rem;
}
.timeline-badge{
    display:inline-block;
    margin-top:10px;
    background:rgba(76,175,80,0.1);
    color:#4caf50;
    padding:4px 12px;
    border-radius:12px;
    font-size:0.8rem;
    font-weight:600;
}

/* MVV SECTION */
.mvv-section{
    padding:100px 0;
    background:var(--cinza-claro);
}
.mvv-container-moderno{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:30px;
    margin-top:50px;
}
.mvv-card-moderno{
    background:#fff;
    padding:40px 30px;
    border-radius:16px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    transition:all 0.3s ease;
    position:relative;
    overflow:hidden;
}
.mvv-card-moderno::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:var(--azul-claro);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s;
}
.mvv-card-moderno:hover{
    transform:translateY(-10px);
    box-shadow:0 12px 40px rgba(44,95,138,0.15);
}
.mvv-card-moderno:hover::before{
    transform:scaleX(1);
}
.mvv-card-header{
    text-align:center;
    margin-bottom:25px;
}
.mvv-icon-circle{
    width:80px;
    height:80px;
    margin:0 auto 20px;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 20px rgba(74,144,226,0.3);
}
.mvv-svg{
    width:40px;
    height:40px;
    color:#fff;
}
.mvv-card-moderno h3{
    font-size:1.5rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
}
.mvv-card-moderno p{
    color:#455a64;
    line-height:1.8;
    text-align:center;
}
.valores-list-moderna{
    list-style:none;
    padding:0;
    margin:0;
}
.valores-list-moderna li{
    padding:12px 0;
    border-bottom:1px solid #eceff1;
    color:#455a64;
    display:flex;
    align-items:center;
    gap:10px;
}
.valores-list-moderna li:last-child{
    border-bottom:none;
}
.valor-check{
    color:var(--azul-claro);
    font-weight:700;
    font-size:1.1rem;
}

/* DADOS SECTION */
.dados-section{
    padding:80px 0;
    background:#fff;
}
.dados-grid-moderno{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:30px;
}
.dados-item-moderno{
    background:var(--cinza-claro);
    padding:35px 25px;
    border-radius:12px;
    display:flex;
    align-items:center;
    gap:20px;
    transition:all 0.3s;
    border-bottom:4px solid transparent;
}
.dados-item-moderno:hover{
    transform:translateY(-5px);
    box-shadow:0 8px 25px rgba(26,35,50,0.1);
    border-bottom-color:var(--azul-claro);
}
.dados-item-moderno.destaque{
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
}
.dados-item-moderno.destaque .dados-numero,
.dados-item-moderno.destaque .dados-label{
    color:#fff;
}
.dados-icon-box{
    font-size:2.5rem;
    flex-shrink:0;
}
.dados-info{
    display:flex;
    flex-direction:column;
}
.dados-numero{
    font-size:1.8rem;
    font-weight:800;
    color:var(--azul-marinho);
    line-height:1;
    margin-bottom:5px;
}
.dados-label{
    font-size:0.9rem;
    color:#78909c;
    font-weight:500;
}

/* CTA SECTION */
.sobre-cta{
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:100px 0;
    text-align:center;
}
.sobre-cta-content{
    max-width:700px;
    margin:0 auto;
}
.sobre-cta h2{
    font-size:2.5rem;
    color:#fff;
    margin-bottom:20px;
}
.sobre-cta p{
    font-size:1.2rem;
    color:var(--cinza-azulado);
    margin-bottom:35px;
}
.btn-lg{
    padding:18px 40px;
    font-size:1.1rem;
}

/* ANIMAÇÕES */
@keyframes fadeInDown{
    from{
        opacity:0;
        transform:translateY(-30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
@keyframes fadeInUp{
    from{
        opacity:0;
        transform:translateY(30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* RESPONSIVO */
@media (max-width:1024px){
    .diretor-wrapper{
        grid-template-columns:1fr;
        gap:50px;
    }
    .diretor-coluna-foto{
        max-width:400px;
        margin:0 auto;
    }
    .historia-container{
        grid-template-columns:1fr;
    }
    .mvv-container-moderno{
        grid-template-columns:1fr;
    }
    .dados-grid-moderno{
        grid-template-columns:repeat(2, 1fr);
    }
}

@media (max-width:768px){
    .sobre-hero{
        padding:140px 0 80px;
    }
    .diretor-foto-container{
        max-width:280px;
    }
    .diretor-coluna-conteudo h2{
        font-size:2rem;
    }
    .diretor-texto blockquote{
        font-size:1.1rem;
    }
    .timeline-moderna{
        padding-left:30px;
    }
    .dados-grid-moderno{
        grid-template-columns:1fr;
    }
    .sobre-cta h2{
        font-size:2rem;
    }
}

@media (max-width:480px){
    .diretor-foto-bg{
        display:none;
    }
    .diretor-texto p{
        text-align:left;
    }
    .historia-texto-box{
        padding:25px;
    }
}



/* ============================================
   PÁGINA DE SERVIÇOS - DESIGN MODERNO
   ============================================ */

/* HERO SECTION */
.servicos-hero{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:180px 0 100px;
    overflow:hidden;
}
.servicos-hero::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="1" fill="rgba(255,255,255,0.1)"/></svg>');
    opacity:0.5;
}
.servicos-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:800px;
    margin:0 auto;
}
.servicos-tag{
    display:inline-block;
    padding:8px 20px;
    background:rgba(74,144,226,0.2);
    border:2px solid var(--azul-claro);
    color:var(--azul-claro);
    border-radius:30px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:25px;
    animation:fadeInDown 0.8s ease;
}
.servicos-hero h1{
    font-size:clamp(2.5rem, 5vw, 4rem);
    color:#fff;
    margin-bottom:20px;
    line-height:1.2;
    animation:fadeInUp 0.8s ease 0.2s backwards;
}
.servicos-hero .highlight{
    color:var(--azul-claro);
    position:relative;
    display:inline-block;
}
.servicos-hero .highlight::after{
    content:'';
    position:absolute;
    bottom:5px;
    left:0;
    right:0;
    height:8px;
    background:rgba(74,144,226,0.3);
    z-index:-1;
}
.servicos-hero p{
    font-size:1.3rem;
    color:var(--cinza-azulado);
    animation:fadeInUp 0.8s ease 0.4s backwards;
}

/* INTRODUÇÃO */
.servicos-intro-section{
    padding:80px 0;
    background:#fff;
}
.servicos-intro{
    max-width:800px;
    margin:0 auto;
    text-align:center;
}
.servicos-intro h2{
    font-size:2.2rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
}
.servicos-intro p{
    font-size:1.1rem;
    color:#455a64;
    line-height:1.8;
}

/* SERVIÇOS DETALHADOS */
.servicos-detalhe-section{
    padding:80px 0;
    background:var(--cinza-claro);
}
.servico-block{
    display:grid;
    grid-template-columns: 450px 1fr;
    gap:60px;
    align-items:center;
    margin-bottom:80px;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 10px 40px rgba(26,35,50,0.08);
}
.servico-block:last-child{
    margin-bottom:0;
}
.servico-block.reverse{
    direction:rtl;
}
.servico-block.reverse > *{
    direction:ltr;
}

/* IMAGEM DO SERVIÇO */
.servico-imagem{
    position:relative;
    height:500px;
    overflow:hidden;
}
.servico-imagem img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s ease;
}
.servico-block:hover .servico-imagem img{
    transform:scale(1.05);
}
.servico-imagem-overlay{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:linear-gradient(135deg, rgba(26,35,50,0.3), rgba(74,144,226,0.2));
}
.servico-numero{
    position:absolute;
    top:30px;
    right:30px;
    font-size:5rem;
    font-weight:900;
    color:rgba(255,255,255,0.2);
    line-height:1;
}

/* CONTEÚDO DO SERVIÇO */
.servico-conteudo{
    padding:50px 50px 50px 0;
}
.servico-block.reverse .servico-conteudo{
    padding:50px 0 50px 50px;
}
.servico-header{
    display:flex;
    align-items:center;
    gap:25px;
    margin-bottom:25px;
}
.servico-icon-box{
    width:70px;
    height:70px;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    box-shadow:0 8px 20px rgba(74,144,226,0.3);
}
.servico-svg{
    width:35px;
    height:35px;
    color:#fff;
}
.servico-categoria{
    display:block;
    color:var(--azul-claro);
    font-size:0.85rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:5px;
}
.servico-header h2{
    font-size:2rem;
    color:var(--azul-marinho);
    line-height:1.2;
    margin:0;
}
.servico-descricao{
    font-size:1.05rem;
    color:#455a64;
    line-height:1.8;
    margin-bottom:30px;
}

/* LISTA DE SERVIÇOS */
.servico-lista{
    list-style:none;
    padding:0;
    margin:0 0 30px 0;
}
.servico-lista li{
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:18px 0;
    border-bottom:1px solid #eceff1;
}
.servico-lista li:last-child{
    border-bottom:none;
}
.servico-check{
    width:28px;
    height:28px;
    background:rgba(74,144,226,0.1);
    color:var(--azul-claro);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0;
    font-size:0.9rem;
}
.servico-lista li div{
    flex:1;
}
.servico-lista li strong{
    display:block;
    color:var(--azul-marinho);
    font-size:1.05rem;
    margin-bottom:4px;
}
.servico-lista li span{
    color:#78909c;
    font-size:0.9rem;
    line-height:1.5;
}

/* CTA DO SERVIÇO */
.servico-cta{
    display:inline-block;
    color:var(--azul-claro);
    font-weight:600;
    font-size:1rem;
    text-decoration:none;
    transition:all 0.3s;
    padding:12px 0;
    border-bottom:2px solid transparent;
}
.servico-cta:hover{
    color:var(--azul-marinho);
    border-bottom-color:var(--azul-claro);
    transform:translateX(5px);
}

/* CTA FINAL */
.servicos-cta{
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:100px 0;
    text-align:center;
}
.servicos-cta-content{
    max-width:700px;
    margin:0 auto;
}
.servicos-cta h2{
    font-size:2.5rem;
    color:#fff;
    margin-bottom:20px;
}
.servicos-cta p{
    font-size:1.2rem;
    color:var(--cinza-azulado);
    margin-bottom:35px;
}
.servicos-cta-buttons{
    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;
}
.btn-lg{
    padding:18px 40px;
    font-size:1.1rem;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .servico-block{
        grid-template-columns:1fr;
    }
    .servico-block.reverse{
        direction:ltr;
    }
    .servico-imagem{
        height:350px;
    }
    .servico-conteudo{
        padding:40px !important;
    }
}

@media (max-width:768px){
    .servicos-hero{
        padding:140px 0 80px;
    }
    .servico-header{
        flex-direction:column;
        align-items:flex-start;
    }
    .servico-header h2{
        font-size:1.6rem;
    }
    .servico-imagem{
        height:280px;
    }
    .servicos-cta h2{
        font-size:2rem;
    }
    .servicos-cta-buttons{
        flex-direction:column;
        align-items:center;
    }
}

@media (max-width:480px){
    .servico-conteudo{
        padding:30px 20px !important;
    }
    .servico-numero{
        font-size:3rem;
        top:15px;
        right:15px;
    }
}


/* ============================================
   PÁGINA DE CONTACTO - DESIGN MODERNO
   ============================================ */

/* HERO SECTION */
.contato-hero{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:180px 0 100px;
    overflow:hidden;
}
.contato-hero::before{
    content:'';
    position:absolute;
    top:-50%;
    right:-10%;
    width:600px;
    height:600px;
    background:radial-gradient(circle, rgba(74,144,226,0.3) 0%, transparent 70%);
    border-radius:50%;
}
.contato-hero::after{
    content:'';
    position:absolute;
    bottom:-30%;
    left:-10%;
    width:400px;
    height:400px;
    background:radial-gradient(circle, rgba(74,144,226,0.2) 0%, transparent 70%);
    border-radius:50%;
}
.contato-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:800px;
    margin:0 auto;
}
.contato-tag{
    display:inline-block;
    padding:8px 20px;
    background:rgba(74,144,226,0.2);
    border:2px solid var(--azul-claro);
    color:var(--azul-claro);
    border-radius:30px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:25px;
    animation:fadeInDown 0.8s ease;
}
.contato-hero h1{
    font-size:clamp(2.5rem, 5vw, 4rem);
    color:#fff;
    margin-bottom:20px;
    line-height:1.2;
    animation:fadeInUp 0.8s ease 0.2s backwards;
}
.contato-hero .highlight{
    color:var(--azul-claro);
    position:relative;
    display:inline-block;
}
.contato-hero .highlight::after{
    content:'';
    position:absolute;
    bottom:5px;
    left:0;
    right:0;
    height:8px;
    background:rgba(74,144,226,0.3);
    z-index:-1;
}
.contato-hero p{
    font-size:1.3rem;
    color:var(--cinza-azulado);
    animation:fadeInUp 0.8s ease 0.4s backwards;
}

/* INFO CARDS */
.contato-info-section{
    padding:100px 0;
    background:#fff;
}
.contato-cards-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:30px;
    margin-top:60px;
}
.contato-card{
    background:#fff;
    padding:40px 30px;
    border-radius:16px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    text-align:center;
    transition:all 0.3s ease;
    border-top:4px solid transparent;
    position:relative;
    overflow:hidden;
}
.contato-card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg, var(--azul-claro), var(--azul-medio));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s;
}
.contato-card:hover{
    transform:translateY(-10px);
    box-shadow:0 12px 40px rgba(44,95,138,0.15);
}
.contato-card:hover::before{
    transform:scaleX(1);
}
.contato-card.destaque{
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    color:#fff;
}
.contato-card.destaque h3,
.contato-card.destaque .contato-card-desc{
    color:#fff;
}
.contato-card.destaque .contato-link{
    color:#fff;
}
.contato-card-icon{
    width:80px;
    height:80px;
    margin:0 auto 25px;
    background:rgba(74,144,226,0.1);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all 0.3s;
}
.contato-card:hover .contato-card-icon{
    transform:scale(1.1) rotate(5deg);
}
.contato-card.destaque .contato-card-icon{
    background:rgba(255,255,255,0.2);
}
.contato-svg{
    width:40px;
    height:40px;
    color:var(--azul-claro);
}
.contato-card.destaque .contato-svg{
    color:#fff;
}
.contato-card h3{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
}
.contato-card-content{
    margin-bottom:20px;
}
.contato-link{
    display:block;
    color:var(--azul-claro);
    font-size:1.1rem;
    font-weight:600;
    text-decoration:none;
    margin-bottom:8px;
    transition:color 0.3s;
}
.contato-link:hover{
    color:var(--azul-marinho);
}
.contato-endereco{
    color:inherit;
    line-height:1.8;
    font-size:1.05rem;
}
.contato-card-desc{
    color:#78909c;
    font-size:0.9rem;
    margin:0;
}

/* FORMULÁRIO SECTION */
.contato-form-section{
    padding:100px 0;
}
.contato-form-grid{
    display:grid;
    grid-template-columns: 1.3fr 1fr;
    gap:60px;
    align-items:start;
}
.contato-form-header{
    margin-bottom:40px;
}
.contato-form-header h2{
    font-size:2.2rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
}
.contato-form-header p{
    color:#607d8b;
    font-size:1.05rem;
    line-height:1.7;
}

/* FORMULÁRIO MODERNO */
.contato-form-moderno{
    background:#fff;
    padding:40px;
    border-radius:16px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
}
.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}
.form-group{
    margin-bottom:20px;
}
.form-group label{
    display:block;
    color:var(--azul-marinho);
    font-weight:600;
    font-size:0.9rem;
    margin-bottom:8px;
}
.form-group input,
.form-group select,
.form-group textarea{
    width:100%;
    padding:14px 16px;
    border:2px solid #eceff1;
    border-radius:8px;
    font-family:inherit;
    font-size:1rem;
    color:var(--azul-marinho);
    background:#fff;
    transition:all 0.3s;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
    outline:none;
    border-color:var(--azul-claro);
    box-shadow:0 0 0 3px rgba(74,144,226,0.1);
}
.form-group input::placeholder,
.form-group textarea::placeholder{
    color:#b0bec5;
}
.btn-full{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-top:10px;
}
.btn-icon{
    width:20px;
    height:20px;
    transition:transform 0.3s;
}
.btn-full:hover .btn-icon{
    transform:translateX(5px);
}

/* SIDEBAR */
.contato-sidebar{
    display:flex;
    flex-direction:column;
    gap:25px;
}
.contato-info-box{
    background:#fff;
    padding:30px;
    border-radius:16px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
}
.contato-info-box h3{
    font-size:1.3rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:2px solid var(--cinza-claro);
}
.horario-lista{
    display:flex;
    flex-direction:column;
    gap:15px;
}
.horario-item{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:12px 0;
    border-bottom:1px solid #eceff1;
}
.horario-item:last-child{
    border-bottom:none;
}
.horario-dia{
    color:#455a64;
    font-weight:500;
}
.horario-hora{
    color:var(--azul-claro);
    font-weight:700;
}
.vantagens-lista{
    list-style:none;
    padding:0;
    margin:0;
}
.vantagens-lista li{
    padding:12px 0;
    color:#455a64;
    border-bottom:1px solid #eceff1;
    font-size:0.95rem;
}
.vantagens-lista li:last-child{
    border-bottom:none;
}
.cta-box{
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    color:#fff;
    text-align:center;
}
.cta-box h3{
    color:#fff;
    border-bottom-color:rgba(255,255,255,0.2);
}
.cta-box p{
    color:rgba(255,255,255,0.9);
    margin-bottom:20px;
}
.cta-box .btn{
    background:#fff;
    color:var(--azul-claro);
    border-color:#fff;
}
.cta-box .btn:hover{
    background:var(--azul-marinho);
    color:#fff;
    border-color:var(--azul-marinho);
}

/* CTA FINAL */
.contato-cta-final{
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:100px 0;
    text-align:center;
}
.contato-cta-content{
    max-width:700px;
    margin:0 auto;
}
.contato-cta-content h2{
    font-size:2.5rem;
    color:#fff;
    margin-bottom:20px;
}
.contato-cta-content p{
    font-size:1.2rem;
    color:var(--cinza-azulado);
    margin-bottom:35px;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .contato-cards-grid{
        grid-template-columns:1fr;
    }
    .contato-form-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:768px){
    .contato-hero{
        padding:140px 0 80px;
    }
    .form-row{
        grid-template-columns:1fr;
    }
    .contato-form-moderno{
        padding:25px;
    }
    .contato-cta-content h2{
        font-size:2rem;
    }
}

@media (max-width:480px){
    .contato-card{
        padding:30px 20px;
    }
    .contato-link{
        font-size:1rem;
    }
}

/* ============================================
   SECÇÃO DE TESTEMUNHOS - SLIDER
   ============================================ */

.testimonials-section{
    padding:100px 0;
    background:linear-gradient(135deg, #f5f7fa 0%, #ffffff 100%);
    position:relative;
    overflow:hidden;
}
.testimonials-section::before{
    content:'';
    position:absolute;
    top:-100px;
    right:-100px;
    width:400px;
    height:400px;
    background:radial-gradient(circle, rgba(74,144,226,0.1) 0%, transparent 70%);
    border-radius:50%;
}
.testimonials-section::after{
    content:'';
    position:absolute;
    bottom:-100px;
    left:-100px;
    width:300px;
    height:300px;
    background:radial-gradient(circle, rgba(74,144,226,0.08) 0%, transparent 70%);
    border-radius:50%;
}

.testimonials-slider-wrapper{
    position:relative;
    max-width:900px;
    margin:60px auto 0;
    display:flex;
    align-items:center;
    gap:20px;
}
.testimonials-slider{
    flex:1;
    position:relative;
    overflow:hidden;
    min-height:450px;
}
.testimonial-item{
    position:absolute;
    top:0;
    left:0;
    right:0;
    opacity:0;
    transform:translateX(50px);
    transition:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events:none;
}
.testimonial-item.active{
    opacity:1;
    transform:translateX(0);
    pointer-events:auto;
    position:relative;
}
.testimonial-item.prev{
    transform:translateX(-50px);
}

.testimonial-card{
    background:#fff;
    padding:50px;
    border-radius:20px;
    box-shadow:0 10px 40px rgba(26,35,50,0.1);
    border-top:4px solid var(--azul-claro);
}
.testimonial-header{
    display:flex;
    align-items:center;
    gap:25px;
    margin-bottom:25px;
}
.testimonial-avatar{
    width:90px;
    height:90px;
    border-radius:50%;
    overflow:hidden;
    border:4px solid var(--azul-claro);
    box-shadow:0 4px 15px rgba(74,144,226,0.3);
    flex-shrink:0;
}
.testimonial-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.testimonial-info{
    flex:1;
}
.testimonial-name{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:5px;
    font-weight:700;
}
.testimonial-position{
    color:var(--azul-claro);
    font-weight:600;
    font-size:0.95rem;
    margin-bottom:3px;
}
.testimonial-company{
    color:#78909c;
    font-size:0.9rem;
}
.testimonial-rating{
    display:flex;
    gap:5px;
    margin-bottom:25px;
}
.star{
    color:#ffc107;
    font-size:1.3rem;
    animation:starPulse 0.5s ease;
}
@keyframes starPulse{
    0%, 100%{ transform:scale(1); }
    50%{ transform:scale(1.2); }
}
.testimonial-content{
    position:relative;
}
.quote-icon{
    width:50px;
    height:50px;
    color:rgba(74,144,226,0.2);
    position:absolute;
    top:-10px;
    left:-10px;
    z-index:0;
}
.testimonial-content p{
    position:relative;
    z-index:1;
    font-size:1.1rem;
    color:#455a64;
    line-height:1.9;
    font-style:italic;
    padding-left:50px;
    margin:0;
}

/* NAVEGAÇÃO */
.testimonials-nav{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#fff;
    border:2px solid var(--azul-claro);
    color:var(--azul-claro);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:all 0.3s;
    flex-shrink:0;
    box-shadow:0 4px 15px rgba(74,144,226,0.2);
}
.testimonials-nav:hover{
    background:var(--azul-claro);
    color:#fff;
    transform:scale(1.1);
}
.testimonials-nav svg{
    width:28px;
    height:28px;
}

/* DOTS */
.testimonials-dots{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:40px;
}
.dot{
    width:14px;
    height:14px;
    border-radius:50%;
    background:#cfd8dc;
    cursor:pointer;
    transition:all 0.3s;
    border:2px solid transparent;
}
.dot:hover{
    background:var(--azul-medio);
    transform:scale(1.2);
}
.dot.active{
    background:var(--azul-claro);
    border-color:var(--azul-marinho);
    transform:scale(1.3);
}

/* RESPONSIVO */
@media (max-width:768px){
    .testimonials-slider-wrapper{
        flex-direction:column;
    }
    .testimonials-nav{
        width:50px;
        height:50px;
    }
    .testimonial-card{
        padding:30px;
    }
    .testimonial-header{
        flex-direction:column;
        text-align:center;
    }
    .testimonial-content p{
        padding-left:0;
        padding-top:20px;
    }
    .quote-icon{
        top:10px;
        left:10px;
    }
}

@media (max-width:480px){
    .testimonial-card{
        padding:25px;
    }
    .testimonial-avatar{
        width:70px;
        height:70px;
    }
    .testimonial-name{
        font-size:1.2rem;
    }
    .testimonial-content p{
        font-size:1rem;
    }
    .testimonials-nav{
        width:45px;
        height:45px;
    }
}

/* ============================================
   PÁGINA DE NEGÓCIOS - DESIGN MODERNO
   ============================================ */

/* HERO MODERNO */
.negocios-hero-moderno{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 50%, var(--azul-claro) 100%);
    padding:200px 0 120px;
    overflow:hidden;
    min-height:600px;
    display:flex;
    align-items:center;
}
.hero-bg-shapes{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    overflow:hidden;
}
.shape{
    position:absolute;
    border-radius:50%;
    opacity:0.1;
}
.shape-1{
    width:600px;
    height:600px;
    background:radial-gradient(circle, var(--azul-claro), transparent);
    top:-200px;
    right:-200px;
    animation:float 20s ease-in-out infinite;
}
.shape-2{
    width:400px;
    height:400px;
    background:radial-gradient(circle, #fff, transparent);
    bottom:-100px;
    left:-100px;
    animation:float 15s ease-in-out infinite reverse;
}
.shape-3{
    width:300px;
    height:300px;
    background:radial-gradient(circle, var(--azul-claro), transparent);
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    animation:pulse-shape 10s ease-in-out infinite;
}
@keyframes float{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(30px, -30px); }
}
@keyframes pulse-shape{
    0%, 100%{ transform:translate(-50%, -50%) scale(1); opacity:0.1; }
    50%{ transform:translate(-50%, -50%) scale(1.2); opacity:0.2; }
}
.negocios-hero-content-moderno{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:900px;
    margin:0 auto;
}
.negocios-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 24px;
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.2);
    border-radius:50px;
    color:#fff;
    font-weight:600;
    font-size:0.9rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:30px;
    animation:fadeInDown 0.8s ease;
}
.badge-dot{
    width:8px;
    height:8px;
    background:var(--azul-claro);
    border-radius:50%;
    animation:pulse-dot 2s ease-in-out infinite;
}
@keyframes pulse-dot{
    0%, 100%{ transform:scale(1); opacity:1; }
    50%{ transform:scale(1.5); opacity:0.5; }
}
.negocios-hero-moderno h1{
    font-size:clamp(3rem, 6vw, 5rem);
    color:#fff;
    margin-bottom:25px;
    line-height:1.1;
    font-weight:800;
    animation:fadeInUp 0.8s ease 0.2s backwards;
}
.highlight-gradient{
    background:linear-gradient(135deg, #fff 0%, var(--azul-claro) 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
    position:relative;
}
.hero-subtitle{
    font-size:1.3rem;
    color:rgba(255,255,255,0.9);
    margin-bottom:50px;
    line-height:1.6;
    animation:fadeInUp 0.8s ease 0.4s backwards;
}
.hero-stats{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:40px;
    animation:fadeInUp 0.8s ease 0.6s backwards;
}
.hero-stat{
    display:flex;
    flex-direction:column;
    align-items:center;
}
.stat-number{
    font-size:3rem;
    font-weight:800;
    color:#fff;
    line-height:1;
    margin-bottom:5px;
}
.stat-label{
    font-size:0.9rem;
    color:rgba(255,255,255,0.7);
    text-transform:uppercase;
    letter-spacing:1px;
}
.hero-stat-divider{
    width:1px;
    height:60px;
    background:rgba(255,255,255,0.3);
}

/* INTRODUÇÃO MODERNA */
.negocios-intro-moderno{
    padding:100px 0;
    background:#fff;
}
.intro-grid{
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:80px;
    align-items:center;
}
.intro-content h2{
    font-size:2.5rem;
    color:var(--azul-marinho);
    margin-bottom:25px;
    line-height:1.2;
}
.intro-content p{
    font-size:1.1rem;
    color:#455a64;
    line-height:1.8;
    margin-bottom:20px;
}
.intro-features{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin-top:30px;
}
.intro-feature{
    display:flex;
    align-items:center;
    gap:15px;
}
.feature-icon{
    width:30px;
    height:30px;
    background:var(--azul-claro);
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    font-size:0.9rem;
    flex-shrink:0;
}
.intro-feature span{
    color:var(--azul-marinho);
    font-weight:500;
    font-size:1.05rem;
}
.intro-visual{
    display:flex;
    justify-content:center;
}
.visual-card{
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    padding:60px 40px;
    border-radius:20px;
    text-align:center;
    color:#fff;
    box-shadow:0 20px 60px rgba(26,35,50,0.3);
    position:relative;
    overflow:hidden;
}
.visual-card::before{
    content:'';
    position:absolute;
    top:-50%;
    right:-50%;
    width:200%;
    height:200%;
    background:radial-gradient(circle, rgba(255,255,255,0.1), transparent);
    animation:rotate 20s linear infinite;
}
@keyframes rotate{
    from{ transform:rotate(0deg); }
    to{ transform:rotate(360deg); }
}
.visual-icon{
    font-size:5rem;
    margin-bottom:20px;
    position:relative;
    z-index:1;
}
.visual-card h3{
    font-size:2rem;
    margin-bottom:10px;
    position:relative;
    z-index:1;
}
.visual-card p{
    font-size:1.1rem;
    opacity:0.9;
    position:relative;
    z-index:1;
}

/* EMPRESAS SECTION */
.negocios-empresas-section{
    padding:100px 0;
    background:var(--cinza-claro);
}
.empresas-grid-moderno{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
    gap:30px;
    margin-top:60px;
}
.empresa-card-moderno{
    position:relative;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    text-decoration:none;
    color:inherit;
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
}
.empresa-card-moderno::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:var(--cor-empresa);
    transition:height 0.3s;
}
.empresa-card-moderno:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 60px rgba(26,35,50,0.15);
}
.empresa-card-moderno:hover::before{
    height:6px;
}
.card-number{
    position:absolute;
    top:20px;
    right:20px;
    font-size:4rem;
    font-weight:900;
    color:rgba(26,35,50,0.05);
    line-height:1;
    z-index:1;
}
.card-glow{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:radial-gradient(circle at top right, var(--cor-empresa), transparent);
    opacity:0;
    transition:opacity 0.3s;
    z-index:0;
}
.empresa-card-moderno:hover .card-glow{
    opacity:0.05;
}
.card-content{
    position:relative;
    z-index:2;
    padding:40px 30px;
    display:flex;
    flex-direction:column;
    height:100%;
}
.card-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:25px;
    gap:15px;
}
.empresa-card-logo{
    width:70px;
    height:70px;
    background:#fff;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:10px;
    box-shadow:0 4px 15px rgba(0,0,0,0.1);
    transition:transform 0.3s;
}
.empresa-card-moderno:hover .empresa-card-logo{
    transform:scale(1.1) rotate(5deg);
}
.empresa-card-logo img{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
}
.empresa-icon{
    font-size:3rem;
}
.empresa-segmento{
    background:rgba(74,144,226,0.1);
    color:var(--azul-claro);
    padding:6px 14px;
    border-radius:20px;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    white-space:nowrap;
}
.card-body{
    flex:1;
    margin-bottom:25px;
}
.card-body h3{
    font-size:1.6rem;
    color:var(--azul-marinho);
    margin-bottom:10px;
    font-weight:700;
}
.empresa-card-tagline{
    font-size:0.95rem;
    color:var(--cor-empresa);
    font-style:italic;
    font-weight:600;
    margin-bottom:15px;
    padding-bottom:15px;
    border-bottom:1px solid #eceff1;
}
.card-descricao{
    color:#455a64;
    line-height:1.7;
    font-size:0.95rem;
}
.card-footer{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-top:20px;
    border-top:1px solid #eceff1;
}
.empresa-fundacao{
    color:#78909c;
    font-size:0.9rem;
    font-weight:500;
}
.card-arrow{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--cor-empresa);
    font-weight:600;
    font-size:0.9rem;
    transition:gap 0.3s;
}
.card-arrow svg{
    width:18px;
    height:18px;
    transition:transform 0.3s;
}
.empresa-card-moderno:hover .card-arrow{
    gap:12px;
}
.empresa-card-moderno:hover .card-arrow svg{
    transform:translateX(5px);
}

/* VALORES DO GRUPO */
.valores-grupo-section{
    padding:100px 0;
    background:#fff;
}
.valores-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
    gap:30px;
    margin-top:60px;
}
.valor-item{
    text-align:center;
    padding:40px 30px;
    border-radius:16px;
    background:var(--cinza-claro);
    transition:all 0.3s;
}
.valor-item:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(26,35,50,0.1);
    background:#fff;
}
.valor-icon-box{
    width:80px;
    height:80px;
    margin:0 auto 25px;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 20px rgba(74,144,226,0.3);
}
.valor-icon-box svg{
    width:40px;
    height:40px;
    color:#fff;
}
.valor-item h3{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
}
.valor-item p{
    color:#455a64;
    line-height:1.7;
}

/* CTA MODERNO */
.negocios-cta-moderno{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:120px 0;
    overflow:hidden;
}
.cta-bg-pattern{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="2" fill="rgba(255,255,255,0.05)"/></svg>');
    opacity:0.5;
}
.negocios-cta-content{
    position:relative;
    z-index:2;
    max-width:800px;
    margin:0 auto;
    text-align:center;
}
.cta-icon{
    width:80px;
    height:80px;
    margin:0 auto 30px;
    background:rgba(255,255,255,0.15);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    backdrop-filter:blur(10px);
}
.cta-icon svg{
    width:40px;
    height:40px;
    color:#fff;
}
.negocios-cta-content h2{
    font-size:2.8rem;
    color:#fff;
    margin-bottom:20px;
    font-weight:800;
}
.negocios-cta-content p{
    font-size:1.2rem;
    color:rgba(255,255,255,0.9);
    margin-bottom:40px;
    line-height:1.7;
}
.cta-buttons{
    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;
}
.btn-lg{
    padding:18px 40px;
    font-size:1.1rem;
    display:inline-flex;
    align-items:center;
    gap:10px;
}
.btn-lg svg{
    width:20px;
    height:20px;
    transition:transform 0.3s;
}
.btn-lg:hover svg{
    transform:translateX(5px);
}

/* ANIMAÇÕES */
@keyframes fadeInDown{
    from{
        opacity:0;
        transform:translateY(-30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
@keyframes fadeInUp{
    from{
        opacity:0;
        transform:translateY(30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* RESPONSIVO */
@media (max-width:1024px){
    .intro-grid{
        grid-template-columns:1fr;
        gap:50px;
    }
    .hero-stats{
        gap:25px;
    }
    .stat-number{
        font-size:2.5rem;
    }
}

@media (max-width:768px){
    .negocios-hero-moderno{
        padding:160px 0 80px;
    }
    .hero-stats{
        flex-direction:column;
        gap:20px;
    }
    .hero-stat-divider{
        width:60px;
        height:1px;
    }
    .empresas-grid-moderno{
        grid-template-columns:1fr;
    }
    .valores-grid{
        grid-template-columns:1fr;
    }
    .cta-buttons{
        flex-direction:column;
        align-items:center;
    }
    .btn-lg{
        width:100%;
        max-width:300px;
        justify-content:center;
    }
}

@media (max-width:480px){
    .negocios-hero-moderno h1{
        font-size:2.5rem;
    }
    .intro-content h2{
        font-size:2rem;
    }
    .card-content{
        padding:30px 20px;
    }
    .card-number{
        font-size:3rem;
    }
}


/* ============================================
   PÁGINA DE DETALHES DO NEGÓCIO - MODERNA
   ============================================ */

/* HERO MODERNO */
.empresa-hero-moderno{
    position:relative;
    padding:180px 0 100px;
    overflow:hidden;
    background:linear-gradient(135deg, var(--cor-empresa) 0%, var(--azul-marinho) 100%);
}
.hero-bg-elements{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    overflow:hidden;
}
.hero-circle{
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,0.05);
}
.hero-circle-1{
    width:500px;
    height:500px;
    top:-200px;
    right:-100px;
    animation:float-slow 20s ease-in-out infinite;
}
.hero-circle-2{
    width:300px;
    height:300px;
    bottom:-100px;
    left:-50px;
    animation:float-slow 15s ease-in-out infinite reverse;
}
@keyframes float-slow{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(30px, -30px); }
}
.hero-grid-pattern{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background-image: 
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size:50px 50px;
}
.hero-content-moderno{
    position:relative;
    z-index:2;
}
.hero-breadcrumb{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:40px;
    font-size:0.9rem;
    color:rgba(255,255,255,0.7);
}
.hero-breadcrumb a{
    color:rgba(255,255,255,0.7);
    text-decoration:none;
    transition:color 0.3s;
}
.hero-breadcrumb a:hover{
    color:#fff;
}
.breadcrumb-separator{
    opacity:0.5;
}
.breadcrumb-current{
    color:#fff;
    font-weight:600;
}
.hero-main-content{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:60px;
    align-items:center;
}
.hero-logo-section{
    display:flex;
    justify-content:center;
}
.hero-logo-container{
    position:relative;
    width:200px;
    height:200px;
}
.logo-glow{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    width:250px;
    height:250px;
    background:radial-gradient(circle, rgba(255,255,255,0.2), transparent);
    border-radius:50%;
    animation:pulse-glow 3s ease-in-out infinite;
}
@keyframes pulse-glow{
    0%, 100%{ transform:translate(-50%, -50%) scale(1); opacity:0.5; }
    50%{ transform:translate(-50%, -50%) scale(1.2); opacity:0.8; }
}
.hero-logo{
    width:100%;
    height:100%;
    object-fit:contain;
    position:relative;
    z-index:2;
    filter:drop-shadow(0 10px 30px rgba(0,0,0,0.3));
}
.hero-logo-fallback{
    width:100%;
    height:100%;
    background:rgba(255,255,255,0.95);
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:6rem;
    position:relative;
    z-index:2;
}
.hero-icon-large{
    font-size:8rem;
    background:rgba(255,255,255,0.95);
    width:200px;
    height:200px;
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 20px 60px rgba(0,0,0,0.3);
}
.hero-text-section{
    color:#fff;
}
.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 20px;
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.2);
    border-radius:50px;
    font-size:0.85rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:25px;
}
.badge-dot{
    width:8px;
    height:8px;
    background:#fff;
    border-radius:50%;
    animation:pulse-dot 2s ease-in-out infinite;
}
@keyframes pulse-dot{
    0%, 100%{ opacity:1; }
    50%{ opacity:0.5; }
}
.hero-title{
    font-size:clamp(2.5rem, 5vw, 4rem);
    font-weight:800;
    margin-bottom:15px;
    line-height:1.1;
}
.hero-tagline{
    font-size:1.3rem;
    font-style:italic;
    opacity:0.9;
    margin-bottom:30px;
    font-weight:500;
}
.hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:25px;
}
.meta-item{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:0.95rem;
    opacity:0.9;
}
.meta-item svg{
    width:20px;
    height:20px;
    opacity:0.8;
}

/* MENSAGEM MODERNA */
.mensagem-section-moderna{
    padding:100px 0;
    background:#fff;
}
.mensagem-container-moderno{
    max-width:900px;
    margin:0 auto;
    position:relative;
}
.mensagem-decoration{
    position:absolute;
    top:0;
    left:-50px;
    width:2px;
    height:100%;
}
.decoration-line{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(180deg, var(--cor-empresa, var(--azul-claro)), transparent);
}
.decoration-circle{
    position:absolute;
    top:50px;
    left:-6px;
    width:14px;
    height:14px;
    background:var(--cor-empresa, var(--azul-claro));
    border-radius:50%;
    box-shadow:0 0 0 4px rgba(74,144,226,0.2);
}
.mensagem-content{
    padding-left:80px;
}
.section-label{
    display:inline-block;
    color:var(--cor-empresa, var(--azul-claro));
    font-weight:700;
    font-size:0.85rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:15px;
}
.mensagem-title{
    font-size:2.2rem;
    color:var(--azul-marinho);
    margin-bottom:30px;
    font-weight:700;
}
.mensagem-quote{
    position:relative;
    background:var(--cinza-claro);
    padding:50px;
    border-radius:20px;
    border-left:4px solid var(--cor-empresa, var(--azul-claro));
}
.quote-mark{
    width:60px;
    height:60px;
    color:var(--cor-empresa, var(--azul-claro));
    opacity:0.2;
    position:absolute;
    top:20px;
    left:20px;
}
.mensagem-quote p{
    position:relative;
    z-index:1;
    font-size:1.15rem;
    color:var(--azul-marinho);
    line-height:1.9;
    font-style:italic;
    margin:0;
    padding-left:80px;
}

/* QUEM SOMOS MODERNA */
.quem-somos-moderna{
    padding:100px 0;
    background:var(--cinza-claro);
}
.quem-somos-grid{
    display:grid;
    grid-template-columns:1fr 1.5fr;
    gap:80px;
    align-items:center;
}
.quem-somos-visual{
    display:flex;
    justify-content:center;
}
.visual-card-moderno{
    background:linear-gradient(135deg, var(--cor-empresa, var(--azul-claro)), var(--azul-medio));
    padding:60px 40px;
    border-radius:20px;
    text-align:center;
    color:#fff;
    position:relative;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,0.2);
}
.visual-card-moderno::before{
    content:'';
    position:absolute;
    top:-50%;
    right:-50%;
    width:200%;
    height:200%;
    background:radial-gradient(circle, rgba(255,255,255,0.1), transparent);
    animation:rotate-slow 20s linear infinite;
}
@keyframes rotate-slow{
    from{ transform:rotate(0deg); }
    to{ transform:rotate(360deg); }
}
.visual-number{
    font-size:5rem;
    font-weight:900;
    opacity:0.3;
    margin-bottom:20px;
    position:relative;
    z-index:1;
}
.visual-card-moderno h3{
    font-size:2rem;
    margin-bottom:10px;
    position:relative;
    z-index:1;
}
.visual-card-moderno p{
    font-size:1.1rem;
    opacity:0.9;
    position:relative;
    z-index:1;
}
.visual-accent{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:4px;
    background:rgba(255,255,255,0.3);
}
.quem-somos-texto{
    padding:20px 0;
}
.section-title-moderno{
    font-size:2.5rem;
    color:var(--azul-marinho);
    margin-bottom:25px;
    font-weight:700;
}
.text-highlight{
    color:var(--cor-empresa, var(--azul-claro));
    position:relative;
}
.texto-principal{
    font-size:1.1rem;
    color:#455a64;
    line-height:1.9;
    margin-bottom:30px;
}
.quem-somos-features{
    display:flex;
    flex-direction:column;
    gap:15px;
}
.feature-item{
    display:flex;
    align-items:center;
    gap:15px;
}
.feature-icon{
    width:30px;
    height:30px;
    background:var(--cor-empresa, var(--azul-claro));
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.feature-icon svg{
    width:16px;
    height:16px;
    color:#fff;
}
.feature-item span{
    color:var(--azul-marinho);
    font-weight:500;
    font-size:1.05rem;
}

/* MVV MODERNA */
.mvv-moderna{
    padding:100px 0;
    background:#fff;
}
.section-header-moderno{
    text-align:center;
    max-width:700px;
    margin:0 auto 60px;
}
.section-subtitle-moderno{
    color:#607d8b;
    font-size:1.1rem;
    margin-top:15px;
}
.mvv-grid-moderno{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:30px;
}
.mvv-card-moderno{
    background:#fff;
    padding:40px 30px;
    border-radius:20px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    position:relative;
    overflow:hidden;
    transition:all 0.3s;
}
.mvv-card-moderno:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 60px rgba(26,35,50,0.15);
}
.mvv-card-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    margin-bottom:25px;
}
.mvv-icon-wrapper{
    width:70px;
    height:70px;
    background:linear-gradient(135deg, var(--cor-empresa, var(--azul-claro)), var(--azul-medio));
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 20px rgba(74,144,226,0.3);
}
.mvv-icon-wrapper svg{
    width:35px;
    height:35px;
    color:#fff;
}
.mvv-number{
    font-size:3rem;
    font-weight:900;
    color:rgba(26,35,50,0.05);
    line-height:1;
}
.mvv-card-moderno h3{
    font-size:1.5rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
    font-weight:700;
}
.mvv-card-moderno p{
    color:#455a64;
    line-height:1.8;
    font-size:1rem;
}
.mvv-card-accent{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:4px;
    background:var(--cor-empresa, var(--azul-claro));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s;
}
.mvv-card-moderno:hover .mvv-card-accent{
    transform:scaleX(1);
}
.valores-lista-moderna{
    list-style:none;
    padding:0;
    margin:0;
}
.valores-lista-moderna li{
    display:flex;
    gap:15px;
    padding:15px 0;
    border-bottom:1px solid #eceff1;
}
.valores-lista-moderna li:last-child{
    border-bottom:none;
}
.valor-bullet{
    width:8px;
    height:8px;
    background:var(--cor-empresa, var(--azul-claro));
    border-radius:50%;
    flex-shrink:0;
    margin-top:8px;
}
.valores-lista-moderna strong{
    display:block;
    color:var(--azul-marinho);
    font-size:1rem;
    margin-bottom:5px;
}
.valores-lista-moderna span{
    color:#607d8b;
    font-size:0.9rem;
    line-height:1.6;
}

/* CONTACTO MODERNO */
.contacto-empresa-moderno{
    padding:80px 0;
    background:var(--cinza-claro);
}
.contacto-card-moderno{
    max-width:900px;
    margin:0 auto;
    background:#fff;
    padding:50px;
    border-radius:20px;
    box-shadow:0 10px 40px rgba(26,35,50,0.1);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    border-left:4px solid var(--cor-empresa, var(--azul-claro));
}
.contacto-info-moderno{
    display:flex;
    align-items:center;
    gap:25px;
    flex:1;
}
.contacto-icon-wrapper{
    width:60px;
    height:60px;
    background:linear-gradient(135deg, var(--cor-empresa, var(--azul-claro)), var(--azul-medio));
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.contacto-icon-wrapper svg{
    width:30px;
    height:30px;
    color:#fff;
}
.contacto-texto{
    flex:1;
}
.contacto-label{
    display:block;
    color:var(--cor-empresa, var(--azul-claro));
    font-size:0.85rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:5px;
}
.contacto-texto h3{
    font-size:1.5rem;
    color:var(--azul-marinho);
    margin-bottom:5px;
}
.contacto-numeros{
    color:#455a64;
    font-size:1.1rem;
    font-weight:600;
    margin:0;
}
.btn-contacto-moderno{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:16px 32px;
    background:var(--cor-empresa, var(--azul-claro));
    color:#fff;
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    transition:all 0.3s;
    box-shadow:0 4px 15px rgba(74,144,226,0.3);
}
.btn-contacto-moderno svg{
    width:20px;
    height:20px;
}
.btn-contacto-moderno:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 25px rgba(74,144,226,0.4);
}

/* CTA FINAL MODERNO */
.cta-final-moderno{
    position:relative;
    background:linear-gradient(135deg, var(--cor-empresa, var(--azul-claro)) 0%, var(--azul-marinho) 100%);
    padding:120px 0;
    overflow:hidden;
}
.cta-bg-pattern{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="2" fill="rgba(255,255,255,0.05)"/></svg>');
    opacity:0.5;
}
.cta-content-moderno{
    position:relative;
    z-index:2;
    max-width:800px;
    margin:0 auto;
    text-align:center;
    color:#fff;
}
.cta-icon-wrapper{
    width:80px;
    height:80px;
    margin:0 auto 30px;
    background:rgba(255,255,255,0.15);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    backdrop-filter:blur(10px);
}
.cta-icon-wrapper svg{
    width:40px;
    height:40px;
    color:#fff;
}
.cta-content-moderno h2{
    font-size:2.8rem;
    margin-bottom:20px;
    font-weight:800;
}
.cta-content-moderno p{
    font-size:1.2rem;
    opacity:0.9;
    margin-bottom:40px;
    line-height:1.7;
}
.cta-buttons-moderno{
    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;
}
.btn-primary-moderno{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:18px 40px;
    background:#fff;
    color:var(--cor-empresa, var(--azul-claro));
    border-radius:12px;
    text-decoration:none;
    font-weight:700;
    font-size:1.1rem;
    transition:all 0.3s;
    box-shadow:0 4px 15px rgba(0,0,0,0.2);
}
.btn-primary-moderno svg{
    width:20px;
    height:20px;
    transition:transform 0.3s;
}
.btn-primary-moderno:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 25px rgba(0,0,0,0.3);
}
.btn-primary-moderno:hover svg{
    transform:translateX(5px);
}
.btn-secondary-moderno{
    display:inline-flex;
    align-items:center;
    padding:18px 40px;
    background:transparent;
    color:#fff;
    border:2px solid rgba(255,255,255,0.3);
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    font-size:1.1rem;
    transition:all 0.3s;
}
.btn-secondary-moderno:hover{
    background:rgba(255,255,255,0.1);
    border-color:#fff;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .hero-main-content{
        grid-template-columns:1fr;
        gap:40px;
    }
    .quem-somos-grid{
        grid-template-columns:1fr;
        gap:50px;
    }
    .mvv-grid-moderno{
        grid-template-columns:1fr;
    }
}

@media (max-width:768px){
    .empresa-hero-moderno{
        padding:140px 0 80px;
    }
    .hero-logo-container{
        width:150px;
        height:150px;
    }
    .mensagem-content{
        padding-left:40px;
    }
    .mensagem-quote{
        padding:30px;
    }
    .mensagem-quote p{
        padding-left:0;
    }
    .contacto-card-moderno{
        flex-direction:column;
        text-align:center;
        padding:30px;
    }
    .contacto-info-moderno{
        flex-direction:column;
    }
    .cta-content-moderno h2{
        font-size:2rem;
    }
    .cta-buttons-moderno{
        flex-direction:column;
        align-items:center;
    }
}

@media (max-width:480px){
    .hero-meta{
        flex-direction:column;
        gap:15px;
    }
    .section-title-moderno{
        font-size:2rem;
    }
}

/* ============================================
   SECÇÃO DE CLIENTES
   ============================================ */

.clientes-section{
    padding:100px 0;
    background:#fff;
    position:relative;
    overflow:hidden;
}
.clientes-section::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--azul-claro), transparent);
}
.clientes-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
    gap:30px;
    margin-top:60px;
    margin-bottom:60px;
}
.cliente-item{
    opacity:0;
    transform:translateY(30px);
    animation:fadeInUp 0.6s ease forwards;
}
.cliente-item:nth-child(1){ animation-delay:0s; }
.cliente-item:nth-child(2){ animation-delay:0.1s; }
.cliente-item:nth-child(3){ animation-delay:0.2s; }
.cliente-item:nth-child(4){ animation-delay:0.3s; }
.cliente-item:nth-child(5){ animation-delay:0.4s; }
.cliente-item:nth-child(6){ animation-delay:0.5s; }
.cliente-item:nth-child(7){ animation-delay:0.6s; }
@keyframes fadeInUp{
    to{
        opacity:1;
        transform:translateY(0);
    }
}
.cliente-logo-wrapper{
    position:relative;
    background:var(--cinza-claro);
    border-radius:16px;
    padding:40px 30px;
    height:160px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow:hidden;
    border:2px solid transparent;
}
.cliente-logo-wrapper:hover{
    background:#fff;
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(26,35,50,0.1);
    border-color:var(--azul-claro);
}
.cliente-logo{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    transition:all 0.3s;
    filter:grayscale(100%) opacity(0.7);
}
.cliente-logo-wrapper:hover .cliente-logo{
    filter:grayscale(0%) opacity(1);
    transform:scale(1.1);
}
.cliente-overlay{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:linear-gradient(135deg, rgba(74,144,226,0.9), rgba(44,95,138,0.9));
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:opacity 0.3s;
}
.cliente-logo-wrapper:hover .cliente-overlay{
    opacity:1;
}
.cliente-overlay span{
    color:#fff;
    font-size:1.1rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;
}

/* CTA dos Clientes */
.clientes-cta{
    text-align:center;
    padding:40px;
    background:var(--cinza-claro);
    border-radius:20px;
    border:2px solid rgba(74,144,226,0.1);
}
.clientes-texto{
    font-size:1.2rem;
    color:var(--azul-marinho);
    margin-bottom:25px;
    font-weight:500;
}

/* Animação de entrada quando visível */
.cliente-item.visible{
    animation:fadeInUp 0.6s ease forwards;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .clientes-grid{
        grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
        gap:25px;
    }
    .cliente-logo-wrapper{
        padding:30px 20px;
        height:140px;
    }
}

@media (max-width:768px){
    .clientes-section{
        padding:80px 0;
    }
    .clientes-grid{
        grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
        gap:20px;
        margin-top:40px;
        margin-bottom:40px;
    }
    .cliente-logo-wrapper{
        padding:25px 15px;
        height:120px;
    }
    .clientes-cta{
        padding:30px 20px;
    }
    .clientes-texto{
        font-size:1rem;
    }
}

@media (max-width:480px){
    .clientes-grid{
        grid-template-columns:repeat(2, 1fr);
        gap:15px;
    }
    .cliente-logo-wrapper{
        padding:20px 10px;
        height:100px;
    }
}



/* ============================================
   CARROSSEL DE PARCEIROS
   ============================================ */

.parceiros-section{
    padding:100px 0;
    background:linear-gradient(135deg, var(--cinza-claro) 0%, #fff 100%);
    position:relative;
    overflow:hidden;
}
.parceiros-section::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--azul-claro), transparent);
}

/* CARROSSEL WRAPPER */
.parceiros-carousel-wrapper{
    position:relative;
    overflow:hidden;
    margin-top:60px;
    padding:20px 0;
}
.parceiros-carousel-wrapper::before,
.parceiros-carousel-wrapper::after{
    content:'';
    position:absolute;
    top:0;
    bottom:0;
    width:100px;
    z-index:2;
    pointer-events:none;
}
.parceiros-carousel-wrapper::before{
    left:0;
    background:linear-gradient(90deg, var(--cinza-claro), transparent);
}
.parceiros-carousel-wrapper::after{
    right:0;
    background:linear-gradient(-90deg, var(--cinza-claro), transparent);
}

/* TRACK DO CARROSSEL */
.parceiros-carousel-track{
    display:flex;
    gap:40px;
    animation:scroll-carousel 30s linear infinite;
    width:max-content;
}
.parceiros-carousel-track:hover{
    animation-play-state:paused;
}

@keyframes scroll-carousel{
    0%{
        transform:translateX(0);
    }
    100%{
        transform:translateX(-50%);
    }
}

/* ITEM DO PARCEIRO */
.parceiro-item{
    flex-shrink:0;
    width:220px;
}
.parceiro-logo-box{
    background:#fff;
    border-radius:16px;
    padding:30px 25px;
    height:140px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:15px;
    box-shadow:0 4px 15px rgba(26,35,50,0.06);
    border:2px solid transparent;
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position:relative;
    overflow:hidden;
}
.parceiro-logo-box::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg, var(--azul-claro), var(--azul-medio));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s;
}
.parceiro-logo-box:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 40px rgba(26,35,50,0.12);
    border-color:var(--azul-claro);
}
.parceiro-logo-box:hover::before{
    transform:scaleX(1);
}
.parceiro-logo{
    max-width:100%;
    max-height:70px;
    object-fit:contain;
    transition:all 0.3s;
    filter:grayscale(100%) opacity(0.7);
}
.parceiro-logo-box:hover .parceiro-logo{
    filter:grayscale(0%) opacity(1);
    transform:scale(1.1);
}
.parceiro-nome{
    font-size:0.9rem;
    font-weight:700;
    color:var(--azul-marinho);
    text-transform:uppercase;
    letter-spacing:1px;
    transition:color 0.3s;
}
.parceiro-logo-box:hover .parceiro-nome{
    color:var(--azul-claro);
}

/* CONTROLES */
.parceiros-controls{
    display:flex;
    justify-content:center;
    gap:15px;
    margin-top:40px;
}
.parceiro-btn{
    width:50px;
    height:50px;
    border-radius:50%;
    background:#fff;
    border:2px solid var(--azul-claro);
    color:var(--azul-claro);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:all 0.3s;
    box-shadow:0 4px 15px rgba(74,144,226,0.2);
}
.parceiro-btn svg{
    width:20px;
    height:20px;
}
.parceiro-btn:hover{
    background:var(--azul-claro);
    color:#fff;
    transform:scale(1.1);
}
.parceiro-btn:active{
    transform:scale(0.95);
}

/* RESPONSIVO */
@media (max-width:1024px){
    .parceiro-item{
        width:200px;
    }
    .parceiro-logo-box{
        height:130px;
        padding:25px 20px;
    }
}

@media (max-width:768px){
    .parceiros-section{
        padding:80px 0;
    }
    .parceiro-item{
        width:180px;
    }
    .parceiro-logo-box{
        height:120px;
        padding:20px 15px;
    }
    .parceiros-carousel-track{
        gap:25px;
    }
    .parceiros-carousel-wrapper::before,
    .parceiros-carousel-wrapper::after{
        width:60px;
    }
}

@media (max-width:480px){
    .parceiro-item{
        width:160px;
    }
    .parceiro-logo-box{
        height:110px;
        padding:15px;
    }
    .parceiro-logo{
        max-height:50px;
    }
    .parceiro-nome{
        font-size:0.8rem;
    }
    .parceiros-controls{
        margin-top:30px;
    }
    .parceiro-btn{
        width:45px;
        height:45px;
    }
}

/* ============================================
   SECÇÃO DE EQUIPA
   ============================================ */

.equipa-section{
    padding:100px 0;
    background:linear-gradient(135deg, #fff 0%, var(--cinza-claro) 100%);
    position:relative;
    overflow:hidden;
}
.equipa-section::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--azul-claro), transparent);
}

/* GRID DA EQUIPA */
.equipa-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
    gap:30px;
    margin-top:60px;
}

/* CARD DA EQUIPA */
.equipa-card{
    position:relative;
    opacity:0;
    transform:translateY(30px);
    transition:all 0.3s;
}
.equipa-card.visible{
    opacity:1;
    transform:translateY(0);
}
.equipa-card.destaque{
    grid-column:span 2;
}
.equipa-card.destaque .equipa-card-inner{
    flex-direction:row;
    max-width:700px;
    margin:0 auto;
}
.equipa-card.destaque .equipa-foto-wrapper{
    width:250px;
    height:300px;
    flex-shrink:0;
}
.equipa-card.destaque .equipa-info{
    padding:40px;
    text-align:left;
}

.equipa-card-inner{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display:flex;
    flex-direction:column;
    height:100%;
    border:2px solid transparent;
}
.equipa-card:hover{
    transform:translateY(-10px);
}
.equipa-card:hover .equipa-card-inner{
    box-shadow:0 20px 60px rgba(26,35,50,0.15);
    border-color:var(--azul-claro);
}

/* FOTO */
.equipa-foto-wrapper{
    position:relative;
    height:280px;
    overflow:hidden;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
}
.equipa-foto{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s;
}
.equipa-card:hover .equipa-foto{
    transform:scale(1.1);
}
.equipa-foto-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.equipa-foto-placeholder svg{
    width:80px;
    height:80px;
    color:rgba(255,255,255,0.5);
}

/* OVERLAY */
.equipa-overlay{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:linear-gradient(135deg, rgba(74,144,226,0.95), rgba(44,95,138,0.95));
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:opacity 0.3s;
}
.equipa-card:hover .equipa-overlay{
    opacity:1;
}
.equipa-social{
    display:flex;
    gap:15px;
}
.social-btn{
    width:50px;
    height:50px;
    background:rgba(255,255,255,0.2);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
    transition:all 0.3s;
    backdrop-filter:blur(10px);
}
.social-btn:hover{
    background:#fff;
    color:var(--azul-claro);
    transform:scale(1.1);
}
.social-btn svg{
    width:24px;
    height:24px;
}

/* INFO */
.equipa-info{
    padding:30px;
    text-align:center;
    flex:1;
    display:flex;
    flex-direction:column;
}
.equipa-nome{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:8px;
    font-weight:700;
}
.equipa-cargo{
    color:var(--azul-claro);
    font-weight:600;
    font-size:1rem;
    margin-bottom:20px;
    text-transform:uppercase;
    letter-spacing:1px;
}

/* CONTACTOS */
.equipa-contactos{
    margin-top:auto;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.equipa-email,
.equipa-telefone{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 15px;
    background:var(--cinza-claro);
    border-radius:10px;
    text-decoration:none;
    transition:all 0.3s;
}
.equipa-email:hover,
.equipa-telefone:hover{
    background:rgba(74,144,226,0.1);
    transform:translateX(5px);
}
.equipa-email svg,
.equipa-telefone svg{
    width:18px;
    height:18px;
    color:var(--azul-claro);
    flex-shrink:0;
}
.equipa-email span,
.equipa-telefone span{
    color:#455a64;
    font-size:0.9rem;
    font-weight:500;
}

/* BADGE DE DESTAQUE */
.destaque-badge{
    position:absolute;
    top:20px;
    right:20px;
    background:linear-gradient(135deg, #FFD700, #FFA500);
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    display:flex;
    align-items:center;
    gap:8px;
    font-size:0.85rem;
    font-weight:700;
    box-shadow:0 4px 15px rgba(255,215,0,0.4);
    z-index:3;
}
.destaque-badge svg{
    width:16px;
    height:16px;
}

/* CTA DA EQUIPA */
.equipa-cta{
    text-align:center;
    padding:50px 40px;
    background:#fff;
    border-radius:20px;
    margin-top:60px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    border:2px solid rgba(74,144,226,0.1);
}
.equipa-cta-texto{
    font-size:1.3rem;
    color:var(--azul-marinho);
    margin-bottom:25px;
    font-weight:500;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .equipa-card.destaque{
        grid-column:span 1;
    }
    .equipa-card.destaque .equipa-card-inner{
        flex-direction:column;
    }
    .equipa-card.destaque .equipa-foto-wrapper{
        width:100%;
        height:280px;
    }
}

@media (max-width:768px){
    .equipa-section{
        padding:80px 0;
    }
    .equipa-grid{
        grid-template-columns:1fr;
        gap:25px;
    }
    .equipa-foto-wrapper{
        height:250px;
    }
    .equipa-info{
        padding:25px;
    }
    .equipa-nome{
        font-size:1.2rem;
    }
    .equipa-cta{
        padding:40px 25px;
    }
    .equipa-cta-texto{
        font-size:1.1rem;
    }
}

@media (max-width:480px){
    .equipa-foto-wrapper{
        height:220px;
    }
    .social-btn{
        width:45px;
        height:45px;
    }
    .destaque-badge{
        top:15px;
        right:15px;
        padding:6px 12px;
        font-size:0.75rem;
    }
}


/* ============================================
   BOTÃO FLUTUANTE DO WHATSAPP
   ============================================ */

.whatsapp-float {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 65px;
    height: 65px;
    background-color: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    z-index: 9999;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: pulse-whatsapp 2.5s infinite;
}

.whatsapp-float:hover {
    background-color: #128C7E;
    transform: scale(1.1) translateY(-5px);
    box-shadow: 0 8px 25px rgba(37, 211, 102, 0.6);
    animation: none; /* Para a animação de pulso ao passar o rato */
}

.whatsapp-icon {
    width: 35px;
    height: 35px;
    transition: transform 0.3s;
}

.whatsapp-float:hover .whatsapp-icon {
    transform: rotate(10deg);
}

/* Tooltip "Fale Connosco" */
.whatsapp-tooltip {
    position: absolute;
    right: 80px;
    background-color: #333;
    color: #fff;
    padding: 8px 15px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateX(10px);
    transition: all 0.3s ease;
    pointer-events: none;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

.whatsapp-tooltip::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -6px;
    transform: translateY(-50%);
    border-width: 6px 0 6px 6px;
    border-style: solid;
    border-color: transparent transparent transparent #333;
}

.whatsapp-float:hover .whatsapp-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

/* Animação de Pulso */
@keyframes pulse-whatsapp {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    }
    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

/* RESPONSIVO */
@media (max-width: 768px) {
    .whatsapp-float {
        width: 55px;
        height: 55px;
        bottom: 20px;
        right: 20px;
    }
    .whatsapp-icon {
        width: 30px;
        height: 30px;
    }
    .whatsapp-tooltip {
        display: none; /* Esconde o tooltip em mobile para não atrapalhar */
    }
}

/* ============================================
   PÁGINA DE NOTÍCIAS
   ============================================ */

/* HERO */
.noticias-hero{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:180px 0 100px;
    overflow:hidden;
}
.noticias-hero::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="2" fill="rgba(255,255,255,0.05)"/></svg>');
    opacity:0.5;
}
.noticias-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:800px;
    margin:0 auto;
}
.noticias-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 24px;
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.2);
    border-radius:50px;
    color:#fff;
    font-weight:600;
    font-size:0.9rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:30px;
}
.noticias-hero h1{
    font-size:clamp(2.5rem, 5vw, 4rem);
    color:#fff;
    margin-bottom:20px;
    line-height:1.2;
    font-weight:800;
}
.highlight-gradient{
    background:linear-gradient(135deg, #fff 0%, var(--azul-claro) 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}
.hero-subtitle{
    font-size:1.3rem;
    color:rgba(255,255,255,0.9);
    line-height:1.6;
}

/* NOTÍCIA EM DESTAQUE */
.noticia-destaque-section{
    padding:100px 0;
    background:#fff;
}
.noticia-destaque-card{
    background:var(--cinza-claro);
    border-radius:24px;
    padding:40px;
    position:relative;
    box-shadow:0 10px 40px rgba(26,35,50,0.08);
}
.destaque-badge-label{
    position:absolute;
    top:-15px;
    left:40px;
    background:linear-gradient(135deg, #FFD700, #FFA500);
    color:#fff;
    padding:8px 20px;
    border-radius:30px;
    display:flex;
    align-items:center;
    gap:8px;
    font-size:0.85rem;
    font-weight:700;
    box-shadow:0 4px 15px rgba(255,215,0,0.4);
}
.destaque-badge-label svg{
    width:16px;
    height:16px;
}
.noticia-destaque-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
}
.noticia-destaque-imagem{
    position:relative;
    border-radius:16px;
    overflow:hidden;
    height:400px;
    background:var(--azul-marinho);
}
.noticia-destaque-imagem img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.placeholder-icon{
    width:100%;
    height:100%;
    align-items:center;
    justify-content:center;
}
.placeholder-icon svg{
    width:80px;
    height:80px;
    color:rgba(255,255,255,0.3);
}
.categoria-tag{
    position:absolute;
    bottom:20px;
    left:20px;
    background:var(--azul-claro);
    color:#fff;
    padding:6px 16px;
    border-radius:20px;
    font-size:0.8rem;
    font-weight:700;
    text-transform:uppercase;
}
.noticia-destaque-conteudo{
    padding:20px 0;
}
.noticia-meta{
    display:flex;
    gap:20px;
    margin-bottom:20px;
    color:#78909c;
    font-size:0.9rem;
}
.meta-data, .meta-autor{
    display:flex;
    align-items:center;
    gap:8px;
}
.meta-data svg, .meta-autor svg{
    width:16px;
    height:16px;
}
.noticia-destaque-titulo{
    font-size:2.2rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
    line-height:1.2;
    font-weight:800;
}
.noticia-destaque-resumo{
    font-size:1.1rem;
    color:#455a64;
    line-height:1.8;
    margin-bottom:30px;
}

/* FILTROS */
.noticias-filtros{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:30px;
}
.filtro-btn{
    padding:10px 24px;
    background:#fff;
    border:2px solid var(--cinza-claro);
    border-radius:50px;
    color:var(--azul-marinho);
    font-weight:600;
    cursor:pointer;
    transition:all 0.3s;
}
.filtro-btn:hover, .filtro-btn.active{
    background:var(--azul-claro);
    border-color:var(--azul-claro);
    color:#fff;
}

/* GRID DE NOTÍCIAS */
.noticias-lista-section{
    padding:80px 0;
    background:var(--cinza-claro);
}
.noticias-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
    gap:30px;
    margin-top:50px;
}
.noticia-card{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 4px 20px rgba(26,35,50,0.06);
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display:flex;
    flex-direction:column;
}
.noticia-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(26,35,50,0.12);
}
.noticia-card-imagem{
    position:relative;
    height:220px;
    background:var(--azul-marinho);
    overflow:hidden;
}
.noticia-card-imagem img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s;
}
.noticia-card:hover .noticia-card-imagem img{
    transform:scale(1.1);
}
.noticia-card-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.noticia-card-placeholder svg{
    width:60px;
    height:60px;
    color:rgba(255,255,255,0.3);
}
.noticia-card-categoria{
    position:absolute;
    top:20px;
    left:20px;
    background:var(--azul-claro);
    color:#fff;
    padding:6px 14px;
    border-radius:20px;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
}
.noticia-card-conteudo{
    padding:30px;
    flex:1;
    display:flex;
    flex-direction:column;
}
.noticia-card-meta{
    display:flex;
    gap:10px;
    color:#78909c;
    font-size:0.85rem;
    margin-bottom:15px;
}
.noticia-card-titulo{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
    line-height:1.3;
    font-weight:700;
}
.noticia-card-resumo{
    color:#455a64;
    line-height:1.7;
    margin-bottom:20px;
    flex:1;
}
.noticia-card-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--azul-claro);
    font-weight:700;
    text-decoration:none;
    transition:gap 0.3s;
}
.noticia-card-link svg{
    width:18px;
    height:18px;
    transition:transform 0.3s;
}
.noticia-card:hover .noticia-card-link{
    gap:12px;
}
.noticia-card:hover .noticia-card-link svg{
    transform:translateX(5px);
}

/* NEWSLETTER */
.noticias-newsletter{
    padding:100px 0;
    background:#fff;
}
.newsletter-card{
    max-width:800px;
    margin:0 auto;
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    padding:60px 40px;
    border-radius:24px;
    text-align:center;
    color:#fff;
    position:relative;
    overflow:hidden;
}
.newsletter-icon{
    width:80px;
    height:80px;
    margin:0 auto 20px;
    background:rgba(255,255,255,0.15);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.newsletter-icon svg{
    width:40px;
    height:40px;
    color:#fff;
}
.newsletter-card h2{
    font-size:2.2rem;
    margin-bottom:15px;
}
.newsletter-card p{
    font-size:1.1rem;
    opacity:0.9;
    margin-bottom:30px;
}
.newsletter-form-moderno{
    display:flex;
    max-width:500px;
    margin:0 auto;
    background:#fff;
    border-radius:50px;
    padding:6px;
    box-shadow:0 10px 30px rgba(0,0,0,0.2);
}
.newsletter-form-moderno input{
    flex:1;
    border:none;
    padding:15px 25px;
    font-size:1rem;
    outline:none;
    background:transparent;
    color:var(--azul-marinho);
}
.newsletter-form-moderno button{
    background:var(--azul-claro);
    color:#fff;
    border:none;
    padding:12px 30px;
    border-radius:50px;
    font-weight:700;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:8px;
    transition:background 0.3s;
}
.newsletter-form-moderno button:hover{
    background:var(--azul-marinho);
}

/* ============================================
   PÁGINA DE DETALHE DA NOTÍCIA
   ============================================ */

.noticia-detalhe-hero{
    padding:180px 0 60px;
    background:var(--cinza-claro);
}
.noticia-breadcrumb{
    display:flex;
    gap:10px;
    margin-bottom:30px;
    font-size:0.9rem;
    color:#78909c;
}
.noticia-breadcrumb a{
    color:#78909c;
    text-decoration:none;
    transition:color 0.3s;
}
.noticia-breadcrumb a:hover{
    color:var(--azul-claro);
}
.noticia-breadcrumb .current{
    color:var(--azul-marinho);
    font-weight:600;
}
.noticia-detalhe-header{
    max-width:900px;
}
.noticia-categoria-badge{
    display:inline-block;
    background:var(--azul-claro);
    color:#fff;
    padding:6px 16px;
    border-radius:20px;
    font-size:0.8rem;
    font-weight:700;
    text-transform:uppercase;
    margin-bottom:20px;
}
.noticia-detalhe-header h1{
    font-size:clamp(2rem, 4vw, 3.5rem);
    color:var(--azul-marinho);
    line-height:1.2;
    margin-bottom:30px;
    font-weight:800;
}
.noticia-meta-detalhe{
    display:flex;
    gap:30px;
    flex-wrap:wrap;
}
.meta-item{
    display:flex;
    align-items:center;
    gap:10px;
    color:#455a64;
    font-weight:500;
}
.meta-item svg{
    width:20px;
    height:20px;
    color:var(--azul-claro);
}
.noticia-imagem-principal{
    max-width:1200px;
    margin:0 auto;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(26,35,50,0.15);
    margin-top:-40px;
    position:relative;
    z-index:2;
    background:var(--azul-marinho);
}
.noticia-imagem-principal img{
    width:100%;
    height:auto;
    display:block;
}

/* CONTEÚDO */
.noticia-conteudo-section{
    padding:80px 0;
    background:#fff;
}
.noticia-conteudo-wrapper{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:60px;
}
.conteudo-texto{
    font-size:1.1rem;
    line-height:1.9;
    color:#455a64;
}
.conteudo-texto p{
    margin-bottom:25px;
}
.conteudo-texto h3{
    font-size:1.8rem;
    color:var(--azul-marinho);
    margin:40px 0 20px;
    font-weight:700;
}
.conteudo-texto ul{
    margin-bottom:25px;
    padding-left:20px;
}
.conteudo-texto li{
    margin-bottom:10px;
    position:relative;
    padding-left:15px;
}
.conteudo-texto li::before{
    content:'•';
    color:var(--azul-claro);
    font-weight:bold;
    position:absolute;
    left:0;
}

/* PARTILHA SOCIAL */
.noticia-share{
    margin-top:50px;
    padding-top:30px;
    border-top:1px solid var(--cinza-claro);
}
.noticia-share h3{
    font-size:1.2rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
}
.share-buttons{
    display:flex;
    gap:15px;
}
.share-btn{
    width:45px;
    height:45px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    transition:transform 0.3s;
}
.share-btn:hover{
    transform:translateY(-3px);
}
.share-btn svg{
    width:20px;
    height:20px;
}
.share-btn.facebook{ background:#1877f2; }
.share-btn.twitter{ background:#000; }
.share-btn.linkedin{ background:#0a66c2; }
.share-btn.whatsapp{ background:#25d366; }

/* SIDEBAR */
.sidebar-widget{
    background:var(--cinza-claro);
    padding:30px;
    border-radius:16px;
    margin-bottom:30px;
}
.sidebar-widget h3{
    font-size:1.3rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:2px solid var(--azul-claro);
}
.categoria-lista{
    list-style:none;
    padding:0;
    margin:0;
}
.categoria-lista li{
    display:flex;
    justify-content:space-between;
    padding:12px 0;
    border-bottom:1px solid rgba(26,35,50,0.05);
}
.categoria-lista li:last-child{
    border-bottom:none;
}
.categoria-lista a{
    color:#455a64;
    text-decoration:none;
    font-weight:500;
    transition:color 0.3s;
}
.categoria-lista a:hover{
    color:var(--azul-claro);
}
.categoria-lista span{
    color:#78909c;
    font-size:0.9rem;
}
.recentes-lista{
    display:flex;
    flex-direction:column;
    gap:20px;
}
.recente-item{
    display:flex;
    flex-direction:column;
    gap:5px;
    text-decoration:none;
    padding-bottom:15px;
    border-bottom:1px solid rgba(26,35,50,0.05);
}
.recente-item:last-child{
    border-bottom:none;
    padding-bottom:0;
}
.recente-data{
    font-size:0.8rem;
    color:var(--azul-claro);
    font-weight:600;
    text-transform:uppercase;
}
.recente-titulo{
    color:var(--azul-marinho);
    font-weight:600;
    line-height:1.4;
    transition:color 0.3s;
}
.recente-item:hover .recente-titulo{
    color:var(--azul-claro);
}

/* NAVEGAÇÃO */
.noticia-navegacao{
    padding:60px 0;
    background:var(--cinza-claro);
}
.navegacao-buttons{
    display:flex;
    justify-content:center;
}
.nav-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:15px 30px;
    background:#fff;
    color:var(--azul-marinho);
    border-radius:50px;
    text-decoration:none;
    font-weight:600;
    box-shadow:0 4px 15px rgba(26,35,50,0.08);
    transition:all 0.3s;
}
.nav-btn:hover{
    background:var(--azul-claro);
    color:#fff;
    transform:translateY(-3px);
}
.nav-btn svg{
    width:20px;
    height:20px;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .noticia-destaque-grid,
    .noticia-conteudo-wrapper{
        grid-template-columns:1fr;
    }
    .noticia-destaque-imagem{
        height:300px;
    }
}

@media (max-width:768px){
    .noticias-hero{
        padding:140px 0 80px;
    }
    .noticia-destaque-card{
        padding:25px;
    }
    .destaque-badge-label{
        left:25px;
    }
    .noticia-destaque-titulo{
        font-size:1.8rem;
    }
    .newsletter-form-moderno{
        flex-direction:column;
        background:transparent;
        box-shadow:none;
        padding:0;
        gap:15px;
    }
    .newsletter-form-moderno input{
        background:#fff;
        border-radius:50px;
        padding:15px 25px;
    }
    .newsletter-form-moderno button{
        justify-content:center;
        width:100%;
    }
    .noticia-imagem-principal{
        margin-top:-20px;
        border-radius:16px;
    }
}


/* ============================================
   PÁGINA DE PROJETOS
   ============================================ */

/* HERO */
.projetos-hero{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho) 0%, var(--azul-medio) 100%);
    padding:200px 0 120px;
    overflow:hidden;
}
.hero-bg-elements{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    overflow:hidden;
}
.hero-circle{
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,0.05);
}
.hero-circle-1{
    width:600px;
    height:600px;
    top:-200px;
    right:-200px;
    animation:float-slow 20s ease-in-out infinite;
}
.hero-circle-2{
    width:400px;
    height:400px;
    bottom:-100px;
    left:-100px;
    animation:float-slow 15s ease-in-out infinite reverse;
}
@keyframes float-slow{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(30px, -30px); }
}
.hero-grid-pattern{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background-image: 
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size:50px 50px;
}
.projetos-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    max-width:900px;
    margin:0 auto;
}
.projetos-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 24px;
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.2);
    border-radius:50px;
    color:#fff;
    font-weight:600;
    font-size:0.9rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:30px;
}
.projetos-hero h1{
    font-size:clamp(2.5rem, 5vw, 4.5rem);
    color:#fff;
    margin-bottom:25px;
    line-height:1.1;
    font-weight:800;
}
.highlight-gradient{
    background:linear-gradient(135deg, #fff 0%, var(--azul-claro) 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}
.hero-subtitle{
    font-size:1.25rem;
    color:rgba(255,255,255,0.9);
    line-height:1.7;
    margin-bottom:50px;
}
.hero-stats-projetos{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:40px;
    flex-wrap:wrap;
}
.stat-item{
    text-align:center;
}
.stat-number{
    display:block;
    font-size:3rem;
    font-weight:800;
    color:#fff;
    line-height:1;
    margin-bottom:8px;
}
.stat-label{
    font-size:0.9rem;
    color:rgba(255,255,255,0.7);
    text-transform:uppercase;
    letter-spacing:1px;
}
.stat-divider{
    width:1px;
    height:60px;
    background:rgba(255,255,255,0.3);
}

/* FILTROS */
.filtros-section{
    padding:40px 0;
    background:#fff;
    border-bottom:1px solid var(--cinza-claro);
}
.filtros-wrapper{
    display:flex;
    flex-direction:column;
    gap:20px;
}
.filtro-grupo{
    display:flex;
    align-items:center;
    gap:15px;
    flex-wrap:wrap;
}
.filtro-label{
    font-weight:700;
    color:var(--azul-marinho);
    font-size:0.9rem;
}
.filtro-botoes{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}
.filtro-btn{
    padding:8px 20px;
    background:#fff;
    border:2px solid var(--cinza-claro);
    border-radius:50px;
    color:var(--azul-marinho);
    font-weight:600;
    cursor:pointer;
    transition:all 0.3s;
    font-size:0.85rem;
}
.filtro-btn:hover, .filtro-btn.active{
    background:var(--azul-claro);
    border-color:var(--azul-claro);
    color:#fff;
}

/* PROJETO EM DESTAQUE */
.projeto-destaque-section{
    padding:80px 0;
    background:var(--cinza-claro);
}
.projeto-destaque-card{
    background:#fff;
    border-radius:24px;
    padding:40px;
    position:relative;
    box-shadow:0 10px 40px rgba(26,35,50,0.08);
}
.destaque-badge-label{
    position:absolute;
    top:-15px;
    left:40px;
    background:linear-gradient(135deg, #FFD700, #FFA500);
    color:#fff;
    padding:8px 20px;
    border-radius:30px;
    display:flex;
    align-items:center;
    gap:8px;
    font-size:0.85rem;
    font-weight:700;
    box-shadow:0 4px 15px rgba(255,215,0,0.4);
}
.destaque-badge-label svg{
    width:16px;
    height:16px;
}
.projeto-destaque-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
}
.projeto-destaque-imagem{
    position:relative;
    border-radius:16px;
    overflow:hidden;
    height:400px;
    background:var(--azul-marinho);
}
.projeto-destaque-imagem img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.placeholder-icon{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.placeholder-icon svg{
    width:80px;
    height:80px;
    color:rgba(255,255,255,0.3);
}
.estado-tag{
    position:absolute;
    bottom:20px;
    left:20px;
    padding:8px 16px;
    border-radius:20px;
    font-size:0.8rem;
    font-weight:700;
    text-transform:uppercase;
    color:#fff;
}
.estado-andamento{
    background:#f39c12;
}
.estado-concluido{
    background:#27ae60;
}
.projeto-destaque-conteudo{
    padding:20px 0;
}
.projeto-meta{
    display:flex;
    gap:20px;
    margin-bottom:20px;
    flex-wrap:wrap;
}
.meta-item{
    display:flex;
    align-items:center;
    gap:8px;
    color:#78909c;
    font-size:0.9rem;
}
.meta-item svg{
    width:16px;
    height:16px;
}
.projeto-destaque-titulo{
    font-size:2rem;
    color:var(--azul-marinho);
    margin-bottom:20px;
    line-height:1.2;
    font-weight:800;
}
.projeto-destaque-descricao{
    font-size:1.05rem;
    color:#455a64;
    line-height:1.8;
    margin-bottom:30px;
}
.projeto-info-detalhes{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin-bottom:30px;
    padding:20px;
    background:var(--cinza-claro);
    border-radius:12px;
}
.info-item{
    display:flex;
    gap:10px;
    font-size:0.95rem;
}
.info-item strong{
    color:var(--azul-marinho);
    min-width:100px;
}
.info-item span{
    color:#455a64;
}

/* LISTA DE PROJETOS */
.projetos-lista-section{
    padding:80px 0;
    background:#fff;
}
.projetos-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(340px, 1fr));
    gap:30px;
    margin-top:50px;
}
.projeto-card{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border:2px solid transparent;
}
.projeto-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(26,35,50,0.15);
    border-color:var(--azul-claro);
}
.projeto-card-imagem{
    position:relative;
    height:240px;
    background:var(--azul-marinho);
    overflow:hidden;
}
.projeto-card-imagem img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s;
}
.projeto-card:hover .projeto-card-imagem img{
    transform:scale(1.1);
}
.projeto-card-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.projeto-card-placeholder svg{
    width:60px;
    height:60px;
    color:rgba(255,255,255,0.3);
}
.projeto-card-overlay{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:rgba(26,35,50,0.8);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:opacity 0.3s;
}
.projeto-card:hover .projeto-card-overlay{
    opacity:1;
}
.ver-projeto-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:12px 24px;
    background:#fff;
    color:var(--azul-marinho);
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    transform:translateY(20px);
    transition:all 0.3s;
}
.projeto-card:hover .ver-projeto-btn{
    transform:translateY(0);
}
.ver-projeto-btn svg{
    width:18px;
    height:18px;
}
.estado-badge{
    position:absolute;
    top:20px;
    right:20px;
    padding:6px 14px;
    border-radius:20px;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
    color:#fff;
}
.estado-em-andamento{
    background:#f39c12;
}
.estado-concluido{
    background:#27ae60;
}
.projeto-card-conteudo{
    padding:30px;
}
.projeto-card-categoria{
    font-size:0.8rem;
    color:var(--azul-claro);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:10px;
}
.projeto-card-titulo{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
    line-height:1.3;
    font-weight:700;
}
.projeto-card-descricao{
    color:#455a64;
    line-height:1.7;
    margin-bottom:20px;
    font-size:0.95rem;
}
.projeto-card-info{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.projeto-card-info .info-item{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:0.9rem;
    color:#607d8b;
}
.projeto-card-info .info-item svg{
    width:16px;
    height:16px;
    color:var(--azul-claro);
}

/* DETALHE DO PROJETO */
.projeto-detalhe-hero{
    padding:180px 0 60px;
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    color:#fff;
}
.projeto-breadcrumb{
    display:flex;
    gap:10px;
    margin-bottom:30px;
    font-size:0.9rem;
    color:rgba(255,255,255,0.7);
}
.projeto-breadcrumb a{
    color:rgba(255,255,255,0.7);
    text-decoration:none;
    transition:color 0.3s;
}
.projeto-breadcrumb a:hover{
    color:#fff;
}
.projeto-breadcrumb .current{
    color:#fff;
    font-weight:600;
}
.projeto-detalhe-header{
    max-width:900px;
}
.projeto-categoria-badge{
    display:inline-block;
    background:rgba(255,255,255,0.2);
    color:#fff;
    padding:6px 16px;
    border-radius:20px;
    font-size:0.8rem;
    font-weight:700;
    text-transform:uppercase;
    margin-bottom:15px;
}
.estado-badge-detail{
    display:inline-block;
    padding:6px 16px;
    border-radius:20px;
    font-size:0.8rem;
    font-weight:700;
    text-transform:uppercase;
    color:#fff;
    margin-left:10px;
}
.projeto-detalhe-header h1{
    font-size:clamp(2rem, 4vw, 3rem);
    color:#fff;
    line-height:1.2;
    margin-bottom:30px;
    font-weight:800;
}
.projeto-meta-detalhe{
    display:flex;
    gap:30px;
    flex-wrap:wrap;
}
.projeto-meta-detalhe .meta-item{
    color:rgba(255,255,255,0.9);
    font-weight:500;
}
.projeto-meta-detalhe .meta-item svg{
    width:20px;
    height:20px;
    color:var(--azul-claro);
}

/* GALERIA */
.galeria-section{
    padding:60px 0;
    background:#fff;
}
.galeria-grid{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:20px;
}
.galeria-item{
    border-radius:16px;
    overflow:hidden;
    background:var(--cinza-claro);
    position:relative;
}
.galeria-item.principal{
    height:500px;
}
.galeria-item.secundaria{
    height:500px;
}
.galeria-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s;
}
.galeria-item:hover img{
    transform:scale(1.05);
}
.galeria-placeholder{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:15px;
    color:#78909c;
}
.galeria-placeholder svg{
    width:60px;
    height:60px;
}

/* VÍDEO */
.video-section{
    padding:80px 0;
    background:var(--cinza-claro);
}
.video-wrapper{
    max-width:1000px;
    margin:0 auto;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(26,35,50,0.2);
    background:#000;
}
.video-wrapper video{
    width:100%;
    display:block;
}
.video-fallback{
    display:none;
}
.video-placeholder{
    padding:100px 40px;
    text-align:center;
    color:#78909c;
}
.video-placeholder svg{
    width:80px;
    height:80px;
    margin-bottom:20px;
}

/* DESCRIÇÃO */
.descricao-section{
    padding:80px 0;
    background:#fff;
}
.descricao-wrapper{
    max-width:900px;
    margin:0 auto;
}
.descricao-texto{
    font-size:1.1rem;
    line-height:1.9;
    color:#455a64;
    margin-bottom:40px;
}
.projeto-especificacoes{
    background:var(--cinza-claro);
    padding:40px;
    border-radius:20px;
}
.projeto-especificacoes h3{
    font-size:1.5rem;
    color:var(--azul-marinho);
    margin-bottom:30px;
    font-weight:700;
}
.especificacoes-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
    gap:25px;
}
.especificacao-item{
    display:flex;
    gap:15px;
    align-items:flex-start;
}
.especificacao-icon{
    width:50px;
    height:50px;
    background:linear-gradient(135deg, var(--azul-claro), var(--azul-medio));
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.especificacao-icon svg{
    width:24px;
    height:24px;
    color:#fff;
}
.especificacao-item div{
    flex:1;
}
.especificacao-item strong{
    display:block;
    color:var(--azul-marinho);
    font-size:0.85rem;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:5px;
}
.especificacao-item span{
    color:#455a64;
    font-size:1rem;
    line-height:1.5;
}

/* NAVEGAÇÃO */
.projeto-navegacao{
    padding:60px 0;
    background:var(--cinza-claro);
}
.navegacao-buttons{
    display:flex;
    justify-content:center;
}
.nav-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:15px 30px;
    background:#fff;
    color:var(--azul-marinho);
    border-radius:50px;
    text-decoration:none;
    font-weight:600;
    box-shadow:0 4px 15px rgba(26,35,50,0.08);
    transition:all 0.3s;
}
.nav-btn:hover{
    background:var(--azul-claro);
    color:#fff;
    transform:translateY(-3px);
}
.nav-btn svg{
    width:20px;
    height:20px;
}

/* CTA FINAL */
.projetos-cta{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    padding:120px 0;
    overflow:hidden;
}
.projetos-cta::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="2" fill="rgba(255,255,255,0.05)"/></svg>');
    opacity:0.5;
}
.cta-content-moderno{
    position:relative;
    z-index:2;
    max-width:800px;
    margin:0 auto;
    text-align:center;
    color:#fff;
}
.cta-icon-wrapper{
    width:80px;
    height:80px;
    margin:0 auto 30px;
    background:rgba(255,255,255,0.15);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    backdrop-filter:blur(10px);
}
.cta-icon-wrapper svg{
    width:40px;
    height:40px;
    color:#fff;
}
.cta-content-moderno h2{
    font-size:2.8rem;
    margin-bottom:20px;
    font-weight:800;
}
.cta-content-moderno p{
    font-size:1.2rem;
    opacity:0.9;
    margin-bottom:40px;
    line-height:1.7;
}
.cta-buttons-moderno{
    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;
}
.btn-primary-moderno{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:18px 40px;
    background:#fff;
    color:var(--azul-claro);
    border-radius:12px;
    text-decoration:none;
    font-weight:700;
    font-size:1.1rem;
    transition:all 0.3s;
    box-shadow:0 4px 15px rgba(0,0,0,0.2);
}
.btn-primary-moderno svg{
    width:20px;
    height:20px;
    transition:transform 0.3s;
}
.btn-primary-moderno:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 25px rgba(0,0,0,0.3);
}
.btn-primary-moderno:hover svg{
    transform:translateX(5px);
}
.btn-secondary-moderno{
    display:inline-flex;
    align-items:center;
    padding:18px 40px;
    background:transparent;
    color:#fff;
    border:2px solid rgba(255,255,255,0.3);
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    font-size:1.1rem;
    transition:all 0.3s;
}
.btn-secondary-moderno:hover{
    background:rgba(255,255,255,0.1);
    border-color:#fff;
}

/* RESPONSIVO */
@media (max-width:1024px){
    .projeto-destaque-grid,
    .galeria-grid{
        grid-template-columns:1fr;
    }
    .galeria-item.principal,
    .galeria-item.secundaria{
        height:350px;
    }
}

@media (max-width:768px){
    .projetos-hero{
        padding:150px 0 80px;
    }
    .hero-stats-projetos{
        flex-direction:column;
        gap:25px;
    }
    .stat-divider{
        width:60px;
        height:1px;
    }
    .projeto-destaque-card{
        padding:25px;
    }
    .destaque-badge-label{
        left:25px;
    }
    .projeto-destaque-titulo{
        font-size:1.8rem;
    }
    .projetos-grid{
        grid-template-columns:1fr;
    }
    .especificacoes-grid{
        grid-template-columns:1fr;
    }
    .cta-content-moderno h2{
        font-size:2rem;
    }
    .cta-buttons-moderno{
        flex-direction:column;
        align-items:center;
    }
}

@media (max-width:480px){
    .filtro-grupo{
        flex-direction:column;
        align-items:flex-start;
    }
    .galeria-item.principal,
    .galeria-item.secundaria{
        height:250px;
    }
}

/* ============================================
   HOME - HERO COM VÍDEO (CORRIGIDO)
   ============================================ */

.hero-video-section{
    position:relative;
    min-height:100vh;
    padding:180px 0 120px;
    overflow:hidden;
    display:flex;
    align-items:center;
}
.hero-video{
    position:absolute;
    top:50%;
    left:50%;
    min-width:100%;
    min-height:100%;
    width:auto;
    height:auto;
    transform:translate(-50%, -50%);
    z-index:1;
    object-fit:cover;
}
.hero-video-overlay{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:linear-gradient(135deg, rgba(26,35,50,0.92) 0%, rgba(44,95,138,0.85) 100%);
    z-index:2;
}
.hero-video-pattern{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background-image: 
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size:60px 60px;
    z-index:3;
    pointer-events:none;
}

/* CONTEÚDO DO HERO - CORRIGIDO */
.hero-video-content{
    position:relative;
    z-index:4;
    width:100%;
    color:#fff;
    padding:40px 0;
}
.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 24px;
    background:rgba(255,255,255,0.1);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.2);
    border-radius:50px;
    font-weight:600;
    font-size:0.9rem;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:30px;
    animation:fadeInDown 0.8s ease;
}
.badge-pulse{
    width:8px;
    height:8px;
    background:var(--azul-claro);
    border-radius:50%;
    animation:pulse-dot 2s ease-in-out infinite;
}
@keyframes pulse-dot{
    0%, 100%{ transform:scale(1); opacity:1; }
    50%{ transform:scale(1.5); opacity:0.5; }
}

/* CARROSSEL DE TÍTULOS - CORRIGIDO */
.hero-carousel{
    position:relative;
    min-height:280px;
    margin-bottom:30px;
}
.hero-slide{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    opacity:0;
    visibility:hidden;
    transform:translateY(30px);
    transition:all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events:none;
}
.hero-slide.active{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
    position:relative;
}
.hero-title{
    font-size:clamp(2.5rem, 5vw, 4.5rem);
    font-weight:900;
    line-height:1.15;
    margin:0 0 20px 0;
    letter-spacing:-1px;
}
.highlight-text{
    background:linear-gradient(135deg, var(--azul-claro) 0%, #fff 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
    display:inline-block;
}
.hero-description{
    font-size:1.2rem;
    color:rgba(255,255,255,0.85);
    max-width:650px;
    line-height:1.6;
    margin:0;
}

/* INDICADORES */
.hero-indicators{
    display:flex;
    gap:12px;
    margin-bottom:40px;
}
.indicator{
    width:40px;
    height:4px;
    background:rgba(255,255,255,0.3);
    border:none;
    border-radius:2px;
    cursor:pointer;
    transition:all 0.3s;
    padding:0;
}
.indicator.active{
    background:var(--azul-claro);
    width:60px;
}

/* BOTÕES HERO */
.hero-cta-buttons{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
    margin-top:20px;
    animation:fadeInUp 0.8s ease 0.4s backwards;
}
.btn-hero-primary{
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:18px 36px;
    background:var(--azul-claro);
    color:#fff;
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    font-size:1.05rem;
    transition:all 0.3s;
    box-shadow:0 10px 30px rgba(74,144,226,0.4);
}
.btn-hero-primary:hover{
    background:#fff;
    color:var(--azul-marinho);
    transform:translateY(-3px);
    box-shadow:0 15px 40px rgba(255,255,255,0.3);
}
.btn-hero-primary svg{
    width:20px;
    height:20px;
    transition:transform 0.3s;
}
.btn-hero-primary:hover svg{
    transform:translateX(5px);
}
.btn-hero-secondary{
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:18px 36px;
    background:transparent;
    color:#fff;
    border:2px solid rgba(255,255,255,0.3);
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    font-size:1.05rem;
    transition:all 0.3s;
}
.btn-hero-secondary:hover{
    background:rgba(255,255,255,0.1);
    border-color:#fff;
    transform:translateY(-3px);
}
.btn-hero-secondary svg{
    width:20px;
    height:20px;
}

/* SCROLL INDICATOR */
.scroll-indicator{
    position:absolute;
    bottom:40px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    color:rgba(255,255,255,0.6);
    font-size:0.8rem;
    letter-spacing:2px;
    text-transform:uppercase;
    animation:fadeInUp 1s ease 1s backwards;
    z-index:5;
}
.scroll-mouse{
    width:26px;
    height:40px;
    border:2px solid rgba(255,255,255,0.4);
    border-radius:13px;
    position:relative;
}
.scroll-wheel{
    width:4px;
    height:8px;
    background:#fff;
    border-radius:2px;
    position:absolute;
    top:8px;
    left:50%;
    transform:translateX(-50%);
    animation:scroll-wheel 2s ease-in-out infinite;
}
@keyframes scroll-wheel{
    0%, 100%{ top:8px; opacity:1; }
    50%{ top:20px; opacity:0.3; }
}

/* RESPONSIVO HERO */
@media (max-width:768px){
    .hero-video-section{
        padding:140px 0 80px;
        min-height:auto;
    }
    .hero-carousel{
        min-height:220px;
    }
    .hero-title{
        font-size:2.2rem;
    }
    .hero-description{
        font-size:1.05rem;
    }
    .hero-cta-buttons{
        flex-direction:column;
        align-items:flex-start;
        gap:15px;
    }
    .btn-hero-primary,
    .btn-hero-secondary{
        width:100%;
        justify-content:center;
    }
    .scroll-indicator{
        display:none;
    }
    .hero-indicators{
        justify-content:center;
    }
}

@media (max-width:480px){
    .hero-carousel{
        min-height:200px;
    }
    .hero-title{
        font-size:1.8rem;
    }
    .btn-hero-primary,
    .btn-hero-secondary{
        padding:15px 28px;
        font-size:0.95rem;
    }
}
/* ============================================
   BARRA DE ESTATÍSTICAS
   ============================================ */

.stats-bar{
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    padding:60px 0;
    position:relative;
    overflow:hidden;
}
.stats-bar::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:url('data:image/svg+xml,<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg"><circle cx="30" cy="30" r="1" fill="rgba(255,255,255,0.1)"/></svg>');
}
.stats-grid{
    display:flex;
    justify-content:space-around;
    align-items:center;
    flex-wrap:wrap;
    gap:30px;
    position:relative;
    z-index:2;
}
.stat-box{
    text-align:center;
    color:#fff;
}
.stat-number{
    font-size:3.5rem;
    font-weight:900;
    line-height:1;
    margin-bottom:10px;
    background:linear-gradient(135deg, #fff, var(--azul-claro));
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}
.stat-label{
    font-size:0.95rem;
    color:rgba(255,255,255,0.8);
    text-transform:uppercase;
    letter-spacing:1px;
}
.stat-divider{
    width:1px;
    height:80px;
    background:rgba(255,255,255,0.2);
}

/* ============================================
   SOBRE O GRUPO
   ============================================ */

.sobre-grupo-section{
    padding:120px 0;
    background:#fff;
}
.sobre-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}
.visual-composition{
    position:relative;
    height:500px;
}
.visual-card{
    position:absolute;
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    color:#fff;
    padding:30px;
    border-radius:20px;
    box-shadow:0 20px 60px rgba(26,35,50,0.3);
    text-align:center;
}
.visual-card-1{
    top:0;
    left:0;
    width:200px;
    animation:float-1 6s ease-in-out infinite;
}
.visual-card-2{
    top:150px;
    right:0;
    width:220px;
    animation:float-2 7s ease-in-out infinite;
}
.visual-card-3{
    bottom:0;
    left:50px;
    width:180px;
    animation:float-3 8s ease-in-out infinite;
}
@keyframes float-1{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(10px, -20px); }
}
@keyframes float-2{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(-15px, 15px); }
}
@keyframes float-3{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(20px, -10px); }
}
.visual-year{
    font-size:3rem;
    font-weight:900;
    margin-bottom:10px;
}
.visual-icon-large{
    font-size:3.5rem;
    margin-bottom:10px;
}
.visual-text{
    font-size:1rem;
    font-weight:600;
}
.sobre-texto{
    font-size:1.1rem;
    color:#455a64;
    line-height:1.8;
    margin-bottom:20px;
}
.sobre-texto strong{
    color:var(--azul-marinho);
}
.sobre-features{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin:30px 0;
}
.feature-item{
    display:flex;
    align-items:center;
    gap:15px;
    font-size:1.05rem;
    color:var(--azul-marinho);
    font-weight:500;
}
.feature-check{
    width:30px;
    height:30px;
    background:var(--azul-claro);
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0;
}

/* ============================================
   SERVIÇOS HOME
   ============================================ */

.servicos-home-section{
    padding:120px 0;
    background:var(--cinza-claro);
}
.servicos-grid-home{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
    gap:30px;
    margin-top:60px;
}
.servico-card-home{
    background:#fff;
    padding:40px 30px;
    border-radius:20px;
    text-decoration:none;
    color:inherit;
    transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position:relative;
    overflow:hidden;
    border:2px solid transparent;
    opacity:0;
    animation:fadeInUp 0.6s ease forwards;
}
.servico-card-home:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 60px rgba(26,35,50,0.15);
    border-color:var(--azul-claro);
}
.servico-card-bg{
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg, var(--azul-claro), var(--azul-medio));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.3s;
}
.servico-card-home:hover .servico-card-bg{
    transform:scaleX(1);
}
.servico-icon-home{
    font-size:3rem;
    margin-bottom:20px;
}
.servico-titulo-home{
    font-size:1.4rem;
    color:var(--azul-marinho);
    margin-bottom:15px;
    font-weight:700;
}
.servico-desc-home{
    color:#455a64;
    line-height:1.7;
    margin-bottom:25px;
    font-size:0.95rem;
}
.servico-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--azul-claro);
    font-weight:700;
    font-size:0.95rem;
    transition:gap 0.3s;
}
.servico-card-home:hover .servico-link{
    gap:12px;
}
.servico-link svg{
    width:18px;
    height:18px;
    transition:transform 0.3s;
}
.servico-card-home:hover .servico-link svg{
    transform:translateX(5px);
}
.servicos-cta-home{
    text-align:center;
    margin-top:50px;
}

/* ============================================
   EMPRESAS HOME - CARROSSEL
   ============================================ */

.empresas-home-section{
    padding:120px 0;
    background:#fff;
    overflow:hidden;
}
.empresas-carousel-home{
    margin-top:60px;
    overflow:hidden;
}
.empresas-track{
    display:flex;
    gap:30px;
    animation:scroll-empresas 25s linear infinite;
    width:max-content;
}
.empresas-track:hover{
    animation-play-state:paused;
}
@keyframes scroll-empresas{
    0%{ transform:translateX(0); }
    100%{ transform:translateX(-50%); }
}
.empresa-slide{
    flex-shrink:0;
    width:300px;
    text-decoration:none;
    color:inherit;
}
.empresa-slide-content{
    background:#fff;
    padding:40px 30px;
    border-radius:20px;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    border-top:4px solid var(--cor-empresa);
    transition:all 0.3s;
    text-align:center;
    height:100%;
}
.empresa-slide:hover .empresa-slide-content{
    transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(26,35,50,0.15);
}
.empresa-slide-logo{
    width:100px;
    height:100px;
    margin:0 auto 20px;
    background:var(--cinza-claro);
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    padding:15px;
}
.empresa-slide-logo img{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
}
.empresa-logo-fallback{
    font-size:2rem;
    font-weight:900;
    color:var(--cor-empresa);
}
.empresa-slide-nome{
    font-size:1.5rem;
    color:var(--azul-marinho);
    margin-bottom:10px;
    font-weight:700;
}
.empresa-slide-segmento{
    color:#607d8b;
    font-size:0.95rem;
    margin-bottom:20px;
}
.empresa-slide-arrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    background:var(--cor-empresa);
    color:#fff;
    border-radius:50%;
    transition:transform 0.3s;
}
.empresa-slide-arrow svg{
    width:20px;
    height:20px;
}
.empresa-slide:hover .empresa-slide-arrow{
    transform:translateX(5px);
}

/* ============================================
   PROJETOS HOME
   ============================================ */

.projetos-home-section{
    padding:120px 0;
    background:var(--cinza-claro);
}
.projetos-grid-home{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
    gap:30px;
    margin-top:60px;
}
.projeto-card-home{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 4px 20px rgba(26,35,50,0.08);
    transition:all 0.4s;
}
.projeto-card-home:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(26,35,50,0.15);
}
.projeto-imagem-home{
    position:relative;
    height:240px;
    background:var(--azul-marinho);
    overflow:hidden;
}
.projeto-imagem-home img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s;
}
.projeto-card-home:hover .projeto-imagem-home img{
    transform:scale(1.1);
}
.projeto-placeholder{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.projeto-placeholder svg{
    width:60px;
    height:60px;
    color:rgba(255,255,255,0.3);
}
.projeto-overlay-home{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:rgba(26,35,50,0.8);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transition:opacity 0.3s;
}
.projeto-card-home:hover .projeto-overlay-home{
    opacity:1;
}
.btn-ver-projeto{
    padding:12px 24px;
    background:#fff;
    color:var(--azul-marinho);
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    transform:translateY(20px);
    transition:all 0.3s;
}
.projeto-card-home:hover .btn-ver-projeto{
    transform:translateY(0);
}
.estado-projeto{
    position:absolute;
    top:20px;
    right:20px;
    padding:6px 14px;
    border-radius:20px;
    font-size:0.75rem;
    font-weight:700;
    text-transform:uppercase;
    color:#fff;
}
.estado-em-andamento{ background:#f39c12; }
.estado-concluido{ background:#27ae60; }
.projeto-info-home{
    padding:25px;
}
.projeto-info-home h3{
    font-size:1.3rem;
    color:var(--azul-marinho);
    margin-bottom:10px;
    font-weight:700;
}
.projeto-local{
    display:flex;
    align-items:center;
    gap:8px;
    color:#607d8b;
    font-size:0.9rem;
}
.projeto-local svg{
    width:16px;
    height:16px;
    color:var(--azul-claro);
}
.projetos-cta-home{
    text-align:center;
    margin-top:50px;
}

/* ============================================
   PARCEIROS HOME
   ============================================ */

.parceiros-home-section{
    padding:100px 0;
    background:#fff;
}

/* ============================================
   TESTEMUNHOS HOME
   ============================================ */

.testemunhos-home-section{
    padding:120px 0;
    background:var(--cinza-claro);
}

/* ============================================
   CTA FINAL HOME
   ============================================ */

.cta-home-final{
    position:relative;
    background:linear-gradient(135deg, var(--azul-marinho), var(--azul-medio));
    padding:120px 0;
    overflow:hidden;
}
.cta-bg-animation{
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    overflow:hidden;
}
.cta-circle{
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,0.05);
}
.cta-circle-1{
    width:500px;
    height:500px;
    top:-200px;
    right:-100px;
    animation:float-slow 20s ease-in-out infinite;
}
.cta-circle-2{
    width:300px;
    height:300px;
    bottom:-100px;
    left:-50px;
    animation:float-slow 15s ease-in-out infinite reverse;
}
.cta-circle-3{
    width:200px;
    height:200px;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    animation:pulse-shape 10s ease-in-out infinite;
}
@keyframes float-slow{
    0%, 100%{ transform:translate(0, 0); }
    50%{ transform:translate(30px, -30px); }
}
@keyframes pulse-shape{
    0%, 100%{ transform:translate(-50%, -50%) scale(1); opacity:0.05; }
    50%{ transform:translate(-50%, -50%) scale(1.3); opacity:0.1; }
}
.cta-home-content{
    position:relative;
    z-index:2;
    max-width:800px;
    margin:0 auto;
    text-align:center;
    color:#fff;
}
.cta-home-content h2{
    font-size:clamp(2rem, 4vw, 3rem);
    margin-bottom:20px;
    font-weight:800;
}
.cta-home-content p{
    font-size:1.2rem;
    opacity:0.9;
    margin-bottom:40px;
    line-height:1.7;
}
.cta-home-buttons{
    display:flex;
    gap:20px;
    justify-content:center;
    flex-wrap:wrap;
}
.btn-hero-whatsapp{
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:18px 36px;
    background:#25D366;
    color:#fff;
    border-radius:50px;
    text-decoration:none;
    font-weight:700;
    font-size:1.05rem;
    transition:all 0.3s;
    box-shadow:0 10px 30px rgba(37,211,102,0.4);
}
.btn-hero-whatsapp:hover{
    background:#128C7E;
    transform:translateY(-3px);
    box-shadow:0 15px 40px rgba(37,211,102,0.5);
}
.btn-hero-whatsapp svg{
    width:22px;
    height:22px;
}

/* ANIMAÇÕES GERAIS */
@keyframes fadeInDown{
    from{ opacity:0; transform:translateY(-30px); }
    to{ opacity:1; transform:translateY(0); }
}
@keyframes fadeInUp{
    from{ opacity:0; transform:translateY(30px); }
    to{ opacity:1; transform:translateY(0); }
}

/* RESPONSIVO */
@media (max-width:1024px){
    .sobre-grid{
        grid-template-columns:1fr;
        gap:50px;
    }
    .visual-composition{
        height:400px;
    }
    .stat-divider{
        display:none;
    }
    .stats-grid{
        justify-content:center;
    }
}

@media (max-width:768px){
    .hero-video-section{
        min-height:600px;
    }
    .hero-carousel{
        height:180px;
    }
    .hero-title{
        font-size:2.5rem;
    }
    .hero-description{
        font-size:1.1rem;
    }
    .hero-cta-buttons{
        flex-direction:column;
        align-items:flex-start;
    }
    .scroll-indicator{
        display:none;
    }
    .stat-number{
        font-size:2.5rem;
    }
    .visual-composition{
        height:350px;
    }
    .visual-card{
        padding:20px;
    }
    .visual-year{
        font-size:2rem;
    }
    .visual-icon-large{
        font-size:2.5rem;
    }
    .empresa-slide{
        width:250px;
    }
    .cta-home-buttons{
        flex-direction:column;
        align-items:center;
    }
}

@media (max-width:480px){
    .hero-carousel{
        height:160px;
    }
    .hero-title{
        font-size:2rem;
    }
    .btn-hero-primary,
    .btn-hero-secondary,
    .btn-hero-whatsapp{
        padding:15px 28px;
        font-size:0.95rem;
    }
}

/* ============================================
   BOTÃO VOLTAR AO TOPO
   ============================================ */
.back-to-top{
    position:fixed;
    bottom:100px;
    right:30px;
    width:50px;
    height:50px;
    background:var(--azul-claro);
    color:#fff;
    border:none;
    border-radius:50%;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    transform:translateY(20px);
    transition:all 0.3s;
    z-index:999;
    box-shadow:0 4px 15px rgba(74,144,226,0.4);
}
.back-to-top.visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}
.back-to-top:hover{
    background:var(--azul-marinho);
    transform:translateY(-3px);
}
.back-to-top svg{
    width:24px;
    height:24px;
}

@media (max-width:768px){
    .back-to-top{
        bottom:90px;
        right:20px;
        width:45px;
        height:45px;
    }
}