/* Instituto Anker | V8 — refinamento responsivo das seções 02–06.
   Mantém a base fotográfica do Hero V6 e todas as copys aprovadas.
   Escalas fluidas, colunas com limites legíveis e tratamento da altura dos notebooks.
*/

/* 01 | Hero: quebra intencional somente quando há largura suficiente. */
@media (min-width:1160px) {
  .hero__copy { width:min(54vw, 845px); }
  .hero__title { max-width:845px; }
  .hero__line { display:block; }
}
@media (min-width:1160px) and (max-height:760px) {
  .hero__title { font-size:clamp(37px,3.0vw,54px); }
}

/* 02–06 | Escala tipográfica, margens, colunas e largura de leitura. */
:root { --max:1640px; }
.site-shell { padding-inline:clamp(22px,3.75vw,66px); }
.section { padding-block:clamp(56px,6.2vh,88px); }
.section-eyebrow {
  margin-bottom:clamp(24px,3vh,40px);
  font-size:clamp(10px,.78vw,11px);
  letter-spacing:.17em;
}
.section-head {
  grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);
  gap:clamp(28px,4.3vw,80px);
  align-items:center;
  margin-bottom:clamp(30px,3.4vh,49px);
}
.section-title {
  font-size:clamp(38px,calc(31px + 1.07vw),52px);
  line-height:1.12;
  letter-spacing:-.05em;
  text-wrap:balance;
}
.section-lead {
  max-width:49ch;
  font-size:clamp(14.5px,calc(13px + .22vw),16.5px);
  line-height:1.56;
  text-wrap:pretty;
}
.section-lead + .section-lead { margin-top:clamp(10px,1.4vh,17px); }
.section-p,.section-note { text-wrap:pretty; }

/* Bloco 02 — sinais de identificação */
.treatment-grid { column-gap:clamp(30px,4.1vw,66px);row-gap:0; }
.sign-card { grid-template-columns:34px minmax(0,1fr);column-gap:12px;padding-block:clamp(17px,2.3vh,27px); }
.sign-card h3 { font-size:clamp(20px,calc(17px + .45vw),25px);line-height:1.24;letter-spacing:-.034em;margin-bottom:8px;text-wrap:balance; }
.sign-card p { font-size:14.5px;line-height:1.53;text-wrap:pretty;max-width:54ch; }
.audience-outro { padding-top:clamp(19px,2.8vh,30px);gap:clamp(25px,4vw,60px); }
.audience-outro p { font-size:13.5px;line-height:1.56;text-wrap:pretty; }
.audience-outro p:last-child { font-size:14px;line-height:1.58; }

/* Bloco 03 — método: leitura ampla, três passos, duas modalidades. */
.approach-heading { max-width:1020px;margin-bottom:clamp(16px,2.4vh,27px); }
.approach-intro { max-width:86ch;font-size:clamp(15px,calc(14px + .25vw),17px);line-height:1.62;margin-bottom:clamp(32px,4.4vh,57px);text-wrap:pretty; }
.process-grid { gap:clamp(22px,3.6vw,55px); }
.process-item { padding-top:18px; }
.process-item .step { margin-bottom:clamp(15px,2vh,22px);letter-spacing:.13em; }
.process-item h3 {font-size:clamp(22px,calc(19px + .4vw),27px);line-height:1.22;margin-bottom:11px;text-wrap:balance;}
.process-item p { font-size:14.4px;line-height:1.58;text-wrap:pretty; }
.modalities { margin-top:clamp(43px,5.5vh,72px);padding-top:25px; }
.modalities-eyebrow {margin-bottom:23px;}
.modalities-grid { gap:clamp(26px,4vw,58px); }
.modality h3 { font-size:clamp(25px,2vw,30px);margin-bottom:12px; }
.modality p {font-size:14.5px;line-height:1.56;text-wrap:pretty;}
.modality--secondary { padding-left:clamp(20px,3.3vw,52px); }
.modality-note { margin-top:22px; }

/* Bloco 04 — diferencial: colunas utilizáveis e hierarquia contida. */
.feature-header {margin-bottom:clamp(30px,3.8vh,50px);}
.features-grid { gap:clamp(24px,3.9vw,65px); }
.feature { padding-top:19px;min-width:0; }
.feature-number { margin-bottom:clamp(15px,2vh,22px);font-size:10.5px;letter-spacing:.10em; }
.feature-title {font-size:clamp(22px,1.65vw,27px);line-height:1.23;letter-spacing:-.038em;margin-bottom:clamp(13px,1.9vh,20px);text-wrap:balance;}
.feature p {font-size:14.4px;line-height:1.57;margin-bottom:11px;text-wrap:pretty;}

/* Bloco 05 — foto proporcional à altura visível; texto continua legível. */
.leadership-grid {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(34px,5vw,86px);}
.leadership-media {height:clamp(425px,66svh,625px);max-height:none;align-self:center;}
.leadership-media img {height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 33%;}
.leadership-content .section-eyebrow {margin-bottom:22px;}
.leadership-strap {font-size:clamp(27px,calc(23px + .70vw),36px);line-height:1.17;margin-bottom:clamp(17px,2.6vh,29px);text-wrap:balance;}
.leadership-name {font-size:clamp(41px,3.6vw,58px);margin-bottom:12px;}
.leadership-role {font-size:14px;margin-bottom:clamp(16px,2.4vh,25px);}
.leadership-body {padding-top:clamp(16px,2.6vh,25px);}
.leadership-body p {font-size:14.2px;line-height:1.60;margin-bottom:12px;text-wrap:pretty;}
.leadership-crp {margin-top:16px;}

/* Bloco 06 — contato sem título desproporcional ao espaço. */
.contact { padding-top:clamp(57px,6.7vh,92px); }
.contact .section-eyebrow {margin-bottom:clamp(26px,4vh,46px);}
.contact-grid {grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(40px,5vw,94px);align-items:center;padding-bottom:clamp(47px,5.6vh,76px);}
.contact-title {font-size:clamp(42px,calc(33px + 1.6vw),62px);line-height:1.12;letter-spacing:-.053em;text-wrap:balance;}
.contact-intro {font-size:clamp(14.5px,calc(13px + .23vw),16.5px);line-height:1.60;margin-bottom:19px;text-wrap:pretty;}
.contact-intro + .contact-intro {margin-top:0;}
.contact-personal {padding-block:24px 32px;gap:clamp(24px,3vw,45px);}

/* notebooks: use a altura disponível sem comprimir o texto em fonte microscópica */
@media (min-width:951px) and (max-height:760px){
 .section {padding-block:52px;}
 .section-eyebrow {margin-bottom:22px;}
 .section-head {margin-bottom:29px;}
 .features-grid {gap:32px;}
 .feature-header {margin-bottom:30px;}
 .leadership-media {height:clamp(385px,65svh,540px);}
 .leadership-strap {font-size:clamp(26px,2.2vw,33px);}
 .contact {padding-top:53px;}
}

/* Notebook baixo: seção de identificação inteira, sem cortar a nota final no rodapé da dobra. */
@media (min-width:951px) and (max-height:700px){
 #para-quem.section {padding-block:32px;}
 #para-quem .section-eyebrow {margin-bottom:14px;}
 #para-quem .section-head {margin-bottom:19px;}
 #para-quem .sign-card {padding-block:12px 14px;}
 #para-quem .audience-outro {padding-top:14px;}
}

/* tablets e notebooks de menor largura: títulos não competem com colunas estreitas */
@media (min-width:951px) and (max-width:1240px){
 .section-head {gap:33px;}
 .section-title {font-size:clamp(37px,3.5vw,45px);}
 .features-grid {gap:25px;}
 .feature-title {font-size:22px;}
 .feature p {font-size:14px;}
 .leadership-grid {gap:36px;}
}
@media (max-width:1100px){
 .features-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .feature:last-child {grid-column:1 / -1;max-width:62ch;}
 .feature {padding-bottom:22px;}
 .leadership-grid {gap:32px;}
}
@media (max-width:950px){
 .section {padding-block:60px;}
 .section-head,.contact-grid {grid-template-columns:1fr;gap:17px;}
 .section-head {margin-bottom:30px;}
 .section-title {max-width:23ch;font-size:clamp(37px,5.2vw,49px);}
 .section-lead {max-width:72ch;}
 .process-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
 .process-item:last-child {grid-column:1 / -1;max-width:65ch;}
 .features-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .leadership-grid {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);}
 .leadership-media {height:clamp(360px,54svh,530px);}
 .contact-title {max-width:18ch;}
 .contact-grid {gap:25px;}
}

/* mobile e tablet estreito: uma coluna antes de títulos ou parágrafos ficarem comprimidos. */
@media (max-width:700px){
 .site-shell {padding-inline:clamp(18px,5.2vw,33px);}
 .section {padding-block:clamp(48px,6svh,66px);}
 .section-eyebrow {margin-bottom:clamp(20px,2.6vh,26px);font-size:10px;letter-spacing:.13em;}
 .section-head {gap:16px;margin-bottom:26px;}
 .section-title {max-width:100%;font-size:clamp(29px,calc(23px + 1.78vw),35px);line-height:1.13;letter-spacing:-.049em;text-wrap:balance;}
 .section-lead {font-size:14.5px;line-height:1.58;max-width:100%;}
 .section-lead + .section-lead {margin-top:13px;}
 .treatment-grid,.process-grid,.modalities-grid,.features-grid,.leadership-grid,.contact-grid,.contact-personal {grid-template-columns:1fr;}
 .treatment-grid {gap:0;}
 .sign-card {padding-block:17px 19px;grid-template-columns:29px minmax(0,1fr);gap:10px;}
 .sign-card h3 {font-size:clamp(20px,5.6vw,23px);margin-bottom:6px;}
 .sign-card p {font-size:14px;line-height:1.54;}
 .audience-outro {grid-template-columns:1fr;gap:15px;padding-top:23px;}
 .audience-outro p,.audience-outro p:last-child {font-size:13.5px;line-height:1.58;}
 .audience-outro p:last-child {padding-left:15px;}
 .approach-heading {font-size:clamp(29px,calc(22px + 2vw),35px);margin-bottom:19px;max-width:100%;}
 .approach-intro {font-size:14.5px;line-height:1.63;margin-bottom:29px;}
 .process-grid {gap:0;}
 .process-item,.process-item:last-child {max-width:100%;grid-column:auto;padding:19px 0 21px;}
 .process-item .step {margin-bottom:13px;}
 .process-item h3 {font-size:23px;line-height:1.18;margin-bottom:9px;}
 .process-item p {font-size:14px;line-height:1.56;}
 .modalities {margin-top:26px;padding-top:22px;}
 .modalities-eyebrow {margin-bottom:19px;letter-spacing:.15em;}
 .modalities-grid {gap:22px;}
 .modality h3 {font-size:26px;margin-bottom:9px;}
 .modality p {font-size:14px;line-height:1.6;}
 .modality--secondary {padding:22px 0 0;border-left:0;border-top:1px solid var(--line);}
 .modality-note {font-size:12.5px;margin-top:16px;}
 .feature-header {margin-bottom:26px;}
 .features-grid {gap:0;}
 .feature,.feature:last-child {grid-column:auto;max-width:100%;padding:20px 0 24px;}
 .feature-number {margin-bottom:13px;}
 .feature-title {font-size:clamp(22px,5.8vw,26px);line-height:1.22;margin-bottom:12px;}
 .feature p {font-size:14px;line-height:1.58;}
 .leadership-grid {gap:27px;}
 .leadership-media {height:auto;max-height:none;align-self:auto;aspect-ratio: 4/4.5;}
 .leadership-media img {height:100%;aspect-ratio:auto;object-position:50% 25%;}
 .leadership-content .section-eyebrow {margin-bottom:20px;}
 .leadership-strap {font-size:27px;line-height:1.2;margin-bottom:23px;}
 .leadership-name {font-size:clamp(40px,10.7vw,49px);margin-bottom:9px;}
 .leadership-role {font-size:13.5px;margin-bottom:17px;}
 .leadership-body {padding-top:17px;}
 .leadership-body p {font-size:14px;line-height:1.6;margin-bottom:12px;}
 .contact {padding-top:clamp(49px,6svh,65px);}
 .contact .section-eyebrow {margin-bottom:23px;}
 .contact-grid {gap:24px;padding-bottom:43px;}
 .contact-title {font-size:clamp(37px,9.5vw,53px);line-height:1.12;max-width:100%;text-wrap:balance;}
 .contact-intro {font-size:14.5px;line-height:1.6;margin-bottom:15px;}
 .contact-btn {font-size:13px;min-height:49px;padding:14px 18px;}
 .contact-personal {gap:22px;padding:23px 0 29px;}
 .footer {padding-block:23px;}
}
@media (max-width:355px){
 .section-title {font-size:29px;}
 .feature-title {font-size:22px;}
 .contact-title {font-size:36px;}
}
/* Browser com tipografia fluida e legibilidade: no zoom do usuário, jamais impedir que o texto quebre. */
@media (prefers-reduced-motion:reduce){.sign-card,.feature,.process-item{transition:none}}
