.site-header{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;height:86px;padding:0 max(24px,4vw);color:#fff;transition:.3s}.site-header.scrolled{height:72px;background:rgba(8,28,44,.96);box-shadow:0 12px 30px rgba(0,0,0,.12);backdrop-filter:blur(16px)}.brand img{width:178px;max-height:54px}.main-nav{display:flex;align-items:center;gap:25px;font-size:.92rem;font-weight:600}.main-nav a{opacity:.88}.main-nav a:hover{opacity:1}.nav-cta{padding:9px 17px;border:1px solid rgba(255,255,255,.48);border-radius:999px}.menu-toggle{display:none;background:transparent;color:#fff;font-size:1.6rem}.site-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding:75px max(30px,8vw) 30px;background:#081d2c;color:#c9d0d5}.site-footer img{width:190px;margin-bottom:20px}.site-footer h2{font:700 .8rem "DM Sans";letter-spacing:.16em;text-transform:uppercase;color:var(--theme-secondary)}.site-footer small{grid-column:1/-1;padding-top:25px;border-top:1px solid rgba(255,255,255,.1)}.whatsapp{position:fixed;z-index:40;right:24px;bottom:24px;display:grid;width:58px;height:58px;place-items:center;border-radius:50%;background:#25d366;color:#fff;font-size:1.65rem;box-shadow:0 15px 35px rgba(0,0,0,.2)}.internal-hero{min-height:48vh;display:grid;place-items:center;padding:130px 20px 70px;color:#fff;text-align:center;background:linear-gradient(135deg,var(--navy),var(--theme-primary))}.internal-hero h1{font-size:clamp(3rem,8vw,6rem);margin-bottom:15px}.internal-hero p{max-width:650px;margin:auto}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.contact-grid article{padding:35px;border:1px solid var(--line);border-radius:var(--radius)}.contact-grid i{font-size:2rem;color:var(--theme-secondary)}

/* =============================================================================
   RODAPÉ INSTITUCIONAL COMPLETO - VERSÃO 3.0.37
   Arquivo relacionado: modelos_html/base.html
   ============================================================================= */

.site-footer {
    display: grid;
    grid-template-columns: 1.15fr 1.35fr 1.15fr .9fr;
    gap: clamp(2rem, 4vw, 4.5rem);
    align-items: start;
    padding: clamp(3.5rem, 6vw, 5.5rem) max(5vw, calc((100vw - 1480px) / 2));
    color: rgba(255, 255, 255, .82);
    background: #071d2c;
}

.site-footer__principal,
.site-footer__coluna {
    min-width: 0;
}

.site-footer__marca {
    display: inline-block;
    width: min(230px, 100%);
    margin-bottom: 1.15rem;
}

.site-footer__marca img {
    width: 100%;
    max-height: 86px;
    object-fit: contain;
    object-position: left center;
}

.site-footer__principal p {
    max-width: 300px;
    margin: 0 0 1.4rem;
    color: rgba(255, 255, 255, .68);
    font-size: .96rem;
}

.site-footer h2 {
    margin: 0 0 1.25rem;
    color: #fff;
    font-family: "DM Sans", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.site-footer__redes {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
}

.site-footer__redes a {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, .06);
    transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.site-footer__redes a:hover,
.site-footer__redes a:focus-visible {
    transform: translateY(-2px);
    border-color: var(--theme-secondary);
    background: rgba(212, 175, 103, .16);
}

.site-footer__item {
    display: flex;
    gap: .8rem;
    align-items: flex-start;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, .76);
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.site-footer__item i {
    flex: 0 0 auto;
    margin-top: .15rem;
    color: var(--theme-secondary);
    font-size: 1.05rem;
}

a.site-footer__item:hover,
a.site-footer__item:focus-visible,
.site-footer__navegacao a:hover,
.site-footer__navegacao a:focus-visible {
    color: #fff;
}

.site-footer__navegacao {
    display: grid;
    gap: .65rem;
}

.site-footer__navegacao a {
    color: rgba(255, 255, 255, .72);
}

.site-footer__base {
    grid-column: 1 / -1;
    display: flex;
    gap: 1rem 2rem;
    justify-content: space-between;
    padding-top: 1.7rem;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: rgba(255, 255, 255, .55);
}

@media (max-width: 1100px) {
    .site-footer {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .site-footer {
        grid-template-columns: 1fr;
        padding: 3.5rem 1.35rem 2rem;
    }

    .site-footer__base {
        display: grid;
    }
}

/* Ícones SVG das redes sociais carregados do cache local do site. */
.site-footer__icone-svg{width:20px;height:20px;object-fit:contain;filter:brightness(0) invert(1)}

/* Círculos das redes no rodapé com a cor oficial detectada. */
.site-footer__redes a[class*="social-brand--"]{
    border-color:rgba(var(--social-brand-rgb),.78);
    color:#fff;background:var(--social-brand);
    box-shadow:0 8px 20px rgba(var(--social-brand-rgb),.18);
}
.site-footer__redes a[class*="social-brand--"]:hover,
.site-footer__redes a[class*="social-brand--"]:focus-visible{
    border-color:#fff;background:var(--social-brand);
    box-shadow:0 10px 24px rgba(var(--social-brand-rgb),.34);
}
.site-footer__redes a i{font-size:1.1rem;line-height:1}
.site-footer__icone-svg{width:20px;height:20px;display:block;object-fit:contain;filter:brightness(0) invert(1)}


/* ========================================================================== */
/* RODAPÉ: CENTRALIZAÇÃO PRECISA DOS ÍCONES SOCIAIS                           */
/* O invólucro elimina diferenças de linha-base entre fonte e SVG.            */
/* ========================================================================== */
.site-footer__redes a[class*="social-brand--"] {
    position: relative;
    display: inline-grid;
    place-items: center;
    padding: 0;
}

.site-footer__icone-conteudo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    line-height: 1;
    transform: translate(-50%, -50%);
    transform-origin: center;
    pointer-events: none;
}

.site-footer__icone-conteudo i,
.site-footer__icone-conteudo img {
    display: block;
    margin: 0;
}

.site-footer__icone-conteudo i {
    font-size: 1.1rem;
    line-height: 1;
}

.site-footer__icone-conteudo .site-footer__icone-svg {
    width: 20px;
    height: 20px;
    object-fit: contain;
    object-position: center;
    transform: none;
}

/* O glifo do YouTube Music tem massa visual circular e recebe ajuste óptico. */
.site-footer__redes .social-brand--youtubemusic .site-footer__icone-conteudo {
    transform: translate(-50%, -50%) scale(.94);
}


/* ========================================================================== */
/* RODAPÉ COMPACTO: REDES, COPYRIGHT E ENCERRAMENTO DA PÁGINA                 */
/* ========================================================================== */
.site-footer {
    padding-bottom: 1.35rem;
}

.site-footer__redes {
    display: grid;
    grid-template-columns: repeat(6, 38px);
    gap: 8px;
    align-items: center;
    justify-content: start;
    width: max-content;
    max-width: 100%;
}

.site-footer__redes a[class*="social-brand--"] {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
}

.site-footer__icone-conteudo {
    width: 18px;
    height: 18px;
}

.site-footer__icone-conteudo i {
    font-size: .93rem;
}

.site-footer__icone-conteudo .site-footer__icone-svg {
    width: 17px;
    height: 17px;
}

.site-footer__redes .social-brand--youtubemusic .site-footer__icone-conteudo {
    transform: translate(-50%, -50%) scale(.9);
}

.site-footer__base {
    grid-column: 1 / -1;
    align-items: center;
    justify-content: center;
    min-height: 0;
    margin: 0;
    padding: 1.15rem 0 0;
    text-align: center;
}

.site-footer__base small {
    display: block;
    width: 100%;
    color: rgba(255, 255, 255, .62);
    text-align: center;
}

@media (max-width: 620px) {
    .site-footer {
        padding-bottom: 1.15rem;
    }

    .site-footer__redes {
        grid-template-columns: repeat(6, 34px);
        gap: 6px;
    }

    .site-footer__redes a[class*="social-brand--"] {
        width: 34px;
        height: 34px;
        min-width: 34px;
        min-height: 34px;
    }

    .site-footer__base {
        display: flex;
        padding-top: 1rem;
    }
}
