/* MICP Content Block System v151
   Homologação visual dos blocos de conteúdo.
   Escopo: alinhamento, largura útil e ritmo interno dos blocos.
*/
.site-section{box-sizing:border-box;}

@media (min-width:1101px){
  /* Ritmo vertical comum para blocos internos */
  body:not(.page-home) .site-section:not(.site-cta):not(.contact-section):not(.contact-intro):not(.institutional-quote):not(.app-photo-quote):not(.method-statement):not(.origin-statement){
    padding-top:78px;
    padding-bottom:78px;
  }

  /* Largura confortável de leitura */
  .site-section .body-text{
    max-width:680px;
  }

  /* Núcleos textuais: mesma coluna visual */
  .app-copy,
  .method-copy,
  .origin-copy,
  .origin-close__inner{
    max-width:680px;
  }

  .origin-copy--wide{
    max-width:860px;
  }

  /* Título para texto: ritmo comum */
  .site-section .section-title + .body-text,
  .site-section h2 + .body-text,
  .site-section h2 + p{
    margin-top:22px;
  }

  .site-section .body-text + .body-text{
    margin-top:16px;
  }

  /* Grids institucionais: respiro consistente */
  .origin-grid-section,
  .origin-grid-section--reverse{
    gap:64px;
  }

  .app-objective-grid,
  .app-steps,
  .app-delivery-cards,
  .origin-pillars__grid{
    gap:28px;
  }

  /* Como Trabalhamos: reduzir irregularidade visual entre blocos */
  .page-how-we-work .how-intro,
  .page-how-we-work .how-process,
  .page-how-we-work .how-tools-clean,
  .page-how-we-work .how-difference{
    padding-top:78px;
    padding-bottom:78px;
  }

  .page-how-we-work .how-intro__head,
  .page-how-we-work .how-process__head,
  .page-how-we-work .how-tools-clean__head,
  .page-how-we-work .how-difference__head{
    max-width:760px;
  }

  /* Aplicação: blocos menos comprimidos */
  .page-application .app-section{
    padding-top:78px;
    padding-bottom:78px;
  }

  /* Contato: preservar leitura central, sem excesso de largura */
  .page-contact .contact-intro{
    padding-top:76px;
    padding-bottom:64px;
  }

  .page-contact .contact-intro .body-text{
    max-width:700px;
  }
}

@media (max-width:1100px){
  body:not(.page-home) .site-section:not(.site-cta):not(.contact-section):not(.contact-intro):not(.institutional-quote):not(.app-photo-quote):not(.method-statement):not(.origin-statement){
    padding-top:56px;
    padding-bottom:56px;
  }

  .site-section .body-text{
    max-width:100%;
  }
}

