/* PME Vivo | Estilos isolados: não alteram os componentes FLACC/PSS. */
.pmv{--pmv-ink:#153c34;--pmv-deep:#0d302c;--pmv-green:#166d54;--pmv-mint:#d4eedb;--pmv-gold:#efc577;--pmv-line:#d9e6de;--pmv-muted:#587068;box-sizing:border-box;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--pmv-ink)}
.pmv *, .pmv *::before,.pmv *::after{box-sizing:border-box}
.pmv button,.pmv a,.pmv input,.pmv select{font:inherit}
.pmv a{text-decoration:none}
.pmv button:focus-visible,.pmv a:focus-visible,.pmv select:focus-visible{outline:3px solid #ffde84;outline-offset:3px}
.pmv .pmv-kicker{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:850;color:#b4e9ca}
.pmv .pmv-btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:46px;padding:.75rem 1.2rem;border-radius:999px;border:1px solid transparent;font-size:.86rem;font-weight:800;line-height:1.2;cursor:pointer;transition:transform .18s,background-color .18s}
.pmv .pmv-btn:hover{transform:translateY(-2px)}
.pmv .pmv-btn-gold{background:var(--pmv-gold);color:#183c32}
.pmv .pmv-btn-gold:hover{background:#ffdb95;color:#183c32}
.pmv .pmv-btn-outline{background:transparent;border-color:#ffffff8a;color:#fff}
.pmv .pmv-btn-outline:hover{background:#ffffff22;color:#fff}
.pmv .pmv-btn-light{background:#e5f3e9;color:#165a45}
.pmv .pmv-btn-disabled{background:#e5e9e6;color:#6c7e75;cursor:not-allowed}
.pmv .pmv-btn-disabled:hover{transform:none}
/* Lugar antes ocupado pelo destaque de patrocínio, sem alterar arquivos da FLACC. */
.pmv-home-spot{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 84% 12%,#568d6c55,transparent 40%),linear-gradient(120deg,#102d33,#155345 62%,#25664b);color:#fff;padding:clamp(2.4rem,5vw,4.4rem) 18px}
.pmv-spot-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);align-items:center;gap:clamp(20px,5vw,80px)}
.pmv-spot-copy h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.1rem,4.7vw,4.4rem);line-height:1.12;letter-spacing:-.035em;max-width:850px;margin:15px 0 16px;color:white}
.pmv-spot-copy h2 em{font-style:normal;color:#f3d392}
.pmv-spot-copy p{max-width:780px;font-size:clamp(.91rem,1.3vw,1.08rem);line-height:1.8;color:#e1f1e9;margin-bottom:24px}
.pmv-spot-actions,.pmv-page-actions{display:flex;flex-wrap:wrap;gap:10px}
.pmv-spot-numbers{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid #ffffff38;color:#dff0e5;font-size:.78rem}
.pmv-spot-numbers strong{font-size:1.38rem;color:#ffe0a3;margin-right:5px}
.pmv-spot-aside{text-align:center;align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:0}
.pmv-spot-tree{width:min(100%,285px);filter:drop-shadow(0 15px 25px #031c1c55)}
.pmv-spot-tree svg{width:100%;height:auto}
.pmv-spot-aside p{color:white;letter-spacing:.05em;font-family:Georgia,serif;font-size:1.3rem}
.pmv-spot-aside p span{font-family:inherit;display:block;color:#ceead7;font-size:.74rem;letter-spacing:0;margin-top:7px}
/* Modal bootstrap, acima dos overlays antigos do PSS. */
#pmeVivoModal{z-index:100260!important;--bs-modal-width:1140px}
#pmeVivoModal .modal-dialog{max-width:min(1140px,calc(100vw - 24px))}
#pmeVivoModal .modal-content{overflow:hidden;border-radius:22px;border:1px solid #e5eae5;background:#fff;box-shadow:0 30px 120px #031d2066}
#pmeVivoModal .pmv-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 27px;background:linear-gradient(120deg,#0b2a30,#166248);color:white}
#pmeVivoModal .pmv-modal-header h2{font:500 clamp(1.6rem,3.2vw,2.5rem)/1.16 Georgia,serif;margin:8px 0;color:#fff}
#pmeVivoModal .pmv-modal-header p{color:#d2e8dd;line-height:1.55;font-size:.88rem;margin:0;max-width:740px}
#pmeVivoModal .pmv-icon-close{height:38px;width:38px;border-radius:11px;flex:none;background:#ffffff25;color:#fff;border:1px solid #ffffff40}
#pmeVivoModal .pmv-modal-body{padding:18px;background:#f4f8f4;min-height:250px}
#pmeVivoModal .pmv-modal-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:15px}
#pmeVivoModal .pmv-tree-surface,#pmeVivoModal .pmv-modal-detail{background:#fff;border:1px solid #dce9df;border-radius:17px;padding:18px;min-width:0}
.pmv-surface-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:#225a45;font-size:.9rem}
.pmv-surface-label span{font-size:.74rem;color:#748b80}
.pmv-tree-stage{position:relative;height:400px;isolation:isolate;overflow:hidden;max-width:100%;background:radial-gradient(circle at 52% 36%,#ddf2dd,#f4faf2 53%,#f2f7f3);border-radius:15px;margin:12px 0 9px}
.pmv-tree-stage svg{display:block;width:100%;height:100%;pointer-events:none;position:absolute;inset:0;z-index:1}
.pmv-tree-stage .pmv-fruit{position:absolute;z-index:2;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:grid;place-items:center;width:39px;height:39px;border-radius:50%;border:2px solid #fff6d7;background:radial-gradient(circle at 28% 24%,#ffefb0,#efbc62 43%,#d8823f 92%);box-shadow:0 5px 12px #1b4b3866;color:#502b16;font-size:.78rem;font-weight:900;cursor:pointer;transition:transform .15s,box-shadow .15s}
.pmv-tree-stage .pmv-fruit:hover,.pmv-tree-stage .pmv-fruit:focus-visible{transform:translate(-50%,-50%) scale(1.17)}
.pmv-tree-stage .pmv-fruit.is-selected{box-shadow:0 0 0 5px #f8cf75,0 5px 15px #1b4b3866;background:#ffe4a3}
.pmv-tree-help{font-size:.7rem;line-height:1.4;color:#60796e;text-align:center;margin:5px 0 9px}
.pmv-quick-label{display:block;font-weight:750;font-size:.75rem;color:#305c4c;margin:8px 0 6px}
.pmv-quick-select{width:100%;border:1px solid #cdded3;border-radius:10px;padding:10px;background:#fff;font-size:.78rem;color:#225742}
.pmv-modal-detail{display:flex;flex-direction:column;align-items:stretch}
.pmv-detail-kicker{font-size:.73rem;letter-spacing:.12em;color:#168368;text-transform:uppercase;font-weight:900}
.pmv-modal-detail h3{font:500 clamp(1.35rem,2.6vw,2rem)/1.2 Georgia,serif;color:#1a4738;margin:12px 0}
.pmv-modal-detail .pmv-problem{color:#506c5e;font-size:.84rem;line-height:1.65;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.pmv-modal-detail .pmv-document-note{color:#537563;font-size:.8rem;padding:10px;background:#eef7ee;border-radius:10px;line-height:1.5}
.pmv-modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 15px}
.pmv-modal-actions .pmv-btn{font-size:.78rem;padding:.7rem 1rem}
.pmv-form-preview{margin-top:8px;border-top:1px solid #dbe9df;padding-top:15px}
.pmv-form-notice{display:flex;gap:8px;align-items:start;border-radius:10px;padding:12px;font-size:.77rem;line-height:1.5;color:#745416;background:#fff6e3;border:1px solid #f0d79d}
.pmv-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0}
.pmv-form-fields label{font-size:.72rem;font-weight:750;color:#486d58;display:block}
.pmv-form-fields input{width:100%;border:1px solid #d5e1d7;border-radius:8px;padding:10px;font-size:.76rem;margin-top:5px;background:#f0f2f0;opacity:1;color:#5c766b}
#pmeVivoModal .pmv-modal-footer{padding:14px 20px;background:#fff;border-top:1px solid #e2ede4;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#64796d;font-size:.75rem}
#pmeVivoModal .pmv-modal-footer a{color:#166d54;font-weight:800}
/* Página institucional */
.pmv-page{background:#fbfcf9}
.pmv-container{max-width:1240px;margin-inline:auto;padding-inline:24px}
.pmv-page-hero{background:radial-gradient(circle at 78% 18%,#66ba7655,transparent 38%),linear-gradient(135deg,#0c2c30,#145844);color:#fff;padding:clamp(45px,7vw,95px) 0}
.pmv-page-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(20px,5vw,65px)}
.pmv-page-hero h1{font:500 clamp(2.55rem,5.3vw,5rem)/1.08 Georgia,serif;letter-spacing:-.04em;color:#fff;margin:21px 0 20px}
.pmv-page-hero h1 em{font-style:normal;color:#f5d89b}
.pmv-page-hero p{font-size:1rem;color:#dcefe4;line-height:1.77;max-width:610px}
.pmv-page-facts{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;padding-top:18px;border-top:1px solid #ffffff35}
.pmv-page-facts span{display:flex;flex-direction:column;gap:6px}
.pmv-page-facts strong{color:#f6df9f;font:600 1.7rem Georgia,serif}
.pmv-page-facts small{font-size:.77rem;color:#c6e0d1}
.pmv-hero-tree-card{border-radius:22px;border:1px solid #ffffff3d;background:#ffffffed;padding:15px 15px 11px;box-shadow:0 30px 60px #041a2355}
.pmv-hero-tree-card .pmv-tree-stage{height:380px}
.pmv-hero-tree-card>small{display:block;text-align:center;color:#628270;font-size:.75rem}
.pmv-section{padding:clamp(50px,6vw,85px) 0}
.pmv-section-soft{background:#eef5ef;border-block:1px solid #e0e9df}
.pmv-section-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#2b8360}
.pmv-section h2{font:500 clamp(2rem,4.4vw,3.3rem)/1.14 Georgia,serif;letter-spacing:-.025em;color:#153c33;margin:13px 0}
.pmv-lede{font-size:.93rem;line-height:1.7;color:#5e7969;max-width:830px;margin-bottom:26px}
.pmv-objective-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.85fr);align-items:start;gap:22px}
.pmv-objectives-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pmv-obj-card{display:flex;align-items:center;gap:10px;text-align:left;width:100%;min-height:80px;padding:12px;background:#fff;border:1px solid #d9e6dc;border-radius:13px;cursor:pointer}
.pmv-obj-card:hover,.pmv-obj-card.is-selected{border-color:#278764;background:#f0f9ef}
.pmv-obj-card b{height:37px;width:37px;border-radius:12px;flex:none;display:grid;place-items:center;color:#17664c;background:#e2f0e5;font-size:.77rem}
.pmv-obj-card strong{font-size:.81rem;line-height:1.35;display:block;color:#23493c}
.pmv-obj-card small{display:block;font-size:.71rem;color:#7b9385;margin-top:4px}
.pmv-selected-card{position:sticky;top:24px;border-radius:18px;background:#15493e;color:white;padding:26px;box-shadow:0 15px 35px #153e2c33}
.pmv-selected-card>.pmv-section-kicker{color:#abd9ba}
.pmv-selected-card>[data-pmv-page-number]{display:block;font:600 3.3rem Georgia,serif;color:#f6d790;margin:12px 0}
.pmv-selected-card h3{font:500 1.56rem/1.25 Georgia,serif;color:white;margin:10px 0}
.pmv-selected-card p{font-size:.83rem;line-height:1.65;color:#d3e8db;max-height:230px;overflow:auto}
.pmv-selected-card-footer{border-top:1px solid #ffffff2c;margin-top:20px;padding-top:17px;display:grid;gap:13px}
.pmv-selected-card-footer small{color:#c1dfc9;font-size:.75rem}
.pmv-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.pmv-milestones article{padding:23px;background:white;border:1px solid #dce6dd;border-radius:15px}
.pmv-milestones time{font-size:.84rem;font-weight:900;color:#258064}
.pmv-milestones h3{color:#1d4f3d;font-size:1.08rem;margin:11px 0}
.pmv-milestones p{color:#677f70;font-size:.82rem;line-height:1.6;margin:0}
.pmv-monitor-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pmv-monitor-card{border:1px solid #dce7df;background:#fff;border-radius:18px;padding:25px;box-shadow:0 15px 35px #153c2110}
.pmv-monitor-card h3{font-size:1.16rem;color:#204d3b;font-weight:800}
.pmv-monitor-card p{color:#657e6f;line-height:1.62;font-size:.85rem}
.pmv-years{display:flex;gap:5px;flex-wrap:wrap;margin:17px 0}
.pmv-years button{background:#edf4ed;color:#325d48;border:1px solid #d9e9dc;border-radius:9px;padding:7px 9px;font-size:.72rem;font-weight:800}
.pmv-years button[aria-pressed="true"]{background:#1e7758;color:#fff;border-color:#1e7758}
.pmv-empty-data{display:flex;gap:12px;background:#eff7f0;padding:16px;border-radius:13px;color:#31674a}
.pmv-empty-data strong{display:block;font-size:.89rem}
.pmv-empty-data span{display:block;margin-top:7px;font-size:.77rem;line-height:1.55;color:#5a7d6a}
.pmv-monitor-legend{display:grid;gap:13px;margin:21px 0}
.pmv-monitor-legend>div{display:flex;gap:12px;align-items:flex-start}
.pmv-legend-num{border-radius:10px;background:#e2f2e7;padding:8px;font-size:.8rem;font-weight:900;color:#277952}
.pmv-monitor-legend strong{color:#235544;font-size:.87rem}
.pmv-monitor-legend p{margin:5px 0 0}
.pmv-validation-note{border-top:1px solid #e3ebe4;padding-top:13px;font-size:.77rem}
.pmv-section-final{background:#123e35;color:#fff}
.pmv-section-final h2{color:#fff}
.pmv-section-final p{color:#d2e7db;line-height:1.7;font-size:.91rem}
.pmv-final-grid{display:flex;justify-content:space-between;align-items:center;gap:35px}
.pmv-final-grid>div{max-width:800px}
.pmv-final-grid>.pmv-btn{flex:none}
@media(max-width:991px){.pmv-spot-inner,.pmv-page-hero-grid,.pmv-objective-layout{grid-template-columns:1fr}.pmv-spot-aside{display:none}.pmv-hero-tree-card{max-width:600px;width:100%;margin:auto}.pmv-selected-card{position:static}.pmv-modal-layout{grid-template-columns:1fr!important}.pmv-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pmv-container{padding-inline:15px}.pmv-spot-inner,.pmv-monitor-layout,.pmv-objectives-list,.pmv-milestones{grid-template-columns:1fr}.pmv-page-hero{padding:45px 0}.pmv-spot-numbers{gap:12px}.pmv-tree-stage,.pmv-hero-tree-card .pmv-tree-stage{height:320px}.pmv-tree-stage .pmv-fruit{width:33px;height:33px;font-size:.72rem}.pmv-final-grid{flex-direction:column;align-items:flex-start}.pmv-form-fields{grid-template-columns:1fr}.pmv-modal-actions{flex-direction:column}#pmeVivoModal .modal-dialog{max-width:calc(100vw - 8px);margin:4px auto}#pmeVivoModal .pmv-modal-header{padding:17px}#pmeVivoModal .pmv-modal-body{padding:10px}#pmeVivoModal .pmv-tree-surface,#pmeVivoModal .pmv-modal-detail{padding:12px}}
@media(prefers-reduced-motion:reduce){.pmv .pmv-btn,.pmv-tree-stage .pmv-fruit{transition:none!important}}
