/* Black Season global. Todas as regras dependem da classe ativada pelo PHP. */
body.unintese-black-season-visual {
    --bs-background: #080808;
    --bs-surface: #151515;
    --bs-border: #3d3d3d;
    --bs-text: #f3f0f5;
    --bs-muted: #c9c4ce;
    --bs-accent: #f58120;
    --bs-accent-hover: #ff9c45;
    --bs-on-accent: #111111;
    --bs-link: #ffb574;
    --bs-purple: #7e3bd0;
    --bs-purple-hover: #9253dd;
    --bs-purple-link: #cda6ff;
    background: var(--bs-background) !important;
    color: var(--bs-text) !important;
    color-scheme: dark;
}

body.unintese-black-season-visual.black-season-roxo {
    --bs-accent: var(--bs-purple);
    --bs-accent-hover: var(--bs-purple-hover);
    --bs-on-accent: #ffffff;
    --bs-link: var(--bs-purple-link);
}

/* A cor também acompanha os botões de cursos misturados em uma mesma página. */
body.unintese-black-season-visual #page a:is(
    [href*="/analise-dev-sistemas"],
    [href*="/analise-e-desenvolvimento-de-sistemas"],
    [href*="/gestao-financeira"],
    [href*="/gestao-comercial"],
    [href*="/gestao-ti"],
    [href*="/gestao-de-ti"],
    [href*="/processos-gerenciais"],
    [href*="/marketing"]
) {
    --bs-accent: var(--bs-purple);
    --bs-accent-hover: var(--bs-purple-hover);
    --bs-on-accent: #ffffff;
    --bs-link: var(--bs-purple-link);
}

body.unintese-black-season-visual #page,
body.unintese-black-season-visual #page :is(
    main, section, article, aside, .content-area, .site-content,
    .top-bar, .footer-widgets, .copyright, .copyright-segunda-parte
) {
    background-color: var(--bs-background) !important;
    color: var(--bs-text) !important;
}

/* Remove os fundos claros dos blocos internos, preservando as imagens existentes. */
body.unintese-black-season-visual #page main :where(div) {
    background-color: transparent !important;
}

body.unintese-black-season-visual #page :is(
    h1, h2, h3, h4, h5, h6, p, li, dt, dd, td, th, label,
    legend, figcaption, blockquote, span, strong, small
) {
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual #page a {
    color: var(--bs-link) !important;
}

body.unintese-black-season-visual #page a:hover {
    color: #ffffff !important;
}

body.unintese-black-season-visual #page :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid var(--bs-link) !important;
    outline-offset: 4px;
}

body.unintese-black-season-visual #page :is(
    .card, .modal-content, .modal-content-curso, .containerFormularioInformacoes,
    .mauticform_wrapper, .mauticform-innerform, .square-texto-libras-fluency,
    .box-blog-home-efeito, .unintese-curso-details, .unintese-curso-tab-list,
    .unintese-curso-course-facts > div, aside.valor-lateral-graduacao
) {
    background-color: var(--bs-surface) !important;
    border-color: var(--bs-border) !important;
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual #page aside.valor-lateral-graduacao,
body.unintese-black-season-visual #page .unintese-curso-course-facts > div {
    border-top-color: var(--bs-accent) !important;
}

body.unintese-black-season-visual #page .unintese-curso-details[open] {
    border-color: var(--bs-accent) !important;
}

body.unintese-black-season-visual #page .unintese-curso-details > summary,
body.unintese-black-season-visual #page .unintese-curso-details > summary:hover {
    background: transparent !important;
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual #page .unintese-curso-details > summary::after {
    background: #29252e !important;
    color: var(--bs-link) !important;
}

/* Sobrescreve as paletas dos cursos apenas enquanto a campanha estiver ativa. */
body.unintese-black-season-visual .unintese-graduacao {
    --curso-texto: var(--bs-text);
    --curso-principal: var(--bs-link);
    --curso-destaque: var(--bs-accent);
    --curso-linha: var(--bs-border);
    --curso-suave: var(--bs-surface);
    --curso-hover: #26222b;
    --curso-aberto-borda: var(--bs-accent);
    --curso-botao-hover: var(--bs-accent-hover);
    --curso-sombra: 0 0 0;
    --curso-tabela-fundo: var(--bs-surface);
    --curso-enfase-fundo: var(--bs-accent);
    --curso-enfase-texto: var(--bs-on-accent);
}

body.unintese-black-season-visual #page :is(table, thead, tbody, tr, th, td) {
    background-color: var(--bs-surface) !important;
    color: var(--bs-text) !important;
    border-color: #55505b !important;
}

body.unintese-black-season-visual #page th {
    background-color: #252127 !important;
}

body.unintese-black-season-visual #page :is(
    input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
    select, textarea
) {
    background-color: #202020 !important;
    color: #ffffff !important;
    border-color: #77717b !important;
}

body.unintese-black-season-visual #page ::placeholder {
    color: #bbb5c0 !important;
    opacity: 1;
}

body.unintese-black-season-visual #page :is(.mauticform-errormsg, .invalid-feedback, .error) {
    color: #ffb6a7 !important;
}

/* Botões: laranja em Libras/Pedagogia/Pós; roxo em Gestão/Tecnologia. */
body.unintese-black-season-visual #page :is(
    .unintese-curso-inscricao, .unintese-curso-tab[aria-selected="true"],
    [class*="botao-"], a.btn, button.btn, a.button, .wp-block-button__link,
    .editalNovo, .mauticform-button, button[type="submit"], input[type="submit"]
) {
    background: var(--bs-accent) !important;
    color: var(--bs-on-accent) !important;
    border-color: var(--bs-accent) !important;
    text-shadow: none !important;
}

body.unintese-black-season-visual #page :is(
    .unintese-curso-inscricao, .unintese-curso-tab[aria-selected="true"],
    [class*="botao-"], a.btn, button.btn, a.button, .wp-block-button__link,
    .editalNovo, .mauticform-button, button[type="submit"], input[type="submit"]
) :is(span, strong, p, h3, h4, i) {
    color: var(--bs-on-accent) !important;
}

body.unintese-black-season-visual #page :is(
    .unintese-curso-inscricao, [class*="botao-"], a.btn, button.btn,
    a.button, .wp-block-button__link, .editalNovo, .mauticform-button,
    button[type="submit"], input[type="submit"]
):hover {
    background: var(--bs-accent-hover) !important;
    color: var(--bs-on-accent) !important;
}

body.unintese-black-season-visual #page > header {
    position: relative;
    z-index: 100;
    background: #080808 !important;
    border-bottom: 1px solid var(--bs-border);
}

body.unintese-black-season-visual #page > header .main-menu :is(.nav-link, .dropdown-item) {
    color: #ffffff !important;
    background-color: transparent !important;
}

body.unintese-black-season-visual #page > header .main-menu :is(.nav-link, .dropdown-item):hover {
    background: #242028 !important;
    color: var(--bs-link) !important;
}

body.unintese-black-season-visual #page > header .dropdown-menu {
    background: #151515 !important;
    border: 1px solid #55475f;
}

/* A lupa fica no fundo do próprio campo de pesquisa do header. */
body.unintese-black-season-visual #page > header .search input:is([type="text"], [type="search"]) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: 14px center !important;
    background-size: 20px 20px !important;
}

body.unintese-black-season-visual #page > header .navbar-toggler {
    border-color: #b6a5c4 !important;
}

body.unintese-black-season-visual #page > header .navbar-toggler-icon {
    filter: brightness(0) invert(1);
}

body.unintese-black-season-visual #page :is(.custom-logo, .logoUninteseSimples) {
    filter: brightness(0) invert(1);
}

body.unintese-black-season-visual #page .imagem-box-trio-fundo {
    position: relative;
    overflow: hidden;
    background-color: var(--bs-surface) !important;
    border: 1px solid var(--bs-accent);
}

body.unintese-black-season-visual #page .imagem-box-trio-fundo::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #08080810, #080808c9);
    pointer-events: none;
}

body.unintese-black-season-visual #page .container-textos-box-trio-home {
    position: relative;
    z-index: 1;
}

body.unintese-black-season-visual #page .container-textos-box-trio-home p {
    padding: 10px 14px;
    border-radius: 6px;
    background: var(--bs-accent) !important;
    color: var(--bs-on-accent) !important;
    font-size: 14px;
    line-height: 1.5;
}

body.unintese-black-season-visual #page .novo_informacoes-unintese {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
}

body.unintese-black-season-visual #page .novo_dados-sobre-unintese {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #1b1b1b !important;
    border-top: 1px solid var(--bs-border);
    border-bottom: 1px solid var(--bs-border);
    border-radius: 12px;
}

body.unintese-black-season-visual #page .novo_dados-unintese {
    margin: 0;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    padding: 16px 8px;
    text-align: center;
}

body.unintese-black-season-visual #page .novo_dados-unintese p {
    margin-bottom: 0;
}

body.unintese-black-season-visual #page .banner-newsletter3 figure {
    width: 100%;
    max-width: 100%;
    margin: 0;
}

body.unintese-black-season-visual #page .banner-newsletter3 {
    flex: 0 1 100%;
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
    padding: 24px;
    background-color: #242126 !important;
    border: 1px solid var(--bs-border);
}

body.unintese-black-season-visual #page .banner-newsletter2 {
    display: flex !important;
    min-width: 0;
}

body.unintese-black-season-visual #page .banner-newsletter1 .mauticform_wrapper {
    padding: clamp(16px, 2vw, 24px);
    box-sizing: border-box;
}

body.unintese-black-season-visual #page .banner-newsletter1 .mauticform-label {
    background-color: var(--bs-surface) !important;
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual #page .banner-pessoas-fazendo-contato {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto;
    max-height: none;
    margin: 0;
}

/* Alguns templates encerram #page antes do rodapé institucional. */
body.unintese-black-season-visual footer.trocarSvgPreto,
body.unintese-black-season-visual footer.trocarSvgPreto :is(
    .footer-widgets, .copyright, .copyright-segunda-parte
) {
    background: #080808 !important;
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual footer.trocarSvgPreto {
    border-top: 1px solid var(--bs-border);
}

body.unintese-black-season-visual footer.trocarSvgPreto :is(
    h3, h5, p, li, strong, span, i
) {
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual footer.trocarSvgPreto a {
    color: var(--bs-link) !important;
}

body.unintese-black-season-visual footer.trocarSvgPreto a:hover {
    color: #ffffff !important;
}

/* O conteúdo dos artigos também pode ficar fora de main. */
body.unintese-black-season-visual #page :is(
    .img-sobreposicao, .block__text__blog, .outras-noticias-blog-texto,
    .box-branco-blog
) {
    background-color: var(--bs-surface) !important;
    color: var(--bs-text) !important;
    border-color: var(--bs-border) !important;
}

body.unintese-black-season-visual #page .block__text__blog :is(p, li, span, strong) {
    background-color: transparent !important;
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual.single-post .custom-hr {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
    background-color: var(--bs-border) !important;
}

/* O MetaSlider aplica fundo e borda próprios, além do fundo da seção. */
body.unintese-black-season-visual #page .slider :is(
    .metaslider, .flexslider, .flex-viewport, .slides, .slides > li,
    .nivoSlider, .rslides, .coin-slider
) {
    background-color: var(--bs-background) !important;
    border-color: var(--bs-background) !important;
    box-shadow: none !important;
}

/* Mantém as fotografias e devolve os painéis e as sobreposições do blog. */
body.unintese-black-season-visual #page .blog-section-home {
    padding-top: 48px;
    padding-bottom: 48px;
}

body.unintese-black-season-visual #page .blog-section-home .textBlog {
    padding-left: 16px;
    margin-bottom: 28px;
    border-left: 4px solid var(--bs-accent);
}

body.unintese-black-season-visual #page .blog-section-home .box-blog-home-efeito {
    background: transparent !important;
    padding-left: 0;
    padding-right: 0;
}

body.unintese-black-season-visual #page .blog-section-home .home__blog__main-space > .row {
    margin-left: 0;
    margin-right: 0;
}

body.unintese-black-season-visual #page .blog-section-home :is(
    .texto-blog-home, .texto-blog-home-secundario, .box__titulos-blog-trio
) {
    background: var(--bs-surface) !important;
    border: 1px solid var(--bs-border);
    border-top: 3px solid var(--bs-accent);
    border-radius: 10px;
    box-shadow: 0 10px 28px #00000070;
}

body.unintese-black-season-visual #page .blog-section-home .imagem-principal-home-blog {
    display: flex;
    align-items: flex-end;
    height: auto;
    min-height: 440px;
    margin-bottom: 20px;
    border-radius: 12px;
}

body.unintese-black-season-visual #page .blog-section-home .texto-blog-home-top {
    width: 100%;
    padding: 240px 14px 14px;
}

body.unintese-black-season-visual #page .blog-section-home .texto-blog-home {
    min-height: 0;
    padding: 22px;
}

body.unintese-black-season-visual #page .blog-section-home :is(
    .texto-blog-home h1, .titulo__trio-blog
) {
    margin: 0 0 20px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

body.unintese-black-season-visual #page .blog-section-home :is(
    .texto-blog-home h1 a, .titulo__trio-blog a
) {
    color: var(--bs-text) !important;
}

body.unintese-black-season-visual #page .blog-section-home :is(
    .texto-blog-home h1 a:hover, .titulo__trio-blog a:hover
) {
    color: var(--bs-link) !important;
}

body.unintese-black-season-visual #page .blog-section-home .container-img-blog-trio {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin: 0 0 20px;
}

body.unintese-black-season-visual #page .blog-section-home .container-img-blog-trio > div:first-child {
    flex: 0 0 42%;
    min-width: 0;
}

body.unintese-black-season-visual #page .blog-section-home .imgblog__trio-remove-left {
    width: 100%;
    min-width: 0;
    height: 164px;
    object-fit: cover;
    border-radius: 10px;
}

body.unintese-black-season-visual #page .blog-section-home .box__titulos-blog-trio {
    flex: 1;
    left: auto;
    width: auto;
    min-width: 0;
    min-height: 0;
    margin: 0 0 0 -24px;
    padding: 18px;
}

body.unintese-black-season-visual #page .blog-section-home .leia-mais-blog-home {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 9px 14px;
    background: var(--bs-accent) !important;
    color: var(--bs-on-accent) !important;
    border: 0 !important;
    border-radius: 8px !important;
    font-size: 14px;
    line-height: 1.4;
    transition: background-color 0.2s ease;
}

body.unintese-black-season-visual #page .blog-section-home a:hover .leia-mais-blog-home {
    background: var(--bs-accent-hover) !important;
}

body.unintese-black-season-visual #page .blog-section-home .leia-mais-blog-home i {
    margin-left: 0;
    color: inherit !important;
}

body.unintese-black-season-visual #page .black-season-hero {
    position: relative;
    isolation: isolate;
    z-index: 0;
    overflow: hidden;
    border-bottom: 1px solid #3f2c50;
    background: radial-gradient(ellipse at 88% 100%, #2d1643 0%, #080808 60%) !important;
}

body.unintese-black-season-visual #page .black-season-hero__inner {
    position: relative;
    min-height: 290px;
    padding-top: 35px;
    padding-bottom: 35px;
}

body.unintese-black-season-visual #page .black-season-hero__brand {
    position: relative;
    z-index: 1;
    margin: 0 0 12px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 5px;
    color: #c9c4ce !important;
}

body.unintese-black-season-visual #page .black-season-hero__title {
    position: relative;
    z-index: 1;
    margin: 0;
    max-width: 850px;
    font-family: "Open Sans", Verdana, sans-serif;
    font-size: clamp(45px, 7vw, 96px);
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: -3px;
    overflow-wrap: anywhere;
}

body.unintese-black-season-visual #page .black-season-hero__title span {
    color: #f58120 !important;
}

body.unintese-black-season-visual #page .black-season-hero__art {
    position: absolute;
    top: -85px;
    right: 15px;
    width: 350px;
    height: 350px;
    transform: rotate(-25deg);
    pointer-events: none;
}

body.unintese-black-season-visual #page .black-season-hero__art span {
    position: absolute;
    inset: 0;
    border: 30px solid #7e3bd0;
    border-radius: 50%;
    opacity: 0.35;
}

body.unintese-black-season-visual #page .black-season-hero__art span + span {
    inset: 100px -30px -100px 30px;
    border-color: #f58120;
    opacity: 0.25;
}

@media (max-width: 767px) {
    body.unintese-black-season-visual #page .blog-section-home {
        max-width: 100%;
        padding: 32px 15px;
    }

    body.unintese-black-season-visual #page .blog-section-home .container-img-blog-trio {
        flex-direction: column;
    }

    body.unintese-black-season-visual #page .blog-section-home .container-img-blog-trio > div:first-child {
        flex-basis: auto;
        width: 100%;
    }

    body.unintese-black-season-visual #page .blog-section-home .imgblog__trio-remove-left {
        height: 200px;
    }

    body.unintese-black-season-visual #page .blog-section-home .box__titulos-blog-trio {
        width: calc(100% - 20px);
        margin: -28px 10px 0;
    }

    body.unintese-black-season-visual #page .blog-section-home .imagem-principal-home-blog {
        margin-bottom: 24px;
    }

    body.unintese-black-season-visual #page .novo_informacoes-unintese {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    body.unintese-black-season-visual #page .imagem-box-trio-fundo {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100%;
    }

    body.unintese-black-season-visual #page .imagens-home-cursos > a {
        flex: 0 1 100%;
        min-width: 0;
        max-width: 100%;
    }

    body.unintese-black-season-visual #page .imagens-home-cursos .margem-cursos-separador1 {
        width: 100% !important;
        max-width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.unintese-black-season-visual #page .black-season-hero__inner {
        min-height: 230px;
    }

    body.unintese-black-season-visual #page .black-season-hero__title {
        max-width: 440px;
        letter-spacing: -1px;
    }

    body.unintese-black-season-visual #page .black-season-hero__art {
        right: -170px;
        opacity: 0.6;
    }
}

@media print {
    body.unintese-black-season-visual #page .black-season-hero {
        display: none !important;
    }
}
