/* ==========================================================================
   WS COMPONENTS
   Reusable components for the Workshop de Plantas Medicinais project

   File scope in this version:
   1. Exhibz theme highlights
   2. Speakers
   3. Event edition cards
   4. Counter registration button
   5. Event location card
   6. Feature card titles
   7. Project buttons
   8. Event flow tabs
   9. First tab main column
   10. First tab side column
   11. First tab information cards and icons

   This version preserves the complete working state shown in Elementor.
========================================================================== */


/* ==========================================================================
   1. EXHIBZ THEME HIGHLIGHTS
========================================================================== */


/* Section titles */

body.wp-child-theme-exhibz-child .section-title,
body.wp-child-theme-exhibz-child .section-title h2,
body.wp-child-theme-exhibz-child .section-title .title,
body.wp-child-theme-exhibz-child .title-section-area,
body.wp-child-theme-exhibz-child .title-section-area h2,
body.wp-child-theme-exhibz-child .ts-section-title,
body.wp-child-theme-exhibz-child .ts-section-title h2,
body.wp-child-theme-exhibz-child .intro-title,
body.wp-child-theme-exhibz-child .event-title {
    color: var(--ws-dark) !important;
}


/* Section subtitles */

body.wp-child-theme-exhibz-child .section-title .sub-title,
body.wp-child-theme-exhibz-child .section-title .subtitle,
body.wp-child-theme-exhibz-child .ts-section-title .sub-title,
body.wp-child-theme-exhibz-child .ts-section-title .subtitle,
body.wp-child-theme-exhibz-child .title-section-area .sub-title,
body.wp-child-theme-exhibz-child .title-section-area .subtitle {
    color: var(--ws-primary) !important;
}


/* Numbers and details in native theme cards */

body.wp-child-theme-exhibz-child .feature-item .feature-number,
body.wp-child-theme-exhibz-child .feature-item .number,
body.wp-child-theme-exhibz-child .single-intro-text .count-number,
body.wp-child-theme-exhibz-child .single-intro-text .number,
body.wp-child-theme-exhibz-child .single-feature .number,
body.wp-child-theme-exhibz-child .single-feature .feature-number,
body.wp-child-theme-exhibz-child .ts-intro-item .number,
body.wp-child-theme-exhibz-child .ts-intro-item .count-number {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-primary-hover) !important;
}


/* Decorative corners in native theme cards */

body.wp-child-theme-exhibz-child .feature-item::before,
body.wp-child-theme-exhibz-child .feature-item::after,
body.wp-child-theme-exhibz-child .single-intro-text::before,
body.wp-child-theme-exhibz-child .single-intro-text::after,
body.wp-child-theme-exhibz-child .single-feature::before,
body.wp-child-theme-exhibz-child .single-feature::after,
body.wp-child-theme-exhibz-child .ts-intro-item::before,
body.wp-child-theme-exhibz-child .ts-intro-item::after {
    background-color: var(--ws-primary-hover) !important;
}


/* Icons in native theme cards */

body.wp-child-theme-exhibz-child .feature-item i,
body.wp-child-theme-exhibz-child .feature-item svg,
body.wp-child-theme-exhibz-child .single-intro-text i,
body.wp-child-theme-exhibz-child .single-intro-text svg,
body.wp-child-theme-exhibz-child .ts-intro-item i,
body.wp-child-theme-exhibz-child .ts-intro-item svg {
    color: var(--ws-primary) !important;
    fill: currentColor;
}


/* Title ornaments */

body.wp-child-theme-exhibz-child .section-title .title-shape,
body.wp-child-theme-exhibz-child .section-title .title-shape svg,
body.wp-child-theme-exhibz-child .ts-section-title .title-shape,
body.wp-child-theme-exhibz-child .ts-section-title .title-shape svg,
body.wp-child-theme-exhibz-child .title-section-area .title-shape,
body.wp-child-theme-exhibz-child .title-section-area .title-shape svg {
    color: var(--ws-primary) !important;
    fill: none;
    stroke: var(--ws-primary) !important;
}


/* ==========================================================================
   2. SPEAKERS
========================================================================== */


/* Main speaker widget color */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker {
    --speaker-color: var(--ws-primary) !important;
}


/* Speaker name */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker-info
.ts-title,

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker-info
.ts-title a {
    color: var(--ws-dark) !important;
}


/* Speaker name hover */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker-info
.ts-title a:hover,

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker:hover
.ts-speaker-info
.ts-title a {
    color: var(--ws-primary) !important;
}


/* Speaker role in card */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker-info > p {
    color: var(--ws-color-text) !important;
}


/* Speaker role in popup */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.ts-speaker-popup
.speakder-designation {
    color: var(--ws-primary) !important;
}


/* Circular button over speaker image */

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.speaker-img
.view-speaker {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-dark) !important;
    border-color: var(--ws-dark) !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-exhibz-speaker
.speaker-img
.view-speaker:hover {
    color: var(--ws-color-white) !important;
    background-color: var(--ws-primary) !important;
    border-color: var(--ws-primary) !important;
}


/* ==========================================================================
   3. EVENT EDITION CARDS

   Elementor classes:
   - ws-edition-card ws-edition-card--green
   - ws-edition-card ws-edition-card--yellow
   - ws-edition-card ws-edition-card--cyan
   - ws-edition-card-kicker
   - ws-edition-card-title
========================================================================== */


/* Card base */

body.wp-child-theme-exhibz-child
.ws-edition-card {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.1875rem;

    box-sizing: border-box;

    width: 100%;
    min-height: 5.625rem;
    padding: 0.75rem 1.25rem;

    overflow: hidden;

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

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

    text-align: center;

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


/* Green card */

body.wp-child-theme-exhibz-child
.ws-edition-card.ws-edition-card--green {
    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.03) 0%,
            rgba(255, 255, 255, 0.12) 38%,
            rgba(255, 255, 255, 0.05) 68%,
            rgba(255, 255, 255, 0.01) 100%
        ),
        rgba(62, 159, 16, 0.62) !important;
}


/* Yellow card */

body.wp-child-theme-exhibz-child
.ws-edition-card.ws-edition-card--yellow {
    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.03) 0%,
            rgba(255, 255, 255, 0.12) 38%,
            rgba(255, 255, 255, 0.05) 68%,
            rgba(255, 255, 255, 0.01) 100%
        ),
        rgba(181, 171, 40, 0.62) !important;
}


/* Cyan card */

body.wp-child-theme-exhibz-child
.ws-edition-card.ws-edition-card--cyan {
    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.03) 0%,
            rgba(255, 255, 255, 0.12) 38%,
            rgba(255, 255, 255, 0.05) 68%,
            rgba(255, 255, 255, 0.01) 100%
        ),
        rgba(19, 199, 186, 0.62) !important;
}


/* Internal text widgets */

body.wp-child-theme-exhibz-child
.ws-edition-card
.elementor-widget-text-editor {
    width: 100%;
    margin: 0 !important;
}

body.wp-child-theme-exhibz-child
.ws-edition-card
.elementor-widget-container {
    width: 100%;
}


/* Small text */

body.wp-child-theme-exhibz-child
.ws-edition-card-kicker {
    width: 100%;
    margin: 0 !important;

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

    font-family: var(--ws-font-primary) !important;
    font-size: var(--ws-text-sm) !important;
    font-weight: var(--ws-font-regular) !important;
    line-height: 1.15 !important;
    text-align: center !important;
    text-transform: uppercase;
}

body.wp-child-theme-exhibz-child
.ws-edition-card-kicker p {
    margin: 0 !important;

    color: inherit !important;

    font: inherit !important;
    line-height: inherit !important;
    text-align: inherit !important;
}


/* Main title */

body.wp-child-theme-exhibz-child
.ws-edition-card-title {
    width: 100%;
    margin: 0 !important;

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

    font-family: var(--ws-font-primary) !important;
    font-size: clamp(1.15rem, 1rem + 0.45vw, 1.55rem) !important;
    font-weight: var(--ws-font-bold) !important;
    line-height: 1.08 !important;
    text-align: center !important;
    text-transform: uppercase;
}

body.wp-child-theme-exhibz-child
.ws-edition-card-title p,

body.wp-child-theme-exhibz-child
.ws-edition-card-title h5 {
    margin: 0 !important;

    color: inherit !important;

    font: inherit !important;
    line-height: inherit !important;
    text-align: inherit !important;
}


/* Hover */

body.wp-child-theme-exhibz-child
.ws-edition-card:hover {
    transform: translateY(-0.125rem);
    box-shadow: var(--ws-shadow-sm);
}


/* Tablet */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-edition-card {
        min-height: 5.625rem;
        padding: 0.75rem 1rem;
    }
}


/* Mobile */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-edition-card {
        min-height: 5.625rem;
        padding: 0.6875rem 0.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-edition-card-title {
        font-size: 1.125rem !important;
    }
}


/* ==========================================================================
   4. BOTAO DE INSCRICAO DO CONTADOR

   Classe no widget Botao:
   ws-counter-cta

   Bloco preservado do arquivo funcional.
   A duplicacao posterior foi removida.
========================================================================== */

/* Estrutura */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;

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

    color: var(--ws-color-white) !important;
    background-color: #ef4438 !important;
    border: 1px solid #ef4438 !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) !important;
    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;

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


/* Mesmo icone do botao do header */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button::before {
    content: "";

    display: block;
    flex: 0 0 1.875rem;

    width: 1.875rem;
    height: 1.875rem;

    background-color: currentColor;

    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 7H8.5C7.12 7 6 8.12 6 9.5V25.5C6 26.88 7.12 28 8.5 28H22.5C23.88 28 25 26.88 25 25.5V21' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 4H19V9H12V4Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 21L25.5 12.5L28.5 15.5L20 24L16 25L17 21Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.5 14.5L26.5 17.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    mask-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 7H8.5C7.12 7 6 8.12 6 9.5V25.5C6 26.88 7.12 28 8.5 28H22.5C23.88 28 25 26.88 25 25.5V21' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 4H19V9H12V4Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 21L25.5 12.5L28.5 15.5L20 24L16 25L17 21Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.5 14.5L26.5 17.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    -webkit-mask-position: center;
    mask-position: center;

    -webkit-mask-size: contain;
    mask-size: contain;
}


/* Remove qualquer icone escolhido anteriormente no Elementor */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button-icon {
    display: none !important;
}


/* Hover */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button:hover,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button:focus {
    color: var(--ws-color-white) !important;
    background-color: #cf3328 !important;
    border-color: #cf3328 !important;

    transform: translateY(-0.125rem);
}


/* Clique */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button:active {
    color: var(--ws-color-white) !important;
    background-color: #ef4438 !important;
    border-color: #ef4438 !important;

    transform: translateY(0);
}


/* Foco pelo teclado */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-counter-cta
.elementor-button:focus-visible {
    outline: 3px solid rgba(239, 68, 56, 0.30) !important;
    outline-offset: 3px;
}


/* Mobile */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-counter-cta
    .elementor-button {
        min-height: 3rem;
        padding: 0.75rem 1rem;

        font-size: 0.75rem !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-counter-cta
    .elementor-button::before {
        flex-basis: 1.5rem;

        width: 1.5rem;
        height: 1.5rem;
    }
}

/* ==========================================================================
   5. EVENT LOCATION CARD

   Elementor structure:
   - ws-location-card
       - ws-location-card__item
           - ws-location-card__text
       - ws-location-card__item ws-location-card__item--divider
           - ws-location-card__text
========================================================================== */


/* Outer container */

body.wp-child-theme-exhibz-child
.ws-location-card {
    display: flex;
    flex-direction: row;
    align-items: stretch;

    box-sizing: border-box;

    width: 100%;
    min-height: 7.5rem;

    overflow: hidden;

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

    background-color: rgba(0, 61, 23, 0.22);

    border: 0.125rem solid rgba(255, 255, 255, 0.88);
    border-radius: var(--ws-radius-md);
}


/* Internal columns */

body.wp-child-theme-exhibz-child
.ws-location-card__item {
    display: flex;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;

    width: 50%;
    min-width: 0;
    padding: 1.25rem 1.75rem;
}


/* Vertical divider */

body.wp-child-theme-exhibz-child
.ws-location-card__item--divider {
    border-left: 0.0625rem solid rgba(255, 255, 255, 0.38);
}


/* Text */

body.wp-child-theme-exhibz-child
.ws-location-card__text {
    width: 100%;
    margin: 0 !important;

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

    font-family: var(--ws-font-primary) !important;
    font-size: clamp(1rem, 0.9rem + 0.3vw, 1.25rem) !important;
    font-weight: var(--ws-font-regular) !important;
    line-height: 1.3 !important;
    letter-spacing: 0.01em;
    text-align: left;
    text-transform: uppercase;
}

body.wp-child-theme-exhibz-child
.ws-location-card__text
.elementor-widget-container,

body.wp-child-theme-exhibz-child
.ws-location-card__text p {
    width: 100%;
    margin: 0 !important;

    color: inherit !important;

    font: inherit !important;
    line-height: inherit !important;
    text-align: inherit !important;
}


/* Tablet */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-location-card__item {
        padding: 1rem 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-location-card__text {
        font-size: 1rem !important;
    }
}


/* Mobile */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-location-card {
        flex-direction: column;
        min-height: 0;
    }

    body.wp-child-theme-exhibz-child
    .ws-location-card__item {
        width: 100%;
        padding: 1rem 1.125rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-location-card__item--divider {
        border-top: 0.0625rem solid rgba(255, 255, 255, 0.38);
        border-left: 0;
    }

    body.wp-child-theme-exhibz-child
    .ws-location-card__text {
        font-size: 0.9375rem !important;
        text-align: center;
    }
}


/* ==========================================================================
   6. FEATURE CARD TITLES

   Elementor class on the card:
   ws-feature-card-title
========================================================================== */


/* Card title */

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.ts-title,

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.feature-title,

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.title,

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.elementor-heading-title {
    color: var(--ws-dark) !important;
}


/* Card description */

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.description,

body.wp-child-theme-exhibz-child
.ws-feature-card-title
.feature-description {
    color: var(--ws-color-text) !important;
}


/* ==========================================================================
   7. PROJECT BUTTONS

   Elementor classes:
   - ws-btn
   - ws-btn-action
   - ws-btn-dark
   - ws-btn-icon-register
========================================================================== */


/* Widget width */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-action,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-dark,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-icon-register {
    width: auto;
}


/* Shared button structure */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn
.elementor-button,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-action
.elementor-button,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-dark
.elementor-button,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-icon-register
.elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;

    min-height: 3rem;
    padding: 0.75rem 1.5rem;

    border: 1px solid transparent;
    border-radius: var(--ws-radius-md, 8px);

    box-shadow: none !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: var(--ws-text-sm, 0.875rem) !important;
    font-weight: var(--ws-font-semibold, 600) !important;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase !important;

    transition:
        color 0.25s ease,
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}


/* Green button */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn
.elementor-button {
    color: var(--ws-color-white, #ffffff) !important;
    background-color: var(--ws-primary, #328f3d) !important;
    border-color: var(--ws-primary, #328f3d) !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn
.elementor-button:hover {
    color: var(--ws-color-white, #ffffff) !important;
    background-color: var(--ws-primary-hover, #176d2d) !important;
    border-color: var(--ws-primary-hover, #176d2d) !important;

    transform: translateY(-2px);
}


/* Red action button */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-action
.elementor-button {
    color: var(--ws-color-white, #ffffff) !important;
    background-color: var(--ws-action, #ef4438) !important;
    border-color: var(--ws-action, #ef4438) !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-action
.elementor-button:hover {
    color: var(--ws-color-white, #ffffff) !important;
    background-color: var(--ws-action-hover, #cf3328) !important;
    border-color: var(--ws-action-hover, #cf3328) !important;

    transform: translateY(-2px);
}


/* Dark button */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-dark
.elementor-button {
    color: var(--ws-color-white, #ffffff) !important;
    background-color: var(--ws-dark, #004d0d) !important;
    border-color: var(--ws-dark, #004d0d) !important;
}


/* Registration icon */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-icon-register
.elementor-button::before {
    content: "";

    display: block;
    flex: 0 0 1.5rem;

    width: 1.5rem;
    height: 1.5rem;

    background-color: currentColor;

    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 7H8.5C7.12 7 6 8.12 6 9.5V25.5C6 26.88 7.12 28 8.5 28H22.5C23.88 28 25 26.88 25 25.5V21' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 4H19V9H12V4Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 21L25.5 12.5L28.5 15.5L20 24L16 25L17 21Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.5 14.5L26.5 17.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    mask-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 7H8.5C7.12 7 6 8.12 6 9.5V25.5C6 26.88 7.12 28 8.5 28H22.5C23.88 28 25 26.88 25 25.5V21' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 4H19V9H12V4Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 21L25.5 12.5L28.5 15.5L20 24L16 25L17 21Z' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.5 14.5L26.5 17.5' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    -webkit-mask-position: center;
    mask-position: center;

    -webkit-mask-size: contain;
    mask-size: contain;
}


/* Hide icon selected manually in Elementor */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-icon-register
.elementor-button-icon {
    display: none !important;
}


/* ==========================================================================
   8. EVENT FLOW TABS

   Elementor class on Nested Tabs widget:
   ws-event-tabs
========================================================================== */


/* Main widget */

body.wp-child-theme-exhibz-child
.ws-event-tabs {
    width: 100%;
}


/* Tabs heading */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tabs-heading {
    position: relative;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;

    width: calc(100% - 1.05rem);
    margin: 0 auto 1.125rem;

    counter-reset: ws-event-step;
}


/* Connection line */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tabs-heading::before {
    content: "";

    position: absolute;
    z-index: 0;
    top: 50%;
    right: 4%;
    left: 4%;

    height: 1px;

    background-color: var(--ws-border-color, #d7ddd8);

    transform: translateY(-50%);
}


/* Tab title */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title {
    position: relative;
    z-index: 1;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;

    box-sizing: border-box;

    width: 100%;
    min-width: 0;
    min-height: 3.625rem;
    padding: 0.625rem 1.25rem;

    color: var(--ws-color-text, #303530) !important;
    background-color: #ffffff !important;

    border: 1px solid var(--ws-border-color, #d7ddd8) !important;
    border-radius: 0.625rem !important;
    box-shadow: none !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    line-height: 1.25;
    text-align: left;

    counter-increment: ws-event-step;

    transition:
        color 0.25s ease,
        background-color 0.25s ease,
        border-color 0.25s ease;
}


/* Step number */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title::before {
    content: counter(ws-event-step);

    display: inline-flex;
    flex: 0 0 2.125rem;
    align-items: center;
    justify-content: center;

    width: 2.125rem;
    height: 2.125rem;

    color: var(--ws-color-text, #202520);
    background-color: #eef0ee;

    border-radius: 50%;

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


/* Active tab */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="true"] {
    color: #ffffff !important;
    background-color: var(--ws-primary, #328f3d) !important;
    border-color: var(--ws-primary, #328f3d) !important;
}

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="true"]::before {
    color: var(--ws-primary, #328f3d);
    background-color: #ffffff;
}


/* Inactive tab hover */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="false"]:hover {
    color: #ffffff !important;
    background-color: var(--ws-primary, #328f3d) !important;
    border-color: var(--ws-primary, #328f3d) !important;
}

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="false"]:hover::before {
    color: var(--ws-primary, #328f3d);
    background-color: #ffffff;
}


/* Active tab hover */

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="true"]:hover {
    color: #ffffff !important;
    background-color: var(--ws-primary-hover, #176d2d) !important;
    border-color: var(--ws-primary-hover, #176d2d) !important;
}

body.wp-child-theme-exhibz-child
.ws-event-tabs
.e-n-tab-title[aria-selected="true"]:hover::before {
    color: var(--ws-primary-hover, #176d2d);
    background-color: #ffffff;
}

/* ==========================================================================
   PRIMEIRA ABA - PAINEL GERAL

   Classe no container que envolve as duas colunas:
   ws-event-panel
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel {
    position: relative;

    box-sizing: border-box;

    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 1.25rem;

    background-color: #ffffff;

    border: 1px solid var(--ws-border-color, #d9dedb);
    border-radius: 0.875rem;

    box-shadow: 0 0.625rem 1.875rem rgba(18, 52, 28, 0.05);
}


/* ==========================================================================
   PRIMEIRA ABA - CONTEUDO JA FUNCIONAL

   Estado preservado:
   - primeira aba aberta;
   - coluna esquerda com 60%;
   - coluna direita com 40%;
   - cards individuais;
   - divisores;
   - icones verdes.

   Nenhum valor visual desta estrutura foi alterado.
========================================================================== */

/* ==========================================================================
   9. PRIMEIRA ABA - COLUNA PRINCIPAL

   Classe no container da coluna esquerda:
   ws-info-column
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-column {
    display: flex;
    flex: 0 1 62%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0 !important;

    box-sizing: border-box;

    width: 62%;
    min-width: 0;
    margin: 0;
    padding: 0;

    overflow: hidden;

    background-color: #ffffff;
    border: 1px solid var(--ws-border-color, #d9dedb);
    border-radius: 0.625rem;

    box-shadow: none;
}


/* ==========================================================================
   10. PRIMEIRA ABA - COLUNA LATERAL

   Classe no container da coluna direita:
   ws-side-column
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column {
    display: flex;
    flex: 0 1 38%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;

    box-sizing: border-box;

    width: 38%;
    min-width: 0;
    margin: 0;
    padding: 0;

    overflow: hidden;

    background-color: #ffffff;
    border: 1px solid var(--ws-border-color, #d9dedb);
    border-radius: 0.625rem;

    box-shadow: none;
}


/* ==========================================================================
   11. PRIMEIRA ABA - CARDS DE INFORMACAO

   Classe em cada card individual:
   ws-info-card
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-column
.ws-info-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 1.125rem;

    box-sizing: border-box;

    width: 100%;
    min-height: 7.5rem;
    margin: 0;
    padding: 1.375rem 1.25rem;

    background-color: #ffffff;

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

    box-shadow: none !important;
}


/* Divisor entre os cards individuais */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-column
> .ws-info-card:not(:last-child) {
    border-bottom: 1px solid var(--ws-border-color, #d9dedb) !important;
}


/* ==========================================================================
   12. PRIMEIRA ABA - CIRCULO DO ICONE

   Classe no container do icone:
   icon-circle
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle {
    display: flex;
    flex: 0 0 4.375rem;
    align-items: center;
    justify-content: center;

    width: 4.375rem;
    height: 4.375rem;
    min-width: 4.375rem;
    min-height: 4.375rem;
    margin: 0;

    background-color: rgba(50, 143, 61, 0.10);
    border-radius: 50%;
}


/* Widget do icone */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-widget-icon {
    width: auto;
    margin: 0;
}


/* Container interno do widget */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;

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


/* Icone */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-icon {
    padding: 0;

    color: var(--ws-dark, #004d0d) !important;
    background-color: transparent !important;
    border: 0 !important;

    font-size: 1.5375rem !important;
    line-height: 1 !important;

    transform: rotate(0deg) !important;
}


/* SVG e icones internos */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-icon svg,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-icon i {
    width: 1.5375rem;
    height: 1.5375rem;

    color: var(--ws-dark, #004d0d) !important;

    font-size: 1.5375rem !important;
    line-height: 1 !important;

    transform: rotate(0deg) !important;
}


/* Cor do SVG */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-icon svg,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.icon-circle
.elementor-icon svg path {
    fill: currentColor !important;
}

/* ==========================================================================
   13. PRIMEIRA ABA - CONTEUDO DE TEXTO DOS CARDS

   Estrutura esperada dentro de cada ws-info-card:

   - icon-circle
   - container de texto
       - titulo
       - texto de apoio
========================================================================== */


/* ==========================================================================
   COLUNA DE TEXTO DO CARD

   Garante que o conteudo ocupe o espaco restante.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
> .e-con:not(.icon-circle) {
    flex: 1 1 auto;

    min-width: 0;
    margin: 0;
    padding: 0;
}


/* Remove margens extras dos widgets internos */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-heading,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-text-editor {
    margin: 0;
}


/* ==========================================================================
   TITULO DOS CARDS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-heading-title {
    margin: 0 0 0.25rem;

    color: var(--ws-dark, #004d0d) !important;

    font-size: 1.55rem !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
}


/* ==========================================================================
   TEXTO DE APOIO DOS CARDS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-text-editor {
    color: var(--ws-color-text, #303530) !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: 1.1375rem !important;
    font-weight: var(--ws-font-regular, 400) !important;
    line-height: 1.15 !important;
}


/* Paragrafos internos */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-text-editor p {
    margin: 0;

    color: inherit !important;

    font: inherit !important;
    line-height: inherit !important;
}


/* ==========================================================================
   LINKS DENTRO DOS CARDS
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-text-editor a {
    color: var(--ws-primary, #328f3d);
    text-decoration: none;
}

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-info-card
.elementor-widget-text-editor a:hover {
    color: var(--ws-primary-hover, #176d2d);
    text-decoration: underline;
}


/* ==========================================================================
   14. PRIMEIRA ABA - COLUNA LATERAL

   Estrutura:
   - card compacto de pagamento;
   - bloco independente com instrucao e QR Code.

   Classes utilizadas:
   - ws-side-column
   - ws-info-card
   - icon-circle
   - ws-qr-instruction
   - ws-qr-code
========================================================================== */


/* ==========================================================================
   COLUNA LATERAL
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column {
    gap: 0 !important;

    background-color: #ffffff;
}


/* ==========================================================================
   CARD SUPERIOR - PAGAMENTO
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;

    box-sizing: border-box;

    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 1rem 1.125rem;

    background-color: #ffffff;

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


/* ==========================================================================
   ICONE DO CARD LATERAL

   Remove somente o circulo do lado direito.
   Os circulos da coluna esquerda permanecem iguais.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.icon-circle {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;

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

    background-color: transparent;
    border-radius: 0;
}


/* Container interno do icone */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.icon-circle
.elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;

    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}


/* Tamanho do icone lateral */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.icon-circle
.elementor-icon,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.icon-circle
.elementor-icon svg,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.icon-circle
.elementor-icon i {
    width: 1.5rem;
    height: 1.5rem;

    color: var(--ws-dark, #004d0d) !important;

    font-size: 1.5rem !important;
    line-height: 1 !important;

    transform: rotate(0deg) !important;
}


/* ==========================================================================
   TEXTO DO CARD DE PAGAMENTO
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
> .e-con:not(.icon-circle) {
    flex: 1 1 auto;

    min-width: 0;
    margin: 0;
    padding: 0;
}


/* Titulo */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.elementor-heading-title {
    margin: 0 0 0.1875rem;

    color: var(--ws-dark, #004d0d) !important;

    font-size: 1.55rem !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
}


/* Texto pequeno abaixo do titulo */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.elementor-widget-text-editor {
    margin: 0;

    color: var(--ws-color-text, #303530) !important;

    font-size: 1.0625rem !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-info-card
.elementor-widget-text-editor p {
    margin: 0;

    color: inherit !important;

    font: inherit !important;
    line-height: inherit !important;
}


/* ==========================================================================
   QR CODE - BLOCO COMPLETO
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code {
    box-sizing: border-box;

    width: 100%;
    margin: 0;
    padding: 0.375rem 1.25rem 1.5rem;

    border-bottom: 1px solid var(--ws-border-color, #d9dedb);
}


/* ==========================================================================
   IMAGEM DO QR CODE

   Classe no widget de imagem:
   ws-qr-code
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code {
    width: 100%;
    margin: 0;
    padding: 0.375rem 1.25rem 1.5rem;
}


/* Centralizacao */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code
.elementor-widget-container {
    display: flex;
    align-items: flex-start;
    justify-content: center;

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


/* Imagem */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code img {
    display: block;

    width: 100%;
    max-width: 11rem;
    height: auto;
    margin: 0 auto;
}


/* ==========================================================================
   15. PRIMEIRA ABA - QR CODE E PRAZO IMPORTANTE

   Classes no Elementor:

   Texto acima do QR Code:
   ws-qr-instruction

   Widget da imagem:
   ws-qr-code

   Container geral do prazo:
   ws-deadline-card

   Container com icone, titulo e subtitulo:
   ws-deadline-header

   Widget do icone:
   ws-deadline-icon

   Widget da data:
   ws-deadline-date

   Widget do texto final:
   ws-deadline-note
========================================================================== */


/* ==========================================================================
   INSTRUCAO DO QR CODE

   A linha fica somente acima da instrucao.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-instruction {
    box-sizing: border-box;

    width: calc(100% - 2.5rem);
    margin: 0 1.25rem;
    padding: 1.25rem 0 0.5rem;

    border-top: 1px solid var(--ws-border-color, #d9dedb);

    text-align: center;
}


/* Texto da instrucao */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-instruction
.elementor-widget-container,

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-instruction p {
    margin: 0;

    color: var(--ws-dark, #004d0d) !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}


/* ==========================================================================
   IMAGEM DO QR CODE

   Sem linha abaixo.
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code {
    box-sizing: border-box;

    width: 100%;
    margin: 0;
    padding: 0.375rem 1.25rem 1.375rem;

    border: 0 !important;
}


/* Container interno */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code
.elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;

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


/* Imagem */

body.wp-child-theme-exhibz-child
.ws-event-panel
.ws-side-column
.ws-qr-code img {
    display: block;

    width: 100%;
    max-width: 14rem;
    height: auto;
    margin: 0 auto;
}



/* ==========================================================================
   FAIXA FINAL DE CREDITOS
========================================================================== */

body.wp-child-theme-exhibz-child
footer.ts-footer {
    padding: 1.5rem 0;

    background-color: #021705 !important;
}


/* Texto dos creditos */

body.wp-child-theme-exhibz-child
footer.ts-footer
.copyright-text,

body.wp-child-theme-exhibz-child
footer.ts-footer
.copyright-text p {
    margin: 0;

    color: #ffffff !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: 1.2375rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}


/* ==========================================================================
   SECAO PROMOCAO E APOIO

   Classe no container da secao:
   ws-support-section
========================================================================== */

body.wp-child-theme-exhibz-child
.ws-support-section
.title-section-area
.section-title,

body.wp-child-theme-exhibz-child
.ws-support-section
.title-section-area
.sub-title {
    color: #ffffff !important;
}


/* Ornamento abaixo do titulo */

body.wp-child-theme-exhibz-child
.ws-support-section
.title-section-area
.title-shape,

body.wp-child-theme-exhibz-child
.ws-support-section
.title-section-area
.title-shape svg,

body.wp-child-theme-exhibz-child
.ws-support-section
.title-section-area
.title-shape svg path {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* ==========================================================================
   GALERIA DE APOIO — PRIMEIRA LINHA COM 5 LOGOS

   Classe no widget Galeria:
   ws-support-gallery-five
========================================================================== */


/* Bloco branco da galeria */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five {
    box-sizing: border-box;

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

    background-color: #fff;

    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 1rem;

    overflow: hidden;
}


/* Estrutura interna */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five
.elementor-image-gallery {
    width: 100%;
    margin: 0;
    padding: 0;
}


/* Grade com cinco colunas */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five
.gallery {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: center;
    justify-items: center;

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

    column-gap: 1rem;
    row-gap: 1rem;
}


/* Área de cada logo */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five
.gallery-item {
    float: none !important;
    clear: none !important;

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

    box-sizing: border-box;

    width: 100% !important;
    max-width: none !important;
    height: 7rem;
    margin: 0 !important;
    padding: 0.5rem !important;

    background-color: transparent;

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

    text-align: center;
}


/* Container interno */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five
.gallery-icon {
    display: flex;
    align-items: center;
    justify-content: center;

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


/* Imagens */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-five
.gallery-icon img {
    display: block;

    width: 100% !important;
    max-width: 10rem !important;
    height: 100% !important;
    max-height: 5.75rem !important;
    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: contain;
    object-position: center;

    background-color: transparent;

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


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

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five {
        padding: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 1rem;
        row-gap: 1rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery-item {
        height: 6.5rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery-icon img {
        max-width: 9rem !important;
        max-height: 5.25rem !important;
    }
}


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

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five {
        padding: 1rem;
        border-radius: 0.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 0.75rem;
        row-gap: 0.75rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery-item {
        height: 5.75rem;
        padding: 0.375rem !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-five
    .gallery-icon img {
        max-width: 8rem !important;
        max-height: 4.75rem !important;
    }
}


/* ==========================================================================
   GALERIA DE APOIO — SEGUNDA LINHA COM 7 LOGOS

   Classe no widget Galeria:
   ws-support-gallery-seven
========================================================================== */


/* Bloco verde-claro da galeria */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven {
    box-sizing: border-box;

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

    background-color: #fff;

    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 1rem;

    overflow: hidden;
}


/* Estrutura interna */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven
.elementor-image-gallery {
    width: 100%;
    margin: 0;
    padding: 0;
}


/* Grade com sete colunas */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven
.gallery {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    align-items: center;
    justify-items: center;

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

    column-gap: 0.75rem;
    row-gap: 0.75rem;
}


/* Area de cada logo */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven
.gallery-item {
    float: none !important;
    clear: none !important;

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

    box-sizing: border-box;

    width: 100% !important;
    max-width: none !important;
    height: 6.25rem;
    margin: 0 !important;
    padding: 0.375rem !important;

    background-color: transparent;

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

    text-align: center;
}


/* Container interno */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven
.gallery-icon {
    display: flex;
    align-items: center;
    justify-content: center;

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


/* Imagens */

body.wp-child-theme-exhibz-child
.ws-support-section
.ws-support-gallery-seven
.gallery-icon img {
    display: block;

    width: 100% !important;
    max-width: 8.5rem !important;
    height: 100% !important;
    max-height: 5rem !important;
    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: contain;
    object-position: center;

    background-color: transparent;

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


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

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven {
        padding: 1.25rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: 0.75rem;
        row-gap: 1rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery-item {
        height: 6rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery-icon img {
        max-width: 8rem !important;
        max-height: 4.75rem !important;
    }
}


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

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven {
        padding: 1rem;
        border-radius: 0.875rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 0.75rem;
        row-gap: 0.75rem;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery-item {
        height: 5.5rem;
        padding: 0.375rem !important;
    }

    body.wp-child-theme-exhibz-child
    .ws-support-section
    .ws-support-gallery-seven
    .gallery-icon img {
        max-width: 7.5rem !important;
        max-height: 4.5rem !important;
    }
}



/* ==========================================================================
   BOTÕES WS — PRIMARY E SECONDARY

   Classes no widget Botão do Elementor:

   Cor:
   - ws-btn-primary
   - ws-btn-secondary

   Tamanho:
   - ws-btn-small
   - ws-btn-medium
   - ws-btn-large
========================================================================== */


/* ==========================================================================
   LARGURA DO WIDGET
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary {
    width: auto;
}


/* ==========================================================================
   ESTRUTURA PADRÃO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 0.625rem;

    width: auto !important;
    min-height: 3rem;
    padding: 0.75rem 1.5rem;

    color: var(--ws-color-white, #ffffff) !important;

    border: 1px solid transparent !important;
    border-radius: var(--ws-radius-md, 8px) !important;

    box-shadow: none !important;

    font-family: var(--ws-font-primary, "Outfit", sans-serif) !important;
    font-size: var(--ws-text-sm, 0.875rem) !important;
    font-weight: var(--ws-font-semibold, 600) !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase !important;

    transition:
        color var(--ws-transition-normal, 0.25s ease),
        background-color var(--ws-transition-normal, 0.25s ease),
        border-color var(--ws-transition-normal, 0.25s ease),
        transform var(--ws-transition-normal, 0.25s ease);
}


/* PRIMARY — VERDE */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button {
    color: #ffffff !important;
    background-color: #397c2b !important;
    border-color: #397c2b !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button:hover,
body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button:focus {
    color: #ffffff !important;
    background-color: #004d0d !important;
    border-color: #004d0d !important;
}


/* SECONDARY — VERMELHO */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button {
    color: #ffffff !important;
    background-color: #ef4438 !important;
    border-color: #ef4438 !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button:hover,
body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button:focus {
    color: #ffffff !important;
    background-color: #cf3328 !important;
    border-color: #cf3328 !important;
}


/* ==========================================================================
   TAMANHO PEQUENO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-small
.elementor-button {
    min-height: 2.625rem !important;
    padding: 0.625rem 1rem !important;

    font-size: 0.75rem !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-small
.elementor-button-content-wrapper {
    gap: 0.5rem !important;
}


/* ==========================================================================
   TAMANHO MÉDIO
   Padrão para botões comuns das seções
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-medium
.elementor-button {
    min-height: 3rem !important;
    padding: 0.75rem 1.5rem !important;

    font-size: var(--ws-text-sm, 0.875rem) !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-medium
.elementor-button-content-wrapper {
    gap: 0.625rem !important;
}


/* ==========================================================================
   TAMANHO GRANDE
   Mesmo padrão visual dos botões principais do site
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-large
.elementor-button {
    min-height: 3.5rem !important;
    padding: 0.875rem 1.5rem !important;

    font-size: var(--ws-text-sm, 0.875rem) !important;
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-large
.elementor-button-content-wrapper {
    gap: 0.75rem !important;
}


/* ==========================================================================
   CONTEÚDO INTERNO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-content-wrapper,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-content-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}


/* ==========================================================================
   TEXTO SEMPRE BRANCO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-text,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-text {
    color: var(--ws-color-white, #ffffff) !important;

    font: inherit !important;
    line-height: inherit !important;
}


/* ==========================================================================
   ÍCONES SEMPRE BRANCOS
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon i,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon svg,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon i,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon svg {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    color: var(--ws-color-white, #ffffff) !important;

    fill: currentColor !important;
    stroke: currentColor !important;
}


/* Ícone pequeno */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-small
.elementor-button-icon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-small
.elementor-button-icon i,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-small
.elementor-button-icon svg {
    width: 1.25rem !important;
    height: 1.25rem !important;

    font-size: 1.25rem !important;
}


/* Ícone médio */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-medium
.elementor-button-icon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-medium
.elementor-button-icon i,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-medium
.elementor-button-icon svg {
    width: 1.5rem !important;
    height: 1.5rem !important;

    font-size: 1.5rem !important;
}


/* Ícone grande — igual ao destaque dos botões principais */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-large
.elementor-button-icon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-large
.elementor-button-icon i,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-large
.elementor-button-icon svg {
    width: 1.875rem !important;
    height: 1.875rem !important;

    font-size: 1.875rem !important;
}


/* Elementos internos de SVG */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon svg path,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon svg circle,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon svg rect,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button-icon svg polygon,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon svg path,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon svg circle,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon svg rect,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button-icon svg polygon {
    color: var(--ws-color-white, #ffffff) !important;

    fill: currentColor !important;
    stroke: currentColor !important;
}


/* ==========================================================================
   CLIQUE E FOCO
========================================================================== */

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button:active,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button:active {
    transform: translateY(0);
}

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-primary
.elementor-button:focus-visible,

body.wp-child-theme-exhibz-child
.elementor-widget-button.ws-btn-secondary
.elementor-button:focus-visible {
    outline: 3px solid rgba(50, 143, 61, 0.3) !important;
    outline-offset: 3px;
}


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

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-large
    .elementor-button {
        min-height: 3rem !important;
        padding: 0.75rem 1rem !important;

        font-size: 0.75rem !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-large
    .elementor-button-icon,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-large
    .elementor-button-icon i,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-large
    .elementor-button-icon svg {
        width: 1.5rem !important;
        height: 1.5rem !important;

        font-size: 1.5rem !important;
    }
}

/* ==================================================
   PROGRAMAÇÃO — FORÇAR LARGURA DO PLUGIN
================================================== */

body .ts-schedule > .container {
    width: calc(100% - 48px) !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

@media (min-width: 1025px) {

    body .ts-schedule .ts-schedule-nav .nav-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: none !important;
        gap: 8px !important;
    }

    body .ts-schedule .ts-schedule-nav .nav-tabs > .nav-item {
        width: 25% !important;
        max-width: 25% !important;
        flex: 0 0 calc(25% - 6px) !important;
        margin: 0 !important;
    }

    body .ts-schedule .ts-schedule-nav .nav-tabs > .nav-item > a {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }
}





/* ==================================================
   PALESTRANTES — CARDS COMPACTOS E PADRONIZADOS
================================================== */

/* Grade com cinco colunas iguais */
body.wp-child-theme-exhibz-child
.ws-speakers-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 1rem;

    width: 100%;
}


/* Widget do Elementor */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
> .elementor-element {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;

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

    align-self: start !important;
}


/* Remove alturas e espaços herdados do tema */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.elementor-widget-container,

body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speakers-standard,

body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

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

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


/* Card */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;

    overflow: hidden;

    background-color: #ffffff;
    box-sizing: border-box;
}


/* Imagem começa imediatamente no topo */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.speaker-img {
    position: relative !important;
    top: auto !important;

    display: block;

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

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

    overflow: hidden;
}


/* Crop quadrado uniforme */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.speaker-img img {
    display: block;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;

    object-fit: cover;
    object-position: center center;
}


/* Caixa branca compacta abaixo da imagem */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker-info {
    position: static !important;
    inset: auto !important;

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

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    height: 5rem !important;
    min-height: 5rem !important;

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

    background-color: #ffffff;
    box-sizing: border-box;
    text-align: center !important;

    transform: none !important;
}


/* Nome */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker-info
.ts-title {
    width: 100%;
    margin: 0 !important;

    text-align: center !important;
}

body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker-info
.ts-title a {
    display: block;

    width: 100%;

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

    font-size: 0.9375rem !important;
    line-height: 1.1 !important;

    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word;
}


/* Função */
body.wp-child-theme-exhibz-child
.ws-speakers-grid
.ts-speaker-info p {
    width: 100%;
    margin: 0.25rem 0 0 !important;

    font-size: 0.8125rem !important;
    line-height: 1.1 !important;

    text-align: center !important;
    white-space: normal !important;
}


/* ==================================================
   RESPONSIVO
================================================== */

@media (max-width: 64rem) {

    body.wp-child-theme-exhibz-child
    .ws-speakers-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .ws-speakers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 30rem) {

    body.wp-child-theme-exhibz-child
    .ws-speakers-grid {
        grid-template-columns: 1fr !important;
    }
}




/* ==========================================================================
   EVENTO — CORREÇÃO MOBILE DAS ABAS E DO PAINEL
========================================================================== */

@media (max-width: 47.9375rem) {

    /* ==================================================
       WIDGET GERAL
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        overflow: visible !important;
    }


    /* ==================================================
       CABEÇALHO DAS ABAS
       Uma aba abaixo da outra no celular
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tabs-heading {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.625rem !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

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

        overflow: visible !important;
    }


    /* Remove a linha de conexão no celular */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tabs-heading::before {
        content: none !important;
        display: none !important;
    }


    /* ==================================================
       CADA ABA
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tab-title {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0.75rem !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 3.5rem !important;

        margin: 0 !important;
        padding: 0.625rem 0.875rem !important;

        box-sizing: border-box !important;

        font-size: 0.875rem !important;
        line-height: 1.15 !important;
        text-align: left !important;

        white-space: normal !important;
        overflow: hidden !important;
    }


    /* Número da etapa */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tab-title::before {
        flex: 0 0 2rem !important;

        width: 2rem !important;
        height: 2rem !important;

        font-size: 0.875rem !important;
    }


    /* Texto interno da aba */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tab-title
    .e-n-tab-title-text,

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tab-title
    span {
        min-width: 0 !important;

        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
    }


    /* ==================================================
       CONTEÚDO DAS ABAS
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tabs-content,

    body.wp-child-theme-exhibz-child
    .ws-event-tabs
    .e-n-tab-content {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

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

        overflow: visible !important;
    }


    /* ==================================================
       PAINEL BRANCO GERAL
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-panel {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1rem !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

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

        box-sizing: border-box !important;
        overflow: hidden !important;
    }


    /* ==================================================
       COLUNAS
       No celular ficam uma abaixo da outra
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-column,

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column {
        flex: 0 0 auto !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
    }


    /* ==================================================
       CARDS DA COLUNA PRINCIPAL
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-column
    .ws-info-card {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        gap: 0.75rem !important;

        width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;

        padding: 1rem 0.875rem !important;

        box-sizing: border-box !important;
    }


    /* Ícone menor no celular */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .icon-circle {
        flex: 0 0 2.75rem !important;

        width: 2.75rem !important;
        height: 2.75rem !important;
        min-width: 2.75rem !important;
        min-height: 2.75rem !important;
    }


    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .icon-circle
    .elementor-icon,

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .icon-circle
    .elementor-icon svg,

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .icon-circle
    .elementor-icon i {
        width: 1.125rem !important;
        height: 1.125rem !important;

        font-size: 1.125rem !important;
    }


    /* Coluna de texto ocupa todo o espaço restante */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    > .e-con:not(.icon-circle) {
        flex: 1 1 auto !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }


    /* Títulos dos cards */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .elementor-heading-title {
        font-size: 1.125rem !important;
        line-height: 1.1 !important;

        white-space: normal !important;
        overflow-wrap: break-word !important;
    }


    /* Textos dos cards */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-info-card
    .elementor-widget-text-editor {
        font-size: 0.9375rem !important;
        line-height: 1.35 !important;

        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }


    /* ==================================================
       COLUNA LATERAL
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-info-card {
        width: 100% !important;
        min-width: 0 !important;

        padding: 1rem 0.875rem !important;
    }


    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-info-card
    .elementor-heading-title {
        font-size: 1.125rem !important;
    }


    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-info-card
    .elementor-widget-text-editor {
        font-size: 0.9375rem !important;
    }


    /* ==================================================
       QR CODE
    ================================================== */

    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-qr-instruction {
        width: calc(100% - 1.5rem) !important;

        margin-inline: 0.75rem !important;
        padding-top: 1rem !important;
    }


    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-qr-code {
        width: 100% !important;
        padding: 0.375rem 0.75rem 1rem !important;
    }


    body.wp-child-theme-exhibz-child
    .ws-event-panel
    .ws-side-column
    .ws-qr-code img {
        width: 100% !important;
        max-width: 12rem !important;
        height: auto !important;
    }
}

/* ==========================================================================
   MOBILE — PADRONIZA TODOS OS BOTÕES PRIMARY E SECONDARY
   Mantém os alinhamentos diferentes somente no desktop
========================================================================== */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary {
        display: block !important;

        width: 100% !important;
        max-width: 21rem !important;

        margin-right: auto !important;
        margin-left: auto !important;

        align-self: center !important;
        text-align: center !important;
    }


    /* Neutraliza direita, esquerda ou centro definidos no Elementor */

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary.elementor-align-left,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary.elementor-align-right,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary.elementor-align-center,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary.elementor-align-left,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary.elementor-align-right,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary.elementor-align-center {
        text-align: center !important;
    }


    /* Botão ocupa toda a largura padronizada */

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary
    .elementor-button,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary
    .elementor-button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        max-width: 100% !important;
        min-height: 3.25rem !important;

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

        box-sizing: border-box !important;
    }


    /* Centraliza ícone e texto */

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary
    .elementor-button-content-wrapper,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary
    .elementor-button-content-wrapper {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.625rem !important;

        width: 100% !important;
        max-width: 100% !important;
    }


    /* Impede o texto de quebrar desnecessariamente */

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-primary
    .elementor-button-text,

    body.wp-child-theme-exhibz-child
    .elementor-widget-button.ws-btn-secondary
    .elementor-button-text {
        text-align: center !important;
        white-space: nowrap !important;
    }
}

/* ==========================================================================
   MOBILE — BLOCO "POR QUE PARTICIPAR"
   Remove altura excessiva e aproxima o conteúdo dos cards abaixo
========================================================================== */

@media (max-width: 47.9375rem) {

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600 {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-items: stretch !important;
        gap: 1rem !important;

        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

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

        align-self: flex-start !important;
    }


    /* Remove margens excessivas do título */

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .elementor-element-be6d6f4 {
        width: 100% !important;
        margin: 0 !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .title-section-area {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .section-title {
        margin: 0 !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .title-shape {
        margin-top: 1rem !important;
        margin-bottom: 0 !important;
    }


    /* Texto de apresentação */

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .elementor-element-d91654f {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.wp-child-theme-exhibz-child
    .elementor-element-544c600
    .elementor-element-d91654f
    p {
        margin: 0 !important;
    }
}