/* Elograf - rodapé universal definitivo
   Padrão do site antigo: 1220px.
   Subir para: /web/css/elograf-footer.css
*/

#elograf-footer,
#elograf-footer * {
    box-sizing: border-box;
}

#elograf-footer {
    width: 1220px;
    max-width: 1220px;
    margin: 0 auto;
    padding: 0;
    clear: both;
    overflow: hidden;
}

.elograf-footer-standard {
    width: 1220px;
    max-width: 1220px;
    margin: 0 auto;
    padding: 42px 0 18px 0;
    background: #3f3f3f;
    color: #d8e1ee;
    clear: both;
    overflow: hidden;
}

/* Área principal: mesma largura útil das páginas corretas */
.elograf-footer-inner {
    width: 1100px;
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 300px 500px 300px;
    align-items: center;
    justify-content: center;
    column-gap: 0;
}

.elograf-footer-col {
    min-width: 0;
}

/* ESQUERDA: não mexer no tamanho do botão/imagem original */
.elograf-footer-budget {
    width: 300px;
    justify-self: start;
    text-align: left;
}

.elograf-footer-budget a {
    display: inline-block;
    text-decoration: none;
}

.elograf-footer-budget img {
    display: block;
    height: auto;
    margin: 0;
    /* Não definir width aqui. O tamanho fica pelo arquivo original / classe original. */
}

/* CENTRO: bloco centralizado na página, texto interno à esquerda */
.elograf-footer-contact {
    width: 260px;
    max-width: 260px;
    justify-self: center;
    text-align: left;
    color: #d8e1ee;
}

.elograf-footer-contact h6 {
    margin: 0 0 12px 0;
    padding: 0;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
    text-align: left;
}

.elograf-footer-contact p {
    margin: 8px 0;
    padding: 0;
    color: #d8e1ee;
    font-size: 14px;
    line-height: 1.3;
    text-align: left;
    white-space: nowrap;
}

/* DIREITA: bloco alinhado à direita; redes e logo centralizadas entre si */
.elograf-footer-social {
    width: 225px;
    justify-self: end;
    text-align: center;
}

.elograf-social-title {
    width: 225px;
    margin: 0 auto 12px auto;
    padding: 0;
    color: #ff972f;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
}

.elograf-social-icons {
    width: 225px;
    margin: 0 auto 20px auto;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: nowrap;
}

.elograf-social-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    border-radius: 50%;
    background: #666666;
    color: #ffffff;
    text-decoration: none;
    font-size: 18px;
    line-height: 1;
}

.elograf-social-btn:hover {
    background: #777777;
    color: #ffffff;
}

.elograf-footer-logo {
    display: block;
    width: 225px;
    max-width: 225px;
    height: auto;
    margin: 0 auto;
    opacity: 0.55;
}

/* Linha e copyright: centro exato da largura de 1220px */
.elograf-footer-signature {
    width: 1220px;
    max-width: 1220px;
    margin: 34px auto 0 auto;
    padding: 16px 0 0 0;
    border-top: 1px solid rgba(255,255,255,0.16);
    text-align: center;
    clear: both;
}

.elograf-footer-signature p {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    color: #d8e1ee;
    font-size: 13px;
    line-height: 1.4;
    text-align: center;
}

/* Segurança contra transbordamento */
.elograf-footer-standard img,
.elograf-footer-standard a,
.elograf-footer-standard div,
.elograf-footer-standard section,
.elograf-footer-standard p,
.elograf-footer-standard h6 {
    max-width: 100%;
}

/* Responsivo */
@media (max-width: 1220px) {
    #elograf-footer,
    .elograf-footer-standard {
        width: 100%;
        max-width: 100%;
    }

    .elograf-footer-inner,
    .elograf-footer-signature {
        width: calc(100% - 40px);
        max-width: 1100px;
    }
}

@media (max-width: 768px) {
    .elograf-footer-standard {
        padding: 34px 0 18px 0;
    }

    .elograf-footer-inner {
        display: flex;
        flex-direction: column;
        gap: 26px;
        width: calc(100% - 36px);
        max-width: 100%;
    }

    .elograf-footer-budget,
    .elograf-footer-contact,
    .elograf-footer-social 
	.elograf-footer-logo{
        width: 100%;
        max-width: 100%;
        justify-self: center;
        text-align: center;
    }

    .elograf-footer-budget img {
        margin: 0 auto;
    }

    .elograf-footer-contact h6,
    .elograf-footer-contact p {
        text-align: center;
        white-space: normal;
    }

    .elograf-social-title,
    .elograf-social-icons,
    .elograf-footer-logo {
        width: 225px;
        max-width: 225px;
        margin-left: auto;
        margin-right: auto;
    }

    .elograf-footer-signature {
        width: calc(100% - 36px);
    }
}
