.v2-ppd-hero .v2-hero__veu {
background:
linear-gradient(0deg, rgba(0,39,69,.95) 0%, rgba(0,39,69,.84) 24%, rgba(0,39,69,.44) 48%, rgba(0,39,69,.12) 70%, rgba(0,39,69,.04) 100%),
linear-gradient(90deg, rgba(0,39,69,.5) 0%, rgba(0,39,69,.2) 46%, rgba(0,39,69,0) 70%);
}
.dm-v2 .v2-ppd-hero .v2-hero__img { object-position: 50% 30%; }
.v2-ppd-hero .v2-hero__lead { max-width: 54ch; }
@media (max-width: 999px) {
.v2-ppd-hero .v2-hero__veu {
background: linear-gradient(0deg, rgba(0,39,69,.95) 0%, rgba(0,39,69,.86) 40%, rgba(0,39,69,.4) 64%, rgba(0,39,69,.1) 100%); }
.dm-v2 .v2-ppd-hero .v2-hero__img { object-position: 42% 30%; }
}
@media (max-width: 639px) {
.v2-ppd-hero .v2-hero__veu {
background: linear-gradient(180deg, rgba(0,39,69,.92) 0%, rgba(0,39,69,.84) 46%, rgba(0,39,69,.5) 64%, rgba(0,39,69,.14) 84%, rgba(0,39,69,.04) 100%); }
.dm-v2 .v2-ppd-hero .v2-hero__img { top: 30%; height: 100%; object-position: 40% 0; }
}
.v2-ppd-gat { background: var(--dm-surface); padding-block: var(--v2-sec-y); }
.v2-ppd-gat .v2-h2 { max-width: 34ch; }
.v2-ppd-gat__grade { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--v2-gap);
align-items: start; margin-top: var(--v2-esp-32-56); }
.v2-ppd-lista { grid-column: 1 / span 8; min-width: 0; }
.v2-ppd-lista__l { display: grid; grid-template-columns: 3.2ch 28px minmax(0, 1fr); align-items: start;
column-gap: var(--v2-esp-14-28); margin: 0; padding: clamp(18px, 2.6svh, 28px) var(--v2-esp-10-20);
border-bottom: 1px solid var(--dm-border);
transition: background-color 220ms var(--v2-e-std), border-color 220ms var(--v2-e-std); }
.v2-ppd-lista__n { line-height: 2.9rem; }
.v2-ppd-lista__ic { width: 28px; height: 28px; }
.v2-ppd-lista__ic svg {  }
.v2-ppd-lista__t { margin: 0; font-family: var(--v2-font-titulo); font-weight: 400; font-size: clamp(1.7rem, 1.35vw, 2rem);
line-height: 1.45; color: var(--dm-body); max-width: 62ch; transition: color 220ms var(--v2-e-std); }
.v2-ppd-lista__t strong { font-weight: 700; color: var(--dm-ink); transition: color 220ms var(--v2-e-std); }
@media (hover: hover) {
.v2-ppd-lista__l:hover { background: var(--dm-ink); border-bottom-color: var(--dm-ink); }
.v2-ppd-lista__l:hover .v2-ppd-lista__t { color: var(--v2-sobre-escuro-2); }
.v2-ppd-lista__l:hover .v2-ppd-lista__t strong { color: #fff; }
.v2-ppd-lista__l:hover .v2-ppd-lista__ic { color: #fff; transform: translateX(3px); }
}
.v2-ppd-gat__foto {
grid-column: 9 / -1; position: relative; align-self: stretch; margin: 0; min-height: 320px;
border-radius: var(--v2-r-card); overflow: hidden; overflow: clip; background: var(--dm-border);
}
.dm-v2 .v2-ppd-gat__foto img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none;
object-fit: cover; object-position: 64% 56%; }
@media (max-width: 999px) {
.v2-ppd-gat__grade { row-gap: 4rem; }
.v2-ppd-lista, .v2-ppd-gat__foto { grid-column: 1 / -1; }
.v2-ppd-gat__foto { aspect-ratio: 16 / 10; min-height: 0; }
.dm-v2 .v2-ppd-gat__foto img { object-position: 64% 56%; }
}
@media (max-width: 719px) {
.v2-ppd-lista__l { grid-template-columns: 3.2ch minmax(0, 1fr); row-gap: .8rem; }
.v2-ppd-lista__ic { width: 24px; height: 24px; grid-column: 2; grid-row: 1; }
.v2-ppd-lista__n { grid-column: 1; grid-row: 1; line-height: 2.4rem; }
.v2-ppd-lista__t { grid-column: 1 / -1; font-size: 1.7rem; }
}
.v2-ppd-cena {
--ppd-via: #767E89; --ppd-acost: #4B5563; --ppd-cant: #2E5140; --ppd-piso: #26303B; --ppd-corr: #353E49;
--ppd-sec: var(--v2-sobre-escuro-3); --ppd-g: var(--dm-highlight);
}
.v2-ppd-cena__abre { padding-top: var(--v2-sec-y); padding-bottom: var(--v2-esp-bloco); }
.v2-ppd-cena .v2-ppd-decisao { padding-block: clamp(8px, 1.4vw, 24px) 0; max-width: 21ch; }
.v2-ppd-cena__janela {
position: relative; background: var(--dm-ink); padding: var(--v2-sec-y) 0 calc(var(--v2-sec-y) + var(--v2-r-lamina));
clip-path: inset(0 calc(4% * (1 - var(--j))) round calc(24px * (1 - var(--j))) calc(24px * (1 - var(--j))) 0 0);
}
.v2-ppd-cena .v2-h2 { color: #fff; }
.v2-ppd-cena__lead { color: var(--v2-sobre-escuro-2); }
.v2-ppd-cena__grade { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--v2-gap);
margin-top: var(--v2-esp-8-16); }
.v2-ppd-cena__passos { grid-column: 1 / span 4; grid-row: 1; list-style: none; margin: 0; padding: 12svh 0 40svh; }
.v2-ppd-cena__palco { top: calc(var(--v2-head) + 20px); min-width: 0; box-sizing: border-box; justify-content: flex-end; padding-left: var(--v2-esp-0-32);
}
.v2-ppd-cena__quadro {
position: relative; overflow: hidden; overflow: clip; border-radius: var(--v2-r-janela); aspect-ratio: 1000 / 700;
width: min(100%, calc((100svh - var(--v2-head) - 40px) * 1.4286));
background-color: #0a1a26; box-shadow: var(--v2-sombra-escuro);
background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
background-size: 5% 7.1429%;
}
.v2-ppd-mundo { position: absolute; inset: 0; width: 100%; height: 100%; display: block; overflow: hidden; }
.v2-ppd-mundo text { font-family: var(--v2-font-titulo); font-weight: 700; fill: #fff; letter-spacing: -.01em; }
.v2-ppd-cena__selo { position: absolute; left: 3.2%; bottom: 4.2%; display: none; place-items: center; min-width: 64px;
padding: 8px 14px; border-radius: 12px; background: var(--v2-ink-vidro); box-shadow: var(--v2-sombra-escuro); }
.v2-ppd-cena.is-viva .v2-ppd-cena__selo { display: grid; }
.v2-ppd-cena__n { font-family: var(--v2-font-titulo); font-weight: 800; font-size: clamp(3.2rem, min(3.2vw, 6.4svh), 5.2rem);
line-height: .85; letter-spacing: -.04em; font-variant-numeric: tabular-nums; color: var(--dm-highlight); }
.v2-ppd-cena__n.is-troca { animation: v2-letra-in 700ms var(--v2-e-out); }
.v2-ppd-passo { min-height: 56svh; display: grid; grid-template-columns: 44px 1fr; column-gap: 1.6rem; align-content: center;
margin: 0; transition: opacity 450ms var(--v2-e-std); scroll-margin-top: calc(var(--v2-head) + 24px); }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-passo { opacity: .5; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-passo.is-ativo { opacity: 1; }
.v2-ppd-passo__n { font-family: var(--v2-font-titulo); font-weight: 700; font-size: 1.5rem; letter-spacing: .1em;
color: var(--v2-rosa-texto-tinta); font-variant-numeric: tabular-nums; padding-top: .6rem; }
.v2-ppd-cena .v2-ppd-passo__t { font-family: var(--v2-font-titulo); font-weight: 700; font-size: clamp(2.4rem, 2.2vw, 3.4rem);
line-height: 1.15; letter-spacing: -.01em; color: #fff; margin: 0 0 1.2rem; text-wrap: balance; }
.v2-ppd-passo__d { font-size: var(--v2-fs-corpo); line-height: 1.7; color: var(--v2-sobre-escuro-2); margin: 0; max-width: 44ch; }
.v2-ppd-passo__d strong { color: #fff; font-weight: 600; }
.v2-ppd-passo__d a:not(.v2-ppd-termo) { color: #fff; }
.v2-ppd-termo { font-weight: 700; color: #fff; }
.v2-ppd-passo__d a.v2-ppd-termo { color: #fff; text-decoration: underline; text-decoration-color: rgba(143,182,206,.6);
text-underline-offset: 3px; }
.v2-ppd-passo__d a.v2-ppd-termo:hover { text-decoration-color: #fff; }
.v2-ppd-termo::before { content: ""; display: inline-block; margin-right: .38em; vertical-align: .02em;
transition: opacity 400ms var(--v2-e-std), transform 400ms var(--v2-e-out); }
.v2-ppd-termo--cota::before { width: 1.1em; height: .5em; vertical-align: .1em;
border-left: 2px solid var(--ppd-g); border-right: 2px solid var(--ppd-g);
background: linear-gradient(var(--ppd-g), var(--ppd-g)) center / 100% 2px no-repeat; }
.v2-ppd-termo--sec::before { width: 1.1em; height: .8em; vertical-align: -.08em; border-radius: 2px;
background: linear-gradient(90deg, transparent calc(50% - 1.5px), var(--ppd-sec) calc(50% - 1.5px) calc(50% + 1.5px), transparent calc(50% + 1.5px)),
linear-gradient(transparent calc(50% - .5px), rgba(255,255,255,.7) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px)),
var(--ppd-via); }
.v2-ppd-termo--pes::before { width: 1.4em; height: .5em; vertical-align: .1em; border-radius: 2px;
background: linear-gradient(90deg, var(--ppd-g) 0 74%, transparent 74% 80%, #fff 80%); box-shadow: 0 0 0 1px var(--v2-vis-contorno); }
.v2-ppd-termo--vaga::before { width: .9em; height: .9em; vertical-align: -.08em; border-radius: 2px;
background: rgba(204,82,148,.28); box-shadow: inset 0 0 0 2px var(--ppd-g); transform: skewX(-24deg); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-termo--cota::before,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p2) .v2-ppd-termo--sec::before,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p2) .v2-ppd-termo--pes::before { opacity: .2; transform: scale(.6); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p3) .v2-ppd-termo--vaga::before { opacity: .2; transform: skewX(-24deg) scale(.6); }
html.v2-ppd-na-cena .v2-indice { opacity: 0 !important; visibility: hidden !important; }
.v2-ppd-rel__face { fill: #0F2433; stroke: rgba(255,255,255,.22); stroke-width: 1.5; }
.v2-ppd-rel__h { fill: none; stroke: rgba(255,255,255,.36); stroke-width: 2; stroke-linecap: round; }
.v2-ppd-rel__h--m { stroke: rgba(255,255,255,.72); stroke-width: 3; }
.v2-ppd-rel__setor { fill: rgba(204,82,148,.3); }
.v2-ppd-rel__arco { fill: none; stroke: var(--ppd-g); stroke-width: 4; stroke-linecap: round; }
.v2-ppd-rel__marca { fill: none; stroke: var(--ppd-g); stroke-width: 3; stroke-linecap: round; }
.v2-ppd-mundo .v2-ppd-rel__rot { font-size: 26px; font-weight: 800; fill: #fff; transition: opacity 300ms var(--v2-e-std); }
.v2-ppd-rel__pont path { fill: none; stroke: #fff; stroke-width: 3.5; stroke-linecap: round; }
.v2-ppd-rel__eixo { fill: #fff; }
.v2-ppd-tr__via { fill: var(--ppd-via); }
.v2-ppd-tr__eixo { fill: none; stroke: rgba(255,255,255,.7); stroke-width: 1.4; stroke-dasharray: 9 9; }
.v2-ppd-cota__ext { fill: none; stroke: rgba(255,255,255,.32); stroke-width: 1.2; }
.v2-ppd-cota__l { fill: none; stroke: var(--ppd-g); stroke-width: 2; stroke-dasharray: 1; stroke-dashoffset: 0; }
.v2-ppd-cota__t { fill: none; stroke: var(--ppd-g); stroke-width: 2; }
.v2-ppd-mundo .v2-ppd-cota__rot { font-size: 22px; }
.v2-ppd-pino__haste { fill: none; stroke: rgba(255,255,255,.45); stroke-width: 1.5; }
.v2-ppd-pino__m { fill: var(--v2-ink-alto); stroke: var(--v2-sobre-escuro-3); stroke-width: 1.6; transition: fill 300ms var(--v2-e-std), stroke 300ms var(--v2-e-std); }
.v2-ppd-pino__pic path { fill: none; stroke: var(--v2-sobre-escuro-2); stroke-width: 1.8; stroke-linecap: round; }
.v2-ppd-pino--det .v2-ppd-pino__m { stroke: var(--ppd-g); stroke-width: 2; }
.v2-ppd-pino.is-chega .v2-ppd-pino__m { fill: var(--ppd-g); stroke: #fff; }
.v2-ppd-pino.is-chega .v2-ppd-pino__pic path { stroke: #fff; }
.v2-ppd-cam { transition: opacity 300ms var(--v2-e-std); }
.v2-ppd-cam__carga { fill: var(--ppd-g); stroke: var(--v2-vis-contorno); stroke-width: 1; }
.v2-ppd-cam__cab { fill: #fff; stroke: var(--v2-vis-contorno); stroke-width: 1; }
.v2-ppd-chamada path { fill: none; stroke: rgba(143,182,206,.4); stroke-width: 1.2; stroke-dasharray: 4 5; }
.v2-ppd-b__chao { fill: #0c1c28; }
.v2-ppd-b__borda { fill: none; stroke: rgba(143,182,206,.34); stroke-width: 1.2; }
.v2-ppd-acost { fill: var(--ppd-acost); }
.v2-ppd-cant { fill: var(--ppd-cant); }
.v2-ppd-link { fill: var(--ppd-via); }
.v2-ppd-alca { fill: none; stroke: var(--ppd-via); stroke-width: 14; stroke-linejoin: round; }
.v2-ppd-patio__piso { fill: var(--ppd-piso); }
.v2-ppd-corredor { fill: var(--ppd-corr); }
.v2-ppd-seta path { fill: none; stroke: rgba(255,255,255,.5); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.v2-ppd-borda { fill: none; stroke: rgba(255,255,255,.45); stroke-width: 1.2; }
.v2-ppd-trac { fill: none; stroke: rgba(255,255,255,.78); stroke-width: 1.3; stroke-dasharray: 9 9; }
.v2-ppd-trac--aux { stroke-dasharray: 3 5; }
.v2-ppd-vagas path { fill: none; stroke: rgba(255,255,255,.72); stroke-width: 1.4; stroke-dasharray: 1; stroke-dashoffset: 0; }
.v2-ppd-vcota__v { fill: var(--v2-rosa-marca); stroke: var(--ppd-g); stroke-width: 2; stroke-linejoin: round; }
.v2-ppd-vcota__l { fill: none; stroke: var(--ppd-g); stroke-width: 1.5; }
.v2-ppd-mundo .v2-ppd-vcota__rot { font-size: 21px; }
.v2-ppd-sec__l { fill: none; stroke: var(--ppd-sec); stroke-width: 3; stroke-linecap: round; }
.v2-ppd-sec__l.is-pulso { animation: v2-ppd-pulso 800ms var(--v2-e-out) 1; }
@keyframes v2-ppd-pulso { 0% { stroke: #fff; stroke-width: 7; } 100% { stroke: var(--ppd-sec); stroke-width: 3; } }
.v2-ppd-sec__cx { fill: var(--v2-ink-alto); stroke: var(--ppd-sec); stroke-width: 1.4; }
.v2-ppd-sec__fio { fill: none; stroke: var(--ppd-sec); stroke-width: 1; }
.v2-ppd-v rect, .v2-ppd-pq rect { stroke: var(--v2-vis-contorno); stroke-width: 1; }
.v2-ppd-v--c0 rect { fill: var(--v2-vis-frota-1); }
.v2-ppd-v--c1 rect { fill: var(--v2-vis-frota-2); }
.v2-ppd-v--c2 rect { fill: var(--v2-vis-frota-3); }
.v2-ppd-v--c3 rect { fill: var(--v2-vis-frota-4); stroke: #0B0D10; }
.v2-ppd-v--c4 rect { fill: var(--v2-vis-frota-5); }
.v2-ppd-v--c5 rect { fill: var(--v2-vis-frota-6); }
.v2-ppd-v--pesado .v2-ppd-v__carga { fill: var(--ppd-g); transition: fill 500ms var(--v2-e-std); }
.v2-ppd-v--pesado .v2-ppd-v__cab { fill: var(--v2-vis-frota-1); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p2) .v2-ppd-v--pesado .v2-ppd-v__carga { fill: var(--dm-border); }
.v2-ppd-pq .v2-ppd-v__carga { fill: #E6EAEF; }
.v2-ppd-cena.is-sim .v2-ppd-vs--fixos, .js-v2 .v2-ppd-cena.is-viva .v2-ppd-vs--fixos { display: none; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-cotas, .js-v2 .v2-ppd-cena.is-viva .v2-ppd-cam,
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-rel__setor, .js-v2 .v2-ppd-cena.is-viva .v2-ppd-rel__arco,
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-rel__pont { transition: opacity 500ms var(--v2-e-std); }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-cota__l { transition: stroke-dashoffset 900ms var(--v2-e-io) 150ms; }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-cotas,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-cam,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-rel__setor,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-rel__arco,
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-rel__pont { opacity: 0; }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p1) .v2-ppd-cota__l { stroke-dashoffset: 1; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-rel:not(.is-cheio) .v2-ppd-rel__rot { opacity: 0; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-sec { transition: opacity 500ms var(--v2-e-std); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p2) .v2-ppd-sec { opacity: 0; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-vagas path { transition: stroke-dashoffset 500ms var(--v2-e-io); transition-delay: calc(var(--k, 0) * 22ms); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p3) .v2-ppd-vagas path { stroke-dashoffset: 1; transition-delay: 0s; transition-duration: 300ms; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-pq { transition: opacity 450ms var(--v2-e-std), transform 700ms var(--v2-e-out);
transition-delay: calc(700ms + var(--k, 0) * 55ms); }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p3) .v2-ppd-pq { opacity: 0; transform: translateX(-18px); transition-delay: 0s; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-vcota { transition: opacity 500ms var(--v2-e-std) 1900ms; }
.js-v2 .v2-ppd-cena.is-viva:not(.is-p3) .v2-ppd-vcota { opacity: 0; transition-delay: 0s; }
@media (min-width: 1000px) and (max-width: 1199px) {
.v2-ppd-cena__passos { grid-column: 1 / span 5; }
.v2-ppd-cena__palco { grid-column: 6 / -1; }
}
@media (max-height: 760px) {
.v2-ppd-passo { min-height: 52svh; }
}
@media (max-width: 999px) {
.v2-ppd-cena__palco { grid-column: 1 / -1; grid-row: 1; top: var(--v2-head); height: auto; z-index: 2;
padding: 10px var(--dm-gutter); margin-inline: calc(-1 * var(--dm-gutter)); background: var(--dm-ink); justify-content: center; }
.v2-ppd-cena__quadro { width: min(100%, calc(42svh * 1.4286)); border-radius: 14px; }
.v2-ppd-cena__passos { grid-column: 1 / -1; grid-row: 2; padding: 4svh 0 30svh; }
.v2-ppd-passo { min-height: calc(var(--ppd-leitura, 70svh) * .66); grid-template-columns: 36px 1fr; column-gap: 1.2rem;
align-content: start; }
.v2-ppd-cena__selo { left: 6px; bottom: 6px; min-width: 0; padding: 5px 8px; border-radius: 7px; }
.v2-ppd-cena__n { font-size: 2rem; }
.v2-ppd-mundo .v2-ppd-cota__rot { font-size: 34px; }
.v2-ppd-mundo .v2-ppd-rel__rot { font-size: 36px; }
.v2-ppd-mundo .v2-ppd-vcota__rot { font-size: 30px; }
.v2-ppd-cota__l, .v2-ppd-cota__t { stroke-width: 3.4; }
.v2-ppd-trac { stroke-width: 2.4; stroke-dasharray: 12 10; }
.v2-ppd-vagas path { stroke-width: 2.2; }
.v2-ppd-v rect, .v2-ppd-pq rect { stroke-width: 1.6; }
.v2-ppd-sec__l { stroke-width: 4.6; }
.v2-ppd-chamada path { stroke-width: 2; }
}
@media (max-height: 560px) {
.v2-ppd-cena__palco { position: relative; top: 0; height: auto; }
.v2-ppd-cena__quadro { width: min(100%, 520px); }
.v2-ppd-passo { min-height: 0; padding-block: 16px; }
.js-v2 .v2-ppd-cena.is-viva .v2-ppd-passo { opacity: 1; }
}
.elementor-editor-active .v2-ppd-cena__palco { position: relative; }
.elementor-editor-active .v2-ppd-cena__janela { clip-path: none; }
.v2-ppd-pontes { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--v2-gap);
margin-top: var(--v2-esp-24-48); }
.v2-ppd-ponte { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2rem 2.4rem;
border: 1px solid var(--v2-filete-escuro); border-radius: var(--v2-r-card); color: var(--v2-sobre-escuro-2); text-decoration: none;
font-size: 1.6rem; line-height: 1.6; transition: background 200ms, border-color 200ms; }
.v2-ppd-ponte b { color: #fff; font-weight: 600; }
.v2-ppd-nq { font-style: normal; white-space: nowrap; }
.v2-ppd-ponte__seta { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
border: 1px solid rgba(255,255,255,.3); color: #fff; font-size: 1.8rem; transition: background 200ms; }
@media (hover: hover) and (pointer: fine) {
.v2-ppd-ponte:hover { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.4); color: #fff; }
.v2-ppd-ponte:hover .v2-ppd-ponte__seta { background: var(--dm-highlight); border-color: var(--dm-highlight); }
}
.v2-ppd-ponte:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 799px) {
.v2-ppd-pontes { grid-template-columns: 1fr; }
.v2-ppd-ponte { padding: 1.6rem 1.8rem; font-size: 1.5rem; }
}
.v2-ppd-prazo { padding-bottom: var(--v2-sec-y); }
.v2-ppd-donos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; align-items: stretch;
margin-top: var(--v2-esp-cab); }
.v2-ppd-dono { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--dm-border);
padding: clamp(28px, 2.8vw, 48px) var(--v2-pad-cartao) clamp(28px, 2.8vw, 44px); }
.v2-ppd-dono:first-child { border-radius: var(--v2-r-card) 0 0 var(--v2-r-card); border-right: 0; }
.v2-ppd-dono--orgao { border-radius: 0 var(--v2-r-card) var(--v2-r-card) 0; background: var(--dm-surface); }
.js-dm .v2-ppd-dono.dm-reveal { transition-delay: calc(var(--i, 0) * 120ms); }
.v2-ppd-dono__trilho { position: absolute; left: 0; right: 0; top: -1px; height: 6px; display: block; overflow: hidden; }
.v2-ppd-dono__trilho i { position: absolute; inset: 0; background: var(--dm-primary); transform-origin: 0 50%; }
.v2-ppd-dono:first-child .v2-ppd-dono__trilho { border-top-left-radius: var(--v2-r-card); }
.v2-ppd-dono--orgao .v2-ppd-dono__trilho { border-top-right-radius: var(--v2-r-card); }
.v2-ppd-dono--orgao .v2-ppd-dono__trilho i { background: repeating-linear-gradient(135deg, var(--dm-muted) 0 5px, transparent 5px 10px); }
.js-dm .v2-ppd-dono__trilho i { transition: transform 700ms var(--v2-e-io); transition-delay: calc(250ms + var(--i, 0) * 450ms); }
.js-dm .v2-ppd-dono:not(.is-in) .v2-ppd-dono__trilho i { transform: scaleX(0); }
.v2-ppd-dono__n { margin: 0 0 1.4rem; }
.v2-ppd-prazo .v2-ppd-dono__t { font-family: var(--v2-font-titulo); font-weight: 700; font-size: clamp(2.4rem, 2.1vw, 3.2rem);
line-height: 1.15; letter-spacing: -.015em; color: var(--dm-ink); margin: 0 0 1.4rem; text-wrap: balance; }
.v2-ppd-dono__quem { margin: 0; font-family: var(--v2-font-titulo); font-weight: 700; font-size: clamp(1.7rem, 1.3vw, 2rem);
line-height: 1.4; color: var(--dm-accent); max-width: 40ch; }
.v2-ppd-dono__d { margin: 1.2rem 0 0; font-size: var(--v2-fs-corpo); line-height: 1.65; color: var(--dm-body); max-width: 44ch; }
@media (min-width: 800px) {
@supports (grid-template-rows: subgrid) {
.v2-ppd-donos { grid-template-rows: repeat(4, auto); row-gap: 0; }
.v2-ppd-dono { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
}
}
@media (max-width: 799px) {
.v2-ppd-donos { grid-template-columns: 1fr; }
.v2-ppd-dono:first-child { border-radius: var(--v2-r-card) var(--v2-r-card) 0 0; border-right: 1px solid var(--dm-border); border-bottom: 0; }
.v2-ppd-dono--orgao { border-radius: 0 0 var(--v2-r-card) var(--v2-r-card); }
.v2-ppd-dono--orgao .v2-ppd-dono__trilho { border-top-right-radius: 0; }
.v2-ppd-dono:first-child .v2-ppd-dono__trilho { border-top-right-radius: var(--v2-r-card); }
}
.v2-ppd-normas { background: #fff; padding-block: var(--v2-sec-y); }
.v2-ppd-normas__l { list-style: none; margin: var(--v2-esp-32-56) 0 0; padding: 0; border-top: 1px solid var(--dm-border); }
.v2-ppd-norma { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: var(--v2-gap); margin: 0;
padding: var(--v2-esp-h-16-24) 0; border-bottom: 1px solid var(--dm-border); }
.v2-ppd-normas .v2-ppd-norma__nome { margin: 0; padding: .9rem var(--v2-esp-10-20) 0 0; font-family: var(--v2-font-titulo);
font-weight: 700; font-size: clamp(1.9rem, 1.6vw, 2.4rem); line-height: 1.25; letter-spacing: -.01em; color: var(--dm-ink);
text-transform: none; }
.v2-ppd-norma__arts { list-style: none; margin: 0; padding: 0; }
.v2-ppd-art, .v2-ppd-norma__res { display: grid; grid-template-columns: 3.2ch 8.6rem minmax(0, 1fr); column-gap: var(--v2-esp-12-24);
align-items: baseline; margin: 0; padding: clamp(10px, 1.4svh, 14px) var(--v2-esp-10-20); border-radius: 8px;
transition: background-color 220ms var(--v2-e-std); }
.v2-ppd-art + .v2-ppd-art { border-top: 1px solid var(--dm-border); border-radius: 0; }
.v2-ppd-norma__res { grid-template-columns: 3.2ch minmax(0, 1fr); }
.v2-ppd-art__n {  }
.v2-ppd-art__a { font-family: var(--v2-font-titulo); font-weight: 700; font-size: 1.7rem; color: var(--dm-accent); white-space: nowrap; }
.v2-ppd-art__d { margin: 0; font-size: 1.6rem; line-height: 1.6; color: var(--dm-body); }
.v2-ppd-art__d strong { color: var(--dm-ink); font-weight: 700; }
.v2-ppd-norma__chips { list-style: none; margin: 1.2rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.v2-ppd-norma__chips .v2-chip { margin: 0; font-size: 1.35rem; line-height: 1.25; padding: .6em .9em; background: var(--dm-surface); }
@media (hover: hover) {
.v2-ppd-art:hover, .v2-ppd-norma__res:hover { background: var(--dm-surface); }
}
@media (max-width: 799px) {
.v2-ppd-norma { grid-template-columns: 1fr; row-gap: .6rem; }
.v2-ppd-normas .v2-ppd-norma__nome { padding: .4rem 0 .4rem; }
.v2-ppd-art { grid-template-columns: 3.2ch minmax(0, 1fr); row-gap: .2rem; padding-inline: 0; }
.v2-ppd-art__a { grid-column: 2; }
.v2-ppd-art__d { grid-column: 2; font-size: 1.5rem; }
.v2-ppd-norma__res { padding-inline: 0; }
}
.v2-ppd-art__d { max-width: 58ch; }
