/* Cedro: ajustes de celular (carregado depois de main.css). */
@media (max-width: 767px) {
  body { font-size: 18px; line-height: 1.55; }

  /* cabeçalho em barra branca: logo e menu nunca ficam sobre o conteúdo */
  .site-header { height: 64px; padding: 0 12px 0 20px; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(0,0,0,.06); }
  .site-header__logo { width: 150px; }
  [data-scroll="down"] .site-header__logo { transform: none; }
  .menu-toggle { width: 44px; height: 44px; padding: 14px 7px; box-sizing: border-box; }
  .menu-toggle span { width: 30px; }
  .menu-open .site-header { background: #fff; }
  .menu-panel__nav { padding: 96px 0 40px; }
  .menu-list > li { font-size: 28px; }
  .menu-list > li > a { display: inline-block; padding: 8px 0; }
  .menu-list .sub li { font-size: 21px; margin-bottom: 0; }
  .menu-list .sub a { display: inline-block; padding: 7px 0; }

  /* hero começa abaixo da barra */
  .hero-slides { height: calc(100svh - 64px); margin-top: 64px; margin-bottom: 32px; }
  .hero-slides__slide { height: calc(100svh - 64px); }
  .hero-slides .owl-nav svg { width: 44px; height: 44px; padding: 13px; background: rgba(0,0,0,.55); }
  .hero-slides .owl-dots { bottom: 24px; }
  .hero-slides .owl-dot { width: 10px; height: 10px; margin: 0 7px; }

  /* texto + imagem: título menor e só o primeiro parágrafo */
  .text-image__text { padding: 28px 20px 8px; }
  .text-image__text h1, .text-image__text h2 { font-size: 32px; line-height: 1.15; margin-bottom: 20px; }
  .text-image__body p + p { display: none; }
  .text-image__link { margin-top: 18px; }
  .text-image__link a { display: inline-block; padding: 8px 0; }

  /* categorias: cartões, não telas inteiras */
  .categories .tile { margin-bottom: 10px; }
  .categories .tile__cover { padding-top: 0; height: 62vh; min-height: 380px; max-height: 520px; }
  .tile--overlay .tile__title h2 { font-size: 30px; }
  .tile--overlay .tile__desc { font-size: 16px; line-height: 1.4; }
  .tiles--one .tile__cover { height: 62vh; }
  .tile { margin-bottom: 28px; }

  /* vídeo e som */
  .feature-video { padding-top: 75%; }
  .sound { top: 16px; right: 16px; width: 44px; height: 44px; }

  /* páginas de categoria: filtro em linha que rola */
  .page-category .site-main { padding-top: 64px; }
  .cat-nav { top: 64px; padding: 8px 0; }
  [data-scroll="down"] .cat-nav { opacity: 1; transform: none; }
  .cat-nav ul { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; padding: 0 20px; scrollbar-width: none; }
  .cat-nav ul::-webkit-scrollbar { display: none; }
  .cat-nav li { flex: none; margin: 0 18px 0 0; font-size: 17px; line-height: 44px; }
  .projects { margin-top: 76px; }
  .project .tile__cover, .project:nth-child(3n + 3) .tile__cover, .project:nth-child(4n + 1) .tile__cover { padding-top: 105%; }
  .site-header__logo { width: 170px; }
  .project__title { margin-top: 10px; font-size: 20px; }
  .project__location { padding: 0 20px; font-size: 15px; }

  /* rodapé */
  .site-footer { margin-top: 56px; padding-top: 36px; }
  .site-footer__menu a { display: inline-block; padding: 8px 6px; }
  .site-footer__legal { margin: 40px 0 32px; font-size: 13px; line-height: 1.7; }
  .site-footer__legal a { display: inline-block; padding: 4px 0; }
  .to-top { width: 44px; height: 44px; }

  .hero-slides .owl-dot { width: 12px; height: 12px; margin: 0 4px; box-sizing: content-box; padding: 0; border: 8px solid transparent !important; background-clip: padding-box !important; }
}
