/* =====================================================================
   Banner principal da página inicial — duas colunas:
   texto (selo, título, resumo, botão) | imagem inteira, sem cortes.
   Fundo: inox claro azulado escovado, com texto em azul-marinho.
   Carregado só na página inicial (index.php). Sobrepõe portal.css.
   ===================================================================== */
.hero-split {
  /* Inox claro azulado: chapa escovada + brilho diagonal, texto em azul-marinho */
  color: #0a2540; isolation: isolate;
  background:
    linear-gradient(115deg, transparent 35%, rgba(255, 255, 255, .55) 50%, transparent 65%),
    linear-gradient(135deg, #dfe8f1 0%, #c6d6e6 50%, #aec4da 100%);
}
.hero-split::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .8;
  /* textura de aço escovado (riscos finos na horizontal) */
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='600'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.0018 0.75' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0.1  0 0 0 0 0.2  0 0 0 .32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") left top / 100% 600px repeat-y,
              url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='600'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.0018 0.75' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") left top / 100% 600px repeat-y;
}
.hero-split .slides { position: relative; z-index: 1; }
.hero-split .slide { min-height: 0; display: block; align-items: initial; overflow: hidden; }

/* Brilho suave com as cores da própria imagem, atrás do conteúdo */
.hero-split .slide-glow {
  position: absolute; inset: -60px; z-index: 0; pointer-events: none;
  background-size: cover; background-position: center;
  filter: blur(70px) saturate(1.1); opacity: .08;
}

.hero-split .slide-split {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(28px, 4.5vw, 64px); align-items: center;
  padding-top: clamp(40px, 6vw, 72px); padding-bottom: 128px; /* espaço para os pontinhos e a busca */
}

/* ---------- Coluna de texto ---------- */
.hero-split .slide-text { min-width: 0; }
.hero-split .slide-text .pill { margin-bottom: 16px; background: rgba(10, 37, 64, .08); border-color: rgba(10, 37, 64, .18); color: #0a2540; }
.hero-split .slide-text h2 {
  color: #0a2540; font-size: clamp(1.6rem, 3vw, 2.6rem); font-weight: 800; line-height: 1.15;
  margin: 0 0 14px; max-width: none;
  display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}
.hero-split .slide-text h2 a { color: inherit; text-decoration: none; }
.hero-split .slide-text h2 a:hover { color: #0e63b0; }
.hero-split .slide-text .btn-primary { background: #0e63b0; border-color: #0e63b0; color: #fff; box-shadow: 0 10px 24px -8px rgba(14, 99, 176, .55); }
.hero-split .slide-text .btn-primary:hover { background: #0a2540; border-color: #0a2540; }
.hero-split .slide-text p {
  color: #26364d; font-size: 1.06rem; line-height: 1.6; max-width: 560px; margin: 0 0 26px;
  display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;
}

/* ---------- Coluna da imagem (inteira, sem cortar textos da arte) ---------- */
.hero-split .slide-media {
  position: relative; display: block; overflow: hidden;
  aspect-ratio: 16 / 10; border-radius: 20px;
  background: rgba(10, 37, 64, .06);
  border: 1px solid rgba(10, 37, 64, .15);
  box-shadow: 0 24px 50px rgba(10, 37, 64, .25);
  transition: transform .35s ease, box-shadow .35s ease;
}
.hero-split .slide-media:hover { transform: translateY(-4px); box-shadow: 0 30px 64px rgba(10, 37, 64, .35); }
.hero-split .slide-media:focus-visible { outline: 3px solid var(--accent, #1aa3e8); outline-offset: 4px; }
.hero-split .slide-media img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
/* Fundo: a mesma imagem desfocada preenche as sobras */
.hero-split .slide-media .m-fill { inset: -12%; width: 124%; height: 124%; object-fit: cover; filter: blur(24px) brightness(.7); }
/* Frente: a imagem completa */
.hero-split .slide-media .m-main { object-fit: contain; }

/* Sem imagem: painel ilustrado */
.hero-split .slide-media.no-img {
  display: grid; place-items: center;
  background: linear-gradient(135deg, rgba(255,255,255,.55), rgba(255,255,255,.2)),
              repeating-linear-gradient(0deg, rgba(10,37,64,.05) 0 1px, transparent 1px 6px);
}
.hero-split .m-placeholder { display: grid; justify-items: center; gap: 12px; color: #0a2540; }
.hero-split .m-placeholder .ico { color: #0e63b0; }
.hero-split .m-placeholder strong { font-family: var(--font-head, inherit); letter-spacing: .12em; text-transform: uppercase; font-size: .85rem; }

/* Setas um pouco mais afastadas do conteúdo */
.hero-split .slider-nav { top: calc(50% - 30px); }
.hero-split .slider-nav.prev { left: 14px; }
.hero-split .slider-nav.next { right: 14px; }
.hero-split .slider-nav { border-color: rgba(10, 37, 64, .25); background: rgba(255, 255, 255, .6); color: #0a2540; }
.hero-split .slider-nav:hover { background: #0e63b0; border-color: #0e63b0; color: #fff; }
.hero-split .slider-dots button { background: rgba(10, 37, 64, .3); }
.hero-split .slider-dots button.active { background: #0e63b0; }
.hero-split .slider-progress { background: rgba(10, 37, 64, .1); }
.hero-split .slider-progress span { background: #0e63b0; }

/* ---------- Telas médias ---------- */
@media (max-width: 1100px) {
  .hero-split .slide-split { grid-template-columns: 1fr 1fr; }
  .hero-split .slide-text h2 { font-size: clamp(1.5rem, 3vw, 2.1rem); }
}

/* ---------- Tablet e celular: imagem em cima, texto embaixo ---------- */
@media (max-width: 860px) {
  .hero-split .slide-split {
    grid-template-columns: 1fr; gap: 22px;
    padding-top: 26px; padding-bottom: 104px;
  }
  .hero-split .slide-media { order: -1; aspect-ratio: 16 / 10; border-radius: 16px; max-width: 640px; width: 100%; margin: 0 auto; }
  .hero-split .slide-text { text-align: left; max-width: 640px; width: 100%; margin: 0 auto; }
  .hero-split .slide-text h2 { -webkit-line-clamp: 3; }
  .hero-split .slide-text p { font-size: 1rem; -webkit-line-clamp: 3; margin-bottom: 20px; }
}
@media (max-width: 640px) {
  .hero-split .slide-split { padding-bottom: 92px; }
  .hero-split .slide-text .btn-lg { width: 100%; justify-content: center; }
  .hero-split .slide-media:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-split .slide-media, .hero-split .slide-media:hover { transition: none; transform: none; }
}
.about-home .home-h1 { font-size: clamp(1.5rem, 2.8vw, 2.1rem); font-weight: 700; }
