@charset "utf-8";
/* Guia interativo — container de plástico */
:root {
    --ix-green: #0d6b32;
    --ix-green-light: #e0f0e6;
    --ix-green-dark: #084422;
    --ix-green-head: #0a5c28;
    --ix-metal: #3d4a56;
    --ix-border: #9aab9e;
    --ix-border-light: #c5d0c8;
    --ix-text: #1a1a1a;
    --ix-text-muted: #2e2e2e;
    --ix-text-subtle: #404040;
    --ix-link: #0a5c28;
    --ix-link-hover: #063d1b;
    --ix-radius: 10px;
    --ix-shadow: 0 4px 24px rgba(10, 92, 40, 0.1);
    --ix-transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    /* Tipografia fluida — leitura confortável em artigos longos (≈18–21px corpo) */
    --ix-fs-base: clamp(1.25rem, 1.125rem + 0.45vw, 1.4375rem);
    --ix-fs-lead: clamp(1.375rem, 1.25rem + 0.5vw, 1.5625rem);
    --ix-fs-small: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);
    --ix-fs-h2: clamp(1.875rem, 1.55rem + 1vw, 2.375rem);
    --ix-fs-h3: clamp(1.5rem, 1.32rem + 0.55vw, 1.75rem);
    --ix-fs-h4: clamp(1.3125rem, 1.2rem + 0.4vw, 1.5rem);
    --ix-fs-widget-title: clamp(1.375rem, 1.25rem + 0.5vw, 1.625rem);
    --ix-fs-faq-q: clamp(1.25rem, 1.15rem + 0.4vw, 1.4375rem);
    --ix-fs-faq-a: clamp(1.1875rem, 1.1rem + 0.35vw, 1.375rem);
    --ix-lh-body: 1.8;
    --ix-lh-tight: 1.45;
    --ix-lh-faq: 1.7;
    --ix-space-faq: clamp(0.875rem, 0.5rem + 1.5vw, 1.35rem);
}

/* Base tipográfica responsiva */
html:has(body.guide-page) {
    font-size: 106.25%; /* 17px → corpo efetivo ~20–22px com --ix-fs-base */
}
.guide-page {
    font-size: var(--ix-fs-base);
    line-height: var(--ix-lh-body);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overflow-x: hidden;
    color: var(--ix-text);
    position: relative;
}
@media (prefers-reduced-motion: no-preference) {
    .guide-page { scroll-behavior: smooth; }
}
.guide-page .sec-title h2 {
    font-size: var(--ix-fs-h2);
    line-height: var(--ix-lh-tight);
    text-transform: none;
    letter-spacing: -0.02em;
}
.guide-page .guide-main,
.guide-page .guide-main .text,
.guide-page .press-release-content-area .text {
    font-size: var(--ix-fs-base);
    line-height: var(--ix-lh-body);
}
.guide-page .postB {
    font-size: var(--ix-fs-base);
}
.guide-page .postB p,
.guide-page .postB li,
.guide-page .postB dd,
.guide-page .postB dt {
    font-size: var(--ix-fs-base) !important;
    line-height: var(--ix-lh-body) !important;
    color: var(--ix-text) !important;
}
.guide-page .postB h2 {
    font-size: var(--ix-fs-h2) !important;
    line-height: var(--ix-lh-tight) !important;
}
.guide-page .postB h3 {
    font-size: var(--ix-fs-h3) !important;
    line-height: var(--ix-lh-tight) !important;
}
.guide-page .guide-intro,
.guide-page .guide-intro p,
.guide-page .info_apre,
.guide-page .info_apre p {
    font-size: var(--ix-fs-lead) !important;
    line-height: var(--ix-lh-body) !important;
    color: var(--ix-text) !important;
}
.guide-page .guide-snippet p {
    font-size: var(--ix-fs-base) !important;
    line-height: var(--ix-lh-body) !important;
}
.guide-page .guide-snippet__label {
    font-size: var(--ix-fs-h4) !important;
}

/* Barra de progresso de leitura (fallback se header não existir) */
.ix-reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.06);
    pointer-events: none;
}
.ix-reading-progress-fill {
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, var(--ix-green-head), var(--ix-green));
    transition: width 0.1s linear;
}

/* Faixa de contexto dos guias (abaixo do header principal do site) */
.guide-context-strip {
    position: relative;
    z-index: 100;
}

/* ========== Header moderno do guia (legado / páginas que ainda usam) ========== */
.guide-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: #fff;
    box-shadow: 0 1px 0 var(--ix-border-light);
    transition: box-shadow 0.3s ease, background 0.3s ease;
}
.guide-header.is-scrolled {
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.guide-header__bar {
    background: linear-gradient(90deg, var(--ix-green-head), var(--ix-green));
    color: #fff;
    font-size: var(--ix-fs-small);
}
.guide-header__bar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 2.25rem;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}
.guide-header__tag {
    margin: 0;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.guide-header__tag .fa { opacity: 0.9; flex-shrink: 0; }
.guide-header__bar-link {
    color: #fff !important;
    font-weight: 700;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    transition: background 0.2s;
}
.guide-header__bar-link:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff !important;
}
.guide-header__main {
    border-bottom: 1px solid var(--ix-border-light);
}
.guide-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    min-height: 4.25rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.guide-header.is-scrolled .guide-header__inner {
    min-height: 3.75rem;
}
.guide-header__logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    transition: transform 0.25s ease;
}
.guide-header__logo:hover { transform: scale(1.02); }
.guide-header__logo img {
    display: block;
    height: auto;
    max-height: 50px;
    width: auto;
    transition: max-height 0.3s ease;
}
.guide-header.is-scrolled .guide-header__logo img {
    max-height: 44px;
}
.guide-header__nav-wrap {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex: 1;
    justify-content: flex-end;
}
.guide-header__menu {
    display: flex;
    align-items: center;
    gap: 0.15rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.guide-header__menu > li { position: relative; }
.guide-header__menu > li > a,
.guide-header__drop-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.55rem 0.85rem;
    font-size: var(--ix-fs-small);
    font-weight: 600;
    color: var(--ix-text-muted);
    text-decoration: none;
    border-radius: 8px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    transition: color 0.2s, background 0.2s;
    white-space: nowrap;
}
.guide-header__menu > li > a:hover,
.guide-header__drop-btn:hover,
.guide-header__menu > li > a.is-active {
    color: var(--ix-green-head);
    background: var(--ix-green-light);
}
.guide-header__drop-btn .fa {
    font-size: 0.75em;
    transition: transform 0.25s ease;
}
.guide-header__dropdown.is-open .guide-header__drop-btn .fa {
    transform: rotate(180deg);
}
.guide-header__drop-panel {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    min-width: 220px;
    margin: 0;
    padding: 0.5rem;
    list-style: none;
    background: #fff;
    border: 1px solid var(--ix-border-light);
    border-radius: var(--ix-radius);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
    z-index: 100;
}
.guide-header__dropdown.is-open .guide-header__drop-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.guide-header__drop-panel a {
    display: block;
    padding: 0.6rem 0.85rem;
    font-size: var(--ix-fs-small);
    font-weight: 600;
    color: var(--ix-text-muted) !important;
    text-decoration: none !important;
    border-radius: 6px;
    transition: background 0.2s, color 0.2s;
}
.guide-header__drop-panel a:hover {
    background: var(--ix-green-light);
    color: var(--ix-green-head) !important;
}
.guide-header__actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}
.guide-header__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.55rem 1rem;
    font-size: var(--ix-fs-small);
    font-weight: 700;
    text-decoration: none !important;
    border-radius: 8px;
    transition: all 0.25s ease;
    white-space: nowrap;
}
.guide-header__btn--ghost {
    color: var(--ix-green-head) !important;
    border: 2px solid var(--ix-green-head);
    background: transparent;
}
.guide-header__btn--ghost:hover {
    background: var(--ix-green-light);
}
.guide-header__btn--primary {
    color: #fff !important;
    background: var(--ix-green-head);
    border: 2px solid var(--ix-green-head);
    box-shadow: 0 4px 14px rgba(10, 92, 40, 0.25);
}
.guide-header__btn--primary:hover {
    background: var(--ix-green-dark);
    border-color: var(--ix-green-dark);
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(10, 92, 40, 0.3);
}
.guide-header__progress {
    height: 3px;
    background: #eef2ef;
    overflow: hidden;
}
.guide-header__progress-fill {
    display: block;
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, var(--ix-green-head), #2ecc71);
    transition: width 0.12s linear;
}
.guide-header__toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border: 2px solid var(--ix-border);
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
}
.guide-header__toggle:hover {
    border-color: var(--ix-green-head);
    background: var(--ix-green-light);
}
.guide-header__toggle-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 20px;
}
.guide-header__toggle-box span {
    display: block;
    height: 2px;
    width: 100%;
    background: var(--ix-text);
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.guide-header.is-nav-open .guide-header__toggle-box span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}
.guide-header.is-nav-open .guide-header__toggle-box span:nth-child(2) {
    opacity: 0;
}
.guide-header.is-nav-open .guide-header__toggle-box span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}
.guide-header__overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 9998;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}
.guide-header__overlay.is-visible {
    opacity: 1;
    pointer-events: auto;
}
body.guide-nav-lock { overflow: hidden; }

.guide-page .guide-intro {
    max-width: 42rem;
    margin: 0 auto 2rem;
    font-size: var(--ix-fs-lead);
    line-height: var(--ix-lh-body);
    color: var(--ix-text);
}
.guide-page .guide-intro p { margin-bottom: 1rem; }

/* Links — contraste e sublinhado visível */
.guide-page .postB a,
.guide-page .guide-intro a,
.guide-page .guide-toc a,
.guide-page .single-sidebar .categories li a,
.guide-page .lp-faq-item a,
.guide-page .ix-widget a,
.guide-page .ix-compare-detail a,
.guide-page .ix-usage-detail a,
.guide-page .ix-cap-details a,
.guide-page .ix-plastic-panel a {
    color: var(--ix-link);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-thickness: 1.5px;
    text-underline-offset: 3px;
    text-decoration-color: rgba(10, 92, 40, 0.45);
    transition: color 0.2s, text-decoration-color 0.2s;
}
.guide-page .postB a:hover,
.guide-page .guide-intro a:hover,
.guide-page .guide-toc a:hover,
.guide-page .single-sidebar .categories li a:hover,
.guide-page .lp-faq-item a:hover,
.guide-page .ix-widget a:hover,
.guide-page .ix-compare-detail a:hover,
.guide-page .ix-usage-detail a:hover,
.guide-page .ix-cap-details a:hover,
.guide-page .ix-plastic-panel a:hover {
    color: var(--ix-link-hover);
    text-decoration-color: var(--ix-link-hover);
}
.guide-page a:focus-visible {
    outline: 2px solid var(--ix-green-head);
    outline-offset: 3px;
}

/* Índice colapsável */
.guide-toc {
    background: linear-gradient(135deg, #f8faf8 0%, #f0f7f2 100%);
    border: 1px solid var(--ix-border);
    border-radius: var(--ix-radius);
    padding: 1.25rem 1.5rem;
    margin-bottom: 2.5rem;
    box-shadow: var(--ix-shadow);
    scroll-margin-top: 7.5rem;
}
.guide-toc-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    margin: 0 0 0.75rem;
    font-size: var(--ix-fs-h3);
    font-weight: 700;
    color: var(--ix-green-head);
    cursor: pointer;
    text-align: left;
}
.guide-toc-toggle i { transition: transform var(--ix-transition); }
.guide-toc.is-collapsed ol { display: none; }
.guide-toc.is-collapsed .guide-toc-toggle i { transform: rotate(180deg); }
.guide-toc h2#indice-titulo { display: none; }
.guide-toc ol {
    margin: 0;
    padding-left: 1.25rem;
    columns: 2;
    column-gap: 2rem;
    transition: opacity var(--ix-transition);
}
.guide-toc li { margin-bottom: 0.35rem; line-height: 1.5; font-size: var(--ix-fs-base); }
.guide-toc a {
    color: var(--ix-text-muted);
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-color: rgba(10, 92, 40, 0.35);
    transition: color 0.2s, text-decoration-color 0.2s, background 0.2s;
}
.guide-toc ol li a {
    display: block;
    padding: 0.55rem 0.65rem;
    margin: 0 -0.65rem;
    border-radius: 6px;
    min-height: 2.75rem;
    line-height: 1.45;
}
.guide-toc ol li a:active {
    background: var(--ix-green-light);
}
.guide-toc a:hover {
    color: var(--ix-link);
    text-decoration-color: var(--ix-link);
}

/* Conteúdo artigo */
.guide-article .postB h2 {
    color: var(--ix-green-head);
    margin-top: 2.5rem;
    margin-bottom: 0.85rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--ix-border-light);
    scroll-margin-top: 7.5rem;
    font-size: var(--ix-fs-h2);
    line-height: var(--ix-lh-tight);
}
.guide-article .postB h2:first-of-type { border-top: none; margin-top: 0; padding-top: 0; }
.guide-article .postB h3 {
    color: var(--ix-green-dark);
    margin-top: 1.5rem;
    margin-bottom: 0.65rem;
    font-size: var(--ix-fs-h3);
    line-height: var(--ix-lh-tight);
}
.guide-article .postB p,
.guide-article .postB li {
    color: var(--ix-text);
    line-height: var(--ix-lh-body);
    font-size: var(--ix-fs-base);
    max-width: 70ch;
}
.guide-article .postB ul,
.guide-article .postB ol {
    margin: 0 0 1.1rem 1.35rem;
    max-width: 68ch;
}
.guide-article .postB dl {
    margin: 0 0 1.25rem;
    max-width: 70ch;
}
.guide-article .postB dt {
    font-weight: 700;
    color: var(--ix-text);
    margin-top: 0.75rem;
    font-size: var(--ix-fs-base);
}
.guide-article .postB dd {
    margin: 0.25rem 0 0;
    color: var(--ix-text-muted);
    line-height: var(--ix-lh-body);
    font-size: var(--ix-fs-base);
}

.guide-callout {
    background: var(--ix-green-light);
    border-left: 4px solid var(--ix-green-head);
    padding: 1rem 1.25rem;
    margin: 1.25rem 0;
    border-radius: 0 var(--ix-radius) var(--ix-radius) 0;
    color: var(--ix-text);
}
.guide-callout p:last-child { margin-bottom: 0; }
.guide-callout strong { color: var(--ix-text); }

/* Widget base */
.ix-widget {
    background: #fff;
    border: 1px solid var(--ix-border);
    border-radius: var(--ix-radius);
    padding: 1.5rem;
    margin: 1.5rem 0 2rem;
    box-shadow: var(--ix-shadow);
}
.ix-widget-label {
    display: inline-block;
    font-size: var(--ix-fs-small);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--ix-green-dark);
    background: #d4eadc;
    padding: 0.25rem 0.6rem;
    border-radius: 4px;
    margin-bottom: 0.75rem;
}
.ix-widget > h3.ix-widget-title {
    margin: 0 0 1rem !important;
    font-size: var(--ix-fs-widget-title) !important;
    line-height: var(--ix-lh-tight) !important;
    color: var(--ix-text) !important;
}

/* Tabs / botões segmentados */
.ix-segmented {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}
.ix-segmented button {
    flex: 1;
    min-width: 100px;
    padding: 0.75rem 1rem;
    border: 2px solid var(--ix-border);
    border-radius: 8px;
    background: #fff;
    color: var(--ix-text-muted);
    font-size: var(--ix-fs-small);
    font-weight: 600;
    cursor: pointer;
    transition: all var(--ix-transition);
}
.ix-segmented button:hover {
    border-color: var(--ix-green-head);
    color: var(--ix-green-head);
    background: var(--ix-green-light);
}
.ix-segmented button.is-active {
    background: var(--ix-green-head);
    border-color: var(--ix-green-head);
    color: #fff;
    box-shadow: 0 4px 12px rgba(10, 92, 40, 0.35);
}

/* Explorador de plásticos */
.ix-plastic-panel {
    min-height: 280px;
    transition: opacity 0.2s;
}
.ix-plastic-panel.is-updating { opacity: 0.4; }
.ix-plastic-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}
.ix-plastic-panel-head h3 {
    margin: 0 !important;
    font-size: var(--ix-fs-h3) !important;
    color: var(--ix-green-head) !important;
}
.ix-plastic-badge {
    font-size: var(--ix-fs-small);
    background: #d4eadc;
    color: var(--ix-green-dark);
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 20px;
}
.ix-plastic-desc { margin: 0 0 1rem; color: var(--ix-text-muted); font-size: var(--ix-fs-base); }
.ix-plastic-specs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
    margin: 0 0 1.25rem;
}
.ix-plastic-specs div {
    background: #eef4f0;
    padding: 0.65rem 0.75rem;
    border-radius: 6px;
    border: 1px solid var(--ix-border-light);
}
.ix-plastic-specs dt {
    font-size: var(--ix-fs-small);
    text-transform: uppercase;
    color: var(--ix-text-subtle);
    margin: 0 0 0.2rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}
.ix-plastic-specs dd { margin: 0; font-size: var(--ix-fs-base); color: var(--ix-text); font-weight: 500; }
.ix-plastic-scores { display: flex; flex-direction: column; gap: 0.5rem; }
.ix-score-row {
    display: grid;
    grid-template-columns: 130px 1fr 36px;
    align-items: center;
    gap: 0.75rem;
    font-size: var(--ix-fs-small);
    color: var(--ix-text-muted);
}
.ix-score-track {
    height: 8px;
    background: #c5d5cb;
    border-radius: 4px;
    overflow: hidden;
}
.ix-score-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--ix-green-head), var(--ix-green));
    border-radius: 4px;
    transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.ix-score-row strong { text-align: right; color: var(--ix-green-dark); font-weight: 700; }

/* Seletor de capacidade */
.ix-cap-output {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 1.5rem;
    align-items: center;
}
.ix-cap-layout { margin-bottom: 0; }
.ix-cap-visual {
    position: relative;
    width: 140px;
    height: 200px;
    margin: 0 auto;
    background: linear-gradient(180deg, #e8ece9 0%, #d4ddd6 100%);
    border-radius: 8px 8px 12px 12px;
    border: 3px solid #b8c4ba;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
.ix-cap-fill {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: var(--fill, 50%);
    background: linear-gradient(180deg, rgba(17, 128, 58, 0.5), var(--ix-green));
    transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.ix-cap-liters {
    position: relative;
    z-index: 1;
    font-size: 2rem;
    font-weight: 800;
    color: #fff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    margin-bottom: 1.5rem;
}
.ix-cap-liters small { font-size: 0.45em; font-weight: 600; }
.ix-cap-slider-wrap { margin-top: 1rem; }
.ix-cap-slider {
    width: 100%;
    height: 8px;
    -webkit-appearance: none;
    appearance: none;
    background: #e0e6e2;
    border-radius: 4px;
    outline: none;
}
.ix-cap-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--ix-green);
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(17, 128, 58, 0.4);
    transition: transform 0.2s;
}
.ix-cap-slider::-webkit-slider-thumb:hover { transform: scale(1.15); }
.ix-cap-details h3 { margin: 0 0 0.5rem !important; color: var(--ix-green-head) !important; font-size: var(--ix-fs-h3) !important; }
.ix-cap-details p { margin: 0 0 0.5rem; font-size: var(--ix-fs-base) !important; color: var(--ix-text-muted) !important; }
.ix-cap-details strong { color: var(--ix-text); }
.ix-cap-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    list-style: none;
    margin: 0.75rem 0 0 !important;
    padding: 0 !important;
}
.ix-cap-tags li {
    background: #d4eadc;
    color: var(--ix-green-dark);
    font-size: var(--ix-fs-small);
    font-weight: 600;
    padding: 0.3rem 0.65rem;
    border-radius: 20px;
}

/* Comparador de materiais */
.ix-compare-legend {
    display: flex;
    gap: 1.25rem;
    margin-bottom: 1rem;
    font-size: var(--ix-fs-small);
    font-weight: 600;
    color: var(--ix-text-muted);
}
.ix-compare-legend span {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}
.ix-compare-legend i {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 3px;
}
.ix-legend-pead i { background: var(--ix-green); }
.ix-legend-metal i { background: var(--ix-metal); }
.ix-compare-bars { display: flex; flex-direction: column; gap: 0.85rem; }
.ix-bar-row {
    display: grid;
    grid-template-columns: 1fr 2fr auto;
    align-items: center;
    gap: 0.75rem;
}
.ix-bar-label { font-size: var(--ix-fs-base); color: var(--ix-text); font-weight: 500; }
.ix-bar-track {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 20px;
    background: #e8eeea;
    border-radius: 6px;
    padding: 3px;
}
.ix-bar-fill {
    height: 10px;
    border-radius: 5px;
    transition: width 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}
.ix-bar-pead { background: linear-gradient(90deg, var(--ix-green-head), var(--ix-green)); }
.ix-bar-metal { background: linear-gradient(90deg, #3d4a56, #5a6a7a); }
.ix-bar-values { font-size: var(--ix-fs-small); font-weight: 700; min-width: 52px; text-align: right; }
.ix-val-pead { color: var(--ix-green-dark); }
.ix-val-metal { color: #2d3740; }
.ix-val-sep { color: #5c5c5c; margin: 0 2px; }
[data-active-mode="pead"] .ix-bar-metal,
[data-active-mode="metal"] .ix-bar-pead { display: none; }
.ix-compare-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 1.25rem;
}
.ix-compare-detail {
    padding: 1rem;
    border-radius: 8px;
    border: 1px solid var(--ix-border);
    transition: opacity var(--ix-transition);
}
.ix-compare-detail--pead { background: #e8f4ec; border-color: #8fb89a; }
.ix-compare-detail--metal { background: #eceff2; border-color: #a8b4be; }
.ix-compare-detail h4 {
    margin: 0 0 0.5rem;
    font-size: var(--ix-fs-base);
    color: var(--ix-text);
    font-weight: 700;
}
.ix-compare-detail ul {
    margin: 0 !important;
    padding-left: 1.1rem !important;
    font-size: var(--ix-fs-base) !important;
    color: var(--ix-text-muted) !important;
}
.ix-compare-detail li { color: var(--ix-text-muted); }

/* Processos */
.ix-process-panel {
    min-height: 120px;
    transition: opacity 0.15s;
}
.ix-process-panel.is-switching { opacity: 0; }
.ix-process-content {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    padding: 1rem;
    background: #eef4f0;
    border-radius: 8px;
    border: 1px solid var(--ix-border-light);
}
.ix-process-content > .fa {
    font-size: 2rem;
    color: var(--ix-green-head);
    margin-top: 0.25rem;
}
.ix-process-content h3 { margin: 0 0 0.5rem !important; color: var(--ix-text) !important; font-size: var(--ix-fs-h3) !important; }
.ix-process-content p { margin: 0 0 0.5rem !important; color: var(--ix-text-muted) !important; font-size: var(--ix-fs-base) !important; }
.ix-process-range {
    font-size: var(--ix-fs-small);
    color: var(--ix-green-dark);
    font-weight: 700;
}

/* Cards de utilização */
.ix-usage-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.65rem;
    margin-bottom: 1rem;
}
.ix-usage-grid--3 { grid-template-columns: repeat(3, 1fr); }
.ix-usage-grid--4 { grid-template-columns: repeat(4, 1fr); }
.ix-usage-grid--6 { grid-template-columns: repeat(3, 1fr); }
.ix-usage-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem 0.5rem;
    border: 2px solid var(--ix-border);
    border-radius: var(--ix-radius);
    background: #fafafa;
    cursor: pointer;
    transition: all var(--ix-transition);
    font-family: inherit;
    width: 100%;
}
.ix-usage-card .fa {
    font-size: 1.5rem;
    color: var(--ix-green);
    margin-bottom: 0.5rem;
    transition: transform var(--ix-transition);
}
.ix-usage-card span { font-size: var(--ix-fs-small); font-weight: 700; color: var(--ix-text-muted); line-height: 1.35; }
.ix-usage-card:hover { border-color: var(--ix-green-head); background: #fff; }
.ix-usage-card.is-active {
    border-color: var(--ix-green-head);
    background: var(--ix-green-light);
    box-shadow: 0 4px 16px rgba(10, 92, 40, 0.18);
}
.ix-usage-card.is-active span { color: var(--ix-green-dark); }
.ix-usage-detail {
    display: flex;
    gap: 1rem;
    padding: 1.15rem;
    background: #eef4f0;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    opacity: 0;
    transform: translateY(8px);
    transition: all var(--ix-transition);
}
.ix-usage-detail.is-visible { opacity: 1; transform: translateY(0); }
.ix-usage-detail .fa { font-size: 1.75rem; color: var(--ix-green-head); flex-shrink: 0; }
.ix-usage-detail h3 { margin: 0 0 0.35rem !important; font-size: var(--ix-fs-h3) !important; color: var(--ix-text) !important; }
.ix-usage-detail p { margin: 0 !important; font-size: var(--ix-fs-base) !important; color: var(--ix-text-muted) !important; }

/* Prós e contras */
.ix-proscons-list {
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.ix-proscons-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: var(--ix-fs-base) !important;
    color: var(--ix-text-muted);
    opacity: 0;
    transform: translateX(-12px);
    animation: ixSlideIn 0.4s forwards;
    animation-delay: calc(var(--i) * 0.06s);
}
.ix-proscons-list--pros li {
    background: #dceee3;
    color: var(--ix-text-muted);
    border: 1px solid #b8d4c2;
}
.ix-proscons-list--pros .fa { color: var(--ix-green-dark); }
.ix-proscons-list--cons li {
    background: #f5e8df;
    color: var(--ix-text-muted);
    border: 1px solid #e0c4b0;
}
.ix-proscons-list--cons .fa { color: #9a3d0a; }

/* Tabela */
.guide-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0 1.5rem;
    font-size: var(--ix-fs-base);
    border: 2px solid var(--ix-border);
}
.guide-table th,
.guide-table td {
    border: 1px solid var(--ix-border);
    padding: 12px 14px;
    text-align: left;
    vertical-align: top;
}
.guide-table th {
    background: #d4eadc;
    color: var(--ix-green-dark);
    font-weight: 700;
    font-size: var(--ix-fs-base);
}
.guide-table td {
    color: var(--ix-text);
    background: #fff;
    font-size: var(--ix-fs-base);
}
.guide-table tr:nth-child(even) td { background: #f0f6f2; }
.guide-table td strong { color: var(--ix-text); }

@keyframes ixSlideIn {
    to { opacity: 1; transform: translateX(0); }
}

/* Sidebar scroll spy */
.guide-sidebar-toc { position: sticky; top: 90px; }
.guide-sidebar-toc ul { margin: 0; padding: 0; list-style: none; }
.guide-sidebar-toc li { margin-bottom: 0.35rem; font-size: var(--ix-fs-base); line-height: 1.45; }
.guide-sidebar-toc a {
    color: var(--ix-text-muted);
    text-decoration: none;
    padding: 0.2rem 0;
    display: block;
    border-left: 3px solid transparent;
    padding-left: 0.5rem;
    font-weight: 500;
    transition: all 0.2s;
}
.guide-sidebar-toc a:hover,
.guide-sidebar-toc a.is-active {
    color: var(--ix-link);
    border-left-color: var(--ix-green-head);
    font-weight: 700;
}

.guide-page .single-sidebar .categories li a {
    color: var(--ix-text-muted) !important;
    font-weight: 500 !important;
    font-size: var(--ix-fs-base) !important;
}
.guide-page .single-sidebar .categories li a:hover {
    color: var(--ix-link) !important;
}
.guide-page .single-sidebar .sidebar-title,
.guide-page .single-sidebar .sidebar-title h2,
.guide-page .single-sidebar .sidebar-title span {
    color: var(--ix-text) !important;
}
.guide-page .single-sidebar + .single-sidebar {
    margin-top: 1.5rem;
}

/* Skip link — acessibilidade */
.skip-link {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: 10000;
    padding: 0.75rem 1.25rem;
    background: var(--ix-green-head, #11803a);
    color: #fff !important;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none !important;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.skip-link:focus {
    left: 0.5rem;
    top: 0.5rem;
    width: auto;
    height: auto;
    overflow: visible;
    outline: 3px solid #fff;
    outline-offset: 2px;
}

/* FAQ responsiva */
.guide-page .lp-faq-area {
    padding: clamp(1.75rem, 1rem + 2vw, 2.5rem) 0 0;
}
.guide-page .lp-faq-list {
    display: flex;
    flex-direction: column;
    gap: clamp(0.5rem, 0.3rem + 0.5vw, 0.75rem);
    max-width: 100%;
}
.guide-page .lp-faq-item {
    margin-bottom: 0;
    border: 1px solid var(--ix-border);
    border-radius: var(--ix-radius);
    background: #fff;
    overflow: hidden;
    transition: box-shadow var(--ix-transition), border-color 0.2s;
}
.guide-page .lp-faq-item[open] {
    box-shadow: var(--ix-shadow);
    border-color: var(--ix-green-head);
}
.guide-page .lp-faq-item summary {
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    min-height: 3rem;
    padding: var(--ix-space-faq);
    padding-right: calc(var(--ix-space-faq) + 0.25rem);
    list-style: none;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
}
.guide-page .lp-faq-item summary::-webkit-details-marker {
    display: none;
}
.guide-page .lp-faq-item summary::after {
    content: '+';
    flex-shrink: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    color: var(--ix-green-head);
    background: var(--ix-green-light);
    border-radius: 50%;
    transition: transform 0.25s ease, background 0.2s;
}
.guide-page .lp-faq-item[open] summary::after {
    content: '−';
    background: var(--ix-green-head);
    color: #fff;
}
.guide-page .lp-faq-item summary:hover::after {
    background: #c5e0cc;
}
.guide-page .lp-faq-item[open] summary:hover::after {
    background: var(--ix-green-dark);
}
.guide-page .lp-faq-item summary h3 {
    margin: 0;
    font-size: var(--ix-fs-faq-q);
    font-weight: 700;
    color: var(--ix-text);
    display: block;
    line-height: var(--ix-lh-tight);
    flex: 1;
    min-width: 0;
}
.guide-page .lp-faq-item p {
    margin: 0;
    padding: 0 var(--ix-space-faq) var(--ix-space-faq);
    font-size: var(--ix-fs-faq-a);
    line-height: var(--ix-lh-faq);
    color: var(--ix-text-muted);
    max-width: 68ch;
}
.guide-page .lp-faq-item[open] summary {
    border-bottom: 1px solid var(--ix-border-light);
    padding-bottom: calc(var(--ix-space-faq) - 0.25rem);
    margin-bottom: 0.25rem;
}

/* FAQ genérica (fallback fora de .guide-page) */
.lp-faq-area { padding: 2.5rem 0 0; }
.lp-faq-item {
    margin-bottom: 0.75rem;
    border: 1px solid var(--ix-border);
    border-radius: var(--ix-radius);
    background: #fff;
    overflow: hidden;
    transition: box-shadow var(--ix-transition);
}
.lp-faq-item[open] { box-shadow: var(--ix-shadow); }
.lp-faq-item summary {
    cursor: pointer;
    padding: 1rem 1.25rem;
    list-style: none;
}
.lp-faq-item summary::-webkit-details-marker { display: none; }
.lp-faq-item summary h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--ix-text);
    display: inline;
}
.lp-faq-item p {
    margin: 0;
    padding: 0 1.25rem 1rem;
    line-height: 1.6;
    color: var(--ix-text-muted);
}
.guide-page .sec-title h2,
.guide-page .lp-faq-area .sec-title h2 {
    scroll-margin-top: 7.5rem;
}
.guide-page .sec-title h2,
.guide-page .sec-title h2 span {
    color: var(--ix-text);
}
.guide-page .sec-title h2 span {
    color: var(--ix-green-head);
}

.guide-page .info_apre,
.guide-page .info_apre p {
    color: var(--ix-text) !important;
}

/* Pilar e artigos longos — leitura prioritária */
.guide-page--pilar .postB p,
.guide-page--pilar .postB li,
.guide-page--pilar .guide-toc li,
.guide-page--pilar .guide-flow__step p,
.guide-page--pilar .guide-flow__step strong {
    font-size: var(--ix-fs-base) !important;
}
.guide-page--pilar .guide-toc h2#indice-titulo {
    font-size: var(--ix-fs-h3);
}

/* ========== Hero + Breadcrumb moderno ========== */
.guide-hero {
    position: relative;
    background: linear-gradient(160deg, #e8f4ec 0%, #f6faf7 45%, #fff 100%);
    border-bottom: 1px solid var(--ix-border-light);
    overflow: hidden;
}
.guide-hero::before {
    content: '';
    position: absolute;
    top: -40%;
    right: -8%;
    width: min(420px, 55vw);
    height: min(420px, 55vw);
    background: radial-gradient(circle, rgba(13, 107, 50, 0.08) 0%, transparent 70%);
    pointer-events: none;
}
.guide-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--ix-green-head), var(--ix-green), #2ecc71);
}
.guide-hero__inner {
    position: relative;
    z-index: 1;
    padding: clamp(1.5rem, 1rem + 2vw, 2.5rem) 0 clamp(1.75rem, 1.2rem + 2.5vw, 2.75rem);
}
.guide-hero__breadcrumb {
    margin-bottom: 1.15rem;
}
.guide-hero__trail {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem 0;
    list-style: none;
    margin: 0;
    padding: 0.5rem 0.9rem;
    font-size: var(--ix-fs-small);
    line-height: 1.45;
    color: var(--ix-text-subtle);
    background: rgb(255 255 255 / 74%);
    border: 1px solid rgb(10 92 40 / 12%);
    border-radius: 999px;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    width: fit-content;
    max-width: 100%;
    box-shadow: 0 1px 2px rgb(10 92 40 / 6%);
}
.guide-hero__trail > li {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}
.guide-hero__trail > li + li::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 0.65rem;
    border-right: 1.5px solid #9cb5a4;
    border-bottom: 1.5px solid #9cb5a4;
    transform: rotate(-45deg);
    flex-shrink: 0;
    user-select: none;
}
.guide-hero__crumb-link {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--ix-link) !important;
    font-weight: 600;
    text-decoration: none !important;
    transition: color 0.2s;
}
.guide-hero__crumb-link:hover,
.guide-hero__crumb-link:focus-visible {
    color: var(--ix-link-hover) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
    outline: none;
}
.guide-hero__crumb-icon {
    flex-shrink: 0;
    opacity: 0.88;
}
.guide-hero__crumb-current {
    display: inline-block;
    max-width: 100%;
    padding: 0.15rem 0.55rem;
    font-weight: 600;
    color: var(--ix-text-muted);
    background: rgb(10 92 40 / 8%);
    border-radius: 999px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* compat: links sem classe explícita */
.guide-hero__trail a:not(.guide-hero__crumb-link) {
    color: var(--ix-link) !important;
    font-weight: 600;
    text-decoration: none !important;
    transition: color 0.2s;
}
.guide-hero__trail a:not(.guide-hero__crumb-link):hover {
    color: var(--ix-link-hover) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}
.guide-hero__trail > li[aria-current="page"] {
    min-width: 0;
}
.guide-hero__trail > li[aria-current="page"] span:not(.guide-hero__crumb-current) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
    color: var(--ix-text-muted);
}
.guide-hero__content {
    max-width: 46rem;
}
.guide-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
    padding: 0.35rem 0.75rem;
    font-size: var(--ix-fs-small);
    font-weight: 700;
    color: var(--ix-green-dark);
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid #b8d4c2;
    border-radius: 20px;
}
.guide-hero__badge .fa { color: var(--ix-green-head); }
.guide-hero h1 {
    margin: 0 0 0.85rem;
    font-size: clamp(1.75rem, 1.4rem + 1.5vw, 2.375rem);
    font-weight: 800;
    line-height: 1.2;
    color: var(--ix-text);
    text-transform: none;
    letter-spacing: -0.02em;
}
.guide-hero__lead {
    margin: 0 0 1.25rem;
    font-size: var(--ix-fs-lead);
    line-height: var(--ix-lh-body);
    color: var(--ix-text-muted);
    max-width: 42rem;
}
.guide-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1.25rem;
    font-size: var(--ix-fs-small);
    color: var(--ix-text-subtle);
    font-weight: 600;
}
.guide-hero__meta > span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}
.guide-hero__meta .fa {
    color: var(--ix-green-head);
    opacity: 0.85;
}
.guide-hero__jump {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-left: auto;
    padding: 0.45rem 0.9rem;
    font-size: var(--ix-fs-small);
    font-weight: 700;
    color: var(--ix-green-head) !important;
    text-decoration: none !important;
    background: #fff;
    border: 2px solid var(--ix-green-head);
    border-radius: 8px;
    transition: background 0.2s, transform 0.2s;
}
.guide-hero__jump:hover {
    background: var(--ix-green-light);
    transform: translateY(-1px);
}

/* Tabela com scroll horizontal no mobile */
.guide-table-scroll {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    margin: 1rem 0 1.5rem;
    padding: 0;
    border-radius: var(--ix-radius);
    border: 2px solid var(--ix-border);
    background: #fff;
    box-shadow: 0 2px 14px rgba(17, 128, 58, 0.1);
    position: relative;
    max-width: 100%;
    scrollbar-width: thin;
    scrollbar-color: var(--ix-green-head) #e8f0eb;
}
.guide-table-scroll:focus {
    outline: 2px solid var(--ix-green-head);
    outline-offset: 2px;
}
.guide-table-scroll:focus:not(:focus-visible) {
    outline: none;
}
.guide-table-scroll:focus-visible {
    outline: 2px solid var(--ix-green-head);
    outline-offset: 2px;
}
.guide-table-scroll::-webkit-scrollbar {
    height: 8px;
}
.guide-table-scroll::-webkit-scrollbar-track {
    background: #e8f0eb;
    border-radius: 0 0 var(--ix-radius) var(--ix-radius);
}
.guide-table-scroll::-webkit-scrollbar-thumb {
    background: var(--ix-green-head);
    border-radius: 4px;
}
.guide-table-scroll .guide-table {
    margin: 0;
    min-width: 520px;
    border: none;
    box-shadow: none;
}
.guide-table-scroll .guide-table th {
    position: sticky;
    top: 0;
    z-index: 1;
    box-shadow: 0 1px 0 var(--ix-border);
}
.guide-table-scroll-hint {
    display: none;
    font-size: var(--ix-fs-small);
    color: var(--ix-text);
    text-align: center;
    padding: 0.5rem 0.75rem;
    margin: 0 0 0.5rem;
    font-weight: 600;
    background: var(--ix-green-light);
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    line-height: 1.4;
}
.guide-table-scroll-hint .fa {
    margin-right: 0.35rem;
    color: var(--ix-green-head);
}

/* Tabelas críticas: sem fade-in (translateY + overflow cortava conteúdo) */
.guide-table-scroll.ix-reveal,
.guide-table-scroll.ix-reveal.is-visible,
.guide-table-scroll-hint.ix-reveal,
.guide-table-scroll-hint.ix-reveal.is-visible {
    opacity: 1;
    transform: none;
    transition: none;
}

@media (min-width: 992px) {
    .guide-table-scroll {
        border-radius: 12px;
        box-shadow: 0 4px 22px rgba(17, 128, 58, 0.09);
    }
    .guide-table-scroll .guide-table th,
    .guide-table-scroll .guide-table td {
        padding: 13px 16px;
    }
    .guide-calc-tools__out .guide-table-scroll {
        margin-top: 0.75rem;
    }
}

/* Barra fixa de atalhos — mobile */
.guide-mobile-bar {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9990;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-top: 1px solid var(--ix-border-light);
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
    padding: 0.35rem 0.25rem calc(0.35rem + env(safe-area-inset-bottom, 0px));
}
.guide-mobile-bar__link {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    min-height: 3.25rem;
    padding: 0.35rem 0.25rem;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--ix-text-subtle) !important;
    text-decoration: none !important;
    border-radius: 8px;
    transition: color 0.2s, background 0.2s;
    -webkit-tap-highlight-color: transparent;
}
.guide-mobile-bar__link .fa {
    font-size: 1.2rem;
    color: var(--ix-green-head);
    transition: transform 0.2s;
}
.guide-mobile-bar__link.is-active,
.guide-mobile-bar__link:active {
    color: var(--ix-green-head) !important;
    background: var(--ix-green-light);
}
.guide-mobile-bar__link.is-active .fa {
    transform: scale(1.1);
}

/* Reveal on scroll */
.ix-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ix-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
    .ix-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

.ix-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (max-width: 991px) {
    .guide-page #conteudo-principal {
        padding-bottom: calc(4.75rem + env(safe-area-inset-bottom, 0px));
    }
    .guide-page .footer-area.site-footer {
        padding-bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
    }
    .guide-mobile-bar {
        display: flex;
    }
    .guide-aside {
        display: none;
    }
    .guide-table-scroll-hint {
        display: block;
    }
    .guide-table-scroll {
        border-width: 2px;
        box-shadow: 0 3px 16px rgba(17, 128, 58, 0.12);
    }
    .guide-table-scroll .guide-table {
        min-width: 480px;
        font-size: 0.9375rem;
    }
    .guide-table-scroll .guide-table th,
    .guide-table-scroll .guide-table td {
        padding: 10px 11px;
    }
    .guide-header__toggle { display: flex; }
    .guide-header__nav-wrap {
        position: fixed;
        top: 0;
        right: 0;
        width: min(320px, 88vw);
        height: 100vh;
        height: 100dvh;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 0;
        padding: 5.5rem 1.25rem 2rem;
        background: #fff;
        box-shadow: -8px 0 32px rgba(0, 0, 0, 0.15);
        transform: translateX(100%);
        transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
        overflow-y: auto;
        z-index: 9999;
    }
    .guide-header.is-nav-open .guide-header__nav-wrap {
        transform: translateX(0);
    }
    .guide-header__menu {
        flex-direction: column;
        align-items: stretch;
        gap: 0.25rem;
        width: 100%;
    }
    .guide-header__menu > li > a,
    .guide-header__drop-btn {
        width: 100%;
        justify-content: space-between;
        padding: 0.85rem 1rem;
        font-size: var(--ix-fs-base);
    }
    .guide-header__drop-panel {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: none;
        padding: 0 0 0.5rem 0.75rem;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.35s ease;
    }
    .guide-header__dropdown.is-open .guide-header__drop-panel {
        max-height: 320px;
    }
    .guide-header__drop-panel a {
        font-size: var(--ix-fs-base);
        padding: 0.7rem 1rem;
    }
    .guide-header__actions {
        flex-direction: column;
        width: 100%;
        margin-top: 1.25rem;
        padding-top: 1.25rem;
        border-top: 1px solid var(--ix-border-light);
    }
    .guide-header__btn {
        width: 100%;
        padding: 0.85rem 1rem;
        font-size: var(--ix-fs-base);
    }
    .guide-header__tag { font-size: clamp(0.8rem, 2.5vw, 0.95rem); }
    .guide-toc ol { columns: 1; }
    .ix-plastic-specs { grid-template-columns: repeat(2, 1fr); }
    .ix-cap-output { grid-template-columns: 1fr; }
    .ix-compare-details { grid-template-columns: 1fr; }
    .ix-usage-grid { grid-template-columns: repeat(3, 1fr); }
    .ix-bar-row { grid-template-columns: 1fr; gap: 0.35rem; }
    .guide-sidebar-toc { position: static; }
    .guide-article .postB h2,
    .guide-page .sec-title h2,
    .guide-page .lp-faq-area .sec-title h2,
    .guide-toc,
    #guia-indice {
        scroll-margin-top: calc(var(--guide-header-h, 5.5rem) + 0.5rem);
    }
    .ix-segmented {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        gap: 0.4rem;
        padding-bottom: 0.35rem;
        margin-bottom: 1rem;
    }
    .ix-segmented::-webkit-scrollbar { display: none; }
    .ix-segmented button {
        flex: 0 0 auto;
        min-width: auto;
        scroll-snap-align: start;
        min-height: 2.75rem;
        padding: 0.75rem 1.1rem;
        white-space: nowrap;
    }
    .ix-score-row {
        grid-template-columns: 1fr;
        gap: 0.35rem;
    }
    .ix-score-row strong {
        text-align: left;
    }
    .ix-cap-slider {
        height: 12px;
    }
    .ix-cap-slider::-webkit-slider-thumb {
        width: 28px;
        height: 28px;
    }
    .ix-usage-card {
        min-height: 4.5rem;
        padding: 0.85rem 0.4rem;
    }
    .guide-page .lp-faq-item summary {
        min-height: 3.5rem;
        padding: 1rem 1rem;
    }
    .guide-page .lp-faq-item summary::after {
        width: 2.25rem;
        height: 2.25rem;
    }
    .guide-toc-toggle {
        min-height: 2.75rem;
        padding: 0.25rem 0;
    }
    .ix-widget {
        margin-left: 0;
        margin-right: 0;
    }
    .guide-article .postB h2 { scroll-margin-top: calc(var(--guide-header-h, 5.5rem) + 0.5rem); }
    .ix-widget { padding: clamp(1rem, 0.5rem + 2vw, 1.5rem); }
}
@media (max-width: 767px) {
    .guide-header__bar {
        display: none;
    }
    .guide-header__inner {
        min-height: 3.5rem;
    }
    .guide-header__logo img {
        max-height: 42px;
    }
    .guide-hero h1 {
        font-size: clamp(1.5rem, 1.25rem + 2vw, 1.85rem);
    }
    .guide-hero__inner {
        padding-top: 1.25rem;
        padding-bottom: 1.5rem;
    }
    .press-release-content-area .sec-title {
        margin-bottom: 0.5rem;
    }
    .guide-hero__meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }
    .guide-hero__jump {
        margin-left: 0;
        width: 100%;
        justify-content: center;
    }
    .guide-hero__trail {
        flex-wrap: nowrap;
        border-radius: var(--ix-radius, 8px);
        width: 100%;
    }
    .guide-hero__trail > li:not([aria-current="page"]) {
        flex-shrink: 0;
    }
    .guide-hero__trail > li[aria-current="page"] {
        flex: 1;
        min-width: 0;
    }
    .guide-hero__crumb-current {
        white-space: normal;
    }
    :root {
        --ix-lh-body: 1.8;
        --ix-lh-faq: 1.75;
    }
    .guide-page .guide-intro { max-width: 100%; }
    .guide-article .postB p,
    .guide-article .postB li,
    .guide-article .postB dd,
    .guide-page .lp-faq-item p {
        max-width: none;
    }
    .guide-page .lp-faq-item summary {
        min-height: 3.25rem;
        align-items: center;
    }
    .guide-page .lp-faq-item summary::after {
        width: 2rem;
        height: 2rem;
        font-size: 1.35rem;
    }
    .guide-table th,
    .guide-table td {
        padding: 10px 12px;
        font-size: var(--ix-fs-base);
    }
    .guide-toc { padding: 1rem 1.15rem; }
    .guide-toc-toggle { font-size: var(--ix-fs-h3); }
}
@media (max-width: 575px) {
    .guide-page .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .ix-plastic-specs { grid-template-columns: 1fr; }
    .ix-usage-grid { grid-template-columns: repeat(2, 1fr); }
    .ix-segmented button {
        font-size: var(--ix-fs-base);
        padding: 0.8rem 1rem;
    }
    .guide-mobile-bar__link span {
        font-size: 0.68rem;
    }
    .guide-page .lp-faq-area .sec-title h2 {
        font-size: var(--ix-fs-h2);
    }
    .guide-page .lp-faq-item summary h3 {
        font-size: var(--ix-fs-faq-q);
    }
    .guide-page .lp-faq-item p {
        font-size: var(--ix-fs-faq-a);
        padding-bottom: calc(var(--ix-space-faq) + 0.25rem);
    }
    .guide-article .postB ul,
    .guide-article .postB ol {
        margin-left: 1.1rem;
        padding-right: 0.25rem;
    }
    .ix-bar-values {
        text-align: left;
        margin-top: 0.15rem;
    }
}
@media (min-width: 1200px) {
    .guide-page .lp-faq-list {
        max-width: 52rem;
    }
}

/* Featured snippets e fluxograma */
.guide-snippet {
    margin: 1.75rem 0;
    padding: 1.25rem 1.5rem;
    background: linear-gradient(135deg, #f0fdf4 0%, #ecfdf5 100%);
    border-left: 4px solid var(--ix-green, #11803a);
    border-radius: 0 10px 10px 0;
    box-shadow: 0 1px 3px rgba(17, 128, 58, 0.08);
}
.guide-snippet__label {
    margin: 0 0 0.5rem;
    font-weight: 700;
    font-size: var(--ix-fs-h4);
    color: var(--ix-green, #11803a);
}
.guide-checklist {
    margin: 0.75rem 0 0;
    padding-left: 1.25rem;
}
.guide-checklist li {
    margin-bottom: 0.5em;
}

.guide-myth-list {
    margin: 1.25rem 0 1.5rem;
    padding: 0;
}

.guide-myth-list dt {
    font-weight: 700;
    margin-top: 1rem;
    color: var(--guide-accent, #11803a);
}

.guide-myth-list dd {
    margin: 0.35rem 0 0 0;
    padding-left: 0;
}

/* ========== Fluxograma guide-flow (coleta / reciclagem) ========== */
.guide-flow {
    --flow-accent: var(--ix-green, #11803a);
    --flow-accent-soft: #dcfce7;
    --flow-line: #86efac;
    --flow-card-bg: #fff;
    --flow-surface: #f0fdf4;
    margin: 2rem 0;
    padding: clamp(1rem, 0.85rem + 0.5vw, 1.35rem);
    background: linear-gradient(160deg, var(--flow-surface) 0%, #f8fafc 55%, #fff 100%);
    border: 1px solid #bbf7d0;
    border-radius: 16px;
    overflow: visible;
}

.guide-flow.ix-reveal,
.guide-flow.ix-reveal.is-visible {
    opacity: 1;
    transform: none;
}

/* Setas no markup são redundantes — fluxo = ordem dos números */
.guide-flow__arrow {
    display: none !important;
}

.guide-flow__legend {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem 0.75rem;
    margin: 0 0 1rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: #475569;
}

.guide-flow__legend span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.25rem 0.65rem;
    background: var(--flow-accent-soft);
    color: var(--flow-accent);
    border-radius: 999px;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.guide-flow__steps {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 0;
    counter-reset: guide-flow-step;
}

.guide-flow__step {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 0.85rem;
    row-gap: 0;
    align-items: start;
    margin: 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    width: 100%;
    box-sizing: border-box;
    counter-increment: guide-flow-step;
}

.guide-flow__num {
    grid-column: 1;
    grid-row: 1 / span 2;
    flex-shrink: 0;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--flow-accent);
    color: #fff;
    font-weight: 700;
    border-radius: 50%;
    font-size: 0.95rem;
    line-height: 1;
    box-shadow: 0 0 0 4px var(--flow-surface);
    z-index: 1;
}

.guide-flow__step > div {
    grid-column: 2;
    grid-row: 1 / span 2;
    flex: 1;
    min-width: 0;
    padding: 0.9rem 1rem;
    background: var(--flow-card-bg);
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.guide-flow__step strong {
    display: block;
    margin-bottom: 0.35rem;
    color: #0f172a;
    font-size: 1rem;
    line-height: 1.3;
}

.guide-flow__step strong::before {
    content: "Etapa " counter(guide-flow-step) " · ";
    font-weight: 600;
    color: var(--flow-accent);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    display: block;
    margin-bottom: 0.2rem;
}

.guide-flow__step p {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.55;
    color: #475569;
}

.guide-flow__step p a {
    word-break: break-word;
}

/* Mobile: linha do tempo vertical */
@media (max-width: 575px) {
    .guide-flow {
        padding: 1rem 0.85rem 1rem 0.35rem;
    }

    .guide-flow__steps {
        margin-left: 1.15rem;
        padding-left: 1.35rem;
        border-left: 3px solid var(--flow-line);
        gap: 1rem;
    }

    .guide-flow__step {
        grid-template-columns: 1fr;
        padding-left: 0.15rem;
    }

    .guide-flow__num {
        position: absolute;
        left: -2.55rem;
        top: 0.85rem;
        width: 2.15rem;
        height: 2.15rem;
        font-size: 0.82rem;
        box-shadow: 0 0 0 4px var(--flow-surface);
    }

    .guide-flow__step > div {
        grid-column: 1;
        padding: 0.85rem 0.95rem;
    }

    .guide-flow__step strong {
        font-size: 0.98rem;
    }

    .guide-flow__step p {
        font-size: 0.9rem;
    }
}

/* Tablet: grade 2 colunas, leitura 1→2→3… */
@media (min-width: 576px) and (max-width: 991px) {
    .guide-flow__steps {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
    }

    .guide-flow__step {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .guide-flow__num {
        margin-bottom: 0.65rem;
    }

    .guide-flow__step > div {
        flex: 1;
        display: flex;
        flex-direction: column;
    }
}

/* Desktop: grade 4 colunas (8 etapas = 2 linhas legíveis) */
@media (min-width: 992px) {
    .guide-flow {
        padding: 1.35rem 1.5rem 1.5rem;
    }

    .guide-flow__steps {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1rem 1.15rem;
    }

    .guide-flow__step {
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    }

    .guide-flow__step > div {
        flex: 1;
        display: flex;
        flex-direction: column;
        transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }

    .guide-flow__step:hover > div,
    .guide-flow__step:focus-within > div {
        border-color: #86efac;
        box-shadow: 0 8px 24px rgba(17, 128, 58, 0.12);
    }

    .guide-flow__step:hover {
        transform: translateY(-2px);
    }

    .guide-flow__num {
        width: 2.65rem;
        height: 2.65rem;
        margin-bottom: 0.65rem;
    }

    .guide-flow__step strong::before {
        font-size: 0.7rem;
    }
}

@media (min-width: 1200px) {
    .guide-flow__steps {
        gap: 1.15rem 1.25rem;
    }

    .guide-flow__step > div {
        padding: 1rem 1.1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .guide-flow__step {
        transition: none;
    }

    .guide-flow__step:hover {
        transform: none;
    }
}

.guide-related-links {
    margin: 1rem 0 1.5rem;
}

.guide-note {
    font-size: var(--ix-fs-base);
    color: #64748b;
    font-style: italic;
    margin-top: 1rem;
}

/* ========== Produtos e galeria dinâmicos (guia) ========== */
.guide-dynamic {
    background: #f8faf8;
    border-bottom: 1px solid var(--ix-border-light, #e2ebe4);
}

.guide-dynamic__gallery {
    padding: clamp(1.5rem, 1rem + 2vw, 2.5rem) 0 1rem;
}

.guide-dynamic__products {
    padding: clamp(1rem, 0.8rem + 1.5vw, 2rem) 0 clamp(2rem, 1.5rem + 2vw, 2.75rem);
}

.guide-dynamic__loading {
    padding: 2rem 0;
    text-align: center;
    color: var(--ix-text-muted, #64748b);
}

.guide-dynamic__more {
    margin: -0.5rem 0 1.25rem;
}

.guide-dynamic__more-link {
    font-weight: 600;
    color: var(--ix-link, #11803a) !important;
    text-decoration: none !important;
}

.guide-dynamic__more-link:hover {
    text-decoration: underline !important;
}

.guide-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 12px;
}

@media (min-width: 768px) {
    .guide-gallery {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 16px;
    }
}

.guide-gallery__item {
    display: block;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #e4e4e4;
    background: #fff;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgb(0 0 0 / 6%);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.guide-gallery__item:hover,
.guide-gallery__item:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgb(17 128 58 / 12%);
    outline: none;
}

.guide-gallery__img-wrap {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    background: #f5f5f5;
}

.guide-gallery__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.25s ease;
}

.guide-gallery__item:hover img {
    transform: scale(1.06);
}

.guide-gallery__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 0.5rem;
    background: linear-gradient(transparent 40%, rgb(0 0 0 / 72%));
    opacity: 0;
    transition: opacity 0.2s ease;
}

.guide-gallery__item:hover .guide-gallery__overlay,
.guide-gallery__item:focus-visible .guide-gallery__overlay {
    opacity: 1;
}

.guide-gallery__label {
    font-size: 0.72rem;
    line-height: 1.3;
    color: #fff;
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.guide-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

@media (min-width: 992px) {
    .guide-products-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

.guide-prod-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e4e4e4;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgb(0 0 0 / 6%);
    transition: box-shadow 0.2s ease;
}

.guide-prod-card:hover {
    box-shadow: 0 6px 20px rgb(17 128 58 / 10%);
}

.guide-prod-card__img {
    display: block;
    padding: 12px;
    text-align: center;
    background: #fafafa;
    border-bottom: 1px solid #eee;
}

.guide-prod-card__img img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

.guide-prod-card__body {
    flex: 1;
    padding: 12px 14px 8px;
}

.guide-prod-card__title {
    margin: 0 0 8px;
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 600;
}

.guide-prod-card__title a {
    color: #222 !important;
    text-decoration: none !important;
}

.guide-prod-card__title a:hover {
    color: var(--ix-green-head, #11803a) !important;
}

.guide-prod-card__cat {
    margin: 0 0 4px;
    font-size: 0.82rem;
    color: var(--ix-green-head, #11803a);
    font-weight: 600;
}

.guide-prod-card__code {
    margin: 0;
    color: #777;
    font-size: 0.78rem;
}

.guide-prod-price {
    margin-bottom: 8px;
    min-height: 1.5em;
}

.guide-prod-badge {
    display: inline-block;
    margin-right: 6px;
    padding: 0.1rem 0.45rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    background: #e74c3c;
    border-radius: 3px;
    vertical-align: middle;
}

.guide-prod-valor-promo {
    font-weight: 700;
    color: #11803a;
    font-size: 1rem;
}

.guide-prod-valor-de {
    display: block;
    font-size: 0.78rem;
    color: #999;
    text-decoration: line-through;
}

.guide-prod-valor {
    font-weight: 700;
    color: #222;
}

.guide-prod-consulte {
    font-size: 0.88rem;
    font-weight: 600;
    color: #555;
}

.guide-prod-card__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 14px 14px;
    margin-top: auto;
}

.guide-prod-card__btn {
    flex: 1;
    text-align: center;
    padding: 0.5rem 0.85rem !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    text-transform: none !important;
    line-height: 1.35 !important;
    background: var(--ix-green-head, #0a5c28) !important;
    border: 2px solid var(--ix-green-head, #0a5c28) !important;
    color: #fff !important;
    border-radius: 4px;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.guide-prod-card__btn:hover,
.guide-prod-card__btn:focus-visible {
    background: #141414 !important;
    border-color: var(--ix-green, #11803a) !important;
    color: #fff !important;
}

.guide-prod-card__wa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 6px;
    background: #25d366;
    color: #fff !important;
    font-size: 1.15rem;
    flex-shrink: 0;
    transition: background 0.2s ease;
}

.guide-prod-card__wa:hover {
    background: #1da851;
    color: #fff !important;
}

/* Calculadora de dimensionamento (Nível 7) */
.guide-calculator {
    margin: 1.5rem 0 2rem;
    padding: 1.5rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
}
.guide-calculator__title {
    font-size: 1.15rem;
    margin: 0 0 1rem;
    color: var(--ix-text, #1e293b);
}
.guide-calculator__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}
.guide-calculator__field {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    font-size: 0.9rem;
}
.guide-calculator__field span {
    font-weight: 600;
    color: var(--ix-text, #334155);
}
.guide-calculator__field input,
.guide-calculator__field select {
    padding: 0.55rem 0.75rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-size: 1rem;
    background: #fff;
}
.guide-calculator__field input:focus,
.guide-calculator__field select:focus {
    outline: 2px solid #11803a;
    outline-offset: 1px;
}
.guide-calculator__btn {
    margin-bottom: 1rem;
}
.guide-calculator__result {
    padding: 1rem 1.25rem;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 8px;
    margin-top: 0.5rem;
}
.guide-calculator__result p {
    margin: 0.35rem 0;
}
.guide-calculator__note {
    font-size: 0.88rem;
    color: #475569;
    margin-top: 0.75rem !important;
}
.guide-calculator__hint {
    font-size: 0.88rem;
    color: #64748b;
    margin-top: 0.5rem;
}
.guide-calculator__justificativa {
    font-size: 0.9rem;
    color: #334155;
    margin-top: 0.75rem;
    line-height: 1.55;
}
.guide-calculator__area-warn {
    font-size: 0.88rem;
    color: #b45309;
    background: #fffbeb;
    border: 1px solid #fcd34d;
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    margin-top: 0.5rem;
}
.guide-calculator__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}
.guide-calculator__action-btn {
    padding: 0.45rem 0.9rem;
    font-size: 0.85rem;
    border: 1px solid #11803a;
    background: #fff;
    color: #11803a;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 600;
}
.guide-calculator__action-btn:hover {
    background: #ecfdf5;
}
.guide-calc-cor-swatch {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 3px;
    vertical-align: middle;
    border: 1px solid rgba(0,0,0,0.15);
}
.guide-calc-tools {
    margin: 1.5rem 0 2rem;
    padding: 1.25rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
}
.guide-calc-tools__title {
    font-size: 1.05rem;
    margin: 1rem 0 0.75rem;
    color: var(--ix-text, #1e293b);
}
.guide-calc-tools__title:first-child {
    margin-top: 0;
}
.guide-calc-tools__out {
    font-size: 0.95rem;
    margin: 0.5rem 0 0;
    color: #334155;
}
.guide-calc-tools input[type="range"] {
    width: 100%;
    max-width: 320px;
    vertical-align: middle;
}
.guide-formula {
    padding: 0.75rem 1rem;
    background: #f0fdf4;
    border-left: 4px solid #11803a;
    margin: 0.75rem 0;
    font-family: inherit;
}
.guide-checklist {
    list-style: none;
    padding: 0;
    margin: 1rem 0 1.5rem;
}
.guide-checklist li {
    padding: 0.5rem 0;
    border-bottom: 1px solid #e2e8f0;
}
.guide-checklist label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.95rem;
}
.guide-flow-legend {
    text-align: center;
    font-size: 0.85rem;
    color: #64748b;
    margin: -0.5rem 0 1.5rem;
}
.guide-timeline {
    margin: 1.5rem 0 2rem;
    padding-left: 0.5rem;
    border-left: 3px solid #11803a;
}
.guide-timeline__item {
    position: relative;
    padding: 0 0 1.25rem 1.25rem;
}
.guide-timeline__num {
    position: absolute;
    left: -1.6rem;
    width: 1.75rem;
    height: 1.75rem;
    background: #11803a;
    color: #fff;
    border-radius: 50%;
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.guide-timeline__dias {
    font-size: 0.85rem;
    color: #64748b;
    font-weight: 500;
}
.guide-timeline__body p {
    margin: 0.25rem 0 0;
    font-size: 0.92rem;
    color: #475569;
}
.guide-infographic {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 1rem;
    margin: 1.5rem 0 2rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, #f0f7f2 0%, #fff 100%);
    border: 1px solid var(--ix-border, #e2e8f0);
    border-radius: var(--ix-radius, 10px);
}
.guide-infographic__item {
    text-align: center;
    padding: 0.75rem;
}
.guide-infographic__icon {
    font-size: 1.75rem;
    display: block;
    margin-bottom: 0.35rem;
}
.guide-infographic__item strong {
    display: block;
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
}
.guide-infographic__item p {
    font-size: 0.82rem;
    color: #64748b;
    margin: 0;
}
.guide-mito-item {
    margin: 0.5rem 0;
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}
.guide-mito-item summary {
    cursor: pointer;
    font-size: 0.95rem;
}
.guide-mito-item p {
    margin: 0.5rem 0 0;
    font-size: 0.9rem;
    color: #475569;
}
.ix-reciclagem-quiz-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin: 0.75rem 0;
}
.ix-ec-quiz-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin: 0.75rem 0;
}
.ix-lr-quiz-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin: 0.75rem 0;
}

/* Lixeiras coleta seletiva — widgets dedicados */
.guide-flow-diagram {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 0.5rem 0.25rem;
    margin: 1.5rem 0 2rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, #f0f7f2 0%, #fff 100%);
    border: 1px solid var(--ix-border);
    border-radius: var(--ix-radius);
}
.guide-flow-diagram__step {
    flex: 1 1 120px;
    max-width: 160px;
    text-align: center;
    padding: 0.75rem 0.5rem;
}
.guide-flow-diagram__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: var(--ix-green-head);
    color: #fff;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}
.guide-flow-diagram__step strong {
    display: block;
    font-size: 0.9rem;
    color: var(--ix-green-head);
    margin-bottom: 0.25rem;
}
.guide-flow-diagram__step p {
    margin: 0;
    font-size: 0.8rem;
    color: var(--ix-text-muted);
    line-height: 1.4;
}
.guide-flow-diagram__arrow {
    display: flex;
    align-items: center;
    color: #94a3b8;
    font-size: 1.25rem;
    padding: 0 0.15rem;
}

.ix-color-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.75rem;
    margin: 1rem 0 2rem;
}
.ix-color-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem 0.75rem;
    background: #fff;
    border: 2px solid var(--ix-border);
    border-radius: 10px;
    text-decoration: none;
    transition: transform var(--ix-transition), box-shadow var(--ix-transition), border-color var(--ix-transition);
}
.ix-color-card:hover {
    transform: translateY(-3px);
    border-color: var(--ix-color, var(--ix-green-head));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}
.ix-color-card__swatch {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background: var(--ix-color);
    margin-bottom: 0.6rem;
    box-shadow: inset 0 -4px 8px rgba(0, 0, 0, 0.15);
}
.ix-color-card__name {
    font-weight: 700;
    color: var(--ix-text);
    font-size: 0.95rem;
}
.ix-color-card__mat {
    font-size: 0.78rem;
    color: var(--ix-text-muted);
    margin-top: 0.2rem;
}
.ix-color-card.is-current {
    border-color: var(--ix-green-head);
    box-shadow: 0 0 0 2px rgba(17, 128, 58, 0.25);
    position: relative;
}
.ix-color-card__badge {
    position: absolute;
    top: 0.4rem;
    right: 0.4rem;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--ix-green-head);
    background: #f0fdf4;
    padding: 0.15rem 0.4rem;
    border-radius: 4px;
}

.ix-yesno-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}
.ix-yesno-btn {
    flex: 1 1 140px;
    padding: 0.75rem 1rem;
    border: 2px solid var(--ix-green-head);
    border-radius: 8px;
    background: #fff;
    color: var(--ix-green-head);
    font-weight: 700;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s;
}
.ix-yesno-btn:hover:not(:disabled) { background: var(--ix-green-head); color: #fff; }
.ix-yesno-btn.is-correct { background: #15803d; border-color: #15803d; color: #fff; }
.ix-yesno-btn.is-wrong { background: #b91c1c; border-color: #b91c1c; color: #fff; }
.ix-yesno-btn:disabled { cursor: default; opacity: 0.9; }

.ix-compare-table th,
.ix-compare-table td { font-size: 0.88rem; vertical-align: top; }
.ix-compare-panel { margin-top: 0.5rem; }

.ix-cluster-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 0.75rem;
    margin: 1rem 0 1.5rem;
}
.ix-cluster-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    padding: 1rem;
    background: #fff;
    border: 2px solid var(--ix-border);
    border-radius: 10px;
    text-decoration: none;
    transition: transform var(--ix-transition), box-shadow var(--ix-transition), border-color var(--ix-transition);
}
.ix-cluster-card:hover {
    transform: translateY(-3px);
    border-color: var(--ix-green-head);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}
.ix-cluster-card__icon {
    width: 2.25rem;
    height: 2.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f0fdf4;
    color: var(--ix-green-head);
    border-radius: 8px;
    margin-bottom: 0.6rem;
    font-size: 1.1rem;
}
.ix-cluster-card__title {
    font-weight: 700;
    color: var(--ix-text);
    font-size: 0.95rem;
    line-height: 1.3;
}
.ix-cluster-card__desc {
    font-size: 0.78rem;
    color: var(--ix-text-muted);
    margin-top: 0.25rem;
    line-height: 1.35;
}

[data-ix="flow-explorer"] .guide-flow__step {
    cursor: pointer;
}

[data-ix="flow-explorer"] .guide-flow__step > div {
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

[data-ix="flow-explorer"] .guide-flow__step.is-active > div {
    border-color: var(--ix-green-head, #11803a);
    box-shadow: 0 0 0 2px rgba(17, 128, 58, 0.25);
}

@media (min-width: 992px) {
    [data-ix="flow-explorer"] .guide-flow__step:hover {
        transform: none;
    }
}
.ix-flow-panel {
    margin-top: 1rem;
    padding: 1rem 1.15rem;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    font-size: 0.92rem;
    line-height: 1.55;
    color: var(--ix-text-muted);
}
.ix-flow-panel p { margin: 0; }

.guide-table tbody tr.is-highlighted {
    background: #f0fdf4;
    outline: 2px solid var(--ix-green-head);
    outline-offset: -2px;
}
.guide-table tbody tr[id^="cor-"] { cursor: pointer; }

[data-ix="hub-dimension"] label {
    display: block;
    font-weight: 700;
    font-size: 0.88rem;
    margin: 0.75rem 0 0.35rem;
    color: var(--ix-text);
}
[data-ix="hub-dimension"] select {
    width: 100%;
    max-width: 24rem;
    margin-bottom: 0.75rem;
}
.ix-dim-result {
    margin-top: 1rem;
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    font-size: 0.92rem;
}
.ix-dim-result p { margin: 0 0 0.5rem; }
.ix-dim-result p:last-child { margin-bottom: 0; }

.ix-dim-inline {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ix-border-light);
}
.ix-dim-inline label { display: block; margin-bottom: 0.35rem; font-weight: 600; }
.ix-dim-inline input.form-control {
    max-width: 12rem;
    margin-bottom: 0.75rem;
}

.ix-cap-compare-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-cap-compare-btn {
    flex: 1 1 calc(16.66% - 0.5rem);
    min-width: 4.5rem;
    padding: 0.65rem 0.4rem;
    border: 2px solid var(--ix-border-light);
    border-radius: 8px;
    background: #fff;
    font-weight: 700;
    font-size: 1rem;
    color: var(--ix-text);
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}
.ix-cap-compare-btn small { display: block; font-size: 0.65em; font-weight: 600; color: var(--ix-text-muted); }
.ix-cap-compare-btn:hover,
.ix-cap-compare-btn.is-active {
    border-color: var(--ix-green);
    background: #f0faf4;
}
.ix-cap-compare-detail {
    margin-top: 0.75rem;
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
}
.ix-cap-compare-detail h4 { margin: 0 0 0.5rem; color: var(--ix-green-head); }
.ix-cap-badge {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.15rem 0.5rem;
    background: var(--ix-green);
    color: #fff;
    border-radius: 4px;
    vertical-align: middle;
    margin-left: 0.35rem;
}
.ix-pedal-detail {
    margin-top: 1rem;
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
}
.ix-pedal-detail h4 { margin: 0 0 0.5rem; }

.ix-pead-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-pead-btn {
    padding: 0.5rem 0.85rem;
    border: 2px solid var(--ix-border-light);
    border-radius: 8px;
    background: #fff;
    font-weight: 600;
    font-size: 0.88rem;
    cursor: pointer;
}
.ix-pead-btn.is-active,
.ix-pead-btn:hover { border-color: var(--ix-green); background: #f0faf4; }
.ix-pead-detail {
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
}
.ix-pead-detail h4 { margin: 0 0 0.5rem; color: var(--ix-green-head); }

.ix-classe-toggle {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-classe-btn {
    flex: 1 1 45%;
    padding: 0.75rem;
    border: 2px solid var(--ix-border-light);
    border-radius: 8px;
    background: #fff;
    font-weight: 600;
    cursor: pointer;
    text-align: left;
}
.ix-classe-btn.is-active { border-color: var(--ix-green); background: #f0faf4; }
.ix-classe-detail {
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
}
.ix-classe-alert { color: #b45309; font-weight: 600; margin-top: 0.75rem; }
.ix-norm-detail { margin-top: 1rem; padding: 1rem; background: #f8faf8; border-radius: 8px; border: 1px solid var(--ix-border-light); }
.ix-step-fail { color: #b45309; font-size: 0.92rem; }

.ix-rss-grid, .ix-timeline-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-rss-btn, .ix-timeline-btn {
    padding: 0.5rem 0.85rem;
    border: 2px solid var(--ix-border-light);
    border-radius: 8px;
    background: #fff;
    font-weight: 600;
    cursor: pointer;
}
.ix-rss-btn.is-active, .ix-timeline-btn.is-active,
.ix-rss-btn:hover, .ix-timeline-btn:hover {
    border-color: var(--ix-green);
    background: #f0faf4;
}
.ix-rss-detail, .ix-timeline-detail, .ix-tempo-detail {
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    margin-top: 0.75rem;
}

.ix-loop-toggle {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-loop-btn {
    flex: 1 1 45%;
    padding: 0.75rem;
    border: 2px solid var(--ix-border-light);
    border-radius: 8px;
    background: #fff;
    font-weight: 600;
    cursor: pointer;
}
.ix-loop-btn.is-active { border-color: var(--ix-green); background: #f0faf4; }
.ix-loop-steps { padding: 1rem; background: #f8faf8; border-radius: 8px; border: 1px solid var(--ix-border-light); }
.ix-loop-list { margin: 0.5rem 0 0.75rem 1.25rem; }
.ix-lr-detail { padding: 1rem; background: #f8faf8; border: 1px solid var(--ix-border-light); border-radius: 8px; margin-top: 0.75rem; }
.ix-lr-detail h4 { margin: 0 0 0.5rem; }

.ix-3rs-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}
.ix-3rs-btn {
    flex: 1 1 30%;
    min-width: 100px;
    padding: 0.65rem 0.5rem;
    border: 2px solid var(--ix-green-head);
    border-radius: 8px;
    background: #fff;
    color: var(--ix-green-head);
    font-weight: 700;
    font-size: 0.85rem;
    cursor: pointer;
}
.ix-3rs-btn:hover:not(:disabled) { background: var(--ix-green-head); color: #fff; }
.ix-3rs-btn.is-correct { background: #15803d; border-color: #15803d; color: #fff; }
.ix-3rs-btn.is-wrong { background: #b91c1c; border-color: #b91c1c; color: #fff; }

.ix-step-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 0.5rem;
    margin: 1rem 0;
}
.ix-step-grid--compact { grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); }
.ix-step-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.35rem;
    padding: 0.75rem 0.5rem;
    border: 2px solid var(--ix-border);
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.82rem;
    color: var(--ix-text-muted);
    transition: border-color 0.2s, box-shadow 0.2s;
}
.ix-step-card__num {
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ix-green-head);
    color: #fff;
    border-radius: 50%;
    font-size: 0.8rem;
    font-weight: 700;
}
.ix-step-card.is-active { border-color: var(--ix-green-head); box-shadow: 0 0 0 2px rgba(17,128,58,0.2); color: var(--ix-text); }
.ix-step-panel {
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    font-size: 0.92rem;
    line-height: 1.55;
}
.ix-step-panel p { margin: 0; }

.ix-checklist-list label {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.92rem;
    line-height: 1.45;
}
.ix-checklist-list input { margin-top: 0.2rem; flex-shrink: 0; }
.ix-checklist-progress {
    font-weight: 700;
    color: var(--ix-green-head);
    margin: 0 0 0.75rem;
}

.ix-esg-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
    margin: 1rem 0;
}
.ix-esg-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    padding: 1rem 0.5rem;
    border: 2px solid var(--ix-border);
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
    font-weight: 700;
    font-size: 0.85rem;
    color: var(--ix-text-muted);
}
.ix-esg-card__letter {
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f0fdf4;
    color: var(--ix-green-head);
    border-radius: 50%;
    font-size: 1.1rem;
    font-weight: 800;
}
.ix-esg-card.is-active { border-color: var(--ix-green-head); color: var(--ix-text); }
.ix-esg-detail {
    padding: 1rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
}
.ix-esg-detail h4 { margin: 0 0 0.5rem !important; color: var(--ix-green-head) !important; }
.ix-esg-detail p { margin: 0 0 0.5rem !important; font-size: 0.92rem !important; }

.ix-cenario-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 0.5rem;
    margin-top: 0.5rem;
}
.ix-cenario-btn {
    padding: 0.75rem 1rem;
    border: 2px solid var(--ix-border);
    border-radius: 8px;
    background: #fff;
    font-weight: 600;
    font-size: 0.88rem;
    cursor: pointer;
    text-align: left;
    transition: border-color 0.2s, background 0.2s;
}
.ix-cenario-btn:hover { border-color: var(--ix-green-head); background: #f0fdf4; }

.ix-quiz-intro { margin: 0 0 0.5rem; color: var(--ix-text-muted); }
.ix-quiz-score { font-weight: 700; color: var(--ix-green-head); margin: 0 0 1rem; }
.ix-quiz-question,
.ix-mat-question {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--ix-text) !important;
    margin: 0 0 1rem;
    min-height: 1.5em;
    line-height: 1.45;
}
.ix-widget .ix-quiz-actions .thm-btn,
.ix-widget .ix-3rs-actions .thm-btn {
    flex: 1 1 calc(50% - 0.5rem);
    min-width: 120px;
    padding: 0.7rem 1rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.9rem;
    line-height: 1.35;
    color: var(--ix-green-head);
    background: #fff;
    border: 2px solid var(--ix-green-head);
}
.ix-widget .ix-quiz-actions .thm-btn.bg-cl-1,
.ix-widget .ix-3rs-actions .thm-btn.bg-cl-1 {
    color: #fff;
    background: var(--ix-green-head);
}
.ix-widget .ix-quiz-actions .thm-btn:hover,
.ix-widget .ix-3rs-actions .thm-btn:hover {
    background: var(--ix-green-light);
    color: var(--ix-green-head);
}
.ix-widget .ix-quiz-actions .thm-btn.bg-cl-1:hover,
.ix-widget .ix-3rs-actions .thm-btn.bg-cl-1:hover {
    background: var(--ix-green-dark);
    color: #fff;
    border-color: var(--ix-green-dark);
}
.ix-widget .ix-mat-next,
.ix-widget .ix-quiz-next {
    color: #fff !important;
    background: var(--ix-green-head) !important;
    border: 2px solid var(--ix-green-head) !important;
    margin-top: 0.5rem;
    padding: 0.65rem 1.25rem;
}
.ix-widget .ix-mat-next[hidden],
.ix-widget .ix-quiz-next[hidden],
.ix-widget .ix-mat-restart[hidden] {
    display: none !important;
}
.ix-widget .ix-quiz-actions .thm-btn.is-correct,
.ix-widget .ix-3rs-actions .thm-btn.is-correct {
    background: #15803d !important;
    border-color: #15803d !important;
    color: #fff !important;
}
.ix-widget .ix-quiz-actions .thm-btn.is-wrong,
.ix-widget .ix-3rs-actions .thm-btn.is-wrong {
    background: #b91c1c !important;
    border-color: #b91c1c !important;
    color: #fff !important;
}
.ix-widget .ix-quiz-actions .thm-btn:disabled,
.ix-widget .ix-3rs-actions .thm-btn:disabled {
    opacity: 0.92;
    cursor: default;
}
.ix-mat-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.25rem;
}
.ix-mat-nav--footer {
    margin-top: 0.75rem;
}
.ix-widget .ix-mat-restart {
    color: var(--ix-green-head) !important;
    background: #fff !important;
    border: 2px solid var(--ix-border) !important;
    padding: 0.65rem 1.25rem;
}
.ix-widget .ix-mat-restart:hover {
    background: var(--ix-green-light) !important;
    border-color: var(--ix-green-head) !important;
}
.ix-mat-summary,
.ix-quiz-summary {
    margin-top: 1rem;
    padding: 1.25rem;
    background: #f0faf4;
    border: 1px solid #b8dfc8;
    border-radius: var(--ix-radius);
}
.ix-mat-summary__title {
    margin: 0 0 0.5rem !important;
    font-size: 1.15rem !important;
    color: var(--ix-green-head) !important;
}
.ix-mat-summary__text {
    margin: 0 !important;
    color: var(--ix-text-muted) !important;
    line-height: 1.55 !important;
}
.ix-mat-progress {
    margin: 0 0 0.35rem;
}
.ix-mat-card .ix-mat-score {
    margin: 0.75rem 0 0.5rem;
}
/* Widgets interativos — sempre visíveis (não usar fade-in do ix-reveal) */
.ix-widget.ix-reveal {
    opacity: 1;
    transform: none;
}
.ix-quiz-card {
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 10px;
    padding: 1.25rem;
}
.ix-quiz-label { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--ix-text-subtle); margin: 0 0 0.25rem; font-weight: 700; }
.ix-quiz-item { font-size: 1.25rem; font-weight: 700; color: var(--ix-text); margin: 0 0 1rem; }
.ix-quiz-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}
.ix-quiz-btn {
    flex: 1 1 calc(33% - 0.5rem);
    min-width: 90px;
    padding: 0.65rem 0.5rem;
    border: 2px solid var(--ix-color);
    border-radius: 8px;
    background: #fff;
    color: var(--ix-color);
    font-weight: 700;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.2s;
}
.ix-quiz-btn:hover:not(:disabled) { background: var(--ix-color); color: #fff; }
.ix-quiz-btn.is-correct { background: #15803d; border-color: #15803d; color: #fff; }
.ix-quiz-btn.is-wrong { background: #b91c1c; border-color: #b91c1c; color: #fff; }
.ix-quiz-actions--cozinha .ix-quiz-btn {
    flex: 1 1 calc(50% - 0.35rem);
    min-width: 120px;
}
@media (max-width: 480px) {
    .ix-quiz-actions--cozinha .ix-quiz-btn { flex: 1 1 100%; }
}
.ix-quiz-feedback { margin: 0 0 1rem; font-size: 0.92rem; line-height: 1.5; }
.ix-quiz-feedback.is-success { color: #15803d; }
.ix-quiz-feedback.is-error { color: #b45309; }
.ix-quiz-next { margin-top: 0.25rem; }

.ix-conjunto-checks {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.5rem;
    margin-bottom: 1rem;
}
.ix-conjunto-checks label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.65rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
}
.ix-conjunto-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--ix-color);
    flex-shrink: 0;
}
.ix-conjunto-viz {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
    min-height: 2.5rem;
}
.ix-conjunto-bin {
    padding: 0.4rem 0.75rem;
    border-radius: 6px;
    background: var(--ix-color);
    color: #fff;
    font-size: 0.8rem;
    font-weight: 700;
}
.ix-conjunto-output p { margin: 0 0 0.5rem; }
.ix-conjunto-note { font-size: 0.88rem; color: var(--ix-text-muted); }
.ix-conjunto-cta { display: inline-block; margin-top: 0.5rem; }

.ix-material-panel h4 { margin: 0 0 0.5rem !important; color: var(--ix-green-head) !important; }
.ix-material-panel ul { margin: 0.5rem 0 0; padding-left: 1.25rem; }
.ix-material-panel li { margin-bottom: 0.35rem; color: var(--ix-text-muted); }

.guide-steps-list {
    counter-reset: guide-step;
    list-style: none;
    padding: 0;
    margin: 1rem 0 1.5rem;
}
.guide-steps-list li {
    position: relative;
    padding: 0.85rem 0.85rem 0.85rem 3rem;
    margin-bottom: 0.5rem;
    background: #f8faf8;
    border: 1px solid var(--ix-border-light);
    border-radius: 8px;
    border-left: 4px solid var(--ix-green-head);
}
.guide-steps-list li::before {
    counter-increment: guide-step;
    content: counter(guide-step);
    position: absolute;
    left: 0.85rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.6rem;
    height: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ix-green-head);
    color: #fff;
    font-weight: 700;
    font-size: 0.85rem;
    border-radius: 50%;
}

@media (max-width: 767px) {
    .guide-flow-diagram__arrow { display: none; }
    .guide-flow-diagram__step { flex: 1 1 45%; max-width: none; }
    .ix-quiz-btn { flex: 1 1 calc(50% - 0.5rem); }
    .ix-esg-grid { grid-template-columns: 1fr; }
}
