:root {
  --lens-model: #0a56b2; --lens-market: #13a5bd; --lens-portfolio: #6072d6;
  --lens-environment: #0c8e91; --lens-internal: #103c70;
  --good: #13866f; --good-soft: #e5f5f0; --warn: #df9c34; --warn-soft: #fff4df;
  --risk: #c65862; --risk-soft: #fff0f1; --violet-soft: #f0f1fb;
  --shadow: 0 18px 42px rgba(7, 59, 120, .10);
}

.reveal .slides > section { padding: 52px 76px 58px; background: radial-gradient(circle at 96% 6%, rgba(19,185,214,.08), transparent 21%), linear-gradient(145deg, rgba(239,248,252,.55), transparent 28%), #fff; }
.reveal .slides > section::before, .reveal .slides > section::after { content: none; }
.reveal .slide-header { grid-template-columns: minmax(0, 1fr) auto; min-height: 92px; margin-bottom: 14px; }
.reveal .slide-header > div { min-width: 0; }
.reveal .slide-header h2 { width: 100%; max-width: 1360px; margin: 0 0 14px; font-size: 43px; line-height: 1.03; letter-spacing: -.032em; }
.reveal .kicker { margin-bottom: 9px; font-size: 18px; }
.reveal .header-index { margin-bottom: 15px; font-size: 21px; }
.reveal .footer-context { right: 76px; bottom: 20px; font-size: 16px; }
.reveal .key-idea { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: center; margin-top: 14px; padding: 14px 20px; border-left: 6px solid var(--cyan-500); border-radius: 0 16px 16px 0; background: var(--ice); color: var(--ink); font-size: 22px; line-height: 1.18; }
.reveal .key-idea strong { color: var(--blue-700); font-size: 18px; letter-spacing: .08em; text-transform: uppercase; }

/* Assinatura recorrente: cinco lentes do diagnóstico. */
.reveal .lens-strip { display: flex; gap: 7px; align-items: center; margin: 0 0 14px; white-space: nowrap; }
.reveal .lens-strip b { margin-right: 4px; color: var(--blue-900); font-size: 16px; letter-spacing: .07em; }
.reveal .lens-strip span { padding: 6px 13px; border: 1px solid #d7e6ed; border-radius: 999px; background: rgba(255,255,255,.92); color: #74818d; font-size: 17px; font-weight: 700; line-height: 1; text-transform: uppercase; }
.reveal .lens-strip .active, .reveal .lens-strip.all-active .model { border-color: transparent; background: var(--lens-model); color: #fff; }
.reveal .lens-strip .market.active, .reveal .lens-strip.all-active .market { background: var(--lens-market); }
.reveal .lens-strip .portfolio.active, .reveal .lens-strip.all-active .portfolio { background: var(--lens-portfolio); }
.reveal .lens-strip .environment.active, .reveal .lens-strip.all-active .environment { background: var(--lens-environment); }
.reveal .lens-strip .internal.active, .reveal .lens-strip.all-active .internal { background: var(--lens-internal); }

/* 01 - Capa */
.reveal .slides > section.cover-analysis { display: grid !important; grid-template-columns: .9fr 1.1fr; gap: 54px; align-items: center; padding: 64px 0 64px 104px; background: linear-gradient(105deg, #fff 0%, #fff 47%, #e9f5fa 100%); }
.reveal .cover-analysis .cover-copy { z-index: 4; }
.reveal .cover-analysis .kicker { margin-bottom: 32px; font-size: 19px; }
.reveal .cover-analysis h1 { margin-bottom: 24px; color: var(--navy); font-size: 74px; line-height: .94; letter-spacing: -.045em; }
.reveal .cover-analysis h1 strong { color: var(--blue-700); }
.reveal .cover-analysis .lead { max-width: 680px; margin-bottom: 36px; color: #435566; font-size: 29px; line-height: 1.22; }
.reveal .author-block { display: grid; gap: 5px; width: fit-content; padding: 13px 18px; border-left: 5px solid var(--cyan-500); background: rgba(239,248,252,.82); }
.reveal .author-block span { color: var(--muted); font-size: 16px; letter-spacing: .08em; text-transform: uppercase; }
.reveal .author-block strong { color: var(--blue-900); font-size: 20px; }
.reveal .cover-visual { position: relative; align-self: center; height: 772px; margin: 0; overflow: visible; border-radius: 90px 0 0 90px; }
.reveal .cover-visual::after { position: absolute; inset: 0; border-radius: 90px 0 0 90px; background: linear-gradient(90deg, rgba(255,255,255,.6), transparent 34%), linear-gradient(0deg, rgba(16,34,63,.58), transparent 38%); content: ""; }
.reveal .cover-visual img { width: 100%; height: 100%; border-radius: 90px 0 0 90px; object-fit: cover; object-position: 57% center; }
.reveal .cover-visual figcaption { position: absolute; right: 62px; bottom: 64px; z-index: 2; display: flex; gap: 12px; align-items: center; padding: 16px 20px; border: 1px solid rgba(255,255,255,.35); border-radius: 16px; background: rgba(7,59,120,.72); backdrop-filter: blur(8px); color: #fff; }
.reveal .cover-visual figcaption span, .reveal .cover-visual figcaption strong { color: #fff; font-size: 20px; letter-spacing: .04em; }
.reveal .cover-visual figcaption i, .reveal .cover-visual figcaption b { color: var(--cyan-200); font-size: 25px; font-style: normal; }

/* 02 - Árvore e floresta */
.reveal .tree-forest-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 25px; min-height: 480px; }
.reveal .tree-model { display: grid; grid-template-rows: 1fr 30px .72fr 30px 1fr; align-items: center; }
.reveal .tree-model article { display: flex; min-height: 114px; flex-direction: column; justify-content: center; padding: 18px 24px; border: 1px solid var(--line); border-left: 7px solid var(--lens-model); border-radius: 0 18px 18px 0; background: #fff; box-shadow: 0 10px 24px rgba(7,59,120,.07); }
.reveal .tree-model .trunk { margin: 0 32px; border-left-color: var(--lens-market); }
.reveal .tree-model .roots { border-left-color: var(--lens-internal); background: #eef3f8; }
.reveal .tree-model small { margin-bottom: 8px; color: var(--blue-700); font-size: 17px; font-weight: 700; letter-spacing: .1em; }
.reveal .tree-model strong { font-size: 25px; line-height: 1.15; }
.reveal .tree-model > i { color: var(--cyan-500); font-size: 28px; font-style: normal; text-align: center; }
.reveal .forest-visual { position: relative; height: 480px; margin: 0; overflow: visible; border-radius: 28px; box-shadow: var(--shadow); }
.reveal .forest-visual::after { position: absolute; inset: 0; border-radius: 28px; background: linear-gradient(0deg, rgba(16,34,63,.72), transparent 55%); content: ""; }
.reveal .forest-visual img { width: 100%; height: 100%; border-radius: 28px; object-fit: cover; object-position: 60% center; }
.reveal .forest-tags { position: absolute; right: 24px; bottom: 24px; left: 24px; z-index: 2; display: flex; flex-wrap: wrap; gap: 8px; }
.reveal .forest-tags span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.32); border-radius: 999px; background: rgba(7,59,120,.7); color: #fff; font-size: 18px; font-weight: 700; }

/* 03 - Ponte */
.reveal .strategy-arrow { display: grid; grid-template-columns: .9fr 34px .75fr 34px 1.48fr 34px .75fr 34px .86fr; gap: 8px; align-items: center; margin-top: 70px; }
.reveal .strategy-arrow article { display: flex; min-height: 210px; flex-direction: column; justify-content: center; padding: 22px 18px; border: 1px solid var(--line); border-top: 7px solid var(--blue-700); border-radius: 18px; background: #fff; box-shadow: var(--shadow); text-align: center; }
.reveal .strategy-arrow small { margin-bottom: 18px; color: var(--blue-700); font-size: 15px; font-weight: 700; letter-spacing: .08em; }
.reveal .strategy-arrow strong { color: var(--blue-900); font-size: 22px; line-height: 1.18; }
.reveal .strategy-arrow > i { color: var(--cyan-500); font-size: 34px; font-style: normal; font-weight: 700; text-align: center; }
.reveal .strategy-arrow .diagnosis { min-height: 330px; border: 0; background: linear-gradient(145deg, var(--blue-900), #087c97); box-shadow: 0 24px 48px rgba(7,59,120,.2); }
.reveal .strategy-arrow .diagnosis small { color: var(--cyan-200); }
.reveal .strategy-arrow .diagnosis strong { color: #fff; font-size: 25px; }
.reveal .strategy-arrow .diagnosis b { margin: 6px 0; color: var(--cyan-200); font-size: 28px; }
.reveal .strategy-arrow .diagnosis span { margin-top: 23px; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.12); color: #fff; font-size: 18px; line-height: 1.16; }
.reveal .strategy-arrow .objectives { border-top-color: var(--lens-market); }
.reveal .strategy-arrow .choice { border-top-color: var(--lens-portfolio); }
.reveal .strategy-arrow .implementation { border-top-color: var(--lens-environment); }
.reveal .bridge-caption { display: flex; gap: 20px; align-items: center; justify-content: center; margin-top: 34px; padding: 16px; border-radius: 15px; background: var(--ice); }
.reveal .bridge-caption span, .reveal .bridge-caption strong { color: var(--blue-900); font-size: 21px; letter-spacing: .04em; }
.reveal .bridge-caption i { color: var(--cyan-500); font-size: 25px; font-style: normal; }

/* 04 - Mapa */
.reveal .spectrum { margin-top: 50px; }
.reveal .spectrum-head { display: grid; grid-template-columns: 1fr 1.35fr 1fr; align-items: center; text-align: center; }
.reveal .spectrum-head strong { font-size: 21px; letter-spacing: .05em; }
.reveal .spectrum-head span { color: var(--lens-portfolio); font-size: 22px; font-weight: 700; }
.reveal .spectrum-line { display: grid; grid-template-columns: 1fr 1.35fr 1fr; height: 16px; margin: 20px 10px 24px; overflow: hidden; border-radius: 999px; }
.reveal .spectrum-line i:nth-child(1) { background: linear-gradient(90deg, var(--lens-internal), var(--lens-model)); }
.reveal .spectrum-line i:nth-child(2) { background: linear-gradient(90deg, var(--lens-model), var(--lens-portfolio), var(--lens-environment)); }
.reveal .spectrum-line i:nth-child(3) { background: linear-gradient(90deg, var(--lens-environment), var(--lens-market)); }
.reveal .tool-zones { display: grid; grid-template-columns: 1fr 1.35fr 1fr; gap: 20px; }
.reveal .tool-zones article { display: flex; min-height: 230px; flex-wrap: wrap; gap: 12px; align-content: center; justify-content: center; padding: 24px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 10px 28px rgba(7,59,120,.07); }
.reveal .tool-zones span { padding: 11px 16px; border-radius: 999px; background: #e8f1f8; color: var(--blue-900); font-size: 21px; font-weight: 700; }
.reveal .tool-zones .zone-integration { border-color: rgba(96,114,214,.35); background: var(--violet-soft); }
.reveal .tool-zones .zone-integration span { background: #fff; color: #4253a5; }
.reveal .tool-zones .zone-external span { background: #e4f5f3; color: #0a6b6d; }
.reveal .key-idea.emphasis { margin-top: 30px; }

/* 05 e 06 - Canvas */
.reveal .bmc-grid { display: grid; grid-template-columns: 1fr 1fr 1.18fr 1fr 1fr; grid-template-rows: 1fr 1fr .55fr; gap: 10px; min-height: 500px; }
.reveal .bmc-grid article { display: flex; flex-direction: column; justify-content: center; padding: 15px 17px; border: 1px solid var(--line); border-radius: 14px; background: #fff; text-align: center; }
.reveal .bmc-grid small { margin-bottom: 7px; color: var(--blue-500); font-size: 14px; font-weight: 700; letter-spacing: .08em; }
.reveal .bmc-grid strong { color: var(--blue-900); font-size: 20px; line-height: 1.14; }
.reveal .bmc-grid .partners { grid-column: 1; grid-row: 1 / 3; border-top: 7px solid var(--lens-internal); }
.reveal .bmc-grid .activities-resources { grid-column: 2; grid-row: 1 / 3; }
.reveal .bmc-grid .value { grid-column: 3; grid-row: 1 / 3; border: 0; background: linear-gradient(145deg, var(--blue-700), #078ca4); box-shadow: var(--shadow); }
.reveal .bmc-grid .value small, .reveal .bmc-grid .value strong, .reveal .bmc-grid .value span { color: #fff; }
.reveal .bmc-grid .value strong { font-size: 27px; }
.reveal .bmc-grid .value span { margin-top: 15px; font-size: 18px; line-height: 1.15; }
.reveal .bmc-grid .relationships-channels { grid-column: 4; grid-row: 1 / 3; }
.reveal .bmc-grid .segments { grid-column: 5; grid-row: 1 / 3; border-top: 7px solid var(--lens-market); }
.reveal .bmc-grid .costs { grid-column: 1 / 4; grid-row: 3; border-top: 7px solid var(--risk); }
.reveal .bmc-grid .revenues { grid-column: 4 / 6; grid-row: 3; border-top: 7px solid var(--good); }
.reveal .bmc-grid .stack { display: grid; gap: 10px; }
.reveal .bmc-grid .stack article:first-child { border-top: 7px solid var(--lens-model); }
.reveal .bmc-grid .stack article:last-child { border-top: 7px solid var(--lens-portfolio); }
.reveal .canvas-logic { display: flex; gap: 12px; align-items: center; justify-content: center; margin-top: 15px; padding: 13px 18px; border-radius: 14px; background: var(--ice); }
.reveal .canvas-logic span { font-size: 18px; font-weight: 700; }
.reveal .canvas-logic i { color: var(--cyan-500); font-size: 22px; font-style: normal; }
.reveal .applied-bmc { min-height: 490px; }
.reveal .applied-bmc article { padding: 12px 14px; }
.reveal .applied-bmc strong { font-size: 18px; }
.reveal .applied-bmc .value strong { font-size: 25px; }
.reveal .value-orbit { display: flex; flex-wrap: wrap; gap: 7px; justify-content: center; margin-top: 18px; }
.reveal .value-orbit span { margin: 0 !important; padding: 6px 9px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; background: rgba(255,255,255,.12); font-size: 15px !important; font-weight: 700; }
.reveal .meli-canvas .key-idea { margin-top: 12px; padding-block: 12px; }

/* 07 - B2C x B2B */
.reveal .segment-columns { display: grid; grid-template-columns: 1fr 120px 1fr; gap: 18px; align-items: center; }
.reveal .segment-columns > article { min-height: 505px; padding: 22px 25px; border: 1px solid var(--line); border-top: 8px solid var(--lens-market); border-radius: 22px; background: #fff; box-shadow: var(--shadow); }
.reveal .segment-columns .b2b { border-top-color: var(--lens-model); }
.reveal .segment-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.reveal .segment-title small { color: var(--muted); font-size: 15px; font-weight: 700; letter-spacing: .07em; }
.reveal .segment-title strong { color: var(--lens-market); font-size: 41px; }
.reveal .b2b .segment-title strong { color: var(--lens-model); }
.reveal .segment-columns dl { display: grid; gap: 7px; margin: 0; }
.reveal .segment-columns dl div { display: grid; grid-template-columns: 150px 1fr; gap: 12px; padding: 8px 11px; border-radius: 10px; background: #f5f8fa; }
.reveal .segment-columns dt { color: var(--blue-900); font-size: 18px; font-weight: 700; }
.reveal .segment-columns dd { margin: 0; color: #4f6170; font-size: 19px; }
.reveal .segment-columns article > p { margin: 14px 0 0; padding: 12px 14px; border-radius: 12px; background: var(--ice); color: #435563; font-size: 18px; line-height: 1.18; }
.reveal .comparison-pivot { display: flex; flex-direction: column; gap: 13px; align-items: center; color: var(--blue-900); }
.reveal .comparison-pivot span { font-size: 18px; font-weight: 700; }
.reveal .comparison-pivot i { color: var(--cyan-500); font-size: 28px; font-style: normal; }
.reveal .hybrid-note { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; margin-top: 14px; padding: 13px 18px; border-left: 6px solid var(--lens-portfolio); background: var(--violet-soft); }
.reveal .hybrid-note strong { color: var(--lens-portfolio); font-size: 17px; letter-spacing: .08em; }
.reveal .hybrid-note span { font-size: 20px; }

/* 08 - BCG */
.reveal .bcg-wrap { position: relative; width: 1220px; margin: 0 auto; padding-left: 95px; }
.reveal .bcg-matrix { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 10px; height: 520px; }
.reveal .bcg-matrix article { padding: 18px 20px; border-radius: 18px; }
.reveal .bcg-matrix .star { background: #e4f5f3; }
.reveal .bcg-matrix .question { background: var(--warn-soft); }
.reveal .bcg-matrix .cow { background: #e7f2fb; }
.reveal .bcg-matrix .dog { background: #f4f5f7; }
.reveal .quadrant-head { display: flex; gap: 14px; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.reveal .quadrant-head span { color: var(--blue-900); font-size: 21px; font-weight: 700; }
.reveal .quadrant-head b { padding: 6px 8px; border-radius: 8px; background: rgba(255,255,255,.75); color: #576977; font-size: 14px; letter-spacing: .04em; }
.reveal .bcg-matrix article > strong { display: block; margin-bottom: 9px; font-size: 24px; }
.reveal .bcg-matrix p { margin: 0; color: #4d5f6d; font-size: 18px; line-height: 1.16; }
.reveal .bcg-matrix small { display: block; margin-top: 8px; color: #697783; font-size: 14px; }
.reveal .axis-y { position: absolute !important; top: 0; bottom: 0; left: 0; display: flex; width: 78px; flex-direction: column; align-items: center; justify-content: space-between; color: var(--blue-900); text-align: center; }
.reveal .axis-y span { writing-mode: vertical-rl; transform: rotate(180deg); font-size: 17px; font-weight: 700; letter-spacing: .06em; }
.reveal .axis-y b { font-size: 14px; }
.reveal .axis-y i { color: var(--cyan-500); font-size: 30px; font-style: normal; }
.reveal .axis-x { display: flex; gap: 12px; align-items: center; justify-content: center; margin: 8px 0 0 95px; }
.reveal .axis-x span { color: var(--blue-900); font-size: 17px; font-weight: 700; letter-spacing: .05em; }
.reveal .axis-x b { font-size: 14px; }
.reveal .axis-x i { color: var(--cyan-500); font-size: 22px; font-style: normal; }
.reveal .method-label { margin-top: 8px; color: #657482; font-size: 15px; font-weight: 700; letter-spacing: .035em; text-align: center; }

/* 09 - Ciclo de vida */
.reveal .lifecycle-graphic { position: relative; min-height: 500px; }
.reveal .lifecycle-graphic svg { display: block; width: 100%; height: 310px; }
.reveal .life-symbols text { fill: var(--blue-700); font-family: Calibri, Carlito, Arial, sans-serif; font-size: 40px; font-weight: 700; }
.reveal .stage-grid { position: absolute; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.reveal .stage-grid article { min-height: 180px; padding: 15px 17px; border: 1px solid var(--line); border-top: 6px solid var(--lens-model); border-radius: 15px; background: rgba(255,255,255,.97); box-shadow: 0 8px 22px rgba(7,59,120,.07); }
.reveal .stage-grid article:nth-child(2) { border-top-color: var(--lens-market); }
.reveal .stage-grid article:nth-child(3) { border-top-color: var(--lens-portfolio); }
.reveal .stage-grid article:nth-child(4) { border-top-color: var(--risk); }
.reveal .stage-grid small { color: #62717e; font-size: 14px; font-weight: 700; letter-spacing: .08em; }
.reveal .stage-grid strong { display: block; margin: 8px 0; font-size: 22px; }
.reveal .stage-grid p { margin: 0; color: #526472; font-size: 17px; line-height: 1.16; }
.reveal .lifecycle-slide .key-idea { margin-top: 8px; padding-block: 11px; }
.reveal .lifecycle-slide .method-label { margin-top: 5px; }

/* 10 - SWOT */
.reveal .swot-wrap { display: grid; grid-template-columns: 150px 1fr; gap: 10px; }
.reveal .swot-labels { display: grid; grid-template-columns: 1fr; grid-template-rows: 1fr 1fr; gap: 10px; padding-top: 48px; }
.reveal .swot-labels > span, .reveal .swot-labels > b { display: none; }
.reveal .swot-labels strong { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 10px; border-radius: 15px; background: var(--blue-900); color: #fff; font-size: 20px; text-align: center; }
.reveal .swot-labels small { margin-top: 10px; color: rgba(255,255,255,.74); font-size: 14px; line-height: 1.15; }
.reveal .swot-matrix { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 10px; min-height: 475px; padding-top: 48px; }
.reveal .swot-matrix::before { position: absolute; top: 0; right: 0; left: 0; color: var(--blue-900); font-size: 18px; font-weight: 700; text-align: center; content: "POSITIVO                                      NEGATIVO"; white-space: pre; }
.reveal .swot-matrix article { padding: 18px 22px; border-radius: 17px; }
.reveal .swot-matrix .strength { background: #daf3ef; }
.reveal .swot-matrix .weakness { background: var(--risk-soft); }
.reveal .swot-matrix .opportunity { background: #e9f2fb; }
.reveal .swot-matrix .threat { background: var(--warn-soft); }
.reveal .swot-matrix small { color: #60707d; font-size: 14px; font-weight: 700; letter-spacing: .06em; }
.reveal .swot-matrix strong { display: block; margin: 10px 0; font-size: 22px; }
.reveal .swot-matrix p { margin: 0; color: #4b5e6b; font-size: 18px; line-height: 1.15; }
.reveal .evidence-line { display: flex; gap: 18px; align-items: center; margin-top: 12px; padding: 12px 18px; border-left: 6px solid var(--lens-environment); background: #eef8f6; }
.reveal .evidence-line strong { color: var(--lens-environment); font-size: 17px; letter-spacing: .07em; }
.reveal .evidence-line span { font-size: 20px; }

/* 11 - SWOT cruzada */
.reveal .cross-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.reveal .cross-grid article { display: grid; grid-template-columns: .72fr 1.28fr; grid-template-rows: 1fr auto; gap: 8px 19px; min-height: 210px; padding: 20px 22px; border: 1px solid var(--line); border-left: 8px solid var(--good); border-radius: 0 18px 18px 0; background: #fff; box-shadow: 0 8px 24px rgba(7,59,120,.06); }
.reveal .cross-grid .protect { border-left-color: var(--lens-model); }
.reveal .cross-grid .correct { border-left-color: var(--warn); }
.reveal .cross-grid .defend { border-left-color: var(--risk); }
.reveal .cross-grid small { color: #60717e; font-size: 14px; font-weight: 700; letter-spacing: .05em; }
.reveal .cross-grid strong { display: block; margin-top: 12px; color: var(--good); font-size: 30px; }
.reveal .cross-grid .protect strong { color: var(--lens-model); }
.reveal .cross-grid .correct strong { color: #9f6b1f; }
.reveal .cross-grid .defend strong { color: var(--risk); }
.reveal .cross-grid p { margin: 0; color: #425664; font-size: 20px; line-height: 1.18; }
.reveal .cross-grid article > span { grid-column: 1 / -1; padding-top: 10px; border-top: 1px solid var(--line); color: #687784; font-size: 16px; }
.reveal .analytic-disclaimer { display: grid; grid-template-columns: auto 1fr auto; gap: 15px; align-items: center; margin-top: 14px; padding: 13px 18px; border-radius: 14px; background: var(--ice); }
.reveal .analytic-disclaimer strong { color: var(--blue-700); font-size: 16px; letter-spacing: .08em; }
.reveal .analytic-disclaimer span { font-size: 18px; }
.reveal .analytic-disclaimer b { color: var(--lens-environment); font-size: 19px; }

/* 12 - PESTEL */
.reveal .pestel-context { display: flex; gap: 16px; align-items: center; margin-bottom: 10px; padding: 10px 14px; border-radius: 12px; background: var(--blue-900); color: #fff; }
.reveal .pestel-context strong, .reveal .pestel-context span, .reveal .pestel-context b { color: #fff; }
.reveal .pestel-context strong { font-size: 16px; letter-spacing: .08em; }
.reveal .pestel-context span { font-size: 20px; }
.reveal .pestel-context b { margin-left: auto; color: var(--cyan-200); font-size: 16px; }
.reveal .pestel-board { overflow: hidden; border: 1px solid #cddfe7; border-radius: 17px; background: #fff; }
.reveal .pestel-head, .reveal .pestel-board article { display: grid; grid-template-columns: 90px 1.17fr 1fr; align-items: center; }
.reveal .pestel-head { min-height: 38px; background: #eaf4f8; color: var(--blue-900); }
.reveal .pestel-head span { padding: 9px 14px; font-size: 15px; font-weight: 700; letter-spacing: .07em; }
.reveal .pestel-board article { min-height: 76px; border-top: 1px solid #dce8ed; }
.reveal .pestel-board article > * { padding: 9px 14px; }
.reveal .pestel-board article > b { display: grid; align-self: stretch; padding: 0; background: var(--lens-model); color: #fff; font-size: 27px; place-items: center; }
.reveal .pestel-board article > b.e { background: var(--warn); }
.reveal .pestel-board article > b.s { background: var(--lens-portfolio); }
.reveal .pestel-board article > b.t { background: var(--lens-market); }
.reveal .pestel-board article > b.a { background: var(--good); }
.reveal .pestel-board article > b.l { background: var(--risk); }
.reveal .pestel-board article strong { color: #304757; font-size: 17px; line-height: 1.12; }
.reveal .pestel-board article span { border-left: 1px solid #dce8ed; color: #506371; font-size: 17px; line-height: 1.12; }

/* 13 - Análise e construção de cenários */
.reveal .scenarios-analysis .external-pair { display: grid; grid-template-columns: .95fr 1.05fr; gap: 22px; }
.reveal .scenarios-analysis .external-pair > article { min-height: 480px; padding: 20px 22px; border: 1px solid var(--line); border-top: 7px solid var(--lens-portfolio); border-radius: 22px; background: #fff; box-shadow: var(--shadow); }
.reveal .scenarios-analysis .external-pair .scenario-process-panel { border-top-color: var(--lens-environment); }
.reveal .scenarios-analysis .panel-title { display: grid; gap: 3px; margin-bottom: 16px; }
.reveal .scenarios-analysis .panel-title small { color: var(--lens-portfolio); font-size: 22px; font-weight: 700; letter-spacing: .07em; }
.reveal .scenarios-analysis .scenario-process-panel .panel-title small { color: var(--lens-environment); }
.reveal .scenarios-analysis .panel-title strong { color: var(--blue-900); font-size: 23px; line-height: 1.08; }
.reveal .scenarios-analysis .scenario-duo { display: grid; grid-template-columns: 1fr 70px 1fr; gap: 10px; align-items: center; }
.reveal .scenarios-analysis .scenario-duo > div { display: grid; gap: 9px; min-height: 350px; align-content: center; padding: 18px; border-radius: 18px; background: var(--ice); }
.reveal .scenarios-analysis .scenario-duo > div:last-child { background: var(--violet-soft); }
.reveal .scenarios-analysis .scenario-duo b { margin-bottom: 7px; color: var(--blue-900); font-size: 25px; }
.reveal .scenarios-analysis .scenario-duo span { padding: 8px 10px; border-radius: 9px; background: #fff; color: #536571; font-size: 22px; line-height: 1.08; }
.reveal .scenarios-analysis .scenario-duo > i { color: #6b7984; font-size: 20px; font-style: normal; font-weight: 700; text-align: center; }
.reveal .scenarios-analysis .scenario-process { display: flex; flex-direction: column; justify-content: center; gap: 3px; }
.reveal .scenarios-analysis .scenario-step { display: grid; grid-template-columns: 46px 1fr; gap: 14px; min-height: 56px; align-items: center; padding: 8px 14px; border: 1px solid #d7ecea; border-radius: 14px; background: #eef8f7; }
.reveal .scenarios-analysis .step-number { display: grid; width: 44px; height: 44px; border-radius: 50%; background: var(--lens-environment); color: #fff; font-size: 22px; font-weight: 700; place-items: center; }
.reveal .scenarios-analysis .scenario-step b { display: block; margin-bottom: 1px; color: var(--blue-900); font-size: 22px; line-height: 1; }
.reveal .scenarios-analysis .scenario-step p { margin: 0; color: #536571; font-size: 22px; line-height: 1.05; }
.reveal .scenarios-analysis .process-arrow { color: var(--lens-environment); font-size: 20px; font-weight: 700; line-height: .75; text-align: center; }
.reveal .scenarios-analysis .external-questions { display: flex; gap: 15px; align-items: center; justify-content: center; margin-top: 16px; padding: 14px; border-radius: 14px; background: var(--ice); }
.reveal .scenarios-analysis .external-questions span { font-size: 20px; }
.reveal .scenarios-analysis .external-questions i { color: var(--cyan-500); font-size: 24px; font-style: normal; }

/* 14 - Benchmarking */
.reveal .benchmark-layout { display: grid; grid-template-columns: 1fr .62fr 1fr; gap: 20px; }
.reveal .benchmark-layout > article { min-height: 485px; padding: 21px 23px; border: 1px solid var(--line); border-top: 7px solid var(--lens-model); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }
.reveal .benchmark-layout .compare-what { border-top-color: var(--lens-environment); }
.reveal .benchmark-layout article > small { color: var(--blue-700); font-size: 16px; font-weight: 700; letter-spacing: .08em; }
.reveal .benchmark-layout dl { display: grid; gap: 9px; margin: 17px 0 0; }
.reveal .benchmark-layout dl div { padding: 11px 14px; border-radius: 11px; background: #f3f7f9; }
.reveal .benchmark-layout dt { color: var(--blue-900); font-size: 19px; font-weight: 700; }
.reveal .benchmark-layout dd { margin: 4px 0 0; color: #5b6c78; font-size: 18px; }
.reveal .benchmark-process { display: grid; grid-template-columns: 1fr; align-items: center; justify-items: center; padding: 16px 18px; border-radius: 24px; background: linear-gradient(145deg, var(--blue-900), #08778f); }
.reveal .benchmark-process span { display: grid; width: 100%; min-height: 52px; border: 1px solid rgba(255,255,255,.24); border-radius: 12px; background: rgba(255,255,255,.12); color: #fff; font-size: 19px; font-weight: 700; letter-spacing: .04em; place-items: center; }
.reveal .benchmark-process i { color: var(--cyan-200); font-size: 24px; font-style: normal; }
.reveal .reference-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 18px; padding-top: 15px; border-top: 1px solid var(--line); }
.reveal .reference-chips b { flex-basis: 100%; margin-bottom: 2px; color: var(--lens-environment); font-size: 14px; letter-spacing: .07em; }
.reveal .reference-chips span { padding: 7px 9px; border-radius: 999px; background: #e7f4f2; color: #2d625f; font-size: 15px; font-weight: 700; }
.reveal .benchmark-slide .key-idea { margin-top: 12px; padding-block: 12px; }

/* 15 - Síntese */
.reveal .five-lenses { display: grid; grid-template-columns: repeat(5, 1fr); gap: 11px; }
.reveal .five-lenses article { min-height: 195px; padding: 17px 15px; border: 1px solid var(--line); border-top: 7px solid var(--lens-model); border-radius: 16px; background: #fff; }
.reveal .five-lenses article:nth-child(2) { border-top-color: var(--lens-market); }
.reveal .five-lenses article:nth-child(3) { border-top-color: var(--lens-portfolio); }
.reveal .five-lenses article:nth-child(4) { border-top-color: var(--lens-environment); }
.reveal .five-lenses article:nth-child(5) { border-top-color: var(--lens-internal); }
.reveal .five-lenses > article > span { display: grid; width: 37px; height: 37px; margin-bottom: 13px; border-radius: 11px; background: var(--ice); color: var(--blue-700); font-size: 15px; font-weight: 700; place-items: center; }
.reveal .five-lenses strong { display: block; font-size: 18px; line-height: 1.12; }
.reveal .five-lenses p { margin: 10px 0 0; color: #566977; font-size: 17px; line-height: 1.14; }
.reveal .five-lenses small { display: block; margin-top: 10px; color: var(--lens-portfolio); font-size: 14px; font-weight: 700; }
.reveal .diagnostic-close { display: grid; grid-template-columns: 1fr 35px .75fr 35px 1fr 35px .9fr; gap: 7px; align-items: center; margin-top: 14px; padding: 15px; border: 3px solid var(--blue-900); border-radius: 20px; background: rgba(239,248,252,.62); }
.reveal .diagnostic-close article, .reveal .diagnostic-close > div { display: flex; min-height: 91px; flex-direction: column; justify-content: center; padding: 12px 14px; border-radius: 13px; background: #fff; text-align: center; }
.reveal .diagnostic-close > div:not(.choice-end) { background: var(--blue-900); }
.reveal .diagnostic-close .choice-end { background: var(--good-soft); }
.reveal .diagnostic-close small { margin-bottom: 6px; color: #657482; font-size: 13px; font-weight: 700; letter-spacing: .06em; }
.reveal .diagnostic-close strong { font-size: 17px; line-height: 1.12; }
.reveal .diagnostic-close > div:not(.choice-end) small, .reveal .diagnostic-close > div:not(.choice-end) strong { color: #fff; }
.reveal .diagnostic-close > i, .reveal .diagnostic-close > b { color: var(--cyan-500); font-size: 26px; font-style: normal; text-align: center; }
.reveal .closing-thesis { margin-top: 13px; padding: 15px 22px; border-radius: 16px; background: linear-gradient(100deg, var(--blue-900), #0c718a); color: #fff; font-size: 21px; font-weight: 700; line-height: 1.16; text-align: center; }

/* Referências */
.reveal .cap5-references .slide-header { margin-bottom: 25px; }
.reveal .cap5-references .reference-list { display: grid; gap: 13px; margin: 0; padding-left: 27px; }
.reveal .cap5-references .reference-list li { padding-left: 8px; color: #31404d; font-size: 19px; line-height: 1.22; }
.reveal .official-references .reference-list { gap: 10px; }
.reveal .official-references .reference-list li { font-size: 18px; }

html.print-pdf .reveal .slides > section, html.print-static .reveal .slides > section, html.capture-static .reveal .slides > section { background-color: #fff; }
@media (max-width: 1050px) { .reveal .cover-analysis h1 { font-size: 68px; } }
