/* ==========================================================================
   WS NAVIGATION
   Cabecalho e navegacao principal

   Projeto: Workshop de Plantas Medicinais
   Desenvolvimento: Elias Lopes
   Agencia: Foca La Comunicacao e Design
========================================================================== */


/* ==========================================================================
   CABECALHO -- ESTRUTURA PRINCIPAL
========================================================================== */

body.wp-child-theme-exhibz-child .ws-site-header {
    position: absolute !important;
    top: 0;
    right: 0;
    left: 0;
    z-index: var(--ws-z-header);

    width: 100%;
    margin: 0;
    padding: 0;

    background: transparent !important;
    box-shadow: none !important;
}

body.admin-bar.wp-child-theme-exhibz-child .ws-site-header {
    top: 2rem;
}

body.wp-child-theme-exhibz-child .ws-header-container {
    position: relative;

    width: min(calc(100% - 2rem), 82.5rem);
    max-width: 82.5rem;
    margin-inline: auto;
    padding-inline: 0;
}


/* ==========================================================================
   LINHA PRINCIPAL DO HEADER
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ws-space-6);

    width: 100%;
    min-height: var(--ws-header-height);
    padding-block: 1.125rem;
}


/* ==========================================================================
   LOGO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-brand {
    display: flex;
    align-items: center;
    flex: 0 1 auto;

    min-width: 0;
}

body.wp-child-theme-exhibz-child .ws-header-logo,
body.wp-child-theme-exhibz-child .ws-header-logo-title {
    display: inline-flex;
    align-items: center;

    margin: 0;
    padding: 0;
}

body.wp-child-theme-exhibz-child .ws-header-logo img {
    display: block;

    width: auto;
    max-width: 15rem;
    height: auto;
    max-height: 4.5rem;
}


/* ==========================================================================
   AREA DOS BOTOES
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--ws-space-4);
    flex: 0 0 auto;
}


/* Estrutura comum dos dois botoes */

body.wp-child-theme-exhibz-child .ws-menu-toggle,
body.wp-child-theme-exhibz-child .ws-header-cta {
    align-self: center;

    min-height: 3.5rem;
    margin: 0;
    padding: 0.875rem 1.5rem;

    border: 0 !important;
    border-radius: var(--ws-radius-md) !important;
    box-shadow: none !important;

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-text-sm);
    font-weight: var(--ws-font-semibold) !important;
    line-height: 1;
    letter-spacing: 0.01em;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase !important;

    vertical-align: middle;

    transition:
        color var(--ws-transition-normal),
        background-color var(--ws-transition-normal),
        transform var(--ws-transition-normal);
}


/* ==========================================================================
   BOTAO MENU E EDICOES -- VERDE
========================================================================== */

body.wp-child-theme-exhibz-child .ws-menu-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;

    color: var(--ws-color-white) !important;
    background-color: var(--ws-primary) !important;

    cursor: pointer;
}

body.wp-child-theme-exhibz-child .ws-menu-toggle:hover,
body.wp-child-theme-exhibz-child .ws-menu-toggle:focus-visible {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-primary-hover) !important;

    transform: translateY(-0.125rem);
}

body.wp-child-theme-exhibz-child
.ws-menu-toggle[aria-expanded="true"] {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-dark) !important;

    transform: translateY(0);
}

body.wp-child-theme-exhibz-child .ws-menu-toggle:active {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-primary) !important;

    transform: translateY(0);
}


/* ==========================================================================
   ICONE HAMBURGUER
========================================================================== */

body.wp-child-theme-exhibz-child .ws-menu-toggle-icon {
    position: relative;

    display: inline-block;
    flex: 0 0 1.5rem;

    width: 1.5rem;
    height: 1.125rem;

    color: currentColor;
}

body.wp-child-theme-exhibz-child .ws-menu-toggle-icon i {
    display: none !important;
}

body.wp-child-theme-exhibz-child .ws-menu-toggle-icon::before,
body.wp-child-theme-exhibz-child .ws-menu-toggle-icon::after {
    content: "";

    position: absolute;
    left: 0;

    display: block;

    width: 1.5rem;
    height: 0.1875rem;

    background-color: currentColor;
    border-radius: var(--ws-radius-pill);

    transition:
        top var(--ws-transition-normal),
        opacity var(--ws-transition-normal),
        visibility var(--ws-transition-normal),
        transform var(--ws-transition-normal),
        box-shadow var(--ws-transition-normal);
}

body.wp-child-theme-exhibz-child .ws-menu-toggle-icon::before {
    top: 0.0625rem;

    box-shadow:
        0 0.4375rem 0 currentColor,
        0 0.875rem 0 currentColor;
}

body.wp-child-theme-exhibz-child .ws-menu-toggle-icon::after {
    top: 0.5rem;

    visibility: hidden;
    opacity: 0;
}

body.wp-child-theme-exhibz-child
.ws-menu-toggle[aria-expanded="true"]
.ws-menu-toggle-icon::before {
    top: 0.5rem;

    box-shadow: none;

    transform: rotate(45deg);
}

body.wp-child-theme-exhibz-child
.ws-menu-toggle[aria-expanded="true"]
.ws-menu-toggle-icon::after {
    top: 0.5rem;

    visibility: visible;
    opacity: 1;

    transform: rotate(-45deg);
}


/* ==========================================================================
   BOTAO INSCRICAO E TRABALHOS -- VERMELHO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-cta,
body.wp-child-theme-exhibz-child .ticket-btn.ws-header-cta,
body.wp-child-theme-exhibz-child .ws-header-cta.mvermelho,
body.wp-child-theme-exhibz-child .ws-header-cta.rosa {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;

    color: var(--ws-color-white) !important;
    background-color: #ef4438 !important;
    border-color: #ef4438 !important;
}



body.wp-child-theme-exhibz-child .ws-header-cta:hover,
body.wp-child-theme-exhibz-child .ws-header-cta:focus-visible,
body.wp-child-theme-exhibz-child .ticket-btn.ws-header-cta:hover,
body.wp-child-theme-exhibz-child .ticket-btn.ws-header-cta:focus-visible {
    color: var(--ws-color-white) !important;
    background-color: #cf3328 !important;
    border-color: #cf3328 !important;

    transform: translateY(-0.125rem);
}

body.wp-child-theme-exhibz-child .ws-header-cta:active,
body.wp-child-theme-exhibz-child .ticket-btn.ws-header-cta:active {
    color: var(--ws-color-white) !important;
    background-color: #ef4438 !important;
    border-color: #ef4438 !important;

    transform: translateY(0);
}

/* ==========================================================================
   ICONE DE INSCRICAO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-cta-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.875rem;

    width: 1.875rem;
    height: 1.875rem;

    color: var(--ws-color-white);
    line-height: 1;
}

body.wp-child-theme-exhibz-child .ws-header-cta-icon svg {
    display: block;

    width: 100%;
    height: 100%;

    overflow: visible;

    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.wp-child-theme-exhibz-child .ws-header-cta-icon svg path {
    fill: none !important;
    stroke: currentColor !important;
}


/* ==========================================================================
   LINHA INFERIOR DO CABECALHO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-divider {
    width: 100%;
    height: 0.0625rem;

    background-color: rgba(255, 255, 255, 0.72);
}


/* ==========================================================================
   AREA DA NAVEGACAO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-header-navigation {
    position: relative;

    width: 100%;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
.navbar {
    display: block !important;

    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;

    background: transparent !important;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
.navbar-toggler {
    display: none !important;
}


/* ==========================================================================
   PAINEL PRINCIPAL -- FECHADO
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-site-header
.ws-header-navigation
#primary-nav,

body.wp-child-theme-exhibz-child
.ws-site-header
.navbar-expand-lg
#primary-nav.navbar-collapse {
    position: absolute !important;
    top: 0;
    right: 0;
    left: 0;
    z-index: calc(var(--ws-z-header) + 1);

    display: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;

    width: 100%;
    height: auto !important;
    margin: 0;
    padding: 1.25rem 1.5rem;

    background-color: var(--ws-color-white) !important;
    border: 0 !important;
    border-radius: 0 0 var(--ws-radius-lg) var(--ws-radius-lg);
    box-shadow: var(--ws-shadow-md);

    transform: translateY(-0.625rem);

    transition:
        opacity var(--ws-transition-normal),
        visibility var(--ws-transition-normal),
        transform var(--ws-transition-normal);
}


/* ==========================================================================
   PAINEL PRINCIPAL -- ABERTO
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-site-header
.ws-header-navigation
#primary-nav.show,

body.wp-child-theme-exhibz-child
.ws-site-header
.navbar-expand-lg
#primary-nav.navbar-collapse.show {
    display: block !important;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;

    transform: translateY(0);
}

body.wp-child-theme-exhibz-child
.ws-site-header
.ws-header-navigation
#primary-nav.collapsing {
    display: block !important;
    visibility: visible;
    overflow: hidden;

    opacity: 1;
    pointer-events: auto;

    background-color: var(--ws-color-white) !important;
}


/* ==========================================================================
   LISTA PRINCIPAL
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: start;
    gap: 0.625rem 1.5rem;

    width: 100%;
    margin: 0;
    padding: 0;

    list-style: none;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li {
    position: relative;

    display: block;

    width: 100%;
    margin: 0;
    padding: 0;
}


/* ==========================================================================
   LINKS PRINCIPAIS

   O padding-inline e aplicado no proprio link.
   Assim o chevron respeita o mesmo espaco da esquerda.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li > a {
    position: relative;

    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;

    box-sizing: border-box;
    width: 100%;
    min-height: 3rem;
    padding-block: 0.75rem !important;
    padding-inline: 1.75rem !important;

    color: var(--ws-dark) !important;
    background: transparent !important;

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-text-sm);
    font-weight: var(--ws-font-semibold) !important;
    line-height: 1.25;
    text-decoration: none !important;
    text-transform: uppercase !important;

    transition:
        color var(--ws-transition-fast),
        background-color var(--ws-transition-fast);
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li > a:hover,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li > a:focus,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li.current-menu-item > a,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li.current-menu-parent > a,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li.current-menu-ancestor > a {
    color: var(--ws-primary) !important;
    background-color: rgba(50, 143, 61, 0.08) !important;
}


/* ==========================================================================
   CHEVRONS

   Neutraliza o posicionamento original do Bootstrap/Exhibz.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li.menu-item-has-children > a::after,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li > a.dropdown-toggle::after {
    content: "" !important;

    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    inset: auto !important;

    display: block !important;
    flex: 0 0 0.5rem;

    box-sizing: border-box;
    width: 0.5rem !important;
    height: 0.5rem !important;

    margin-block: -0.25rem 0 !important;
    margin-inline: auto 0 !important;

    border-top: 0 !important;
    border-right: 0.125rem solid currentColor !important;
    border-bottom: 0.125rem solid currentColor !important;
    border-left: 0 !important;

    background: transparent !important;

    transform: rotate(45deg);
    transform-origin: center;

    transition:
        margin-block-start var(--ws-transition-fast),
        transform var(--ws-transition-fast);
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li.show > a::after,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu > li > a[aria-expanded="true"]::after {
    margin-block-start: 0.25rem !important;

    transform: rotate(225deg);
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
.dropdown-menu-toggle {
    display: none !important;
}


/* ==========================================================================
   SUBMENUS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu {
    position: static !important;
    inset: auto !important;
    float: none !important;

    display: none;

    min-width: 0;
    width: 100%;
    margin: 0;
    padding: 0.25rem 1rem 0.5rem;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    transform: none !important;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu.show {
    display: block !important;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu
li {
    display: block;

    width: 100%;
    margin: 0;
    padding: 0;
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu
a {
    display: block;

    box-sizing: border-box;
    width: 100%;
    padding-block: 0.5rem;
    padding-inline: 0.25rem;

    color: var(--ws-color-text) !important;
    background: transparent !important;

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-text-xs);
    font-weight: var(--ws-font-medium);
    line-height: 1.35;
    text-decoration: none !important;
    text-transform: uppercase !important;

    transition:
        color var(--ws-transition-fast),
        padding-inline-start var(--ws-transition-fast);
}

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu
a:hover,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu
a:focus,

body.wp-child-theme-exhibz-child
.ws-header-navigation
#main-menu
.dropdown-menu
a.active {
    color: var(--ws-primary) !important;
    background: transparent !important;

    padding-inline-start: 0.5625rem;
}


/* ==========================================================================
   HERO SOB O CABECALHO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor
> .elementor-section:first-child {
    margin-top: 0;
}


/* ==========================================================================
   TABLET
========================================================================== */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child .ws-header-container {
    width: min(calc(100% - 2.5rem), 82.5rem);
    max-width: 82.5rem;
}

    body.wp-child-theme-exhibz-child .ws-header-main {
        min-height: var(--ws-header-height-mobile);
        gap: var(--ws-space-4);
        padding-block: 0.875rem;
    }

    body.wp-child-theme-exhibz-child .ws-header-logo img {
        max-width: 11.875rem;
        max-height: 3.625rem;
    }

    body.wp-child-theme-exhibz-child .ws-menu-toggle,
    body.wp-child-theme-exhibz-child .ws-header-cta {
        min-height: 3.125rem;
        padding: 0.75rem 1.125rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* ==========================================================================
   MOBILE
========================================================================== */

@media (max-width: 47.9375rem) {

    body.admin-bar.wp-child-theme-exhibz-child .ws-site-header {
        top: 2.875rem;
    }

    body.wp-child-theme-exhibz-child .ws-header-container {
        width: min(calc(100% - 1.5rem), 82.5rem);
        max-width: 82.5rem;
    }

    body.wp-child-theme-exhibz-child .ws-header-main {
        align-items: stretch;
        flex-direction: column;
        gap: 0.875rem;

        min-height: auto;
        padding-block: 0.875rem;
    }

    body.wp-child-theme-exhibz-child .ws-header-brand {
        justify-content: center;

        width: 100%;
    }

    body.wp-child-theme-exhibz-child .ws-header-logo img {
        max-width: 11.25rem;
        max-height: 3.5rem;
    }

    body.wp-child-theme-exhibz-child .ws-header-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.625rem;

        width: 100%;
    }

    body.wp-child-theme-exhibz-child .ws-menu-toggle,
    body.wp-child-theme-exhibz-child .ws-header-cta {
        width: 100%;
        min-width: 0;
        min-height: 2.875rem;
        padding: 0.6875rem 0.75rem;

        font-size: 0.75rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    #primary-nav {
        padding: 0.875rem 1.125rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu {
        display: block !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li {
        border-bottom: 0.0625rem solid var(--ws-color-border);
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li:last-child {
        border-bottom: 0;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a {
        min-height: 2.875rem;
        padding-block: 0.8125rem !important;
        padding-inline: 1.125rem !important;
    }
}


/* ==========================================================================
   MOBILE PEQUENO
========================================================================== */

@media (max-width: 30rem) {

    body.wp-child-theme-exhibz-child .ws-header-actions {
        grid-template-columns: 1fr;
    }

    body.wp-child-theme-exhibz-child .ws-menu-toggle,
    body.wp-child-theme-exhibz-child .ws-header-cta {
        justify-content: center;
    }
}

/* ==========================================================================
   ESTADOS DOS LOGOTIPOS
========================================================================== */

/* Estado inicial sobre o hero */

body.wp-child-theme-exhibz-child
.ws-header-logo-image--light {
    display: block !important;
}

body.wp-child-theme-exhibz-child
.ws-header-logo-image--dark {
    display: none !important;
}


/* ==========================================================================
   TRANSICAO DO CABECALHO
========================================================================== */

body.wp-child-theme-exhibz-child .ws-site-header {
    transition:
        background-color var(--ws-transition-normal),
        box-shadow var(--ws-transition-normal);
}

body.wp-child-theme-exhibz-child .ws-header-main {
    transition:
        min-height var(--ws-transition-normal),
        padding var(--ws-transition-normal);
}

body.wp-child-theme-exhibz-child .ws-header-divider {
    transition:
        background-color var(--ws-transition-normal);
}

body.wp-child-theme-exhibz-child .ws-header-logo-image {
    transition:
        opacity var(--ws-transition-normal);
}


/* ==========================================================================
   CABECALHO DURANTE A ROLAGEM
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled {
    position: fixed !important;
    top: 0;
    right: 0;
    left: 0;

    width: 100%;

    background-color: var(--ws-color-white) !important;
    box-shadow: var(--ws-shadow-sm) !important;
}


/* Compensa a barra administrativa do WordPress */

body.admin-bar.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled {
    top: 2rem;
}


/* Reduz moderadamente a altura quando fixo */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-main {
    min-height: auto;
    padding-block: 0.75rem;
}


/* Troca o logo branco pelo logo verde */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo-image--light {
    display: none !important;
}

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo-image--dark {
    display: block !important;
}


/* Logo um pouco menor durante a rolagem */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo img {
    max-height: 3.5rem;
}


/* Linha inferior no estado branco */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-divider {
    background-color: rgba(0, 77, 13, 0.18);
}


/* Mantem o menu dropdown abaixo da linha */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-navigation {
    position: relative;
}


/* ==========================================================================
   TABLET - HEADER FIXO
========================================================================== */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-main {
        padding-block: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-logo img {
        max-height: 3rem;
    }
}


/* ==========================================================================
   MOBILE -- HEADER FIXO
========================================================================== */

@media (max-width: 47.9375rem) {

    body.admin-bar.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled {
        top: 2.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-main {
        padding-block: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-logo img {
        max-height: 2.75rem;
    }
}

/* ==========================================================================
   CORRECAO DEFINITIVA DO HEADER
   - mais espaco no estado inicial;
   - linha com 2px em rem;
   - sticky compacto;
   - sticky cresce quando o menu abre;
   - nenhuma area branca vazia quando fechado.
========================================================================== */


/* ==========================================================================
   ESTADO INICIAL SOBRE O HERO
========================================================================== */

/*
 * Espacamento igual acima e abaixo da linha que contem
 * logo e botoes.
 */
body.wp-child-theme-exhibz-child
.ws-site-header:not(.ws-header-scrolled)
.ws-header-main {
    min-height: auto;
    padding-block: 2rem;
}


/*
 * Linha branca com 2px.
 * 2px = 0.125rem considerando a base de 16px.
 */
body.wp-child-theme-exhibz-child
.ws-site-header:not(.ws-header-scrolled)
.ws-header-divider {
    display: block;
    width: 100%;
    height: 0.125rem;

    background-color: rgba(255, 255, 255, 0.82);
}


/* ==========================================================================
   HEADER FIXO DURANTE O SCROLL
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled {
    position: fixed !important;
    top: 0;
    right: 0;
    left: 0;

    width: 100%;

    background-color: var(--ws-color-white) !important;
    box-shadow: var(--ws-shadow-sm) !important;
}


/* Compensacao da barra administrativa */

body.admin-bar.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled {
    top: 2rem;
}


/*
 * No scroll, a linha principal fica compacta.
 */
body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-main {
    min-height: auto;
    padding-block: 0.625rem;
}


/*
 * No header fixo nao queremos a borda.
 */
body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-divider {
    display: none;
    height: 0;

    background: transparent;
}


/* ==========================================================================
   LOGOTIPOS
========================================================================== */

/* Estado inicial: branco */

body.wp-child-theme-exhibz-child
.ws-header-logo-image--light {
    display: block !important;
}

body.wp-child-theme-exhibz-child
.ws-header-logo-image--dark {
    display: none !important;
}


/* Estado fixo: verde */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo-image--light {
    display: none !important;
}

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo-image--dark {
    display: block !important;
}


/* Logo compacto no scroll */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-logo img {
    width: auto;
    max-width: 15rem;
    height: auto;
    max-height: 3.5rem;
}


/* ==========================================================================
   NAVEGACAO FECHADA NO HEADER FIXO
========================================================================== */

/*
 * Impede aquela grande area branca vazia.
 * Quando o menu esta fechado, a area de navegacao ocupa zero.
 */
body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-navigation {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0;
    padding: 0;

    overflow: visible;
}

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled
.ws-header-navigation
.navbar {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0;
    padding: 0;

    overflow: visible;
}


/* ==========================================================================
   NAVEGACAO ABERTA NO HEADER FIXO
========================================================================== */

/*
 * Quando o JavaScript adiciona ws-menu-is-open,
 * a Area da navegacao volta a participar da altura do header.
 */
body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled.ws-menu-is-open
.ws-header-navigation {
    height: auto !important;
    min-height: 0 !important;
}

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled.ws-menu-is-open
.ws-header-navigation
.navbar {
    height: auto !important;
    min-height: 0 !important;
}


/*
 * Esta e a correcao principal:
 * no scroll e com o menu aberto, o painel deixa de ser absoluto.
 * Assim o header aumenta de altura para receber o dropdown.
 */
body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled.ws-menu-is-open
.ws-header-navigation
#primary-nav.show,

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled.ws-menu-is-open
.navbar-expand-lg
#primary-nav.navbar-collapse.show {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    inset: auto !important;

    display: block !important;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;

    width: 100%;
    height: auto !important;
    margin: 0;
    padding: 1.25rem 1.5rem;

    background-color: var(--ws-color-white) !important;
    border: 0 !important;
    border-radius: 0;
    box-shadow: none !important;

    transform: none !important;
}


/* Sombra somente ao final de todo o header aberto */

body.wp-child-theme-exhibz-child
.ws-site-header.ws-header-scrolled.ws-menu-is-open {
    box-shadow: var(--ws-shadow-md) !important;
}


/* ==========================================================================
   TABLET
========================================================================== */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-site-header:not(.ws-header-scrolled)
    .ws-header-main {
        padding-block: 1.5rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-main {
        padding-block: 0.625rem;
    }
}


/* ==========================================================================
   MOBILE
========================================================================== */

@media (max-width: 47.9375rem) {

    body.admin-bar.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled {
        top: 2.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header:not(.ws-header-scrolled)
    .ws-header-main {
        padding-block: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled
    .ws-header-main {
        padding-block: 0.5rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled.ws-menu-is-open
    .ws-header-navigation
    #primary-nav.show {
        padding: 0.875rem 1.125rem;
    }
}

/* ==========================================================================
   HERO -- CONTADOR DO EVENTO

   Escopo:
   .ws-hero

   Mantem:
   - arcos originais do Exhibz;
   - cores originais;
   - efeito de abertura dos circulos.

   Ajusta:
   - numeros menores;
   - rotulos pequenos;
   - quatro itens na mesma linha;
   - area suficiente para os arcos;
   - remove completamente os dois-pontos.
========================================================================== */


/* ==========================================================================
   VARIAVEIS
========================================================================== */

body.wp-child-theme-exhibz-child .ws-hero {
    --ws-countdown-columns: 4;
    --ws-countdown-gap: 0.75rem;

    --ws-countdown-number-size:
        clamp(2rem, 2.4vw, 2.75rem);

    --ws-countdown-label-size: 0.75rem;
}


/* ==========================================================================
   CONTEINER
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.ts-count-down {
    width: 100%;
    max-width: 48rem;
    margin: 0;

    overflow: visible !important;
}

body.wp-child-theme-exhibz-child
.ws-hero
.countdown {
    display: grid !important;

    grid-template-columns:
        repeat(
            var(--ws-countdown-columns),
            minmax(0, 1fr)
        );

    align-items: center;
    gap: var(--ws-countdown-gap);

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: visible !important;
}


/* ==========================================================================
   ITEM INDIVIDUAL
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.counter-item {
    position: relative;

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

    box-sizing: border-box;

    width: 100% !important;
    min-width: 0;
    min-height: 0;
    aspect-ratio: 1 / 1;

    margin: 0 !important;
    padding: 1.25rem 0.25rem !important;

    overflow: visible !important;

    text-align: center;
}


/* Mantem os elementos decorativos visiveis */

body.wp-child-theme-exhibz-child
.ws-hero
.counter-item::before,

body.wp-child-theme-exhibz-child
.ws-hero
.counter-item::after {
    overflow: visible !important;
}


/* ==========================================================================
   NUMEROS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.countdown-number {
    position: relative;
    z-index: 2;

    display: block;

    width: auto;
    min-width: 0;
    margin: 0;

    color: var(--ws-color-white) !important;

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-countdown-number-size) !important;
    font-weight: var(--ws-font-bold) !important;
    line-height: 1 !important;
    letter-spacing: -0.035em;
    text-align: center;
}


/* ==========================================================================
   ROTULOS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.counter-item
.smalltext {
    position: relative;
    z-index: 2;

    display: block;

    width: auto;
    margin-top: 0.375rem;

    color: var(--ws-color-white) !important;

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-countdown-label-size) !important;
    font-weight: var(--ws-font-semibold) !important;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-align: center;
    text-transform: uppercase;
}


/* ==========================================================================
   REMOVE OS DOIS-PONTOS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.counter-item
b {
    display: none !important;
}


/* ==========================================================================
   BOTAO ABAIXO DO CONTADOR
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-hero
.elementor-widget-button {
    margin-top: 1.5rem;
}


/* ==========================================================================
   NOTEBOOK
========================================================================== */

@media (max-width: 75rem) {

    body.wp-child-theme-exhibz-child .ws-hero {
        --ws-countdown-gap: 0.625rem;

        --ws-countdown-number-size:
            clamp(1.875rem, 2.3vw, 2.5rem);

        --ws-countdown-label-size: 0.6875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .ts-count-down {
        max-width: 44rem;
    }
}


/* ==========================================================================
   TABLET
========================================================================== */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child .ws-hero {
        --ws-countdown-columns: 4;
        --ws-countdown-gap: 0.5rem;

        --ws-countdown-number-size:
            clamp(1.625rem, 3vw, 2.125rem);

        --ws-countdown-label-size: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .ts-count-down {
        max-width: 100%;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .counter-item {
        padding-inline: 0.125rem !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .counter-item
    .smalltext {
        letter-spacing: 0.14em;
    }
}


/* ==========================================================================
   MOBILE
========================================================================== */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child .ws-hero {
        --ws-countdown-columns: 2;
        --ws-countdown-gap: 1rem;

        --ws-countdown-number-size:
            clamp(1.875rem, 8vw, 2.375rem);

        --ws-countdown-label-size: 0.6875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .countdown {
        row-gap: 1rem;
    }
}


/* ==========================================================================
   MOBILE PEQUENO
========================================================================== */

@media (max-width: 30rem) {

    body.wp-child-theme-exhibz-child .ws-hero {
        --ws-countdown-gap: 0.75rem;

        --ws-countdown-number-size:
            clamp(1.625rem, 8vw, 2rem);

        --ws-countdown-label-size: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-hero
    .counter-item
    .smalltext {
        letter-spacing: 0.12em;
    }
}

/* ==========================================================================
   RESPONSIVO FINAL -- TABLET E MOBILE

   Corrige:
   - remove a reserva artificial de altura no hero;
   - mantem apenas um respiro curto apos a linha do header;
   - o dropdown so ocupa altura quando estiver aberto;
   - painel e itens usam fundo claro, como no desktop;
   - logo maior e botoes lado a lado.
========================================================================== */


/* ==========================================================================
   TABLET
========================================================================== */

@media (max-width: 64rem) {

    /*
     * Remove qualquer reserva artificial criada anteriormente.
     * O hero mantem somente um respiro curto apos o cabecalho.
     */
    body.wp-child-theme-exhibz-child
    .ws-hero
    > .elementor-container {
        padding-top: 2rem !important;
    }

    /*
     * Logo um pouco maior.
     */
    body.wp-child-theme-exhibz-child
    .ws-header-logo img {
        width: auto;
        max-width: 14rem;
        height: auto;
        max-height: 4.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-main {
        gap: 1.25rem;
    }

    /*
     * Fechado: a area da navegacao nao ocupa altura.
     */
    body.wp-child-theme-exhibz-child
    .ws-header-navigation,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    .navbar {
        height: 0 !important;
        min-height: 0 !important;
        margin: 0;
        padding: 0;

        overflow: visible;
    }

    /*
     * Aberto: somente entao a area cresce.
     */
    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .ws-header-navigation,

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .ws-header-navigation
    .navbar {
        height: auto !important;
        min-height: 0 !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .ws-header-navigation
    #primary-nav.show,

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .navbar-expand-lg
    #primary-nav.navbar-collapse.show {
        position: static !important;
        inset: auto !important;

        display: block !important;
        visibility: visible;
        opacity: 1;
        pointer-events: auto;

        width: 100%;
        height: auto !important;
        margin: 0;
        padding: 1rem;

        background-color: var(--ws-color-white) !important;
        border-radius: 0 0 var(--ws-radius-lg) var(--ws-radius-lg);
        box-shadow: var(--ws-shadow-md);

        transform: none !important;
    }

    /*
     * Fundo claro, igual ao desktop.
     */
    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li {
        background-color: #f4f5f3 !important;
        border-bottom: 0.0625rem solid var(--ws-color-border);
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li:last-child {
        border-bottom: 0;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-item > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-parent > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-ancestor > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.show > a {
        color: var(--ws-dark) !important;
        background-color: #f4f5f3 !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:hover,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:focus,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:focus-visible,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:active {
        color: var(--ws-primary) !important;
        background-color: rgba(50, 143, 61, 0.10) !important;
    }

    /*
     * Submenus tambem claros.
     */
    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu {
        padding: 0.25rem 1rem 0.5rem;
        background-color: var(--ws-color-white) !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu
    a {
        color: var(--ws-color-text) !important;
        background-color: var(--ws-color-white) !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu
    a:hover,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu
    a:focus,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu
    a:active,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu
    .dropdown-menu
    a.active {
        color: var(--ws-primary) !important;
        background-color: rgba(50, 143, 61, 0.08) !important;
    }
}


/* ==========================================================================
   MOBILE
========================================================================== */

@media (max-width: 47.9375rem) {

    /*
     * Nada de 11rem, 15rem ou 17rem reservados.
     * Apenas um respiro curto depois do header.
     */
    body.wp-child-theme-exhibz-child
    .ws-hero
    > .elementor-container {
        padding-top: 1.5rem !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-main {
        align-items: stretch;
        flex-direction: column;
        gap: 1.125rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-logo img {
        width: auto;
        max-width: 14rem;
        height: auto;
        max-height: 4.5rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.75rem;

        width: 100%;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle,

    body.wp-child-theme-exhibz-child
    .ws-header-cta {
        width: 100%;
        min-width: 0;
        min-height: 3rem;
        padding: 0.75rem 0.625rem;

        font-size: 0.75rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-text,

    body.wp-child-theme-exhibz-child
    .ws-header-cta-text {
        white-space: nowrap;
    }

    /*
     * O painel aberto fica logo apos a linha.
     */
    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .ws-header-navigation
    #primary-nav.show {
        margin-top: 0;
        padding: 0.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu {
        display: block !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a {
        min-height: 3rem;
        padding-block: 0.875rem !important;
        padding-inline: 1rem !important;
    }
}


/* ==========================================================================
   MOBILE PEQUENO
========================================================================== */

@media (max-width: 30rem) {

    body.wp-child-theme-exhibz-child
    .ws-hero
    > .elementor-container {
        padding-top: 1.25rem !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-logo img {
        max-width: 13rem;
        max-height: 4.125rem;
    }

    /*
     * Continua com os dois botoes lado a lado.
     */
    body.wp-child-theme-exhibz-child
    .ws-header-actions {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle,

    body.wp-child-theme-exhibz-child
    .ws-header-cta {
        gap: 0.5rem;
        padding-inline: 0.5rem;

        font-size: 0.6875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon {
        flex-basis: 1.25rem;
        width: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon::before,

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon::after {
        width: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-cta-icon {
        flex-basis: 1.5rem;
        width: 1.5rem;
        height: 1.5rem;
    }
}

/* ==========================================================================
   CORRECAO FINAL -- TABLET E MOBILE
   - elimina o fundo escuro exposto entre os itens no tablet;
   - mantem o painel e a grade totalmente claros;
   - no celular, mostra somente "MENU" e "INSCRICAO";
   - mantem os dois botoes lado a lado.
========================================================================== */


/* ==========================================================================
   TABLET -- FUNDO CLARO DEFINITIVO
========================================================================== */

@media (min-width: 48rem) and (max-width: 64rem) {

    /*
     * O fundo escuro visto no tablet era o fundo herdado do menu original,
     * aparecendo nos espacos da grade e na celula vazia da ultima linha.
     */
    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation,

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    .navbar,

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    #primary-nav,

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    #primary-nav.navbar-collapse,

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    #main-menu,

    body.wp-child-theme-exhibz-child
    .ws-site-header
    .ws-header-navigation
    .navbar-nav {
        background-color: var(--ws-color-white) !important;
        background-image: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .ws-header-navigation
    #primary-nav.show,

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-menu-is-open
    .navbar-expand-lg
    #primary-nav.navbar-collapse.show {
        background-color: var(--ws-color-white) !important;
        background-image: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 1rem !important;
        row-gap: 0.0625rem !important;

        background-color: var(--ws-color-white) !important;
        background-image: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li:hover,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li:focus-within,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.show {
        background-color: #f4f5f3 !important;
        background-image: none !important;
        box-shadow: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.show > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-item > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-parent > a,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li.current-menu-ancestor > a {
        color: var(--ws-dark) !important;
        background-color: #f4f5f3 !important;
        background-image: none !important;
        box-shadow: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:hover,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:focus,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu > li > a:focus-visible {
        color: var(--ws-primary) !important;
        background-color: rgba(50, 143, 61, 0.10) !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu::before,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #main-menu::after,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #primary-nav::before,

    body.wp-child-theme-exhibz-child
    .ws-header-navigation
    #primary-nav::after {
        content: none !important;
        display: none !important;
    }
}


/* ==========================================================================
   TEXTOS RESPONSIVOS DOS BOTOES
========================================================================== */

/* Desktop e tablet: mostra os textos completos. */
body.wp-child-theme-exhibz-child
.ws-menu-toggle-text--mobile,

body.wp-child-theme-exhibz-child
.ws-header-cta-text--mobile {
    display: none !important;
}

body.wp-child-theme-exhibz-child
.ws-menu-toggle-text--desktop,

body.wp-child-theme-exhibz-child
.ws-header-cta-text--desktop {
    display: inline-block !important;
}


/* Mobile: mostra apenas MENU e INSCRICAO vindos do PHP. */
@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-header-actions {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        align-items: stretch;
        gap: 0.75rem;

        width: 100%;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle,

    body.wp-child-theme-exhibz-child
    .ws-header-cta {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;

        width: 100%;
        min-width: 0;
        min-height: 3rem;
        height: auto;
        padding: 0.75rem 0.625rem;

        overflow: hidden;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-text--desktop,

    body.wp-child-theme-exhibz-child
    .ws-header-cta-text--desktop {
        display: none !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-text--mobile,

    body.wp-child-theme-exhibz-child
    .ws-header-cta-text--mobile {
        display: inline-block !important;

        font-family: var(--ws-font-primary);
        font-size: 0.8125rem;
        font-weight: var(--ws-font-semibold);
        line-height: 1;
        letter-spacing: 0.01em;
        white-space: nowrap;
        text-transform: uppercase;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon {
        flex: 0 0 1.25rem;
        width: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon::before,

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-icon::after {
        width: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-header-cta-icon {
        flex: 0 0 1.5rem;
        width: 1.5rem;
        height: 1.5rem;
    }
}


/* ==========================================================================
   MOBILE PEQUENO -- CONTINUA EM DUAS COLUNAS
========================================================================== */

@media (max-width: 30rem) {

    body.wp-child-theme-exhibz-child
    .ws-header-actions {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 0.625rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle,

    body.wp-child-theme-exhibz-child
    .ws-header-cta {
        gap: 0.4375rem;
        padding-inline: 0.4375rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-menu-toggle-text--mobile,

    body.wp-child-theme-exhibz-child
    .ws-header-cta-text--mobile {
        font-size: 0.75rem;
    }
}


/* ==========================================================================
   MOBILE — HEADER DEIXA DE SER FIXO
========================================================================== */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-site-header,

    body.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled {
        position: absolute !important;

        top: 0 !important;
        right: 0 !important;
        left: 0 !important;

        width: 100% !important;

        transform: none !important;
    }

    body.admin-bar.wp-child-theme-exhibz-child
    .ws-site-header,

    body.admin-bar.wp-child-theme-exhibz-child
    .ws-site-header.ws-header-scrolled {
        top: 2.875rem !important;
    }
}