/* === A11y panel widget === */

.a11y-widget {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 950;
    font-family: var(--font, system-ui, sans-serif);
}

.a11y-trigger {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--primary, #12898b);
    color: #fff;
    border: 2px solid transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(18, 137, 139, 0.4);
    transition: transform 200ms ease, box-shadow 200ms ease, background 200ms ease;
    padding: 0;
}

.a11y-trigger:hover {
    transform: scale(1.06);
    box-shadow: 0 6px 18px rgba(18, 137, 139, 0.5);
}

.a11y-trigger:focus-visible {
    outline: 3px solid var(--primary, #12898b);
    outline-offset: 3px;
}

.a11y-trigger[aria-expanded="true"] {
    background: var(--primary-700, #0f6e56);
}

.a11y-panel {
    position: absolute;
    right: 0;
    bottom: calc(100% + 12px);
    width: 280px;
    background: #fff;
    border: 1px solid var(--rule, #e5e5dc);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 200ms ease, transform 200ms ease, visibility 200ms ease;
}

.a11y-panel[aria-hidden="false"] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.a11y-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px 10px;
    border-bottom: 1px solid var(--rule, #e5e5dc);
}

.a11y-panel-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--ink, #1a1a1a);
}

.a11y-panel-close {
    background: transparent;
    border: 0;
    cursor: pointer;
    color: var(--ink-3, #888);
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    transition: color 150ms ease, background 150ms ease;
}

.a11y-panel-close:hover {
    color: var(--ink, #1a1a1a);
    background: var(--bg-soft, #f5f5f0);
}

.a11y-panel-close:focus-visible {
    outline: 2px solid var(--primary, #12898b);
    outline-offset: 1px;
}

.a11y-panel-options {
    padding: 8px 0;
}

.a11y-option {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    gap: 10px;
}

.a11y-option-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary, #12898b);
    flex-shrink: 0;
}

.a11y-option-text {
    flex: 1;
    font-size: 13px;
    font-weight: 500;
    color: var(--ink, #1a1a1a);
}

.a11y-toggle {
    width: 38px;
    height: 22px;
    background: #d4d4cc;
    border: 0;
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background 200ms ease;
    flex-shrink: 0;
    padding: 0;
}

.a11y-toggle:focus-visible {
    outline: 2px solid var(--primary, #12898b);
    outline-offset: 2px;
}

.a11y-toggle-thumb {
    position: absolute;
    left: 2px;
    top: 2px;
    width: 18px;
    height: 18px;
    background: #fff;
    border-radius: 50%;
    transition: left 200ms ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.a11y-toggle[aria-checked="true"] {
    background: var(--primary, #12898b);
}

.a11y-toggle[aria-checked="true"] .a11y-toggle-thumb {
    left: 18px;
}

.a11y-panel-footer {
    padding: 8px 16px 12px;
    border-top: 1px solid var(--rule, #e5e5dc);
    text-align: center;
}

.a11y-panel-shortcut {
    font-size: 11px;
    color: var(--ink-3, #888);
    letter-spacing: 0.3px;
}

@media (max-width: 600px) {
    .a11y-widget { right: 12px; bottom: 80px; }
    .a11y-panel { width: calc(100vw - 24px); max-width: 320px; right: 0; }
}

/* === Modo Y, alto contraste reforçado === */
/* Estratégia: força branco/preto em TUDO via cascata !important.
   Widget a11y é exceção, restaura cores próprias depois. */

html.hc-on {
    color-scheme: light only;
    --ink: #000000;
    --ink-2: #000000;
    --ink-3: #000000;
    --bg: #ffffff;
    --bg-soft: #ffffff;
    --primary: #062c22;
    --primary-50: #d9eae3;
    --primary-700: #041f17;
    --primary-200: #062c22;
    --rule: #000000;
    --rule-2: #000000;
    --warn-soft: #ffffff;
    --danger-soft: #ffffff;
    --cat-cardio-soft: #ffffff;
    --cat-neuro-soft: #ffffff;
    --cat-endo-soft: #ffffff;
    --cat-infecto-soft: #ffffff;
    --cat-mulher-soft: #ffffff;
    --cat-edu-soft: #ffffff;
}

html.hc-on,
html.hc-on body {
    background-color: #ffffff !important;
    color: #000 !important;
}

html.hc-on body * {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    text-shadow: none !important;
}

/* Bordas pretas em containers */
html.hc-on .card,
html.hc-on article,
html.hc-on .post,
html.hc-on .tutor-bubble,
html.hc-on .prescription-card,
html.hc-on .tutor-result,
html.hc-on .error-conduct,
html.hc-on .pill,
html.hc-on .author-pill,
html.hc-on .tag,
html.hc-on .disclaimer,
html.hc-on .bottom-sheet-content,
html.hc-on .is-style-callout-warn,
html.hc-on .is-style-callout-danger,
html.hc-on .is-style-callout-info,
html.hc-on .toc,
html.hc-on .cite-box,
html.hc-on .faq-item,
html.hc-on .wp-block-group {
    border: 1px solid #000 !important;
}

/* Headings */
html.hc-on h1,
html.hc-on h2,
html.hc-on h3,
html.hc-on h4,
html.hc-on h5,
html.hc-on h6 {
    font-weight: 800 !important;
}

html.hc-on strong,
html.hc-on b {
    font-weight: 800 !important;
}

/* Links no conteúdo principal */
html.hc-on a:not(:where(.a11y-trigger, .a11y-panel-close, .bottom-nav-item)) {
    color: #062c22 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    font-weight: 700 !important;
}

html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):hover,
html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):focus {
    background-color: #062c22 !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* Bottom-nav */
html.hc-on .bottom-nav {
    border-top: 1px solid #000 !important;
}

html.hc-on .bottom-nav-item {
    color: #000 !important;
    font-weight: 700 !important;
}

html.hc-on .bottom-nav-item.is-active {
    color: #062c22 !important;
    background-color: #d9eae3 !important;
    border-bottom: 3px solid #062c22 !important;
}

/* Botões */
html.hc-on button:not(.a11y-trigger):not(.a11y-toggle):not(.a11y-panel-close):not(.bottom-nav-item),
html.hc-on .btn,
html.hc-on input[type="button"],
html.hc-on input[type="submit"] {
    background-color: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    font-weight: 700 !important;
}

html.hc-on button:not(.a11y-trigger):not(.a11y-toggle):not(.a11y-panel-close):hover,
html.hc-on .btn:hover {
    background-color: #062c22 !important;
    color: #fff !important;
}

html.hc-on input,
html.hc-on textarea,
html.hc-on select {
    background-color: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}

html.hc-on :focus-visible {
    outline: 3px solid #062c22 !important;
    outline-offset: 2px !important;
}

/* SVG icons mantém visibilidade */
html.hc-on svg:not(.a11y-trigger svg):not(.a11y-panel svg) {
    color: #000 !important;
}

html.hc-on svg:not(.a11y-trigger svg):not(.a11y-panel svg) [stroke]:not([stroke="none"]) {
    stroke: #000 !important;
}

/* Imagens com leve aumento de contraste */
html.hc-on img:not([src*=".svg"]) {
    filter: contrast(1.15) saturate(1.1);
}

/* Bottom-sheet backdrop mantém escuro semi-transparente */
html.hc-on .bottom-sheet-backdrop {
    background-color: rgba(0, 0, 0, 0.6) !important;
}

/* Skip-to-content reforçado */
html.hc-on .skip-to-content:focus {
    background-color: #062c22 !important;
    color: #fff !important;
    outline: 3px solid #fff !important;
    outline-offset: 2px !important;
}

/* === Widget a11y é IMUNE ao modo HC === */
html.hc-on .a11y-widget,
html.hc-on .a11y-widget * {
    background-image: none !important;
}

html.hc-on .a11y-trigger {
    background-color: #062c22 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
}

html.hc-on .a11y-trigger svg {
    color: #fff !important;
}

html.hc-on .a11y-trigger svg [stroke] {
    stroke: #fff !important;
}

html.hc-on .a11y-panel {
    background-color: #fff !important;
    border: 1px solid #000 !important;
    color: #000 !important;
}

html.hc-on .a11y-panel-header {
    background-color: #fff !important;
    border-bottom: 1px solid #000 !important;
}

html.hc-on .a11y-panel-title,
html.hc-on .a11y-option-text {
    color: #000 !important;
    font-weight: 700 !important;
}

html.hc-on .a11y-panel-close {
    color: #000 !important;
    background-color: #fff !important;
}

html.hc-on .a11y-option-icon {
    color: #062c22 !important;
}

html.hc-on .a11y-option-icon svg [stroke] {
    stroke: #062c22 !important;
}

html.hc-on .a11y-toggle {
    background-color: #fff !important;
    border: 1px solid #000 !important;
}

html.hc-on .a11y-toggle[aria-checked="true"] {
    background-color: #062c22 !important;
    border-color: #000 !important;
}

html.hc-on .a11y-toggle-thumb {
    background-color: #fff !important;
    border: 1px solid #000;
}

html.hc-on .a11y-panel-footer {
    background-color: #fff !important;
    border-top: 1px solid #000 !important;
}

html.hc-on .a11y-panel-shortcut {
    color: #000 !important;
}

/* === Fonte maior === */

/* === DESATIVADO_FASE1_GLOBAL_HEADINGS_BEGIN ===
   Removido: var(--fs-*) com TOKEN_OVERRIDES toma conta.
html.font-larger body {
    font-size: 18px !important;
}

html.font-larger h1 {
    font-size: clamp(36px, 5.5vw, 52px) !important;
}

html.font-larger h2 {
    font-size: clamp(26px, 3.6vw, 34px) !important;
}

html.font-larger h3 {
    font-size: clamp(22px, 3vw, 26px) !important;
}

html.font-larger p,
html.font-larger li,
html.font-larger .content p,
html.font-larger .content li {
    font-size: 19px !important;
    line-height: 1.75 !important;
}
=== DESATIVADO_FASE1_GLOBAL_HEADINGS_END === */
/* === Refinements do modo HC === */

/* Wrapper a11y é transparente, evita retângulo branco ao redor do botão */
html.hc-on .a11y-widget {
    background: transparent !important;
    background-image: none !important;
}

/* Trigger com ring duplo branco/preto, feedback visual de modo ativo */
html.hc-on .a11y-trigger {
    background-color: #062c22 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
    box-shadow: 0 0 0 4px #fff, 0 0 0 6px #000 !important;
}

/* Backdrop mais escuro, foco maior no sheet branco */
html.hc-on .bottom-sheet-backdrop {
    background-color: rgba(0, 0, 0, 0.85) !important;
    opacity: 1 !important;
}

/* Item ativo em bottom-sheet (várias classes possíveis pra cobrir variantes) */
html.hc-on .bottom-sheet a.is-active,
html.hc-on .bottom-sheet a.is-current,
html.hc-on .bottom-sheet a.current-cat,
html.hc-on .bottom-sheet a[aria-current],
html.hc-on .bottom-sheet [class*="is-active"],
html.hc-on .bottom-sheet [class*="is-current"],
html.hc-on .bottom-sheet-content a.is-active,
html.hc-on .bottom-sheet-content [aria-current] {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
    border-left: 4px solid #062c22 !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
}

/* Item normal de bottom-sheet com border bottom pra separação clara */
html.hc-on .bottom-sheet-content a:not(.is-active):not(.is-current) {
    border-bottom: 1px solid #000 !important;
    padding: 14px 16px !important;
}

/* Skip-link reforçado em hc-on */
html.hc-on .skip-to-content:focus {
    background-color: #062c22 !important;
    color: #fff !important;
    outline: 3px solid #fff !important;
    outline-offset: -2px !important;
    box-shadow: 0 0 0 5px #000 !important;
}

/* Author card avatar (que tinha gradiente) vira sólido */
html.hc-on [class*="author"],
html.hc-on [class*="avatar"] {
    background-color: #062c22 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
}

html.hc-on [class*="author"] *,
html.hc-on [class*="avatar"] * {
    color: inherit !important;
}

/* === Reforços específicos === */

/* Painel a11y permanece invisível enquanto aria-hidden=true (anti body* override) */
html.hc-on .a11y-panel[aria-hidden="true"] {
    opacity: 0 !important;
    visibility: hidden !important;
    background: transparent !important;
}

/* a11y-widget e seus descendentes não recebem fundo branco do body* */
html.hc-on .a11y-widget,
html.hc-on .a11y-widget > * {
    background: transparent !important;
    background-image: none !important;
}

/* Item ativo do bottom-sheet (classe exata: .bottom-sheet-item.is-active) */
html.hc-on .bottom-sheet-item.is-active,
html.hc-on a.bottom-sheet-item.is-active,
html.hc-on .bottom-sheet-content .bottom-sheet-item.is-active {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border-left: 4px solid #000 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

html.hc-on .bottom-sheet-item.is-active *,
html.hc-on a.bottom-sheet-item.is-active * {
    color: #ffffff !important;
    background: transparent !important;
}

/* Item normal de bottom-sheet */
html.hc-on .bottom-sheet-item:not(.is-active) {
    background-color: #ffffff !important;
    color: #000 !important;
    border-bottom: 1px solid #000 !important;
}

/* Dot/bolinha de cor da categoria mantém visibilidade (indicador não-textual) */
html.hc-on .cat-dot,
html.hc-on .category-dot,
html.hc-on [class*="-color-dot"],
html.hc-on .bottom-sheet-item .dot {
    background-color: #062c22 !important;
    border: 1px solid #000 !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
}

/* === Fix definitivo do retângulo branco do panel === */
/* Quando panel fechado: display none, remove completamente do layout */
html.hc-on .a11y-panel[aria-hidden="true"] {
    display: none !important;
}

/* Quando aberto, força visibility/opacity legíveis (sobrepõe regras anteriores) */
html.hc-on .a11y-panel[aria-hidden="false"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background-color: #ffffff !important;
    border: 1px solid #000 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

/* Mesma regra fora do hc-on, para o panel default */
.a11y-panel[aria-hidden="true"] {
    pointer-events: none;
}

/* === Ajustes estéticos finais hc-on === */

/* Z-index do widget abaixo do bottom-sheet (150), evita sobreposição */
.a11y-widget {
    z-index: 140 !important;
}

@media (max-width: 600px) {
    .a11y-widget {
        right: 12px;
        bottom: 100px;
    }
}

/* Item ativo limpo: verde-escuro, texto branco, sem border-left */
html.hc-on .bottom-sheet-item.is-active,
html.hc-on a.bottom-sheet-item.is-active,
html.hc-on .bottom-sheet-content a.bottom-sheet-item.is-active {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-bottom: 1px solid #000 !important;
    border-left: none !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    padding: 14px 16px !important;
}

html.hc-on .bottom-sheet-item.is-active *,
html.hc-on a.bottom-sheet-item.is-active * {
    color: #ffffff !important;
    background: transparent !important;
}

/* Item normal: branco, hairline 1px preto */
html.hc-on .bottom-sheet-item:not(.is-active),
html.hc-on a.bottom-sheet-item:not(.is-active),
html.hc-on .bottom-sheet-content a.bottom-sheet-item:not(.is-active) {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000000 !important;
    border: none !important;
    border-bottom: 1px solid #000 !important;
    border-left: none !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 14px 16px !important;
}

html.hc-on .bottom-sheet-item:not(.is-active) *,
html.hc-on a.bottom-sheet-item:not(.is-active) * {
    color: #000000 !important;
    background: transparent !important;
}

/* Hover/focus de item normal */
html.hc-on .bottom-sheet-item:not(.is-active):hover,
html.hc-on .bottom-sheet-item:not(.is-active):focus {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
}

/* Bolinha categoria: preta sólida 8px sem border */
html.hc-on .cat-dot,
html.hc-on .category-dot,
html.hc-on [class*="-color-dot"],
html.hc-on .bottom-sheet-item .dot,
html.hc-on .bottom-sheet-item-icon,
html.hc-on .bottom-sheet-item .bottom-sheet-item-color {
    background-color: #000000 !important;
    border: none !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
}

/* Item ativo: bolinha branca em vez de preta para contraste */
html.hc-on .bottom-sheet-item.is-active .cat-dot,
html.hc-on .bottom-sheet-item.is-active .category-dot,
html.hc-on .bottom-sheet-item.is-active [class*="-color-dot"],
html.hc-on .bottom-sheet-item.is-active .dot,
html.hc-on .bottom-sheet-item.is-active .bottom-sheet-item-icon {
    background-color: #ffffff !important;
}

/* Item-count number: alinhado à direita, peso correto */
html.hc-on .bottom-sheet-item-count {
    color: #000 !important;
    font-weight: 700 !important;
    background: transparent !important;
}

html.hc-on .bottom-sheet-item.is-active .bottom-sheet-item-count {
    color: #ffffff !important;
    background: transparent !important;
}

/* Bottom-sheet content em si: branco, border preto */
html.hc-on .bottom-sheet-content {
    background-color: #ffffff !important;
    border: 1px solid #000 !important;
    border-bottom: none !important;
}

/* Handle do bottom-sheet preto */
html.hc-on .bottom-sheet-handle {
    background-color: #000 !important;
}

/* === Wrappers escuros: fundo verde-escuro + filhos transparentes === */
/* Cobertura: cards com gradient original (autor, CTA, feedback, brand) */

html.hc-on .author-card,
html.hc-on .author-info,
html.hc-on [class*="author-card"],
html.hc-on .wp-block-group.is-style-cta-box,
html.hc-on .feedback-card,
html.hc-on .feedback-box,
html.hc-on .cta-box,
html.hc-on .brand-icon,
html.hc-on .brand-icon-wrapper {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
}

html.hc-on .author-card *,
html.hc-on .author-info *,
html.hc-on [class*="author-card"] *,
html.hc-on .wp-block-group.is-style-cta-box *,
html.hc-on .feedback-card *,
html.hc-on .feedback-box *,
html.hc-on .cta-box * {
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
}

/* Pills, badges e eyebrows DENTRO de wrapper escuro: fundo branco transparente, texto branco */
html.hc-on .author-card .pill,
html.hc-on .author-card [class*="pill"],
html.hc-on .author-card .eyebrow,
html.hc-on .wp-block-group.is-style-cta-box .pill,
html.hc-on .wp-block-group.is-style-cta-box [class*="pill"],
html.hc-on .wp-block-group.is-style-cta-box .eyebrow,
html.hc-on .feedback-card .pill,
html.hc-on .feedback-card .eyebrow {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    font-weight: 700 !important;
}

/* Botões dentro de wrapper escuro: branco com texto verde-escuro */
html.hc-on .author-card button,
html.hc-on .author-card .btn,
html.hc-on .author-card a.btn,
html.hc-on .wp-block-group.is-style-cta-box button,
html.hc-on .wp-block-group.is-style-cta-box .btn,
html.hc-on .wp-block-group.is-style-cta-box a.btn,
html.hc-on .feedback-card button,
html.hc-on .feedback-card .btn {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 2px solid #ffffff !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

html.hc-on .author-card button:hover,
html.hc-on .wp-block-group.is-style-cta-box button:hover,
html.hc-on .feedback-card button:hover {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
}

/* Links dentro de wrapper escuro: brancos sublinhados */
html.hc-on .author-card a:not(.btn),
html.hc-on .wp-block-group.is-style-cta-box a:not(.btn),
html.hc-on .feedback-card a:not(.btn) {
    color: #ffffff !important;
    text-decoration: underline !important;
    background: transparent !important;
}

/* Avatar circle dentro de author-card: fica transparente, mantém ícone branco */
html.hc-on .author-avatar,
html.hc-on .avatar-circle,
html.hc-on [class*="avatar-circle"] {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
}

/* Brand icon: verde-escuro sólido com SVG branco */
html.hc-on .brand-icon,
html.hc-on .brand-icon-wrapper {
    background-color: #062c22 !important;
    color: #ffffff !important;
}

html.hc-on .brand-icon svg,
html.hc-on .brand-icon-wrapper svg {
    color: #ffffff !important;
}

html.hc-on .brand-icon svg [stroke],
html.hc-on .brand-icon-wrapper svg [stroke] {
    stroke: #ffffff !important;
}

html.hc-on .brand-icon svg [fill]:not([fill="none"]),
html.hc-on .brand-icon-wrapper svg [fill]:not([fill="none"]) {
    fill: #ffffff !important;
}

/* TOC: limpar visual */
html.hc-on .toc {
    background-color: #ffffff !important;
    border: 1px solid #000 !important;
}

html.hc-on .toc a {
    border-left: 3px solid transparent !important;
    color: #062c22 !important;
}

html.hc-on .toc a:hover,
html.hc-on .toc a.active {
    background-color: #d9eae3 !important;
    border-left: 3px solid #062c22 !important;
    font-weight: 700 !important;
}

/* Cite-box (caixa de citação ABNT): branco com border preto */
html.hc-on .cite-box {
    background-color: #ffffff !important;
    border: 1px solid #000 !important;
    color: #000 !important;
}

html.hc-on .cite-box * {
    background-color: transparent !important;
    color: #000 !important;
}

html.hc-on .cite-box a {
    color: #062c22 !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
}

html.hc-on .cite-box .copy-btn {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 1px solid #000 !important;
    font-weight: 700 !important;
}

html.hc-on .cite-box .copy-btn:hover {
    background-color: #062c22 !important;
    color: #ffffff !important;
}

/* Skip-link em hc-on, alinhado */
html.hc-on .skip-to-content {
    background-color: #062c22 !important;
    color: #fff !important;
    font-weight: 700 !important;
}

/* Bottom-nav reforçado em hc-on (state ativo claro) */
html.hc-on .bottom-nav {
    background-color: #ffffff !important;
    border-top: 1px solid #000 !important;
}

html.hc-on .bottom-nav-item {
    background-color: #ffffff !important;
    color: #000 !important;
    border: none !important;
}

html.hc-on .bottom-nav-item.is-active {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
    border-top: 3px solid #062c22 !important;
    font-weight: 800 !important;
}

/* === Fix 1: remover border branco indesejado em filhos de wrapper escuro === */
html.hc-on .author-card *,
html.hc-on .author-info *,
html.hc-on [class*="author-card"] *,
html.hc-on .wp-block-group.is-style-cta-box *,
html.hc-on .feedback-card *,
html.hc-on .feedback-box *,
html.hc-on .cta-box * {
    border: none !important;
}

/* Re-aplica border só onde realmente queremos: pills e botões */
html.hc-on .author-card .pill,
html.hc-on .author-card [class*="pill"],
html.hc-on .author-card .eyebrow,
html.hc-on .wp-block-group.is-style-cta-box .pill,
html.hc-on .wp-block-group.is-style-cta-box [class*="pill"],
html.hc-on .wp-block-group.is-style-cta-box .eyebrow,
html.hc-on .feedback-card .pill,
html.hc-on .feedback-card .eyebrow {
    border: 1.5px solid #ffffff !important;
}

html.hc-on .author-card button,
html.hc-on .author-card .btn,
html.hc-on .wp-block-group.is-style-cta-box button,
html.hc-on .wp-block-group.is-style-cta-box .btn,
html.hc-on .feedback-card button,
html.hc-on .feedback-card .btn {
    border: 2px solid #ffffff !important;
}

/* === Fix 2: cobrir mais variações de cards escuros (genérico) === */
/* Detecta wrappers genéricos que provavelmente têm gradient escuro */
html.hc-on .wp-block-group.is-style-callout-info,
html.hc-on .wp-block-group.is-style-cta-primary,
html.hc-on .wp-block-group.is-style-cta-dark,
html.hc-on .wp-block-group.is-style-feedback,
html.hc-on .feedback-block,
html.hc-on .cta-primary,
html.hc-on .cta-dark,
html.hc-on [class*="-callout-info"],
html.hc-on [class*="-cta-"],
html.hc-on [class*="feedback-"] {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
}

html.hc-on .wp-block-group.is-style-callout-info *,
html.hc-on .wp-block-group.is-style-cta-primary *,
html.hc-on .wp-block-group.is-style-cta-dark *,
html.hc-on .wp-block-group.is-style-feedback *,
html.hc-on .feedback-block *,
html.hc-on .cta-primary *,
html.hc-on .cta-dark *,
html.hc-on [class*="-callout-info"] *,
html.hc-on [class*="-cta-"] *,
html.hc-on [class*="feedback-"] * {
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
}

/* Pills e botões dentro desses cards genéricos */
html.hc-on .wp-block-group.is-style-callout-info .pill,
html.hc-on .wp-block-group.is-style-callout-info .eyebrow,
html.hc-on [class*="-cta-"] .pill,
html.hc-on [class*="-cta-"] .eyebrow,
html.hc-on [class*="feedback-"] .pill,
html.hc-on [class*="feedback-"] .eyebrow {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    font-weight: 700 !important;
}

html.hc-on .wp-block-group.is-style-callout-info button,
html.hc-on .wp-block-group.is-style-callout-info .btn,
html.hc-on [class*="-cta-"] button,
html.hc-on [class*="-cta-"] .btn,
html.hc-on [class*="feedback-"] button,
html.hc-on [class*="feedback-"] .btn {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 2px solid #ffffff !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* === Fix 3: Botão a11y mais discreto em mobile === */
@media (max-width: 600px) {
    .a11y-trigger {
        width: 40px !important;
        height: 40px !important;
    }
    .a11y-trigger svg {
        width: 18px !important;
        height: 18px !important;
    }
    .a11y-widget {
        right: 10px !important;
        bottom: 90px !important;
    }
}

/* Trigger semi-transparente quando inativo, total quando hover/focus */
.a11y-trigger {
    opacity: 0.85;
    transition: opacity 200ms ease, transform 200ms ease, box-shadow 200ms ease;
}

.a11y-trigger:hover,
.a11y-trigger:focus-visible,
.a11y-trigger[aria-expanded="true"] {
    opacity: 1;
}

/* Em hc-on, opacity total sempre (acessibilidade) */
html.hc-on .a11y-trigger {
    opacity: 1 !important;
}

/* === Classes reais (descobertas via diagnóstico) === */

/* === .author-box (card autor) === */
html.hc-on .author-box {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
}

html.hc-on .author-box * {
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
}

html.hc-on .author-box .author-avatar,
html.hc-on .author-box [class*="avatar"] {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    font-weight: 700 !important;
}

html.hc-on .author-box .author-pill {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

html.hc-on .author-box .author-name,
html.hc-on .author-box [class*="author-name"] {
    color: #ffffff !important;
    font-weight: 700 !important;
}

html.hc-on .author-box a {
    color: #ffffff !important;
    text-decoration: underline !important;
    background: transparent !important;
}

/* === .contact-cta e .contact-cta-wrap (Fale com a equipe) === */
html.hc-on .contact-cta-wrap,
html.hc-on .contact-cta {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
}

html.hc-on .contact-cta-wrap *,
html.hc-on .contact-cta * {
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
}

html.hc-on .contact-cta .eyebrow,
html.hc-on .contact-cta-wrap .eyebrow,
html.hc-on .contact-cta [class*="pill"],
html.hc-on .contact-cta-wrap [class*="pill"] {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
}

html.hc-on .contact-cta button,
html.hc-on .contact-cta .btn,
html.hc-on .contact-cta a.btn,
html.hc-on .contact-cta-wrap button,
html.hc-on .contact-cta-wrap .btn,
html.hc-on .contact-cta-wrap a.btn {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 2px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

html.hc-on .contact-cta button:hover,
html.hc-on .contact-cta-wrap button:hover {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
}

html.hc-on .contact-cta a:not(.btn),
html.hc-on .contact-cta-wrap a:not(.btn) {
    color: #ffffff !important;
    text-decoration: underline !important;
    background: transparent !important;
}

/* === Callouts coloridos (warn, danger, info): branco com border distintivo === */
html.hc-on .wp-block-group.is-style-callout-warn {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    border-left: 6px solid #000 !important;
}

html.hc-on .wp-block-group.is-style-callout-danger {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    border-left: 6px solid #062c22 !important;
}

html.hc-on .wp-block-group.is-style-callout-info {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    border-left: 6px solid #062c22 !important;
}

html.hc-on .wp-block-group.is-style-callout-warn *,
html.hc-on .wp-block-group.is-style-callout-danger *,
html.hc-on .wp-block-group.is-style-callout-info * {
    background: transparent !important;
    color: #000 !important;
}

/* === Menu Ações: padronizar items (link e botão visualmente iguais) === */
html.hc-on .actions a,
html.hc-on [class*="action-list"] a,
html.hc-on .action-item,
html.hc-on .article-actions a,
html.hc-on .article-actions button {
    text-decoration: none !important;
    background-color: #ffffff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    font-weight: 700 !important;
}

html.hc-on .actions a:hover,
html.hc-on [class*="action-list"] a:hover,
html.hc-on .action-item:hover,
html.hc-on .article-actions a:hover,
html.hc-on .article-actions button:hover {
    background-color: #062c22 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* === Pullquote === */
html.hc-on .wp-block-quote.is-style-pullquote-cardio {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
    border-left: 6px solid #000 !important;
}

html.hc-on .wp-block-quote.is-style-pullquote-cardio * {
    background: transparent !important;
    color: #000 !important;
}

/* === Pillar list === */
html.hc-on .wp-block-list.is-style-pillar-list {
    background: transparent !important;
}

/* === FIX AGRESSIVO FINAL: wrappers escuros sem retângulos brancos === */
/* Inclui pseudo-elementos e remove tudo que possa renderizar como retângulo */

html.hc-on .author-box,
html.hc-on .contact-cta,
html.hc-on .contact-cta-wrap,
html.hc-on .wp-block-group.is-style-cta-box {
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

html.hc-on .author-box *,
html.hc-on .author-box *::before,
html.hc-on .author-box *::after,
html.hc-on .contact-cta *,
html.hc-on .contact-cta *::before,
html.hc-on .contact-cta *::after,
html.hc-on .contact-cta-wrap *,
html.hc-on .contact-cta-wrap *::before,
html.hc-on .contact-cta-wrap *::after,
html.hc-on .wp-block-group.is-style-cta-box *,
html.hc-on .wp-block-group.is-style-cta-box *::before,
html.hc-on .wp-block-group.is-style-cta-box *::after {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Avatar circle (só esses recebem fundo) */
html.hc-on .author-box .author-avatar,
html.hc-on .author-box [class*="avatar"],
html.hc-on .contact-cta-wrap .icon-circle,
html.hc-on .contact-cta-wrap [class*="icon-"] {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    font-weight: 700 !important;
}

/* Pills/eyebrows (só essas recebem border) */
html.hc-on .author-box .author-pill,
html.hc-on .author-box [class*="-pill"],
html.hc-on .contact-cta .eyebrow,
html.hc-on .contact-cta-wrap .eyebrow,
html.hc-on .contact-cta [class*="-pill"],
html.hc-on .contact-cta-wrap [class*="-pill"],
html.hc-on .wp-block-group.is-style-cta-box .eyebrow {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    display: inline-block !important;
}

/* Botões dentro de wrapper escuro */
html.hc-on .author-box button,
html.hc-on .author-box .btn,
html.hc-on .author-box a.btn,
html.hc-on .contact-cta button,
html.hc-on .contact-cta .btn,
html.hc-on .contact-cta a.btn,
html.hc-on .contact-cta-wrap button,
html.hc-on .contact-cta-wrap .btn,
html.hc-on .contact-cta-wrap a.btn,
html.hc-on .wp-block-group.is-style-cta-box button,
html.hc-on .wp-block-group.is-style-cta-box .btn,
html.hc-on .wp-block-group.is-style-cta-box a.btn {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 2px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Links dentro de wrapper escuro (não-btn) */
html.hc-on .author-box a:not(.btn),
html.hc-on .contact-cta a:not(.btn),
html.hc-on .contact-cta-wrap a:not(.btn),
html.hc-on .wp-block-group.is-style-cta-box a:not(.btn) {
    color: #ffffff !important;
    text-decoration: underline !important;
    background: transparent !important;
}

/* === Menu Ações: classe REAL é .toc-actions === */
html.hc-on .toc-actions a,
html.hc-on .toc-actions button {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

html.hc-on .toc-actions a *,
html.hc-on .toc-actions button * {
    color: #000 !important;
    background: transparent !important;
}

html.hc-on .toc-actions a:hover,
html.hc-on .toc-actions button:hover {
    background-color: #062c22 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

html.hc-on .toc-actions a:hover *,
html.hc-on .toc-actions button:hover * {
    color: #ffffff !important;
}

/* SVG icons dentro de toc-actions */
html.hc-on .toc-actions svg {
    color: #000 !important;
}

html.hc-on .toc-actions svg [stroke] {
    stroke: #000 !important;
}

html.hc-on .toc-actions a:hover svg [stroke],
html.hc-on .toc-actions button:hover svg [stroke] {
    stroke: #ffffff !important;
}

/* === Estrutura HTML REAL do .author-box (descoberta via diagnóstico) === */
/* aside.author-box > div.photo + div.info > span.label + h3 */

html.hc-on .author-box,
html.hc-on .author-box > .photo,
html.hc-on .author-box > .info,
html.hc-on .author-box .info > .label,
html.hc-on .author-box .info > h3,
html.hc-on .author-box .info > span,
html.hc-on .author-box .info > div,
html.hc-on .author-box .info > p,
html.hc-on .author-box .info > a {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

html.hc-on .author-box {
    background-color: #062c22 !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
}

html.hc-on .author-box *::before,
html.hc-on .author-box *::after {
    display: none !important;
    content: none !important;
    background: none !important;
    border: none !important;
}

html.hc-on .author-box .photo {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    font-weight: 800 !important;
}

html.hc-on .author-box .info .label {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    display: inline-block !important;
    font-size: 11px !important;
}

html.hc-on .author-box .info h3,
html.hc-on .author-box h3 {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    font-weight: 800 !important;
    margin-top: 6px !important;
}

/* === Estrutura HTML REAL do .contact-cta-wrap === */
/* section.contact-cta-wrap > div.wrap > aside.contact-cta > .label + h3 + p + a.btn-light */

html.hc-on .contact-cta-wrap,
html.hc-on .contact-cta-wrap > .wrap,
html.hc-on .contact-cta,
html.hc-on .contact-cta > .label,
html.hc-on .contact-cta > h3,
html.hc-on .contact-cta > p,
html.hc-on .contact-cta > a:not(.btn-light),
html.hc-on .contact-cta > span {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

html.hc-on .contact-cta-wrap {
    background-color: #062c22 !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
}

html.hc-on .contact-cta-wrap *::before,
html.hc-on .contact-cta-wrap *::after,
html.hc-on .contact-cta *::before,
html.hc-on .contact-cta *::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

html.hc-on .contact-cta .label {
    background-color: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    display: inline-block !important;
    font-size: 11px !important;
}

html.hc-on .contact-cta h3 {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    font-weight: 800 !important;
}

html.hc-on .contact-cta p {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
}

html.hc-on .contact-cta a:not(.btn-light) {
    color: #ffffff !important;
    text-decoration: underline !important;
    background: transparent !important;
    font-weight: 700 !important;
}

html.hc-on .contact-cta .btn-light,
html.hc-on .contact-cta a.btn-light {
    background-color: #ffffff !important;
    color: #062c22 !important;
    border: 2px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

html.hc-on .contact-cta .btn-light:hover,
html.hc-on .contact-cta a.btn-light:hover {
    background-color: #d9eae3 !important;
    color: #062c22 !important;
}

/* === Estrutura HTML REAL do .toc-actions === */
/* div.toc-actions > h3 + button (e/ou a) com SVG inline */

html.hc-on .toc-actions {
    background-color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 8px !important;
    padding: 14px !important;
}

html.hc-on .toc-actions > h3 {
    color: #000 !important;
    background: transparent !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

html.hc-on .toc-actions > button,
html.hc-on .toc-actions > a {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    padding: 10px 14px !important;
    margin-bottom: 8px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

html.hc-on .toc-actions > button *,
html.hc-on .toc-actions > a * {
    color: #000 !important;
    background: transparent !important;
}

html.hc-on .toc-actions > button:hover,
html.hc-on .toc-actions > a:hover {
    background-color: #062c22 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

html.hc-on .toc-actions > button:hover *,
html.hc-on .toc-actions > a:hover * {
    color: #ffffff !important;
}

html.hc-on .toc-actions svg [stroke] {
    stroke: currentColor !important;
}

html.hc-on .toc-actions svg [fill]:not([fill="none"]) {
    fill: currentColor !important;
}

/* === .author-pill (pill horizontal no header do artigo) === */
/* Estrutura: span.author-pill > span.avatar + span.author-info > span.name */

html.hc-on .meta-row {
    background-color: #ffffff !important;
}

html.hc-on .author-pill,
html.hc-on .author-pill > .avatar,
html.hc-on .author-pill > .author-info,
html.hc-on .author-pill .author-info > .name,
html.hc-on .author-pill > span,
html.hc-on .author-pill > * {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

html.hc-on .author-pill *::before,
html.hc-on .author-pill *::after {
    display: none !important;
    content: none !important;
}

/* Wrapper pill: verde-escuro com border preto, formato pill */
html.hc-on .author-pill {
    background-color: #062c22 !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
    border-radius: 999px !important;
    padding: 4px 12px 4px 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Avatar dentro do pill: round branco semi-transparente */
html.hc-on .author-pill .avatar {
    background-color: rgba(255,255,255,0.2) !important;
    color: #ffffff !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 50% !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    flex-shrink: 0 !important;
}

/* Nome do autor: texto branco */
html.hc-on .author-pill .author-info,
html.hc-on .author-pill .name {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    font-weight: 700 !important;
}

/* === Botão a11y mais discreto, sem ring duplo === */
/* Remove box-shadow ring, mantém só border 2px */
html.hc-on .a11y-trigger {
    background-color: #062c22 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
    opacity: 0.7 !important;
}

html.hc-on .a11y-trigger:hover,
html.hc-on .a11y-trigger:focus-visible,
html.hc-on .a11y-trigger[aria-expanded="true"] {
    opacity: 1 !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.7) !important;
}

/* SVG do trigger sempre branco */
html.hc-on .a11y-trigger svg {
    color: #ffffff !important;
}

html.hc-on .a11y-trigger svg [stroke] {
    stroke: #ffffff !important;
}

html.hc-on .a11y-trigger svg [fill]:not([fill="none"]) {
    fill: #ffffff !important;
}

/* === Fix 1: remove qualquer "quadrado branco" residual ao redor do trigger === */
html.hc-on .a11y-widget,
html.hc-on .a11y-widget::before,
html.hc-on .a11y-widget::after {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

html.hc-on .a11y-widget::before,
html.hc-on .a11y-widget::after {
    display: none !important;
    content: none !important;
}

/* Trigger: estado inactive sem outline, focus com outline mínimo */
html.hc-on .a11y-trigger {
    background-color: #062c22 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
    outline: none !important;
    opacity: 0.7 !important;
}

html.hc-on .a11y-trigger:focus,
html.hc-on .a11y-trigger:focus-visible,
html.hc-on .a11y-trigger[aria-expanded="true"] {
    outline: 2px solid #ffffff !important;
    outline-offset: 2px !important;
    opacity: 1 !important;
}

/* === Fix 2: TOC item .active com visual sutil (apenas border-left, sem fundo) === */
/* Assim, item .active (scroll-spy) destaca discretamente, e item :focus (clicado) se destaca claramente */
html.hc-on .toc a.active,
html.hc-on .toc-list a.active {
    background-color: transparent !important;
    border-left: 4px solid #062c22 !important;
    color: #062c22 !important;
    font-weight: 800 !important;
    padding-left: 12px !important;
    text-decoration: underline !important;
}

html.hc-on .toc a.active:hover,
html.hc-on .toc-list a.active:hover {
    background-color: #d9eae3 !important;
}

/* === Fix botão a11y, especificidade maior pra vencer body* === */
html.hc-on body .a11y-widget .a11y-trigger,
html.hc-on body .a11y-trigger {
    background: #062c22 !important;
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
    outline: none !important;
    opacity: 0.7 !important;
}

html.hc-on body .a11y-widget .a11y-trigger:focus,
html.hc-on body .a11y-widget .a11y-trigger:focus-visible,
html.hc-on body .a11y-widget .a11y-trigger:hover,
html.hc-on body .a11y-widget .a11y-trigger[aria-expanded="true"] {
    background: #062c22 !important;
    background-color: #062c22 !important;
    opacity: 1 !important;
    outline: 2px solid #ffffff !important;
    outline-offset: 2px !important;
}

/* === Fix TOC active sem barra vertical (destaca apenas pelo peso da fonte) === */
html.hc-on .toc a.active,
html.hc-on .toc-list a.active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-left: none !important;
    color: #062c22 !important;
    font-weight: 800 !important;
    padding-left: 0 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

html.hc-on .toc a.active:hover,
html.hc-on .toc-list a.active:hover {
    background-color: #d9eae3 !important;
    border: none !important;
}

/* === Widget a11y, MAIOR especificidade pra vencer body* === */
html.hc-on body div.a11y-widget,
html.hc-on body .a11y-widget {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

html.hc-on body div.a11y-widget::before,
html.hc-on body div.a11y-widget::after,
html.hc-on body .a11y-widget::before,
html.hc-on body .a11y-widget::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
}

/* SVG dentro do trigger sempre branco */
html.hc-on body .a11y-trigger,
html.hc-on body .a11y-trigger svg,
html.hc-on body .a11y-trigger svg * {
    color: #ffffff !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

html.hc-on body .a11y-trigger svg [stroke] {
    stroke: #ffffff !important;
}

html.hc-on body .a11y-trigger svg [fill]:not([fill="none"]) {
    fill: #ffffff !important;
}

/* === TOC: cobertura completa de states pra eliminar destaque visual === */
html.hc-on body .toc a,
html.hc-on body .toc a:link,
html.hc-on body .toc a:visited,
html.hc-on body .toc a:hover,
html.hc-on body .toc a:focus,
html.hc-on body .toc a:focus-visible,
html.hc-on body .toc a:active,
html.hc-on body .toc a.active,
html.hc-on body .toc a.active:hover,
html.hc-on body .toc a.active:focus,
html.hc-on body .toc a.active:focus-visible,
html.hc-on body .toc a.active:active {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-left: none !important;
    border-color: transparent !important;
    outline: none !important;
    color: #062c22 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    padding-left: 0 !important;
}

html.hc-on body .toc a.active {
    font-weight: 800 !important;
}

/* Focus visível só por outline mínimo */
html.hc-on body .toc a:focus-visible {
    outline: 2px solid #062c22 !important;
    outline-offset: 2px !important;
    background-color: #d9eae3 !important;
}

/* === Regras finais com ID, vence tudo via specificity (1,1,1) === */

html.hc-on #a11y-trigger-btn {
    background: #062c22 !important;
    background-color: #062c22 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
    outline: none !important;
    opacity: 0.7 !important;
}

html.hc-on #a11y-trigger-btn:hover,
html.hc-on #a11y-trigger-btn:focus,
html.hc-on #a11y-trigger-btn:focus-visible,
html.hc-on #a11y-trigger-btn[aria-expanded="true"] {
    background: #062c22 !important;
    background-color: #062c22 !important;
    opacity: 1 !important;
    outline: 2px solid #ffffff !important;
    outline-offset: 2px !important;
}

html.hc-on #a11y-trigger-btn svg {
    color: #ffffff !important;
}
html.hc-on #a11y-trigger-btn svg circle:not([fill]) {
    fill: none !important;
}

html.hc-on #a11y-trigger-btn svg [stroke] {
    stroke: #ffffff !important;
}

html.hc-on #a11y-trigger-btn svg [fill]:not([fill="none"]) {
    fill: #ffffff !important;
}

/* === toc-actions, sem underline (vence regra global agora reduzida) === */
html.hc-on .toc-actions a,
html.hc-on .toc-actions button,
html.hc-on .toc-actions > a,
html.hc-on .toc-actions > button {
    text-decoration: none !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000 !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
}

html.hc-on .toc-actions a:hover,
html.hc-on .toc-actions button:hover {
    background-color: #062c22 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* === TOC item active+focus com destaque visual claro === */
html.hc-on .toc a.active:focus,
html.hc-on .toc a.active:focus-visible {
    background-color: #d9eae3 !important;
    outline: 2px solid #062c22 !important;
    outline-offset: 2px !important;
    color: #062c22 !important;
}

/* === OVERRIDE FINAL pro menu Ações, classe duplicada vence cascade === */
html.hc-on body .toc-actions.toc-actions a,
html.hc-on body .toc-actions.toc-actions a:hover,
html.hc-on body .toc-actions.toc-actions a:focus,
html.hc-on body .toc-actions.toc-actions a:focus-visible,
html.hc-on body .toc-actions.toc-actions a:active,
html.hc-on body .toc-actions.toc-actions a:visited,
html.hc-on body .toc-actions.toc-actions button {
    text-decoration: none !important;
    -webkit-text-decoration: none !important;
    text-decoration-line: none !important;
    text-underline-offset: 0 !important;
    border-bottom: 0 !important;
}

/* === DEFINITIVO, specificity (0, 5, 3) pra vencer qualquer cascade === */
html.hc-on body .toc-actions.toc-actions a[href]:not(.never) {
    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000000 !important;
    border-radius: 4px !important;
    padding: 10px 14px !important;
    text-decoration: none !important;
    margin-bottom: 8px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
}

html.hc-on body .toc-actions.toc-actions a[href]:not(.never):hover,
html.hc-on body .toc-actions.toc-actions a[href]:not(.never):focus {
    background: #062c22 !important;
    background-color: #062c22 !important;
    color: #ffffff !important;
    border-color: #062c22 !important;
    text-decoration: none !important;
}

html.hc-on body .toc-actions.toc-actions a[href]:not(.never) svg {
    color: #000000 !important;
    stroke: #000000 !important;
    flex-shrink: 0 !important;
}

html.hc-on body .toc-actions.toc-actions a[href]:not(.never):hover svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
}

/* === Fix definitivo SVG do trigger, sem depender de currentColor === */
html.hc-on body #a11y-trigger-btn svg {
    color: #ffffff !important;
    fill: none !important;
    stroke: #ffffff !important;
}

html.hc-on body #a11y-trigger-btn svg circle {
    fill: none !important;
    stroke: #ffffff !important;
    stroke-width: 2 !important;
}

html.hc-on body #a11y-trigger-btn svg path {
    fill: #ffffff !important;
    stroke: #ffffff !important;
    stroke-width: 2 !important;
}

/* === Trigger SVG com tamanho visível 22x22 (estado normal e HC) === */
html body #a11y-trigger-btn svg,
html body .a11y-trigger svg {
    width: 22px !important;
    height: 22px !important;
    flex-shrink: 0 !important;
    overflow: visible !important;
}

html body #a11y-trigger-btn svg circle {
    stroke-width: 2 !important;
}

html body #a11y-trigger-btn svg path {
    stroke-width: 0 !important;
}

/* === FIX :focus do TOC em modo normal, evita ficar com 2 items destacados === */
html:not(.hc-on) .toc a:focus:not(.active),
html:not(.hc-on) .toc a:focus-visible:not(.active),
html:not(.hc-on) .toc-list a:focus:not(.active),
html:not(.hc-on) .toc-list a:focus-visible:not(.active) {
    background-color: transparent !important;
    color: var(--ink-2, #4a525a) !important;
    border-left-color: var(--rule, #e8eaee) !important;
    font-weight: 500 !important;
    outline: 2px solid var(--primary, #12898b) !important;
    outline-offset: -2px !important;
    border-radius: 6px !important;
}

/* :focus em item .active mantem destaque .active + outline */
html:not(.hc-on) .toc a.active:focus,
html:not(.hc-on) .toc a.active:focus-visible,
html:not(.hc-on) .toc-list a.active:focus,
html:not(.hc-on) .toc-list a.active:focus-visible {
    outline: 2px solid var(--primary, #12898b) !important;
    outline-offset: -2px !important;
}

/* === FIX hover sticky em touch devices, evita destaque fantasma após click === */
@media (hover: none) {
    .toc a:hover,
    .toc-list a:hover {
        background: transparent !important;
        background-color: transparent !important;
        color: var(--ink-2, #4a525a) !important;
        border-left-color: var(--rule, #e8eaee) !important;
    }
    /* Item .active ainda mantém destaque mesmo no estado hover */
    .toc a.active:hover,
    .toc-list a.active:hover {
        background-color: var(--primary-50, #e8f4f4) !important;
        color: var(--primary-700, #0d6e70) !important;
        border-left-color: var(--primary, #12898b) !important;
    }
}

/* OPCAO_6_BEGIN */
/* Hairline aesthetic completa: radius em sub-blocos, sem caixa em containers altos, decorativos brancos, cor preta em titles e textos verdes, statefuls invertidos, override stateful + search descendentes. */

/* Border-radius em containers proporcionais e sub-blocos */
html.hc-on .a11y-panel,
html.hc-on .cite-box,
html.hc-on .author-box,
html.hc-on .toc-actions,
html.hc-on .disclaimer,
html.hc-on .post-card,
html.hc-on .faq-item,
html.hc-on .wp-block-quote.is-style-pullquote-cardio,
html.hc-on .wp-block-group.is-style-callout-warn,
html.hc-on .wp-block-group.is-style-callout-danger,
html.hc-on .wp-block-group.is-style-callout-info,
html.hc-on .wp-block-list.is-style-pillar-list > li,
html.hc-on ul.is-style-pillar-list > li {
    border-radius: 6px !important;
}

/* Containers altos sem caixa */
html.hc-on .single,
html.hc-on .content,
html.hc-on .toc {
    border: none !important;
    border-radius: 0 !important;
}

/* Decorativos com fundo branco hairline (com border 1px) */
html.hc-on body .author-box,
html.hc-on body .author-pill,
html.hc-on body .contact-cta,
html.hc-on body .contact-cta-wrap,
html.hc-on body .brand-icon,
html.hc-on body .brand-icon-wrapper,
html.hc-on body .wp-block-group.is-style-cta-box,
html.hc-on body [class*="-cta-"],
html.hc-on body [class*="feedback-"] {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}

html.hc-on body .author-box *,
html.hc-on body .author-pill *,
html.hc-on body .contact-cta *,
html.hc-on body .contact-cta-wrap *,
html.hc-on body .brand-icon *,
html.hc-on body .brand-icon-wrapper *,
html.hc-on body .wp-block-group.is-style-cta-box * {
    color: #000 !important;
}

html.hc-on body .author-box svg path,
html.hc-on body .author-pill svg path,
html.hc-on body .brand-icon svg path,
html.hc-on body .brand-icon-wrapper svg path {
    fill: #000 !important;
    stroke: #000 !important;
}

/* Cor preta em titulos de posts (a sem class no .post-card) e textos com #062c22 herdado */
html.hc-on body .skip-link,
html.hc-on body .brand,
html.hc-on body .brand-foot,
html.hc-on body .logo,
html.hc-on body .mobile-menu-brand,
html.hc-on body .mobile-menu-search,
html.hc-on body .search-trigger,
html.hc-on body .hero-cat,
html.hc-on body .hero-cat-default,
html.hc-on body .cat-card,
html.hc-on body .cat-card-default,
html.hc-on body .tag,
html.hc-on body .tag-cat-default,
html.hc-on body .a11y-option-icon,
html.hc-on body .post-card a,
html.hc-on body .post-card h1 a,
html.hc-on body .post-card h2 a,
html.hc-on body .post-card h3 a,
html.hc-on body .post-card .entry-title,
html.hc-on body .post-card .entry-title a,
html.hc-on body .entry-title,
html.hc-on body .entry-title a,
html.hc-on body article h1 a,
html.hc-on body article h2 a,
html.hc-on body article h3 a {
    color: #000 !important;
}

/* Wrappers brand-foot e cat-card: apenas fundo branco SEM border (remove retangulo extra no .brand-desc do footer) */
html.hc-on body .brand-foot,
html.hc-on body .cat-card,
html.hc-on body .cat-card-default {
    background-color: #ffffff !important;
    background-image: none !important;
}

/* Statefuls invertidos preto/branco com specificity reforcada via duplicacao */
html.hc-on body .a11y-trigger.a11y-trigger,
html.hc-on body .a11y-toggle[aria-checked="true"][aria-checked="true"],
html.hc-on body .bottom-sheet-item.is-active.is-active,
html.hc-on body .bottom-nav-item.is-active.is-active,
html.hc-on body .skip-to-content.skip-to-content {
    background-color: #000 !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
}

html.hc-on body .a11y-trigger.a11y-trigger *,
html.hc-on body .bottom-sheet-item.is-active.is-active *,
html.hc-on body .bottom-nav-item.is-active.is-active * {
    color: #ffffff !important;
}

html.hc-on body .a11y-trigger.a11y-trigger svg path,
html.hc-on body .a11y-toggle[aria-checked="true"][aria-checked="true"] svg path {
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* Descendentes de statefuls + search-trigger + mobile-menu-search: matar fundo branco herdado da regra catch-all html.hc-on body * (linha 213) que aplica bg branco em todos descendentes */
html.hc-on body .a11y-trigger.a11y-trigger *,
html.hc-on body .a11y-toggle[aria-checked="true"][aria-checked="true"] *,
html.hc-on body .bottom-sheet-item.is-active.is-active *,
html.hc-on body .bottom-nav-item.is-active.is-active *,
html.hc-on body .skip-to-content.skip-to-content *,
html.hc-on body .search-trigger *,
html.hc-on body .mobile-menu-search * {
    background-color: transparent !important;
    background: transparent !important;
    background-image: none !important;
}
/* OPCAO_6_END */

/* OPCAO_6_VARS_BEGIN */
/* Redefinicao da var --primary em HC */
html.hc-on,
html.hc-on body {
    --primary: #000000 !important;
}

/* Override <a> para vencer regra hardcoded #062c22 do a11y.css */
html.hc-on body a:not(:where(.a11y-trigger, .a11y-panel-close, .bottom-nav-item, .skip-to-content, .a11y-toggle, .bottom-sheet-item.is-active.is-active, .bottom-nav-item.is-active.is-active)) {
    color: #000 !important;
}

/* .cat-card e variantes + .ic interno: forca fundo branco */
html.hc-on body [class*="cat-card"],
html.hc-on body [class*="cat-card"] .ic {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

html.hc-on body [class*="cat-card"] .ic {
    border: 1px solid #000 !important;
}

/* Author-pill avatar: corrige pill vazia (avatar com fundo branco e texto branco invisivel). Forca fundo branco + texto preto + border. */
html.hc-on body .author-pill .avatar,
html.hc-on body .avatar {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}

html.hc-on body .author-pill .name,
html.hc-on body .author-pill .author-info,
html.hc-on body .author-info * {
    color: #000 !important;
}

/* A11y-trigger reforco: tag button + duplicacao de classe (specificity 0,3,3) para vencer regras agrupadas do tema com 0,3,X */
html.hc-on body button.a11y-trigger,
html.hc-on body button.a11y-trigger.a11y-trigger {
    background-color: #000 !important;
    background-image: none !important;
    color: #ffffff !important;
}

/* Search trigger e btn-icon: forca bg branco + sem background-image em wrappers comuns desktop */
html.hc-on body .search-trigger,
html.hc-on body .btn-icon,
html.hc-on body header .btn,
html.hc-on body header [class*="search"] {
    background-color: #ffffff !important;
    background-image: none !important;
}

html.hc-on body .search-trigger svg,
html.hc-on body .btn-icon svg {
    color: #000 !important;
    fill: #000 !important;
    stroke: #000 !important;
}

/* Brand-foot e wrappers desktop: forca bg branco + sem background-image */
html.hc-on body .brand-foot,
html.hc-on body footer .brand-block,
html.hc-on body footer [class*="brand-block"],
html.hc-on body footer [class*="site-brand"] {
    background-color: #ffffff !important;
    background-image: none !important;
}

html.hc-on body .brand-foot *,
html.hc-on body footer .brand-block * {
    color: #000 !important;
}

/* Pseudo-elementos: matar fundos coloridos em search, btn-icon e brand-foot caso usem ::before/::after */
html.hc-on body .search-trigger::before,
html.hc-on body .search-trigger::after,
html.hc-on body .btn-icon::before,
html.hc-on body .btn-icon::after,
html.hc-on body .brand-foot::before,
html.hc-on body .brand-foot::after {
    background: transparent !important;
    background-image: none !important;
}

/* Repetir override de a:not para statefuls invertidos quando desktop tem regra mais especifica */
html.hc-on body .a11y-trigger,
html.hc-on body .bottom-sheet-item.is-active,
html.hc-on body .bottom-nav-item.is-active,
html.hc-on body .skip-to-content {
    color: #ffffff !important;
}
/* OPCAO_6_VARS_END */

/* OPCAO_6_TOGGLE_BEGIN */
/* Toggle a11y ON: thumb branco sobre fundo preto */
html.hc-on body .a11y-toggle[aria-checked="true"][aria-checked="true"] .a11y-toggle-thumb {
    background-color: #ffffff !important;
    background: #ffffff !important;
    background-image: none !important;
}

/* Grid uniforme + altura 24px FORCADA nos 3 filhos (icone, texto, toggle). Resolve diferenca de altura toggle 22px vs icone/texto 24px que causava percepcao de desalinhamento. */
.a11y-option {
    display: grid !important;
    grid-template-columns: 24px 1fr auto !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 32px !important;
}

.a11y-option > * {
    align-self: center !important;
    margin: 0 !important;
    transform: none !important;
}

.a11y-option .a11y-option-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    line-height: 1 !important;
}

.a11y-option .a11y-option-icon svg {
    width: 16px !important;
    height: 16px !important;
    display: block !important;
}

.a11y-option .a11y-option-text {
    display: flex !important;
    align-items: center !important;
    height: 24px !important;
    line-height: 1.4 !important;
}

.a11y-option .a11y-toggle {
    height: 24px !important;
    min-height: 24px !important;
    line-height: 1 !important;
    align-self: center !important;
    flex-shrink: 0 !important;
}
/* OPCAO_6_TOGGLE_END */

/* OPCAO_6_NAV_BEGIN */
/* Bottom-nav em HC: matar fundo branco herdado da regra catch-all html.hc-on body * (linha 213) em filhos dos bottom-nav-items. Resolve quadrado branco no SVG/wrapper interno do item ativo (Buscar, Início, etc.). Container is-active mantem bg preto invertido. */
html.hc-on body .bottom-nav-item *,
html.hc-on body .bottom-nav *,
html.hc-on body nav.bottom-nav *,
html.hc-on body .bottom-nav-item svg,
html.hc-on body .bottom-nav-item span,
html.hc-on body .bottom-nav-item path,
html.hc-on body .bottom-nav-item circle,
html.hc-on body .bottom-nav-item rect,
html.hc-on body .bottom-nav-item line {
    background-color: transparent !important;
    background: transparent !important;
    background-image: none !important;
}
/* OPCAO_6_NAV_END */

/* OPCAO_6_A11Y_TRIGGER_BEGIN */
/* Override do .a11y-trigger usando ID #a11y-trigger-btn (specificity 1,2,1) para vencer regra do tema html.hc-on #a11y-trigger-btn (specificity 1,1,1). Em HC mode: preto solido + icone branco + sem outline branca + sem sombra. */
html.hc-on body #a11y-trigger-btn,
html.hc-on body button#a11y-trigger-btn,
html.hc-on body button#a11y-trigger-btn.a11y-trigger {
    background-color: #000 !important;
    background: #000 !important;
    background-image: none !important;
    color: #fff !important;
    border: 1.5px solid #000 !important;
    outline: none !important;
    box-shadow: none !important;
}

html.hc-on body #a11y-trigger-btn svg,
html.hc-on body #a11y-trigger-btn path,
html.hc-on body #a11y-trigger-btn circle,
html.hc-on body #a11y-trigger-btn rect,
html.hc-on body #a11y-trigger-btn line,
html.hc-on body #a11y-trigger-btn polyline,
html.hc-on body #a11y-trigger-btn span,
html.hc-on body #a11y-trigger-btn * {
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
    background-color: transparent !important;
    background: transparent !important;
}

/* Hover/focus do trigger: invertido (branco + icone preto) para feedback */
html.hc-on body #a11y-trigger-btn:hover,
html.hc-on body #a11y-trigger-btn:focus,
html.hc-on body #a11y-trigger-btn:focus-visible,
html.hc-on body #a11y-trigger-btn:active {
    background-color: #fff !important;
    background: #fff !important;
    color: #000 !important;
    border: 1.5px solid #000 !important;
    outline: none !important;
    box-shadow: none !important;
}

html.hc-on body #a11y-trigger-btn:hover svg,
html.hc-on body #a11y-trigger-btn:hover path,
html.hc-on body #a11y-trigger-btn:hover circle,
html.hc-on body #a11y-trigger-btn:hover *,
html.hc-on body #a11y-trigger-btn:focus svg,
html.hc-on body #a11y-trigger-btn:focus *,
html.hc-on body #a11y-trigger-btn:focus-visible svg,
html.hc-on body #a11y-trigger-btn:focus-visible *,
html.hc-on body #a11y-trigger-btn:active * {
    color: #000 !important;
    fill: #000 !important;
    stroke: #000 !important;
}
/* OPCAO_6_A11Y_TRIGGER_END */

/* OPCAO_6_BOTTOMNAV_NORMAL_HOVER_BEGIN */
/* Bottom-nav em MODO PADRAO (sem hc-on): hover/focus com fundo teal #1c878b solido + linhas dos icones em branco. fill: none preserva os "buracos" internos dos icones, mostrando o fundo teal atraves (a porta interna do home, etc fica visivel como verde). */

/* Pai: fundo teal + texto/cor branco */
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus-visible,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:active {
    background-color: #1c878b !important;
    background: #1c878b !important;
    background-image: none !important;
    color: #ffffff !important;
}

/* Texto (span): branco */
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover span,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus span,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus-visible span,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:active span {
    color: #ffffff !important;
    background: transparent !important;
}

/* SVG e elementos internos: stroke branco + fill: none (preservar buracos para fundo teal aparecer) */
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover svg,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover svg *,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover path,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover polyline,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover line,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover rect,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:hover circle,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus svg,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus svg *,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus-visible svg,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:focus-visible svg *,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:active svg,
html:not(.hc-on) body .bottom-nav .bottom-nav-item.bottom-nav-item:active svg * {
    color: #ffffff !important;
    stroke: #ffffff !important;
    fill: none !important;
    background-color: transparent !important;
    background: transparent !important;
}
/* OPCAO_6_BOTTOMNAV_NORMAL_HOVER_END */

/* OPCAO_6_BOTTOMNAV_OVERRIDE_BEGIN */
/* Bottom-nav em HC mode: ICONES com fill: none para preservar detalhes internos (buracos do icone aparecem com a cor do fundo). */
/* - Item ativo: border outline 1.5px preta + linhas pretas + buracos brancos do nav */
/* - Hover/focus: fundo preto + linhas brancas + buracos pretos do fundo */

/* === 1. ITEM ATIVO: border outline 1.5px (modelo F) === */
html.hc-on body .bottom-nav .bottom-nav-item.is-active.is-active.is-active,
html.hc-on body .bottom-nav .bottom-nav-item[aria-current="page"][aria-current="page"] {
    border: 1.5px solid #000 !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    background-color: transparent !important;
    background: transparent !important;
    color: #000 !important;
}

/* Texto do item ativo: preto */
html.hc-on body .bottom-nav .bottom-nav-item.is-active span,
html.hc-on body .bottom-nav .bottom-nav-item[aria-current="page"] span {
    color: #000 !important;
    background: transparent !important;
}

/* SVG do item ativo: stroke preto + fill: none (buracos brancos do nav) */
html.hc-on body .bottom-nav .bottom-nav-item.is-active svg,
html.hc-on body .bottom-nav .bottom-nav-item.is-active svg *,
html.hc-on body .bottom-nav .bottom-nav-item.is-active path,
html.hc-on body .bottom-nav .bottom-nav-item.is-active polyline,
html.hc-on body .bottom-nav .bottom-nav-item.is-active line,
html.hc-on body .bottom-nav .bottom-nav-item.is-active rect,
html.hc-on body .bottom-nav .bottom-nav-item.is-active circle,
html.hc-on body .bottom-nav .bottom-nav-item[aria-current="page"] svg,
html.hc-on body .bottom-nav .bottom-nav-item[aria-current="page"] svg * {
    color: #000 !important;
    stroke: #000 !important;
    fill: none !important;
    background-color: transparent !important;
    background: transparent !important;
}

/* === 2. HOVER/FOCUS: inversao completa (vence active em hover sobre ativo) === */
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus-visible,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:active {
    background-color: #000 !important;
    background: #000 !important;
    background-image: none !important;
    color: #fff !important;
    border-radius: 0 !important;
    border: 1.5px solid #000 !important;
}

/* Texto em hover: branco */
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover span,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus span,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus-visible span,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:active span {
    color: #fff !important;
    background: transparent !important;
}

/* SVG em hover: stroke branco + fill: none (buracos pretos do fundo) */
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover svg,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover svg *,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover path,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover polyline,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover line,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover rect,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:hover circle,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus svg,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus svg *,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus-visible svg,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:focus-visible svg *,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:active svg,
html.hc-on body .bottom-nav .bottom-nav-item.bottom-nav-item.bottom-nav-item:active svg * {
    color: #fff !important;
    stroke: #fff !important;
    fill: none !important;
    background-color: transparent !important;
    background: transparent !important;
}
/* OPCAO_6_BOTTOMNAV_OVERRIDE_END */

/* OPCAO_6_HC_BOXES_FIX_BEGIN */
/* HC mode: specificity 0,7,2 via duplicacao container + triplicacao .label/.photo/.avatar. Quadruplicacao do .btn-light para 0,4,2. */

/* === Labels com estilo "tag" preta - specificity 0,6,2 === */
html.hc-on body .author-box.author-box .label.label.label,
html.hc-on body .author-pill.author-pill .label.label.label,
html.hc-on body .contact-cta.contact-cta .label.label.label,
html.hc-on body .contact-cta-wrap.contact-cta-wrap .label.label.label,
html.hc-on body .cite-box.cite-box .label.label.label {
    background-color: #000 !important;
    background: #000 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #000 !important;
}

/* === Avatares - specificity 0,6,2 === */
html.hc-on body .author-box.author-box .photo.photo.photo,
html.hc-on body .author-pill.author-pill .avatar.avatar.avatar,
html.hc-on body .author-box.author-box .photo.photo.photo *,
html.hc-on body .author-pill.author-pill .avatar.avatar.avatar * {
    background-color: #000 !important;
    background: #000 !important;
    background-image: none !important;
    color: #ffffff !important;
}

/* === H3, .name === */
html.hc-on body .author-box.author-box h3,
html.hc-on body .author-box.author-box .name.name.name,
html.hc-on body .author-pill.author-pill .name.name.name,
html.hc-on body .cite-box.cite-box h3,
html.hc-on body .contact-cta.contact-cta h3 {
    color: #000 !important;
    background-color: transparent !important;
    background: transparent !important;
}

/* === Texto regular === */
html.hc-on body .author-box.author-box p,
html.hc-on body .cite-box.cite-box p,
html.hc-on body .contact-cta.contact-cta p,
html.hc-on body .author-box.author-box .info,
html.hc-on body .author-box.author-box .info * {
    color: #000 !important;
    background-color: transparent !important;
    background: transparent !important;
}

/* === .btn-light em HC: quadruplicacao para specificity 0,4,2 === */
html.hc-on body .btn-light.btn-light.btn-light.btn-light,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light,
html.hc-on body .contact-cta .btn-light.btn-light.btn-light.btn-light,
html.hc-on body .contact-cta-wrap .btn-light.btn-light.btn-light.btn-light {
    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #000000 !important;
    border: 1.5px solid #000 !important;
    border-radius: 6px !important;
    padding: 10px 18px !important;
    box-sizing: border-box !important;
    display: inline-block !important;
    text-decoration: none !important;
}

/* Filhos do btn-light: forcar color preto (caso texto esteja em span interno) */
html.hc-on body .btn-light.btn-light.btn-light.btn-light *,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light * {
    color: #000000 !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Hover/focus do btn-light: invertido (preto + branco) */
html.hc-on body .btn-light.btn-light.btn-light.btn-light:hover,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light:hover,
html.hc-on body .btn-light.btn-light.btn-light.btn-light:focus,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light:focus {
    background-color: #000000 !important;
    background: #000000 !important;
    color: #ffffff !important;
    border: 1.5px solid #000 !important;
}

html.hc-on body .btn-light.btn-light.btn-light.btn-light:hover *,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light:hover *,
html.hc-on body .btn-light.btn-light.btn-light.btn-light:focus *,
html.hc-on body a.btn-light.btn-light.btn-light.btn-light:focus * {
    color: #ffffff !important;
    background: transparent !important;
}

/* === SVGs nos boxes === */
html.hc-on body .cite-box svg,
html.hc-on body .cite-box svg *,
html.hc-on body .author-box svg,
html.hc-on body .author-box svg *,
html.hc-on body .contact-cta svg,
html.hc-on body .contact-cta svg * {
    fill: none !important;
    stroke: #000 !important;
}
/* OPCAO_6_HC_BOXES_FIX_END */

/* OPCAO_6_ICON_DETAILS_FIX_BEGIN */
/* Forcar fill: none + stroke contextual em SVGs do search-trigger e btn-icon. */
/* Specificity reforcada com triplicacao para vencer regras do tema [a11y.css] html.hc-on body .search-trigger svg (0,2,3) que aplica fill+stroke preto. */

/* === DEFAULT (todos modos): fill none, stroke preto (visivel sobre fundo branco) === */
html.hc-on body .search-trigger.search-trigger.search-trigger svg,
html.hc-on body .search-trigger.search-trigger.search-trigger svg *,
html.hc-on body .btn-icon.btn-icon.btn-icon svg,
html.hc-on body .btn-icon.btn-icon.btn-icon svg *,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger svg,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger svg *,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon svg,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon svg *,
body .brand-foot svg,
body .brand-foot svg *,
body .brand-icon svg,
body .brand-icon svg * {
    fill: none !important;
}

/* === HOVER/FOCUS em HC mode: stroke branco (fundo verde do tema HC) === */
html.hc-on body .search-trigger.search-trigger.search-trigger:hover svg,
html.hc-on body .search-trigger.search-trigger.search-trigger:hover svg *,
html.hc-on body .search-trigger.search-trigger.search-trigger:focus svg,
html.hc-on body .search-trigger.search-trigger.search-trigger:focus svg *,
html.hc-on body .search-trigger.search-trigger.search-trigger:active svg,
html.hc-on body .search-trigger.search-trigger.search-trigger:active svg *,
html.hc-on body .btn-icon.btn-icon.btn-icon:hover svg,
html.hc-on body .btn-icon.btn-icon.btn-icon:hover svg *,
html.hc-on body .btn-icon.btn-icon.btn-icon:focus svg,
html.hc-on body .btn-icon.btn-icon.btn-icon:focus svg * {
    fill: none !important;
    stroke: #ffffff !important;
    color: #ffffff !important;
}

/* === HOVER/FOCUS em MODO PADRAO: stroke branco (fundo verde do tema padrao) === */
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:hover svg,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:hover svg *,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:focus svg,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:focus svg *,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:active svg,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:active svg *,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:hover svg,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:hover svg *,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:focus svg,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:focus svg * {
    fill: none !important;
    stroke: #ffffff !important;
    color: #ffffff !important;
}
/* OPCAO_6_ICON_DETAILS_FIX_END */

/* === OPCAO_6_FONT_LARGE_FIX_BEGIN === */
/* Fix Fonte maior v5. Adiciona blockquote p ao fix "fica menor". */

/* 1. Headings ausentes */
html.font-larger h4 { font-size: clamp(20px, 2.6vw, 24px) !important; }
html.font-larger h5 { font-size: clamp(18px, 2.2vw, 22px) !important; }
html.font-larger h6 { font-size: 18px !important; }

/* 2. Tabelas */
html.font-larger td,
html.font-larger th { font-size: 18px !important; }

/* Bloco 3. Top banner removido: .announce ja usa var(--fs-xs) em header.css */

/* Bloco 4. Top nav desktop removido: .nav-list a ja usa var(--fs-sm) em header.css */

/* Bloco 5. Hero pills (home) removido: .hero-cat migrado para var(--fs-xs) em home.css, escala automatica em html.font-larger */

/* Bloco 6. Breadcrumb removido: .breadcrumb ja usa var(--fs-xs) em page.css e single.css */

/* Bloco 7. Hero meta removido: .author-pill .name/.role/.avatar e .meta-stats migrados para tokens em home.css, escala automatica em html.font-larger */

/* 8. Article header meta-row */
html.font-larger body .article-header .meta-row,
html.font-larger body .article-header .meta-row span,
html.font-larger body .meta-row .author-pill,
html.font-larger body .meta-row .author-info,
html.font-larger body .meta-row .stat,
html.font-larger body .meta-row .stat strong { font-size: 18px !important; }

/* 9. Post cards */
html.font-larger article.post-card,
html.font-larger article.post-card .body,
html.font-larger article.post-card .body span,
html.font-larger article.post-card .meta-mini,
html.font-larger article.post-card .tag,
html.font-larger article.post-card .tag-cat-default,
html.font-larger article.post-card a { font-size: 17px !important; }
html.font-larger article.post-card h2,
html.font-larger article.post-card h3 { font-size: clamp(18px, 1.8vw, 22px) !important; }

/* 10. CTA box */
html.font-larger article.content .is-style-cta-box,
html.font-larger article.content .is-style-cta-box .label,
html.font-larger article.content .is-style-cta-box p.label,
html.font-larger article.content .is-style-cta-box p,
html.font-larger article.content .is-style-cta-box a,
html.font-larger body .is-style-cta-box .label,
html.font-larger body .is-style-cta-box p.label { font-size: 18px !important; }

/* 11. Meta, label, badges */
html.font-larger .meta,
html.font-larger .meta-mini,
html.font-larger .label,
html.font-larger .tag,
html.font-larger .cat-tag,
html.font-larger .tag-cat-default,
html.font-larger .stat,
html.font-larger .stat strong,
html.font-larger .share-label,
html.font-larger /* 12. Author meta */
html.font-larger .author-pill,
html.font-larger .author-info,
html.font-larger .avatar { font-size: 18px !important; }

/* Bloco 13. Botoes utilitarios removido: cada classe migrada para tokens (.copy-btn/.btn-light=fs-xs, .skip-to-content=fs-sm, .btn-icon sem font-size, .skip-link herda body) */

/* 14. TOC actions */
html.font-larger .toc-actions,
html.font-larger .toc-actions a,
html.font-larger .toc-actions button,
html.font-larger .toc-actions span { font-size: 17px !important; }

/* 15. Painel a11y */
html.font-larger .a11y-panel-title,
html.font-larger .a11y-panel-shortcut,
html.font-larger .a11y-option-text { font-size: 17px !important; }

/* Bloco 16. Footer removido: font-size migrado para tokens --fs-* em footer.css */

/* Bloco 17. Disclaimer removido: .disclaimer p ja usa var(--fs-xs) em footer.css */

/* Bloco 18. Footer legal removido: .legal ja usa var(--fs-xs) em footer.css */

/* Bloco 19. Bottom nav (mobile) removido: migrado para var(--fs-2xs), escala automatica em html.font-larger */

/* 20. Cite (ADAPTADO DAS DIRETRIZES) */
html.font-larger blockquote cite,
html.font-larger .wp-block-quote cite,
html.font-larger .is-style-pullquote-cardio cite,
html.font-larger cite { font-size: 17px !important; }

/* 21. Fix bug "fica menor" original (article-lede e citation) */
html.font-larger p.article-lede {
    font-size: clamp(20px, 2vw, 24px) !important;
    line-height: 1.55 !important;
}
html.font-larger p.citation {
    font-size: clamp(19px, 1.8vw, 22px) !important;
    line-height: 1.5 !important;
}

/* 22. Blockquote p (texto principal do quote) - NOVO v5 */
/* Resolve regressao do bug "fica menor" para p sem classe dentro de blockquote. */
/* Specificity (0,3,1) vence regra base html.font-larger .content p (0,2,2). */
html.font-larger .wp-block-quote.is-style-pullquote-cardio p,
html.font-larger article.content blockquote p,
html.font-larger blockquote p {
    font-size: clamp(26px, 3.4vw, 34px) !important;
    line-height: 1.4 !important;
}
/* 23. Figcaption + caption (legendas de figuras e tabelas) */
html.font-larger figcaption,
html.font-larger figure figcaption,
html.font-larger .content figcaption,
html.font-larger .content figure figcaption,
html.font-larger .wp-block-image figcaption,
html.font-larger caption,
html.font-larger table caption { font-size: clamp(17px, 1.8vw, 20px) !important; line-height: 1.5 !important; }

/* 24. TOC (Neste artigo) e AÇÕES (toc-actions) */
/* Labels uppercase editoriais */
html.font-larger aside.toc h2,
html.font-larger aside.toc h3,
html.font-larger .toc h2,
html.font-larger .toc h3,
html.font-larger .toc-actions h2,
html.font-larger .toc-actions h3,
html.font-larger aside .toc-actions h2,
html.font-larger aside .toc-actions h3 { font-size: 14px !important; line-height: 1.4 !important; }

/* Itens do TOC (links) */
html.font-larger aside.toc a,
html.font-larger aside.toc li,
html.font-larger .toc a,
html.font-larger .toc li,
html.font-larger .toc-list a,
html.font-larger .toc-list li,
html.font-larger nav.toc a,
html.font-larger nav.toc li { font-size: 17px !important; line-height: 1.5 !important; }

/* Item ativo do TOC */
html.font-larger aside.toc a.active,
html.font-larger .toc a.active,
html.font-larger .toc-list a.active,
html.font-larger nav.toc a.active { font-size: 18px !important; font-weight: 700 !important; }

/* Botoes do menu de Acoes */
html.font-larger .toc-actions a,
html.font-larger .toc-actions button,
html.font-larger .toc-actions span,
html.font-larger aside .toc-actions a,
html.font-larger aside .toc-actions button { font-size: 18px !important; line-height: 1.4 !important; }

/* 25. Pseudo-elementos ::before de headings (numeracao + bullet) */
/* Numeracao H2 (counter section: 01, 02, 03...) */
html.font-larger article.content h2::before,
html.font-larger .content h2::before,
html.font-larger article h2::before { font-size: clamp(28px, 3.2vw, 38px) !important; }

/* Bullet decorativo H3 */
html.font-larger article.content h3::before,
html.font-larger .content h3::before { width: 8px !important; height: 8px !important; }


/* Grupo 26: drop cap (phrase em SMALL CAPS + letra outline) */
html.font-larger .content > p.has-dropcap .dropcap-phrase,
html.font-larger article.content > p.has-dropcap .dropcap-phrase {
    font-size: 17px !important;
    letter-spacing: 0.04em !important;
    line-height: 1.5 !important;
}
html.font-larger .content > p.has-dropcap .dropcap-letter,
html.font-larger article.content > p.has-dropcap .dropcap-letter {
    font-size: 64px !important;
    -webkit-text-stroke: 2.6px var(--primary, #12898b) !important;
}
@media (max-width: 480px) {
    html.font-larger .content > p.has-dropcap .dropcap-letter,
    html.font-larger article.content > p.has-dropcap .dropcap-letter {
        font-size: 50px !important;
        -webkit-text-stroke: 2.2px var(--primary, #12898b) !important;
    }
    html.font-larger .content > p.has-dropcap .dropcap-phrase,
    html.font-larger article.content > p.has-dropcap .dropcap-phrase {
        font-size: 16px !important;
    }
}


/* Grupo 27: h2 e h3 em font-larger (estilo serif simplificado) */
/* === DESATIVADO_FASE1_CONTENT_H2_H3_DUP_BEGIN ===
   Removido: var(--fs-2xl) e var(--fs-xl) com TOKEN_OVERRIDES tomam conta.
html.font-larger article.content h2,
html.font-larger .content h2 {
    font-size: clamp(28px, 3vw, 36px) !important;
}
html.font-larger article.content h3,
html.font-larger .content h3 {
    font-size: 26px !important;
}
=== DESATIVADO_FASE1_CONTENT_H2_H3_DUP_END === */

/* === OPCAO_6_FONT_LARGE_FIX_END === */

/* === OPCAO_6_LABEL_UNIFORM_BEGIN === */
/* Uniformizacao tipografica de labels mantendo uppercase. */
/* Especificacao C1: 12px, weight 600, uppercase, letter-spacing 0.5px. */
/* Aplicado apenas quando font-larger NAO esta ativo (regras do bloco */
/* OPCAO_6_FONT_LARGE_FIX vencem por specificity quando font-larger ativo). */

/* Pills de categoria (hero e post card) */
a.cat-tag,
a.cat-tag.tag-cat-default,
a.tag,
a.tag.tag-cat-default {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* TOC sidebar headers (Neste artigo, Acoes) */
aside.toc h2,
aside.toc h3,
.toc-actions h3 {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Inline labels (Autor do artigo, Fale com a equipe, Como citar) */
p.label,
span.label,
.is-style-cta-box .label,
.is-style-cta-box p.label,
.author-pill .label,
.author-box .label {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Footer column titles (Conteudo, Editorial, Institucional) */
footer h6,
.site h6,
footer.site h6 {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Cite (Adaptado das Diretrizes ESC 2025) */
blockquote cite,
.wp-block-quote cite,
.is-style-pullquote-cardio cite {
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
/* === OPCAO_6_LABEL_UNIFORM_END === */

/* === OPCAO_6_SEARCH_HOVER_BG_BEGIN === */
/* Fix hover invisivel do search-trigger e btn-icon em modo padrao. */
/* Bug: bg --bg-soft (#f7f9f9) + stroke #fff (regra do bloco ICON_DETAILS_FIX) */
/* deixava lupa branca sobre fundo branco. Solucao B: bg verde teal + stroke branco. */
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:hover,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:focus,
html:not(.hc-on) body .search-trigger.search-trigger.search-trigger:active,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:hover,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:focus,
html:not(.hc-on) body .btn-icon.btn-icon.btn-icon:active {
    background: var(--primary) !important;
    background-color: var(--primary) !important;
    color: #ffffff !important;
}
/* === OPCAO_6_SEARCH_HOVER_BG_END === */

/* === OPCAO_6_FONT_LARGE_FIX_GROUP_28_POST_SUMMARY_BEGIN === */
/* Grupo 28: escala da box "Principais informacoes" (V3) em html.font-larger.
   Especificidade alta para vencer RX_HEADINGS + POST_SUMMARY_TITLE_OVERRIDE. */
html.font-larger body.single .content .post-summary__title,
html.font-larger body.post-template .content .post-summary__title {
  font-size: 26px !important;
}
html.font-larger .post-summary__intro {
  font-size: 19px;
  line-height: 1.7;
}
html.font-larger .post-summary__list li {
  font-size: 18px;
  line-height: 1.6;
}
@media (max-width: 600px) {
  html.font-larger body.single .content .post-summary__title,
  html.font-larger body.post-template .content .post-summary__title { font-size: 22px !important; }
  html.font-larger .post-summary__intro { font-size: 17.5px; }
  html.font-larger .post-summary__list li { font-size: 16.5px; }
}
/* === OPCAO_6_FONT_LARGE_FIX_GROUP_28_POST_SUMMARY_END === */

/* === OPCAO_6_HC_POST_SUMMARY_BEGIN === */
/* Alto contraste: box "Principais informacoes" V3.
   Padrao WCAG estrito (preto/branco puro, sem cores de acento).
   Header preto + texto branco | body branco + texto preto. !important
   necessario para vencer 'html.hc-on body *' que tambem tem !important. */
html.hc-on .post-summary {
  background: #ffffff !important;
  border: 2px solid #000000 !important;
}
html.hc-on .post-summary__head {
  background: #000000 !important;
}
html.hc-on .post-summary__icon {
  background: #ffffff !important;
  color: #000000 !important;
  box-shadow: none !important;
}
html.hc-on .post-summary__icon svg {
  stroke: #000000 !important;
  color: #000000 !important;
}
html.hc-on body.single .content .post-summary__title,
html.hc-on body.post-template .content .post-summary__title {
  color: #ffffff !important;
  background: transparent !important;
}
html.hc-on .post-summary__body {
  background: #ffffff !important;
}
html.hc-on .post-summary__intro,
html.hc-on .post-summary__list li {
  color: #000000 !important;
  background: #ffffff !important;
}
html.hc-on .post-summary__list li::before {
  background: #000000 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
/* === OPCAO_6_HC_POST_SUMMARY_END === */

/* === FONT_LARGER_TOKEN_OVERRIDES_BEGIN === */
/* Redefine variaveis --fs-* quando 'Fonte maior' esta ativa.
   Aumento de ~22% mantendo o ratio 1.25 do Major Third.
   Elementos que usam var(--fs-*) escalam automaticamente quando font-larger esta ativa.
   Os overrides individuais (html.font-larger h1/h2/h3/.announce/etc., ~48 regras)
   ainda existem mais abaixo neste arquivo e ganham por !important. Serao removidos
   na etapa E, apos a migracao completa dos elementos para var(--fs-*). */
html.font-larger {
  --fs-2xs:  clamp(13px, 0.9rem, 14px);
  --fs-xs:   clamp(15px, 1rem, 16px);
  --fs-sm:   clamp(17px, 1.1rem, 18px);
  --fs-base: clamp(20px, 1.25rem + 0.15vw, 22px);
  --fs-lg:   clamp(24px, 1.5rem + 0.25vw, 27px);
  --fs-xl:   clamp(28px, 1.75rem + 0.6vw, 34px);
  --fs-2xl:  clamp(34px, 2.1rem + 1.5vw, 43px);
  --fs-3xl:  clamp(40px, 2.5rem + 2vw, 54px);
  --fs-4xl:  clamp(48px, 3rem + 3.5vw, 67px);
  --content-font-scale: 1; /* neutraliza dupla escala com painel A/M/L */
}
/* === FONT_LARGER_TOKEN_OVERRIDES_END === */


/* === HC_CAT_CARD_BEGIN === */
/* Alto contraste: cards de categoria (.cat-card) na home/explore-por-especialidade.
   Estado normal: branco + preto. Hover/focus: inverte para preto + branco
   consistentemente em todas as viewports (mobile e desktop). */
html.hc-on .cat-card {
  background: #ffffff !important;
  color: #000000 !important;
  border: 2px solid #000000 !important;
}
html.hc-on .cat-card * {
  background: transparent !important;
  color: #000000 !important;
}
html.hc-on .cat-card .ic {
  border: 1.5px solid #000000 !important;
}
html.hc-on .cat-card .ic svg {
  stroke: #000000 !important;
  color: #000000 !important;
}

html.hc-on .cat-card:hover,
html.hc-on .cat-card:focus,
html.hc-on .cat-card:focus-visible {
  background: #000000 !important;
  color: #ffffff !important;
  border-color: #000000 !important;
}
html.hc-on .cat-card:hover *,
html.hc-on .cat-card:focus *,
html.hc-on .cat-card:focus-visible * {
  background: transparent !important;
  color: #ffffff !important;
}
html.hc-on body .cat-card:hover .ic,
html.hc-on body .cat-card:focus .ic,
html.hc-on body .cat-card:focus-visible .ic,
html.hc-on body [class*="cat-card"]:hover .ic,
html.hc-on body [class*="cat-card"]:focus .ic,
html.hc-on body [class*="cat-card"]:focus-visible .ic {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  border-color: #ffffff !important;
}
html.hc-on .cat-card:hover .ic svg,
html.hc-on .cat-card:focus .ic svg,
html.hc-on .cat-card:focus-visible .ic svg {
  stroke: #ffffff !important;
  color: #ffffff !important;
}
/* === HC_CAT_CARD_END === */

/* === HC_TOC_ACTIVE_DESTAQUE_BEGIN === */
/* Em HC, --primary-50 vira #ffffff (igual ao fundo padrao), apagando
   o destaque do item ativo do TOC. Esta regra forca destaque visivel
   com fundo preto + texto branco + border-left espessa. Alta
   especificidade para vencer 'html.hc-on body *' e outras regras pre-existentes. */
html.hc-on body aside.toc .toc-list a.active,
html.hc-on body aside.toc a.active,
html.hc-on body .toc-list a.active,
html.hc-on body .toc a.active,
html.hc-on body nav.toc a.active {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  border-left: 4px solid #ffffff !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}
/* Reset de descendentes do active para nao herdar bg branco da regra body * */
html.hc-on body aside.toc a.active *,
html.hc-on body .toc a.active *,
html.hc-on body .toc-list a.active * {
  background: transparent !important;
  background-color: transparent !important;
  color: #ffffff !important;
}
/* === HC_TOC_ACTIVE_DESTAQUE_END === */

/* === HC_HOVER_FILL_GLOBAL_BEGIN === */
/* Padrao A para HC mode: em hover/focus/focus-visible de qualquer <a> (exceto
   a11y-trigger, a11y-panel-close, bottom-nav-item), forca filhos a background
   transparente e color #fff para que o background #062c22 do <a> (regra
   generica html.hc-on a:hover na linha ~266) apareca atraves de wrappers
   que definem color/background propriamente. Inclui inversao de SVG (color,
   stroke, fill) para garantir que icones tambem fiquem brancos. */
html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):not(.bottom-nav-item):is(:hover, :focus, :focus-visible) * {
    background-color: transparent !important;
    color: #fff !important;
    text-decoration: none !important;
}
html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):not(.bottom-nav-item):is(:hover, :focus, :focus-visible) svg {
    color: #fff !important;
}
html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):not(.bottom-nav-item):is(:hover, :focus, :focus-visible) svg [stroke]:not([stroke="none"]) {
    stroke: #fff !important;
}
html.hc-on a:not(.a11y-trigger):not(.a11y-panel-close):not(.bottom-nav-item):is(:hover, :focus, :focus-visible) svg [fill]:not([fill="none"]):not([fill="currentColor"]) {
    fill: #fff !important;
}
/* === HC_HOVER_FILL_GLOBAL_END === */
