/* Rossetti Advisory — páginas (Revisão 23) */
.pg{padding:56px clamp(24px,7vw,110px) 64px;background:#f4f2ec}
.pg-inner{max-width:1240px;margin:0 auto}
.pg-head{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end;margin-bottom:34px}
.pg-title{font:400 clamp(32px,3.4vw,52px)/1.08 var(--serif);color:#1e2a34;letter-spacing:-1px;margin:10px 0 0}
.pg-title em{font-style:italic;color:#496f8c}
.pg-lead{margin:0;color:#3f4a52;font-size:17px;line-height:1.65}
.pg-sub{font:400 clamp(24px,2.2vw,32px)/1.15 var(--serif);color:#1e2a34;margin:44px 0 18px}
.pg-note{color:#565b5e;font-size:14px;line-height:1.6;margin:0 0 12px}
.pg-card{background:#fff;border:1px solid #d8d4ca;padding:26px 28px}
.pg-card small{display:block;font-size:11px;font-weight:700;letter-spacing:2px;color:#4d7198;margin-bottom:10px}
.pg-card h2{font:400 22px/1.25 var(--serif);color:#1e2a34;margin:0 0 10px}
.pg-card p{margin:0;color:#3f4a52;font-size:15.5px;line-height:1.6}
.pg-card.light{background:#f8f7f3}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;scroll-margin-top:96px}
.compare{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cmp-card{background:#fff;border:1px solid #d8d4ca;border-top:3px solid #496f8c;padding:22px 26px;display:flex;flex-direction:column}
.cmp-card h2{font:400 26px/1.15 var(--serif);color:#1e2a34;margin:0 0 6px}
.cmp-card dl{margin:0 0 16px}
.cmp-card dt{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#4d7198;margin:12px 0 3px}
.cmp-card dd{margin:0;color:#3f4a52;font-size:14.5px;line-height:1.5}
.cmp-link,.pg-link{margin-top:auto;color:#395f81;font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;text-underline-offset:5px}
.pg-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:24px;flex-wrap:wrap}
.pg-foot .pg-note{margin:0}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.steps li{border-top:2px solid #496f8c;padding-top:14px}
.steps span{display:block;font:400 14px var(--serif);color:#496f8c;margin-bottom:6px}
.steps strong{display:block;font:400 21px/1.2 var(--serif);color:#1e2a34;margin-bottom:6px}
.steps p{margin:0;color:#3f4a52;font-size:14.5px;line-height:1.55}
.pg-bottom{display:grid;grid-template-columns:1fr 1fr;gap:5vw;margin-top:40px;align-items:start}
.pg-bottom p{color:#3f4a52;font-size:15.5px;line-height:1.6;margin:0 0 12px}
.pg-bottom .pg-sub{margin-top:0}
.ticks{list-style:none;margin:0;padding:0}
.ticks li{position:relative;padding:9px 0 9px 22px;border-bottom:1px solid #e3e0d8;color:#26323a;font-size:15.5px}
.ticks li:before{content:"";position:absolute;left:0;top:19px;width:10px;height:1px;background:#496f8c}
.pg-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.pg-thesis{max-width:880px}
.pg-thesis p{color:#3f4a52;font-size:16.5px;line-height:1.65;margin:0 0 12px}
.pg-thesis .pg-sub{margin-top:8px}
.pg .insights{padding:0;background:none}
.pg-sobre{padding-bottom:8px}
.nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:#496f8c;text-underline-offset:7px;text-decoration-thickness:2px}
/* Início: abertura e faixa de prova na primeira tela */
body.perspectiva .hero{min-height:max(520px,calc(100vh - 128px))}
body.perspectiva .hero-visual{min-height:0}
.proof-strip.proof-strip-3 li{font-size:clamp(12.5px,1vw,14.5px);padding:0 clamp(14px,1.6vw,28px)}
@media(max-width:1000px){.compare,.trio{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.pg-head,.duo,.pg-bottom{grid-template-columns:1fr;gap:16px}.pg{padding:40px 22px 48px}.steps{grid-template-columns:1fr}.pg-sub{margin-top:34px}}
/* Atuação: tabela comparativa (computador) e cartões (celular) */
.cmp-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d8d4ca}
.cmp-table th,.cmp-table td{padding:13px 18px;vertical-align:top;text-align:left;border-bottom:1px solid #ebe8e1}
.cmp-table thead th{border-bottom:2px solid #496f8c;padding-top:18px;padding-bottom:14px;width:28%}
.cmp-table thead td{border-bottom:2px solid #496f8c;background:#f8f7f3}
.cmp-table thead h2{font:400 24px/1.15 var(--serif);color:#1e2a34;margin:0 0 6px}
.cmp-table tbody th{width:16%;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#4d7198;background:#f8f7f3;line-height:1.5}
.cmp-table td{color:#3f4a52;font-size:14.5px;line-height:1.5}
.cmp-table tbody tr:last-child th,.cmp-table tbody tr:last-child td{border-bottom:0}
.cmp-mobile{display:none}
.pg-atuacao{padding-top:36px;padding-bottom:36px}
.pg-atuacao .pg-head{margin-bottom:22px}
.pg-atuacao .pg-title{font-size:clamp(30px,3vw,44px)}
/* Início: a faixa de prova fecha a primeira tela */
body.perspectiva .hero{min-height:max(520px,calc(100vh - 80px - 52px))}
body.perspectiva .hero-photo img{max-height:min(630px,calc(100vh - 200px))}
@media(max-width:900px){.cmp-table{display:none}.cmp-mobile{display:grid}.pg-atuacao{padding-top:32px}}
/* Início: abertura e faixa cabem na primeira tela (substitui as alturas fixas antigas) */
@media(min-width:901px){body.perspectiva .hero-inner{min-height:max(520px,calc(100vh - 132px))}}
@media(min-width:901px) and (max-height:860px){body.perspectiva .hero-copy{padding-top:28px;padding-bottom:28px}body.perspectiva .hero h1{font-size:clamp(38px,3.6vw,52px)}body.perspectiva .hero-lead{font-size:16.5px;margin-top:16px}body.perspectiva .hero .actions{margin-top:22px}}
/* Atuação compacta: a tabela cabe numa tela de notebook */
.pg-atuacao{padding:26px clamp(24px,4vw,80px) 26px}.pg-atuacao .pg-head{margin-bottom:16px;gap:4vw}.pg-atuacao .pg-lead{font-size:15.5px}.pg-atuacao .pg-title{font-size:clamp(28px,2.8vw,40px)}
.cmp-table th,.cmp-table td{padding:10px 16px}.cmp-table td{font-size:14px;line-height:1.45}.cmp-table thead h2{font-size:22px}.cmp-table tbody th{width:13%}.pg-atuacao .pg-foot{margin-top:14px}
/* contraste do itálico dos títulos sobre o fundo claro; subtítulos de seção */
body.perspectiva .pg-title em{color:#496f8c}
.pg-sub-sm{font-size:clamp(20px,1.8vw,26px);margin:30px 0 14px}
/* Conteúdos: destaque no topo, fileira horizontal e arquivo */
.pg-head-destaque{align-items:start}
.pg-head-destaque .pg-lead{margin-top:18px;max-width:520px}
.destaque{background:#1e2a34;color:#f4f2ec;padding:28px 30px 26px;border-top:3px solid #8aa7be}
.destaque-rot{margin:0 0 14px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#a9bdd3}
.destaque-rot time{font-weight:400;letter-spacing:1px;margin-left:10px;color:#c0ccd6}
.destaque small{display:block;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:#c0ccd6;margin-bottom:8px}
.destaque h2{font:400 clamp(24px,2.2vw,32px)/1.2 var(--serif);color:#fff;margin:0 0 12px}
.destaque p{color:#d6dde3;font-size:15.5px;line-height:1.6;margin:0 0 18px}
.destaque-links a,.cartao-links a{display:inline-block;font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;text-underline-offset:5px;margin:0 18px 4px 0}
.destaque-links a{color:#fff}
.fileira{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 14px;-webkit-overflow-scrolling:touch}
.fileira:focus-visible{outline:2px solid #496f8c;outline-offset:4px}
.cartao{flex:0 0 300px;scroll-snap-align:start;background:#fff;border:1px solid #d8d4ca;border-top:3px solid #496f8c;padding:22px 24px;display:flex;flex-direction:column}
.cartao small{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#4d7198;margin-bottom:8px}
.cartao h3{font:400 21px/1.25 var(--serif);color:#1e2a34;margin:0 0 10px}
.cartao p{color:#3f4a52;font-size:14.5px;line-height:1.55;margin:0 0 14px}
.cartao time{display:block;font-size:12.5px;color:#565b5e;margin-bottom:10px}
.cartao-links{margin-top:auto}.cartao-links a{color:#395f81}
.arquivo{list-style:none;margin:0;padding:0;border-top:1px solid #d8d4ca}
.arquivo li{display:flex;gap:18px;align-items:baseline;padding:12px 0;border-bottom:1px solid #e3e0d8;font-size:15px}
.arquivo time{flex:0 0 96px;color:#565b5e;font-size:13.5px}
.arquivo a{color:#1e2a34;flex:1;text-decoration:none}.arquivo a:hover,.arquivo a:focus-visible{text-decoration:underline}
.arq-onde{color:#395f81;font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap}
@media(max-width:900px){.cartao{flex-basis:78vw}.arquivo li{flex-wrap:wrap;gap:4px 12px}.arquivo time{flex-basis:auto}}
/* faixa curta da Home no celular: 3 linhas de 2 termos */
@media(max-width:900px){.proof-strip.proof-strip-3 ul{display:grid;grid-template-columns:1fr 1fr;row-gap:10px;max-width:420px;margin:0 auto}
.proof-strip.proof-strip-3 li{display:block;padding:0 10px;border:0;text-align:center;white-space:nowrap}
.proof-strip.proof-strip-3 li:before{content:none}.proof-strip.proof-strip-3 li:nth-child(even){border-left:1px solid rgba(192,204,214,.35)}}
/* Conteúdos: colunas iguais, independentes do conteúdo do destaque */
.pg-head-destaque{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pg-conteudos .pg-title{font-size:clamp(32px,3.1vw,48px)}
/* títulos das páginas internas: uma escala só (a regra antiga do h1 da abertura não vale aqui) */
body.perspectiva .pg .pg-title{font-size:clamp(34px,3.4vw,52px)}
body.perspectiva .pg-atuacao .pg-title{font-size:clamp(28px,2.8vw,40px)}
body.perspectiva .pg-conteudos .pg-title{font-size:clamp(32px,3.1vw,48px)}
/* Advisory: os primeiros 90 dias */
.fases{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fases li{border-top:2px solid #496f8c;padding-top:14px;display:flex;flex-direction:column}
.fases span{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#4d7198;margin-bottom:6px}
.fases strong{font:400 21px/1.2 var(--serif);color:#1e2a34;margin-bottom:6px}
.fases p{margin:0 0 8px;color:#3f4a52;font-size:14.5px;line-height:1.55}
.fases .fase-entrega{margin-top:auto;padding-top:8px;border-top:1px dashed #d8d4ca;color:#26323a;font-size:14px}
.junto{margin-top:22px;background:#fff;border:1px solid #d8d4ca;border-left:3px solid #496f8c;padding:16px 20px}
.junto p{margin:0;color:#3f4a52;font-size:15px;line-height:1.6}
@media(max-width:900px){.fases{grid-template-columns:1fr}}
/* Sobre: "Para você" em cada fase */
.timeline .para-voce{margin-top:6px;color:#395f81;font-size:14.5px}
.timeline .para-voce strong{color:#1e2a34;font-weight:700}
/* Atuação em telas baixas (até 740 px de altura): tabela mais compacta para continuar numa tela */
@media(min-width:901px) and (max-height:740px){.pg-atuacao{padding-top:18px;padding-bottom:18px}.pg-atuacao .pg-head{margin-bottom:12px}.cmp-table th,.cmp-table td{padding:8px 14px}.cmp-table td{font-size:13.5px;line-height:1.4}.cmp-table thead th{padding-top:12px;padding-bottom:10px}.pg-atuacao .pg-foot{margin-top:10px}}
/* Sobre: o subtítulo "Trajetória" segue a escala dos subtítulos (a regra antiga de .bio h2 não vale aqui) */
body.perspectiva .bio .pg-sub-sm{font-size:clamp(20px,1.8vw,26px);margin:30px 0 14px;letter-spacing:0}
/* Revisão 30: Conteúdos em uma coluna no celular; nota das ações desde o início */
@media(max-width:900px){.pg-head-destaque{grid-template-columns:1fr}}
.fases-nota{margin-top:14px}
