/* Revisão do canal direto. Reutiliza a paleta e a tipografia existentes. */
:root { --color-action: var(--color-deep); }
:where(section[id], details[id], main[id]) { scroll-margin-top: 88px; }
.btn--primary, .nav-link--cta { background: var(--color-action); }
.btn--primary:hover, .nav-link--cta:hover { background: var(--color-text); }
.nav-link--cta:hover { color: var(--color-white); }
.btn-cookie--primary, .cookie-banner__trigger { background-color: var(--color-deep); }
.btn-cookie--primary { border-color: var(--color-deep); }
.btn-cookie--outline { color: var(--color-deep); border-color: var(--color-deep); }
.btn-cookie--outline:hover, .btn-cookie--primary:hover { background: var(--color-text); color: var(--color-white); }
.cookie-modal__close { min-width: 44px; min-height: 44px; }
.cookie-modal__powered { color: var(--color-text-muted); }
.switch:focus-within .slider { outline: 3px solid var(--color-deep); outline-offset: 3px; }
.language-selector { min-height: 44px; }
.form-consent input { accent-color: var(--color-deep); }
.form-group input:focus-visible, .form-group select:focus-visible, .form-group textarea:focus-visible { outline: 3px solid var(--color-deep); outline-offset: 3px; }
.section__eyebrow, .lens-card__index, .use-case__tag, .activation-step > span { color: var(--color-deep); }
:focus-visible { outline: 3px solid var(--color-deep); outline-offset: 4px; }
.hero--2026 { min-height: auto; padding-top: calc(72px + clamp(3rem, 6vw, 6rem)); padding-bottom: clamp(3rem, 6vw, 6rem); }
.hero--2026 .container { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 5vw, 5rem); }
.hero--2026 .hero__headline { font-size: clamp(2.6rem, 4.9vw, 4.5rem); line-height: 1.06; }
.hero--2026 .hero__subheadline { font-size: 1.08rem; line-height: 1.75; }
.hero--2026 .hero__microcopy { margin-top: 1.5rem; }
.hero--2026 .hero__microcopy p { color: var(--color-text-secondary); font-size: .88rem; }
.hero--2026 .hero__visual { min-height: 520px; }
.hero--2026 .hero__visual img { height: 520px; object-position: 59% center; }
.hero__visual::after { position: absolute; inset: 60% 0 0; background: linear-gradient(transparent, var(--color-deep)); content: ''; pointer-events: none; }
.hero__caption { z-index: 1; color: var(--color-white); line-height: 1.7; }
.hero--2026 .hero__visual .hero__motion { position: absolute; inset: 0; width: 100%; height: 100%; object-position: 59% center; opacity: 0; }
.hero__visual[data-video-ready="true"] .hero__motion { opacity: 1; }
.hero-video-control { position: absolute; top: 1rem; right: 1rem; z-index: 2; display: inline-flex; align-items: center; gap: .6rem; min-height: 44px; padding: .65rem .9rem; border: 1px solid var(--color-deep); border-radius: var(--radius-sm); background: var(--color-white); color: var(--color-deep); font: 500 .78rem var(--font-body); cursor: pointer; }
.hero-video-control[hidden], .hero-video-control [hidden] { display: none; }
.hero-video-control:focus-visible { outline-color: var(--color-white); }
.hero-video-control__icon { width: 0; height: 0; border-block: 5px solid transparent; border-left: 8px solid currentColor; }
.hero-video-control:has([data-video-play][hidden]) .hero-video-control__icon { width: 8px; height: 10px; border-block: 0; border-inline: 3px solid currentColor; }
@media (max-width: 1024px), (prefers-reduced-motion: reduce) {
    .hero--2026 .hero__visual .hero__motion, .hero-video-control { display: none; }
}
.section--practice { background: var(--color-sand); }
.example-label { color: var(--color-text-secondary); font-size: .78rem; line-height: 1.6; }
.practice-journey { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 1.5rem; gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; }
.practice-step { position: relative; background: var(--color-white); padding: 1.75rem; }
.step-number { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: 1.5rem; border: 1px solid var(--color-moss); border-radius: 50%; color: var(--color-deep); font-size: .78rem; font-weight: 600; }
.practice-step:not(:last-child)::after { content: '→'; position: absolute; right: .85rem; top: 2.2rem; color: var(--color-deep); }
.practice-step h3, .culture-cycle h3, .privacy-grid h3 { margin-bottom: .85rem; font-size: 1.3rem; line-height: 1.3; }
.practice-step p, .culture-cycle p, .privacy-grid p, .difference-grid p, .partnership p { font-size: .94rem; color: var(--color-text-secondary); line-height: 1.75; }
.practice-result { max-width: 920px; margin-top: 1.75rem; padding-left: 1.25rem; border-left: 2px solid var(--color-deep); color: var(--color-text-secondary); font-size: .9rem; line-height: 1.75; }
.section--practice, .section--lenses, .section--loop, .section--iris, .section--journey, .section--use-cases, .section--stakeholders, .section--trust { padding-block: clamp(3.5rem, 7vw, 6rem); }
.section--practice .section-heading { margin-bottom: 2rem; }
.culture-cycle { list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.5rem; border-top: 1px solid var(--color-border); padding-top: 2rem; }
.culture-cycle > li { position: relative; }
.culture-cycle > li:not(:last-child)::after { content: '→'; position: absolute; right: 0; top: .45rem; color: var(--color-deep); }
.cycle-return { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--color-border); color: var(--color-deep); font-size: .88rem; }
.section--iris { background: var(--color-deep); color: var(--color-white); }
.iris-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.section--iris .section__title { color: var(--color-white); }
.section--iris .section__eyebrow { color: var(--color-ai-highlight); }
.section--iris .section__lead, .human-decision, .section--iris .example-label { color: var(--color-ink-light); }
.human-decision { padding-left: 1.25rem; border-left: 2px solid var(--color-ai-highlight); font-size: .9rem; line-height: 1.8; }
.iris-dialogue { margin: 0; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--color-moss); border-radius: var(--radius-lg); }
.iris-dialogue figcaption { margin-bottom: 1.5rem; }
.dialogue-message { padding: 1.25rem; border-radius: var(--radius-md); font-size: .95rem; line-height: 1.75; }
.dialogue-message p { margin: 0; }
.dialogue-message .dialogue-author { margin-bottom: .6rem; font-size: .75rem; font-weight: 600; }
.dialogue-message--person { margin-left: 1.5rem; background: var(--color-white); color: var(--color-text); }
.dialogue-message--iris { margin-top: 1rem; margin-right: 1.5rem; background: var(--color-sage); color: var(--color-deep); }
.difference-grid { display: grid; grid-template-columns: 1fr 1fr; margin-top: 3.5rem; gap: 2.5rem; border-top: 1px solid var(--color-moss); padding-top: 2rem; }
.difference-grid h3 { color: var(--color-white); margin-bottom: .7rem; font-size: 1.3rem; }
.difference-grid p { color: var(--color-ink-light); }
.partnership { margin-top: 3rem; padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--color-sand); border-radius: var(--radius-md); }
.partnership > h3 { max-width: 650px; font-size: 1.8rem; margin-bottom: 2rem; }
.partnership-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
.partnership h4 { font-family: var(--font-heading); font-size: 1.25rem; font-weight: 500; line-height: 1.4; margin-bottom: .75rem; }
.partnership .text-link { margin-top: 1.5rem; }
.use-cases-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.additional-cases { margin-top: 2rem; border-block: 1px solid var(--color-border); }
.additional-cases summary { cursor: pointer; padding: 1.25rem .5rem; color: var(--color-deep); font-weight: 600; }
.additional-cases .use-cases-grid { padding-block: 1rem 2rem; }
.privacy-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.privacy-grid article { border-top: 1px solid var(--color-border); padding-top: 1.5rem; }
.privacy-note { padding: 1.5rem; background: var(--color-sage); border-radius: var(--radius-sm); margin-top: 2rem; color: var(--color-deep); font-size: .94rem; line-height: 1.7; }
.methodology-note { display: grid; grid-template-columns: 1fr 2fr; gap: 2.5rem; padding-top: 2rem; margin-top: 2rem; border-top: 1px solid var(--color-border); }
.methodology-note h3 { font-size: 1.4rem; }
.methodology-note p { font-size: .94rem; color: var(--color-text-secondary); line-height: 1.75; }
.mobile-menu { display: none; }
@media (max-width: 1100px) {
    .practice-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hero--2026 .hero__ctas { flex-direction: column; align-items: stretch; }
    .hero--2026 .hero__ctas .btn { text-align: center; }
}
@media (max-width: 1024px) {
    .hero--2026 .container { grid-template-columns: 1fr; }
    .hero--2026 .hero__visual { min-height: 360px; max-width: none; }
    .hero--2026 .hero__visual img { height: 360px; }
    .hero--2026 .hero__ctas { flex-direction: row; }
    .culture-cycle { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
}
@media (max-width: 960px) {
    .mobile-menu { display: block; }
    .mobile-menu summary { list-style: none; cursor: pointer; padding: .7rem .6rem; min-height: 44px; font-size: .84rem; color: var(--color-deep); }
    .mobile-menu summary::-webkit-details-marker { display: none; }
    .mobile-menu nav { display: flex; flex-direction: column; position: absolute; top: 72px; left: 0; right: 0; padding: 1rem var(--container-padding); background: var(--color-white); border-bottom: 1px solid var(--color-border); box-shadow: var(--shadow-soft); }
    .mobile-menu nav a { padding: .8rem; font-size: .95rem; }
    .header__actions { gap: .5rem; }
    .iris-layout { grid-template-columns: 1fr; }
    .use-cases-grid, .privacy-grid { grid-template-columns: 1fr; }
    .use-case { min-height: auto; }
    .use-case__tag { margin-bottom: 1.5rem; }
}
@media (max-width: 640px) {
    .hero--2026 { padding-top: 112px; }
    .hero--2026 .hero__headline { font-size: clamp(2.5rem, 10.5vw, 3.5rem); }
    .hero--2026 .hero__subheadline { font-size: 1rem; }
    .hero--2026 .hero__ctas { flex-direction: column; }
    .hero--2026 .hero__visual { min-height: 280px; height: auto; }
    .hero--2026 .hero__visual img { min-height: 280px; height: 280px; }
    .practice-journey, .culture-cycle, .difference-grid, .partnership-grid, .methodology-note { grid-template-columns: 1fr; }
    .practice-step { padding: 1.5rem; }
    .practice-step:not(:last-child)::after { content: '↓'; top: 1.9rem; right: 1.5rem; }
    .culture-cycle > li { padding-left: 60px; }
    .culture-cycle .step-number { position: absolute; left: 0; top: 0; }
    .culture-cycle > li:not(:last-child)::after { content: ''; right: auto; left: 19px; top: 48px; bottom: -1.5rem; width: 1px; background: var(--color-border); }
    .culture-cycle h3 { margin-top: .4rem; }
    .difference-grid, .partnership-grid, .methodology-note { gap: 1.5rem; }
    .dialogue-message--person { margin-left: .5rem; }
    .dialogue-message--iris { margin-right: .5rem; }
    .section-heading { margin-bottom: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .cookie-modal__container { animation: none; }
}

/* Refinamento da leitura: produto primeiro, profundidade sob demanda. */
.trust-summary { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; }
.trust-summary .section-heading { margin-bottom: 0; }
.trust-principles p { font-size: .94rem; line-height: 1.8; color: var(--color-text-secondary); margin-bottom: 1rem; }
.trust-principles strong { color: var(--color-deep); font-weight: 600; }
.trust-principles .text-link { margin-top: .75rem; }
.lenses-compact { margin-top: 2rem; border-block: 1px solid var(--color-border); }
.lenses-compact summary, .contact-extra summary { padding: 1.25rem .25rem; cursor: pointer; color: var(--color-deep); font-weight: 500; line-height: 1.6; }
.lenses-compact__grid, .implementation-brief { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.lenses-compact__grid { padding: .5rem .25rem 1.75rem; }
.lenses-compact h3, .implementation-brief h3 { font-size: 1.25rem; margin-bottom: .65rem; }
.lenses-compact p, .implementation-brief p { font-size: .9rem; line-height: 1.8; color: var(--color-text-secondary); }
.implementation-brief { margin-top: 2rem; padding-top: 2rem; border-top: 1px solid var(--color-border); }
.audience-view { margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid var(--color-moss); }
.audience-view > h3 { font-size: 1.5rem; color: var(--color-white); margin-bottom: 1.5rem; }
.audience-view__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.audience-view h4 { color: var(--color-white); font: 500 1.15rem/1.4 var(--font-heading); margin-bottom: .65rem; }
.audience-view p { font-size: .86rem; line-height: 1.8; color: var(--color-ink-light); }
.iris-layout { grid-template-areas: "intro demo" "difference demo"; row-gap: 1.5rem; }
.iris-layout > :first-child { grid-area: intro; }
.iris-layout > .product-preview { grid-area: demo; }
.iris-layout > .difference-grid { grid-area: difference; margin-top: 0; padding-top: 1.5rem; grid-template-columns: 1fr; gap: 1.5rem; }
.contact-extra { border-block: 1px solid var(--color-border); }
.contact-extra .form-group { margin-bottom: 1.25rem; }
.form-helper a { text-decoration: underline; text-underline-offset: 3px; }
.privacy-page { padding-top: calc(72px + clamp(3.5rem, 7vw, 6rem)); }
.privacy-page .section-heading { max-width: 850px; }
.privacy-back { margin-bottom: 2rem; }
.privacy-card-title { font-size: 1.3rem; line-height: 1.3; margin-bottom: .85rem; }
@media (max-width: 960px) { .trust-summary { grid-template-columns: 1fr; } .audience-view__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .iris-layout { grid-template-areas: "intro" "demo" "difference"; } .iris-layout > .difference-grid { grid-template-columns: 1fr 1fr; margin-top: 1rem; } }
@media (max-width: 640px) { .lenses-compact__grid, .implementation-brief, .audience-view__grid, .iris-layout > .difference-grid { grid-template-columns: 1fr; gap: 1.5rem; } }
