/*
Theme Name: Laranjal do Jari
Theme URI: https://laranjaldojari.ap.gov.br/
Author: Laranjal do Jari
Author URI: https://laranjaldojari.com.br/
Description: Tema da pagina Oficial Municipal de Laranjal do Jari.
Version: 1.0.3
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 8.0
Text Domain: ldj-laranjal
*/

/* ====== Banner Rotativo 4:1 ====== */
.ratio-4x1{ aspect-ratio:4/1; } /* proporção 4:1 moderna */
.ldj-banner{ border-radius:5; overflow:hidden; background:var(--ldj-surface); }
.ldj-banner .carousel-item{ position:relative; }
.ldj-banner .carousel-item .ratio{ width:100%; }
.ldj-banner .carousel-item img{ width:100%; height:100%; object-fit:cover; display:block; }
.ldj-banner .carousel-caption{
  left:auto; right:auto; bottom:14px; padding:0.5rem 0.75rem; border-radius:8px;
  background:rgba(0,0,0,.45); backdrop-filter:saturate(130%) blur(2px);
}
.ldj-banner .carousel-caption h3{ margin:0; font-size:1rem; font-weight:800; }
.ldj-banner .carousel-indicators [data-bs-target]{ background-color:#fff; }
.ldj-banner .carousel-control-prev, .ldj-banner .carousel-control-next{
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.25));
}
@media (max-width: 992px){
  /* Opcional: reduz um pouco a altura do banner em telas menores */
  .ratio-4x1{ aspect-ratio: 16/5; }
}



/* Barra em tom azul bem claro */
.ldj-news-bar {
  background-color: #f2f6fc;      /* azul clarinho */
  box-shadow: 0 2px 6px rgba(0,0,0,0.04);
}

/* Ícone e texto em azul institucional */
.ldj-news-icon,
.ldj-news-text {
  color: #315598;                 /* azul LDJ */
}

/* Botão em azul sólido */
.ldj-news-btn {
  background-color: #315598;      /* azul LDJ */
  color: #ffffff;
  border: none;
  transition: all 0.15s ease-in-out;
}

/* Hover mais escuro e leve elevadinha */
.ldj-news-btn:hover {
  background-color: #24426f;      /* azul mais escuro */
  color: #ffffff;
  transform: translateY(-1px);
}


.bg-light {
  background-color: #f4f5f7 !important;
}




  :root{
    --ldj-azul:#315598;
    --ldj-verde:#44AB54;
    --ldj-amarelo:#F5B427;
    --ink:#162234;
    --muted:#6b7785;
    --border:#e6ecf3;
    --bg-soft:#f7f9fc;
    --link:#1f3f72;
  }
  @media (prefers-color-scheme: dark){
    :root{
      --ink:#e7edf6;
      --muted:#aab6c5;
      --border:#264266;
      --link:#bcd3ff;
    }
  }

  .footer{
    background: linear-gradient(180deg, var(--bg-soft) 0%, #ffffff 100%);
    color:var(--ink);
    border-top:1px solid var(--border);
    position:relative;
    overflow:hidden;
  }

  /* Faixa listrada (identidade LDJ) */
  .faixa-ldj{

    background: repeating-linear-gradient(
      90deg,
      var(--ldj-azul) 0 33.33%,
      var(--ldj-verde) 33.34% 66.66%,
      var(--ldj-amarelo) 66.67% 100%
    );
  }

  /* Onda decorativa superior (sutil) */
  .footer-wave{
    position:absolute; inset:auto 0 100%;
    transform: translateY(-1px);
    pointer-events:none;
  }

  .footer a{ color:var(--link); text-decoration:none; }
  .footer a:hover{ text-decoration:none; }
  .footer a:hover, .footer a:focus{
    outline: none;
  }

  /* Sublinhado animado nos links */
  .footer .link-ux{
    position:relative;
    transition: color .2s ease;
  }
  .footer .link-ux::after{
    content:""; position:absolute; left:0; right:100%; bottom:-2px; height:2px;
    background: linear-gradient(90deg, var(--ldj-azul), var(--ldj-verde), var(--ldj-amarelo));
    transition:right .25s ease;
    border-radius:2px;
  }
  .footer .link-ux:hover::after, .footer .link-ux:focus::after{ right:0; }

  .footer h5{
    color:#17345f; font-weight:800; letter-spacing:.2px;
  }
  @media (prefers-color-scheme: dark){
    .footer h5{ color:#cfe0ff; }
  }

  .footer .brand{
    gap:.75rem;
  }
  .footer .custom-logo{ max-height:66px; height:auto; width:auto; }
  .footer .brand-fallback{
    width:66px; height:66px; border-radius:14px; background:var(--ldj-azul);
    color:#fff; font-weight:800; display:inline-flex; align-items:center; justify-content:center;
    box-shadow:0 6px 20px rgba(49,85,152,.25);
  }
  .footer .brand-text strong{ font-size:1.05rem; }
  .footer .brand-text small{ color:var(--muted); }

  /* Listas */
  .footer .list-unstyled li + li{ margin-top:.4rem; }
  .footer .list-unstyled i{ margin-right:.5rem; opacity:.9; }

  /* Social */
  .footer .social a{
    display:inline-flex; align-items:center; justify-content:center;
    width:44px; height:44px; border-radius:999px;
    background:#fff; border:1px solid var(--border); color:#19325a;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }
  .footer .social a:hover{
    transform: translateY(-2px);
    border-color:#f5d772;
    box-shadow:0 10px 20px rgba(0,0,0,.08);
  }
  @media (prefers-color-scheme: dark){
    .footer .social a{ background:#0b1320; color:#dfe8ff; }
    .footer .social a:hover{ border-color:#3b82f6; }
  }

  /* Cartão contato */
  .contact-card{
    background:rgba(255,255,255,.7);
    border:1px solid var(--border);
    border-radius:16px;
    padding:1rem 1.25rem;
    backdrop-filter: saturate(140%) blur(4px);
  }
  @media (prefers-color-scheme: dark){
    .contact-card{ background:rgba(13,23,39,.6); }
  }

  /* Barra final */
  .footer-bottom{
    background:#ffffff;
    border-top:1px solid var(--border);
    color:#51627a;
  }
  @media (prefers-color-scheme: dark){
    .footer-bottom{ background:#0b1320; color:#aab6c5; }
  }

  /* Botão voltar ao topo */
  #toTop{
    position:fixed; right:18px; bottom:18px; z-index:1030;
    width:46px; height:46px; border-radius:50%;
    border:0; background:var(--ldj-azul); color:#fff;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
    opacity:0; visibility:hidden; transform: translateY(8px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s;
  }
  #toTop.show{ opacity:1; visibility:visible; transform: translateY(0); }
  #toTop:hover{ filter:brightness(1.05); }