/**
 * Logos Cursos — Página individual do curso
 *
 * !important nas propriedades estruturais para override do tema.
 * ATENÇÃO: dentro de .logos-curso-conteudo NÃO usamos !important em tipografia
 * (font-size, font-family, color, text-align) — !important em folha de estilo
 * vence style inline e anularia as fontes/cores escolhidas no editor.
 */

.logos-curso-single {
    display: block !important;
    background: #ffffff !important;
    padding: 48px 20px 64px !important;
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
}

.logos-curso-container {
    max-width: 860px !important;
    margin: 0 auto !important;
}

/* === Cabeçalho === */

.logos-curso-header {
    margin-bottom: 28px !important;
}

.logos-curso-categoria {
    display: inline-block !important;
    background: rgba(119, 36, 47, 0.08) !important;
    color: #77242F !important;
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 5px 12px !important;
    border-radius: 20px !important;
    margin-bottom: 14px !important;
}

.logos-curso-single .logos-cursos-waitlist-badge {
    margin-bottom: 14px !important;
}

.logos-curso-titulo {
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #77242F !important;
    margin: 0 0 14px !important;
}

.logos-curso-info {
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #4b5563 !important;
    margin: 0 !important;
}

/* === Imagem === */

.logos-curso-imagem {
    margin-bottom: 32px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
}

.logos-curso-imagem-img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

/* === Conteúdo rico (autoria do usuário) === */

.logos-curso-conteudo {
    margin-bottom: 40px !important;
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif;
    font-size: 17px;
    line-height: 1.75 !important;
    color: #1f2937;
}

.logos-curso-conteudo p {
    margin: 0 0 1.1em !important;
}

.logos-curso-conteudo h2,
.logos-curso-conteudo h3,
.logos-curso-conteudo h4 {
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif;
    color: #77242F;
    line-height: 1.3 !important;
    margin: 1.8em 0 0.6em !important;
}

.logos-curso-conteudo h2 { font-size: 27px; }
.logos-curso-conteudo h3 { font-size: 22px; }
.logos-curso-conteudo h4 { font-size: 19px; }

.logos-curso-conteudo ul,
.logos-curso-conteudo ol {
    margin: 0 0 1.1em !important;
    padding-left: 1.4em !important;
}

.logos-curso-conteudo li {
    margin-bottom: 0.4em !important;
}

.logos-curso-conteudo a {
    color: #77242F;
    text-decoration: underline !important;
}

.logos-curso-conteudo a:hover {
    color: #5a1a23;
}

.logos-curso-conteudo img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 10px !important;
}

.logos-curso-conteudo img.alignleft  { float: left !important; margin: 0 20px 16px 0 !important; }
.logos-curso-conteudo img.alignright { float: right !important; margin: 0 0 16px 20px !important; }
.logos-curso-conteudo img.aligncenter,
.logos-curso-conteudo .aligncenter { display: block !important; margin-left: auto !important; margin-right: auto !important; }

.logos-curso-conteudo .wp-caption-text {
    font-size: 13px;
    color: #6b7280;
    text-align: center;
    margin-top: 6px !important;
}

.logos-curso-conteudo blockquote {
    margin: 1.5em 0 !important;
    padding: 4px 0 4px 20px !important;
    border-left: 4px solid #77242F !important;
    color: #4b5563;
}

.logos-curso-conteudo iframe,
.logos-curso-conteudo embed,
.logos-curso-conteudo video {
    max-width: 100% !important;
}

/* Tabelas */

.logos-curso-tabela-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    margin: 0 0 1.4em !important;
}

.logos-curso-conteudo table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 0 0 1.4em !important;
}

.logos-curso-tabela-wrap table {
    margin-bottom: 0 !important;
}

.logos-curso-conteudo th,
.logos-curso-conteudo td {
    border: 1px solid #e2d8d9 !important;
    padding: 10px 12px !important;
    text-align: left;
    vertical-align: top !important;
}

.logos-curso-conteudo th {
    background: #77242F !important;
    color: #ffffff;
    font-weight: 600;
}

.logos-curso-conteudo tbody tr:nth-child(even) td {
    background: #faf7f7 !important;
}

/* === Seções === */

.logos-curso-secao-titulo {
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 16px !important;
}

/* === Anexos === */

.logos-curso-anexos {
    margin-bottom: 40px !important;
    padding: 24px !important;
    background: #faf7f7 !important;
    border-radius: 14px !important;
}

.logos-curso-anexos-lista {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.logos-curso-anexo {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: #ffffff !important;
    border: 1px solid #ece3e4 !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    color: #111827 !important;
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: border-color 0.2s ease, transform 0.2s ease !important;
}

.logos-curso-anexo:hover {
    border-color: #77242F !important;
    transform: translateY(-2px) !important;
}

.logos-curso-anexo svg {
    flex: 0 0 auto !important;
    color: #77242F !important;
}

.logos-curso-anexo-nome {
    flex: 1 1 auto !important;
    font-weight: 600 !important;
}

.logos-curso-anexo-meta {
    flex: 0 0 auto !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    white-space: nowrap !important;
}

/* === Ação / CTA === */

.logos-curso-acao {
    margin-top: 8px !important;
}

.logos-curso-cta {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: #77242F !important;
    color: #ffffff !important;
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 16px 32px !important;
    border-radius: 8px !important;
    transition: background 0.2s ease !important;
}

.logos-curso-cta:hover {
    background: #5a1a23 !important;
    color: #ffffff !important;
}

/* === Lista de espera (curso fechado) === */

.logos-curso-espera {
    background: #faf7f7 !important;
    border-radius: 16px !important;
    padding: 28px !important;
}

.logos-curso-espera-texto {
    font-family: 'Source Sans Pro', 'Source Sans 3', sans-serif !important;
    font-size: 15px !important;
    color: #4b5563 !important;
    margin: 0 0 20px !important;
    line-height: 1.6 !important;
}

.logos-cursos-waitlist-form--inline {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
}

.logos-cursos-waitlist-form--inline .logos-cursos-waitlist-error {
    grid-column: 1 / -1 !important;
}

.logos-cursos-waitlist-form--inline .logos-cursos-waitlist-btn {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
    min-width: 220px !important;
}

.logos-curso-espera .logos-cursos-waitlist-success {
    text-align: center !important;
}

/* === Responsivo === */

@media (max-width: 900px) {
    .logos-curso-titulo { font-size: 32px !important; }
}

@media (max-width: 640px) {
    .logos-curso-single { padding: 32px 16px 48px !important; }
    .logos-curso-titulo { font-size: 26px !important; }
    .logos-curso-conteudo { font-size: 16px; }
    .logos-curso-conteudo h2 { font-size: 23px; }
    .logos-curso-conteudo h3 { font-size: 20px; }
    .logos-cursos-waitlist-form--inline { grid-template-columns: 1fr !important; }
    .logos-cursos-waitlist-form--inline .logos-cursos-waitlist-btn { width: 100% !important; min-width: 0 !important; }
    .logos-curso-anexos { padding: 18px !important; }
    .logos-curso-anexo { flex-wrap: wrap !important; }
    .logos-curso-cta { width: 100% !important; justify-content: center !important; }
}
