/* Linguagem aprovada: Mango monumental; Synapsis para leitura e controles. */
html[data-da-type-system]{
  --display-family:'Mango Grotesque','Arial Narrow',Arial,sans-serif;
  --display-weight:870;
  --display-tracking:0;
  /* Base de leitura ~20px; razão 1,25: 20 / 25 / 31,25 / 39 / 49. */
  --type-reading-size:clamp(18px,calc(16px + .3vw),22px);
  --type-reading-leading:1.6;
  --type-reading-weight:100;
  --type-reading-lead-size:clamp(32px,3.6vw,56px);
}
html[data-da-type-system] :is(main,footer) :is(h1,h2,h3,h4):not(.pf-h1,.ed-person-title),
html[data-da-type-system] :is(.servico-prova-nome,.escada-termo,.case-flow strong,.case-details dt,.case-next-work strong,.pf-obra-nome,.ed-plane-title,.ed-outline-word){
  font-family:var(--display-family);font-weight:var(--display-weight);
  font-variation-settings:'wght' 870,'wdth' 116;
  font-kerning:normal;font-feature-settings:'kern' 1,'liga' 1;
  letter-spacing:var(--display-tracking);text-transform:uppercase;font-style:normal;
  line-height:.84;hyphens:none;color:var(--reading-ink,var(--color-display));
  padding-block:.08em .02em;
}
html[data-da-type-system] :is(.oficio-h2,.pilares-h2){
  font-size:clamp(64px,12vw,190px);line-height:.8;max-width:100%;text-wrap:balance;
}
html[data-da-type-system] :is(.oficio-texto h3,.oficio-decisoes h3,.pilar-nome){font-size:clamp(48px,5vw,80px)}
html[data-da-type-system] .leitura-cabeca h2{font-size:clamp(58px,8vw,128px)}
html[data-da-type-system] .servicos-h1{font-size:clamp(88px,12vw,200px);line-height:.78}
html[data-da-type-system] .servico-nome{font-size:clamp(58px,6.2vw,100px)}
html[data-da-type-system] :is(.servico-prova-nome,.escada-termo){font-size:clamp(36px,4.3vw,68px)}
html[data-da-type-system] .escada-passo{font-family:var(--synapsis);font-size:12px;letter-spacing:.08em;color:var(--color-text)}
html[data-da-type-system] :is(.capa-claim,.servico-tese,.case-deck,.ed-intro,.posicao-tese,.leitura-nota p){
  font-family:var(--display-family);font-weight:400;font-variation-settings:'wght' 400;
  text-transform:uppercase;letter-spacing:.015em;line-height:1.05;
  color:var(--reading-ink,var(--color-display));max-width:40ch;
}
html[data-da-type-system] :is(.capa-claim,.posicao-tese){font-size:clamp(38px,4.8vw,76px)}
html[data-da-type-system] .servico-tese{font-size:clamp(34px,3.7vw,58px)}
html[data-da-type-system] .case-deck{font-size:clamp(36px,4.8vw,76px)}
html[data-da-type-system] .contact-invite h2{font-size:clamp(84px,11vw,176px);line-height:.8}
html[data-da-type-system] .case-title{font-size:clamp(74px,15vw,240px);line-height:.8;overflow-wrap:normal}
html[data-da-type-system] .case-intro h2{font-size:clamp(60px,7.5vw,120px)}
html[data-da-type-system] .case-note h2{font-size:clamp(52px,5.8vw,94px);max-width:none}
html[data-da-type-system] .case-motion-head h2{font-size:clamp(58px,7vw,112px)}
html[data-da-type-system] .case-second .case-note h2{font-size:clamp(60px,7vw,112px);max-width:none}
html[data-da-type-system] :is(.case-flow strong,.case-details dt){font-size:clamp(36px,3.8vw,60px)}
html[data-da-type-system] .case-next-work strong{font-size:clamp(48px,6.8vw,108px)}

/* A exposição conserva câmera, miniaturas, retratos e planos. */
html[data-da-type-system] .portfolio-main .pf-project-title{
  font-size:clamp(76px,10vw,180px);line-height:.8;margin-top:16px;
}
html[data-da-type-system] .portfolio-main[data-project=emv] .pf-project-title{font-size:clamp(72px,9.2vw,166px)}
html[data-da-type-system] .portfolio-main .pf-argumento{font-size:clamp(34px,3vw,48px);line-height:.88}
html[data-da-type-system] .portfolio-main .pf-project-approach{margin-top:16px}
html[data-da-type-system] .servicos-h1 .com-barra i{height:.16em;background:var(--color-display);align-self:center}
html[data-da-type-system] .pf-proof-title{font-size:clamp(64px,7vw,112px);max-width:none}
html[data-da-type-system] .pf-process-head h2{font-size:clamp(48px,5.8vw,92px);line-height:.9}
html[data-da-type-system] .pf-process-head h2 strong{font-weight:inherit}
html[data-da-type-system] .pf-process-head h2 span{font-family:var(--synapsis);font-size:14px;line-height:1.4;letter-spacing:.06em;color:var(--color-text)}
html[data-da-type-system] .pf-view-index .pf-obra-nome{font-size:clamp(36px,4vw,64px);line-height:.95}

/* Só a capa do Manifesto precisa da mesma medição contida do Artesão. */
html[data-da-type-system] .ed-hero.has-type-fit{height:var(--person-hero-height);min-height:var(--person-hero-height);grid-template-rows:minmax(0,1fr)}
html[data-da-type-system] .has-type-fit .ed-copy{height:var(--person-copy-height);align-self:stretch}
html[data-da-type-system] .has-type-fit .ed-kicker{display:inline-flex;align-items:center;margin-bottom:0}
html[data-da-type-system] .has-type-fit .ed-count{display:inline-block;vertical-align:middle;margin:0 0 18px 24px}
html[data-da-type-system] .has-type-fit .ed-title:not(.ed-person-title){font-size:var(--person-name-size);line-height:.8;padding-top:.1em;margin-bottom:12px;overflow-wrap:normal}
html[data-da-type-system] .has-type-fit .ed-title:not(.ed-person-title)>span{display:block;width:max-content;white-space:nowrap}
html[data-da-type-system] .has-type-fit .ed-intro{font-size:max(26px,calc(var(--person-name-size)*.26));max-width:none;line-height:1.05}
html[data-da-type-system] .has-type-fit .ed-actions{margin-top:16px}
html[data-da-type-system] .ed-manifesto-front .ed-plane-title{font-size:clamp(46px,4.2vw,68px);line-height:.84;max-width:100%}
html[data-da-type-system] .ed-scene .ed-outline-word{color:transparent}

/* Detalhes claros isolados; textos extensos continuam com a tinta principal. */
html[data-da-type-system] :is(.oficio-numero,.oficio-legenda,.ed-plane-label,.ed-plane-note,.pilar-papel,.pauta-rotulo,.case-cover figcaption,.case-figure figcaption){color:var(--color-text)}
html[data-da-type-system] .ed-person-brand :is(.ed-plane-label,.ed-plane-note){color:var(--bg)}
html[data-da-type-system] .oficio-controles button{color:var(--color-text);border-color:var(--color-control-border)}
html[data-da-type-system] .oficio-controles button[aria-pressed=true]{color:var(--color-canvas);background:var(--color-text);border-color:var(--color-text)}
html[data-da-type-system] .leitura-escolha>span{color:var(--color-text)}

/* As rotas antigas também adotam a paleta vigente, sem reescrever seu conteúdo. */
html[data-da-type-system] body:is([data-screen-label^="404"],[data-screen-label="Publicação de estudo"]){
  --concrete:var(--color-canvas);--concrete-2:var(--color-surface);--ink:var(--color-display);
  --ink-soft:var(--color-display);--mut:var(--color-text);--faint:var(--color-text);
  --amber:var(--color-display);--amber-text:var(--color-text);--border:var(--color-border);
  --logo-ink:var(--color-mark);--logo-sun:var(--color-text);
  background:var(--color-canvas);color:var(--color-display);text-transform:none;
}
html[data-da-type-system] :is(.salapage,.publicacao) h1{font-size:clamp(84px,13vw,208px);line-height:.85}
html[data-da-type-system] .publicacao h1{font-size:clamp(52px,10.5vw,158px)}
html[data-da-type-system] :is(.salapage,.publicacao) h1 em{font:inherit;color:inherit;text-transform:inherit}
html[data-da-type-system] .publicacao h2{font-size:clamp(48px,6vw,96px)}
html[data-da-type-system] .publicacao__fecho{font-family:var(--display-family);font-size:clamp(32px,4vw,58px);font-weight:400;font-style:normal;line-height:1.1;text-transform:uppercase}
html[data-da-type-system] :is(.publicacao__back,.publicacao__meta,.publicacao__aside,.salapage .links a){color:var(--color-text)}

@media(max-width:860px){
  html[data-da-type-system] .ed-hero.has-type-fit{grid-template-rows:var(--person-copy-height) minmax(0,1fr)}
  html[data-da-type-system] .portfolio-main .pf-project-title,
  html[data-da-type-system] .portfolio-main[data-project=emv] .pf-project-title{font-size:clamp(52px,14vw,100px);line-height:.8;margin-top:8px;padding-bottom:0}
  html[data-da-type-system] .portfolio-main .pf-project-approach{margin-top:0;font-size:8px;line-height:1.4;letter-spacing:.08em;max-width:none;white-space:nowrap}
  html[data-da-type-system] .portfolio-main .pf-argumento{font-size:clamp(38px,8vw,62px)}
  html[data-da-type-system] .case-title{font-size:clamp(52px,14vw,120px)}
  html[data-da-type-system] .case-next-work strong{font-size:clamp(42px,10vw,80px)}
}
@media(max-width:480px){
  html[data-da-type-system] :is(.oficio-h2,.pilares-h2){font-size:clamp(54px,16vw,76px)}
  html[data-da-type-system] :is(.oficio-texto h3,.oficio-decisoes h3,.pilar-nome){font-size:54px}
  html[data-da-type-system] .leitura-cabeca h2{font-size:clamp(48px,15vw,72px)}
  html[data-da-type-system] .servicos-h1{font-size:clamp(84px,26vw,124px)}
  html[data-da-type-system] .contact-invite h2{font-size:clamp(70px,22vw,104px)}
  html[data-da-type-system] :is(.case-intro h2,.case-note h2,.case-second .case-note h2,.case-motion-head h2){font-size:clamp(48px,14vw,68px)}
  html[data-da-type-system] .pf-proof-title{font-size:clamp(52px,15vw,72px)}
  html[data-da-type-system] .pf-process-head h2{font-size:48px}
}

/* Leitura editorial: Thin real; rótulos, controles e títulos conservam seus pesos. */
html[data-da-type-system] :is(
  .percurso-coluna,.posicao-coluna,.oficio-texto p,.oficio-decisoes p,
  .pilar-desc,.leitura-cabeca p,.leitura-consequencia,
  .capa-nota,.servico-desc,.ficha li,.servico-desenho figcaption,
  .escada-frase,.processo-intro,
  .case-scope dd,.case-flow p,.case-intro p:not(.case-kicker),
  .case-note p:not(.case-kicker),.case-motion-head p,.case-details dd,
  .pf-tese,.pf-proof-text,.pf-index-copy>span,
  .publicacao__texto p:not(.publicacao__fecho),.salapage p
){
  font-family:var(--synapsis,"Synapsis","Synapsis Fallback",Arial,sans-serif);
  font-weight:var(--type-reading-weight);font-variation-settings:normal;
  font-size:var(--type-reading-size);line-height:var(--type-reading-leading);
  letter-spacing:0;text-transform:none;color:var(--reading-text,var(--reading-ink,var(--color-display)));
}
html[data-da-type-system] .da-editorial :is(.percurso-tese,.posicao-tese){
  font-family:var(--synapsis,"Synapsis","Synapsis Fallback",Arial,sans-serif);
  font-weight:var(--type-reading-weight);font-variation-settings:normal;
  font-size:var(--type-reading-lead-size);line-height:1.22;
  letter-spacing:-.02em;text-transform:none;
  color:var(--reading-text,var(--reading-ink,var(--color-display)));
}
html[data-da-type-system] :is(.contact-intro,.publicacao__lead){
  color:var(--reading-text,var(--reading-ink,var(--color-display)));
  font-family:var(--synapsis,"Synapsis","Synapsis Fallback",Arial,sans-serif);
  font-weight:var(--type-reading-weight);font-variation-settings:normal;
  font-size:clamp(22px,1.8vw,28px);line-height:1.5;letter-spacing:0;text-transform:none;
}
html[data-da-type-system] .portfolio-main .pf-lado .pf-tese{line-height:1.5;margin-top:8px}
@media(min-width:861px){html[data-da-type-system] .portfolio-main .pf-actions{margin-top:8px}}
html[data-da-type-system] .has-type-fit .ed-person-note{
  color:var(--reading-text,var(--reading-ink,var(--color-display)));
  font-family:var(--synapsis);font-weight:var(--type-reading-weight);
  font-size:18px;line-height:1.4;
}

/* Um eixo por composição: a leitura mantém sua medida, a exposição sua câmera. */
html[data-da-type-system] body{--layout-gutter:clamp(22px,4vw,80px);--layout-width:1480px}
html[data-da-type-system] body:is(.da-entry,[data-screen-label="Portfólio"]){--layout-gutter:clamp(20px,4vw,80px);--layout-width:1900px}
html[data-da-type-system] body:has(.case-main){--layout-gutter:clamp(24px,4vw,72px);--layout-width:1560px}
@media(max-width:860px){html[data-da-type-system] body:is(.da-entry,[data-screen-label="Portfólio"]){--layout-gutter:20px}}
html[data-da-type-system][data-site-navigation] body #topnav{padding-inline:var(--layout-gutter)}
html[data-da-type-system] main:has(.servicos-h1)>.secao{max-width:var(--layout-width);padding-inline:var(--layout-gutter)}
html[data-da-type-system] .contact-footer{width:100%;max-width:var(--layout-width);padding-inline:var(--layout-gutter)}

/* Caixas de fontes diferentes não compartilham a base das letras por align:end. */
html[data-da-type-system] :is(.leitura-cabeca,.case-motion-head,.case-next,.case-next-work,.pf-process-head){align-items:last baseline}
@media(max-width:860px){
  html[data-da-type-system] :is(.case-motion-head,.case-next,.pf-process-head){align-items:start}
}
@media(max-width:760px){html[data-da-type-system] .leitura-cabeca{align-items:start}}

/* O topo das duas vozes editoriais parte da altura das capitais da mesma fonte.
   A entrelinha interna permanece intacta; acentos e descendentes continuam visíveis. */
@supports(text-box:trim-start cap alphabetic){
  html[data-da-type-system] .da-editorial :is(.percurso-tese,.posicao-tese,.percurso-coluna>p:first-child,.posicao-coluna>p:first-child){text-box:trim-start cap alphabetic}
}
@supports not (text-box:trim-start cap alphabetic){
  /* Synapsis Thin: ascent .90em, descent .14em, capitais .65em.
     Distância até as capitais = entrelinha/2 - .27em. */
  @media(min-width:698px){
    html[data-da-type-system] .da-editorial :is(.percurso-coluna,.posicao-coluna){padding-top:max(0px,calc(var(--type-reading-lead-size)*.34 - var(--type-reading-size)*.53))}
  }
}
