/**
 * Vellozia Experts Summit — landing (Figma: paleta escura, Montserrat, CTAs magenta/roxo/verde)
 */

span{
    font-size: inherit !important;
}

.expertsummit-html {
    overflow-x: hidden;
    overflow-x: clip;
}

.expertsummit-page {
    /* Altura do header fixo (ajuste se mudar padding/logo do .summit-nav) */
    --summit-header-h: 5.75rem;
    --summit-bg: #010102;
    --summit-bg-elevated: #121418;
    --summit-magenta: #b4256a;
    --summit-magenta-bright: #c62975;
    --summit-purple: #823f8f;
    --summit-green: #44bf50;
    --summit-cta-bg: linear-gradient(90deg, #FF3600 0%, #FF0068 100%);
    --summit-cta-pill-bg: #8900a3;
    --summit-cta-shadow: 0 6px 4px rgba(0, 0, 0, 0.25);
    --summit-input-bg: #0a0b0e;
    --summit-input-border: #484848;
    --summit-footer: #f2f2f2;
    font-family: "Montserrat", "Outfit", system-ui, sans-serif;
    background: var(--summit-bg);
    color: #fff;
    overflow-x: hidden; /* fallback para navegadores sem suporte pleno a clip */
    overflow-x: clip;
}

.expertsummit-page h1,
.expertsummit-page h2,
.expertsummit-page h3,
.expertsummit-page h4,
.expertsummit-page h5,
.expertsummit-page h6 {
    font-family: "Montserrat", system-ui, sans-serif;
}

.expertsummit-page .summit-glow {
    pointer-events: none;
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.45;
}

.expertsummit-page .summit-glow--hero {
    background: #823f8f;
}

.expertsummit-page .summit-glow--hero-left {
    width: 420px;
    height: 420px;
    top: 10%;
    left: -8%;
}

.expertsummit-page .summit-glow--hero-right {
    width: 360px;
    height: 360px;
    top: 30%;
    right: -5%;
}

@media (max-width: 767.98px) {
    .expertsummit-page .summit-glow--hero-left {
        width: 170px;
        height: 170px;
        top: 4%;
        left: -15%;
    }

    .expertsummit-page .summit-glow--hero-right {
        width: 170px;
        height: 170px;
        top: 22%;
        right: -12%;
    }
}

.expertsummit-page .summit-dot-grid {
    background-image: radial-gradient(#c62975 1px, transparent 1px);
    background-size: 14px 14px;
    opacity: 0.2;
}

.expertsummit-page .summit-nav {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: stretch;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: none;
    transition:
        background 0.35s ease,
        box-shadow 0.35s ease,
        backdrop-filter 0.35s ease,
        -webkit-backdrop-filter 0.35s ease;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

.expertsummit-page .summit-nav.summit-nav--scrolled {
    background: rgba(1, 1, 2, 0.88);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.expertsummit-page .summit-nav__bar {
    flex-wrap: wrap;
    min-width: 0;
}

.expertsummit-page .summit-nav__brand {
    min-width: 0;
    max-width: 55%;
}

@media (min-width: 992px) {
    .expertsummit-page .summit-nav__brand {
        max-width: none;
        flex: 0 1 auto;
    }
}

.expertsummit-page .summit-nav__logo {
    max-height: 52px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    display: block;
}

.expertsummit-page .summit-nav .nav-link {
    color: #fff !important;
    font-weight: 500;
    font-size: 1rem;
}

/* Header CTAs — Figma 156:8551 (outline) / 156:8559 (fill) */
.expertsummit-page .btn-contato-header,
.expertsummit-page .btn-principal-header {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform 0.2s ease,
        filter 0.2s ease,
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}

.expertsummit-page .btn-contato-header__icon,
.expertsummit-page .btn-principal-header__icon {
    display: block;
    width: 1rem;
    height: 1rem;
    font-size: 1rem;
    line-height: 1;
}

.expertsummit-page .btn-contato-header {
    padding: 0.375rem 0.8125rem;
    border: 1px solid #ff007b;
    background: transparent;
    color: #ff007b;
}

.expertsummit-page .btn-contato-header:hover,
.expertsummit-page .btn-contato-header:focus-visible {
    border-color: #ff007b;
    background: rgba(255, 0, 123, 0.12);
    color: #ff007b;
    transform: translateY(-1px);
}

.expertsummit-page .btn-principal-header {
    border: 0;
    background: var(--summit-cta-bg);
    color: #fff;
}

.expertsummit-page .btn-principal-header:hover,
.expertsummit-page .btn-principal-header:focus-visible {
    color: #fff;
    background: var(--summit-cta-bg);
    filter: brightness(1.06);
    transform: translateY(-1px);
}

.expertsummit-page .summit-nav .nav-link:hover {
    color: var(--summit-magenta-bright) !important;
}

/* CTA Summit — Figma 454:1801 (pill #8900a3 + sombra suave) */
.expertsummit-page .btn-summit-pill,
.expertsummit-page .summit-newsletter-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    min-height: 3rem;
    padding: 0 1.5rem;
    border: 0;
    border-radius: 100px;
    background: var(--summit-cta-pill-bg);
    box-shadow: var(--summit-cta-shadow);
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        filter 0.2s ease;
}

.expertsummit-page .btn-summit-pill > i,
.expertsummit-page .btn-summit-pill > .btn-summit-pill__icon,
.expertsummit-page .summit-newsletter-submit > i {
    display: block;
    width: 1.375rem; /* 22px — Figma 454:1790 / 454:1794 */
    height: 1.375rem;
    font-size: 1.375rem;
    line-height: 1;
    flex-shrink: 0;
    object-fit: contain;
}

.expertsummit-page .btn-summit-pill:hover,
.expertsummit-page .btn-summit-pill:focus-visible,
.expertsummit-page .btn-summit-pill:active,
.expertsummit-page .summit-newsletter-submit:hover,
.expertsummit-page .summit-newsletter-submit:focus-visible {
    color: #fff;
    border-color: transparent;
    filter: brightness(1.06);
    transform: translateY(-1px);
    box-shadow: 0 8px 6px rgba(0, 0, 0, 0.28);
}

.expertsummit-page .btn-summit-pill:not(.btn-summit-pink):hover,
.expertsummit-page .btn-summit-pill:not(.btn-summit-pink):focus-visible,
.expertsummit-page .btn-summit-pill:not(.btn-summit-pink):active,
.expertsummit-page .summit-newsletter-submit:hover,
.expertsummit-page .summit-newsletter-submit:focus-visible {
    background: var(--summit-cta-pill-bg);
}

/* Variantes — Figma 454:1790 (sólido) / 454:1794 (gradiente) */
.expertsummit-page .btn-summit-magenta,
.expertsummit-page .btn-summit-purple,
.expertsummit-page .btn-summit-green {
    background: var(--summit-cta-pill-bg);
    border-color: transparent;
    color: #fff;
}

.expertsummit-page .btn-summit-pink {
    background: var(--summit-cta-bg);
    border-color: transparent;
    color: #fff;
}

.expertsummit-page .btn-summit-magenta:hover,
.expertsummit-page .btn-summit-purple:hover,
.expertsummit-page .btn-summit-green:hover {
    background: var(--summit-cta-pill-bg);
    border-color: transparent;
    color: #fff;
}

.expertsummit-page .btn-summit-pink:hover,
.expertsummit-page .btn-summit-pink:focus-visible,
.expertsummit-page .btn-summit-pink:active {
    background: var(--summit-cta-bg);
    border-color: transparent;
    color: #fff;
}

.expertsummit-page .summit-hero {
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
}

/* .expertsummit-page .summit-hero__overlay {
    background: linear-gradient(180deg,rgba(87, 199, 133, 0) 80%, rgba(255, 0, 123, .4) 93%, rgba(214, 0, 255, 1) 100%);
    z-index: 100;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.expertsummit-page .summit-hero__overlay-2 {
    background: linear-gradient(0deg,rgba(87, 199, 133, 0) 80%, rgba(255, 0, 123, .4) 93%, rgba(214, 0, 255, 1) 100%);
    z-index: 100;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
} */


.expertsummit-page .summit-hero-lead {
    font-size: 1.5rem !important;
}

/* Hero mobile: altura pelo conteúdo, texto menor, foto menos “cortada” no cover */
@media (max-width: 991.98px) {
    .expertsummit-page .summit-hero.summit-section-full {
        min-height: 0;
        justify-content: flex-start;
    }

    .expertsummit-page .summit-hero.summit-section-full > .container {
        flex: 0 1 auto;
        justify-content: flex-start;
        padding-top: 0.25rem;
        padding-bottom: 1.25rem;
    }

    .expertsummit-page .summit-hero.summit-section-full > .container > .row {
        flex: 0 1 auto;
    }

    .expertsummit-page .summit-hero {
        /* Prioriza região superior da arte; em telas baixas o cover corta menos o assunto central */
        background-position: center 12%;
        background-size: cover;
    }

    .expertsummit-page .summit-hero__overlay {
        background: linear-gradient(
            165deg,
            rgba(1, 1, 2, 0.94) 0%,
            rgba(1, 1, 2, 0.78) 42%,
            rgba(1, 1, 2, 0.45) 100%
        );
    }

    .expertsummit-page .summit-hero-eyebrow {
        font-size: 0.7rem;
        letter-spacing: 0.06em;
    }

    .expertsummit-page .summit-hero-title {
        font-size: clamp(1.2rem, 4.2vw + 0.35rem, 1.65rem);
        line-height: 1.25;
        letter-spacing: -0.02em;
    }

    .expertsummit-page .summit-hero-lead,
    .expertsummit-page .summit-hero-lead strong {
        font-size: 0.9rem !important;
        line-height: 1.45 !important;
    }

    .expertsummit-page .summit-hero .summit-badge--location {
        min-height: 3rem;
        padding: 0.5rem 1.25rem;
        gap: 0.375rem;
        font-size: clamp(0.85rem, 2.8vw + 0.4rem, 1.15rem);
    }

    .expertsummit-page .summit-hero .summit-badge--location .summit-badge__icon {
        width: 1.125rem;
        height: 1.125rem;
    }

    .expertsummit-page .summit-hero-date__icon {
        width: 1.5rem;
        height: 1.5rem;
    }

    .expertsummit-page .summit-hero-typewriter {
        min-height: 4.25rem;
    }
}

@media (min-width: 992px) {
    .expertsummit-page .summit-hero-title {
        font-size: clamp(2rem, 2.5vw + 1rem, 3rem);
        line-height: 1.15;
        letter-spacing: -0.02em;
    }

    .expertsummit-page .summit-hero-lead,
    .expertsummit-page .summit-hero-lead strong {
        font-size: 1.15rem !important;
    }
}

@media (max-width: 780px) {
    .expertsummit-page .btn-summit-pill,
    .expertsummit-page .summit-newsletter-submit,
    .btn-summit-small {
        font-size: 0.95rem;
        min-height: 3rem;
        padding: 0.5rem 1.25rem;
        white-space: normal;
    }

    .expertsummit-page .btn-summit-pill > i,
    .expertsummit-page .btn-summit-pill > .btn-summit-pill__icon,
    .expertsummit-page .summit-newsletter-submit > i {
        width: 1.125rem;
        height: 1.125rem;
        font-size: 1.125rem;
    }
}

.expertsummit-page .summit-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(130, 63, 143, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 11px;
    padding: 0.45rem 0.85rem;
    font-size: 0.95rem;
    font-weight: 600;
}

.expertsummit-page .summit-badge--muted {
    background: rgba(18, 20, 24, 0.75);
}

/* Hero location badge (Figma 454:1786) */
.expertsummit-page .summit-badge--location {
    width: fit-content;
    max-width: 100%;
    min-height: 3.8125rem; /* 61px */
    gap: 0.375rem; /* 6px */
    padding: 0.625rem 2rem;
    background: var(--summit-cta-pill-bg); /* #8900a3 */
    border: none;
    border-radius: 100px;
    box-shadow: var(--summit-cta-shadow);
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1rem, 2.2vw, 1.5625rem); /* 25px */
    font-weight: 600;
    line-height: 1.33;
    text-align: center;
}

.expertsummit-page .summit-badge--location .summit-badge__icon {
    display: block;
    flex-shrink: 0;
    width: 1.375rem; /* 22px */
    height: 1.375rem;
    object-fit: contain;
}

.expertsummit-page .summit-badge--location .summit-badge__text {
    font: inherit;
    color: inherit;
    white-space: nowrap;
}

/* Hero date (Figma 125:263 + 124:269) */
.expertsummit-page .summit-hero-date {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    font-family: "Montserrat", system-ui, sans-serif;
    font-weight: 700;
    font-size: 1.875rem; /* 30px */
    line-height: 1.33;
    color: #ff007b !important;
    word-break: break-word;
}

.expertsummit-page .summit-hero-date__icon {
    display: block;
    flex-shrink: 0;
    width: 2.0625rem; /* 33px */
    height: 2.0625rem;
    object-fit: contain;
}

.expertsummit-page .summit-hero-date__text {
    font: inherit;
    color: #ff007b !important;
}

@media (max-width: 767.98px) {
    .expertsummit-page .summit-hero-date {
        font-size: 1.25rem !important;
    }

    .expertsummit-page .summit-badge--location .summit-badge__text {
        white-space: normal;
    }
    .expertsummit-page .summit-hero-date__text {
        font-size: 1rem !important;
    }
    .expertsummit-page .summit-hero-date__icon {
        width: 1.5rem;
        height: 1.5rem;

    }
}

/* Hero: digitação + revelação da data/local */
.expertsummit-page .summit-hero-typewriter {
    display: inline-block;
    width: 100%;
    min-height: 6.5rem;
    vertical-align: top;
}

.expertsummit-page .summit-hero-typewriter__cursor {
    display: inline-block;
    width: 2px;
    height: 1em;
    margin-left: 2px;
    vertical-align: text-bottom;
    background: currentColor;
    animation: summit-typewriter-cursor 0.9s step-end infinite;
}

@keyframes summit-typewriter-cursor {
    0%,
    49% {
        opacity: 1;
    }
    50%,
    100% {
        opacity: 0;
    }
}

.expertsummit-page .summit-hero-badges {
    opacity: 0;
    transform: translateY(12px);
    visibility: hidden;
    transition:
        opacity 0.55s ease,
        transform 0.55s ease,
        visibility 0.55s;
}

.expertsummit-page .summit-hero-badges.summit-hero-badges--visible {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-hero-typewriter__cursor {
        animation: none;
        opacity: 0;
    }

    .expertsummit-page .summit-hero-badges {
        opacity: 1;
        transform: none;
        visibility: visible;
    }
}

.expertsummit-page .summit-section-title {
    font-weight: 600;
    letter-spacing: -0.02em;
}

/* Títulos principais: fade-in (hero: classe --visible via JS; manifesto: com #sobre revelada) */
.expertsummit-page #summit-hero-title.summit-headline-fade {
    opacity: 0;
    transition: opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.expertsummit-page #summit-hero-title.summit-headline-fade.summit-headline-fade--visible {
    opacity: 1;
}

.expertsummit-page #summit-about-title.summit-headline-fade {
    opacity: 0;
    transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1) 0.2s;
}

.expertsummit-page #sobre.summit-section-reveal--visible #summit-about-title.summit-headline-fade {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page #summit-hero-title.summit-headline-fade,
    .expertsummit-page #summit-about-title.summit-headline-fade {
        opacity: 1;
        transition: none;
    }
}

/* Área do vídeo: proporção Figma 776×677, largura fluida até o máximo do layout */
.expertsummit-page .summit-video-box {
    --summit-video-w: 776;
    --summit-video-h: 677;
    background: #fff;
    border-radius: 4px;
    position: relative;
    width: 100%;
    max-width: 776px;
    margin-inline: auto;
    aspect-ratio: var(--summit-video-w) / var(--summit-video-h);
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Embed (YouTube/Vimeo) ou <video>: preenche o retângulo mantendo o mesmo box responsivo */
.expertsummit-page .summit-video-box > iframe,
.expertsummit-page .summit-video-box > video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.expertsummit-page .summit-video-box > video {
    object-fit: cover;
}

.expertsummit-page .summit-video-box > .summit-video-box__poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Vídeo decorativo em loop (sem controles): não intercepta cliques no container */
.expertsummit-page .summit-video-box--ambient > video,
.expertsummit-page .summit-video-box--ambient > .summit-video-box__poster {
    pointer-events: none;
}

.expertsummit-page .summit-video-box > .summit-video-box__inner {
    position: relative;
    z-index: 1;
    padding: 1rem;
}

@media (max-width: 767px) {
    .expertsummit-page .summit-about-media-col,
    .expertsummit-page .summit-video-box {
        display: none;
    }
}

/* Seções “full screen”: altura mínima = viewport útil abaixo do header (classe explícita evita conflito com o tema) */
.expertsummit-page .summit-section-full {
    box-sizing: border-box;
    /* Cada section ocupa a tela inteira (viewport) */
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    position: relative;
}

.expertsummit-page .summit-section-full > .container {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 0;
    width: 100%;
}

.expertsummit-page .summit-section-full > .container > .row {
    flex: 1 1 auto;
    align-items: center;
}

/* Contagem regressiva — Figma 131:381 + cards 484:479 / 484:480 / 484:481 / 484:482 */
.expertsummit-page .summit-countdown {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 79.9375rem; /* 1279px — 4×280 + 3×53 */
    margin-inline: auto;
    text-align: center;
    color: #fff;
}

.expertsummit-page .summit-countdown__title {
    margin: 0 0 clamp(2.5rem, 6vw, 6.5rem); /* ~104px */
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1.75rem, 5vw, 3.75rem); /* 60px */
    font-weight: 500;
    line-height: 1.33;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #fff;
}

.expertsummit-page .summit-countdown__timer {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(0.5rem, 3vw, 3.3125rem); /* 53px */
    width: 100%;
    line-height: 1.31;
}

.expertsummit-page .summit-countdown__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    width: 100%;
    max-width: 17.5rem; /* 280px */
    min-width: 0;
    min-height: 0;
    aspect-ratio: 1 / 1;
    margin-inline: auto;
    padding: 0.5rem;
    border-radius: 0.625rem; /* 10px */
    background-color: rgba(1, 1, 2, 0.45);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(153, 153, 153, 0.2) 100%);
    text-align: center;
    overflow: hidden;
    container-type: inline-size;
}

.expertsummit-page .summit-countdown__value {
    margin: 0;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(2.5rem, 58cqi, 10rem);
    font-weight: 700;
    line-height: 1;
    color: #fff;
}

.expertsummit-page .summit-countdown__label {
    margin: 0;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(0.75rem, 16cqi, 2.5rem);
    font-weight: 500;
    line-height: 1.2;
    color: #fff;
    white-space: nowrap;
}

/* Cards de ingresso e grid de parceiros: colunas com a mesma altura */
.expertsummit-page .summit-section-full#ingressos .summit-tickets-row {
    flex: 1 1 auto;
    min-height: 0;
    align-items: center;
    justify-content: center;
}

.expertsummit-page .summit-section-full#parceiros > .container > .row.row-cols-2 {
    align-items: stretch;
}

.expertsummit-page .summit-program-bg {
    background-size: cover;
    background-position: center;
}

.expertsummit-page .summit-program-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(182, 37, 106, 0.92) 0%,
        rgba(130, 63, 143, 0.88) 100%
    );
}

/* Carrossel programação: setas fora do conteúdo (flex + position-static) */
.expertsummit-page .summit-program-carousel {
    position: relative;
}

.expertsummit-page .summit-program-carousel__shell {
    width: 100%;
}

/* Viewport limita largura no flex; overflow hidden evita “dois slides” visíveis no mobile */
.expertsummit-page .summit-program-carousel__viewport {
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

/* NUNCA usar overflow:visible aqui — o Bootstrap depende de overflow:hidden no .carousel-inner
   (float + translateX) para recortar a troca de slides. Sem isso, os itens aparecem lado a lado. */
.expertsummit-page .summit-program-carousel__viewport .carousel-inner {
    overflow: hidden;
}

.expertsummit-page .summit-program-carousel .carousel-item {
    height: auto;
    transition: transform 0.85s cubic-bezier(0.22, 0.61, 0.36, 1);
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-program-carousel .carousel-item {
        transition-duration: 0.01ms;
    }
}

.expertsummit-page .summit-program-carousel .carousel-control-prev,
.expertsummit-page .summit-program-carousel .carousel-control-next {
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 2.75rem;
    height: 2.75rem;
    max-width: none;
    margin: 0;
    transform: none;
    opacity: 1;
    align-self: center;
}

/* Mobile: tira as setas do fluxo para evitar reflow/quebra na transicao */
@media (max-width: 991.98px) {
    .expertsummit-page .summit-program-carousel__shell {
        position: relative;
        align-items: stretch !important;
        gap: 0 !important;
    }

    .expertsummit-page .summit-program-carousel .carousel-control-prev,
    .expertsummit-page .summit-program-carousel .carousel-control-next {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 3;
        width: 2.35rem;
        height: 2.35rem;
        margin: 0;
    }

    .expertsummit-page .summit-program-carousel .carousel-control-prev {
        left: 0;
    }

    .expertsummit-page .summit-program-carousel .carousel-control-next {
        right: 0;
    }

    .expertsummit-page .summit-program-carousel__viewport {
        box-sizing: border-box;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .expertsummit-page .summit-program-carousel__viewport .carousel-inner {
        min-height: 34rem;
    }
}

.expertsummit-page .summit-program-carousel .carousel-control-prev-icon,
.expertsummit-page .summit-program-carousel .carousel-control-next-icon {
    /* width: 2.75rem;
    height: 2.75rem; */
    background-size: 1.35rem 1.35rem;
}

/* Carrossel Experts: área alta e responsiva (vh/vimin), imagem em cover */
.expertsummit-page .summit-experts-carousel__inner {
    width: 100%;
    height: clamp(280px, 58vmin, 620px);
    position: relative;
    margin-inline: auto;
}

.expertsummit-page .summit-experts-carousel:not(.summit-program-carousel) .carousel-item {
    height: 100%;
}

.expertsummit-page .summit-experts-carousel__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

@media (min-width: 992px) {
    .expertsummit-page .summit-experts-carousel__inner {
        height: clamp(420px, 54vh, 700px);
    }
}

/* Cards de palestrantes: nome/empresa sempre visíveis; bio no hover (Figma 263:415) */
.expertsummit-page .summit-speaker-card {
    outline: none;
}

.expertsummit-page .summit-speaker-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 414 / 655;
    min-height: clamp(300px, 62vw, 520px);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    overflow: hidden;
    border-radius: 1.25rem;
}

.expertsummit-page .summit-speaker-card__overlay {
    position: absolute;
    inset: 0;
    background: rgba(93, 0, 112, 0.72);
    opacity: 0;
    transition: opacity 0.35s ease;
    pointer-events: none;
    z-index: 1;
}

.expertsummit-page .summit-speaker-card__content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: clamp(1.25rem, 4vw, 2rem) clamp(1.25rem, 4.5vw, 3.75rem);
    color: #fff;
    text-align: left;
    background: linear-gradient(
        180deg,
        rgba(10, 12, 18, 0) 48%,
        rgba(10, 12, 18, 0.55) 72%,
        rgba(10, 12, 18, 0.88) 100%
    );
    transition: background 0.35s ease, justify-content 0.35s ease;
    pointer-events: none;
}

.expertsummit-page .summit-speaker-card__identity {
    position: relative;
    z-index: 1;
    transition: transform 0.35s ease;
}

.expertsummit-page .summit-speaker-card__name {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(1.35rem, 2.4vw, 1.875rem);
    font-weight: 400;
    line-height: 1.33;
    color: #fff;
}

.expertsummit-page .summit-speaker-card__company {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(0.95rem, 1.6vw, 1.25rem);
    font-weight: 400;
    line-height: 1.33;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #fff;
}

.expertsummit-page .summit-speaker-card__bio {
    margin-top: 1.25rem;
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(0.8125rem, 1.35vw, 1rem);
    font-weight: 400;
    line-height: 1.45;
    color: #fff;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity 0.35s ease, max-height 0.35s ease, margin-top 0.35s ease;
}

.expertsummit-page .summit-speaker-card.is-expanded .summit-speaker-card__overlay,
.expertsummit-page .summit-speaker-card:focus-within .summit-speaker-card__overlay {
    opacity: 1;
}

.expertsummit-page .summit-speaker-card.is-expanded .summit-speaker-card__content,
.expertsummit-page .summit-speaker-card:focus-within .summit-speaker-card__content {
    justify-content: flex-start;
    background: transparent;
}

.expertsummit-page .summit-speaker-card.is-expanded .summit-speaker-card__bio,
.expertsummit-page .summit-speaker-card:focus-within .summit-speaker-card__bio {
    max-height: 22rem;
    opacity: 1;
    margin-top: auto;
    padding-top: 1.5rem;
    overflow-y: auto;
}

@media (hover: hover) and (pointer: fine) {
    .expertsummit-page .summit-speaker-card:hover .summit-speaker-card__overlay {
        opacity: 1;
    }

    .expertsummit-page .summit-speaker-card:hover .summit-speaker-card__content {
        justify-content: flex-start;
        background: transparent;
    }

    .expertsummit-page .summit-speaker-card:hover .summit-speaker-card__bio {
        max-height: 22rem;
        opacity: 1;
        margin-top: auto;
        padding-top: 1.5rem;
        overflow-y: auto;
    }
}

@media (max-width: 767.98px) {
    .expertsummit-page .summit-program-carousel__viewport .carousel-inner {
        min-height: auto;
    }

    .expertsummit-page .summit-speaker-card__media {
        min-height: clamp(340px, 88vw, 480px);
    }
}

.expertsummit-page .summit-tickets-bg {
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.expertsummit-page .summit-section-full#ingressos {
    padding-block: clamp(0.75rem, 2vh, 2rem);
}

.expertsummit-page .summit-section-full#ingressos > .container {
    gap: clamp(0.5rem, 1.5vh, 1.25rem);
}

.expertsummit-page .summit-tickets-title {
    flex: 0 0 auto;
    margin-bottom: 0;
}

.expertsummit-page .summit-tickets-row {
    flex: 1 1 auto;
    min-height: 0;
    align-items: center;
    justify-content: center;
    margin: 0;
    width: 100%;
}

.expertsummit-page .summit-tickets-col {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 0;
}

/* Ingressos — card VIP (Figma node 322:904) */
.expertsummit-page .summit-card-ticket {
    --summit-ticket-magenta: #d600ff;
    --summit-ticket-bonus: #ffe600;
    --summit-ticket-h: 500px;
    --summit-ticket-w: calc(var(--summit-ticket-h) * 600 / 899);
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: var(--summit-ticket-w);
    height: var(--summit-ticket-h);
    max-width: 100%;
    font-size: clamp(11px, calc(var(--summit-ticket-w) * 0.038), 16px);
    overflow: hidden;
    flex-shrink: 0;
    filter: drop-shadow(0 6px 4px rgba(0, 0, 0, 0.25));
    transition:
        transform 0.25s ease,
        filter 0.25s ease;
    transform-origin: center;
    will-change: transform;
}

.expertsummit-page .summit-card-ticket:hover,
.expertsummit-page .summit-card-ticket:focus-within {
    transform: scale(1.02);
    filter: drop-shadow(0 14px 26px rgba(0, 0, 0, 0.35));
}

.expertsummit-page .summit-card-ticket--vip {
    background: url("../images/expertsummit/ticket-vip-bg.svg") center / 100% 100% no-repeat;
}

.expertsummit-page .summit-card-ticket--disabled {
    --summit-ticket-disabled-text: #5c5c5c;
    --summit-ticket-disabled-muted: #7a7a7a;
    background: url("../images/expertsummit/ticket-disabled-bg.svg") center / 100% 100% no-repeat;
    color: var(--summit-ticket-disabled-text);
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.15));
    cursor: not-allowed;
}

.expertsummit-page .summit-card-ticket--disabled:hover,
.expertsummit-page .summit-card-ticket--disabled:focus-within {
    transform: none;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.15));
}

.expertsummit-page .summit-card-ticket--disabled .summit-card-ticket__divider {
    border-top-color: rgba(92, 92, 92, 0.55);
}

.expertsummit-page .summit-card-ticket--disabled .summit-card-ticket__batch-date {
    color: var(--summit-ticket-disabled-muted);
}

.expertsummit-page .summit-card-ticket--disabled .summit-card-ticket__feature-icon {
    color: var(--summit-ticket-disabled-muted);
}

.expertsummit-page .summit-card-ticket--full {
    background: var(--summit-purple);
    border-radius: 35px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.expertsummit-page .summit-bg-art {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.expertsummit-page .summit-bg-art__shape {
    position: absolute;
    display: block;
    opacity: 0.35;
    will-change: transform;
}

/* Referencia Figma node 12:345 */
.expertsummit-page .summit-bg-art__shape--ring-a {
    width: clamp(180px, 22vw, 360px);
    aspect-ratio: 1;
    border: clamp(16px, 2vw, 28px) solid rgba(118, 70, 136, 0.8);
    border-radius: 50%;
    top: -8%;
    right: -9%;
    animation: summit-rotate-cw 24s linear infinite;
}

/* Referencia Figma node 12:344 */
.expertsummit-page .summit-bg-art__shape--ring-b {
    width: clamp(160px, 20vw, 320px);
    aspect-ratio: 1;
    border: clamp(14px, 1.8vw, 24px) solid rgba(118, 70, 136, 0.65);
    border-radius: 50%;
    bottom: -12%;
    left: -8%;
    animation: summit-rotate-ccw 31s linear infinite;
}

/* Referencia Figma node 12:346 */
.expertsummit-page .summit-bg-art__shape--dots {
    width: clamp(140px, 18vw, 250px);
    height: clamp(180px, 24vw, 310px);
    right: -4%;
    bottom: -6%;
    background-image: radial-gradient(circle, #ff0a86 4px, transparent 5px);
    background-size: 32px 32px;
    clip-path: ellipse(42% 48% at 50% 50%);
    opacity: 0.55;
    animation: summit-rotate-ccw 19s linear infinite;
}

@keyframes summit-rotate-cw {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes summit-rotate-ccw {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(-360deg);
    }
}

@media (max-width: 991.98px) {
    .expertsummit-page .summit-bg-art__shape {
        opacity: 0.28;
    }

    .expertsummit-page .summit-bg-art__shape--ring-a {
        top: auto;
        right: -24%;
        bottom: -14%;
    }

    .expertsummit-page .summit-bg-art__shape--ring-b {
        left: -22%;
        bottom: -16%;
    }

    .expertsummit-page .summit-bg-art__shape--dots {
        right: -22%;
        top: -4%;
        bottom: auto;
        opacity: 0.42;
    }
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-bg-art__shape {
        animation: none;
    }
}

.expertsummit-page .summit-card-ticket__inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
    padding: 9% 8% 8%;
    box-sizing: border-box;
    gap: 0.35em;
}

.expertsummit-page .summit-card-ticket__header {
    flex-shrink: 0;
}

.expertsummit-page .summit-card-ticket__title {
    font-size: 1.85em;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin: 0 0 0.35em;
    text-transform: uppercase;
}

.expertsummit-page .summit-card-ticket__divider {
    border: 0;
    border-top: 1.5px solid rgba(255, 255, 255, 0.95);
    margin: 0;
    opacity: 1;
}

.expertsummit-page .summit-card-ticket__batch {
    flex-shrink: 0;
    margin: 0;
}

.expertsummit-page .summit-card-ticket__batch-date {
    font-size: 0.8em;
    font-weight: 500;
    line-height: 1.3;
    opacity: 0.95;
}

.expertsummit-page .summit-card-ticket__batch-label {
    font-size: 1.4em;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0.1em;
}

.expertsummit-page .summit-card-ticket__features {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.28em;
    margin: 0;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

.expertsummit-page .summit-card-ticket__feature {
    display: flex;
    align-items: flex-start;
    gap: 0.45em;
    font-size: 0.95em;
    font-weight: 600;
    line-height: 1.35;
    flex-shrink: 0;
}

.expertsummit-page .summit-card-ticket__feature-icon {
    flex-shrink: 0;
    font-size: 1em;
    margin-top: 0.15em;
    opacity: 0.95;
}

.expertsummit-page .summit-card-ticket__feature--bonus,
.expertsummit-page .summit-card-ticket__feature--bonus .summit-card-ticket__feature-icon {
    color: var(--summit-ticket-bonus);
}

.expertsummit-page .summit-card-ticket__price {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0.08em;
    margin: 0;
    line-height: 1;
    flex-shrink: 0;
}

.expertsummit-page .summit-card-ticket__price-currency,
.expertsummit-page .summit-card-ticket__price-cents {
    font-size: 1.35em;
    font-weight: 600;
    padding-top: 0.3em;
}

.expertsummit-page .summit-card-ticket__price-value {
    font-size: 3.6em;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 0.95;
}

.expertsummit-page .summit-card-ticket__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62%;
    max-width: 179px;
    min-height: 2.75em;
    padding: 0.45em 1.25em;
    border-radius: 100px;
    background: #fff;
    color: var(--summit-ticket-magenta);
    font-size: 1.1em;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 6px 4px rgba(0, 0, 0, 0.25);
    flex-shrink: 0;
    align-self: center;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}

.expertsummit-page .summit-card-ticket__cta:hover,
.expertsummit-page .summit-card-ticket__cta:focus-visible {
    background: #fff;
    color: var(--summit-ticket-magenta);
    transform: translateY(-1px);
    box-shadow: 0 8px 14px rgba(0, 0, 0, 0.3);
}

.expertsummit-page .summit-card-ticket__cta--disabled {
    width: 78%;
    max-width: 220px;
    min-height: 2.75em;
    padding: 0.45em 0.85em;
    border-radius: 100px;
    background: #b8b8b8;
    color: #fff;
    font-size: 0.82em;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    box-shadow: none;
    pointer-events: none;
    cursor: not-allowed;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .expertsummit-page .summit-card-ticket__cta--disabled {
        font-size: 0.72em;
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-card-ticket,
    .expertsummit-page .summit-card-ticket__cta {
        transition: none;
    }

    .expertsummit-page .summit-card-ticket:hover,
    .expertsummit-page .summit-card-ticket:focus-within,
    .expertsummit-page .summit-card-ticket__cta:hover,
    .expertsummit-page .summit-card-ticket__cta:focus-visible {
        transform: none;
    }
}

.expertsummit-page .summit-newsletter-section > .container {
    justify-content: center;
    padding-block: clamp(0.5rem, 1.5vh, 1rem);
}

.expertsummit-page .summit-newsletter-title {
    font-size: clamp(1.35rem, 3.2vh, 2.5rem);
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.2;
    text-transform: uppercase;
    color: #fff;
}

.expertsummit-page .summit-newsletter-stack {
    width: 100%;
    max-width: 72rem;
    display: flex;
    flex-direction: column;
    gap: clamp(0.65rem, 1.5vh, 1rem);
}

.expertsummit-page .summit-newsletter-panel,
.expertsummit-page .summit-newsletter-card {
    background: rgba(255, 255, 255, 0.15);
    border-radius: 1rem;
}

.expertsummit-page .summit-newsletter-panel {
    padding: 5rem 1.5rem;

}

.expertsummit-page .summit-newsletter-panel__lead {
    font-size: clamp(0.9rem, 1.8vh, 1.1rem);
    font-weight: 500;
    line-height: 1.3;
    color: #fff;
    margin-bottom: clamp(0.65rem, 1.5vh, 1rem);
}

.expertsummit-page .summit-newsletter-form__grid {
    display: grid;
    gap: clamp(0.5rem, 1.2vh, 0.85rem);
    grid-template-columns: 1fr;
}

@media (min-width: 768px) {
    .expertsummit-page .summit-newsletter-form__grid {
        grid-template-columns: minmax(0, 1.78fr) minmax(0, 1fr);
        column-gap: clamp(0.75rem, 2vw, 1.25rem);
        row-gap: clamp(0.65rem, 1.5vh, 1rem);
    }
}

.expertsummit-page .summit-newsletter-form__field {
    min-width: 0;
}

.expertsummit-page .summit-newsletter-input {
    width: 100%;
    background: transparent;
    border: 2px solid #fff;
    border-radius: 0.5rem;
    color: #fff;
    font-size: clamp(0.875rem, 1.6vh, 1.05rem);
    font-weight: 600;
    line-height: 1.4;
    padding: clamp(0.45rem, 1vh, 0.6rem) clamp(0.75rem, 1.5vw, 1rem);
}

.expertsummit-page .summit-newsletter-input::placeholder {
    color: #6c757d;
    opacity: 1;
}

.expertsummit-page .summit-newsletter-input:focus {
    background: transparent;
    border-color: #fff;
    color: #fff;
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.15);
}

.expertsummit-page .summit-newsletter-form__actions {
    display: flex;
    justify-content: center;
    margin-top: clamp(0.85rem, 2vh, 1.25rem);
}

.expertsummit-page .summit-newsletter-form__feedback {
    margin-top: 0.85rem;
    padding: 0.65rem 0.85rem;
    border-radius: 0.5rem;
    font-family: "Montserrat", sans-serif;
    font-size: 0.9rem;
    line-height: 1.4;
}

.expertsummit-page .summit-newsletter-form__feedback--success {
    color: #0f5132;
    background: #d1e7dd;
}

.expertsummit-page .summit-newsletter-form__feedback--error {
    color: #842029;
    background: #f8d7da;
}

.expertsummit-page .summit-newsletter-submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none;
}

.expertsummit-page .summit-newsletter-submit {
    min-width: clamp(9rem, 18vw, 11rem);
    padding: 0.625rem 1.5rem;
    white-space: normal;
}

.expertsummit-page .summit-newsletter-submit__icon {
    font-size: 1.375rem;
    line-height: 1;
}

.expertsummit-page .summit-newsletter-cards {
    display: grid;
    gap: clamp(0.65rem, 1.5vh, 1rem);
    grid-template-columns: 1fr;
}

@media (min-width: 768px) {
    .expertsummit-page .summit-newsletter-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.expertsummit-page .summit-newsletter-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: clamp(0.75rem, 2vh, 1.25rem);
    min-height: clamp(7.5rem, 14vh, 10.5rem);
    padding: clamp(1.5rem, 4vh, 3rem) clamp(1rem, 2.5vw, 1.75rem);
    color: #fff;
    text-align: center;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.expertsummit-page a.summit-newsletter-card:hover,
.expertsummit-page a.summit-newsletter-card:focus-visible {
    color: #fff;
    opacity: 0.92;
    transform: translateY(-1px);
}

.expertsummit-page a.summit-newsletter-card:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.65);
    outline-offset: 3px;
}

.expertsummit-page .summit-newsletter-card__title {
    font-size: clamp(1rem, 2.2vh, 1.35rem);
    font-weight: 600;
    line-height: 1.25;
    color: inherit;
    margin: 0;
}

.expertsummit-page .summit-newsletter-card__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    color: inherit;
    font-size: clamp(0.95rem, 1.8vh, 1.2rem);
    font-weight: 500;
    line-height: 1.3;
}

.expertsummit-page .summit-newsletter-card__whatsapp {
    font-size: clamp(1.15rem, 2.2vh, 1.45rem);
    line-height: 1;
}

.expertsummit-page .summit-newsletter-card__cta {
    color: inherit;
    font-size: clamp(0.95rem, 1.8vh, 1.2rem);
    font-weight: 500;
    line-height: 1.3;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

@media (max-height: 820px) {
    .expertsummit-page .summit-newsletter-section > .container {
        padding-block: 0.35rem;
    }

    .expertsummit-page .summit-newsletter-title {
        margin-bottom: 0.5rem !important;
    }

    .expertsummit-page .summit-newsletter-panel__lead {
        margin-bottom: 0.5rem;
    }

    .expertsummit-page .summit-newsletter-form__actions {
        margin-top: 0.65rem;
    }
}

@media (max-width: 767.98px) and (min-width: 480px) {
    .expertsummit-page .summit-newsletter-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .btn-summit-pill,
    .expertsummit-page .summit-newsletter-submit {
        transition: none;
    }

    .expertsummit-page .btn-summit-pill:hover,
    .expertsummit-page .btn-summit-pill:focus-visible,
    .expertsummit-page .btn-summit-pill:active,
    .expertsummit-page .summit-newsletter-submit:hover,
    .expertsummit-page .summit-newsletter-submit:focus-visible {
        transform: none;
    }

    .expertsummit-page a.summit-newsletter-card {
        transition: none;
    }

    .expertsummit-page a.summit-newsletter-card:hover,
    .expertsummit-page a.summit-newsletter-card:focus-visible {
        transform: none;
    }
}

/* Parceiros — Figma 464:973: título 60px + 3 logos grandes por vez */
.expertsummit-page #parceiros .summit-partners-title {
    flex-shrink: 0;
    font-size: clamp(2rem, 5vw, 3.75rem);
    font-weight: 600;
    line-height: 1.31;
    letter-spacing: -0.02em;
    color: #fff;
    /* Figma: título (y=12600, h=79) → artwork logos (y=13180) = 501px */
    margin: 0 0 10rem;
}

.expertsummit-page #parceiros .summit-partners-slider {
    width: 100%;
    min-height: clamp(6rem, 12vw, 10rem);
    overflow: hidden;
}

.expertsummit-page #parceiros .summit-partners-slider .swiper-wrapper {
    align-items: center;
}

.expertsummit-page #parceiros .summit-partners-slider .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
}

.expertsummit-page .summit-partner-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 25.625rem; /* 410px — célula Figma */
    min-height: clamp(6rem, 12vw, 10rem);
    margin: 0;
    opacity: 0.95;
    transition: opacity 0.35s ease;
}

.expertsummit-page .summit-partner-logo:hover {
    opacity: 1;
}

.expertsummit-page .summit-partner-logo img {
    display: block;
    width: 100%;
    max-width: 18.125rem; /* ~290px — área útil do logo no Figma */
    height: auto;
    max-height: 7.5rem;
    object-fit: contain;
    object-position: center;
}

@media (max-width: 575.98px) {
    .expertsummit-page .summit-partner-logo img {
        max-width: 14rem;
        max-height: 5.5rem;
    }
}

.expertsummit-page .summit-footer-bridge {
    width: 100%;
    display: block;
}

.expertsummit-page #cart-float {
    display: none !important;
}

/* FAQ */
.expertsummit-page .summit-faq-title {
    font-size: clamp(2rem, 5vw, 3.75rem);
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.31;
    color: #fff;
}

.expertsummit-page .summit-faq-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    max-width: 49.6875rem;
}

.expertsummit-page .summit-faq-item {
    background: #fff;
    border-radius: 0.625rem;
    overflow: hidden;
}

.expertsummit-page .summit-faq-item h3,
.expertsummit-page .summit-faq-trigger,
.expertsummit-page .summit-faq-trigger .summit-faq-question,
.expertsummit-page .summit-faq-panel,
.expertsummit-page .summit-faq-panel p {
    color: #484848 !important;
}

.expertsummit-page .summit-faq-icon,
.expertsummit-page .summit-faq-icon i {
    color: var(--summit-magenta) !important;
}

.expertsummit-page .summit-faq-item__heading {
    font-size: inherit;
    font-weight: inherit;
}

.expertsummit-page .summit-faq-trigger {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    min-height: 4.5625rem;
    padding: 1.25rem;
    border: 0;
    background: transparent;
    color: #484848;
    cursor: pointer;
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
}

.expertsummit-page .summit-faq-trigger:focus-visible {
    outline: 2px solid var(--summit-magenta-bright);
    outline-offset: -2px;
}

.expertsummit-page .summit-faq-question {
    flex: 1;
    min-width: 0;
}

.expertsummit-page .summit-faq-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 2.3125rem;
    height: 2.3125rem;
    color: var(--summit-magenta);
    font-size: 2.3125rem;
    line-height: 1;
    transition: transform 0.25s ease;
}

.expertsummit-page .summit-faq-item--open .summit-faq-icon {
    transform: rotate(-135deg);
}

.expertsummit-page .summit-faq-panel {
    padding: 0 1.25rem 1.25rem;
    color: #484848;
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    font-weight: 500;
    line-height: 1.5;
}

/* Figma 162:421 — card “Ainda com Dúvidas?” (856×219) */
.expertsummit-page .summit-faq-contact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
    width: 100%;
    max-width: 53.5rem;
    padding: clamp(2.5rem, 5vw, 3.25rem) clamp(1.5rem, 4vw, 2.5rem);
    background: rgba(255, 255, 255, 0.15);
    border-radius: 0.625rem;
}

.expertsummit-page .summit-faq-contact__title {
    margin: 0;
    color: #fff;
    font-size: clamp(1.25rem, 3vw, 1.875rem);
    font-weight: 600;
    line-height: 1.33;
}

.expertsummit-page .summit-faq-contact__link {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    color: #fff;
    font-size: clamp(1.1rem, 2.5vw, 1.625rem);
    font-weight: 500;
    line-height: 1.33;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.expertsummit-page .summit-faq-contact__link:hover,
.expertsummit-page .summit-faq-contact__link:focus-visible {
    color: #fff;
    opacity: 0.9;
}

.expertsummit-page .summit-faq-contact__whatsapp {
    display: block;
    width: 1.8125rem;
    height: 1.8125rem;
    flex-shrink: 0;
    object-fit: contain;
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-faq-icon {
        transition: none;
    }
}

/* Seções: fade-in vindo de cima ao entrar no viewport (.summit-section-reveal--visible via JS) */
.expertsummit-page main > section.summit-section-full:not(.summit-hero) {
    opacity: 0;
    transform: translate3d(0, -2rem, 0);
    transition:
        opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
}

.expertsummit-page main > section.summit-section-full:not(.summit-hero).summit-section-reveal--visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page main > section.summit-section-full:not(.summit-hero) {
        opacity: 1;
        transform: none;
        transition: none;
        will-change: auto;
    }
}
/* Localização — layout original (flex around); título rente ao iframe */
.expertsummit-page .localizacao-layout__map {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: min(100%, 400px);
}

.expertsummit-page .localizacao-layout__title {
    text-align: end;
    width: 100%;
}

.expertsummit-page .localizacao-layout__map iframe {
    display: block;
    max-width: 100%;
}

@media (max-width: 767.98px) {
    .expertsummit-page .localizacao-layout__map {
        order: -1;
        align-self: end;
    }
}

/* Mapa do evento — imagem fluida (substitui background fixo 500x500) */
.expertsummit-page .mapa-container {
    width: 100%;
}

.expertsummit-page .mapa-container__item--map {
    flex: 1 1 auto;
    width: 100%;
    max-width: min(100%, 34rem);
    min-width: 0;
}

.expertsummit-page .mapa-container__item--legend {
    flex: 0 1 auto;
    width: 100%;
    max-width: 22rem;
}

.expertsummit-page .mapa-container__figure {
    width: 100%;
    margin: 0;
}

.expertsummit-page .mapa-container__item__image {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 858 / 804;
    object-fit: contain;
    border-radius: 1rem;
}

/* Glow decorativo (Figma: Ellipse 80/81 — linear-gradient + layer blur 100px) */
.expertsummit-page .detail-section-light::before,
.expertsummit-page .detail-section-light::after {
    content: '';
    position: absolute;
    pointer-events: none;
    z-index: 0;
    border-radius: 50%;
    width: min(400px, 59vw);
    height: min(400px, 59vw);
    background: linear-gradient(180deg, #FF3600 0%, #7C00BF 100%);
    filter: blur(70px);
}

/* Ellipse 80 — canto superior direito */
.expertsummit-page .detail-section-light::after {
    top: 15%;
    right: -5%;
}

/* Ellipse 81 — canto inferior esquerdo */
.expertsummit-page .detail-section-light::before {
    bottom: 15%;
    left: -5%;
}

@media (max-width: 767.98px) {
    .expertsummit-page .detail-section-light::before,
    .expertsummit-page .detail-section-light::after {
        width: min(420px, 72vw);
        height: min(420px, 72vw);
        filter: blur(60px);
    }

    .expertsummit-page .detail-section-light::after {
        top: -8%;
        right: -32%;
    }

    .expertsummit-page .detail-section-light::before {
        bottom: -8%;
        left: -32%;
    }
}

/* Programação — Figma 182:383 / 152:468 / 182:384 / 180:366 */
.expertsummit-page .grid-programacao-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    padding: 0 1.5rem;
}

@media (min-width: 790px) {
    .expertsummit-page .grid-programacao-container {
        padding: 0 4rem;
    }
}

@media (min-width: 1200px) {
    .expertsummit-page .grid-programacao-container {
        padding: 0 20rem;
    }
}

.expertsummit-page .grid-programacao-1 {
    max-width: 1400px;
    width: 100%;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: stretch;
}

.expertsummit-page .grid-programacao-1__item-date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 5.5rem;
    padding: 0.625rem;
    background-color: #ff3600;
    color: #fff;
    text-align: center;
    border-radius: 1.25rem;
    line-height: 1.31;
}

.expertsummit-page .grid-programacao-1__item-date-heading {
    margin: 0;
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.15;
}

.expertsummit-page .grid-programacao-1__item-date-heading time {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.15em;
}

.expertsummit-page .grid-programacao-1__item-date-month {
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    font-style: normal;
    line-height: 1.31;
}

.expertsummit-page .grid-programacao-1__item {
    background-image: linear-gradient(90deg, #ff0068 0%, #8b00b9 100%);
    padding: 1.5rem;
    border-radius: 1rem;
    color: #fff;
}

.expertsummit-page .grid-programacao-1__list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.expertsummit-page .grid-programacao-1__row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 0.75rem;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.31;
    color: #fff;
}

.expertsummit-page .grid-programacao-1__time {
    flex: 0 1 auto;
    text-align: left;
    white-space: nowrap;
}

.expertsummit-page .grid-programacao-1__activity {
    flex: 1 1 auto;
    text-align: right;
}

.expertsummit-page .grid-programacao-1__row--solo {
    justify-content: flex-end;
}

@media (max-width: 768px) {
    .expertsummit-page .grid-programacao-1 {
        grid-template-columns: 1fr;
    }

    .expertsummit-page .grid-programacao-1__item-date {
        min-width: 0;
        width: 100%;
        padding: 0.5rem 0.75rem;
    }

    .expertsummit-page .grid-programacao-1__item-date-heading {
        font-size: 1.875rem;
    }

    .expertsummit-page .grid-programacao-1__item-date-heading time {
        flex-direction: row;
        align-items: baseline;
        gap: 0.5rem;
    }

    .expertsummit-page .grid-programacao-1__item {
        padding: 1rem 0.75rem;
    }

    .expertsummit-page .grid-programacao-1__row {
        font-size: 0.875rem;
    }

    .expertsummit-page .grid-programacao-1__time {
        white-space: normal;
    }
}

/* Porque o Vellozia Summit? — Figma 132:421 / 488:469 / 222:417 / 222:420 / 222:423 */
.expertsummit-page .summit-why-title {
    margin: 0 0 clamp(2.5rem, 5vw, 4.5rem);
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1.75rem, 4.5vw, 3.75rem); /* 60px */
    font-weight: 600;
    line-height: 1.31;
    letter-spacing: -0.02em;
}

.expertsummit-page .summit-why-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    width: 100%;
    max-width: 71.125rem; /* 552 + 34 + 552 */
    margin-inline: auto;
}

@media (min-width: 992px) {
    .expertsummit-page .summit-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2.25rem 2.125rem; /* 36px / 34px */
    }
}

.expertsummit-page .summit-why-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem; /* 24px */
    min-height: 0;
    padding: clamp(1.75rem, 4vw, 4.0625rem) clamp(1.25rem, 4vw, 3.75rem); /* 65px 60px */
    border-radius: 0.9375rem; /* 15px */
    background-color: rgba(1, 1, 2, 0.45);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(153, 153, 153, 0.2) 100%);
    color: #fff;
    text-align: center;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

@media (min-width: 992px) {
    .expertsummit-page .summit-why-card {
        min-height: 23.5625rem; /* 377px */
    }
}

.expertsummit-page .summit-why-card__title {
    margin: 0;
    max-width: 18.125rem; /* 290px — quebra em 2 linhas no Figma */
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1.25rem, 2.5vw, 1.875rem); /* 30px */
    font-weight: 600;
    line-height: 1.33;
}

.expertsummit-page .summit-why-card__text {
    margin: 0;
    max-width: 27.125rem; /* 434px */
    color: #fff;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1rem, 2vw, 1.25rem); /* 20px */
    font-weight: 500;
    line-height: 1.33;
}

@media (hover: hover) and (pointer: fine) {
    .expertsummit-page .summit-why-card:hover,
    .expertsummit-page .summit-why-card:focus-within {
        transform: translateY(-4px);
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
    }
}

@media (max-width: 767.98px) {
    .expertsummit-page .summit-why-card__title {
        max-width: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .expertsummit-page .summit-why-card {
        transition: none;
    }

    .expertsummit-page .summit-why-card:hover,
    .expertsummit-page .summit-why-card:focus-within {
        transform: none;
    }
}
