/* Revisão v66: correções localizadas sobre a identidade aprovada em v65. */

/* Contraste do menu: proteção na faixa superior, sem alterar a fotografia. */
@media (min-width: 801px) {
  .header::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 140px;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(35,33,32,.68) 0%, rgba(35,33,32,.62) 55%, rgba(35,33,32,0) 100%);
  }
}

/* O menu compacto também cruza trechos claros das colunas. */
@media (max-width: 800px) {
  .header .menu-toggle { position: relative; isolation: isolate; }
  .header .menu-toggle::before {
    content: "";
    position: absolute;
    width: 49px;
    height: 42px;
    right: -13px;
    top: 3px;
    z-index: -1;
    pointer-events: none;
    border-radius: 8px;
    background: rgba(35,33,32,.78);
    filter: blur(6px);
  }
}

/* Pequenos textos sobre fotos: sombra restrita à área de leitura. */
@media (max-width: 700px) {
  .hero .approved-subtitle,
  .area-hero .area-label,
  .area-hero .area-deck,
  .area-hero .area-explore {
    position: relative;
    isolation: isolate;
    width: fit-content;
    max-width: 100%;
    text-shadow: none;
  }
  .hero .approved-subtitle::before,
  .area-hero .area-label::before,
  .area-hero .area-deck::before,
  .area-hero .area-explore::before {
    content: "";
    position: absolute;
    inset: -5px -12px;
    z-index: -1;
    pointer-events: none;
    background: rgba(35,33,32,.56);
    filter: blur(10px);
    border-radius: 24px;
  }
  .area-hero .area-explore::before { background: rgba(35,33,32,.64); }
}

/* Na passagem para duas colunas, o subtítulo ainda cruza detalhes claros. */
@media (min-width: 701px) and (max-width: 800px) {
  .area-hero .area-deck { position: relative; isolation: isolate; width: fit-content; max-width: 100%; }
  .area-hero .area-deck::before {
    content: "";
    position: absolute;
    inset: -5px -12px;
    z-index: -1;
    pointer-events: none;
    background: rgba(35,33,32,.32);
    filter: blur(10px);
    border-radius: 24px;
  }
}

/* Todos os assuntos disponíveis sem rolagem lateral no celular. */
@media (max-width: 540px) {
  .topic-filters { flex-wrap: wrap; overflow: visible; gap: 8px; }
  .topic-filters button { flex-shrink: 0; }
}

/* Margem da seta independente da largura do glifo do sistema. */
.library-card .content-arrow {
  display: inline-block;
  width: 16px;
  height: 16px;
  font-size: 0;
  background: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
@media (max-width: 540px) {
  .library-card :is(button,a) { grid-template-columns: 98px minmax(0,1fr) 16px; }
}
@media (max-width: 360px) {
  .library-card :is(button,a) { grid-template-columns: 80px minmax(0,1fr) 16px; }
}

/* Ampliação de fonte: conservar as quebras aprovadas enquanto couberem. */
.experience-heading { flex-wrap: wrap; }
.experience-number,
.experience-wording { max-width: 100%; }
.experience-wording { min-width: 0; overflow-wrap: anywhere; }
.experience-support p { min-width: 0; }
.partner-name-line { white-space: normal; }

/* Auxiliares com o mesmo eixo de leitura; corpo de créditos continua em Arial. */
.credits-content { max-width: 760px; padding-block: 28px 56px; }
.credits-content h1 { font-size: 56px; line-height: 1.1; margin-bottom: 32px; }
.credits-content h2 { max-width: 680px; margin: 28px auto 16px; font-size: 27px; line-height: 1.25; }
.credits-content p { max-width: 680px; margin: 0 auto 16px; font: 18px/1.75 var(--sans); overflow-wrap: anywhere; }
@media (max-width: 540px) {
  .credits-content h1 { font-size: 36px; }
  .credits-content h2 { font-size: 25px; }
}

/* Etiquetas e foco: a mesma função usa o mesmo tratamento. */
.content-type,
.military-page .area-reading .content-type {
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: .6px;
  padding: 3px 7px;
}
:focus-visible,
.library-page :focus-visible { outline-color: #46513f; }
.format-toggle[aria-expanded="true"] { color: #46513f; }
.header :focus-visible,
.hero :focus-visible,
.area-hero :focus-visible,
.library-page .area-hero :focus-visible,
.footer-study :focus-visible,
.library-page .footer-study :focus-visible { outline-color: #dde2d3; }
.footer-study-note { color: #f1f1ed; }

/* As correções não introduzem animações nem alteram a preferência de movimento. */
