/* =========================================================
   CABEÇALHO DO SERVIÇO
   ========================================================= */

.catalogo-servico__cabecalho {
    display: flex;
    align-items: center;
    gap: 1rem;

    margin: 0 !important;
    padding: 0;
}

.catalogo-servico__cabecalho .entry-title {
    margin: 0 !important;
}

.catalogo-servico__icone {
    flex: 0 0 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 50px;
    height: 50px;

    margin: 0;
    padding: 0;
}

.catalogo-servico__icone-img {
    display: block;

    width: 50px !important;
    height: 50px !important;

    max-width: 50px !important;
    max-height: 50px !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain;
}


/* =========================================================
   ATRAVÉS DO + LOGO DO SISTEMA
   ========================================================= */

.entry-header {
    text-align: center;
}

.entry-header .catalogo-servico__cabecalho {
    text-align: left;
}

.entry-header > hr {
    margin-top: 0.75rem !important;
    margin-bottom: 0.5rem !important;
}


/* Texto "Através do" */

.entry-header > p.has-text-align-right {
    display: inline-flex !important;
    align-items: center;

    margin: 0 0.5rem 0 0 !important;
    padding: 0 !important;

    font-size: 1rem;
    font-weight: 700;
    line-height: 1;

    text-align: left !important;
    vertical-align: middle;
}


/* Container Gutenberg do logo */

.entry-header > p.has-text-align-right + .wp-block-buttons {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    vertical-align: middle;
    overflow: visible !important;
}

.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    overflow: visible !important;
}


/* Link que envolve o logo */

.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 2px !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    line-height: normal !important;

    overflow: visible !important;
}

.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link:hover,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link:focus,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link:active,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button:hover,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button:focus,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button:active {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    box-shadow: none !important;

    transform: none !important;
}

.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link strong,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button strong {
    display: block !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 0 !important;

    overflow: visible !important;
}


/* Logo do sistema */

.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-block-button__link img,
.entry-header > p.has-text-align-right + .wp-block-buttons
.wp-element-button img {
    display: block !important;

    width: 85px !important;
    height: auto !important;

    max-width: 85px !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    vertical-align: middle !important;

    object-fit: contain !important;

    overflow: visible !important;
}


/* Metadados abaixo do cabeçalho */

.entry-header-meta {
    clear: both;

    width: 100%;

    margin-top: 0.25rem !important;

    text-align: left;
}


/* =========================================================
   FILTROS DO POST
   ========================================================= */

.filtros-post {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;

    gap: 1rem;

    width: 100%;

    margin: 1.5rem 0;
    padding: 1rem 0;

    border-top: 1px solid #999;
    border-bottom: 1px solid #999;

    box-sizing: border-box;
}

.filtros-post > strong {
    flex: 0 0 auto;

    margin: 0;
    padding: 0;

    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}


/* Container Gutenberg gerado pelo shortcode */

.filtros-post .wp-block-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;

    gap: 1rem !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}

.filtros-post .wp-block-button {
    display: inline-flex !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}

.filtros-post .wp-block-button__link,
.filtros-post .wp-element-button {
    display: inline-flex !important;

    align-items: center;
    justify-content: center;

    width: auto !important;
    min-width: 0 !important;
    min-height: 38px;

    margin: 0 !important;
    padding: 0.55rem 1rem !important;

    box-sizing: border-box;

    border-radius: 8px !important;

    font-size: 0.85rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    text-align: center;
    text-decoration: none !important;

    white-space: nowrap;

    box-shadow: none !important;
}

.filtros-post .wp-block-button__link:hover,
.filtros-post .wp-block-button__link:focus,
.filtros-post .wp-element-button:hover,
.filtros-post .wp-element-button:focus {
    text-decoration: none !important;
    filter: brightness(0.92);
}


/* =========================================================
   BOTÕES DE RETORNO
   ========================================================= */

.botoes-retorno {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 1rem;

    width: 100%;

    margin: 1rem auto 1.5rem;
    padding: 0;

    box-sizing: border-box;
}

.botoes-retorno > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* Botão Catálogo de Serviços */

.botoes-retorno__catalogo {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 46px;

    margin: 0 !important;
    padding: 0.75rem 1.5rem;

    box-sizing: border-box;

    color: #ffffff !important;
    background-color: #00548e !important;

    border: 0;
    border-radius: 0;

    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;

    text-decoration: none !important;
}

.botoes-retorno__catalogo::before {
    content: "←";

    margin-right: 0.65rem;

    font-size: 1rem;
    line-height: 1;
}

.botoes-retorno__catalogo:hover,
.botoes-retorno__catalogo:focus {
    color: #ffffff !important;
    background-color: #003f6b !important;

    text-decoration: none !important;
}


/* Segundo botão gerado pelo shortcode */

.botoes-retorno__secundario {
    display: flex;
    align-items: center;

    width: auto;

    margin: 0 !important;
    padding: 0 !important;
}

.botoes-retorno__secundario .wp-block-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    gap: 0 !important;
}

.botoes-retorno__secundario .wp-block-button {
    display: flex !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}

.botoes-retorno__secundario .wp-block-button__link,
.botoes-retorno__secundario .wp-element-button {
    display: inline-flex !important;

    align-items: center;
    justify-content: center;

    width: auto !important;
    min-width: 0 !important;
    min-height: 46px;

    margin: 0 !important;
    padding: 0.75rem 1.5rem !important;

    box-sizing: border-box;

    color: #ffffff !important;
    background-color: #00548e !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    text-decoration: none !important;
}

.botoes-retorno__secundario .wp-block-button__link::before,
.botoes-retorno__secundario .wp-element-button::before {
    content: "←";

    margin-right: 0.65rem;

    font-size: 1rem;
    line-height: 1;
}

.botoes-retorno__secundario .wp-block-button__link:hover,
.botoes-retorno__secundario .wp-block-button__link:focus,
.botoes-retorno__secundario .wp-element-button:hover,
.botoes-retorno__secundario .wp-element-button:focus {
    color: #ffffff !important;
    background-color: #003f6b !important;

    text-decoration: none !important;
}


/* =========================================================
   AVISO COM LÂMPADA
   Mantido depois dos demais componentes para que suas
   regras não sejam sobrescritas por estilos de botões.
   ========================================================= */

.entry-content .aviso-lampada,
.aviso-lampada {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 1.5rem;

    width: 100%;
    max-width: 100%;

    margin: 1.5rem auto 2rem !important;
    padding: 0 !important;

    box-sizing: border-box;
}


/* Lâmpada */

.entry-content .aviso-lampada > div:first-child,
.aviso-lampada > div:first-child {
    flex: 0 0 50px;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 50px;
    height: 50px;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 44px !important;
    line-height: 1 !important;
}


/*
 * O WordPress pode converter o emoji em <img class="emoji">.
 * Nesse caso o font-size do elemento pai não altera o tamanho,
 * então a imagem também recebe dimensões explícitas.
 */
.entry-content .aviso-lampada > div:first-child img.emoji,
.aviso-lampada > div:first-child img.emoji {
    display: block !important;

    width: 50px !important;
    height: 50px !important;

    min-width: 50px !important;
    min-height: 50px !important;

    max-width: 50px !important;
    max-height: 50px !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
}


/* Área do shortcode */

.entry-content .aviso-lampada > div:last-child,
.aviso-lampada > div:last-child {
    flex: 0 1 710px !important;

    width: 100% !important;
    max-width: 710px !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Container Gutenberg */

.entry-content .aviso-lampada .wp-block-buttons,
.aviso-lampada .wp-block-buttons {
    display: flex !important;

    align-items: stretch !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 710px !important;

    margin: 0 !important;
    padding: 0 !important;

    gap: 0 !important;
}

.entry-content .aviso-lampada .wp-block-button,
.aviso-lampada .wp-block-button {
    display: block !important;

    width: 100% !important;
    max-width: 710px !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
}


/* Aviso azul */

.entry-content .aviso-lampada .wp-block-button__link,
.entry-content .aviso-lampada .wp-element-button,
.aviso-lampada .wp-block-button__link,
.aviso-lampada .wp-element-button {
    display: block !important;

    width: 100% !important;

    height: auto !important;
    min-height: 80px !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 1rem 2rem !important;

    box-sizing: border-box !important;

    color: #ffffff !important;

    background: #00548e !important;
    background-color: #00548e !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 16px !important;

    box-shadow: none !important;

    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;

    text-align: center !important;
    text-decoration: none !important;

    white-space: normal !important;

    overflow: visible !important;
}

.entry-content .aviso-lampada .wp-block-button__link strong,
.entry-content .aviso-lampada .wp-element-button strong,
.aviso-lampada .wp-block-button__link strong,
.aviso-lampada .wp-element-button strong {
    color: #ffffff !important;

    font-size: inherit !important;
    font-weight: 700 !important;
    line-height: inherit !important;
}

.entry-content .aviso-lampada .wp-block-button__link br,
.entry-content .aviso-lampada .wp-element-button br,
.aviso-lampada .wp-block-button__link br,
.aviso-lampada .wp-element-button br {
    display: block !important;

    content: "";

    margin-top: 0.2rem;
}

.entry-content .aviso-lampada .wp-block-button__link:hover,
.entry-content .aviso-lampada .wp-block-button__link:focus,
.entry-content .aviso-lampada .wp-element-button:hover,
.entry-content .aviso-lampada .wp-element-button:focus,
.aviso-lampada .wp-block-button__link:hover,
.aviso-lampada .wp-block-button__link:focus,
.aviso-lampada .wp-element-button:hover,
.aviso-lampada .wp-element-button:focus {
    color: #ffffff !important;

    background: #003f6b !important;
    background-color: #003f6b !important;
    background-image: none !important;

    border: 0 !important;

    text-decoration: none !important;

    box-shadow: none !important;
}


/* =========================================================
   RESPONSIVIDADE
   ========================================================= */

@media (max-width: 650px) {

    .filtros-post {
        gap: 0.75rem;

        padding: 0.875rem 0;
    }

    .filtros-post .wp-block-buttons {
        gap: 0.75rem !important;
    }

    .filtros-post .wp-block-button__link,
    .filtros-post .wp-element-button {
        min-height: 36px;

        padding: 0.5rem 0.85rem !important;

        font-size: 0.8rem !important;
    }


    .entry-content .aviso-lampada,
    .aviso-lampada {
        gap: 1rem;

        align-items: center !important;
    }

    .entry-content .aviso-lampada > div:first-child,
    .aviso-lampada > div:first-child {
        flex: 0 0 40px;

        width: 40px;
        height: 40px;

        font-size: 36px !important;
    }

    .entry-content .aviso-lampada > div:first-child img.emoji,
    .aviso-lampada > div:first-child img.emoji {
        width: 40px !important;
        height: 40px !important;

        min-width: 40px !important;
        min-height: 40px !important;

        max-width: 40px !important;
        max-height: 40px !important;
    }

    .entry-content .aviso-lampada > div:last-child,
    .aviso-lampada > div:last-child {
        flex: 1 1 auto !important;

        max-width: 710px !important;
    }

    .entry-content .aviso-lampada .wp-block-button__link,
    .entry-content .aviso-lampada .wp-element-button,
    .aviso-lampada .wp-block-button__link,
    .aviso-lampada .wp-element-button {
        min-height: 0 !important;

        padding: 0.85rem 1.25rem !important;

        font-size: 0.95rem !important;
    }
}


@media (max-width: 500px) {

    .botoes-retorno {
        flex-direction: column;

        gap: 0.75rem;
    }

    .botoes-retorno__catalogo,
    .botoes-retorno__secundario,
    .botoes-retorno__secundario .wp-block-buttons,
    .botoes-retorno__secundario .wp-block-button,
    .botoes-retorno__secundario .wp-block-button__link,
    .botoes-retorno__secundario .wp-element-button {
        width: 100% !important;
    }
}